getPlayer in onEnable() ?

Discussion in 'Plugin Development' started by HGPDev, Apr 7, 2014.

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

    HGPDev

    Is it possible to getPlayer in onEnable?
    timtower ? < Tag you because you now allot
    - Brian
     
  2. Offline

    Zethariel

    HGPDev getPlayer what? You have access to Bukkit.getPlayer() even in onEnable.
     
  3. Offline

    timtower Administrator Administrator Moderator

    HGPDev If the player is online then it will work ( only possible with reload )
    And depends on what you want to do with the player
     
  4. You can use getPlayer(), but don't forget to check if the player isn't null before you try to use it, as they are most likely offline. The only times you'll actually get a player is when the plugin has been reloaded.

    If you're looking for the online players, Bukkit.getOnlinePlayers() will result an arraylist with those.
     
  5. Offline

    HGPDev

    Cupcakes69 If yo do that then it grabs only 1 player and not all of them. Thats just the problem.
     
  6. HGPDev As Cupcakes69 said, Bukkit.getOnlinePlayers() returns all online players.
     
  7. Offline

    HGPDev

  8. Offline

    xTrollxDudex

    HGPDev
     
    AdamQpzm likes this.
  9. HGPDev I'm confused - how would it return one player exactly? It's impossible to give it anything to go on, so would it just pick one at random? Would it pick the last one to log on? The one who's been on longest? First alphabetically?

    The answer is no, it returns all online players.
     
  10. Offline

    HGPDev

    AdamQpzm xTrollxDudex Cupcakes69 timtower Zethariel Look: Here it only gets 1 player and not all of them:

    Code:java
    1. @SuppressWarnings("deprecation")
    2. @Override
    3. public void run() {
    4.  
    5.  
    6.  
    7. for(Player player : Bukkit.getOnlinePlayers()){
    8. if(userdata.getInt(player.getName() + ".score") == 1){
    9. board = Bukkit.getServer().getScoreboardManager().getNewScoreboard();
    10. o = board.registerNewObjective("test", "dummy");
    11. o.setDisplaySlot(DisplaySlot.SIDEBAR);
    12. o.setDisplayName(ChatColor.translateAlternateColorCodes('&', "&6&lW&r&6elkom op AC"));
    13.  
    14. Score score = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Highest KS:"));
    15. score.setScore(userdata.getInt(player.getName() + ".highestkillstreak")); //Integer only!
    16. Score score1 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Killstreak:"));
    17. score1.setScore(userdata.getInt(player.getName() + ".killstreak")); //Integer only!
    18. Score score2 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Money:"));
    19. score2.setScore((int) economy.getBalance(player.getName())); //Integer only!
    20. Score score3 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Online:"));
    21. score3.setScore(Bukkit.getServer().getOnlinePlayers().length); //Integer only!
    22.  
    23. userdata.set(player.getName() + ".score", 2);
    24. userdata.saveConfig();
    25. player.setScoreboard(board);
    26. return;
    27. }
    28. if(userdata.getInt(player.getName() + ".score") == 2){
    29. board = Bukkit.getServer().getScoreboardManager().getNewScoreboard();
    30. o = board.registerNewObjective("test", "dummy");
    31. o.setDisplaySlot(DisplaySlot.SIDEBAR);
    32. o.setDisplayName(ChatColor.translateAlternateColorCodes('&', "&6W&le&r&6lkom op AC"));
    33.  
    34. Score score = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Highest KS:"));
    35. score.setScore(userdata.getInt(player.getName() + ".highestkillstreak")); //Integer only!
    36. Score score1 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Killstreak:"));
    37. score1.setScore(userdata.getInt(player.getName() + ".killstreak")); //Integer only!
    38. Score score2 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Money:"));
    39. score2.setScore((int) economy.getBalance(player.getName())); //Integer only!
    40. Score score3 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Online:"));
    41. score3.setScore(Bukkit.getServer().getOnlinePlayers().length); //Integer only!
    42.  
    43. userdata.set(player.getName() + ".score", 3);
    44. userdata.saveConfig();
    45. player.setScoreboard(board);
    46. return;
    47. }
    48. if(userdata.getInt(player.getName() + ".score") == 3){
    49. board = Bukkit.getServer().getScoreboardManager().getNewScoreboard();
    50. o = board.registerNewObjective("test", "dummy");
    51. o.setDisplaySlot(DisplaySlot.SIDEBAR);
    52. o.setDisplayName(ChatColor.translateAlternateColorCodes('&', "&6We&ll&r&6kom op AC"));
    53.  
    54. Score score = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Highest KS:"));
    55. score.setScore(userdata.getInt(player.getName() + ".highestkillstreak")); //Integer only!
    56. Score score1 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Killstreak:"));
    57. score1.setScore(userdata.getInt(player.getName() + ".killstreak")); //Integer only!
    58. Score score2 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Money:"));
    59. score2.setScore((int) economy.getBalance(player.getName())); //Integer only!
    60. Score score3 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Online:"));
    61. score3.setScore(Bukkit.getServer().getOnlinePlayers().length); //Integer only!
    62.  
    63. userdata.set(player.getName() + ".score", 4);
    64. userdata.saveConfig();
    65. player.setScoreboard(board);
    66. return;
    67. }
    68. if(userdata.getInt(player.getName() + ".score") == 4){
    69. board = Bukkit.getServer().getScoreboardManager().getNewScoreboard();
    70. o = board.registerNewObjective("test", "dummy");
    71. o.setDisplaySlot(DisplaySlot.SIDEBAR);
    72. o.setDisplayName(ChatColor.translateAlternateColorCodes('&', "&6Wel&lk&r&6om op AC"));
    73.  
    74. Score score = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Highest KS:"));
    75. score.setScore(userdata.getInt(player.getName() + ".highestkillstreak")); //Integer only!
    76. Score score1 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Killstreak:"));
    77. score1.setScore(userdata.getInt(player.getName() + ".killstreak")); //Integer only!
    78. Score score2 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Money:"));
    79. score2.setScore((int) economy.getBalance(player.getName())); //Integer only!
    80. Score score3 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Online:"));
    81. score3.setScore(Bukkit.getServer().getOnlinePlayers().length); //Integer only!
    82.  
    83. userdata.set(player.getName() + ".score", 5);
    84. userdata.saveConfig();
    85. player.setScoreboard(board);
    86. return;
    87. }
    88. if(userdata.getInt(player.getName() + ".score") == 5){
    89. board = Bukkit.getServer().getScoreboardManager().getNewScoreboard();
    90. o = board.registerNewObjective("test", "dummy");
    91. o.setDisplaySlot(DisplaySlot.SIDEBAR);
    92. o.setDisplayName(ChatColor.translateAlternateColorCodes('&', "&6Welk&lo&r&6m op AC"));
    93.  
    94. Score score = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Highest KS:"));
    95. score.setScore(userdata.getInt(player.getName() + ".highestkillstreak")); //Integer only!
    96. Score score1 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Killstreak:"));
    97. score1.setScore(userdata.getInt(player.getName() + ".killstreak")); //Integer only!
    98. Score score2 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Money:"));
    99. score2.setScore((int) economy.getBalance(player.getName())); //Integer only!
    100. Score score3 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Online:"));
    101. score3.setScore(Bukkit.getServer().getOnlinePlayers().length); //Integer only!
    102.  
    103. userdata.set(player.getName() + ".score", 6);
    104. userdata.saveConfig();
    105. player.setScoreboard(board);
    106. return;
    107. }
    108. if(userdata.getInt(player.getName() + ".score") == 6){
    109. board = Bukkit.getServer().getScoreboardManager().getNewScoreboard();
    110. o = board.registerNewObjective("test", "dummy");
    111. o.setDisplaySlot(DisplaySlot.SIDEBAR);
    112. o.setDisplayName(ChatColor.translateAlternateColorCodes('&', "&6Welko&lm&r&6 op AC"));
    113.  
    114. Score score = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Highest KS:"));
    115. score.setScore(userdata.getInt(player.getName() + ".highestkillstreak")); //Integer only!
    116. Score score1 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Killstreak:"));
    117. score1.setScore(userdata.getInt(player.getName() + ".killstreak")); //Integer only!
    118. Score score2 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Money:"));
    119. score2.setScore((int) economy.getBalance(player.getName())); //Integer only!
    120. Score score3 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Online:"));
    121. score3.setScore(Bukkit.getServer().getOnlinePlayers().length); //Integer only!
    122.  
    123. userdata.set(player.getName() + ".score", 7);
    124. userdata.saveConfig();
    125. player.setScoreboard(board);
    126. return;
    127. }
    128. if(userdata.getInt(player.getName() + ".score") == 7){
    129. board = Bukkit.getServer().getScoreboardManager().getNewScoreboard();
    130. o = board.registerNewObjective("test", "dummy");
    131. o.setDisplaySlot(DisplaySlot.SIDEBAR);
    132. o.setDisplayName(ChatColor.translateAlternateColorCodes('&', "&6Welkom &lo&r&6p AC"));
    133.  
    134. Score score = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Highest KS:"));
    135. score.setScore(userdata.getInt(player.getName() + ".highestkillstreak")); //Integer only!
    136. Score score1 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Killstreak:"));
    137. score1.setScore(userdata.getInt(player.getName() + ".killstreak")); //Integer only!
    138. Score score2 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Money:"));
    139. score2.setScore((int) economy.getBalance(player.getName())); //Integer only!
    140. Score score3 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Online:"));
    141. score3.setScore(Bukkit.getServer().getOnlinePlayers().length); //Integer only!
    142.  
    143. userdata.set(player.getName() + ".score", 8);
    144. userdata.saveConfig();
    145. player.setScoreboard(board);
    146. return;
    147. }
    148. if(userdata.getInt(player.getName() + ".score") == 8){
    149. board = Bukkit.getServer().getScoreboardManager().getNewScoreboard();
    150. o = board.registerNewObjective("test", "dummy");
    151. o.setDisplaySlot(DisplaySlot.SIDEBAR);
    152. o.setDisplayName(ChatColor.translateAlternateColorCodes('&', "&6Welkom o&lp&r&6 AC"));
    153.  
    154. Score score = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Highest KS:"));
    155. score.setScore(userdata.getInt(player.getName() + ".highestkillstreak")); //Integer only!
    156. Score score1 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Killstreak:"));
    157. score1.setScore(userdata.getInt(player.getName() + ".killstreak")); //Integer only!
    158. Score score2 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Money:"));
    159. score2.setScore((int) economy.getBalance(player.getName())); //Integer only!
    160. Score score3 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Online:"));
    161. score3.setScore(Bukkit.getServer().getOnlinePlayers().length); //Integer only!
    162.  
    163. userdata.set(player.getName() + ".score", 9);
    164. userdata.saveConfig();
    165. player.setScoreboard(board);
    166. return;
    167. }
    168. if(userdata.getInt(player.getName() + ".score") == 9){
    169. board = Bukkit.getServer().getScoreboardManager().getNewScoreboard();
    170. o = board.registerNewObjective("test", "dummy");
    171. o.setDisplaySlot(DisplaySlot.SIDEBAR);
    172. o.setDisplayName(ChatColor.translateAlternateColorCodes('&', "&6Welkom op &lA&r&6C"));
    173.  
    174. Score score = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Highest KS:"));
    175. score.setScore(userdata.getInt(player.getName() + ".highestkillstreak")); //Integer only!
    176. Score score1 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Killstreak:"));
    177. score1.setScore(userdata.getInt(player.getName() + ".killstreak")); //Integer only!
    178. Score score2 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Money:"));
    179. score2.setScore((int) economy.getBalance(player.getName())); //Integer only!
    180. Score score3 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Online:"));
    181. score3.setScore(Bukkit.getServer().getOnlinePlayers().length); //Integer only!
    182.  
    183. userdata.set(player.getName() + ".score", 10);
    184. userdata.saveConfig();
    185. player.setScoreboard(board);
    186. return;
    187. }
    188. if(userdata.getInt(player.getName() + ".score") == 10){
    189. board = Bukkit.getServer().getScoreboardManager().getNewScoreboard();
    190. o = board.registerNewObjective("test", "dummy");
    191. o.setDisplaySlot(DisplaySlot.SIDEBAR);
    192. o.setDisplayName(ChatColor.translateAlternateColorCodes('&', "&6Welkom op A&lC&r"));
    193.  
    194. Score score = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Highest KS:"));
    195. score.setScore(userdata.getInt(player.getName() + ".highestkillstreak")); //Integer only!
    196. Score score1 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Killstreak:"));
    197. score1.setScore(userdata.getInt(player.getName() + ".killstreak")); //Integer only!
    198. Score score2 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Money:"));
    199. score2.setScore((int) economy.getBalance(player.getName())); //Integer only!
    200. Score score3 = o.getScore(Bukkit.getOfflinePlayer(ChatColor.GREEN + "Online:"));
    201. score3.setScore(Bukkit.getServer().getOnlinePlayers().length); //Integer only!
    202.  
    203. userdata.set(player.getName() + ".score", 1);
    204. userdata.saveConfig();
    205. player.setScoreboard(board);
    206. return;
    207. }
    208.  
    209. }
    210.  
    211. }
    212. }, 10, 10*1);
     
  11. Offline

    xTrollxDudex

    HGPDev
    ._. You're looping through each player in the array of players.
     
  12. HGPDev It gets all of the players but the method stops the moment it hits a return. You're stopping the method before you even get to the rest of the players.
     
  13. Offline

    HGPDev

    xTrollxDudex What do you mean ? I dont follow you

    AdamQpzm Oh Ill ajust it. Just a sec.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jun 7, 2016
  14. Offline

    Zethariel

    HGPDev using the "return" keyword is equivalent to telling the application to "don't do anything else, we're done, exit this method". After 1 loop you are doing just that. Hence just 1 result.
     
  15. Offline

    HGPDev

    Works! Thanks
     
    AdamQpzm likes this.
  16. Use
    Code:java
    1. continue;

    if you want to break out of it but let it iterate over the rest of the players.
     
  17. Offline

    HGPDev

    Cupcakes69 Doesnt work now... ;/ I dont know. Worked yesterday
     
Thread Status:
Not open for further replies.

Share This Page