Solved Help me please with Inventory!

Discussion in 'Plugin Development' started by xXBeLkAXx, Sep 15, 2014.

Thread Status:
Not open for further replies.
  1. Offline

    xXBeLkAXx

    Guys, I'm setting player inventory, but when event happens, inventory isn't setting. I have no errors in console. Here is my code:
    Code:java
    1. Inventory inv = Bukkit.createInventory(null, 36);
    2. try {
    3. InventoryStore.loadInv(inv, "playerkit.yml");
    4. } catch (IOException e1) {
    5. e1.printStackTrace();
    6. }
    7.  
    8. for(int i = 0; i < inv.getSize(); i++) {
    9. if(inv.getItem(i) != null) {
    10. cs.giveWeapon(target, inv.getItem(i).getItemMeta().getDisplayName(), inv.getItem(i).getAmount());
    11. }
    12. }
    13.  
    14. ItemStack item1 = new ItemStack(Material.GOLD_NUGGET);
    15. ItemMeta meta1 = item1.getItemMeta();
    16. meta1.setDisplayName("§6Просмотр статистики §7(Правый Клик)");
    17. List<String> lore = new ArrayList<>();
    18. lore.add("§aВаше XP: " + CoinsAPI.getCoins(target.getName()));
    19. if(config.getConfigurationSection("players." + target.getName()) != null) {
    20. lore.add("§cСыграно матчей: " + config.getInt("players." + target.getName() + ".played"));
    21. lore.add("§aУбито зомби: " + config.getInt("players." + target.getName() + ".zombies"));
    22. lore.add("§cИнфицировано выживших: " + config.getInt("players." + target.getName() + ".humans"));
    23. }
    24. meta1.setLore(lore);
    25. item1.setItemMeta(meta1);
    26.  
    27. target.getInventory().setItem(7, item1);
    28.  
    29. config.set("players." + pp.getName() + ".zombies", config.getInt("players." + pp.getName() + ".zombies") + 1);
    30.  
    31. try {
    32. config.save(f);
    33. config.load(f);
    34. } catch(Exception ex) {
    35. ex.printStackTrace();
    36. }
    37.  
    38. ItemStack item = new ItemStack(Material.EMERALD);
    39. ItemMeta meta = item.getItemMeta();
    40. meta.setDisplayName("§6Магазин оружия §7(Правый клик)");
    41. item.setItemMeta(meta);
    42.  
    43. target.getInventory().setItem(8, item);
    44. target.updateInventory();

    cs is CrackShot Utility. When I use it on join, it works. But at PlayerDeathEvent it's not working!
     
  2. Offline

    iMurder

    Try PlayerRespawnEvent ?
     
  3. Offline

    xXBeLkAXx

    iMurder I tried to respawn player with packets, in this event I have the same errors.
     
  4. Offline

    iMurder


    xXBeLkAXx
    Try it in the playerrespawnevent, instead of death event.
     
    ChipDev likes this.
  5. Offline

    xXBeLkAXx

    iMurder Yes, I tested it, It's not working in PlayerDeathEvent, only PlayerRespawnEvent.
     
  6. Offline

    iMurder

    xXBeLkAXx Trying to modify the inventory of a dead player probably wasn't the best idea, when they respawn however, it's all good.
    Glad to see this solved.
     
Thread Status:
Not open for further replies.

Share This Page