public MoveManager(BattleActionResolver resolver, TurnPhaseWatcher phaseWatcher, HashSet <MoveContext> moveContexts)
 {
     this.rand = new System.Random();
     this.remainingMoveRequests = new HashSet <MoveContext>();
     this.resolver              = resolver;
     this.phaseWatcher          = phaseWatcher;
     this.remainingMoveRequests = moveContexts;
 }
 public Watchers()
 {
     this.turnPhaseWatcher    = new TurnPhaseWatcher();
     this.battleActionWatcher = new BattleActionWatcher();
 }
 public void subscribe(TurnPhaseWatcher watcher)
 {
     watcher.listen(this, TurnPhase.END);
 }