> For the complete documentation index, see [llms.txt](https://octanta-studio.gitbook.io/automatic-tutorial-maker-for-unity-in-game-tips/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://octanta-studio.gitbook.io/automatic-tutorial-maker-for-unity-in-game-tips/usage-guide/advanced-manual-step-calls.md).

# Advanced: Manual Step Calls

Here, we work with the step-calling logic manually using public wrapper methods in the TutorialSceneReferences (TSR).

1. In the script from which you will call the step, **create a reference to TSR**. For example:\
   `[SerializeField] private TutorialSceneReferences sceneReferences;`
2. Use public method calls depending on the desired result:

<table><thead><tr><th width="216">Method in TSR</th><th width="260">Description</th><th>Call Example</th></tr></thead><tbody><tr><td>IsStepDisplaying(int stepIndex)</td><td>Check whether a step is currently being played.</td><td>if (IsStepDisplaying(0)) {}</td></tr><tr><td>IsStepDone(int stepIndex)</td><td>Check whether a step has been completed.</td><td>if (IsStepDone(0)) {}</td></tr><tr><td>IsStepManualStart(int stepIndex)</td><td>Check whether a step requires manual triggering.</td><td>if (IsStepManualStart(0)) {}</td></tr><tr><td>TurnOffTutorial()</td><td>Turns off tutorial. Useful for switching between different tutorials on the same scene.</td><td><code>sceneReferences.TurnOnffTutorial();</code></td></tr><tr><td>TurnOnTutorial()</td><td>Launches tutorial on the scene. Useful if Autostart is set to false.</td><td><code>sceneReferences.TurnOnTutorial();</code></td></tr><tr><td>TranslateAllTutorial(InputStringsScriptableObject.Language language)</td><td>Translates all tutorial hints into one of the supported languages.</td><td><code>sceneReferences.InputStringsScriptableObject.Language.Italian);</code></td></tr><tr><td>TranslateAllTutorialByString(string language)</td><td>Translates all tutorial hints into any language present in CSV file (finds header with this string).</td><td><code>sceneReferences.TranslateAllTutorialByString("Polish");</code></td></tr><tr><td>ChangeStepVisualText(int stepIndex, string textValue, TextToChange textField)</td><td>It is used to pass custom text to the selected hint of the selected step in runtime.</td><td><code>sceneReferences.ChangeStepVisualText(2, "Your text", TextToChange.PointerText)</code></td></tr><tr><td>StartTutorialStep(int stepIndex)</td><td>Starts a specific tutorial step by its index and disables others.</td><td><code>sceneReferences.StartTutorialStep(2);</code></td></tr><tr><td>AsyncStartTutorialStep(int stepIndex)</td><td>Starts a specific tutorial step by its index and doesnt disable others.</td><td><code>sceneReferences.AsyncStartTutorialStep(2);</code></td></tr><tr><td>StartTutorialStepWithTargets(int stepIndex, List targetObjects, bool stopOtherSteps)</td><td>Starts a tutorial step with custom target GameObjects.</td><td><code>sceneReferences.ForceCompleteStep(2, myGameObjectList, false);</code></td></tr><tr><td>ForceCompleteStep(int stepIndex)</td><td>Finishes the step by setting its status to "Done" regardless of the completion conditions.</td><td><code>sceneReferences.ForceCompleteStep(2);</code></td></tr><tr><td>ForceCompleteTutorial()</td><td>Completes all tutorial steps on the scene without exception, marking as Done.</td><td><code>sceneReferences.ForceCompleteTutorial();</code></td></tr><tr><td>SkipTutorial()</td><td>Skips tutorial steps, either by using ForceCompleteTutorial or through custom logic (to complete only selected steps).</td><td><code>sceneReferences.SkipTutorial();</code></td></tr><tr><td>SkipActiveTutorialModule()</td><td>Skips the tutorial selectively, according to the specified list of steps.</td><td><code>sceneReferences.SkipActiveTutorialModule();</code></td></tr><tr><td>ResetTutorialStep(int stepIndex)</td><td>Disables the step along with its visuals by setting its status to "NotDoneYet".</td><td><code>ResetTutorialStep(0);</code></td></tr><tr><td>HideTutorial()</td><td>Resets all currently displaying tutorial steps.</td><td><code>sceneReferences.HideTutorial();</code></td></tr><tr><td>ContinueTutorial()</td><td>After a reset, attempts to automatically resume steps that were previously paused.</td><td><code>sceneReferences.ContinueTutorial();</code></td></tr></tbody></table>

3. It is recommended to set the steps you call from the script to **Start Step** → **Manually Call** to ensure unified control over execution.
4. Button inside of any tooltip prefab can also call public methods.

<table><thead><tr><th width="200">UIGraphicAnimation Method</th><th width="275">Description</th><th>Call Example</th></tr></thead><tbody><tr><td>InitializeByConfirm()</td><td>It is triggered upon button click and sets BlockedByButton to false in the step. Then, the step continues until the player meets the main condition.</td><td><img src="/files/SpO750lgvFTYnqFQUAgn" alt="" data-size="original"></td></tr><tr><td>FinishStep()</td><td>Can also be triggered by a button to immediately complete the step upon click.</td><td><img src="/files/0IGy0IYXdme5RHEJ5STm" alt="" data-size="original"></td></tr><tr><td>FinishStepAndSkipTutorial()</td><td>Can also be triggered by a button to complete the step upon click and skip the whole tutorial.</td><td></td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://octanta-studio.gitbook.io/automatic-tutorial-maker-for-unity-in-game-tips/usage-guide/advanced-manual-step-calls.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
