1. Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

Virtuelles Inventar...

Dieses Thema im Forum "Programmierung" wurde erstellt von Bro4gar, 27. Januar 2015.

  1. Bro4gar
    Offline

    Bro4gar

    Registriert seit:
    3. März 2014
    Beiträge:
    8
    Hallo.
    Ich habe probiert einen Shop zu erstellen. Leider wird das Inventar, dass ich erstellt habe, nicht angezeigt.

    Code (Text):
    1.  
    2. package pxl.MeinName.DungeonRunner;
    3.  
    4. import org.bukkit.Bukkit;
    5. import org.bukkit.Material;
    6. import org.bukkit.block.Sign;
    7. import org.bukkit.entity.Player;
    8. import org.bukkit.event.EventHandler;
    9. import org.bukkit.event.Listener;
    10. import org.bukkit.event.block.Action;
    11. import org.bukkit.event.player.PlayerInteractEvent;
    12. import org.bukkit.inventory.Inventory;
    13. import org.bukkit.inventory.ItemStack;
    14. import org.bukkit.inventory.meta.ItemMeta;
    15.  
    16. public class Shop implements Listener {
    17.  
    18.     private DungeonRunner plugin;
    19.  
    20.  
    21.     public Shop(DungeonRunner dungeonRunner) {
    22.         this.plugin = dungeonRunner;
    23.         this.plugin.getServer().getPluginManager().registerEvents(this, plugin);
    24.     }
    25.    
    26.    
    27.     @EventHandler
    28.     public void DRS(PlayerInteractEvent e){
    29.         Player p = e.getPlayer();
    30.         if(e.getAction() == Action.RIGHT_CLICK_BLOCK){
    31.             if(e.getClickedBlock().getState() instanceof Sign){
    32.                 Sign s =(Sign) e.getClickedBlock().getState();
    33.                 if(s.getLine(1).equalsIgnoreCase("§5Dungeon Shop")){
    34.                     Inventory Weapon = Bukkit.createInventory(null, 9, "§2§o§lWaffen-Shop");
    35.                     ItemStack WeaponStack = new ItemStack(Material.LEATHER_CHESTPLATE);
    36.                     ItemMeta WeaponMeta = WeaponStack.getItemMeta();
    37.                     WeaponMeta.setDisplayName("Level" + plugin.getConfig().getString("DungeonRunner.Players." + p.getName() + ".inventory.Sword.Upgrade") + "15 Taler");
    38.                     Weapon.setItem(0, WeaponStack);
    39.                    
    40.                     e.setCancelled(true);
    41.                     p.getPlayer().openInventory(Weapon);
    42.                 }
    43.             }
    44.         }  
    45.     }  
    46.    
    47. }
    48.  
    Diese Class gehört übrigens zu einem größerem Plugin.
    Was mache ich falsch?
     
    #1
  2. Werbung
    Online

    Werbung

  3. GPSforLEGENDS
    Offline

    GPSforLEGENDS

    Registriert seit:
    21. März 2014
    Beiträge:
    291
    Ort:
    Bürostuhl
    Minecraft:
    GPSforLEGENDS
    Erst einmal kannst du statt p.getPlayer().openInventory(Weapon); p.openInventory(Weapon); nutzen und ich würde vermuten das irgendein boolean false liefert, wenn kein Fehler in der Konsole ist.
     
    #2
  4. Bro4gar
    Offline

    Bro4gar

    Registriert seit:
    3. März 2014
    Beiträge:
    8
    Danke für den Tipp :) Ich habe das Problem gefunden. Es lag an einer Class.
    Warum wird der DisplayName vom Item nicht angezeigt?
     
    #3
  5. GPSforLEGENDS
    Offline

    GPSforLEGENDS

    Registriert seit:
    21. März 2014
    Beiträge:
    291
    Ort:
    Bürostuhl
    Minecraft:
    GPSforLEGENDS
    Weapon.setItemMeta(WeaponMeta);
     
    #4
    • Gefällt mir Gefällt mir x 1
  6. Bro4gar
    Offline

    Bro4gar

    Registriert seit:
    3. März 2014
    Beiträge:
    8
    Danke
     
    #5