Advanced: Manual Step Calls
Calling the steps using a script / button / event trigger.
在此,我们通过 TutorialSceneReferences (TSR) 中的公共封装方法手动处理步骤调用逻辑。
在将调用步骤的脚本中,创建对 TSR 的引用。例如:
[SerializeField] private TutorialSceneReferences sceneReferences;根据所需结果使用公共方法调用:
IsStepDisplaying(int stepIndex)
检查步骤当前是否正在播放。
if (IsStepDisplaying(0)) {}
IsStepDone(int stepIndex)
检查步骤是否已完成。
if (IsStepDone(0)) {}
IsStepManualStart(int stepIndex)
检查步骤是否需要手动触发。
if (IsStepManualStart(0)) {}
TurnOffTutorial()
关闭教程。在同一场景中切换不同教程时很有用。
sceneReferences.TurnOnffTutorial();
TurnOnTutorial()
启动场景上的教程。在Autostart设置为false时很有用。
sceneReferences.TurnOnTutorial();
TranslateAllTutorial(InputStringsScriptableObject.Language language)
将所有教程提示翻译成支持的语言之一。
sceneReferences.InputStringsScriptableObject.Language.Italian);
TranslateAllTutorialByString(string language)
将所有教程提示翻译成CSV文件中存在的任何语言(查找带有此字符串的标题)。
sceneReferences.TranslateAllTutorialByString("Polish");
ChangeStepVisualText(int stepIndex, string textValue, TextToChange textField)
用于在运行时向所选步骤的所选提示传递自定义文本。
sceneReferences.ChangeStepVisualText(2, "Your text", TextToChange.PointerText)
StartTutorialStep(int stepIndex)
按索引启动特定教程步骤并禁用其他步骤。
sceneReferences.StartTutorialStep(2);
AsyncStartTutorialStep(int stepIndex)
按索引启动特定教程步骤且不禁用其他步骤。
sceneReferences.AsyncStartTutorialStep(2);
StartTutorialStepWithTargets(int stepIndex, List targetObjects, bool stopOtherSteps)
使用自定义目标 GameObject 启动教程步骤。
sceneReferences.ForceCompleteStep(2, myGameObjectList, false);
ForceCompleteStep(int stepIndex)
通过将步骤状态设置为"Done"来结束步骤,无论完成条件如何。
sceneReferences.ForceCompleteStep(2);
ForceCompleteTutorial()
完成场景上的所有教程步骤且无例外,标记为Done。
sceneReferences.ForceCompleteTutorial();
SkipTutorial()
跳过教程步骤,通过使用ForceCompleteTutorial或通过自定义逻辑(仅完成选定的步骤)。
sceneReferences.SkipTutorial();
SkipActiveTutorialModule()
根据指定的步骤列表有选择地跳过教程。
sceneReferences.SkipActiveTutorialModule();
ResetTutorialStep(int stepIndex)
通过将步骤状态设置为"NotDoneYet"来禁用步骤及其视觉元素。
ResetTutorialStep(0);
HideTutorial()
重置所有当前显示的教程步骤。
sceneReferences.HideTutorial();
ContinueTutorial()
重置后,尝试自动恢复先前暂停的步骤。
sceneReferences.ContinueTutorial();
建议将从脚本调用的步骤的 Start Step 设置为 Manually Call,以确保对执行过程的统一控制。
任何 UI Graphic 预制件中的 Confirm Button 也可以调用该预制件中 UIGraphicAnimation 脚本的公共方法。
InitializeByConfirm()
在按钮点击时触发,将步骤中的 BlockedByButton 设置为 false。然后,步骤将继续,直到玩家满足主要条件。

FinishStep()
也可以通过按钮触发,在点击时立即完成该步骤。

FinishStepAndSkipTutorial()
也可以通过按钮触发,点击后完成步骤并跳过整个教程。
Last updated