1. Гость, мы просим Вас ознакомиться с Правилами Форума и Отказом от ответственности!

Неизвестные значения: триггеры

Тема в разделе 'PW Документация', создана пользователем loko9988, 26 мар 2013.

  1. TopicStarter Overlay

    loko9988 B L A C K    L I S T Пользователи

    Сообщения:
    758
    Лайки:
    239
    Пол:
    Мужской
    Репутация:
    1
    Скрины буду прикладывать после написания гайда.

    Тема как включать или выключать триггер в айполиси.

    Код:
    struct ai_op_active_spawner
    {
        int unk1;
        byte unk2;
        short unk3;
        byte unk4;
    };
    Значение в сервере прописано в виде "int, int" , на самом деле "int,byte,short,byte".
    1 Номер триггера.
    2 Активация или Дезактивация триггера.
    3 Ссылка на внутренний номер в закладках. (китай софт)
    4 Пуст
    [​IMG]
    Видим что триггер номер 1108 выключается.

    Как выглядит в народной программе.
    [​IMG]

    Далее показано как включать или выключать.

    [​IMG]
    [​IMG]

    Особо вдаваться в подробности не стал.
    Joslian, mr.x, New-X и 2 другим нравится это.
  2. New-X Пользователи

    Сообщения:
    401
    Лайки:
    22
    Пол:
    Мужской
    Репутация:
    1
    Можешь поподробнее про флаги рассказать?
  3. OZzzy Пользователи

    Сообщения:
    40
    Лайки:
    2
    Пол:
    Женский
    Репутация:
    0
    Команда:
    evilfighters
    что означает параметр контролера [0] NPC Generator(1108, 3946753[stop])?
  4. Sem Команда форума Модератор Old school Пользователи

    Сообщения:
    579
    Лайки:
    176
    Пол:
    Мужской
    Репутация:
    5
    Страна:
    Russian Federation Russian Federation
    //"int,byte,short,byte"
    триггер будет отключен
  5. Sem Команда форума Модератор Old school Пользователи

    Сообщения:
    579
    Лайки:
    176
    Пол:
    Мужской
    Репутация:
    5
    Страна:
    Russian Federation Russian Federation
    1. -
    2. -
    3. - Третий флаг указывает что оно будет выполнятся только в бою (c) Beast
  6. Sem Команда форума Модератор Old school Пользователи

    Сообщения:
    579
    Лайки:
    176
    Пол:
    Мужской
    Репутация:
    5
    Страна:
    Russian Federation Russian Federation
    Добавка. ( пост выше удалить, если можно то впихунть это в первый пост, думаю локо не против )
    Флаги и их значения :
    1. - Первый указывает что триггер включен;
    2. - Второй указывает что он будет выполнятся только один раз при активации AI;
    3. - Третий флаг указывает что оно будет выполнятся только в бою.
    (с)Beast
  7. TopicStarter Overlay

    loko9988 B L A C K    L I S T Пользователи

    Сообщения:
    758
    Лайки:
    239
    Пол:
    Мужской
    Репутация:
    1
    Сем, можно показать это, так как закономерности я не находил.
    Ибо показывать как идёт связка мне не охото, а вот твоё описание от Андрея меня меня удивило немного.
  8. OZzzy Пользователи

    Сообщения:
    40
    Лайки:
    2
    Пол:
    Женский
    Репутация:
    0
    Команда:
    evilfighters
    в чем тогда разница: 3946753[stop] и 1[stop]
  9. Sem Команда форума Модератор Old school Пользователи

    Сообщения:
    579
    Лайки:
    176
    Пол:
    Мужской
    Репутация:
    5
    Страна:
    Russian Federation Russian Federation
    Кстати, что бы знали, добавьте тоже в пост локо, обязательно при включение и выключении триггера, не вводите его ид, вводите ид в ГМ панели.
    Как нибудь позже поделюсь, как сделать что бы моб орал в чат (лол,мир и т.д.)
  10. gouranga Эксперт Программист Пользователи Open Source Contributor White List

    Сообщения:
    67
    Лайки:
    142
    Пол:
    Мужской
    Репутация:
    0
    Страна:
    Netherlands Netherlands
    Все просто, 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), как показывает практика, могут попасть любые байты.

    В общем, должно выглядеть это как-то так:
    [​IMG]
    Joslian, SolomonKane, Тыщ и 2 другим нравится это.
  11. TopicStarter Overlay

    loko9988 B L A C K    L I S T Пользователи

    Сообщения:
    758
    Лайки:
    239
    Пол:
    Мужской
    Репутация:
    1
    Ну вот )
    1 вопросом стало меньше )
    gouranga нравится это.
Черновик сохранён Черновик удалён

Поделиться этой страницей