Leymooo

Untitled

Feb 12th, 2016
163
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.20 KB | None | 0 0
  1. //
  2. // Decompiled by Procyon v0.5.30
  3. //
  4.  
  5. package ru.Keksik9000.AuthCore;
  6.  
  7. import com.google.common.io.ByteArrayDataOutput;
  8. import com.google.common.io.ByteStreams;
  9. import org.bukkit.command.Command;
  10. import org.bukkit.command.CommandSender;
  11. import org.bukkit.event.player.PlayerJoinEvent;
  12. import org.bukkit.event.player.PlayerKickEvent;
  13. import org.bukkit.event.block.BlockPhysicsEvent;
  14. import org.bukkit.event.entity.PlayerDeathEvent;
  15. import org.bukkit.event.player.PlayerQuitEvent;
  16. import org.bukkit.event.entity.FoodLevelChangeEvent;
  17. import org.bukkit.event.block.BlockBurnEvent;
  18. import org.bukkit.event.entity.EntityDamageEvent;
  19. import org.bukkit.event.player.PlayerPortalEvent;
  20. import fr.xephi.authme.events.LoginEvent;
  21. import org.bukkit.entity.Player;
  22. import fr.xephi.authme.AuthMe;
  23. import org.bukkit.event.player.PlayerLoginEvent;
  24. import org.bukkit.event.player.PlayerCommandPreprocessEvent;
  25. import org.bukkit.event.player.AsyncPlayerChatEvent;
  26. import org.bukkit.event.EventHandler;
  27. import org.bukkit.event.player.PlayerInteractEvent;
  28. import com.comphenix.protocol.events.PacketListener;
  29. import com.comphenix.protocol.events.PacketEvent;
  30. import com.comphenix.protocol.events.PacketAdapter;
  31. import com.comphenix.protocol.PacketType;
  32. import com.comphenix.protocol.ProtocolLibrary;
  33. import org.bukkit.plugin.Plugin;
  34. import org.bukkit.Bukkit;
  35. import org.bukkit.event.Listener;
  36. import org.bukkit.plugin.java.JavaPlugin;
  37.  
  38. public class Main extends JavaPlugin implements Listener
  39. {
  40. private String msg_no_chat;
  41. private String server;
  42. private boolean portals;
  43. private boolean chat;
  44.  
  45. public void onEnable() {
  46. this.saveDefaultConfig();
  47. Bukkit.getPluginManager().registerEvents((Listener)this, (Plugin)this);
  48. Bukkit.getMessenger().registerOutgoingPluginChannel((Plugin)this, "BungeeCord");
  49. this.msg_no_chat = this.getConfig().getString("messages.no-chat").replace('&', '§');
  50. this.server = this.getConfig().getString("redirect-server");
  51. this.portals = this.getConfig().getBoolean("use-portals");
  52. this.chat = this.getConfig().getBoolean("deny-chat");
  53. ProtocolLibrary.getProtocolManager().addPacketListener((PacketListener)new PacketAdapter(this, new PacketType[] { PacketType.Play.Server.PLAYER_INFO }) {
  54. public void onPacketSending(final PacketEvent e) {
  55. e.setCancelled(true);
  56. }
  57. });
  58. }
  59.  
  60. @EventHandler
  61. public void onInteract(final PlayerInteractEvent e) {
  62. if (!e.getPlayer().isOp()) {
  63. e.setCancelled(true);
  64. }
  65. }
  66.  
  67. @EventHandler
  68. public void onChat(final AsyncPlayerChatEvent e) {
  69. if (this.chat) {
  70. e.getPlayer().sendMessage(this.msg_no_chat);
  71. e.setCancelled(true);
  72. }
  73. }
  74.  
  75. @EventHandler
  76. public void onCommand(final PlayerCommandPreprocessEvent e) {
  77. final String m = e.getMessage();
  78. if (this.chat) {
  79. if (m.startsWith("/l") | m.startsWith("/login") | m.startsWith("/reg") | m.startsWith("/register") | m.equals("/setspawn")) {
  80. return;
  81. }
  82. e.setCancelled(true);
  83. e.getPlayer().sendMessage(this.msg_no_chat);
  84. }
  85. }
  86.  
  87. @EventHandler
  88. public void onLogin(final PlayerLoginEvent e) {
  89. final Player p = e.getPlayer();
  90. if (AuthMe.getInstance().api.isAuthenticated(p)) {
  91. this.sendServer(p);
  92. }
  93. }
  94.  
  95. @EventHandler
  96. public void onLogin(final LoginEvent e) {
  97. if (e.isLogin()) {
  98. this.sendServer(e.getPlayer());
  99. }
  100. }
  101.  
  102. @EventHandler
  103. public void onPortal(final PlayerPortalEvent e) {
  104. if (this.portals) {
  105. this.sendServer(e.getPlayer());
  106. e.setCancelled(true);
  107. }
  108. }
  109.  
  110. @EventHandler
  111. public void onDamage(final EntityDamageEvent e) {
  112. e.setCancelled(true);
  113. }
  114.  
  115. @EventHandler
  116. public void onBlockBurn(final BlockBurnEvent e) {
  117. e.setCancelled(true);
  118. }
  119.  
  120. @EventHandler
  121. public void onFeed(final FoodLevelChangeEvent e) {
  122. e.setCancelled(true);
  123. }
  124.  
  125. @EventHandler
  126. public void onQuit(final PlayerQuitEvent e) {
  127. e.setQuitMessage((String)null);
  128. }
  129.  
  130. @EventHandler
  131. public void onDeath(final PlayerDeathEvent e) {
  132. e.setDeathMessage((String)null);
  133. }
  134.  
  135. @EventHandler
  136. public void onPhysic(final BlockPhysicsEvent e) {
  137. e.setCancelled(true);
  138. }
  139.  
  140. @EventHandler
  141. public void onKick(final PlayerKickEvent e) {
  142. e.setLeaveMessage((String)null);
  143. }
  144.  
  145. @EventHandler
  146. public void onJoin(final PlayerJoinEvent e) {
  147. final Player p = e.getPlayer();
  148. e.setJoinMessage((String)null);
  149. p.teleport(p.getLocation().getWorld().getSpawnLocation());
  150. p.hidePlayer(p);
  151. }
  152.  
  153. public boolean onCommand(final CommandSender sender, final Command cmd, final String commandLabel, final String[] args) {
  154. if (commandLabel.equalsIgnoreCase("setspawn")) {
  155. if (sender instanceof Player) {
  156. final Player p = (Player)sender;
  157. p.getWorld().setSpawnLocation(p.getLocation().getBlockX(), p.getLocation().getBlockY(), p.getLocation().getBlockZ());
  158. p.sendMessage("§a\u0422\u043e\u0447\u043a\u0430 \u0441\u043f\u0430\u0432\u043d\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0430!");
  159. return true;
  160. }
  161. sender.sendMessage("§c\u042d\u0442\u0443 \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0433\u0440\u043e\u043a.");
  162. }
  163. return false;
  164. }
  165.  
  166. public void sendServer(final Player p) {
  167. try {
  168. final ByteArrayDataOutput out = ByteStreams.newDataOutput();
  169. out.writeUTF("Connect");
  170. out.writeUTF(this.server);
  171. p.sendPluginMessage((Plugin)this, "BungeeCord", out.toByteArray());
  172. }
  173. catch (NullPointerException ex) {}
  174. }
  175. }
Advertisement
Add Comment
Please, Sign In to add comment