Current time: 25.11.2024, 10:45 Hello There, Guest! (LoginRegister)
Language: english | russian  

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

Posts: 4343
Post: #7786

Archer30, !?BR; +
!?onobtainturn?


Image: widget.png?style=banner2

Новейший Heroes Launcher
17.02.2021 00:21
Visit this user's website Find all posts by this user Quote this message in a reply
PerryR Offline

Posts: 460
Post: #7787

Algor True, daemon_n advise is much better.
Use
FU77006 OnBattleStackObtainsTurn
or
FU77007 OnBattleRegeneratePhase

!?FU(OnBattleRegeneratePhase);
!!SN:X?y1; [get who moves]
17.02.2021 00:30
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4343
Post: #7788

Onobtainturn&i^once_per_round^ = 0;
Bla-bla-bla
Set i^once_per_round^ = 1;

Just don't forget set flag to true at start of each br
!?Br;
Set i^once_per_round^ = 0

Sorry for that syntax - typing on forum from the phone is uncomfortable


PerryR, regeneration phase is not been needed. Cause after that stack can skip turn
Only onobtainturn


Image: widget.png?style=banner2

Новейший Heroes Launcher
17.02.2021 00:46
Visit this user's website Find all posts by this user Quote this message in a reply
Algor Away
Administrators

Posts: 3881
Post: #7789

daemon_n, вопрос в том, КОГДА нужно получить номер первого ходящего отряда (в бою, а не в раунде, насколько я понял)
Если перед боем но после тактики, тогда корректнее всего будет

А если вообще перед боем, то тут только скорости считать, учитывать бонусы земли, навыки, арты и спецухи героев и прочие нюансы.


BattleHeroes Rus/Eng | ERA scripts (+ReMagic) Rus/Eng
17.02.2021 01:09
Visit this user's website Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4343
Post: #7790

Algor, действительно - я уже совсем забегался...

Но твой код всё равно надо на тактику проверять: после неё сразу наступает i^battle_round^=1;


Image: widget.png?style=banner2

Новейший Heroes Launcher
17.02.2021 01:39
Visit this user's website Find all posts by this user Quote this message in a reply
Algor Away
Administrators

Posts: 3881
Post: #7791

daemon_n, нет, нулевой, это вроде учтено уже в i^battle_round^


BattleHeroes Rus/Eng | ERA scripts (+ReMagic) Rus/Eng
17.02.2021 02:07
Visit this user's website Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4343
Post: #7792

Algor, глянул stdlib.erm и не нашёл, если честно. И не стоило бы так делать, к слову, потому что фактически это разные раунды, что видно и из плагинов, и из многих скриптов.


Image: widget.png?style=banner2

Новейший Heroes Launcher
17.02.2021 02:21
Visit this user's website Find all posts by this user Quote this message in a reply
Algor Away
Administrators

Posts: 3881
Post: #7793

daemon_n, до первого фактического раунда в i^battle_round^ лежит "минус дохренилиард" и потихоньку инкрементится с каждым псевдораундом тактической расстановки. А в первом фактическом раунде становится нулем. Но обнуляется только в onBattleRound, а в OnBeforeBattleStackTurn (который для самого первого фактического раунда идет ПЕРЕД BR'ом) все еще "минус дохренилиард" с поправкой на копейки тактики.

И да, стоит делать именно так, иначе для кого Берс фреймворк городил?


BattleHeroes Rus/Eng | ERA scripts (+ReMagic) Rus/Eng
17.02.2021 02:35
Visit this user's website Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4343
Post: #7794

Algor, действительно 102

Всё - мне точно пора баиньки Kap


Image: widget.png?style=banner2

Новейший Heroes Launcher
17.02.2021 02:47
Visit this user's website Find all posts by this user Quote this message in a reply
Archer30 Offline
Moderators

Posts: 1175
Post: #7795

Thanks, guys, FU77006 works perfectly well! 96-copy


Latest ERA mods and scripts in development - My GitHub
17.02.2021 18:43
Find all posts by this user Quote this message in a reply
fatsawhorse Offline

Posts: 1022
Post: #7796

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

(вопрос по ЭРЕ 2.9.4)

Хотел спросить совета, мне не очень понятно, а почему именно так:

Есть у меня старая карта. Я на ней всегда тестирую скрипты. При тестинге вставляю один скрипт и проверяю на работоспособность (кроме конкретного скрипта у меня в этой карте больше нет ничего - надпись ZVSE, а потом соответственно только один код всегда)..

Я вот недавно вставил в эту старую карту скрипт, который ранее делал на ней же (когда я его проектировал, то он работал прекрасно) и он не стал работать на этой карте вообще, но когда я вставил этот же скрипт в совершенно новую нетронутую карту (в этой новой карте также как и в старой больше не было сторонних скриптов), то этот код там заработал как надо!

Почему так происходит? Да и какая разница какая карта? Один и тот же код, но в одной карте работает, а в другой нет!
Глупость какая-то? Разве такое может быть? Может что-то я снова не понимаю? Если что-то не понимаю, то что именно?
(This post was last modified: 22.02.2021 18:39 by fatsawhorse.)
22.02.2021 18:35
Find all posts by this user Quote this message in a reply
SergOz Offline

Posts: 1315
Post: #7797

Иногда нужно использовать некий код только в одном определённом бою.
Подскажите, пожалуйста, в каком триггере, по окончании боя, можно корректно его заблокировать, чтобы при переигровке боя игроком, когда используется плагин BattleReplay, не происходила такая блокировка?
То есть, чтобы блокировка происходила только тогда, когда бой действительно закончен, а если игрок переигрывает, то код должен снова срабатывать.
!?FU(OnAfterBattle) такой возможности не даёт. 105

UPD Вопрос снят. Разобрался с помощью !?FU870520; !?FU870530;


Карта-мод "Война на Холсте"
(This post was last modified: 23.02.2021 06:29 by SergOz.)
23.02.2021 05:17
Find all posts by this user Quote this message in a reply
igrik Offline

Posts: 2819
Post: #7798

(23.02.2021 05:17)SergOz Wrote:  UPD Вопрос снят. Разобрался с помощью !?FU870520; !?FU870530;
Не совсем верно. Эти функции в след релизе будут удалены (я об этом предупреждал ещё пол года назад)

Правильно использовать:
!?FU(OnBeforeBattleReplay); [перед переигрываемой битвой: если она гарантированно будет]
!?FU(OnAfterBattleReplay); [после переигрываемой битвы: если переигровка гарантированно была]


game bug fixes extended.dll || My Plugins || My GitHub
23.02.2021 13:17
Visit this user's website Find all posts by this user Quote this message in a reply
SergOz Offline

Posts: 1315
Post: #7799

igrik, спасибо, я это предупреждение прочитал, но у меня на Эра 3.2 !?FU(OnBeforeBattleReplay) не срабатывает. Вообще-то мне эти заморочки нужны не для глобального мода, а для конкретной карты в конкретной сборке.
Но, хочу спросить: если я в коде скрипта продублирую
не будет ли конфликта? Punish

P.S. это для того, чтобы и на старых и на новых версиях Эры срабатывало


Карта-мод "Война на Холсте"
(This post was last modified: 23.02.2021 15:01 by SergOz.)
23.02.2021 14:56
Find all posts by this user Quote this message in a reply
PerryR Offline

Posts: 460
Post: #7800

(23.02.2021 13:17)igrik Wrote:  
(23.02.2021 05:17)SergOz Wrote:  UPD Вопрос снят. Разобрался с помощью !?FU870520; !?FU870530;
Не совсем верно. Эти функции в след релизе будут удалены (я об этом предупреждал ещё пол года назад)

Правильно использовать:
!?FU(OnBeforeBattleReplay); [перед переигрываемой битвой: если она гарантированно будет]
!?FU(OnAfterBattleReplay); [после переигрываемой битвы: если переигровка гарантированно была]


Okay time to update some of my mods.
igrik the Battlereplay Plugin was one of the best additions to ERA in the last year 119
23.02.2021 15:05
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