HashMap doesn´t register

Discussion in 'Plugin Development' started by PlayerNerd, Sep 10, 2014.

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

    PlayerNerd

    The server doesn´t register the second condition:

    Code:java
    1.  
    2. private HashMap<String, Integer> kills = new HashMap<String, Integer>();
    3.  
    4. @EventHandler
    5. public void onShowKills(PlayerDeathEvent e)
    6. {
    7. Player p = e.getEntity();
    8. Player k = p.getKiller();
    9.  
    10. if(e.getEntity() instanceof Player && e.getEntity().getKiller() instanceof Player)
    11. {
    12. String morto = p.getName();
    13. String killer = k.getName();
    14.  
    15. if(!(kills.containsKey(killer)))
    16. {
    17. kills.put(killer, + 1);
    18. } else if(kills.containsKey(killer))
    19. {
    20. kills.put(killer, kills.get(k) + 1);
    21. }
    22.  
    23. if(kills.get(killer) == 2)
    24. {
    25. Bukkit.getServer().broadcastMessage(ChatColor.DARK_RED + "[" + ChatColor.GOLD + "#PiáTeam" + ChatColor.DARK_RED + "] " + ChatColor.AQUA + "O Jogador " + ChatColor.DARK_RED + killer + ChatColor.AQUA + "marcou uma DOUBLEKILL ao matar " + ChatColor.RED + morto + ChatColor.AQUA + "!");
    26. BarAPI.setMessage(ChatColor.GREEN + "DOUBLEKILL DE " + ChatColor.RED + killer, 5);
    27. } else if(kills.get(killer) == 3)
    28. {
    29. Bukkit.getServer().broadcastMessage(ChatColor.DARK_RED + "[" + ChatColor.GOLD + "#PiáTeam" + ChatColor.DARK_RED + "] " + ChatColor.AQUA + "O Jogador " + ChatColor.DARK_RED + killer + ChatColor.AQUA + "marcou uma TRIPLEKILL ao matar " + ChatColor.RED + morto + ChatColor.AQUA + "!");
    30. BarAPI.setMessage(ChatColor.GREEN + "TRIPLEKILL DE " + ChatColor.RED + killer, 5);
    31. } else if(kills.get(killer) == 4)
    32. {
    33. Bukkit.getServer().broadcastMessage(ChatColor.DARK_RED + "[" + ChatColor.GOLD + "#PiáTeam" + ChatColor.DARK_RED + "] " + ChatColor.AQUA + "O Jogador " + ChatColor.DARK_RED + killer + ChatColor.AQUA + "marcou uma QUADRAKILL ao matar " + ChatColor.RED + morto + ChatColor.AQUA + "!");
    34. BarAPI.setMessage(ChatColor.GREEN + "QUADRAKILL DE " + ChatColor.RED + killer, 5);
    35. } else if(kills.get(killer) == 5)
    36. {
    37. Bukkit.getServer().broadcastMessage(ChatColor.DARK_RED + "[" + ChatColor.GOLD + "#PiáTeam" + ChatColor.DARK_RED + "] " + ChatColor.AQUA + "O Jogador " + ChatColor.DARK_RED + killer + ChatColor.AQUA + "marcou uma PENTAKILL ao matar " + ChatColor.RED + morto + ChatColor.AQUA + "!");
    38. BarAPI.setMessage(ChatColor.RED + "PENTAKILL DE " + ChatColor.DARK_RED + killer, 5);
    39. } else if(kills.get(killer) == 10)
    40. {
    41. Bukkit.getServer().broadcastMessage(ChatColor.DARK_RED + "[" + ChatColor.GOLD + "#PiáTeam" + ChatColor.DARK_RED + "] " + ChatColor.AQUA + "O Jogador " + ChatColor.DARK_RED + killer + ChatColor.AQUA + "está enfurecido ao matar " + ChatColor.RED + morto + ChatColor.AQUA + "!");
    42. BarAPI.setMessage(ChatColor.DARK_RED + killer + ChatColor.RED + "ESTÁ ENFURECIDO", 5);
    43. } else if(kills.get(killer) == 50)
    44. {
    45. Bukkit.getServer().broadcastMessage(ChatColor.DARK_RED + "[" + ChatColor.GOLD + "#PiáTeam" + ChatColor.DARK_RED + "] " + ChatColor.AQUA + "O Jogador " + ChatColor.DARK_RED + killer + ChatColor.AQUA + "está dominando ao matar " + ChatColor.RED + morto + ChatColor.AQUA + "!");
    46. BarAPI.setMessage(ChatColor.DARK_RED + killer + ChatColor.RED + "ESTÁ DOMINANDO", 5);
    47. } else if(kills.get(killer) == 100)
    48. {
    49. Bukkit.getServer().broadcastMessage(ChatColor.DARK_RED + "[" + ChatColor.GOLD + "#PiáTeam" + ChatColor.DARK_RED + "] " + ChatColor.AQUA + "O Jogador " + ChatColor.DARK_RED + killer + ChatColor.AQUA + "marcou um ACE ao matar " + ChatColor.RED + morto + ChatColor.AQUA + "!");
    50. BarAPI.setMessage(ChatColor.DARK_RED + killer + ChatColor.RED + "MARCOU UM ACE", 5);
    51. } else if(kills.get(killer) > 100)
    52. {
    53. Bukkit.getServer().broadcastMessage(ChatColor.DARK_RED + "[" + ChatColor.GOLD + "#PiáTeam" + ChatColor.DARK_RED + "] " + ChatColor.AQUA + "O Jogador " + ChatColor.DARK_RED + killer + ChatColor.AQUA + "está comendo all briocos com " + ChatColor.DARK_RED + kills.get(p).intValue() + ChatColor.AQUA + "kills!");
    54. BarAPI.setMessage(ChatColor.DARK_RED + killer + ChatColor.RED + "ESTÁ COMENDO ALL BRIOCOS COM" + ChatColor.GOLD + kills.get(p).intValue(), 5);
    55. }
    56.  
    57. if(!(kills.get(killer) == 2)) return;
    58. if(!(kills.get(killer) == 3)) return;
    59. if(!(kills.get(killer) == 4)) return;
    60. if(!(kills.get(killer) == 5)) return;
    61. if(!(kills.get(killer) == 10)) return;
    62. if(!(kills.get(killer) == 50)) return;
    63. if(!(kills.get(killer) == 100)) return;
    64. if(!(kills.get(killer) > 100)) return;
    65.  
    66. }
    67. }
    68.  
    69. @EventHandler
    70. public void onLeave(PlayerQuitEvent e)
    71. {
    72. Player p = e.getPlayer();
    73. kills.remove(p.getUniqueId());
    74. }
    75.  
    76. @EventHandler
    77. public void onDeath2(PlayerDeathEvent e)
    78. {
    79. if(e.getEntity() instanceof Player)
    80. {
    81. Player p = e.getEntity();
    82. kills.remove(p.getUniqueId());
    83. }
    84. }
     
  2. Offline

    Zarkopafilis

    Youre passing the player object , not a string
     
  3. Offline

    Unica

    Zarkopafilis
    No lol.
    Code:java
    1. String killer = k.getName();


    PlayerNerd
    In your events, you're removing the p.getUniqueId(), while your hashmap is
    Code:java
    1. <String, Integer>


    Learn java man, in the past few days you've asked very easy questions
     
Thread Status:
Not open for further replies.

Share This Page