|
[Архив] Помощь новичкам по скриптингу ! #2
|
|
| heufix | Дата: Понедельник, 28.09.2009, 02:59 | Сообщение # 1 |
|
Уважаемый человек
Группа:
Продвинутые
Сообщений: 995
Награды: 22
Репутация: 231
Замечания: 80%
Статус: 
| Здравствуйте, хотите научиться скриптингу? пишите сюда, помoжем!(С)[PZ]KYZ[AIR]. Старая Тема уже достаточно полна ответов, это продолжение первой темы. Убедительная просьба к Новичкам: К большому сожалению, на этом форуме экстрасенсы не сидят,поэтому убедительно просим объяснять ваш вопрос/проблему ТАК,чтобы её поняли другие участники, не забывайте приписывать ваш код к своему сообщению(в тег pwn).
Радость
|
| |
|
|
| lol_sobaka | Дата: Воскресенье, 10.01.2010, 13:46 | Сообщение # 781 |
|
Новенький
Группа:
Пользователи
Сообщений: 41
Награды: 1
Город: Los Angeles
Репутация: 0
Замечания: 0%
Статус: 
| } if(PlayerDrunk[i] >= 5) { PlayerDrunkTime[i] += 1; if(PlayerDrunkTime[i] == 8) { PlayerDrunkTime[i] = 0; new Float:angle; GetPlayerFacingAngle(i, angle); if(IsPlayerInAnyVehicle(i)) { if(GetPlayerState(i) == 2) { SetVehicleZAngle(GetPlayerVehicleID(i), angle + 25); } } else { ApplyAnimation(i,"PED", "Walk_DRUNK",4.0,0,1,0,0,0); } } } сюда
|
| |
|
|
| 3LuCa | Дата: Воскресенье, 10.01.2010, 15:56 | Сообщение # 782 |
|
Новенький
Группа:
Пользователи
Сообщений: 1
Награды: 0
Город: Черная Дыра
Репутация: 0
Замечания: 0%
Статус: 
| Не можете ли Вы сделать хороший FAQ по таймерам и их использовании?Буду очень благодарен.(А ради примера сделайте скрипт который каждую минуту понижал хп на 10 едениц.)
Alkar Role Play - 195.248.176.103:7778
|
| |
|
|
| E1edge | Дата: Воскресенье, 10.01.2010, 20:21 | Сообщение # 783 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 108
Награды: 3
Город: Украина
Репутация: 23
Замечания: 20%
Статус: 
| [pwn]#include <a_samp> new Timer; // Переменная для хранения ID таймера. new Float:PlayerHealth[MAX_PLAYERS]; // Массив для хранения HP всех игроков public OnFilterScriptInit() { Timer = SetTimer("Function", 1000*60*60, 1); // Запускаем таймер при загрузке скрипта. return 1; } public OnFilterScriptExit() { KillTimer(Timer); // Останавливаем (убиваем) таймер когда скрипт выгружается. return 1; } forward Function(); // Сама функция. По истечению времени в таймере она выполняеться. public Function() { for(new i = 0; i <= GetMaxPlayers(); i++) // Цикл проверки всех игроков. { GetPlayerHealth(i, PlayerHealth[i]); // Узнаем HP всех игроков. SetPlayerHealth(i, PlayerHealth[i]-10); // Устанавливаем HP всем игрокам на 10 едениц меньше. } return 1; }[/pwn]
GTA.ru Training Server - 212.42.38.84:7780 AADS Mode v.2.8 by [TWP]_E1edge
Сообщение отредактировал Butilka - Воскресенье, 10.01.2010, 20:23 |
| |
|
|
| stepmex | Дата: Воскресенье, 10.01.2010, 20:41 | Сообщение # 784 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус: 
| [pwn]#include <a_samp> forward Function(); new Timer; // Переменная для хранения ID таймера. public OnFilterScriptInit() { Timer = SetTimer("Function", 1000*60*60, true); // Запускаем таймер при загрузке скрипта. return 1; } public OnFilterScriptExit() { KillTimer(Timer); // Останавливаем (убиваем) таймер когда скрипт выгружается. return 1; } public Function() // Сама функция. По истечению времени в таймере она выполняеться. { new Float:Health; for(new i = 0; i < MAX_PLAYERS; i++) // Цикл от 0 до MAX_PLAYERS. { if(IsPlayerConnect(i))//если игрок с ИД= i есть на сервере уменьшаем его здоровье { GetPlayerHealth(i, Health); // Узнаем HP всех игроков. SetPlayerHealth(i, Health-10.0); // Устанавливаем HP всем игрокам на 10.0 едениц меньше. ВАЖНОЕ ЗАМЕЧАНИЕ: ни когда не смешивайте переменные целочисленного типа и дробные! } } return 1; }[/pwn]Butilka, теперь толково объясни смысл глобального запоминания здоровья у всех игроков?
И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
Сообщение отредактировал stepmex - Воскресенье, 10.01.2010, 20:43 |
| |
|
|
| toneysix | Дата: Воскресенье, 10.01.2010, 20:55 | Сообщение # 785 |
|
Джэдай
Группа:
I'm V.I.P.
Сообщений: 1731
Награды: 77
Город: Салават
Репутация: 1825
Замечания: 0%
Статус: 
| stepmex Quote Устанавливаем HP всем игрокам на 10.0 едениц меньше. ВАЖНОЕ ЗАМЕЧАНИЕ: ни когда не смешивайте переменные целочисленного типа и дробные! Можешь объяснить, почему если плавающую точка, значит обязательно писать 10.0 не просто 10. На что влияет и чем это опасно?
Русскоязычныи портал о MTA/GTA-IV-MP | http://multi-theft-auto.ru
|
| |
|
|
| stepmex | Дата: Воскресенье, 10.01.2010, 21:04 | Сообщение # 786 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус: 
| Quote (toneysix) На что влияет и чем это опасно? Влияет на работу скрипта. Появлением ошибок при обрабтке условий и уравнений. потому что в ядре программы 10 это не 10.0, для него это разные значения.
И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
Сообщение отредактировал stepmex - Воскресенье, 10.01.2010, 21:05 |
| |
|
|
| [ER]Chez | Дата: Воскресенье, 10.01.2010, 21:27 | Сообщение # 787 |
|
Уверенный в себе
Группа:
Пользователи
Сообщений: 250
Награды: 5
Город: Крыжопль
Репутация: 104
Замечания: 100%
Статус: 
| toneysix, создай в плагине функцию, которая печатает в консоль int и float значение из ячейки... и увидишь...
|
| |
|
|
| IIIax | Дата: Воскресенье, 10.01.2010, 21:38 | Сообщение # 788 |
|
Новенький
Группа:
Пользователи
Сообщений: 8
Награды: 1
Город: Набережные Челны
Репутация: 0
Замечания: 0%
Статус: 
| Вот у меня такая проблема: Захожу в больницу меня кудато тп и я падаю. Что надо сделать?
|
| |
|
|
| stepmex | Дата: Воскресенье, 10.01.2010, 21:41 | Сообщение # 789 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус: 
| Quote (IIIax) Что надо сделать? - Меньше курить.
- Не заходить в больницу.
- Прописать интерьер.
- Пользоваться услугами другой больницы
Выбири правильное!
И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
|
| |
|
|
| IIIax | Дата: Воскресенье, 10.01.2010, 22:23 | Сообщение # 790 |
|
Новенький
Группа:
Пользователи
Сообщений: 8
Награды: 1
Город: Набережные Челны
Репутация: 0
Замечания: 0%
Статус: 
| stepmex, Прописать интерьер. Добавлено (10.01.2010, 22:23) --------------------------------------------- Но как? Какие коды нужно вставить и куда? Подскажите.
|
| |
|
|
| stepmex | Дата: Воскресенье, 10.01.2010, 22:41 | Сообщение # 791 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус: 
| Quote (IIIax) Но как? Какие коды нужно вставить и куда? Подскажите. Находишь в коде событие которое отправляет игрока в больницу и перед сменой координат вставляешь http://wiki.sa-mp.com/wiki/SetPlayerInterior
И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
|
| |
|
|
| E1edge | Дата: Воскресенье, 10.01.2010, 22:46 | Сообщение # 792 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 108
Награды: 3
Город: Украина
Репутация: 23
Замечания: 20%
Статус: 
| stepmex, спасибо за подсказку.
GTA.ru Training Server - 212.42.38.84:7780 AADS Mode v.2.8 by [TWP]_E1edge
|
| |
|
|
| IIIax | Дата: Воскресенье, 10.01.2010, 23:14 | Сообщение # 793 |
|
Новенький
Группа:
Пользователи
Сообщений: 8
Награды: 1
Город: Набережные Челны
Репутация: 0
Замечания: 0%
Статус: 
| Вот ты про это говорил? stepmex. Вот сдесь в коде SetPlayerInterior(playerid,6); айди интеръера "6" а что это за интерьер я только "0" знаю. Code { //Hospital enter SetPlayerPos(playerid, 1172.1720,-1332.8326,1006.4028); GameTextForPlayer(playerid, "~w~—O‡’ì…‰A",5000,1); SetPlayerInterior(playerid,6); SetPlayerFacingAngle(playerid, 0); PlayerInfo[playerid][pInt] = 6; } else if (PlayerToPointStripped(1, playerid,1172.1730,-1333.9272,1006.4965, cx,cy,cz)) Code { //Hospital exit SetPlayerPos(playerid, 1174.2563,-1323.3102,15.3943); GameTextForPlayer(playerid, "~w~£A‡O–…ìO KP…K",5000,1); SetPlayerInterior(playerid,0); SetPlayerFacingAngle(playerid, 270); PlayerInfo[playerid][pInt] = 0; } Что где вставить?
|
| |
|
|
| Berry | Дата: Понедельник, 11.01.2010, 00:00 | Сообщение # 794 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 124
Награды: 1
Город: Башкирия
Репутация: 7
Замечания: 0%
Статус: 
| Вроде SetPlayerInterior бывают SetPlayerInterior(playerid,0); и SetPlayerInterior(playerid,1);
|
| |
|
|
| Noxik | Дата: Понедельник, 11.01.2010, 02:36 | Сообщение # 795 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 114
Награды: 1
Город: Черкассы
Репутация: 14
Замечания: 20%
Статус: 
| вот я хочу скомплектировать файл F6 и у меня появляется окно и зависает! что делать?Добавлено (11.01.2010, 02:36) --------------------------------------------- знаю тупой вопрос как координаты опредилить?
Играй там где лучше - 77.220.182.86:7777 Premium|Game
|
| |
|
|