Guest User

Untitled

a guest
Jul 22nd, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.60 KB | None | 0 0
  1. package graindcafe.tribu.listeners;
  2.  
  3. import graindcafe.tribu.Tribu;
  4. import graindcafe.tribu.signs.TribuSign;
  5.  
  6. import org.bukkit.block.Block;
  7. import org.bukkit.block.Sign;
  8. import org.bukkit.event.Event;
  9. import org.bukkit.event.EventHandler;
  10. import org.bukkit.event.block.Action;
  11. import org.bukkit.event.player.PlayerInteractEvent;
  12. import org.bukkit.event.player.PlayerJoinEvent;
  13. import org.bukkit.event.player.PlayerQuitEvent;
  14. import org.bukkit.event.player.PlayerRespawnEvent;
  15. import org.bukkit.plugin.PluginManager;
  16.  
  17. public class TribuPlayerListener extends PlayerListener {
  18. private final Tribu plugin;
  19.  
  20. public TribuPlayerListener(Tribu instance) {
  21. plugin = instance;
  22. }
  23.  
  24. @EventHandler
  25. public void onPlayerInteract(PlayerInteractEvent event) {
  26. if (!event.isCancelled()) {
  27.  
  28. Block block = event.getClickedBlock();
  29. if (block != null) {
  30.  
  31. if (Sign.class.isInstance(block.getState()) && plugin.getLevel() != null) {
  32. if (plugin.isRunning()) {
  33. if (event.getAction() == Action.RIGHT_CLICK_BLOCK)
  34. plugin.getLevel().onSignClicked(event);
  35. } else if (event.getPlayer().isOp()) {
  36. if (plugin.getLevel().removeSign(block.getLocation()))
  37. event.getPlayer().sendMessage(plugin.getLocale("Message.TribuSignRemoved"));
  38. else if (plugin.getLevel().addSign(TribuSign.getObject(plugin, block.getLocation())))
  39. event.getPlayer().sendMessage(plugin.getLocale("Message.TribuSignAdded"));
  40. }
  41. } else if (plugin.isRunning()) {
  42. plugin.getLevel().onClick(event);
  43. }
  44. }
  45. }
  46. }
  47.  
  48. @EventHandler
  49. public void onPlayerJoin(PlayerJoinEvent event) {
  50.  
  51. plugin.addPlayer(event.getPlayer());
  52. }
  53.  
  54. @EventHandler
  55. public void onPlayerQuit(PlayerQuitEvent event) {
  56.  
  57. plugin.removePlayer(event.getPlayer());
  58. }
  59.  
  60. public void onPlayerRespawn(PlayerRespawnEvent event) {
  61. if (plugin.getLevel() != null) {
  62. plugin.setDead(event.getPlayer());
  63. event.setRespawnLocation(plugin.getLevel().getDeathSpawn());
  64. plugin.restoreTempInv(event.getPlayer());
  65. if (!plugin.isPlaying(event.getPlayer()))
  66. plugin.restoreInventory(event.getPlayer());
  67. }
  68. }
  69.  
  70. public void registerEvents(PluginManager pm) {
  71. if (plugin.isDedicatedServer()) {
  72. pm.registerEvent(Event.Type.PLAYER_JOIN, this, org.bukkit.event.EventPriority.NORMAL, plugin);
  73. }
  74. pm.registerEvent(Event.Type.PLAYER_QUIT, this, org.bukkit.event.EventPriority.NORMAL, plugin);
  75. pm.registerEvent(Event.Type.PLAYER_INTERACT, this, org.bukkit.event.EventPriority.NORMAL, plugin);
  76. pm.registerEvent(Event.Type.PLAYER_RESPAWN, this, org.bukkit.event.EventPriority.NORMAL, plugin);
  77. }
  78. }
Add Comment
Please, Sign In to add comment