IEnumerator FSMMain() { while (true) { isNewState = false; yield return(StartCoroutine(robotState.ToString())); } }
private void SetState(RobotState newState) { _robotState = newState; Debug.Log("State " + newState.ToString()); switch (newState) { case RobotState.Idle: _timeFromIdleStart = 0f; _targetCrate = null; IKEnabled = false; AnimatorEnabled = false; break; case RobotState.Grabbing: AnimatorEnabled = false; IKEnabled = true; break; case RobotState.Attaching: break; case RobotState.Throwing: IKEnabled = false; AnimatorEnabled = true; break; case RobotState.Finished: AnimatorEnabled = true; break; } }
public override Task <Empty> Robot(RobotState request, ServerCallContext context) { Debug.Log("Updating robot state " + request.ToString()); EventManager.PublishRobotStateUpdateEvent(request); return(Task.FromResult(emptyResponse)); }