Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Помогите При заходе на регион выключался gm 1 и fly

Тема в разделе "Помощь", создана пользователем Pavelak, 8 авг 2016.

  1. Автор темы
    Pavelak

    Pavelak Ньюби

    Баллы:
    1
    Имя в Minecraft:
    Pavelak
    Нужно чтоб при заходе на регион pvp выключался у игроков fly или gm 1 смотря что у них есть,мб плагин есть какой версия [1.8-1.10.*]?? или уже флаг готовый???
     
  2. Хостинг MineCraft
    <
  3. scaumedes

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

    Баллы:
    66
    Имя в Minecraft:
    scaumedes
    NoFlyZone
     
  4. Ddeeeennn

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

    Баллы:
    63
    Имя в Minecraft:
    Blockslayer99
    WorldGuard:
    /rg flag [Region] pvp deny
    /rg flag [Region] game-mode survival
    Насчет fly, по идее должен выключиться автоматом после переключение gamemod'a на survival
     
  5. Dexel

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

    Баллы:
    76
    Skype:
    the_osirius
    Таким же вопросом задавался две недели назад.

    Делали PvP-арену, необходимо было, чтобы при заходе в зону PvP отключался /gm, /v, /fly и /god. /gm сделали легко - /rg f pvp game-mode. С флаем тоже разобрались: при переходе в другой игровой режим флай отключается автоматически. Поэтому мы сделали /rg f pvp game-mode adventure. Мы основывались на том, что если люди перейдут в /gm 0 и включат /fly перед входом на PvP-арену, /gm им переключался на adventure.

    Но возникала проблема: люди могли заранее войти не в /gm 0, а в /gm 2, в нём включить флай и пройти. Это нас и затрудняло + не решена проблема с /v и /god.

    Идея пришла неожиданно. У нас стоял плагин на выполнение команд при нажатии на табличку - ServerSigns ( https://dev.bukkit.org/bukkit-plugins/serversigns/ ). Мы закрыли вход на PvP-арену барьерами, а рядом поставили табличку, добавив на неё следующие команды:

    • /svs add <server> gm 2 <player> - переключает игровой режим нажавшего на табличку игрока на adventure от имени консоли
    • /svs add <server> fly <player> off - от имени консоли выключает нажавшему на табличку игроку флай (даже если он был выключен)
    • /svs add <server> god <player> off - от имени консоли отключает нажавшему на табличку игроку режим бога (даже если он был выключен)
    • /svs add <server> v <player> off - от имени консоли отключает нажавшему на табличку игроку режим невидимости (даже если он был выключен)
    • /svs add <server> tp <player> x y z - от имени консоли телепортирует игрока на координаты X, Y, Z (в нашем случае, на зону PvP).

    Естественно, сделали и табличку с выходом с PvP-арены:
    • /svs add <server> gm 0 <player> - от имени консоли переключает игровой режим нажавшего на табличку игрока на survival
    • /svs add <server> spawn <player> - от имени консоли телепортирует нажавшего на табличку игрока на спавн. От имени сервера - потому что мы отключили команду /spawn в регионе PvP, дабы если у игрока критическое кол-во жизней, он не вставлял по-быстрому в чат команду на телепорт на /spawn, /home (тоже отключено), /c home, /marry home и т.д.
    На регионе PvP же запретили такие команды, как:
    • /tpa
    • /fly
    • /sethome
    • /gm
    • /tpyes
    • /tpaccept
    • /home
    • /warp
    • /tp
    • /god
    • /gamemode
    • /call
    • /tpo
    Как-то так...
     
  6. MrBrikster

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

    Баллы:
    78
    Имя в Minecraft:
    MrBrikster
    У меня сделано проще, но костылём. Плагин отслеживает PlayerMoveEvent и EntityDamageEvent, если игрок в это время находится в регионе и если у него включен fly или gm 1, включает gm 0 и выключает флай.
     
  7. Dymeth

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

    Баллы:
    76
    Да это не костыль, а целая машина дьявола. Мой тебе совет - для проверок хотя бы используй шедулер, а не PlayerMoveEvent.
    P.S. Ради этого даже тему не жалко поднять...
     
  8. MrBrikster

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

    Баллы:
    78
    Имя в Minecraft:
    MrBrikster
    Лол) Ладно, переделаю. Но по таймингам нагрузки нет.
     
  9. Dymeth

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

    Баллы:
    76
    Ну, видимо и онлайна особо нет...
     
  10. xDark

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

    Баллы:
    96
    Skype:
    ailyashevich
    Имя в Minecraft:
    xDark
    PlayerToggleFlightEvent?
     
  11. CnoWes

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

    Баллы:
    78
    Имя в Minecraft:
    CnoWes
    в reaction такое невозможно сделать ?
     
  12. Dymeth

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

    Баллы:
    76
    Я думал об этом. Есть ещё всякие PlayerGameModeChangeEvent. Однако абсолютно всё контролировать событиями не выйдет, соответственно шедулер придётся использовать в любом случае. Ну тогда от PlayerToggleFlightEvent смысла вообще нет, получается.
     

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