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

Плагин [TP/FIX] NoFall - не дай игрокам упасть в бездну! [1.10.2]|3.0

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

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

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

    Баллы:
    76
    Имя в Minecraft:
    MrRate
    Название : NoFall
    Версия: 3.0
    Поддерживающие версии: 1.10.2 (остальные не тестил)

    Описание:
    Данный плагин был написан мною для лобби сервера. Дело в том что у многих в лобби отключен дамаг и голод и из-за этого игроки падая в бездну , падают туда бесконечно, не умирая. Я решил написать плагин который будет телепортировать их наверх.Думаю код очень прост. Да, такие плагины уже есть(наверное) , но на рб я не встречал). Критикуйте)

    СКАЧАТЬ

    Версия 1.0: Релиз плагина
    Версия 2.0: Добавлена команда /reload, сообщение, конфиг
    Версия 3,0: Изменение кода, снижена нагрузка на сервер, убран конфиг

    Отдельное спасибо: @Slavkaa
     
    Последнее редактирование: 28 дек 2017
  2. Slavkaa

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

    Баллы:
    76
    Имя в Minecraft:
    Slavok2001
    Ууу, PlayerMoveEvent, жестко
     
  3. Автор темы
    MrRateV2

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

    Баллы:
    76
    Имя в Minecraft:
    MrRate
    уже нет)
     
  4. hyndorik

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

    Баллы:
    98
    Имя в Minecraft:
    hyndo
    Ууу, он же туда засунул наверно целую проверку на уровень игрока, вот это да, вот это жестко, точно сервак наверно нагрузит
     
  5. Автор темы
    MrRateV2

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

    Баллы:
    76
    Имя в Minecraft:
    MrRate
    Зачем писать если не смотрел код? я же сказал что уже нет. Я переписал код
     
  6. Slavkaa

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

    Баллы:
    76
    Имя в Minecraft:
    Slavok2001
    Охренеть ты быстро с одного мнения на другое прыгаешь. Щас кто-то напишет в другой теме про PlayerMoveEvent, начнется "фу ты говнокодер, это сервер грузит, удаляй сервер"
     
  7. SaMEC

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

    Баллы:
    173
    Skype:
    support.meedway
    Имя в Minecraft:
    Nick
  8. Автор темы
    MrRateV2

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

    Баллы:
    76
    Имя в Minecraft:
    MrRate
    Еще скажите , что это тот самый плагин , с одним и тем же кодом. -_-

    к тому же, как раз в том плагине и используется PlayerMoveEvent, который нагружает серв.
    он тпхает когда игрок падает под бедрок, а мой когда координата Y < 0

    а как иначе можно назвать плагин? -_-
     
    Последнее редактирование: 28 дек 2017
  9. hyndorik

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

    Баллы:
    98
    Имя в Minecraft:
    hyndo
    Где я с мнения прыгаю, где я говорил, что одна проверка в playermoveevent будет как-то нагружать сервер? Сервер который это будет нагружать даже не запустится
     
  10. Дмитрий keka_VAC

    Дмитрий keka_VAC Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Cake_progress
    // INTERNAL ERROR // Nice code friend
     
  11. Автор темы
    MrRateV2

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

    Баллы:
    76
    Имя в Minecraft:
    MrRate
    Нужно в eclipse декомпилировать, а не в JDGui
     
  12. iSun

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

    Баллы:
    66
    Спасибо, ваще помог, поставил на серв, теперь хочу самоубиться, но не получается(
     
  13. Dereku

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

    Баллы:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku
    Код:
    public class BukkitPlugin extends JavaPlugin implements Listener {
        public void onEnable() {
            this.getServer().getPluginManager().registerListeners(this, this);
        }
       
        @EventHandler(priority=EventPriority.LOW)
        public void onPlayerDamagedByVoid(EntityDamageEvent event) {
            if (!(event.getEntity() instaceof Player)) {
                return;
            }
            if (event.getCause() != EntityDamageEvent.DamageCause.VOID) {
                return;
            }
            event.getEntity().teleport(event.getEntity().getWorld().getSpawnLocation());
            event.setCancelled(true);
        }
    }
    Вот и весь плагин.
     
  14. hyndorik

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

    Баллы:
    98
    Имя в Minecraft:
    hyndo
    Ого, а я и забыл, что у эклипса свой уникальный декомпилятор
     
  15. SaMEC

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

    Баллы:
    173
    Skype:
    support.meedway
    Имя в Minecraft:
    Nick
    Да с тем же кодом, различий то минимум.
    Сравним:rolleyes:
    Код:
      public void onDisable()
      {
        _log.info("[NoFall] Плагин выключен!");
      }
    
      public void save()
      {
        getConfig().set("Text", this.upal);
        saveConfig();
      }
    
      public void load()
      {
        reloadConfig();
        this.upal = getConfig().getString("Text");
      }
    
      [USER=74023]@EventHandler[/USER]
      public void onPlayerMoveEvent(PlayerMoveEvent e) {
        Player p = e.getPlayer();
        int y = p.getLocation().getBlockY();
        Location spawn = p.getWorld().getSpawnLocation();
        if (y < -1)
        {
          p.teleport(spawn);
          p.sendMessage(this.upal);
        }
      }
    
      private boolean ReloadCFG(CommandSender sender)
      {
        if (sender != null)
          sender.sendMessage(ChatColor.DARK_GREEN + "[NoFall] плагин перезагружен!");
        load();
        return true;
      }
    
      public boolean onCommand(CommandSender sender, Command cmd, String cmdLabel, String[] args)
      {
        if (args.length == 0)
          return false;
        Player player = (sender instanceof Player) ? (Player)sender : null;
        if (args[0].equalsIgnoreCase("reload"))
        {
          if ((player == null) || (player.hasPermission("nofall.reload"))) {
            return ReloadCFG(sender);
          }
          return false;
        }
    
        return true;
      }
    Код:
       public void onDisable() {
           _log.info("disabled!");
       }
    
       public void save() {
           this.getConfig().set("Mesasge", (Object)this.msg);
           this.saveConfig();
       }
    
       public void load() {
           this.reloadConfig();
           this.msg = this.getConfig().getString("Message");
       }
    
       private boolean ReloadCFG(CommandSender sender) {
           if (sender != null) {
               sender.sendMessage((Object)ChatColor.DARK_GREEN + "plugin reloaded!");
           }
           this.load();
           return true;
       }
    
       public boolean onCommand(CommandSender sender, Command cmd, String cmdLabel, String[] args) {
           Player player;
           if (args.length == 0) {
               return false;
           }
           Player player2 = player = sender instanceof Player ? (Player)sender : null;
           if (args[0].equalsIgnoreCase("reload")) {
               if (player == null || player.hasPermission("nofall.reload")) {
                   return this.ReloadCFG(sender);
               }
               return false;
           }
           return true;
       }
     
  16. Автор темы
    MrRateV2

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

    Баллы:
    76
    Имя в Minecraft:
    MrRate
    Ваууу, просто "точь в точь!" "МОЛОДЕЦ!"
     

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