public TestActionState(EActionStateId inActionStateId, ActionStateInfo inActionStateInfo) : base(inActionStateId, inActionStateInfo) { OnStartCalled = false; OnUpdateCalled = false; OnEndCalled = false; }
public void Start_NullState_DoesNotSetState() { const EActionStateId expectedStartingActionState = EActionStateId.Null; _character.StartingState = expectedStartingActionState; _character.TestStart(); Assert.IsNull(_stateMachine.RequestedId); }
public void RequestActionState_SetsTrackToNewIdAndIsActionStateActiveReturnsTrue() { const EActionStateId expectedStateId = EActionStateId.Locomotion; const EActionStateMachineTrack changedTrack = EActionStateMachineTrack.Locomotion; _actionStateMachineComponent.RequestActionState(changedTrack, expectedStateId, new ActionStateInfo()); Assert.IsTrue(_actionStateMachineComponent.IsActionStateActiveOnTrack(changedTrack, expectedStateId)); }
public void Start_SetsLocomotionTrackToStartingState() { const EActionStateId expectedStartingActionState = EActionStateId.Spawning; _character.StartingState = expectedStartingActionState; _character.TestStart(); Assert.AreEqual(expectedStartingActionState, _stateMachine.RequestedId); Assert.AreEqual(EActionStateMachineTrack.Locomotion, _stateMachine.RequestedTrack); }
public void IsActionStateActiveOnTrack_CorrectTrackWrongId_False() { const EActionStateId wrongId = EActionStateId.Null; const EActionStateId expectedStateId = EActionStateId.Locomotion; const EActionStateMachineTrack changedTrack = EActionStateMachineTrack.Locomotion; _actionStateMachineComponent.RequestActionState(changedTrack, expectedStateId, new ActionStateInfo()); Assert.IsFalse(_actionStateMachineComponent.IsActionStateActiveOnTrack(changedTrack, wrongId)); }
public void RequestActionState_SetsCallsEndOnPriorActionStateAndStartOnNewOne() { const EActionStateId newStateId = EActionStateId.Null; const EActionStateId oldStateId = EActionStateId.Locomotion; const EActionStateMachineTrack changedTrack = EActionStateMachineTrack.Locomotion; _actionStateMachineComponent.RequestActionState(changedTrack, oldStateId, new ActionStateInfo()); var oldActionState = (TestActionState)_actionStateMachineComponent.GetActionStateOnTrack(changedTrack); _actionStateMachineComponent.RequestActionState(changedTrack, newStateId, new ActionStateInfo()); var newActionState = (TestActionState)_actionStateMachineComponent.GetActionStateOnTrack(changedTrack); Assert.IsTrue(oldActionState.OnEndCalled); Assert.IsTrue(newActionState.OnStartCalled); }
public bool IsActionStateActiveOnTrack(EActionStateMachineTrack selectedTrack, EActionStateId expectedId) { IsActionStateActiveTrackQuery = selectedTrack; IsActionStateActiveIdQuery = expectedId; return(IsActionStateActiveResult); }
public void RequestActionState(EActionStateMachineTrack selectedTrack, EActionStateId inId, ActionStateInfo inInfo) { RequestedTrack = selectedTrack; RequestedId = inId; RequestedInfo = inInfo; }
public ActionState CreateActionState(EActionStateId inId, ActionStateInfo inInfo) { return(new TestActionState(inId, inInfo)); }
// IActionStateCreatorInterface public ActionState CreateActionState(EActionStateId inId, ActionStateInfo inInfo) { return(_definitions.Definitions[inId](inInfo)); }
public virtual bool IsActionStateActiveOnTrack(EActionStateMachineTrack selectedTrack, EActionStateId expectedId) { return(ActiveActionStates[selectedTrack].ActionStateId == expectedId); }
// IActionStateMachineInterface public virtual void RequestActionState(EActionStateMachineTrack selectedTrack, EActionStateId inId, ActionStateInfo inInfo) { var newState = Creator.CreateActionState(inId, inInfo); ActiveActionStates[selectedTrack].End(); ActiveActionStates[selectedTrack] = newState; newState.Start(); }
protected ActionState(EActionStateId inActionStateId, ActionStateInfo inInfo) { ActionStateId = inActionStateId; Info = inInfo; }