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

daemon_n, не могу подтвердить.
Тоже проверил, у меня открывается без проблем...

Хотя может мне нужно ТЗ для проверки...

(18.07.2021 01:23)Berserker Wrote: [ -> ]Так как порядок действий !?BG0 => !?BR => !?BG1, то последний отряд не получает второй ход. Тут нужно новое событие с перехватом функции BattleMgr_FindNextStackTurn (464C60).
Я так понимаю, под 3.0.5 Эру такого события можно не ждать
Но, на самом деле, и текущих средств достаточно для реализации.
Немного через зад, да... но можно.
А create_ErmHook тут не поможет разве?
Записал себе добавить событие OnRightAfterBattleAction, так как текущее !?BG1 уже после выбора нового отряда и старта нового раунда происходит, что мягко скажем, неудобно. Но falsewhorse придётся писать костыли.
OnFinishBattleAction и короче и точнее.
Желательно, чтобы событие срабатывало после стадии "анимация возврата для гарпий" и до "отображение окна результатов боя" в случае последнего действия в бою.
Если в нем можно будет получить и текущий отряд (который ходил), и следующий (-1 если бой завершится, текущий - если было действие героя) - будет вообще волшебно.
RightAfter — прямо после действия в бою.
OnFinish — по окончании действия в бою.
Тут как бы надо намекнуть, что событие будет до OnAfterBattleAction. Что думаешь?
Ну дык,
On Finish - "при окончании" (действия),
On After - "после" (не понятно на сколько после),
On Right After - "сразу после". Это уже понятнее, но On Finish "при окончании" - более точно и короче. На что я сразу и указал.
+ меньше тавтологии. А то ведь так можно дойти и до "OnArterRithfAfterButBeforeArterBattleAction".
Надеюсь, мне удалось полностью раскрыть мысль.
Berserker, складывается ощущение, что !!FU(Array_Pop) всегда удаляет лишь 0-ой элемент массива
проверяю ещё раз - была допущена грубая логическая ошибка в моём коде.
UPD: всё работает корректно
Algor, finish — глагол «заканчивать». Окончание — «end». OnBattleActionEnd как тебе?
(23.07.2021 01:04)Berserker Wrote: [ -> ]Порядок событий следующий:
"OnBeforeBattleAction"
>>> "OnBattleActionEnd" <<<
"OnBattleRound"
"OnBeforeBattleStackTurn"
"OnBattleStackObtainsTurn"
"OnAfterBattleAction"
Можно расшифровать, в какие моменты игры эти триггеры срабатывают в битве? Мне с английскими названиями они не понятны.
Начало совершения действия (атака, колдовство, ожидание, побег…) !?BG0
Окончание совершения действия
[если все походили] Начало нового раунда
До хода отряда (до фазы регенерации)
При получении хода отрядом
После действия (!?BG1)
Berserker, супер, спасибо за обновку, как раз последюю чистую версию успеваю сделать

Berserker, great update! Now I can write better scripts with new triggers
A suggestion aprart from the update: Please remove
heroscr3.pcx and
heroscr4.pcx from wog mod. These graphics are incorrected and not needed.
heroscr3.pcx - used only when playing with RoE/AB campaigns (
by checking the type of map). In these campaigns, there are only 4 misc slots available.
Issue: 5 slots from the graphics while only 4 available
heroscr4.pcx - used when playing any other maps.
Issue: The commander icon from the hero screen is not needed with WoG Native Dialogue. The icon from pcx force you to cover it before putting your own button. Making transparent button becomes more difficult
Just remove them and let the game use those from H3. Everything is good again
