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

Плагин mobs v0.1 - плагин на дополнительный спавн мобов [1.5.2]

считаете ли вы полезным этот простейший плагин?

  • Определенно Да

    4 голосов 30,8%
  • Определенно Нет

    7 голосов 53,8%
  • Возможно

    2 голосов 15,4%
I'm not idion. I used to say something strange, but now it isn't true ._.
 
Понимаешь, там какой спаунер, такой и моб, он циклиться и спауниться в двойне
Вроде прям на пальцах объяснил
 
Понимаешь, там какой спаунер, такой и моб, он циклиться и спауниться в двойне
Вроде прям на пальцах объяснил
А. Ну да. Логично. блын. Когда переучиваешься, то всегда так неприятно
 
Понимаешь, там какой спаунер, такой и моб, он циклиться и спауниться в двойне
Вроде прям на пальцах объяснил
А, блин. Все. Понял. спасибо всем) Теперь понял. Только не знаете, как туда команды впихнуть, чтобы плагин не работал/работал? с setCancelled? Вряд ли ._. Через цикл тоже?
 
А, блин. Все. Понял. спасибо всем) Теперь понял. Только не знаете, как туда команды впихнуть, чтобы плагин не работал/работал? с setCancelled? Вряд ли ._. Через цикл тоже?
Кароче, регистрируешь обработчик команд в отдельном классе
 
А потом наследие делать что ли?

Ну зарегистрировал. А смысл?
Крч, и в классе где ты команды обрабатываешь, переименовывай переменные
А потом наследие делать что ли?
дальше проверяешь кто ввел команду игрок, или консоль

Код:
if(!(sender instanceof Player)){
//Ввел не игрок
}
 
Крч, и в классе где ты команды обрабатываешь, переименовывай переменные
Блин. Я понял. Код я хз какой подобрать. ну сунул я команду, а как плагину дать понять через код, что это команда должна его вырубить
Крч, и в классе где ты команды обрабатываешь, переименовывай переменные

дальше проверяешь кто ввел команду игрок, или консоль

Код:
if(!(sender instanceof Player)){
//Ввел не игрок
}
Там
Код:
sender. //а дальше?
 
Блин. Я понял. Код я хз какой подобрать. ну сунул я команду, а как плагину дать понять через код, что это команда должна его вырубить

Там
Код:
sender. //а дальше?
Потом проверяешь, есть ли у игрока право:

Код:
if(!sender.hasPermission(hellscoder.hc)){
//Права нету
}
//есть
 
И, давай допустим отправим отправителю сообщение,

Код:
Player p = (Player) sender; //"Превращаем" отправителя в игрока
p.sendMessage("HellsCoder");

В итоге, должно получиться так:

Код:
    @Override
    public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
        if (!(sender instanceof Player)){
            sender.sendMessage(ChatColor.RED + "This is player only!");
            return true;
        }
         Player p = (Player) sender;
         if (!p.hasPermission("hellscoder.hc")){
             p.sendMessage(ChatColor.RED + "Нету прав");
             return false; //бэкдор
         }
          p.sendMessage("HellsCoder");
    }

Отправим сообщение всем игрокам,
Код:
for(Player p : Bukkit.getOnlinePlayers()){ //Итерируем игрока
p.sendMessage("HellsCoder" + "Это глобальное сообщение");
}

Слушай, а для чего ты пишешь плагин?
 
И, давай допустим отправим отправителю сообщение,

Код:
Player p = (Player) sender; //"Превращаем" отправителя в игрока
p.sendMessage("HellsCoder");

В итоге, должно получиться так:

Код:
    @Override
    public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
        if (!(sender instanceof Player)){
            sender.sendMessage(ChatColor.RED + "This is player only!");
            return true;
        }
         Player p = (Player) sender;
         if (!p.hasPermission("hellscoder.hc")){
             p.sendMessage(ChatColor.RED + "Нету прав");
             return false; //бэкдор
         }
          p.sendMessage("HellsCoder");
    }

Отправим сообщение всем игрокам,
Код:
for(Player p : Bukkit.getOnlinePlayers()){ //Итерируем игрока
p.sendMessage("HellsCoder" + "Это глобальное сообщение");
}

Слушай, а для чего ты пишешь плагин?
Да забей ты на него. Он сам ничего не хочет делать. Ему лишь бы готовый код. Он даже элементарных вещей сделать не может.
Он нифига не разбирается в джаве, но почемуто лезет спорить с другими.
ТС, иди качай плагины, декомпилируй их и смотри как там все устроено. Намного еффективнее, чем постоянно просить об помощи.
 
Ну я так и понял, ты не смог зарегистрировать обработчик команд
 
Java:
public class main extends JavaPlugin implements Listener {
    @Override
    public void onEnable() {
        Bukkit.getPluginManager().registerEvents(this, this);
    }

    @EventHandler
    public void onSpawn(CreatureSpawnEvent e) {
        if (e.getSpawnReason() != SpawnReason.SPAWNER)
            return;
        Entity spawned = e.getEntity();
        int i = 0;
        do {
            spawned.getLocation().getWorld().spawnEntity(spawned.getLocation(), spawned.getType());
            i++;
        } while (i < 2);
    }
}
Вот простейший код.
Если уж выпендриваться длинной кода, то тогда так.

Java:
    @EventHandler
    public void onSpawn(CreatureSpawnEvent e) {
        if(e.getSpawnReason() == SpawnReason.SPAWNER) {
            Entity spawned = e.getEntity();
            for(int i=0; i<2; i++) {
                spawned.getLocation().getWorld().spawnEntity(spawned.getLocation(), spawned.getType());
            }
        }
    }
 
Если уж выпендриваться длинной кода, то тогда так.

Java:
    @EventHandler
    public void onSpawn(CreatureSpawnEvent e) {
        if(e.getSpawnReason() == SpawnReason.SPAWNER) {
            Entity spawned = e.getEntity();
            for(int i=0; i<2; i++) {
                spawned.getLocation().getWorld().spawnEntity(spawned.getLocation(), spawned.getType());
            }
        }
    }
фе, так тоже можно, но по мне с do while красивее :eek:
 

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

Назад
Верх