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

Плагин RandomTeleport [TP/MECH] [1.7-1.12] - легкий плагин на случайный телепорт с полезными дополнениями

Тема в разделе "Неподтвержденные плагины", создана пользователем EvilGeek, 26 июл 2017.

?

Заинтересовал ли Вас функционал этой версии популярного плагина?

  1. Да

    21 голосов
    80,8%
  2. Нет

    5 голосов
    19,2%
  1. Автор темы
    EvilGeek

    EvilGeek Новичок Пользователь

    Баллы:
    6
    Имя в Minecraft:
    EvilGeek
    RandomTeleport
    Версия плагина: 1.0
    Под версию сервера: 1.7-1.12

    Привет! Идея плагина не нова и есть много вариантов реализации, но этот плагин я писал, потому что не мог найти легкое решение с нужным мне функционалом. Делюсь им с теми, кто тоже в поиске хорошего плагина на рандомную телепортацию. Код написан мною с 0 и не заимствуется у других авторов, все реализовано максимально просто для меньшей нагрузки. Предлагайте идеи по улучшению, всегда рад адекватной критичке.

    Особенности:

    • Случайная телепортация по серверу без лишнего
    • Встроенная задержка на команду для простых игроков
    • Возможность снимать задержку для игроков с правом mc.moder
    • Не телепортирует в воду или лаву (идея написания плагина возникла именно из-за этого)
    • Полная настройка всех сообщений в конфиге
    • Установка координат для телепортации в конфиге
    Команды
    • /rtp или /randomtp - телепортация (требуется право randomtp.мир)
    Код:
    #Требуется прописать для каждого мира
    world:
      xFrom: 1
      xTo: 10000
      zFrom: 1
      zTo: 10000
    world_nether:
      xFrom: 1
      xTo: 2000
      zFrom: 1
      zTo: 2000
    cooldown-secs: 10
    cooldown: '§fОждиайте §6%cooldown% секунд§f перед следующей телепортацией.'
    error: '§6Произошла ошибка во время нахождения безопасного места.'
    teleporting: '§6Телепортирую...'
    #Права для телепорта по миру: rantomtp.нвазние.мира
    noperm: '&cУ тебя нет прав на случайный телепорт в этом мире. Приобрети &6[VIP]'
    

     
  2. dreadfaly

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

    Баллы:
    76
    Имя в Minecraft:
    dolphif
    Представляю, если за VIP можно будет случайно телепортироваться. Лул.
     
  3. Автор темы
    EvilGeek

    EvilGeek Новичок Пользователь

    Баллы:
    6
    Имя в Minecraft:
    EvilGeek
    это может быть полезно для дополнения возможностей доната, например, телепортация по аду - только випам. Так же для кастомных RPG сборок пригодиться.
     
  4. dreadfaly

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

    Баллы:
    76
    Имя в Minecraft:
    dolphif
    Возможно, но это удобный инструмент, чтобы не тратить лишнее время.
     
  5. Автор темы
    EvilGeek

    EvilGeek Новичок Пользователь

    Баллы:
    6
    Имя в Minecraft:
    EvilGeek
    С моей версией можно регулировать это по своему желанию. По-моему, это скорее плюс. В целом плагин писался, чтобы не было телепортации в воду, лишнего для меня функционала и нормальной задержки. Если ставить задержку сторонним плагином, то использование алиасов (/rtp, /randomtp) дает дополнительную возможность телепорта, в один момент мои игроки нашли её и стали использовать. К тому же я постарался максимально оптимизировать код.
     
  6. hyndorik

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

    Баллы:
    98
    Имя в Minecraft:
    hyndo
    Тем не менее об названии пермишеннов ничего не знаешь. Первая часть должна называться самим плагином, тоесть randomteleport.moder
     
  7. ZENEGIX

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

    Баллы:
    61
    Имя в Minecraft:
    ZENEGIX
    Задержки лучше хранить в файле, хотя бы в yml, иначе сервер перезагрузится и все, пока задержкам. Зачем каждую секунду обновлять задержки? Записываешь дату, когда задержка должна убраться, и сравниваешь это время с текущим, если текущее больше или равно, то задержка прошла.
    Теперь по поводу нахождения рандомной точки. Лучше использовать ThreadLocalRandom (ThreadLocalRandom.current()), и не создавай каждый раз новый объект Random'a, сделай статик поле и вызывай его. Так же получить наивысшую точку по координатам можно методом: world.getHighestBlockYAt(x, z)
     
  8. Daemara

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

    Баллы:
    61
    Вот конфиг. По идее должно портовать от -99983, -99686 до 100017, 100314 (у меня центр в 17, 314 и границы по 100к в каждую сторону). Теперь вопрос, почему кидает в пределах -99983, -99686 до 0, 0 (примерно) ?

     
  9. Daemara

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

    Баллы:
    61
    если делать от 1 до 100к то портует в положительном диапазоне т.е. от 0,0 до 100000,100000
     
  10. Rider3217

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

    Баллы:
    98
    Имя в Minecraft:
    Planet0111
    Зачем делать кастомный кулдаун там? Это же не плагин на кулдауны, если нужно они поставять кулдаун на команду сами.
    Так же у тебя в аду всегда будет тпхать на самый верх ада.
    Еще сделай глобальные переменные в которых ты будешь хранить уже готовые смс, так тоже получше будет.
    Еще в run() можно обойтись одним try{}.
     
  11. Denis2006

    Denis2006 Ньюби

    Баллы:
    1
    Имя в Minecraft:
    Gam4r
    Помогите хочу что бы игроки могли писать /rtp ето возможно без permission?
     
  12. MrMagaChannel

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

    Баллы:
    76
    Имя в Minecraft:
    mrmagachannel
    Плагин хреновый, поставь другой нормальный или напиши свой, тут хватит 5 кб кода с учетом конфига, не более.
     

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