internal override void Update(WorldView worldView, float deltaTime) { var cantMove = MovementCountdownTimeHasExpired() ? MoveStackToNextCell() : MoveStackBetweenCells(deltaTime); var canMove = !cantMove; worldView.Camera.LookAtPixel(LocationInWorld); if (canMove) { return; } if (StackView.StackHasMovementPoints) { StackView.Select(); } else { StackView.Unselect(); StackView.SelectNext(); } }
internal override void Update(WorldView worldView, float deltaTime) { var cantMove = MovementCountdownTimeHasExpired() ? MoveStackToNextCell() : MoveStackBetweenCells(deltaTime); var canMove = !cantMove; worldView.Camera.LookAtPixel(LocationInWorld); if (canMove) { return; } if (StackView.StackHasMovementPoints) // either reached final destination or may not move into cell { SetMovementPathToNewExploreLocation(worldView); } else // run out of movement points { StackView.Unselect(); StackView.SelectNext(); } }