Помогите Генератор предметов

DJhunter

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
DJhunter
Как сделать, чтобы при вводе команды( пример: /ff setgenerator iron), на тот блок который я смотрю стал бы генератором железа. Из него каждые 3 секунды появлялось бы железо.
 
Как сделать, чтобы при вводе команды( пример: /ff setgenerator iron), на тот блок который я смотрю стал бы генератором железа. Из него каждые 3 секунды появлялось бы железо.
Создай коллекцию в которой хранятся координаты этих блоков и добавляй в нее координаты блока на которого смотрит игрок.
А потом уже запланируй шедулер на срабатывания каждые 3 секунды, который будет циклом перебирать все координаты из коллекции и спавнить в тех местах предмет железа.
 
Создай коллекцию в которой хранятся координаты этих блоков и добавляй в нее координаты блока на которого смотрит игрок.
А потом уже запланируй шедулер на срабатывания каждые 3 секунды, который будет циклом перебирать все координаты из коллекции и спавнить в тех местах предмет железа.
А какой-то небольшой или кривой пример можно, ну или нормальный :)?
 
А какой-то небольшой или кривой пример можно, ну или нормальный :)?
Код:
public class Plugin extends JavaPlugin implements Listener {
    
    private final List<Location> ironLocation = new ArrayList<Location>();
    
    @Override
    public void onEnable() {
        getServer().getPluginManager().registerEvents(this, this);
        
        Bukkit.getScheduler().runTaskTimer(this, () -> {
            for (Location loc : ironLocation) {
                //Здесь опиши логику спавна железа
            }
        }, 20, 20*3);
    }
    
    @Override
    public void onDisable() {
        
    }
    
    //Пример ивента на размещение блоков
    @EventHandler
    public void onBlockPlaceEvent(BlockPlaceEvent e) {
        //При определенном условии выполняй добавление блока
        if (...) {
           this.ironLocation.add(e.getBlockPlaced().getLocation()));
        }
    }
    

}
 
Код:
public class Plugin extends JavaPlugin implements Listener {
   
    private final List<Location> ironLocation = new ArrayList<Location>();
   
    @Override
    public void onEnable() {
        getServer().getPluginManager().registerEvents(this, this);
       
        Bukkit.getScheduler().runTaskTimer(this, () -> {
            for (Location loc : ironLocation) {
                //Здесь опиши логику спавна железа
            }
        }, 20, 20*3);
    }
   
    @Override
    public void onDisable() {
       
    }
   
    //Пример ивента на размещение блоков
    @EventHandler
    public void onBlockPlaceEvent(BlockPlaceEvent e) {
        //При определенном условии выполняй добавление блока
        if (...) {
           this.ironLocation.add(e.getBlockPlaced().getLocation()));
        }
    }
   

}
Спасибо!
 
Назад
Верх