private void PrepForStage(int stage, Menu menu)
        {
            AlienGoTo(TutorialStages.AlienPositions[stage]);
            SetAlienMood(TutorialStages.IsAlienHappy[stage]);

            SetInstructions(Language.Translate(TutorialStages.Instructions[stage]),
                            TutorialStages.InstructionPositions[stage], ButtonForAction(TutorialStages.ActionsAllowed[stage],
                                                                                        TutorialStages.Highlights[stage]));

            highlightRect = GetRectangleFor(TutorialStages.Highlights[stage], menu);

            TutorialAction action = TutorialStages.ActionsAllowed[stage];

            onlyAllow?.Invoke(action);
            waitingForAction = (action.Action != TutorialTask.None);
        }
        private string ButtonForAction(TutorialAction action, TutorialActionArea highlight)
        {
            if (action.Action == TutorialTask.GameState)
            {
                switch ((GameState)action.Params)
                {
                case GameState.PickUser:
                    if (highlight == TutorialActionArea.Start)
                    {
                        return("\"Start\"");
                    }
                    else
                    {
                        return("\"Create User\"");
                    }

                case GameState.NewUser:
                    return("\"Create New User\"");

                case GameState.MainMenu:
                    if (highlight == TutorialActionArea.None)
                    {
                        return("your user");
                    }
                    else if (highlight == TutorialActionArea.Back)
                    {
                        return("\"Back\"");
                    }
                    else
                    {
                        return("");
                    }

                case GameState.SelectMission:
                    return("\"Play\"");

                case GameState.Playing:
                    if (highlight == TutorialActionArea.Resume)
                    {
                        return("\"Resume\"");
                    }
                    else
                    {
                        return("\"0\"");
                    }

                case GameState.Paused:
                    return("the Escape (Esc.) key");

                case GameState.Shop:
                    return("\"Shop\"");

                case GameState.Crafting:
                    return("\"Crafting\"");
                }
            }
            else if (action.Action == TutorialTask.Sweep)
            {
                return("the W key");
            }
            else if (action.Action == TutorialTask.ShootRock)
            {
                return("the Space key");
            }
            else if (action.Action == TutorialTask.BuyMaterial)
            {
                return("\"Buy\"");
            }
            else if (action.Action == TutorialTask.CraftItem)
            {
                return("\"Craft\"");
            }
            return(null);
        }