Скрины буду прикладывать после написания гайда. Тема как включать или выключать триггер в айполиси. 代码: struct ai_op_active_spawner { int unk1; byte unk2; short unk3; byte unk4; }; Значение в сервере прописано в виде "int, int" , на самом деле "int,byte,short,byte". 1 Номер триггера. 2 Активация или Дезактивация триггера. 3 Ссылка на внутренний номер в закладках. (китай софт) 4 Пуст Видим что триггер номер 1108 выключается. Как выглядит в народной программе. Далее показано как включать или выключать. Особо вдаваться в подробности не стал.
Добавка. ( пост выше удалить, если можно то впихунть это в первый пост, думаю локо не против ) Флаги и их значения : 1. - Первый указывает что триггер включен; 2. - Второй указывает что он будет выполнятся только один раз при активации AI; 3. - Третий флаг указывает что оно будет выполнятся только в бою. (с)Beast
Сем, можно показать это, так как закономерности я не находил. Ибо показывать как идёт связка мне не охото, а вот твоё описание от Андрея меня меня удивило немного.
Кстати, что бы знали, добавьте тоже в пост локо, обязательно при включение и выключении триггера, не вводите его ид, вводите ид в ГМ панели. Как нибудь позже поделюсь, как сделать что бы моб орал в чат (лол,мир и т.д.)
Все просто, loko как всегда вам лапши на уши наложил.Вот это: 代码: struct ai_op_active_spawner { int unk1; byte unk2; short unk3; byte unk4; }; — не правильная структура. Правильная приблизительно выглядит так: 代码: struct active_spawner { int _ctrl_id; bool _is_active_spawner; }; Дело в том, что китайцы коряво обращаются с компилятором. И вместо того, чтобы указать 代码: #pragma pack (push, 1) глобально, они то указывают, то нет. Из-за этого, в одних местах bool 1 байт (там где стоит #pragma pack(push, 1)), в других 4 байта (по-умолчанию у gcc). Соответственно в оставшиеся байты (называются padding), как показывает практика, могут попасть любые байты. В общем, должно выглядеть это как-то так: