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

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

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

  1. Acca

    Acca Новичок

    Баллы:
    18
    Имя в Minecraft:
    Acca
    Еще такой вопрос. Если я поставлю активатор выдачи еды с задержкой в 5 минут, то задержка будет действовать на всех игроков или на каждого по отдельности? То есть, например, я подошел, взял свою порцию еды, и в следующий раз смогу взять только через 5 минут, а остальные могут брать еду в течении этих 5 минут?
    Надеюсь понятно описал вопрос )
     
  2. Sasha2dx

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

    Баллы:
    88
    Имя в Minecraft:
    Sasha2dx
    Всё зависит от того какой тип задержки использовать, если pdelay - то задержка будет считатся для каждого игрока в отдельности (ты взял раз в 5 минут еду, и на других это не повлияет, они смогут взять её в эти 5 минут), а если использовать delay то эта задержка будет распостранятся на всех игроков (т.е. ты или кто то другой взял раз в 5 мин еду, и в течении этих 5 минут больше никто не возьмёт).
     
    fromgate и Acca нравится это.
  3. Acca

    Acca Новичок

    Баллы:
    18
    Имя в Minecraft:
    Acca
    Ответом полностью удовлетворен, спасибо большое )
    У меня появился еще один вопрос. Я прописываю /ra add 123 a pdelay 99999 но все равно игрок может несколько раз выполнять операции. Я неправильно пишу?
     
    fromgate нравится это.
  4. Sasha2dx

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

    Баллы:
    88
    Имя в Minecraft:
    Sasha2dx
    Неправильно.) Правильно так:
    /ra add 123 a pdelay 99999/idpdelay
    /ra add 123 f pdelay=idpdelay
    Тут idpdelay это название задержки, ей можно дать любое удобное для тебя имя, действие устанавливает значение задержки на 99999, а флаг не позволяет воспользоватся активатором пока значение задержки не опустится к 0.
    Может где то местами я ошибся с синтаксисом написания, так как давно не делал ничего, если сразу не будет работать то попробуешь подправить что то где то.
     
    fromgate и Acca нравится это.
  5. Acca

    Acca Новичок

    Баллы:
    18
    Имя в Minecraft:
    Acca
    Я замучился. Не получается. Сначала, как я понял, надо создать саму задержку по средствам команды: /ra set delay player. Далее прилепить задержку к активатору. Но как прилепить? Как флаг? с буквой F, или A?
    Не могли бы вы попробовать и расписать подробнее, не получается - хоть тресни. как правильно сделать задержку, как её прилепить, и хватит ли этого? Заранее благодарен )
     
  6. ValeraSTK

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

    Баллы:
    78
    Код:
    BUTTON:
      24h_check:
        world: World6
        x: 0
        y: 0
        z: 0
        flags:
        - DELAY_PLAYER=24_h
        actions:
      - DELAY_PLAYER=24h/24_h
        - BROADCAST=§6вы жмакнули кнопку! это успех!
        reactions:
        - SOUND=CHICKEN_EGG_POP
        - MESSAGE=§424 часа еще не прошло, братишка
     
    Acca и fromgate нравится это.
  7. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Acca, нужно комбинировать с флагами, как в примере Валеры. Добавлю, что проверку флага на задержку можно проводить и в других активаторах. К примеру, нажали одну кнопку, а после этого нельзя пользоваться десятком других кнопок...
     
    Acca нравится это.
  8. Acca

    Acca Новичок

    Баллы:
    18
    Имя в Minecraft:
    Acca
    Спасибо за конфиг. Все вставил как у Вас - заработало )
    Путем ввода в самой игре: /ra add 123 f pdelay=idpdelay - ни как не откликается. =(
     
  9. ValeraSTK

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

    Баллы:
    78
    я уже советовал товарищам, и еще раз повторю - работай с конфигом. Это более наглядно, удобно, просто и дает более лучшее понимание о том как все это работает.
     
    FedorNogopletov и fromgate нравится это.
  10. Sasha2dx

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

    Баллы:
    88
    Имя в Minecraft:
    Sasha2dx
    Значит я как и говорил - где-то ошибся в синтаксисе написания.:whistle: Скорее всего вместо старого pdelay надо писать DELAY_PLAYER и может быть "=" лишние.
     
    fromgate нравится это.
  11. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Acca, Sasha2dx, там действительно "=" лишнее. Оно используется только в сохранении.

    При этом можно писать DELAY_PLAYER и pdelay - без разницы. Кстати, алисы есть почти у всех типов флагов и действий их можно увидеть в списках, которые выводятся командами /react help action [страница] и /react help flag [страница]
     
    Sasha2dx нравится это.
  12. snake302

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

    Баллы:
    78
    Имя в Minecraft:
    mr_snake302
    Интересует такой вопрос, хочу сделать учет побед - т.е. игрок наступает на плиту, и в yml файл должно заноситься +1, возможно ли такое реализовать?

    типа такого:
    Notch:3
    Jeb_:10
     
  13. Sasha2dx

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

    Баллы:
    88
    Имя в Minecraft:
    Sasha2dx
    Нет, но в плагине есть возможность сохранять переменные для каждого игрока в отдельности в самой игре, используя VAR_PLAYER.
     
    fromgate нравится это.
  14. FedorNogopletov

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

    Баллы:
    173
    Возмодно ли сделать что-то типо этого в ReAction? Может ли он проверять написанное в книге?
     
    fromgate нравится это.
  15. Acca

    Acca Новичок

    Баллы:
    18
    Имя в Minecraft:
    Acca
    Всем спасибо за ответы. С Конфигом действительно проще работать, но иногда легче просто команду прописать в игре. поэтому и поинтересовался. А нельзя поставить такую функцию, чтобы игрок мог воспользоваться активатором лишь один раз. Я видел такой вопрос, но вроде он остался не выполненным. Или такая функция не будет нормально работать по причине перезагрузки сервера?
     
    fromgate нравится это.
  16. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    FedorNogopletov, прикольно. Нет пока такого нет. Я книгами ещё не озадачивался. Надо подумать.
    Можно сделать на переменных. По сути переменная - это тот же delay просто не сбрасывается.

    Создаешь персональную переменную с любым значением. Она сохраняется. Потом проверяешь существование этой переменной. Если она есть (не важно что туда записано), то значит игрок этим активатором уже пользовался. Перезагрузка сервера влиять не будет - всё сохраняется в файл
    В отдельный файл нельзя, можно сохранять либо в персональных переменных либо в глобальных (тогда идентификатором переменной надо брать имя игрока).
     
  17. Acca

    Acca Новичок

    Баллы:
    18
    Имя в Minecraft:
    Acca
    Спасибо большое )
     
  18. Sasha2dx

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

    Баллы:
    88
    Имя в Minecraft:
    Sasha2dx
    Поскольку это работает на командных блоках, то можно сделать то же что на видео соединяя реакшенс и команды от консоли, которые на видео были записанны в командные блоки, подставляя значение игрока плейсхолдером, иногда это действительно необходимо так как на одних командных блоках не добится чего то чего надо. Но в целом логика этого творения на видео очень сложная, так как я хоть и занимаюсь подобными извращениями постоянно :D но с ходу не понял что к чему прикрутить что бы оно заработало точно как на видео.

    И ещё хотел заметить, в реакшенс как оказалось нехватает действия по добавлению пермишенса, не критично это так как есть переменные и добавления группы, но всё же. И напишу о найденном баге: из чата невозможно добавить действие телепорта в противодействия, почему-то, когда добавлял прямо в конфиг - то всё работало.
    И ещё когда создаю таймер серверного(не игрового) времени, то в конфиге он записывается в таймер игрового времени, работает при этом или нет - не могу сказать так как не разобрался как там время указывать пока что.)
     
  19. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Можно пример команды? Именно такой, которая не добавлялась.

    и конфига? ;)
    Sasha2dx, с указанием времени не помешает разобраться. Я про этот формат узнал давно и одно время даже пользовался замечательной программой (кое-где она уже несколько лет работает настроенная мною однажды). Здесь тот же стандартный формат cron, только отрабатывает один раз в секунду, а не минуту.
     
    ПриветОтЛайки нравится это.
  20. Sasha2dx

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

    Баллы:
    88
    Имя в Minecraft:
    Sasha2dx
    Не добавлялись эти:
    /ra add test r tp %here%
    /ra add test r tp loc:1
    При этом заменив "r" на "a" всё работало отлично.

    Насчёт серверного вермени - как ни странно но всё исправилось само собой :D, щас я пытался повторить ошибку и всё работало отлично, и вносится куда надо, возможно я раньше делал какую то ошибку при вводе команды.
     

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