private StateTutorial()
    {
        if (_instance != null)
        {
            return;
        }

        _instance = this;
    }
    void PrepareStep()
    {
        switch (step)
        {
        case 0:
            if (hero.velocity.x > 0)
            {
                SpawnSpike();
                state = StateTutorial.Move;
            }
            break;

        case 1:
            if (hero.velocity.x < 0)
            {
                SpawnSpike();
                state = StateTutorial.Move;
            }
            break;

        case 2:
            SpawnRotate();
            state = StateTutorial.Move;
            break;

        case 3:
            if (hero.lane > 0)
            {
                SpawnRotate();
                state = StateTutorial.Move;
            }
            break;

        default:
            break;
        }
    }
 void StartStep()
 {
     Time.timeScale = 0;
     tutorialObj[step].SetActive(true);
     state = StateTutorial.Pause;
 }