Сделал скрипт который переводит нанесенный урон в манну, вроде работает, ошибок не выдает, но не знаю как работать с циклами, может кто подскажет?
Надо этот кусок кода зациклить
** Мвгия крови - при наличии Мистицизма и Некромантии герой
** восполняет 1 ед манны за каждые 90\60\30 ед нанесенного урона
!?BA0; [в начале битвы]
!!SN:W^BloodMagic1^/0; [обнуляем сохр. урон]
!!SN:W^BloodMagic2^/0; [обнуляем сохр. урон]
!!BA:H0/?v30; (Определяем номер героя-нападающего (слева).)
!!BA:H1/?v31; (Определяем номер героя-защищающегося (справа).)
!?MF1; [срабатывает перед нанесением физического урона]
!!MF:N?y1; [номер стека (0…41), получающего урон]
!!if&y1<21/v31<>-2:; [урон получает отряд левого героя - атак.]
** применить изменения к защищающемуся герою
!!HEv31:S12/?y12 S8/?y8; [y12 - уровень навыка Некромантия, y8 - Мистицизм]
!!FU|y12=0/y8=0:E; [выход, если нет Некромантии или Мистицизма]
!!VRy8&y8>y12:Sy12; [y8 - минимум из навыков Некромантия и Мистицизм]
!!VRy2:S30 :y8; [считаем здоровье необходимое для восстановления манны]
!!MF:F?y1; [у1 - полученный урон]
!!SN:W^BloodMagic1^/?y11; [вспомнить оставшийся урон]
!!VRy1:+y11; [добавить оставшийся урон]
!!if&y1>y2:; [если урон больше необходимого для манны]
!!VRy1:-y2; [вычитаем из полученного урона необходимый для манны]
!!HEv31:Id1; [дать герою очко манны]
!!en:;
!!SN:W^BloodMagic1^/y1; [запомнить оставшийся урон]
!!en:;
!!if&y1>20/v30<>-2:; [урон получает отряд правого героя - защ.]
**применить изменения к атакующему герою
!!HEv30:S12/?y12 S8/?y8; [y12 - уровень навыка Некромантия, y8 - Мистицизм]
!!FU|y12=0/y8=0:E; [выход, если нет Некромантии или Мистицизма]
!!VRy8&y8>y12:Sy12; [y8 - минимум из навыков Некромантия и Мистицизм]
!!VRy2:S30 :y8; [считаем здоровье необходимое для восстановления манны]
!!MF:F?y1; [у1 - полученный урон]
!!SN:W^BloodMagic2^/?y11; [вспомнить оставшийся урон]
!!VRy1:+y11; [добавить оставшийся урон]
!!if&y1>y2:; [если урон больше необходимого для манны]
!!VRy1:-y2; [вычитаем из полученного урона необходимый для манны]
!!HEv30:Id1; [дать герою очко манны]
!!en:;
!!SN:W^BloodMagic1^/y2; [запомнить оставшийся урон]
!!en:;
** end
(This post was last modified: 04.07.2019 00:48 by Igor.)