πTutorial Module System
Tutorial system with bunch of tools that is modular
How to use
Replace TutorialManager prefab on scene, where you want to use it. You can unpack prefab on scene if you want.

Tutorials is list of all tutorials in this scene. You can reference them, or leave list empty, there is several methods how to start tutorial, that will be written later.
Scene References is Dictionary where key is your unique name for object in scene and value is object reference itself. It's important to write unique and readable key for each object because it will be use often in Tutorial Config setup.
Other properties are references for core tutorial module system prefabs and components that not important to change.
TestRunTutorial is button for test purposes, you can select Tutorial object and test it by clicking Invoke button.
Let's create tutorial
Create ScriptableObject of Tutorial - Go to Create->Game->Tutorials->Tutorial:

When it be will created you can open it. How it looks:

Id is unique identifier for each tutorial. For example 'FirstFlow_LevelReward' is Id name for this tutorial. Further, you can run this tutorial by Id or Tutorial object itself with TutorialManager.Instance methods.
Show Only Once is checker that will ignore tutorial start if it was completed before.
Send To Analytics is checker to handle Tutorial completed events in your analytics SDK. You may want to send only few tutorials in analytics. You need to check if it's true in your analytics implementation.
Next Auto Run Tutorial is another tutorial object reference that will run automaticaly on this tutorial complete. You can leave it empty so no tutorial will run automaticaly after this.
Steps is core list of actions in whole tutorial. This is core part of tutorial system where you will setup needed tools.
Guide WIP...
Below is list of tools that you can select in Tutorial step. Column with name "Multiple" means that tool can be used several times per step Column with name "Follow" means that tool can follow world or screen space object
TextUI
Display text on object or at screen position
FingerUI
Finger with animation on object or at screen position
Invisible Linked Button
Force player press referenced button. Used with "Tap On Button" tutorial step as finish condition
Attention Mask
Fullscreen darken with mask on object or fullscreen darken only (suppored only rectangle mask)
ArrowUI
Display arrow with animation on object or at screen position
TempUI Object
Creates object for 1 step and destroys it on complete
UIObject Parent Change
Moves an object for 1 step under Tutorial canvas. Use-case: show UI object above attention mask. Toggle on Follow Old Parent Transform if old parent moves
Last updated