Ñêðèïòû - Ñòðàíèöà 215 - Ôîðóì HeroesWorld-à

Áûñòðàÿ íàâèãàöèÿ ïî îñíîâíûì ðàçäåëàì ôîðóìà:
Òóðíèðû
ÊÀÐÒÛ
Heroes 6
Heroes 5
Heroes 4
Heroes 3
Heroes 2
Heroes 1
Might&Magic

Ãåðîè Ìå÷à è Ìàãèè 5 - Êàðòîñòðîèòåëüñòâî (Ðåäàêòîð êàðò)  ýòîì ðàçäåëå ìîæíî îáñóæäàòü âñå ÷òî êàñàåòñÿ ðåäàêòîðà êàðò äëÿ Heroes of Might and Magic V. Òàê æå çäåñü îáñóæäàåì êàðòîñòðîèòåëüñòâî.

Îòâåò
Ñòðàíèöà 215 èç 265
 
Îïöèè òåìû
#3211
Ñòàðûé 03.09.2020, 11:00
  #3211
^
Ment
 
Àâàòàð äëÿ Ment
📖
Ðåãèñòðàöèÿ: 30.10.2009
Àäðåñ: Íàöèîíàëüíûé çàïîâåäíèê
Ñîîáùåíèÿ: 30903
Ðåãèñòðàöèÿ: 30.10.2009
Àäðåñ: Íàöèîíàëüíûé çàïîâåäíèê
Ñîîáùåíèÿ: 30903
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

А звёздочка у вас в скрипте тоже есть? Может, её посчитали каким-нибудь указателем...
Ment âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3212
Ñòàðûé 03.09.2020, 11:04
  #3212
^
Navkratis
 
Àâàòàð äëÿ Navkratis
📖
Ðåãèñòðàöèÿ: 31.08.2011
Ñîîáùåíèÿ: 164
Ðåãèñòðàöèÿ: 31.08.2011
Ñîîáùåíèÿ: 164
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

MentА звёздочка у вас в скрипте тоже есть? Может, её посчитали каким-нибудь указателем...
Звездочки нет.
Navkratis âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3213
Ñòàðûé 03.09.2020, 11:19
  #3213
^
Fallenru
 
Àâàòàð äëÿ Fallenru
📖
Ðåãèñòðàöèÿ: 03.06.2020
Ñîîáùåíèÿ: 31
Ðåãèñòðàöèÿ: 03.06.2020
Ñîîáùåíèÿ: 31
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

NavkratisДобрый день, консоль пишет (Script) ERROR: "="expected
Сам скрипт выглядит так:

void GiveArtefact("Brem", 13, nBindToHero=0);


В чем здесь ошибка?
Есть подозрение ,что данный скрипт некорректно написан

GiveArtefact(heroname, artefactID, [bindToHero = 0]);
Как я понимаю 3 параметр можно вообще не заполнять) А у вас написано nBindToHero
Fallenru âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3214
Ñòàðûé 03.09.2020, 13:27
  #3214
^
Navkratis
 
Àâàòàð äëÿ Navkratis
📖
Ðåãèñòðàöèÿ: 31.08.2011
Ñîîáùåíèÿ: 164
Ðåãèñòðàöèÿ: 31.08.2011
Ñîîáùåíèÿ: 164
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

FallenruЕсть подозрение ,что данный скрипт некорректно написан

GiveArtefact(heroname, artefactID, [bindToHero = 0]);
Как я понимаю 3 параметр можно вообще не заполнять) А у вас написано nBindToHero
Написал GiveArtefact("Brem", 13); и все заработало, спасибо
Navkratis âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3215
Ñòàðûé 07.09.2020, 18:34
  #3215
^
Ëîëè Íèêèòà
 
Àâàòàð äëÿ Ëîëè Íèêèòà
📖
Ðåãèñòðàöèÿ: 24.03.2019
Ñîîáùåíèÿ: 34
Ðåãèñòðàöèÿ: 24.03.2019
Ñîîáùåíèÿ: 34
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Помогите пожалуйста с одним скриптом . Мне нужно чтобы к моему герою присоединились крестьяне 4, появилось задание, дойти с ними до определенной точки и выполнить задание таким образом, и после этого они должны исчезнуть из отряда. Если крестьяне* погибнут в битве, то задание провалилось. (Начальные этапы* я более менее могу написать, но вот как сделать, чтобы задание проваливалось после смерти крестьян не знаю)

Добавлено через 4 часа 52 минуты
Помогите пожалуйста разобраться в чем ошибка в скрипте:
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);
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);
end;
* end;
* * * Trigger(NEW_DAY_TRIGGER, 'demon');


вроде бы все написал правильно, но задание выполняется, наступает 5 день, монахи не приходят, наступаешь6 день, а ангелов тоже нет.
Ëîëè Íèêèòà âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3216
Ñòàðûé 07.09.2020, 18:44
  #3216
^
Ment
 
Àâàòàð äëÿ Ment
📖
Ðåãèñòðàöèÿ: 30.10.2009
Àäðåñ: Íàöèîíàëüíûé çàïîâåäíèê
Ñîîáùåíèÿ: 30903
Ðåãèñòðàöèÿ: 30.10.2009
Àäðåñ: Íàöèîíàëüíûé çàïîâåäíèê
Ñîîáùåíèÿ: 30903
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

А консоль что пишет?
P.S. Ох уж эти звёздочки, которые теперь автоматом зачем-то ставятся форумом, если пробелов больше одного.
Ment âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3217
Ñòàðûé 07.09.2020, 18:56
  #3217
^
}{0TT@6bI4
 
Àâàòàð äëÿ }{0TT@6bI4
📖
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 2007
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 2007
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Лоли НикитаПомогите пожалуйста с одним скриптом . Мне нужно чтобы к моему герою присоединились крестьяне 4, появилось задание, дойти с ними до определенной точки и выполнить задание таким образом, и после этого они должны исчезнуть из отряда. Если крестьяне* погибнут в битве, то задание провалилось. (Начальные этапы* я более менее могу написать, но вот как сделать, чтобы задание проваливалось после смерти крестьян не знаю)

Добавлено через 4 часа 52 минуты
Помогите пожалуйста разобраться в чем ошибка в скрипте:
	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);
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);
* * end;
end;
Trigger(NEW_DAY_TRIGGER, 'demon');



вроде бы все написал правильно, но задание выполняется, наступает 5 день, монахи не приходят, наступаешь6 день, а ангелов тоже нет.

Скрипт на провал задания при отсутствии крестьян:
	function peas_surv()
while 1 do
if GetHeroCreatures("Имя героя", CREATURE_PEASANT)


А в том месте, где нужно запустить проверку наличия крестьян вставьте строку
	startThread(peas_surv)

Пункты по второму вопросу: можно разъяснить, что происходить должно по скрипту? То есть, проверка чего производится? А то не понятно, зачем 2 вложенные проверки выполненности задания 'p2' подряд...

Ещё вопрос: у вас есть другие функции, запускаемые каждодневным триггером?

Армия должна добавляться на 5 день от начала игры, или же на 5 (и 6) день недели?

На что жалуется консоль?

Пока не пойму, что и почему должно происходить, ответить не смогу.
__________________
Ñ óâàæåíèåì, }{0TT@6bI4
_________________
Ãðóïïà êàðòîñòðîèòåëåé
Òàì îòâåòû íà âîïðîñû, ðóêîâîäñòâà, ãàéäû è ïðî÷åå
Discord-ñåðâåð "Ãåðîè 5: S.T.A.L.K.E.R"
Ñåðâåð ïî ìîäèôèêàöèè "Ãåðîè 5: S.T.A.L.K.E.R"
_________________
Ñ óâàæåíèåì, }{0TT@6bI4
_________________
Ãðóïïà êàðòîñòðîèòåëåé
Òàì îòâåòû íà âîïðîñû, ðóêîâîäñòâà, ãàéäû è ïðî÷åå
Discord-ñåðâåð "Ãåðîè 5: S.T.A.L.K.E.R"
Ñåðâåð ïî ìîäèôèêàöèè "Ãåðîè 5: S.T.A.L.K.E.R"
_________________
}{0TT@6bI4 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3218
Ñòàðûé 07.09.2020, 19:09
  #3218
^
John_Lock
 
Àâàòàð äëÿ John_Lock
📖
Ðåãèñòðàöèÿ: 03.01.2017
Ñîîáùåíèÿ: 133
Ðåãèñòðàöèÿ: 03.01.2017
Ñîîáùåíèÿ: 133
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Лоли НикитаПомогите пожалуйста с одним скриптом . Мне нужно чтобы к моему герою присоединились крестьяне 4, появилось задание, дойти с ними до определенной точки и выполнить задание таким образом, и после этого они должны исчезнуть из отряда. Если крестьяне* погибнут в битве, то задание провалилось. (Начальные этапы* я более менее могу написать, но вот как сделать, чтобы задание проваливалось после смерти крестьян не знаю)
Сначала ставите крестьян на карту
Потом прописывайте эту команду:
SetObjectEnabled ('Peasant', nil);

На карте рисуйте регион, в который надо отвести крестьян и назовём допустим 'Region'

---скрипт присоединения крестьян---

function*peasants()
---ваш код---
AddHeroCreatures ('имя_героя', 1, 4);
SetObjectiveState ('имя_задания',*OBJECTIVE_ACTIVE, PLAYER_1);
RemoveObject ('Peasant');
end;

Trigger(OBJECT_TOUCH_TRIGGER, 'Peasant','peasants');

Теперь скрипт, когда нужно прощаться с крестьянами:

function RegionF()
---ваш код---
if GetObjectiveState ('имя_задания', 1) == OBJECTIVE_ACTIVE then*GetHeroCreatures('имя_героя', 1)==4 then
RemoveHeroCreatures('имя_героя', 1, 4);
SetObjectiveState ('имя_задания',*OBJECTIVE_COMPLETED, PLAYER_1);
Trigger (REGION_ENTER_AND_STOP_TRIGGER, 'Region', nil);
end;
end;

Trigger (REGION_ENTER_AND_STOP_TRIGGER, 'Region', 'RegionF');

Насчёт гибели крестьян в битве и последующий провал задания, нужны боевые скрипты, как мне кажется, но их я увы не знаю

Выше*}{0TT@6bI4*уже предложил лучшую версию
John_Lock âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3219
Ñòàðûé 07.09.2020, 19:23
  #3219
^
}{0TT@6bI4
 
Àâàòàð äëÿ }{0TT@6bI4
📖
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 2007
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 2007
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Собственно, по словам Лоли Никита то, что вы предложили, он организовать умел сам) И скрипт "прощания с крестьянами" лучше разместить внутри дополнительного потока обработки данных. Тогда можно будет одновременно мониторить ситуация, если крестьяне есть, или если крестьяне погибли.
__________________
Ñ óâàæåíèåì, }{0TT@6bI4
_________________
Ãðóïïà êàðòîñòðîèòåëåé
Òàì îòâåòû íà âîïðîñû, ðóêîâîäñòâà, ãàéäû è ïðî÷åå
Discord-ñåðâåð "Ãåðîè 5: S.T.A.L.K.E.R"
Ñåðâåð ïî ìîäèôèêàöèè "Ãåðîè 5: S.T.A.L.K.E.R"
_________________
Ñ óâàæåíèåì, }{0TT@6bI4
_________________
Ãðóïïà êàðòîñòðîèòåëåé
Òàì îòâåòû íà âîïðîñû, ðóêîâîäñòâà, ãàéäû è ïðî÷åå
Discord-ñåðâåð "Ãåðîè 5: S.T.A.L.K.E.R"
Ñåðâåð ïî ìîäèôèêàöèè "Ãåðîè 5: S.T.A.L.K.E.R"
_________________
}{0TT@6bI4 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3220
Ñòàðûé 07.09.2020, 22:28
  #3220
^
Navkratis
 
Àâàòàð äëÿ Navkratis
📖
Ðåãèñòðàöèÿ: 31.08.2011
Ñîîáùåíèÿ: 164
Ðåãèñòðàöèÿ: 31.08.2011
Ñîîáùåíèÿ: 164
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Добрый вечер, пытаюсь написать сообщение с ошибкой, появляющееся в программке Map Script Editor, но форум почему-то упорно удаляет одно из слов сообщения*
Navkratis âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3221
Ñòàðûé 07.09.2020, 22:34
  #3221
^
Fallenru
 
Àâàòàð äëÿ Fallenru
📖
Ðåãèñòðàöèÿ: 03.06.2020
Ñîîáùåíèÿ: 31
Ðåãèñòðàöèÿ: 03.06.2020
Ñîîáùåíèÿ: 31
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

NavkratisДобрый вечер, пытаюсь написать сообщение с ошибкой, появляющееся в программке Map Script Editor, но форум почему-то упорно удаляет одно из слов сообщения*
Хм...можно сделать скриншот ,можно приложить файл с ошибкой...
Fallenru âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3222
Ñòàðûé 07.09.2020, 22:36
  #3222
^
Navkratis
 
Àâàòàð äëÿ Navkratis
📖
Ðåãèñòðàöèÿ: 31.08.2011
Ñîîáùåíèÿ: 164
Ðåãèñòðàöèÿ: 31.08.2011
Ñîîáùåíèÿ: 164
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Попытаюсь так: https://ibb.co/zfjrBSj

Без скрипта седьмого дня все отлично работает, но сколько не пробовал убавлять или добавлять end в скрипты 6 и 7 дней, проблема не исправляется.
Navkratis âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3223
Ñòàðûé 07.09.2020, 22:54
  #3223
^
}{0TT@6bI4
 
Àâàòàð äëÿ }{0TT@6bI4
📖
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 2007
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 2007
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

elseif может идти только в блоке с if'ом. Посчитайте количество блоков if-then elseif-then - на каждый должен приходится только 1 end; . По окончании блока функции также ставится end; (eof) означает 'end of function', значит не хватает одного end'a. Посмотрите, верхний elseif завершается ближайшим end'ом, следующий за ним энд (второй сверху) тогда относится либо к какому-то блоку ифа снаружи этого элсеифа, либо это энд от функции. Тогда попробуйте добавить этот энд перед строчкой триггера нового дня.

В принципе, чтобы не случалось таких путаниц, следует, например, каждый раз когда начинается блок ифа, ставить 2 пробела. А в содержимом для выполнения ифом, кроме энда, элсэифа и зэна - ещё 2 пробела. Тогда энды, соответсвующие ифам, окажутся на одной вертикали. Так можно быстро определить, где энда не хватает.
__________________
Ñ óâàæåíèåì, }{0TT@6bI4
_________________
Ãðóïïà êàðòîñòðîèòåëåé
Òàì îòâåòû íà âîïðîñû, ðóêîâîäñòâà, ãàéäû è ïðî÷åå
Discord-ñåðâåð "Ãåðîè 5: S.T.A.L.K.E.R"
Ñåðâåð ïî ìîäèôèêàöèè "Ãåðîè 5: S.T.A.L.K.E.R"
_________________
Ñ óâàæåíèåì, }{0TT@6bI4
_________________
Ãðóïïà êàðòîñòðîèòåëåé
Òàì îòâåòû íà âîïðîñû, ðóêîâîäñòâà, ãàéäû è ïðî÷åå
Discord-ñåðâåð "Ãåðîè 5: S.T.A.L.K.E.R"
Ñåðâåð ïî ìîäèôèêàöèè "Ãåðîè 5: S.T.A.L.K.E.R"
_________________
}{0TT@6bI4 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3224
Ñòàðûé 08.09.2020, 10:08
  #3224
^
Navkratis
 
Àâàòàð äëÿ Navkratis
📖
Ðåãèñòðàöèÿ: 31.08.2011
Ñîîáùåíèÿ: 164
Ðåãèñòðàöèÿ: 31.08.2011
Ñîîáùåíèÿ: 164
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

Спасибо за помощь, но пока что ничего не получается, попробую еще завтра. Или же обойдусь без триггера седьмого дня, без него все работает.

Добавлено через 10 часов 37 минут
Пока что ситуация такова: заменил элсейфы на более привычные мне ифы (по образцу одной из моих прошлых карт), программа перестала ругаться на ошибки, но скрипт седьмого дня так и не наступает, в консоли тоже никаких надписей об ошибках не появляется и, конечно, это не единственная проблема со скриптами. Спасибо разрабам, сделавшим редактор карт не для простых смертных, а для [s]избранных[/s] (зачеркнуто) программистов
Navkratis âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#3225
Ñòàðûé 08.09.2020, 12:14
  #3225
^
Fallenru
 
Àâàòàð äëÿ Fallenru
📖
Ðåãèñòðàöèÿ: 03.06.2020
Ñîîáùåíèÿ: 31
Ðåãèñòðàöèÿ: 03.06.2020
Ñîîáùåíèÿ: 31
Ïî óìîë÷àíèþ
Re: Ñêðèïòû

NavkratisДобавлено через 10 часов 37 минут
Пока что ситуация такова: заменил элсейфы на более привычные мне ифы (по образцу одной из моих прошлых карт), программа перестала ругаться на ошибки, но скрипт седьмого дня так и не наступает, в консоли тоже никаких надписей об ошибках не появляется и, конечно, это не единственная проблема со скриптами. Спасибо разрабам, сделавшим редактор карт не для простых смертных, а для [s]избранных[/s] (зачеркнуто) программистов
Чтобы помочь, было бы неплохо увидеть кусок кода с данными "Элсейфами" или "ифами" ,чтобы понять что у вас происходит и возможно было увидеть ошибку и протестировать,но как говориться никто вас не заставляет выкладывать "код"**Тоже* относиться и к остальным проблемам.
Fallenru âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
Îòâåò
Ñòðàíèöà 215 èç 265


Îïöèè òåìû



×àñîâîé ïîÿñ GMT +4, âðåìÿ: 10:30.


vBulletin v3.5.0, Copyright ©2000-2025, Jelsoft Enterprises Ltd. (Ðóññêèé)

ßíäåêñ öèòèðîâàíèå    Top.Mail.Ru