Advertisement
Guest User

Untitled

a guest
Jan 30th, 2015
187
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package me.virtualbyte.bytecore.listeners;
  2.  
  3. import me.virtualbyte.bytecore.BytePlugin;
  4. import me.virtualbyte.bytecore.api.events.PlayerMoveBlockEvent;
  5. import org.bukkit.event.EventHandler;
  6. import org.bukkit.event.Listener;
  7. import org.bukkit.event.player.PlayerMoveEvent;
  8.  
  9. import java.lang.reflect.InvocationTargetException;
  10. import java.lang.reflect.Method;
  11. import java.util.EventListener;
  12.  
  13. /**
  14. * ByteCore - Copyright 2015 VirtualByte (Lewes D. B.)
  15. */
  16. public class PlayerMoveBlockCaller implements Listener {
  17.  
  18. private BytePlugin plugin;
  19.  
  20. public PlayerMoveBlockCaller(BytePlugin plugin) {
  21. this.plugin = plugin;
  22. }
  23.  
  24. @EventHandler
  25. public void onPlayerMoveEvent(PlayerMoveEvent event) {
  26. if(event.getFrom().getBlockX() != event.getTo().getBlockX() ||
  27. event.getFrom().getBlockZ() != event.getFrom().getBlockZ()) {
  28. for(Listener listener : plugin.getListeners()) {
  29. for (Method method : listener.getClass().getMethods()){
  30. if(method.getAnnotations().length == 1) {
  31. if(method.getAnnotations()[0].annotationType().equals(EventListener.class) {
  32. if (method.getParameters()[0].getType().equals(PlayerMoveBlockEvent.class)) {
  33. try {
  34. method.invoke(new PlayerMoveBlockEvent(event.getPlayer(), event.getFrom(), event.getTo()));
  35. } catch (IllegalAccessException e) {
  36. } catch (InvocationTargetException e) {
  37. }
  38. }
  39. }
  40. }
  41. }
  42. }
  43. }
  44. }
  45.  
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement