Так почему, почему же ты не прочитал команды этого рисивера?! Вот же английским языком написано:
Quote:T$; Set/check/get type of object (see Format OB)
U$; Set/check/get subtype of object (see Format OB)
А что значат тип и подтип объекта-существа я уже писал. Проверяешь, стоит ли там объектом твоё существо. Вот тебе пример, например:
(22.08.2015 20:55)Картограф Wrote: [ -> ]Мне нужно, чтобы при ликвидации отряда монстров срабатывало событие. Проинструктируете меня, будьте так любезны.
Триггер !?BA53; (срабатывает после боя) вполне подойдет.
А дальше проверяешь через !!OB наличие монстра в координатах, как указано выше. А чтобы не срабатывало каждый раз при окончании боя после убийства, подвяжи какой-нить флаг.
Кстати, если пишешь что-то для конкретной карты, желательно пользоваться рекомендованными диапазонами флагов, переменных, функций выделенных как раз для картоделов. В data/s/usage538.txt эти диапазоны выделены "*". Так ты не пересечешься с другими скриптами.
Нет, Algor, существо пропадает только перед пост-триггером посещения объекта. Так что или проверять, что именно в этом месте бой именно с нейтралами не оставил в живых ни одного нейтрала, и устанавливать флаг, или просто проверить наличие существа по координатам в коде выдачи награды.
Ну тогда в пост-триггере и проверять:
Если герой устроил боевую ничью каким-нить армегеддоном, и награждать посмертно его не планируется, нужно еще и живость героя после посещения проверить.
И можно даже без флага обойтись, вероятность появления на этом квадрате аналогичного монстряка практически нулевая. Ну или добавить, для очистки совести.
Примечательно, что тип объекта (54) при уничтожении монстра обнуляется, а подтип (тип монстра) - нет.
Спасибо, заставить работать функцию замены снаряда стрелку получилось. Вопрос по условиям, где можно почитать как ими пользоваться (!!if-!!el-!!en), в справке по ЕРМ !!IF - менеджер флагов и сообщений, в справочнике по Эре тоже не нашел в новых командах, интересует как записать в !!if выражение "или".
Почитать можно в справочние, идущем в комплекте с Эрой: Help\Erm Help 2.81\index.html
Раздел неочевидно называется I/E, по очевидным причинам.
Ребята, я конечно, понимаю, что вы профи и друг друга понимаете с полуслова - а мне вот тяжеловато. Я долго возился с вашими скриптами, пытался разобрать, ну, вот что вышло:
!!OB4/49/0:T?y1 U?y2;
!!IF|y1<>54/y2<>95:M^Убийца, умри!^;
!!HE-1|y1<>54/y2<>95:K;
!$OB54/95&v998=4/v999=49/v1000=0;
!!OB998:T?y1;
!!IF&y1<>54:M^Монстр побежден^;
!!IF&y1=54:M^Монстр НЕ побежден^;
Давайте теперь спокойно, не спеша, по пунктам разберем, что у меня не так.
Картограф, а что выше строчки !!OB4/49/0:T?y1 U?y2;
?
там же есть у вас код триггера и всё такое?
Да, вы правы! Случайно упустил! ZVSE - ну, конечно! Вот это называется заработался!
я не по zvse
я про !?OB54;
Не понял, а что с !?OB54; не так? Я проверил, вроде бы работает...
Мой код такой, какой я вывесил выше.
Картограф, я потому и спросил... ГДЕ у вас триггер в коде?
без него не будет работать ваш последующий код
!?OB54; триггер