// Update is called once per frame void Update() { if (Input.GetKeyDown(KeyCode.Space)) { Debug.Log("Space"); activeSet = !activeSet; _myRelayNode.MmInvoke(MmMethod.SetActive, activeSet, new MmMetadataBlock(MmLevelFilter.Child, MmActiveFilter.All)); } if (Input.GetKeyDown(KeyCode.Alpha1)) { TutorialRelaySwitch.MmInvoke(MmMethod.Switch, "Item1", new MmMetadataBlock(MmLevelFilter.Self, MmActiveFilter.All)); } if (Input.GetKeyDown(KeyCode.Alpha2)) { TutorialRelaySwitch.MmInvoke(MmMethod.Switch, "Item2", new MmMetadataBlock(MmLevelFilter.Self, MmActiveFilter.All)); } if (Input.GetKeyDown(KeyCode.Alpha3)) { TutorialRelaySwitch.MmInvoke(MmMethod.Switch, "Item3", new MmMetadataBlock(MmLevelFilter.Self, MmActiveFilter.All)); } }
/// <summary> /// Move current task pointer to the next task info. /// If the instance can, it will attempt to trigger a switch message to /// move the FSM to the next task state. /// </summary> public virtual void ProceedToNextTask() { if (SavePartialProgression) { TaskInfoCollectionLoader.SaveCurrentTaskSequenceValue(CurrentTaskInfo.UserSequence); } currentTaskInfo = (currentTaskInfo == null) ? TaskInfos.First : currentTaskInfo.Next; if (ShouldTriggerSwitch()) { TasksNode.MmInvoke(MmMethod.Switch, CurrentTaskInfo.TaskName, new MmMetadataBlock(MmLevelFilter.Self, MmActiveFilter.All)); } ApplySequenceID(); }