// todo: replace with proper loading screen
    private IEnumerator HideWorldForABit()
    {
        EverythingHider.HideEverything();

        yield return(new WaitForEndOfFrame());

        EverythingHider.UnHideEverything();
    }
    private void Awake()
    {
        GameplayUIManager.UIState = UIState.MainMenu;
        Instance = this;

        MegaMeshManager.ClearReferences();
        BehaviorManager.ClearAllLists();

        ShowMainMenu();

        string CurrentVersion    = "0.2.0";
        string LastLoadedVersion = Settings.Get("LastLoadedVersion", CurrentVersion);

        if (LastLoadedVersion != CurrentVersion)
        {
            ES3.DeleteFile("settings.txt");
        }                                                                            // some settings are obsolete and must be reset

        EverythingHider.UnHideEverything();
    }