Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

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

Возник такой вопрос: как ограничить пользователю доступ к тому или иному виду действий?
Т.е в плагине по дефолту стоит запрет на действия с pex user group, т.е группу никак не сменить, но как поставить такой запрет, например на pex preffix, или совсем другой вид действия: доступ к CMI, бан по айпи и т.д

Активатор COMMAND:
Действие CANCEL_EVENT=TRUE.
 
Есть желание сделать такую игру в майнкрафте, сделать несколько таких карт, рекорды по минимальным передвижениям. Как вам? Нужно?
screen-14.jpg
house-paint-23044-12.jpg
house-paint-23044-10.jpg
 
Не совсем догоняю, как реализовать.
Можешь написать пример для запрета, допустим, бана по ip.
Т.е мне нужно создать белый лист команд, которые реакт откажется выполнять и будет писать, что доступа нет.
 
Не совсем догоняю, как реализовать.
Можешь написать пример для запрета, допустим, бана по ip.
Т.е мне нужно создать белый лист команд, которые реакт откажется выполнять и будет писать, что доступа нет.
а что мешает в пермишенах запретить эти команды, зачем реакшенс для этого?
 
Как сделать так, чтобы игроки могли вводить команду /tpahere раз в 20 минут, но чтобы у админов с правом этого ограничения не было
Код:
COMMAND:
  tpahere:
    regex: false
    override: false
    command: tpahere
    flags:
    - DELAY_PLAYER=id:tpahere set-time:20m
    actions:
    - cancel_event=true
    - cmd=tpahere %arg1%
    reactions:
    - cancel_event=true
    - msg=&7Команда &a/tpahere &7доступна раз в 20 минут.
    - 'msg=&7Осталось: &a%delay-left-mm%м. %delay-left-ss%с.'
?
 
Как сделать так, чтобы игроки могли вводить команду /tpahere раз в 20 минут, но чтобы у админов с правом этого ограничения не было
Код:
COMMAND:
  tpahere:
    regex: false
    override: false
    command: tpahere
    flags:
    - DELAY_PLAYER=id:tpahere set-time:20m
    actions:
    - cancel_event=true
    - cmd=tpahere %arg1%
    reactions:
    - cancel_event=true
    - msg=&7Команда &a/tpahere &7доступна раз в 20 минут.
    - 'msg=&7Осталось: &a%delay-left-mm%м. %delay-left-ss%с.'
?
В первом активаторе command проверяй есть ли у человека право. Если есть, телепортируй. Если нет, то в реакции запускай активатор exec с флагами и действиями, как у тебя.
 
Не особо шарю, но, возможно ли сделать скрипт, который запрещает любому игроку, без определенного права, любое взаимодействие с указанным ником относительно любых команд?
Т.е. если у пользователя нет такого пермишена, то он не может использовать команду относительно указанного никнейма. К примеру, банально: /seen <ник>, /whois< ник>. Если команда используется относительно определенного ника, то, при отсутствии пермишена - посылать в далекие дали. И так для любых команд.

А если еще проще, то, запретить всем подряд проверять командами определенные ники.
 
Нужна хелпа.
Есть рычаг, нужно выполнять действия если игрок стоит в определенном месте(3x3 пространство), и делать другие действия,если он там не стоит. Не понимаю как мне проверить нахождение игрока.
Вообще тут можно сделать несколькими способами, так что если не сложно, то покидайте мне легкий примеров как проверить 1)стоит ли игрок в регионе, 2)какой блок под ногами игрока(тип блока), 3) и если такое возможно, то проверить находится ли игрок в определенном пространстве(имею в виду 1 локация - нижний угол, 2 локация - верхний угол).
И если кто-то знает какое-то место с примерами использования плагина !с кодом!, то я буду рад если вы поделитесь :3 А то я сколько искал, не нашел никаких примеров кода(кроме тех, что на оф сайте)

Код:
LEVER:
  levername:
    world: world
    x: 4
    y: 165
    z: 88
    lever-state: ANY
    actions:
    - CANCEL_EVENT=true
    - wait=time:500ms
А дальше мне нужно проверить, находится ли игрок в определенной зоне/проверить блок под его ногами.

Спасибо всем, кто поможет.
 
а что мешает в пермишенах запретить эти команды, зачем реакшенс для этого?
Ну смотри, реакт выдает права оператора на момент выполнения команды, и таким образом владельцы реакта просто так могут себе права добавлять.
А мне нужно сделать так, чтобы им писал запрет на это.
 
как правильно задать условие в IF_ELSE? мне нужно указать, если у игрока есть кирка, то ему писало остаток времени, а если нету, то соответствующие сообщение.
Код:
  холмыалм:
    sign-mask:
    - Собрать
    - Алмаз
    - Киркой
    - ''
    click-type: ANY
    flags:
    - ITEM=type:diamond_pickaxe
    - DELAY=id:alm1 [set-time:1h]
    actions:
    - ITEM_GIVE=type:diamond amount:2
    - DELAY=id:alm1 time:1h
    reactions:
    - MESSAGE=%ifelsedebug% %ifelseresult%
    - IF_ELSE=if:{'%item_flag%=='diamond_pickaxe'} then:run:actions:{action1:{message=&9[&6&lKitPvP&9]
      &r&3&lРано ещё! &3&lОсталось %delay-left%...}} else:run:actions:{action1:{message=&4&lУ вас нет кирки в руках!}}
И как аналогично сделать с проверкой перма? Вот моё ущербное решение этой проблемы:
Код:
REGION:
  donat_vip:
    region: map.global
    flags:
    - PERM=nanodragon.kitpvp.group.vip
    actions:
    - VAR_PLAYER_SET=id:donatgruppa value:vip player:%player%
  donat_vip1:
    region: kitpvp.spawn
    flags:
    - PERM=nanodragon.kitpvp.group.vip
    actions:
    - VAR_PLAYER_SET=id:donatgruppa value:vip player:%player%
  donat_premium:
    region: map.global
    flags:
    - PERM=nanodragon.kitpvp.group.premium
    actions:
    - VAR_PLAYER_SET=id:donatgruppa value:premium player:%player%
  donat_premium1:
    region: kitpvp.spawn
    flags:
    - PERM=nanodragon.kitpvp.group.premium
    actions:
    - VAR_PLAYER_SET=id:donatgruppa value:premium player:%player%
  donat_delux:
    region: map.global
    flags:
    - PERM=nanodragon.kitpvp.group.delux
    actions:
    - VAR_PLAYER_SET=id:donatgruppa value:delux player:%player%
  donat_delux1:
    region: kitpvp.spawn
    flags:
    - PERM=nanodragon.kitpvp.group.delux
    actions:
    - VAR_PLAYER_SET=id:donatgruppa value:delux player:%player%
  donat_none:
    region: map.global
    flags:
    - PERM=nanodragon.kitpvp.group.player
    actions:
    - VAR_PLAYER_SET=id:donatgruppa value:player player:%player%
  donat_none1:
    region: kitpvp.spawn
    flags:
    - PERM=nanodragon.kitpvp.group.player
    actions:
    - VAR_PLAYER_SET=id:donatgruppa value:player player:%player%
EXEC:
  player_bonus:
    flags:
    - PERM=nanodragon.kitpvp.bonus.default
    - DELAY_PLAYER=id:player_bonus [set-time:30m]
    actions:
    - MONEY_GIVE=500
    - DELAY_PLAYER=id:player_bonus time:30m
    reactions:
    - IF_ELSE=if:{'%varp:donatgruppa%'=='player'} then:run:actions:{action1:{message=&9[&6&lKitPvP&9]
      &r&3&lРано ещё! &3&lОсталось %delay-left%...}} else:run:actions:{action1:{message=&4&lНет
      прав!}}
  vip_bonus:
    flags:
    - PERM=nanodragon.kitpvp.bonus.vip
    - DELAY_PLAYER=id:vip_bonus [set-time:30m]
    actions:
    - MONEY_GIVE=1000
    - DELAY_PLAYER=id:vip_bonus time:30m
    reactions:
    - IF_ELSE=if:{'%varp:donatgruppa%'=='vip'} then:run:actions:{action1:{message=&9[&6&lKitPvP&9]
      &r&3&lРано ещё! &3&lОсталось %delay-left%...}} else:run:actions:{action1:{message=&4&lНет
      прав!}}
  premium_bonus:
    flags:
    - PERM=nanodragon.kitpvp.bonus.premium
    - DELAY_PLAYER=id:premium_bonus [set-time:30m]
    actions:
    - MONEY_GIVE=1500
    - DELAY_PLAYER=id:premium_bonus time:30m
    reactions:
    - IF_ELSE=if:{'%varp:donatgruppa%'=='premium'} then:run:actions:{action1:{message=&9[&6&lKitPvP&9]
      &r&3&lРано ещё! &3&lОсталось %delay-left%...}} else:run:actions:{action1:{message=&4&lНет
      прав!}}
  delux_bonus:
    flags:
    - PERM=nanodragon.kitpvp.bonus.delux
    - DELAY_PLAYER=id:delux_bonus [set-time:30m]
    actions:
    - MONEY_GIVE=2200
    - DELAY_PLAYER=id:delux_bonus time:30m
    reactions:
    - IF_ELSE=if:{'%varp:donatgruppa%'=='delux'} then:run:actions:{action1:{message=&9[&6&lKitPvP&9]
      &r&3&lРано ещё! &3&lОсталось %delay-left%...}} else:run:actions:{action1:{message=&4&lНет
      прав!}}
 
Возник такой вопрос: как ограничить пользователю доступ к тому или иному виду действий?
Т.е в плагине по дефолту стоит запрет на действия с pex user group, т.е группу никак не сменить, но как поставить такой запрет, например на pex preffix, или совсем другой вид действия: доступ к CMI, бан по айпи и т.д
/ra add command banip banip
/ra add banip a cancel_event true
Это будет запрет на команду /banip полностью всем игрокам
 
Попытался обновить до 1.13.2. Дропбокс.
Обратной совместимости(1.12 и ниже, WG6/WE6 и ниже) нет. Циферные id также не работают - отныне материалы. Не для серверов в продакшен, ибо предполагаются проблемы с WG, WE, работой цветных блоков и предметов, да и в принципе что угодно может пойти не по плану - нужны тесты, которые мне проблематично проводить на ноутбуке.
Если кто заинтересован - попробуйте поколдовать, а в случае проблем, напишите баг-репорт.
 
Попытался обновить до 1.13.2. Дропбокс.
Последние билды теперь на CircleCI. Схема такая же, как и раньше - регистрируемся или логинимся, находим последний успешный билд, клацаем на "Artifacts".
Пока просто пытаюсь подмять код под себя, выпилить весь обратно-совместимый функционал <1.13, по максимуму убрать устаревшие методы.
Думаю, когда/если @fromgate вернется за плагин, мой форк загнется за ненадобностью, но пока - пущай будет.
 
Добрый день, кто сможет помочь?)
Нужно сделать так, что бы когда игрок открывал эндер сундук, прописывалась команда %ecp open%, с задержкой при следующем открытии в 5 секунд
 
Добрый день, кто сможет помочь?)
Нужно сделать так, что бы когда игрок открывал эндер сундук, прописывалась команда %ecp open%, с задержкой при следующем открытии в 5 секунд
Немного непонятно. Кулдаун на открытие?
Код:
BLOCK_CLICK:
  enderOpen:
    block-type: ENDER_CHEST
    click-type: RIGHT
    flags:
    - delay_player=id:enderOpen set-time:5m
    actions:
    - cancel_event=true
    - cmd=ecp open
    reactions:
    - cancel_event=true
    - message=&cПодождите 5 секунд.
 
Здарова всем! Давненько небыл в теме, выпал из майнкрафта на два года вобше... Что там с лучшим плагином в мире сейчас происходит? Будет обновление до актуальных версий ?
Макс, сынок, ты ещё жив? А fromgate ??
 
Здарова всем! Давненько небыл в теме, выпал из майнкрафта на два года вобше... Что там с лучшим плагином в мире сейчас происходит? Будет обновление до актуальных версий ?
Макс, сынок, ты ещё жив? А fromgate ??
Fromgate занимается своими делами, и РеА займется, думаю, нескоро. Макс давно пропал с радаров.
Выше есть ссылка на мой форк под 1.13.2, но из-за недостатка людей/тестеров я не знаю что мне фиксить, хоть там и явно есть что фиксить.
 
Fromgate занимается своими делами, и РеА займется, думаю, нескоро. Макс давно пропал с радаров.
Выше есть ссылка на мой форк под 1.13.2, но из-за недостатка людей/тестеров я не знаю что мне фиксить, хоть там и явно есть что фиксить.
Версии под 1.14.3 ожидать не стоит?((
 

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

Назад
Верх