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

блок-сундук

Тема в разделе "Разработка плагинов для новичков", создана пользователем danrom11, 19 дек 2018.

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

    danrom11 Новичок

    Баллы:
    6
    Ребят подскажите пожалуйста как сделать так что бы при клике например на золотой блок открывался сундук, и что бы при клике на другой сундук открывался именно он ,а не общей инвентарь сундука.
    Заранее спасибо!
     
  2. LuckyZeeRo

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

    Баллы:
    96
    Имя в Minecraft:
    i0xHeX
    Откуда должен быть инвентарь золотого блока?
     
  3. _MCMaster_

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

    Баллы:
    76
    Имя в Minecraft:
    DragOn4ik
    PHP:
    Map<BlockInventory>
    Используй HashMap'ы
     
  4. _MCMaster_

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

    Баллы:
    76
    Имя в Minecraft:
    DragOn4ik
    PHP:
    package com.dragon4ik.goldchest;

    import java.util.HashMap;
    import java.util.Map;

    import org.bukkit.block.Block;
    import org.*********ventory.Inventory;
    import org.bukkit.plugin.java.JavaPlugin;

    public class 
    GoldChest extends JavaPlugin {
     
        public 
    Map<BlockInventoryblocks;
     
        public 
    void onEnable() {
            
    blocks = new HashMap<BlockInventory>();
            
    getLogger().info("Plugin enabled");
            
    Bukkit.getPluginManager().registerEvents(new ClickListener(this), this);
        }

    }
    PHP:
    package com.dragon4ik.goldchest;

    import org.bukkit.Bukkit;
    import org.bukkit.Material;
    import org.bukkit.event.EventHandler;
    import org.bukkit.event.Listener;
    import org.bukkit.event.block.Action;
    import org.bukkit.event.player.PlayerInteractEvent;

    import net.md_5.bungee.api.ChatColor;

    public class 
    ClickListener implements Listener{
     
        
    GoldChest plugin;
        public 
    ClickListener(GoldChest plugin) {
            
    this.plugin plugin;
        }
     
        @
    EventHandler
        
    public void click(PlayerInteractEvent e) {
            if(
    e.getAction().equals(Action.RIGHT_CLICK_BLOCK)) {
                if(!
    e.getClickedBlock().getType().equals(Material.GOLD_BLOCK)) return;
                if(!
    plugin.blocks.containsKey(e.getClickedBlock())) plugin.blocks.put(e.getClickedBlock(), Bukkit.createInventory(null27ChatColor.GOLD "Сундук"));
                
    e.getPlayer().openInventory(plugin.blocks.get(e.getClickedBlock()));
            }
        }

    }

    Сохранение мапы в конфиг или БД мне лень делать)
    P.S. В главном классе один импорт рб посчитал рекламой и закрыл звездочками.
     

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