/src/me/polaris/superpoke/SuperPoke.java

https://github.com/polaris120990/Super-Poke · Java · 165 lines · 153 code · 12 blank · 0 comment · 30 complexity · e79f6e7ea4a444e103efef30533756d0 MD5 · raw file

  1. package me.polaris.superpoke;
  2. import java.util.logging.Logger;
  3. import org.bukkit.Bukkit;
  4. import org.bukkit.ChatColor;
  5. import org.bukkit.Effect;
  6. import org.bukkit.command.Command;
  7. import org.bukkit.command.CommandSender;
  8. import org.bukkit.entity.Player;
  9. import org.bukkit.plugin.PluginDescriptionFile;
  10. import org.bukkit.plugin.java.JavaPlugin;
  11. public class SuperPoke extends JavaPlugin
  12. {
  13. public static SuperPoke plugin;
  14. public final Logger logger = Logger.getLogger("Minecraft");
  15. @Override
  16. public void onEnable()
  17. {
  18. PluginDescriptionFile pdfFile = this.getDescription();
  19. this.logger.info("[" + pdfFile.getName() + "] v" + pdfFile.getVersion() + " has been enabled.");
  20. }
  21. @Override
  22. public void onDisable()
  23. {
  24. PluginDescriptionFile pdfFile = this.getDescription();
  25. this.logger.info("[" + pdfFile.getName() + "] has been disabled.");
  26. }
  27. public boolean onCommand(CommandSender sender, Command cmd, String CommandLabel, String[] args)
  28. {
  29. readCommand((Player) sender, CommandLabel, args);
  30. return false;
  31. }
  32. public void readCommand(Player sender, String command, String[] args)
  33. {
  34. if(command.equalsIgnoreCase("poke"))
  35. {
  36. if(sender.isOp())
  37. {
  38. if(args.length == 0)
  39. {
  40. PluginDescriptionFile pdfFile = this.getDescription();
  41. sender.sendMessage(ChatColor.GOLD + "SuperPoke v" + pdfFile.getVersion());
  42. sender.sendMessage(ChatColor.GOLD + "For a commands list type /poke help");
  43. return;
  44. }
  45. else if(args[0].equalsIgnoreCase("poke"))
  46. {
  47. if(args.length > 1)
  48. {
  49. Player[] players = Bukkit.getOnlinePlayers();
  50. int i = 0;
  51. while(i < players.length)
  52. {
  53. if(players[i].getName().equalsIgnoreCase(args[1]))
  54. {
  55. if(players[i].getName().equalsIgnoreCase(sender.getName()))
  56. {
  57. sender.sendMessage(ChatColor.GOLD + "You cannot poke yourself!");
  58. return;
  59. }
  60. else
  61. {
  62. players[i].playEffect(players[i].getLocation(), Effect.BOW_FIRE, 1);
  63. players[i].sendMessage(ChatColor.AQUA + sender.getName() + ChatColor.GOLD + " has poked you!");
  64. sender.sendMessage(ChatColor.GOLD + "You have poked " + ChatColor.AQUA + players[i].getName());
  65. Bukkit.broadcastMessage(ChatColor.AQUA + sender.getName() + ChatColor.GOLD + " has poked " + ChatColor.AQUA + players[i].getName());
  66. return;
  67. }
  68. }
  69. i++;
  70. }
  71. }
  72. else if(args.length == 1)
  73. {
  74. sender.sendMessage(ChatColor.RED + "Please include a player name after the poke command");
  75. return;
  76. }
  77. }
  78. else if(args[0].equalsIgnoreCase("throw"))
  79. {
  80. if(args.length == 3)
  81. {
  82. Player[] players = Bukkit.getOnlinePlayers();
  83. int i = 0;
  84. while(i < players.length)
  85. {
  86. if(players[i].getName().equalsIgnoreCase(args[1]))
  87. {
  88. if(players[i].getName().equalsIgnoreCase(sender.getName()))
  89. {
  90. sender.sendMessage(ChatColor.GOLD + "You cannot throw something at yourself!!");
  91. return;
  92. }
  93. else
  94. {
  95. players[i].playEffect(players[i].getLocation(), Effect.BOW_FIRE, 1);
  96. players[i].sendMessage(ChatColor.AQUA + sender.getName() + ChatColor.GOLD + " has thrown a(n) " + args[2] + " at you!");
  97. sender.sendMessage(ChatColor.GOLD + "You have thrown a(n) " + args[2] + " at " + ChatColor.AQUA + players[i].getName());
  98. Bukkit.broadcastMessage(ChatColor.AQUA + sender.getName() + ChatColor.GOLD + " has thrown a(n) " + args[2] + " at " + ChatColor.AQUA + players[i].getName());
  99. return;
  100. }
  101. }
  102. i++;
  103. }
  104. sender.sendMessage(ChatColor.RED + "The player you tried to throw something at is offline!");
  105. }
  106. else sender.sendMessage(ChatColor.RED + "Insufficient amount of arguments.");
  107. }
  108. else if(args[0].equalsIgnoreCase("act"))
  109. {
  110. if(args.length == 3)
  111. {
  112. Player[] players = Bukkit.getOnlinePlayers();
  113. int i = 0;
  114. while(i < players.length)
  115. {
  116. if(players[i].getName().equalsIgnoreCase(args[1]))
  117. {
  118. if(players[i].getName().equalsIgnoreCase(sender.getName()))
  119. {
  120. sender.sendMessage(ChatColor.GOLD + "You have " + args[2] + " yourself!!");
  121. Bukkit.broadcastMessage(ChatColor.AQUA + sender.getName() + ChatColor.GOLD + " has " + args[2] + " himself/herself!");
  122. return;
  123. }
  124. else
  125. {
  126. players[i].playEffect(players[i].getLocation(), Effect.BOW_FIRE, 1);
  127. players[i].sendMessage(ChatColor.AQUA + sender.getName() + ChatColor.GOLD + " has " + args[2] + " you!");
  128. sender.sendMessage(ChatColor.GOLD + "You have " + args[2] + " " + ChatColor.AQUA + players[i].getName());
  129. Bukkit.broadcastMessage(ChatColor.AQUA + sender.getName() + ChatColor.GOLD + " has " + args[2] + " " + ChatColor.AQUA + players[i].getName());
  130. return;
  131. }
  132. }
  133. i++;
  134. }
  135. sender.sendMessage(ChatColor.RED + "The player you are trying to act upon is offline!");
  136. }
  137. else sender.sendMessage(ChatColor.RED + "Insufficient amount of arguments.");
  138. }
  139. else if(args[0].equalsIgnoreCase("help"))
  140. {
  141. sender.sendMessage(ChatColor.GOLD + "/poke : Version information");
  142. sender.sendMessage(ChatColor.GOLD + "/poke poke (player) : 'Pokes' a player");
  143. sender.sendMessage(ChatColor.GOLD + "/poke throw (player) (object) : 'Throws' something at a player");
  144. sender.sendMessage(ChatColor.GOLD + "/poke act (player) (past tense verb) : 'Does' something to a player");
  145. sender.sendMessage(ChatColor.GOLD + "NOTE: These commands just display messages for fun.");
  146. return;
  147. }
  148. else return;
  149. }
  150. else sender.sendMessage(ChatColor.RED + "You must be OP to use this command!!");
  151. }
  152. }
  153. }