Форум HeroesWorld-а - Показать сообщение отдельно - Скрипты
Тема: Скрипты
Показать сообщение отдельно
#3227
Старый 08.09.2020, 12:55
  #3227
^
Лоли Никита
 
Аватар для Лоли Никита
📖
Регистрация: 24.03.2019
Сообщения: 34
Регистрация: 24.03.2019
Сообщения: 34
По умолчанию
Re: Скрипты

У меня есть 1 большой скрипт. qwert(1,2 и3 ) - это квесты. Дальше я задал 2 переменных со значениями идентификаторов( монахи и ангелы). gar_(1,2,3 и 4) - гарнизоны.*Calid и**Nymus - 2 демона. Дальше у меня идет проверка: если гарнизон принадлежит 4 игроку -демонам, то они будут двигаться в замок, расположенный на координатах 41,14. Потом, если выполнено задание qwert3, то к переменный, которые отвечают за идентификаторы ангелов и монахов, будет прибавлена единица и они станут грейженными существами. Дальше, если день недели равен 6 и квест qwert1 выполнен, то во все 4 гарнизона должны прийти 15 монахов, а если задание*qwert3 выполнено, то они будут инквизиторами, и если квест qwert2 выполнен и день недели равен 5, то в гарнизоны прибудут ангелы, также, если квест3 выполнен грейженные. Дальше идет вторая часть функции: Если день равен 7, то на карте появляется демон, он движется в сторону гарнизона, и также в 14 день недели появляется нимус, который тоже движется в сторону гарнизона, но уже другого, того какой ближе к нему. Скрипт прекрасно работал на начальной стадии, но когда я приписал скрипт, который находится вначале, отвечающий за приоритетную точку демонов, то все сломалось( Сначала первоначально они должны появляться, и бежать к гарнизону, захватывать его, стоять 1 день в гарнизоне, и на новый день их приоритетной точкой становится замок, и они бегут к нем). Буду очень благодарен тому, кто поможет разобраться.
function demon()
local p1 =GetObjectiveState ('qwert1',PLAYER_1);
local p =GetObjectiveState ('qwert2',PLAYER_1);
local opr = 9
* local opr3 = 13
* local p2 = GetObjectiveState ('qwert3', 1);
* local ggg =GetObjectOwner('gar_1');
local ggg1 =GetObjectOwner('gar_2');
local ggg2 =GetObjectOwner('gar_3');
local ggg3 =GetObjectOwner('gar_4');
* if* ggg =4* then
* MoveHero('Calid',41,14,0);
* MoveHero('Nymus',41,14,0);
* elseif ggg1 =4* * then
* MoveHero('Calid',41,14,0);
* MoveHero('Nymus',41,14,0);
elseif ggg2 = 4* * then
* MoveHero('Calid',41,14,0);
* MoveHero('Nymus',41,14,0);
* elseif ggg3 < 4 then
* * MoveHero('Calid',41,14,0);
* MoveHero('Nymus',41,14,0);
* end;
* end;
local p2 = GetObjectiveState ('qwert3', 1);
if p2 == OBJECTIVE_COMPLETED then opr= opr+1
* if p2 == OBJECTIVE_COMPLETED then opr= opr3+1
if p1 ==OBJECTIVE_COMPLETED and GetDate(DAY_OF_WEEK ) == 6
then
AddObjectCreatures('gar_1',* opr, 15);
AddObjectCreatures('gar_2',* opr, 15);
AddObjectCreatures('gar_3',* opr, 15);
AddObjectCreatures('gar_4',* opr, 15);
elseif p ==OBJECTIVE_COMPLETED and GetDate(DAY_OF_WEEK ) == 5
then
AddObjectCreatures('gar_1',* opr3, 3);
AddObjectCreatures('gar_2',* opr3, 3);
AddObjectCreatures('gar_3',* opr3, 3);
AddObjectCreatures('gar_4',* opr3, 3);
elseif GetDate( 0 ) == 7 then
DeployReserveHero('Calid',2,16,0,0);
sleep(5);
MoveHero('Calid',7,15,0);
elseif GetDate( 0 ) == 14 then
DeployReserveHero('Nymus',5,1,0,0);
sleep(5);
MoveHero('Nymus',5,4,0);

Добавлено через 4 минуты
Также по поводу прошлого скрипта, про который я спрашивал.* В одной из кампаний героев 5 в мисии за лигу теней, был квест: У игрока в армии дракон, и он не должен погибнуть, если он погибал в какой-нибудь битве, то игрок проигрывал. Я хочу сделать такой же скрипт: У меня в армии появляются 4 крестьянина, потом я должен идти с ними до одного места, и как дойду, они должны исчезнуть( Все, что я написал я могу сделать). А вот как сделать так, чтоб после любой из битв, если они погибают, то задание проваливается.
Лоли Никита вне форума
Ответить с цитированием