Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class FreezeEff
- extends Effect{
- private Expression<Player> players;
- private int number;
- @SuppressWarnings("unchecked")
- @Override
- public boolean init(Expression<?>[] exprs, int matchedPattern, Kleenean isDelayed, ParseResult parseResult) {
- this.players = (Expression<Player>) exprs[0];
- number = matchedPattern;
- return true;
- }
- @Override
- public String toString(@Nullable Event e, boolean debug){
- return "freeze/unfreeze " + this.players.toString();
- }
- @Override
- protected void execute(Event e) {
- if(this.players instanceof Player){
- switch (this.number)
- {
- case 0:
- freeze(e);
- break;
- case 1:
- unfreeze(e);
- break;
- }
- }
- }
- private void freeze(Event e) {
- for (Player p : this.players.getAll(e)) {
- if(FreezeEvent.isFrozen(p)){
- return;
- }
- FreezeEvent.freeze(p);
- }
- }
- private void unfreeze(Event e) {
- for (Player p : this.players.getAll(e)) {
- if(!FreezeEvent.isFrozen(p)){
- return;
- }
- FreezeEvent.unfreeze(p);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment