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

Помогите Команда табличкой

Код:
    @EventHandler
    public void onSigh(SignChangeEvent e){
        if(e.getLine(0).equals("[SCB]")){
            e.setLine(0, e.getLine(0).replace("[SCB]", "§2[SCB]"));
            this.setMetadata(e.getBlock(), "scb", e.getLine(1), this);
        }
    }
  
@EventHandler
    public void onClick(PlayerInteractEvent e){
        if(e.getAction() == Action.RIGHT_CLICK_BLOCK){
            if(e.getClickedBlock().getType() == Material.WALL_SIGN){
                if(e.getClickedBlock().hasMetadata("scb")){
                    Sign sign = (Sign) e.getClickedBlock().getState();
                        if(sign.getLine(1) != null && sign.getLine(2) != null){
                            String    command = sign.getLine(1)+" "+sign.getLine(2)+" "+sign.getLine(3);
                            e.getPlayer().performCommand(command.toString());
                    }
                }
            }
        }
    }
    //...
    public void setMetadata(Block Block, String key, Object value, Plugin plugin){
        Block.setMetadata(key,new FixedMetadataValue(plugin,value));
    }
Жду лойсов :3
p.s. команду на табличке надо писать без /
 
Последнее редактирование:
Код:
    @EventHandler
    public void onSigh(SignChangeEvent e){
        if(e.getLine(0).equals("[SCB]")){
            e.setLine(0, e.getLine(0).replace("[SCB]", "§2[SCB]"));
            this.setMetadata(e.getBlock(), "scb", e.getLine(1), this);
        }
    }
 
@EventHandler
    public void onClick(PlayerInteractEvent e){
        if(e.getAction() == Action.RIGHT_CLICK_BLOCK){
            if(e.getClickedBlock().getType() == Material.WALL_SIGN){
                if(e.getClickedBlock().hasMetadata("scb")){
                    Sign sign = (Sign) e.getClickedBlock().getState();
                        if(sign.getLine(1) != null && sign.getLine(2) != null){
                            String    command = sign.getLine(1)+" "+sign.getLine(2)+" "+sign.getLine(3);
                            e.getPlayer().performCommand(command.toString());
                    }
                }
            }
        }
    }
    //...
    public void setMetadata(Block Block, String key, Object value, Plugin plugin){
        Block.setMetadata(key,new FixedMetadataValue(plugin,value));
    }
Жду лойсов :3
p.s. команду на табличке надо писать без /
Сделал ему тоже самое только без меты :)
 

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

Назад
Верх