void RemoveState() { AbstractGameState state = states.Peek(); StateChanged -= StateChanged; Game.Components.Remove(state); states.Pop(); }
/// This method is triggered by a keyboard shortcut in the main scene public void SailToNextAssigment() { AbstractGameState state = context.StateMachine.State; if (state is GameStateAssignment) { context.SetAssignmentCompleted(); } context.SetSailToAssignmentState(context.AssignmentIndex + 1, 1.5f); }
public override void Deactivate(AbstractGameState nextState) { foreach (var flock in birdFlocks) { flock.OnAdded.RemoveListener(OnBirdAdded); flock.OnDeleted.RemoveListener(OnBirdDeleted); } SetAllBirdsGazeButtons(false); turtleTimeline.stopped -= SkipBack; base.Deactivate(nextState); }
override public void Deactivate(AbstractGameState nextState) { foreach (GazeButton b in buttons) { b.OnSelected.RemoveAllListeners(); } EnableAllGazeButtons(false); poemTimeline.paused -= OnPoemFinished; base.Deactivate(nextState); }
override public void Deactivate(AbstractGameState nextState) { context.Boat.StartSteering.RemoveListener(context.Boat.StartSailing); context.Boat.StopSteering.RemoveListener(context.Boat.StopSailing); distanceWarning.Warn.RemoveListener(OnDistanceWarning); distanceWarning.ClearWarning.RemoveListener(OnClearWarning); targetLocation.Hit.RemoveListener(OnTargetHit); base.Deactivate(nextState); }
override public void Activate(AbstractGameState previousState) { base.Activate(previousState); context.Boat.StopSailing(); context.Boat.SetDrift(0); context.StopGameTimer(); context.DayNightTimeline.Resume(); // set the sun partyAnimation.MuteTracks(context.CompletedAssignments); StartTimeOut(); }
public override void Activate(AbstractGameState previousState) { base.Activate(previousState); context.DayNightTimeline.Resume(); // sun turtleTimeline.stopped += SkipBack; foreach (var flock in birdFlocks) { flock.OnAdded.AddListener(OnBirdAdded); flock.OnDeleted.AddListener(OnBirdDeleted); } SetAllBirdsGazeButtons(true); context.Boat.SetDrift(.125f); }
override public void Activate(AbstractGameState previousState) { base.Activate(previousState); context.Boat.StopSailing(); foreach (GazeButton b in buttons) { AddListenerToButton(b); } EnableAllGazeButtons(false); poemTimeline.paused += OnPoemFinished; }
override public void Activate(AbstractGameState previousState) { base.Activate(previousState); context.Boat.StartSteering.AddListener(context.Boat.StartSailing); context.Boat.StopSteering.AddListener(context.Boat.StopSailing); targetLocation.Hit.AddListener(OnTargetHit); distanceWarning.Warn.AddListener(OnDistanceWarning); distanceWarning.ClearWarning.AddListener(OnClearWarning); context.Boat.StartSailingWhenPaddleEnabled(); }
public override AbstractGameMove GetMove(AbstractGameState gameState) { var moveList = Game.GenerateMoves(gameState); foreach (var move in moveList) { var newState = Game.DoMoveOnState(gameState, move); if (Memory[Game.SerializeState(newState)] == GameValue.Win) { return(move); } } return(moveList[0]); }
public void ChangeState(AbstractGameState state, PlayerIndex?index) { while (states.Count > 0) { RemoveState(); } drawOrder = startDrawOrder; state.DrawOrder = drawOrder; drawOrder += drawOrderIncrement; AddState(state, index); OnStateChanged(); }
override public void Activate(AbstractGameState previousState) { base.Activate(previousState); const float fadeDuration = 1f; SteamVR_Fade.Start(Color.black, 0); DOVirtual.DelayedCall(1 + fadeDuration, () => { SteamVR_Fade.Start(Color.clear, fadeDuration); if (Application.isEditor && skipToAssignment != Assignments.NO_CHEAT) { context.SetSailToAssignmentState((int)skipToAssignment, 1f); } else { context.StateMachine.SetState(new GameStateNavigatorIntro(context)); } }); }
public abstract IList <AbstractGameMove> GenerateMoves(AbstractGameState state);
public abstract AbstractGameState DoMoveOnState(AbstractGameState state, AbstractGameMove move);
public abstract AbstractGameMove GetMove(AbstractGameState gameState);
public bool InitGameState(AbstractGameState state) { State = state; return(true); }
public abstract GameValue GetStatusValue(AbstractGameState gameState);
public override GameValue GetStatusValue(AbstractGameState gameState) { return(Memory[Game.SerializeState(gameState)]); }
public bool ContainsState(AbstractGameState state) => states.Contains(state);
public abstract GameValue PrimitiveValue(AbstractGameState state);
override public void Deactivate(AbstractGameState nextState) { navigatorIntroTimeline.stopped -= Next; base.Deactivate(nextState); }
override public void Activate(AbstractGameState previousState) { base.Activate(previousState); navigatorIntroTimeline.stopped += Next; }
override public void Deactivate(AbstractGameState nextState) { StopTimeOut(); base.Deactivate(nextState); }
public string SerializeState(AbstractGameState state) { return(JsonConvert.SerializeObject(state)); }
public override void Deactivate(AbstractGameState nextState) { turtleTimeline.stopped -= SkipBack; base.Deactivate(nextState); }