1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Плагин [MECH/FUN] ReActions - Что? Тогда? Иначе! [BukkitDev]

Тема в разделе "Релизы плагинов", создана пользователем fromgate, 16 июл 2013.

  1. Sanya007vuch

    Sanya007vuch Активный участник Пользователь

    Баллы:
    68
    Джентельмены, хелпаните в вопросике
    Создаю команды, суть её: вывести сообщение при наличии определенного значения в ячейке. Мне надо, чтоб было значение 2 или больше.
    Код:
    Код:
      t:
        override: true
        regex: true
        command: t1
        flags:
        - SQL_CHECK=query:{SELECT value FROM vote WHERE name='%player_name%';} value:2 //проверяем наличие значения в ячейке
        actions:
        - message=&1Success.
        - SQL_UPDATE=query:{UPDATE vote set value=value-2 where name='%player_name%';} //отнимаем необходимое значение с ячейки
        reactions:
        - message=&cFailed.
    Как работает механизм:
    При строгом значении 2 - срабатывает. При остальных - нет. Надо чтоб срабатывало при значении 2 и больше. Как правильно задать флаг ?
    Да!
    У Лёши видел ту же проблему с таймером, что и у меня! За 1 секунду таймер срабатывает 10 раз!
     
  2. Автор темы
    fromgate

    fromgate Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Читайте предыдущую страницу. Вчера совместными усилиями выявили причину. Перекачайте дев.билд (там на самом деле файл, который я залью уже в виде релиза 0.9.9) - там исправлено.
     
  3. Sanya007vuch

    Sanya007vuch Активный участник Пользователь

    Баллы:
    68
    Гут, спасибо.
    А с запросом чем-нибудь поможешь?
     
  4. rukaban96

    rukaban96 Активный участник Пользователь

    Баллы:
    76
    Можно ли в активаторе сообщения в шаблон прописать несколько слов через пробел , у меня не работает такая комбинация или быть может ковычки нужны...???
    @@fromgate
    Предложение
    1)Сделать для флагов задержку , (на подобии ACTION_DELAYED)
    2)Возможность вставки действий,флагов между уже существующими (к примеру между 1 и 2 )(из игры)
     
  5. Автор темы
    fromgate

    fromgate Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Вы лучше покажите код активатора и объясните что хотите сделать.


    1. Как может флаг быть "отложенным". Мы же не будем завешивать майнкрафт чтобы дождаться когда его нужно проверить. Если нужно проверить флаг через какое-то время и принять решение что выполнять - тогда надо просто выполнять активатор EXEC с задержкой и там всё проверять.
    2. Вообще не хотелось бы усложнять конструкцию. Но вообще я уже думал сделать как-то действие FLAG с параметрами flag: action: reaction: Посмотрим.
    Ну тут вариант два. Записывать результат запроса в переменную и потом сравнивать её.
    Или использовать SQL_RESULT , но проверку значения поля (больше или равно 2) сделать уже в самом запросе.
     
  6. Sanya007vuch

    Sanya007vuch Активный участник Пользователь

    Баллы:
    68
    Чёт не соображаю. Можешь привести кусок кода?
     
  7. Lyosha12

    Lyosha12 Активный участник Пользователь

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    @fromgate, как можно очистить инвентарь вышедшего из игры игрока?
    @fromgate, при увеличении несуществующей переменной хотелось бы видеть отсчёт от нуля, я не единицы.
    @fromgate, нужен плейсхолдер, содержащий IP игрока.
    @fromgate, можно выполнить EXEC в одном тике с действиями, которые его запускают? Получается, что телепортацию к игроку в запретной зоне отменить нельзя. Можно детектить это комбинированное событие и откатывать позицию телепортирующегося, но сам факт телепорта иногда неприемлем.
    @fromgate, при выполнении этого момента игра немного подлагивает. Сервер или клиент - определить сложно.
    Код:
    # Запуск игроков на ивент.
      RF-LIMITED-Set-Time-To-Start:
        flags:
        - var_compare=id:RF-LIMITED-Time-To-Start value:0
        actions:
        - var_set=id:RF-Amount-Player-In-Game value:0
        - var_set=id:RF-LIMITED-Amount-Places-In-Queue value:0
        - var_set=id:RF-LIMITED-Time-To-Start value:61
        - sign_set_line=loc:world_the_end,1184.0,129.0,1145.0,0.0,0.0 line1:{Недостаточно}
        - sign_set_line=loc:world_the_end,1184.0,129.0,1145.0,0.0,0.0 line2:{игроков для}
        - sign_set_line=loc:world_the_end,1184.0,129.0,1145.0,0.0,0.0 line3:{начала игры!}
        - sign_set_line=loc:world_the_end,1184.0,129.0,1145.0,0.0,0.0 line4:{Минимум 2!}
        - var_set=id:RF-LIMITED-Time-Out-To-Jump-From-Start value:16
        - delay=id:RF-LIMITED-Delay-Reset-Time-Out-No-Players time:2s
        - execute=activator:RF-LIMITED-PreLaunch-Procedures-Set-Count-Wins
        - execute=activator:RF-LIMITED-PreLaunch-Procedures region:world_the_end.rf-pvp-deny
        - cmd_console=rg f -w world_the_end rf-game-area pvp deny
        - WAIT=100ms
        - message=&7[&aRF&7] &aИгра началась! До включения PvP 10 секунд! region:world_the_end.rf
        - WAIT=10s
        - execute=activator:RF-LIMITED-In-Game-Time-Out-5
        reactions: []
    # Установка счёта побед, если его не было.
      RF-LIMITED-PreLaunch-Procedures-Set-Count-Wins:
        flags:
        - '!var_player_exist=id:RF-LIMITED-Count-Wins'
        - var_player_compare=id:RF-LIMITED-Space-In-Queue value:Occupied
        actions:
        - var_player_set=id:RF-LIMITED-Count-Wins value:0
        reactions: []
    
      RF-LIMITED-PreLaunch-Procedures:
        flags:
        - var_player_compare=id:RF-LIMITED-Space-In-Queue value:Occupied
        actions:
        - var_player_set=id:RF-LIMITED-Space-In-Queue value:Not-Occupied
        - var_player_set=id:RF-LIMITED-In-Game value:1
        - var_set=id:RF-LIMITED-During value:1
        - var_inc=id:RF-Amount-Player-In-Game
        - var_player_set=id:RF-Items-Inventory-0 value:{%PLAYER_INV:0%}
        - var_player_set=id:RF-Items-Inventory-1 value:{%PLAYER_INV:1%}
        - var_player_set=id:RF-Items-Inventory-2 value:{%PLAYER_INV:2%}
        - var_player_set=id:RF-Items-Inventory-3 value:{%PLAYER_INV:3%}
        - var_player_set=id:RF-Items-Inventory-4 value:{%PLAYER_INV:4%}
        - var_player_set=id:RF-Items-Inventory-5 value:{%PLAYER_INV:5%}
        - var_player_set=id:RF-Items-Inventory-6 value:{%PLAYER_INV:6%}
        - var_player_set=id:RF-Items-Inventory-7 value:{%PLAYER_INV:7%}
        - var_player_set=id:RF-Items-Inventory-8 value:{%PLAYER_INV:8%}
        - var_player_set=id:RF-Items-Inventory-9 value:{%PLAYER_INV:9%}
        - var_player_set=id:RF-Items-Inventory-10 value:{%PLAYER_INV:10%}
        - var_player_set=id:RF-Items-Inventory-11 value:{%PLAYER_INV:11%}
        - var_player_set=id:RF-Items-Inventory-12 value:{%PLAYER_INV:12%}
        - var_player_set=id:RF-Items-Inventory-13 value:{%PLAYER_INV:13%}
        - var_player_set=id:RF-Items-Inventory-14 value:{%PLAYER_INV:14%}
        - var_player_set=id:RF-Items-Inventory-15 value:{%PLAYER_INV:15%}
        - var_player_set=id:RF-Items-Inventory-16 value:{%PLAYER_INV:16%}
        - var_player_set=id:RF-Items-Inventory-17 value:{%PLAYER_INV:17%}
        - var_player_set=id:RF-Items-Inventory-18 value:{%PLAYER_INV:18%}
        - var_player_set=id:RF-Items-Inventory-19 value:{%PLAYER_INV:19%}
        - var_player_set=id:RF-Items-Inventory-20 value:{%PLAYER_INV:20%}
        - var_player_set=id:RF-Items-Inventory-21 value:{%PLAYER_INV:21%}
        - var_player_set=id:RF-Items-Inventory-22 value:{%PLAYER_INV:22%}
        - var_player_set=id:RF-Items-Inventory-23 value:{%PLAYER_INV:23%}
        - var_player_set=id:RF-Items-Inventory-24 value:{%PLAYER_INV:24%}
        - var_player_set=id:RF-Items-Inventory-25 value:{%PLAYER_INV:25%}
        - var_player_set=id:RF-Items-Inventory-26 value:{%PLAYER_INV:26%}
        - var_player_set=id:RF-Items-Inventory-27 value:{%PLAYER_INV:27%}
        - var_player_set=id:RF-Items-Inventory-28 value:{%PLAYER_INV:28%}
        - var_player_set=id:RF-Items-Inventory-29 value:{%PLAYER_INV:29%}
        - var_player_set=id:RF-Items-Inventory-30 value:{%PLAYER_INV:30%}
        - var_player_set=id:RF-Items-Inventory-31 value:{%PLAYER_INV:31%}
        - var_player_set=id:RF-Items-Inventory-32 value:{%PLAYER_INV:32%}
        - var_player_set=id:RF-Items-Inventory-33 value:{%PLAYER_INV:33%}
        - var_player_set=id:RF-Items-Inventory-34 value:{%PLAYER_INV:34%}
        - var_player_set=id:RF-Items-Inventory-35 value:{%PLAYER_INV:35%}
        - var_player_set=id:RF-Items-Inventory-36 value:{%PLAYER_INV:helmet%}
        - var_player_set=id:RF-Items-Inventory-37 value:{%PLAYER_INV:chestplate%}
        - var_player_set=id:RF-Items-Inventory-38 value:{%PLAYER_INV:leggings%}
        - var_player_set=id:RF-Items-Inventory-39 value:{%PLAYER_INV:boots%}
        - cmd_console=ci %player% **
        - potion_clear=all
        - heal=player:%player%
        - WAIT=50ms
        - TP=loc:RF-Spawn-Loc-%random:1-4% radius:2
        reactions: []
    

    @fromgate, будет параметр для BLOCK_SET, который позволяет устанавливать содержащие инвентарь блоки уже с уже заполненными ячейками?
    @fromgate, в BLOCK_SET не поддерживается block:0
    @fromgate, когда устанавливается блок, он не обновляет окружающие. Сделайте параметр для выбора между этими двумя режимами (оба нужны).
     
    Последнее редактирование: 28 июл 2015
  8. rukaban96

    rukaban96 Активный участник Пользователь

    Баллы:
    76
    Как добавить в активатор в маску 2 слова?
    Когда я прописываю в маску 2 слова то в активатор заноситься только 2ое слово.
    ПРОПИСЫВАЛ MASK:Region saved

    region_claim1:
    mask: saved
    type: START
    source: ALL
    actions:
    - message=1
     
  9. Lyosha12

    Lyosha12 Активный участник Пользователь

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    @fromgate, а есть плейсхолдер, который содержит строку до текста сообщения, которое написал игрок? То есть: символ до начала сообщения (если есть) ник, префикс, клан и другие?
    (A|B)
    @fromgate, можно устанавливать время, которое требуется на сбор предметов после смерти моба?
     
    Последнее редактирование: 28 июл 2015
  10. rukaban96

    rukaban96 Активный участник Пользователь

    Баллы:
    76
    Подскажите почему может не работать
    После обновления до последней версии
    1.5.2
    COMMAND:
    '1':
    override: true
    regex: false
    command: '1'
    actions:
    - message=1
     
  11. Lyosha12

    Lyosha12 Активный участник Пользователь

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    COMMAND:
    '1':?
     
  12. rukaban96

    rukaban96 Активный участник Пользователь

    Баллы:
    76
    С другим именем тоже не работает , при этом активатор блокирует сообщение от сервера что такой команды нету
     
  13. Lyosha12

    Lyosha12 Активный участник Пользователь

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    Одинаковые имена? У меня подобных проблем нет.
     
  14. rukaban96

    rukaban96 Активный участник Пользователь

    Баллы:
    76
    Короче действий до 10 проверил ни одно не работает , при этом в файл все добавляется нормально, удалил все плагины тоже самое...на разных активаторах
    У кого 1.5.2 и у кого нормально?
     
  15. Автор темы
    fromgate

    fromgate Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Надо попробовать через ITEM_SLOT в PLAYER_RESPAWN. Сам не проверял.

    Можно будет добавть параметр - начальное значение.

    Ммм... и что с ним потом делать? ;) Потом же потребуются действия для блокировки по IP или определению страны ;)

    Даже если выполнять в одном тике - отменить будет нельзя. Отменить можно только "родительское" событие. А у EXEC - его нет.

    Пока идей нет. Будет время - попробую погонять.

    В смысле полный сундук и т.п.? Я подумаю.

    Зато поддерживает block:AIR и block:{type:AIR}

    Он есть и в block_set и в block_fill
    См. параметр physics тут: http://reactions.fromgate.ru/block_set.htm
    Странно. Основной код по части выполния команд не менялся очень давно. В последних изменения происходит регистрация команды (которая по факту пуста) - всё равно происходит обработка события ввода команды.

    В логе при старте про команды что-то пишет? (Они должны регистрироваться).
     
  16. Lyosha12

    Lyosha12 Активный участник Пользователь

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    Прежде всего, блокировать твинков на специализированных зонах. Не думаю, что с одного компьютера можно выходить в интернет под двумя IP. Во-вторых, стала бы возможна реферальная система.
    Не спорю. Ну, если не считаете нужным, то не добавляйте :)
    Давно я туда не заглядывал. Спасибо :D
     
  17. rukaban96

    rukaban96 Активный участник Пользователь

    Баллы:
    76
    Такое сообщение нашел
    SEVERE Plugin ReActions v0.9.9 has failed to register events for class me.fromgate.reactions.RAListener because org/bukkit/event/inventory/InventoryInteractEvent does not exist.
     
  18. Автор темы
    fromgate

    fromgate Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Прикольно.
    @Lyosha12
    А у тебя ж тоже вроде 1.5.2? Такого нет?
     
  19. Lyosha12

    Lyosha12 Активный участник Пользователь

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    С командами полный порядок.
     
  20. Rider3217

    Rider3217 Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    Planet0111
    • Towny - можно перемещать игроков между городами, проверять принадлежность игрока к городу (Внимание! Towny расположен на отдельном сайте, что не пирветствуется командой bukkit. Используйте на свой страх и риск).
      Многоуважаемый @fromgate поправьте пожалуйста.
     

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