Ñêðèïòû äëÿ íà÷èíàþùèõ - Ñòðàíèöà 27 - Ôîðóì HeroesWorld-à

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

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

Îòâåò
Ñòðàíèöà 27 èç 28
 
Îïöèè òåìû
#391
Ñòàðûé 17.03.2024, 12:29
  #391
^
Killer5029
📖
Ðåãèñòðàöèÿ: 04.01.2020
Ñîîáùåíèÿ: 27
Ðåãèñòðàöèÿ: 04.01.2020
Ñîîáùåíèÿ: 27
Õîðîøî
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

АзгалорKiller5029, для удобства можно поставить любого героя-некроманта, а потом выделить его и слева в свойствах объекта зайти в его Shared, и там в списке героев Necropolis выбрать героя Nikolay, нажать OK, и герой сменится на Николаса-вампира.

Огромное спасибо)
Killer5029 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#392
Ñòàðûé 22.03.2024, 16:42
  #392
^
FataLisT
 
Àâàòàð äëÿ FataLisT
📖
Ðåãèñòðàöèÿ: 22.03.2024
Ñîîáùåíèÿ: 25
Ðåãèñòðàöèÿ: 22.03.2024
Ñîîáùåíèÿ: 25
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

Всем доброго времени суток!

Пути поиска ответов привели и на форум, был в группе ВК, нашёл руководство по командам битвы. Условно понятно что с хуками делать. Пока затык чтоб понять, запустился ли вообще этот скрипт. Подозреваю, что до него не доходит, ибо указанный просто в файлике print не выводится в консоли.

Кратко опишу цель: Карта планируется для более быстрых противостояний. Но начала обрастать деталями, например выбирает первый игрок через диалоговые окна стадию игры, но их переделаю, в инструкциях нашёл что можно ввести с большим количеством ответов) И потом обшаривает карту, что дропнулось одевается. подкачивается. И в финале сходятся в битве на специальной арене. Вписывается небольшой сюжет. Хочу на карту вкрутить пару пасхалок и ловушек. Вот есть место, где позарившись на совкровища как бы не охраняемые , игрок должен пойти туда. по тригеру входа в область запускается скрипт, где на него нападает Властелин, либо сами драконы, пока не нашёл как сделать чтобы на одно карте было 2 игрока человека, и нейтрально создавался герой нападающий на одного или второго. Читал про резерв, с ним тоже некоторый затык использования. Но конкретно на это пока только вечер ушёл, а вот с боевым скриптом вопросики. Есть простая команда "StartCombat" , она отрабатывает начало битвы. Можно обойтись и ей, если просто вкрутить нападение драконов. Но задумка дальше. Я хочу чтобы либо напавший герой, либо герой попадает под управление ИИ (наш который попал в ловушку герой) и кастует 2-3 раза армагедон, против чёрных драконов. И потом противник сдаётся. Или там команда после завершения есть кому засчитывается победа. Тоже пытался углубиться в тему, ответы не нашёл, ну или плохо искал. В общем пока могу реализовывать только так с текстовым всплывающим, что вот ты расхититель поплатишься и всё. С горем пополам разобрался как добавляется файл скрипта в игре, поломав параллельно чисто случайно привязку мапскрипта к карте, починил через открытые блокнотом нужного файлика и возвращением упоминания нужного скрипта мапы. По крайней мере команда перестала ругаться, что не видит скрипт по указанному пути. Но не запускается ни в какую. Что я делаю не так, не могу понять. Упёрся в творческий тупик. 

Прошу на пальцах объяснить, как правильно работает. Прикладываю свою заготовку карты. Там местами закомментирована логика, т.к. проверял со старта сразу битву (начинается от взаимодействия со скелетом у стартового замка). Т.е. нужен совет, как правильно прописать взаимодействие чтоб через StartCombat запускался скрипт битвы, в котором хочу прописать каст по площади заклинания и потом отступление атакующих. Может я не в том месте, не в том файле что-то не так пишу, или файл скрипта недоделан как-то. на вид он идентичен файлу MapCsript. В общем ощущение белого пространства знаний на лицо. Пробовал выдать Властелина сразу игроку3 под управлением компа, но скрипт его не видел как противника никаким образом тоже. даже в обычную битву что бы засунуть без дополнительных скриптов на именно касты заклинаний. Когда создавал доп.файл скрипта, print из DragonCombat.lua запускался. т.е. по идее карта до него достучаться может. Но вот механика дополнительного его подключения пока мной не освоена ( Ищу ответ, что не хватает.

Отдельное спасибо ранее всем за выложенные в сеть инструкции, карту ждут масштабные переделки. Существ местами втыкал во имя проверки баланса... ещё все правиться и правиться будет неоднократно. Веду запись версионности, строк там тьма) Сейчас в файле DragonCombat.lua только набросок как хотел. эксперементировал и отлаживал на ходу. За сутки не разобрался, пошёл спрашивать совет) до этого карту ваял пару недель вечерами, только смотрел как у вас тут что было) На карте по чьему-то тут сообщению реализован параллельный бесконечный ход. по задумке всё происходить должно за один день. Да и не раз ещё приду сюда ощущаю... Задумок на основе новых полученных данных по возможностям стало больше и из простенькой дуэльной она может стать вполне себе с некоторыми интересными отсылками, Привет могиле в подземелье и далее сделаю мост (прочитал как) ну и битву с существом)) и ещё что-то попадётся, около пирамид например тоже прикручу. 

Заранее благодарю!

p.s. ещё вспомнил вопрос, промучался пару дней и поисков на форуме, не нашёл способ нормальный как добавить для выбора сразу в создани карты на ряду с Маркелом, Джованни и Орнеллой Арантира. В настройках карты включил всех героев из сюжета. Арантир доступен добавлением на карту, но именно при создании как сразу основной игровой что-то никак. Из мыслей вот его в запас закинуть (в чём пока не разобрался как правильно, чтоб работало) и вызывать в диалоге по типу подошёл к тюрьме или там ещё каким-то взаимодействием. Тут придумаю, чем обыграть. 

23.03.2024 01:20 upd: Попробовал сделать, как нашёл вот в этом сообщении https://forum.heroesworld.ru/showthread.php?p=1225989#post1225989
Один в один по шагам, отличие только в названии файла ( Это ж не обязательно, все файлы скриптов боевых в карте не могут быть одноимённые? О_о ). Вместо CombatScript  у меня DragonCombat. Из отличий заметил, что в настройках карты указывался полный путь до скрипт файла, а не как у меня ранее просто название, без пути. Воодушевлённый пошёл тестить и снова принт не отображал запуск скрипта никаким образом( Из успехов, нашёл как добавить 3 игроку доступных героев для выбора и то там не было Властелина. Но хотяб героя получилось вытаскивать из резерва, перемещать рядом и активировать битву с ним. Заметил, что армия героя не появляется, только те существа, что я прописал при вызове StartCombat. но ни через установку скрипта герою и игрока и компа, ни через указание скрипта в запуске битвы не отображается несчастный принт, что игра зашла в этот скрипт

  DeployReserveHero("Inagost", 115, 290, 0);
  ChangeHeroStat("Inagost", 0, 90000);
  --SetHeroCombatScript('Inagost', pathScript.."DragonCombat.xdb#xpointer(/Script)");
  --SetHeroCombatScript(p1heroname[0], pathScript.."DragonCombat.xdb#xpointer(/Script)");
  StartCombat(p1heroname[0], "Inagost", 1, 84, 10, pathScript.."DragonCombat.xdb#xpointer(/Script)", nil, nil, nil);

пробовал вот таким образом вызывать скрипт, комментил 3- строки попеременно и совсем без них, и в StartCombat ставил nil и оставлял путь до скрипта. Не хочет работать. Актуальную карту перезагрузил в приложение. Так же теряюсь в догадках, где недочёт. Чтоб двигаться дальше в доработке идей свох

Âëîæåíèÿ
Òèï ôàéëà: h5m Grand_Duel.h5m (444.4 Êáàéò, 1 ïðîñìîòðîâ)
__________________
Åù¸ òîëüêî ó÷óñü =)
Åù¸ òîëüêî ó÷óñü =)
FataLisT âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#393
Ñòàðûé 23.03.2024, 13:08
  #393
^
Jack_of_shadows
 
Àâàòàð äëÿ Jack_of_shadows
📖
Ðåãèñòðàöèÿ: 08.09.2013
Ñîîáùåíèÿ: 526
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 08.09.2013
Ñîîáùåíèÿ: 526
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

FataLisT, по поводу StartCombat, возможно не хватает sleep(1) после DeployReserveHero. Обычно все функции, которые что-то изменяют на самой карте, выполняются не мгновенно в момент вызова команды, нужна задержка прежде чем герой реально появится из резерва.
__________________
ÐÏÃ-ñöåíàðèé äëÿ HoMM5: Ïóòü ãåðîÿ

×àÂî ïî ñîçäàíèþ êàðò äëÿ HoMM5: ×àÂî
ÐÏÃ-ñöåíàðèé äëÿ HoMM5: Ïóòü ãåðîÿ

×àÂî ïî ñîçäàíèþ êàðò äëÿ HoMM5: ×àÂî
Jack_of_shadows âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#394
Ñòàðûé 23.03.2024, 16:19
  #394
^
FataLisT
 
Àâàòàð äëÿ FataLisT
📖
Ðåãèñòðàöèÿ: 22.03.2024
Ñîîáùåíèÿ: 25
Ðåãèñòðàöèÿ: 22.03.2024
Ñîîáùåíèÿ: 25
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

Jack_of_shadows, спасибо) Попробовал добавил sleep(1), не помогло. Герой появлялся и без задержки, было видно, хотя команда. Но вообще команда полезна вероятно будет, учту на будущее. Ещё бы понять почему немного лагает при старте игры. Убрал из стартовой функции блокировки областей определённых стало полегче. 

+ без вызова героя из запаса в просто вызове StartCombat с чисто мобами и добавлении скрипта в соответствующий параметр к нему не идёт обращение.

 

__________________
Åù¸ òîëüêî ó÷óñü =)
Åù¸ òîëüêî ó÷óñü =)
FataLisT âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#395
Ñòàðûé 23.03.2024, 16:58
  #395
^
FataLisT
 
Àâàòàð äëÿ FataLisT
📖
Ðåãèñòðàöèÿ: 22.03.2024
Ñîîáùåíèÿ: 25
Ðåãèñòðàöèÿ: 22.03.2024
Ñîîáùåíèÿ: 25
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

Протестировал, в настройках карты в Mapscript если устанавливаю DragonScript, он мне в игре отображает в консоли print, который я вбил для проверки что в файл скрипта попадаю, как только меняю и пытаюсь через команду вытянуть нужный мне боевой скрипт чтоб пока увидеть, что игра на него вышла и готова выполнять - фигушки)
Заменяемое в настройках карты строчки:
Script:Maps\Multiplayer\Grand_Duel\MapScript
Script:Maps\Multiplayer\Grand_Duel\DragonCombat
т.е. я делаю вывод, что DragonCombat.xdb корректно видит *.lua файл свой. Но вот в нормальных условиях по непонятной пока мне причине отказывается обращаться к указанному скрипту, хотя адрес на вид верный. Иначе соответствующие команды ругались на некорректный параметр.

Нужен хелп от гуру)

Ещё скопилось пара вопросов:
1) просмотрел инструкцию по всплывающим сообщениям, и по форуму поискал. Не нашёл инфу, как вместо надписи "Сообщение" сделать свой заголовок. Подозреваю там нужен какой-то аргумент дополнительный.

2) когда-то в самом начале, разграничивая карту, я промахнулся и за область вынес объекты стен. выделить их никаким образом не удаётся для удаления. Висят там немым укором) Есть ли способ убрать эти лишние объекты? чтоб совсем всю карту не переделывать из-за них, просто перенёс по области видимости текущую планировку карты. ну и пока там всё размечено удобными квадратами из меню объектов арены.

Как только решение по корректному обращению в файл боевого скрипта будет найдено, буду ещё разбираться в создании своей сцены боя. Ибо тематическая штука на карте прям обязывает довести дело до идеала и отсылку сделать полной с ареной битвы на узком мосту подземелья) 

Ìèíèàòþðû
Íàæìèòå íà èçîáðàæåíèå äëÿ óâåëè÷åíèÿ
Íàçâàíèå:  1.JPG
Ïðîñìîòðîâ: 6
Ðàçìåð:	57.7 Êáàéò
ID:	72977  
__________________
Åù¸ òîëüêî ó÷óñü =)
Åù¸ òîëüêî ó÷óñü =)
FataLisT âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#396
Ñòàðûé 24.03.2024, 17:04
  #396
^
}{0TT@6bI4
 
Àâàòàð äëÿ }{0TT@6bI4
📖
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1985
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1985
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

Попробуйте указать путь целиком без конкатенаций. Начиная с прямого слеша. Именно "/Maps/SingleMissions/...". Без GetMapDataPath(). Помню, что сталкивался с этой проблемой, потому что в сталкере корневой боевой скрипт привязан именно так.
__________________
Ñ óâàæåíèåì, }{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 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#397
Ñòàðûé 24.03.2024, 17:08
  #397
^
}{0TT@6bI4
 
Àâàòàð äëÿ }{0TT@6bI4
📖
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1985
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 05.09.2019
Àäðåñ: Ñåðåáðÿíûå Ãîðîäà, Àëü-Ñàôèð
Ñîîáùåíèÿ: 1985
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

1) У MessageBox'ов нет возможности скриптом настроить что-либо, кроме основного текста. Для более интересных вещей лучше пользуйтесь TalkBoxForPlayers (с версии 3.1), описание есть в ЧаВо Jack_of_Shadows.

2) Все объекты хранятся в списке objects в map.xdb. При помощи текстового редактора найдите там объекты с отрицательными координатами (или превышающими размер карты) и удалите соответсвующий блок вида <Item>...<Item/>. Если знаете путь к Shared объекта, то можете найти по нему.
__________________
Ñ óâàæåíèåì, }{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 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#398
Ñòàðûé 24.03.2024, 20:53
  #398
^
FataLisT
 
Àâàòàð äëÿ FataLisT
📖
Ðåãèñòðàöèÿ: 22.03.2024
Ñîîáùåíèÿ: 25
Ðåãèñòðàöèÿ: 22.03.2024
Ñîîáùåíèÿ: 25
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

}{0TT@6bI4Попробуйте указать путь целиком без конкатенаций. Начиная с прямого слеша. Именно "/Maps/SingleMissions/...". Без GetMapDataPath(). Помню, что сталкивался с этой проблемой, потому что в сталкере корневой боевой скрипт привязан именно так.
Попробовал вынести в MapScript.lua этот кусок сразу. Получилось следующее:
DeployReserveHero("Inagost", 115, 290, 0);
sleep(1);
p3heroname = GetPlayerHeroes(3)[0];
print(p3heroname);
ChangeHeroStat("Inagost", 0, 90000);
SetHeroCombatScript(p1heroname, "/Maps/Multiplayer/Grand_Duel/DragonCombat.xdb#xpointer(/Script)");
sleep(1);
StartCombat(p1heroname, "Inagost", 1, 84, 10, nil, nil, nil, nil);

Остальные стартовые закомментировал функции, в итоге перемещает героя из запаса, но дальше всё равно не заходит в скрипт. Там для проверки лежит print ("open DragonScript") . Консоль молчит, но напрягает вот строчка warning: script are not allowed, скрин во вложении. Может где-то не хватает чего-то ещё, как настройки чтоб скрипт работал? Теряюсь в догадках( Но вообще ворнинги постоянно какие-то вылезали, и остальное работало.

По ответам на 1) и 2) пункты, спасибо большущее! Карту подредактировал в map.xdb, по именам объектов нашёл быстро строки с координатами выбивающимися. Теперь всё ровно, глаз радуется. На счёт TalkBoxForPlayers  сейчас изучаю, как работает и вывод потестировал, прикрутил. Осталось дооформить, под мои цели этот вариант намного лучше и элегантнее выглядит) 

Ìèíèàòþðû
Íàæìèòå íà èçîáðàæåíèå äëÿ óâåëè÷åíèÿ
Íàçâàíèå:  ñêðèí.JPG
Ïðîñìîòðîâ: 7
Ðàçìåð:	40.7 Êáàéò
ID:	72993  
__________________
Åù¸ òîëüêî ó÷óñü =)
Åù¸ òîëüêî ó÷óñü =)
FataLisT âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#399
Ñòàðûé 24.03.2024, 23:11
  #399
^
Jack_of_shadows
 
Àâàòàð äëÿ Jack_of_shadows
📖
Ðåãèñòðàöèÿ: 08.09.2013
Ñîîáùåíèÿ: 526
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 08.09.2013
Ñîîáùåíèÿ: 526
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

FataLisT, а пробовали класть боевой скрипт в корень карты? У меня так работает, но я уже и не помню почему было сделано именно так.
__________________
ÐÏÃ-ñöåíàðèé äëÿ HoMM5: Ïóòü ãåðîÿ

×àÂî ïî ñîçäàíèþ êàðò äëÿ HoMM5: ×àÂî
ÐÏÃ-ñöåíàðèé äëÿ HoMM5: Ïóòü ãåðîÿ

×àÂî ïî ñîçäàíèþ êàðò äëÿ HoMM5: ×àÂî
Jack_of_shadows âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#400
Ñòàðûé 24.03.2024, 23:39
  #400
^
FataLisT
 
Àâàòàð äëÿ FataLisT
📖
Ðåãèñòðàöèÿ: 22.03.2024
Ñîîáùåíèÿ: 25
Ðåãèñòðàöèÿ: 22.03.2024
Ñîîáùåíèÿ: 25
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

Jack_of_shadowsFataLisT, а пробовали класть боевой скрипт в корень карты? У меня так работает, но я уже и не помню почему было сделано именно так.
Jack_of_shadows, если правильно понял, речь про такое расположение? (Приложил скрин) Сейчас файл и *.xdb и *.lua лежат, как и изначально были созданы в корне папки по умолчанию по всеми. В папку сегодня только вынес кучу текстовок для вопросов. Ну и иные функции переписал, сократив количество строчек.

По сути вот в таком виде не работает. Путь пробовал и в ", и в ' заключать. Не хочет заходить в скрипт боевой. Опять же, заменив MapScript на DragonCombat при запуске карты *.lua запускался из скрипта. Связь в нём прописана нормально, видимо)

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

Ìèíèàòþðû
Íàæìèòå íà èçîáðàæåíèå äëÿ óâåëè÷åíèÿ
Íàçâàíèå:  ñêðèí.JPG
Ïðîñìîòðîâ: 5
Ðàçìåð:	218.5 Êáàéò
ID:	72997  
Âëîæåíèÿ
Òèï ôàéëà: h5m Grand_Duel.h5m (451.8 Êáàéò, 1 ïðîñìîòðîâ)
__________________
Åù¸ òîëüêî ó÷óñü =)
Åù¸ òîëüêî ó÷óñü =)
FataLisT âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#401
Ñòàðûé 24.03.2024, 23:54
  #401
^
Jack_of_shadows
 
Àâàòàð äëÿ Jack_of_shadows
📖
Ðåãèñòðàöèÿ: 08.09.2013
Ñîîáùåíèÿ: 526
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 08.09.2013
Ñîîáùåíèÿ: 526
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

FataLisT, не, корень я имел в виду самый верхний уровень, рядом с папками Maps и MapObjects. И в xdb тогда путь просто "/DragonCombat.lua".
__________________
ÐÏÃ-ñöåíàðèé äëÿ HoMM5: Ïóòü ãåðîÿ

×àÂî ïî ñîçäàíèþ êàðò äëÿ HoMM5: ×àÂî
ÐÏÃ-ñöåíàðèé äëÿ HoMM5: Ïóòü ãåðîÿ

×àÂî ïî ñîçäàíèþ êàðò äëÿ HoMM5: ×àÂî
Jack_of_shadows âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#402
Ñòàðûé 25.03.2024, 00:08
  #402
^
FataLisT
 
Àâàòàð äëÿ FataLisT
📖
Ðåãèñòðàöèÿ: 22.03.2024
Ñîîáùåíèÿ: 25
Ðåãèñòðàöèÿ: 22.03.2024
Ñîîáùåíèÿ: 25
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

Jack_of_shadowsFataLisT, не, корень я имел в виду самый верхний уровень, рядом с папками Maps и MapObjects. И в xdb тогда путь просто "/DragonCombat.lua".
Попробовал положить рядом с Maps и MapObjects, и в *.xdb поменял путь через MapEditor - всё так же, не выходит.
__________________
Åù¸ òîëüêî ó÷óñü =)
Åù¸ òîëüêî ó÷óñü =)
FataLisT âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#403
Ñòàðûé 25.03.2024, 00:17
  #403
^
Àçãàëîð
 
Àâàòàð äëÿ Àçãàëîð
📖
Ðåãèñòðàöèÿ: 24.04.2016
Ñîîáùåíèÿ: 225
Ðåãèñòðàöèÿ: 24.04.2016
Ñîîáùåíèÿ: 225
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

FataLisT

 

p3heroname = GetPlayerHeroes(3)[0];
print(p3heroname);
SetHeroCombatScript(p1heroname, "/Maps/Multiplayer/Grand_Duel/DragonCombat.xdb#xpointer(/Script)");
StartCombat(p1heroname, "Inagost", 1, 84, 10, nil, nil, nil, nil);

 

Первые 2 строки связанны с p3heroname, а боевой скрипт вешается и комбат запускается на герое под названием p1heroname. Собственно, герой p1heroname существует?

Upd: Открыл твою карту, чекнул скрипт, p1heroname нигде не упоминается. Собственно, вопрос от нашего(почему-то в этом случае молчаливого) скрипта: "Да кто такой этот ваш p1heroname?!"

Àçãàëîð âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#404
Ñòàðûé 25.03.2024, 00:27
  #404
^
FataLisT
 
Àâàòàð äëÿ FataLisT
📖
Ðåãèñòðàöèÿ: 22.03.2024
Ñîîáùåíèÿ: 25
Ðåãèñòðàöèÿ: 22.03.2024
Ñîîáùåíèÿ: 25
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

Азгалор

Первые 2 строки связанны с p3heroname, а боевой скрипт вешается и комбат запускается на герое под названием p1heroname. Собственно, герой p1heroname существует?

Upd: Открыл твою карту, чекнул скрипт, p1heroname нигде не упоминается. Собственно, вопрос от нашего(почему-то в этом случае молчаливого) скрипта: "Да кто такой этот ваш p1heroname?!"

 

p1heroname определяется в других функциях, на них ссылки в " doFile(path.. "Grand_Duel_db.lua"); " ведут. иначе да, скрипт вообще бы ругался, согласен)
p3heroname = GetPlayerHeroes(3)[0];
print(p3heroname);

Эти 2 строки только для проверки что игра видит нормально героя 3 игрока ИИ. Их можно закомментировать, ничего не изменится. Ну и этот же кусок кода я вставлял в другие тесты, где отрабатывает функция телепорта через взаимодействие со скелетом на карте. Итог тот же. Сейчас перенёс в основной файл MapScript.lua чтоб быстрее проверять работает или нет. А так он будет вообще отдельно лежать и идти туда нужно долго по карте для срабатывания.

Скрипт битвы я хочу прикрутить к герою игрока. а не ИИ. поэтому навешиваю на p1heroname.

Если где-то логический косяк. Допускаю, lua специфичен крайне. В голове остаточные знания с универа о программировании лежат)

Кстати, вспомнился вопрос, почему нельзя редактировать через MapScriptsEditor файлы xdb?

__________________
Åù¸ òîëüêî ó÷óñü =)
Åù¸ òîëüêî ó÷óñü =)
FataLisT âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
#405
Ñòàðûé 25.03.2024, 00:32
  #405
^
Àçãàëîð
 
Àâàòàð äëÿ Àçãàëîð
📖
Ðåãèñòðàöèÿ: 24.04.2016
Ñîîáùåíèÿ: 225
Ðåãèñòðàöèÿ: 24.04.2016
Ñîîáùåíèÿ: 225
Ïî óìîë÷àíèþ
Re: Ñêðèïòû äëÿ íà÷èíàþùèõ

FataLisTp1heroname определяется в других функциях, на них ссылки в " doFile(path.. "Grand_Duel_db.lua"); " ведут. иначе да, скрипт вообще бы ругался, согласен)
Да, уже заметил) Что же, недоглядел немного. Кстати, запустил карту, и скрипт работает. Ну... Сильно подвисает секунд 5, а потом запускает комбат с нейтральным Синитаром с 10 драконами в его армии. Такие дела 👀
Àçãàëîð âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì
Îòâåò
Ñòðàíèöà 27 èç 28


Îïöèè òåìû



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


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

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