блин. я помню что писал скрипт существа, забирающего свойства других. и использовал там !?BG1, потому что по !?BG0 действие было нулевым. может это вы чето нахимичили в 3.59?
gamecreator, ничего мы не химичили. Я вообще под 3.59 ещё скрипты не пишу - пока и возможностей 3.58 хватает,
!!UN:C и в 3.58 есть. Вот как LUA просмотрю как следует - так и пересяду на 3.59-платформу

Подскажите,пожалуйста!!!
"Как можно узнать, что битва происходит в магическом гарнизоне?"
Желательно не громозский способ.. например через UN:C
Bes, а как насчёт такого варианта - попробовать скастануть в пустую позицию поля битвы (предварительно проверим её с помощью
!!BU:O) один зыбучий песок с помощью
!!BH:Q или
!!BM:Q, и после этого - тут же проверить эту клетку на наличие песка с помощью всё того же
!!BU:O ? (и удалить песок, если он там ещё есть, естес-но

)
идея мне понравилась.. необычная,интересная..

но не подходит:
1. а если будет не гарнизон запретом,а антимагический арт? лишние условия нужно прописывать...
спасибо за идею
Добавлено:
sergroj предложил способ найти адрес для UN:C..
Quote:с АртМани точно можно найти
GrayFace (02:54:26 5/09/2009)
это должно быть внутри менеджера битвы - его адрес лежит в 6919200
GrayFace (02:54:51 5/09/2009)
найди простое значение
GrayFace (02:55:59 5/09/2009)
потом просто добавь любое 4-байтовое значение в таблицу и замени его адрес на 699420 (это уже в шестнадцатиричной)
GrayFace (02:56:57 5/09/2009)
потом из адреса простого значения, которое ты нашел, вычти значение по второму адресу
я не сообразил как это.. может кто поможет по такому алгоритму?

(я бездарь)
(31.08.2009 18:25)Bes Wrote: [ -> ]!!BA-10:H0/?y3; получит к примеру 56
Э-э-э... А есть команда BA-10? Может, НЕ-10?
Quote:Мой совет: не использовать триггеры вообще, сразу вызывать функции.
Проще всегда использовать лишь глобальные переменные.
Вчера натолкнулся на глюк: в !?BR не получилось задать значение z-переменной. Высер произошёл на таком коде:
Quote:!?BR|15/16; обнуление информации каждый раунд битвы
!!VRz1:S^^;
!!VRv2:S$ID DEF`S & DWELLINGS$+462; инфо о стеках
!!SN:E$CopyMemory$/0/42/$AdressZ1$/v2; скопировать нулевую информацию
Посмотрел через АртМани - произошло копирование не нулевой информации, а последнего значения z1, которое она фиг знает где и когда получила. Пришлось заменить код на такой:
Quote:!?BR|15/16; обнуление информации каждый раунд битвы
!!VRv3:S$ID ArtifactsMerchants$+224; - нулевая память после артефактов Торговцев
!!VRv2:S$ID DEF`S & DWELLINGS$+462; инфо о стеках
!!SN:E$CopyMemory$/0/42/v3/v2; скопировать нулевую информацию
Так вот вопрос: глюк в !?BR или в ЭРЕ?
Офигеть, вот это баг так баг. Оказывается, ERM совсем не умеет проверять строгие неравенства между дробными числами (то есть < или >). Спасают только нестрогие неравенства (<= или >=) - их ERM проверять умеет...
Я думал все баги уже известны
(05.09.2009 03:37)Bes Wrote: [ -> ]Подскажите,пожалуйста!!!
"Как можно узнать, что битва происходит в магическом гарнизоне?"
Желательно не громозский способ.. например через UN:C
эм... а такой метод чем не нра?
!?BA;
!!HE-10:P?y1/?y2/?y3;
!!OBy1/y2/y3:T?y4 U?y5;
!!IF&y4=33/y5=1:M^гарнизон антимагии^;
сэн-сэй,такой метод даёт тип и подтип ГЕРОЯ,а не гарнизона..
(насчёт BA-10 эт я перепутал,конечно же просто !!BA:H0/?y3)
(11.09.2009 14:47)Bes Wrote: [ -> ]сэн-сэй,такой метод даёт тип и подтип ГЕРОЯ,а не гарнизона..
(насчёт BA-10 эт я перепутал,конечно же просто !!BA:H0/?y3)
ты хоть пробовал? у меня все работает, и как положено возвращает гарнизон 33 антимагический 1
хм.. в том то и дело что ДА.

мне давал именно Героя

ладно,спасибо,я всётаки вынужден был писать цикл поиска нужного мне гарнизона,сверяя координаты
(как говорится,глумная голова и не такое сделает)
Добавлено:
правда я координаты брал через BA:P,а не через HE:P
Добавлено:
может есть разница? %)
Не так, Бес. Всё намного проще. Для проверки объекта идёт следующий псевдокод:
Quote:выключить ошибки
получить координаты героя
получить значение Х объекта У по этим координатам
включить ошибки
если была ошибка, то объета нет, иначе есть
Альтернатива: установка v2,v3,v4 координат героя, при этом v2 = x - 1; Затем одна команда поиска. Если координаты не равны геройским, значит гарнизон не здесь. Всё экранировать запретом ошибок.
дело в том,что на карте практически,очень редки такие гарнизоны,потому не вижу особой разнице в твоём варианте и в том,что я вынужден был реализовывать.. всё равно цикл проскочит очень быстро (UN:U33/1/-1/#)..
(если будет желание,я конечно пропишу твоим способом,а пока пусть как есть,прости)
ну можно вспомниить про скрипт "гарнизоны".. правда там тока обычные (
во всяком случае, я получал именно номер объхекта гарнизона, а не героя. 3.58ф без модулей и т.п.