GrimoN

Untitled

Jun 10th, 2015
258
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.08 KB | None | 0 0
  1. public class FreezeEff
  2. extends Effect{
  3. private Expression<Player> players;
  4. private int number;
  5.  
  6.  
  7.  
  8. @SuppressWarnings("unchecked")
  9. @Override
  10. public boolean init(Expression<?>[] exprs, int matchedPattern, Kleenean isDelayed, ParseResult parseResult) {
  11. this.players = (Expression<Player>) exprs[0];
  12. number = matchedPattern;
  13. return true;
  14. }
  15.  
  16. @Override
  17. public String toString(@Nullable Event e, boolean debug){
  18. return "freeze/unfreeze " + this.players.toString();
  19. }
  20.  
  21. @Override
  22. protected void execute(Event e) {
  23. if(this.players instanceof Player){
  24. switch (this.number)
  25. {
  26. case 0:
  27. freeze(e);
  28. break;
  29. case 1:
  30. unfreeze(e);
  31. break;
  32. }
  33. }
  34. }
  35.  
  36.  
  37. private void freeze(Event e) {
  38. for (Player p : this.players.getAll(e)) {
  39. if(FreezeEvent.isFrozen(p)){
  40. return;
  41. }
  42. FreezeEvent.freeze(p);
  43.  
  44. }
  45. }
  46.  
  47. private void unfreeze(Event e) {
  48. for (Player p : this.players.getAll(e)) {
  49. if(!FreezeEvent.isFrozen(p)){
  50. return;
  51. }
  52. FreezeEvent.unfreeze(p);
  53.  
  54. }
  55. }
  56.  
  57. }
Advertisement
Add Comment
Please, Sign In to add comment