public void CheckNextMove(DramaAction thisAction) { thisAction.FinishCurrentAction(); if (thisAction.actionFinish) { NextFrame(); return; } }
public void CheckNextMove(BaseToolBehavior thisTool, DramaAction thisAction) { thisAction.FinishCurrentAction(); if (thisAction.actionFinish) { NextFrame(); return; } thisTool.OrderMovement(thisAction.actorsPosition[thisAction.actorPositionIdx], () => CheckNextMove(thisTool, thisAction)); }
public void CheckNextMove(BaseCharacter thisCharacter, DramaAction thisAction) { thisAction.FinishCurrentAction(); if (thisAction.actionFinish) { NextFrame(); return; } ScenePointBehavior tmp = ScenePointPathfinder.GetInstance.ObtainNearestScenePoint(thisAction.actorsPosition[thisAction.actorPositionIdx]); thisCharacter.OrderMovement(tmp, () => CheckNextMove(thisCharacter, thisAction)); thisCharacter.OrderToFace((FacingDirection)thisAction.facingDirection[thisAction.actorPositionIdx]); thisCharacter.UpdateCharacterState(thisAction.characterStates[thisAction.actorPositionIdx]); }