Current time: 23.04.2024, 00:11 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Ваши вопросы по ERM-скриптам
Author Message
daemon_n Offline
Administrators

Posts: 4338
Post: #6811

fatsawhorse,

ВНИМАТЕЛЬНЕЕ ЧИТАЕМ ОТВЕТЫ И СПРАВКУ!


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
18.07.2020 15:24
Visit this user's website Find all posts by this user Quote this message in a reply
SergOz Offline

Posts: 1292
Post: #6812

fatsawhorse, ты в скрипте с биографией проверял биографии героев, или ты веришь сообщению, которое выскакивает во время боя? Ведь в строчке скрипта, выводящей сообщение, также должна быть проверка на побег/откуп:
Ты невнимательно смотрел, данный тебе ответ, здесь.
Так же ты не внял совету не выходить из функций без надобности. Ты написал:
а достаточно:
и Гуннар получит "маскировку". НО, при этом герой должен быть активным, о чём тебе писал XEPOMAHT.
То есть он, к примеру, должен посетить какой-то объект и тогда через триггер !?OBx/y/z; всё сработает.
Если тебе нужно/хочется сделать проверку героев на наличие артов и после этого наложить закл через !?TM; то в теле таймера можно запустить цикл !!DO с перечнем всех героев, где сперва узнать есть ли герой на карте и потом есть ли у него нужные арты. При этом НЕ делать выход из функции, если их нет, а давать закл, если они есть.


Карта-мод "Война на Холсте"
18.07.2020 15:35
Find all posts by this user Quote this message in a reply
fatsawhorse Offline

Posts: 1012
Post: #6813

daemon_n, этот кусочек
вызывает ошибку при срабатывании функции и протестировать его так и не удалось Bad

SergOz писал
Quote:fatsawhorse, ты в скрипте с биографией проверял биографии героев, или ты веришь сообщению, которое выскакивает во время боя? Ведь в строчке скрипта, выводящей сообщение, также должна быть проверка на побег/откуп:
!!IF&y2<2|y1=4/y1=5:M^ТЫ ОТСТУПИЛ И ПОКАЗАЛ СВОЮ ТРУСОСТЬ!^
- всё равно выходит ошибка при любом действии на экран и присваивается степень трусости в таком коде
Bad

P.S. я бы в этом скрипте, который по изменению биографии, хотел бы проверить ещё на статус воина и если воин, то выход, а также всё-таки на битву ИИ и если она, то тоже бы выход.. Два выхода, которые надо бы в скрипт вписать.. Я пытался таким образом сделать, но тоже самое вышло
Quote:Если тебе нужно/хочется сделать проверку героев на наличие артов и после этого наложить закл через !?TM; то в теле таймера можно запустить цикл !!DO с перечнем всех героев, где сперва узнать есть ли герой на карте и потом есть ли у него нужные арты. При этом НЕ делать выход из функции, если их нет, а давать закл, если они есть.
- да, так я хотел сделать.. Обязательно проверю сегодня. Попробую самостоятельно что-нибудь в таком духе слепить....

Quote:и Гуннар получит "маскировку". НО, при этом герой должен быть активным, о чём тебе писал XEPOMAHT.
То есть он, к примеру, должен посетить какой-то объект и тогда через триггер !?OBx/y/z; всё сработает.
- да ,с активностью героя то не очень.. Но попробую поэкспериментировать ещё... Видимо, что он не определяется как активный и поэтому ничего то не работает Bad
(This post was last modified: 18.07.2020 16:46 by fatsawhorse.)
18.07.2020 16:39
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4338
Post: #6814

fatsawhorse, когда функция вызывается?


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
18.07.2020 16:52
Visit this user's website Find all posts by this user Quote this message in a reply
fatsawhorse Offline

Posts: 1012
Post: #6815

daemon_n, я её вызывал таким образом:

Сработает таймер и он активирует функцию, которая переберёт всех героев по карте, затем в тригере !?FU1308 я произведу проверку у всех героев на наличие артефактов определённых и дам специфические благославления (всё сработало прекрасно), но когда я попробовал вставить строчки
ниже тех благословлений, которые получил герой, то сразу же ошибка вышла Bad

Я Вам позже весь код выставлю (завтра). Он у меня на другом компьютере...
(This post was last modified: 18.07.2020 17:01 by fatsawhorse.)
18.07.2020 16:58
Find all posts by this user Quote this message in a reply
SergOz Offline

Posts: 1292
Post: #6816

fatsawhorse, если ты циклической функцией перебираешь героев, то у тебя в каждом цикле функции будет "обрабатываться" один определённый герой под уже определённым номером.
Так зачем же тебе узнавать принадлежность, уже известного героя, к хозяину и ещё раз узнавать его номер?
Тем более, что так ты ничего не определишь.


Карта-мод "Война на Холсте"
18.07.2020 23:04
Find all posts by this user Quote this message in a reply
SergOz Offline

Posts: 1292
Post: #6817

Где-то видел, а сейчас никак не могу найти. Как отличить сгенерированную карту от "рукодельной"?
И ещё. Есть ли метод различить правленый через редактор сэйвов файл от неправленного, "трудового"?


Карта-мод "Война на Холсте"
19.07.2020 01:17
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5422
Post: #6818

нашёл с первого запроса... просто помнил что Алгор в этом участвовал + "рандомн"
(13.02.2020 22:55)Algor Wrote:  
(13.02.2020 21:00)wessonsm Wrote:  У меня есть такой вопрос: как можно отличить случайную карту от кастомной?
Gamer1
19.07.2020 03:53
Visit this user's website Find all posts by this user Quote this message in a reply
SergOz Offline

Posts: 1292
Post: #6819

Bes, большое спасибо. Наверное, это нужно поместить в тему UN:C.4

Повторю вторую часть моего вопроса:
возможно ли отличить сейв игры, правленный в редакторе сэйвов, от чистого игрового сэйва? (в WoG и в SoD)
Кто знает, ответьте, пожалуйста, мне это очень важно.


Карта-мод "Война на Холсте"
(This post was last modified: 19.07.2020 12:34 by SergOz.)
19.07.2020 12:02
Find all posts by this user Quote this message in a reply
fatsawhorse Offline

Posts: 1012
Post: #6820

Здравствуйте..

SergOz писал
Quote:fatsawhorse, если ты циклической функцией перебираешь героев, то у тебя в каждом цикле функции будет "обрабатываться" один определённый герой под уже определённым номером.
Так зачем же тебе узнавать принадлежность, уже известного героя, к хозяину и ещё раз узнавать его номер?
Тем более, что так ты ничего не определишь.
- Вы правы и как не странно, до меня это дошло буквально сегодня с утра, когда я понял что там вряд ли определит конкретного героя..

1. Да, Вы правы и как только я подставил маскировку в такой скрипт
- она мгновенно заработала, но тут понятно, что посещение объекта делает этого героя единственным активным на данный момент..

Может я без фантазии, но что только не пробовал – никак не смог в свой скрипт сделать такой трюк
Скрипт мой
Вот что только не делал! И также ничего не происходило! Так просто активного героя не определить мне!
А может наложение заклинания на карте приключений не будет в такого рода скриптах работать вообще?
Bad

2. С биографией вообще всё сложно! Я так и не смог с ней разобраться.. Работать скрипт с биографией отказывается! Что только не пробовал и всё бесполезно! Куча попыток была переделать, но не смог я ничего стоющего составить Bad
(This post was last modified: 19.07.2020 16:09 by fatsawhorse.)
19.07.2020 16:04
Find all posts by this user Quote this message in a reply
SergOz Offline

Posts: 1292
Post: #6821

fatsawhorse, странная у тебя способность добавлять в скрипты кучу ненужных проверок...

Сейчас нет времени проверять. Попробуй так:

Но, через !?ТМ ты должен понимать, что данное в начале дня благословление, останется, если герою в течении хода снять проверяемые арты.


Карта-мод "Война на Холсте"
(This post was last modified: 19.07.2020 17:06 by SergOz.)
19.07.2020 17:02
Find all posts by this user Quote this message in a reply
Raistlin Away
Moderators

Posts: 1348
Post: #6822

fatsawhorse, второй вариант решения проблемы с биографией предлагал я, но потом мы вместе с Bes'ом сошлись на том, что в нем неправильна вот эта строка:

Биографию, как оказалось, нельзя сохранять в z-переменную таким образом, соответственно, статус труса/воина нужно держать в переменой, относящейся к самому герою (w). Это работает следующим образом:



Создал новый глобальный мод: WoG Ultra Edition
(This post was last modified: 19.07.2020 20:30 by Raistlin.)
19.07.2020 17:03
Find all posts by this user Quote this message in a reply
fatsawhorse Offline

Posts: 1012
Post: #6823

SergOz писал
Quote:странная у тебя способность добавлять в скрипты кучу ненужных проверок...
- Да уж, тут у меня ничего не отнять у моего бесполезного умения растягивать коды до немыслимых размеров Sm У Вас как всегда очень компактно.. Да, он работает прекрасно, но только я без понятия как вставить в него эту строчку
при том, чтобы она работала как следует Bad


Raistlin, да я помню, что Вы об этом с Bes'ом писали, но там такая ситуация, что каждый раз при действии любого существа выходит надпись на экран и присваивается степень трусости, даже когда я не думаю кнопки нажимать!

Вроде и проверки имеются, но как будто бы они все игнорируются! Я даже физически из-за этого так и не смог поэкспериментировать с переменной W. Как только начинается бой всегда, то при действии существа любого (моего или вражеского) идёт на экран надпись всегда, а с ней и биография портится! Bad

Биография
У меня есть несколько вопросов касаемо биографии:

1. То есть при проверке только использовать надо переменную W.. Но у меня же есть и другие биографии обычная биография героя и биография труса. Они прекрасно через таймер сами устанавливаются и меняются.. Я могу попробовать на W переделать вместо В3, но В1 у меня же с Z-переменной остаётся! Или все переменные менять на W?

2. Будет ли точна такая запись !!IF:W-1; потом !!VRw120:S0; далее !!HE-10&y5=0:B3/?w120; !!FU&w120=z933:E; и т. д.?
(This post was last modified: 19.07.2020 17:34 by fatsawhorse.)
19.07.2020 17:32
Find all posts by this user Quote this message in a reply
Raistlin Away
Moderators

Posts: 1348
Post: #6824

fatsawhorse, там не мой блок кода, у меня надпись после каждого действия не выводилась.

Переменные w хранят целые числа, текст в них записать не получится. Я имел ввиду примерно такой подход:
Если переменная w120(или ещё какая) хранит значение 0, значит биография не менялась, если 1 - биография воина, если 2 - биография труса. Соответственно, нужно перед тем, как поставить текст, проверять эту самую переменную. Ну а при определенных обстоятельствах ее значение будет меняться: например, если герой убежал - меняем значение с 0 на 2.


Создал новый глобальный мод: WoG Ultra Edition
19.07.2020 18:28
Find all posts by this user Quote this message in a reply
fatsawhorse Offline

Posts: 1012
Post: #6825

Raistlin, я Вас понял.. Сейчас отыщу Ваш код и попробую что-нибудь сделать таким образом как Вы написали сейчас...
19.07.2020 19:30
Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Forum Jump:

Powered by MyBB Copyright © 2002-2024 MyBB Group