Advertisement
Guest User

Untitled

a guest
Sep 28th, 2014
194
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.70 KB | None | 0 0
  1. package me.TheCraftMine.ExKay;
  2.  
  3. import java.util.ArrayList;
  4. import org.bukkit.Bukkit;
  5. import org.bukkit.ChatColor;
  6. import org.bukkit.command.Command;
  7. import org.bukkit.command.CommandSender;
  8. import org.bukkit.configuration.file.FileConfiguration;
  9. import org.bukkit.entity.Entity;
  10. import org.bukkit.entity.Player;
  11. import org.bukkit.event.EventHandler;
  12. import org.bukkit.event.Listener;
  13. import org.bukkit.event.player.PlayerInteractEntityEvent;
  14. import org.bukkit.event.player.PlayerJoinEvent;
  15. import org.bukkit.event.player.PlayerQuitEvent;
  16. import org.bukkit.plugin.java.JavaPlugin;
  17.  
  18. public class remade extends JavaPlugin
  19. implements Listener
  20. {
  21. protected FileConfiguration config;
  22. private ArrayList<Player> vanished = new ArrayList<Player>();
  23.  
  24. public void onEnable()
  25. {
  26. this.config = getConfig();
  27. saveConfig();
  28. Bukkit.getServer().getPluginManager().registerEvents(this, this);
  29. getLogger().info("Fucker-ReMade Enabled");
  30. getLogger();
  31. saveDefaultConfig();
  32. }
  33.  
  34. public void onDisable() {
  35. getLogger().info("Fucker-ReMade Disabled");
  36. saveConfig();
  37. }
  38.  
  39. public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args)
  40. {
  41. if ((args.length >= 1) && ("reload".equalsIgnoreCase(args[0]))) {
  42. reloadConfig();
  43. sender.sendMessage("Reloaded configuration!");
  44. return true;
  45.  
  46. }
  47.  
  48. if (!(sender instanceof Player)) {
  49. sender.sendMessage(ChatColor.RED + "You cannot use this command.");
  50. return true;
  51.  
  52. }
  53.  
  54. if ((cmd.getName().equalsIgnoreCase("donate")) &&
  55. (args.length == 0)) {
  56. sender.sendMessage(ChatColor.AQUA + ">>" + ChatColor.GREEN + " Purchase ranks at: " + ChatColor.GOLD + "mc-en.enjin.com/webstore" + ChatColor.GREEN + ".");
  57. }
  58.  
  59. if (cmd.getName().equalsIgnoreCase("en"))
  60. {
  61. if (!sender.hasPermission("en.info")) {
  62. sender.sendMessage(ChatColor.RED + "You don't have permission to use this command.");
  63. return true;
  64.  
  65. }
  66. if (args.length == 0) {
  67. sender.sendMessage(ChatColor.YELLOW + "Empire Nation Plugin");
  68. sender.sendMessage(ChatColor.GREEN + "Version: " + ChatColor.GOLD + getConfig().getString("Version"));
  69. sender.sendMessage(ChatColor.GREEN + "Author:" + ChatColor.GOLD + " ExKay");
  70. sender.sendMessage(ChatColor.GREEN + "Contains Subplugins:" + ChatColor.GOLD + " TCMChat, TCMFilter, TCMStaffList, TCMAdmin");
  71. }
  72.  
  73. }
  74.  
  75. if ((cmd.getName().equalsIgnoreCase("staff")) &&
  76. (args.length == 0)) {
  77. sender.sendMessage(ChatColor.GREEN + "Empire Nation Staff List");
  78. sender.sendMessage(ChatColor.DARK_GRAY + "[" + ChatColor.DARK_AQUA + "Owner" + ChatColor.DARK_GRAY + "]" + ChatColor.GRAY + ": " + ChatColor.WHITE + getConfig().getString("Owner"));
  79. sender.sendMessage(ChatColor.DARK_GRAY + "[" + ChatColor.DARK_RED + "Admin" + ChatColor.DARK_GRAY + "]" + ChatColor.GRAY + ": " + ChatColor.WHITE + getConfig().getString("Admin"));
  80. sender.sendMessage(ChatColor.DARK_GRAY + "[" + ChatColor.RED + "Manager" + ChatColor.DARK_GRAY + "]" + ChatColor.GRAY + ": " + ChatColor.WHITE + getConfig().getString("Manager"));
  81. sender.sendMessage(ChatColor.DARK_GRAY + "[" + ChatColor.DARK_PURPLE + "Moderator" + ChatColor.DARK_GRAY + "]" + ChatColor.GRAY + ": " + ChatColor.WHITE + getConfig().getString("Moderator"));
  82. sender.sendMessage(ChatColor.DARK_GRAY + "[" + ChatColor.BLUE + "Helper" + ChatColor.DARK_GRAY + "]" + ChatColor.GRAY + ": " + ChatColor.WHITE + getConfig().getString("Helper"));
  83. }
  84. String message;
  85. String broadcastMessage;
  86. if (cmd.getName().equalsIgnoreCase("abc"))
  87. {
  88. if (!sender.hasPermission("en.abc")) {
  89. sender.sendMessage(ChatColor.RED + "You don't have permission to use this command.");
  90.  
  91. return true;
  92.  
  93. }
  94. if (args.length == 0) {
  95. sender.sendMessage(ChatColor.DARK_RED + "You need to type a message to perform that command!");
  96. }
  97. if (args.length > 0) {
  98. StringBuilder sb = new StringBuilder();
  99. for (int i = 0; i < args.length; i++) {
  100. sb.append(args[i]).append(" ");
  101. }
  102. message = sb.toString().trim();
  103. broadcastMessage = ChatColor.translateAlternateColorCodes("&".charAt(0), message);
  104. Bukkit.broadcastMessage(broadcastMessage);
  105. }
  106. }
  107. if (cmd.getName().equalsIgnoreCase("vanish"))
  108. {
  109. if (!sender.hasPermission("en.vanish")) {
  110. sender.sendMessage(ChatColor.RED + "You don't have permission to use this command.");
  111. return true;
  112. }
  113.  
  114. }
  115.  
  116. return false;
  117.  
  118. }
  119.  
  120. @EventHandler
  121. public void onPlayerInteractEntity(PlayerInteractEntityEvent event)
  122. {
  123. if ((event.getRightClicked() instanceof Player)) {
  124. Player player = event.getPlayer();
  125.  
  126. if ((!duckEjectPassenger(player, event.getRightClicked())) && (playerCanRide(player))) {
  127. Player vehicle = getVehicle(player);
  128.  
  129. if (vehicle == null) {
  130. vehicle = (Player)event.getRightClicked();
  131. Player duck = getRootVehicle(vehicle);
  132.  
  133. if (duck.hasPermission("en.beridden"))
  134. getLastPassenger(vehicle).setPassenger(player);
  135. }
  136. else
  137. {
  138. vehicle.eject(); }
  139. }
  140. }
  141. }
  142.  
  143. private boolean playerCanRide(Player player)
  144. {
  145. return (player.hasPermission("en.ride")) && (player.getPassenger() == null);
  146. }
  147. private boolean duckEjectPassenger(Player duck, Entity passenger) {
  148. if ((duck.hasPermission("en.eject")) &&
  149. (passenger.equals(duck.getPassenger()))) {
  150. duck.eject();
  151.  
  152. return true;
  153. }
  154.  
  155. return false;
  156.  
  157. }
  158.  
  159. private Player getRootVehicle(Player vehicle) {
  160. while (getVehicle(vehicle) != null) {
  161. vehicle = getVehicle(vehicle);
  162. }
  163.  
  164. return vehicle;
  165.  
  166. }
  167.  
  168. private Player getLastPassenger(Player vehicle) {
  169. while ((vehicle.getPassenger() != null) && ((vehicle.getPassenger() instanceof Player))) {
  170. vehicle = (Player)vehicle.getPassenger();
  171. }
  172.  
  173. return vehicle;
  174.  
  175. }
  176.  
  177. @SuppressWarnings("deprecation")
  178. private Player getVehicle(Player player) {
  179. for (Player onlinePlayer : getServer().getOnlinePlayers()) {
  180. Entity passenger = onlinePlayer.getPassenger();
  181.  
  182. if (((passenger instanceof Player)) && (passenger.getEntityId() == player.getEntityId())) {
  183. return onlinePlayer;
  184. }
  185. }
  186.  
  187. return null;
  188. }
  189.  
  190. @EventHandler
  191. public void onPlayerJoin(PlayerJoinEvent e)
  192. {
  193. for (Player p : this.vanished)
  194. e.getPlayer().hidePlayer(p);
  195. }
  196.  
  197. @EventHandler
  198. public void onPlayerLeave(PlayerQuitEvent e)
  199. {
  200. this.vanished.remove(e.getPlayer());
  201. }
  202. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement