public void PressAorX(ModeratorStep step) { switch (step) { case ModeratorStep.WaitForIamReady: { this.hasPressedButtonToStartRecordingAvatarMotion = true; break; } case ModeratorStep.WaitForObjectGrasped: case ModeratorStep.WaitForTaskFinished: case ModeratorStep.Judgement: case ModeratorStep.WaitForNextTask: { this.hasPressedButtonToStopRecordingAvatarMotion = true; break; } default: { SIGVerseLogger.Warn("This pressing A or X by the avatar is an invalid timing. step=" + step); break; } } }
// Use this for initialization void Start() { this.step = ModeratorStep.Initialize; this.isAllTaskFinished = false; this.interruptedReason = string.Empty; List <GameObject> graspables = this.tool.GetGraspables(); for (int i = 0; i < graspables.Count; i++) { Rigidbody rigidbody = graspables[i].GetComponent <Rigidbody>(); rigidbody.constraints = RigidbodyConstraints.FreezeRotation | RigidbodyConstraints.FreezePositionX | RigidbodyConstraints.FreezePositionZ; rigidbody.maxDepenetrationVelocity = 0.5f; StartCoroutine(this.tool.LoosenRigidbodyConstraints(rigidbody)); } this.bgmAudioSource.volume = Mathf.Clamp01(HandymanConfig.Instance.configFileInfo.bgmVolume); }
// Use this for initialization void Start() { this.step = ModeratorStep.Initialize; this.avatarStateStep = AvatarStateStep.Initialize; this.isAllTaskFinished = false; this.interruptedReason = string.Empty; if (this.executionMode == ExecutionMode.Competition) { this.mainPanelController.SetTaskMessageText(this.tool.GetTaskDetail()); } List <GameObject> graspables = this.tool.GetGraspables(); for (int i = 0; i < graspables.Count; i++) { Rigidbody rigidbody = graspables[i].GetComponent <Rigidbody>(); rigidbody.constraints = RigidbodyConstraints.FreezeRotation | RigidbodyConstraints.FreezePositionX | RigidbodyConstraints.FreezePositionZ; rigidbody.maxDepenetrationVelocity = 0.5f; StartCoroutine(this.tool.LoosenRigidbodyConstraints(rigidbody)); } this.bgmAudioSource.volume = Mathf.Clamp01(CleanupConfig.Instance.configFileInfo.bgmVolume); }
private void PostProcess() { SIGVerseLogger.Info("Task end"); if (HandymanConfig.Instance.numberOfTrials == HandymanConfig.Instance.configFileInfo.maxNumberOfTrials) { this.SendRosMessage(MsgMissionComplete, string.Empty); SIGVerseLogger.Info("All tasks finished."); StartCoroutine(this.tool.CloseRosConnections()); this.isAllTaskFinished = true; } else { StartCoroutine(this.tool.ClearRosConnections()); this.step = ModeratorStep.WaitForNextTask; } }
private void PostProcess() { SIGVerseLogger.Info("Task end"); if (CleanupConfig.Instance.numberOfTrials == CleanupConfig.Instance.configFileInfo.maxNumberOfTrials) { this.SendRosMessage(MsgMissionComplete, string.Empty); StartCoroutine(this.tool.CloseRosConnections()); StartCoroutine(this.DisplayEndMessage()); this.isAllTaskFinished = true; } else { this.tool.AddSpeechQueModerator("Let's go to the next session"); StartCoroutine(this.tool.ClearRosConnections()); this.step = ModeratorStep.WaitForNextTask; } }