SuspectedHatesYou

Untitled

Jan 25th, 2016
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.63 KB | None | 0 0
  1. package me.suspected.cryogenic;
  2.  
  3. import java.util.ArrayList;
  4.  
  5. import org.bukkit.Bukkit;
  6. import org.bukkit.ChatColor;
  7. import org.bukkit.command.Command;
  8. import org.bukkit.command.CommandSender;
  9. import org.bukkit.entity.Damageable;
  10. import org.bukkit.entity.Player;
  11. import org.bukkit.event.EventHandler;
  12. import org.bukkit.event.Listener;
  13. import org.bukkit.event.player.PlayerJoinEvent;
  14. import org.bukkit.event.player.PlayerMoveEvent;
  15. import org.bukkit.event.player.PlayerQuitEvent;
  16. import org.bukkit.plugin.java.JavaPlugin;
  17.  
  18.  
  19. public class cryogenic extends JavaPlugin implements Listener{
  20.  
  21.  
  22. //Package names should not begin upper-case
  23.  
  24. public ArrayList<String> frozenPlayers = new ArrayList<String>();
  25. private ArrayList<Player> vanished = new ArrayList<Player>();
  26. public void onEnable(){
  27. frozenPlayers.clear();
  28. Bukkit.getPluginManager().registerEvents((Listener) this, this);
  29. }
  30. public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
  31. if(commandLabel.equalsIgnoreCase("heal")){
  32. if(args.length == 0){
  33. if(sender instanceof Player){
  34. Player p = (Player)sender;
  35. Damageable dm = p;
  36.  
  37. p.setHealth(dm.getMaxHealth());
  38. }
  39. }else{
  40. switch(args.length){
  41. case 1:
  42. Player p = Bukkit.getPlayerExact(args[0]);
  43. if(p == null){
  44. sender.sendMessage(ChatColor.GRAY + "[" + ChatColor.YELLOW + "Cryogenic" + ChatColor.GRAY + "]" + ChatColor.DARK_AQUA + ">+" + ChatColor.BOLD + ChatColor.RED + " " + "That player is offline!");
  45. //You forgot to return here if the player is null
  46. return false;
  47. }
  48. Damageable dm = p;
  49. p.setHealth(dm.getMaxHealth());
  50. p.sendMessage(ChatColor.GRAY + "[" + ChatColor.YELLOW + "Cryogenic" + ChatColor.GRAY + "]" + " " + ChatColor.GOLD + ChatColor.BOLD + "You were healed!");
  51. return true; //Use return true/false instead of break
  52.  
  53. }
  54. }
  55. }
  56. if(commandLabel.equalsIgnoreCase("freeze")){
  57.  
  58. //Removed a bad arg length check from here
  59.  
  60. switch(args.length){ //Although it may be good practice for you to use a switch statement,
  61. //it might be better to use ifs so if you want to act upon the case of the command lacking or containing too many arguments you may
  62. case 1:
  63. Player p = Bukkit.getPlayer(args[0]);
  64. if(p == null){
  65. sender.sendMessage(ChatColor.GRAY + "[" + ChatColor.YELLOW + "Cryogenic" + ChatColor.GRAY + "]" + ChatColor.DARK_AQUA + ">" + ChatColor.BOLD + ChatColor.RED + " " + "That player is not online!");
  66. }else{
  67. if(frozenPlayers.contains(p.getName())){
  68. frozenPlayers.remove(p.getName());
  69. p.sendMessage(ChatColor.GRAY + "[" + ChatColor.YELLOW + "Cryogenic" + ChatColor.GRAY + "]" + ChatColor.DARK_AQUA + ">" + ChatColor.RED + ChatColor.BOLD+ " " + "You have been unfrozen!");
  70. }else{
  71. frozenPlayers.add(p.getName());
  72. p.sendMessage(ChatColor.GRAY + "[" + ChatColor.YELLOW + "Cryogenic" + ChatColor.GRAY + "]" + ChatColor.DARK_AQUA + ">" + ChatColor.RED + ChatColor.BOLD + " " + "You have been frozen by " + sender.getName() + "."); }
  73. }
  74. return true;
  75. }
  76.  
  77. }
  78. return false;
  79. }
  80.  
  81. @EventHandler
  82. public void onPlayerMove(PlayerMoveEvent e){
  83. if(frozenPlayers.contains(e.getPlayer().getName())){
  84. e.getPlayer().teleport(e.getPlayer());
  85. e.getPlayer().sendMessage(ChatColor.GRAY + "[" + ChatColor.YELLOW + "Cryogenic" + ChatColor.GRAY + "]" + ChatColor.DARK_AQUA + ">" + ChatColor.DARK_RED + ChatColor.BLUE + " " + "You are frozen!");
  86. }else{
  87.  
  88. }
  89. Player p = (Player) sender;
  90. if (cmd.getName().equalsIgnoreCase("vanish")){
  91. if(sender.hasPermission("cryogenicvanish.vanish"));
  92.  
  93. if (!vanished.contains(p)) {
  94. for (Player pl : Bukkit.getServer().getOnlinePlayers()) {
  95. pl.hidePlayer(p);
  96. }
  97. vanished.add(p);
  98. p.sendMessage(ChatColor.GRAY + "[" + ChatColor.YELLOW + "Cryogenic" + ChatColor.GRAY + "]" + ChatColor.GREEN + ChatColor.BOLD + " " + "You have been vanished!");
  99. }
  100. else {
  101. for (Player pl : Bukkit.getServer().getOnlinePlayers()) {
  102. pl.showPlayer(p);
  103. }
  104. vanished.remove(p);
  105. p.sendMessage(ChatColor.GRAY + "[" + ChatColor.YELLOW + "Cryogenic" + ChatColor.GRAY + "]" + ChatColor.GREEN + ChatColor.BOLD + " " + "You have been unvanished!");
  106. }
  107. }
  108. }
  109. }
  110.  
  111. @EventHandler
  112. public void onPlayerJoin(PlayerJoinEvent e) {
  113. for (Player p : vanished) {
  114. e.getPlayer().hidePlayer(p);
  115. }
  116. }
  117.  
  118. @EventHandler
  119. public void onPlayerLeave(PlayerQuitEvent e) {
  120. vanished.remove(e.getPlayer());
  121. }
  122. //You don't always need an else statement after an if
  123. {
  124. }
  125. }
Advertisement
Add Comment
Please, Sign In to add comment