Ejemplo n.º 1
0
    // Update is called once per frame
    void Update()
    {
        if (!init)
        {
            return;
        }

        // Wait until the scene is fully loaded
        if (!transitionFinished)
        {
            return;
        }

        GameSettingsScreen.Draw();
        Util.TranslateRawImage(ref backgroundImage, Globals.BackgroundOffset);

        float ratio;

        switch (GameState.TransitionState)
        {
        case TransitionState.LeavingLoadScreen:
            ratio = DrawLoadingScreenTransition(false);
            if (ratio >= 1.0f)
            {
                GameState.TransitionState = TransitionState.ScreenActive;
                GameState.GameMode        = Mode.GameSettings;
            }
            break;

        case TransitionState.ScreenActive:
            transitionStartTime = -1;
            break;

        case TransitionState.EnteringLoadingScreen:
            ratio = DrawLoadingScreenTransition(true);
            if (ratio <= 0.0f)
            {
                GameState.TransitionState = TransitionState.SwitchingScreens;
                loadStarted = false;
            }
            break;

        case TransitionState.SwitchingScreens:
            if (!loadStarted)
            {
                Globals.CurrentNoteCollection = new NoteCollection(SongSelection.GetSelectedMetadata());
                Globals.CurrentSongMetadata   = Globals.CurrentNoteCollection.ParseFile();

                Globals.MusicManager.LoadSong(Globals.CurrentSongMetadata.FilePath + Globals.CurrentSongMetadata.SongFilename, Globals.CurrentSongMetadata.BpmEvents);
                Globals.MusicManager.Offset = Globals.CurrentSongMetadata.PlaybackOffset * 1000;

                StartCoroutine(Util.SwitchSceneAsync());
                loadStarted = true;
            }
            break;

        default:
            break;
        }
    }
Ejemplo n.º 2
0
    // Start is called before the first frame update
    void Start()
    {
        if (!ConfigFile.IsLoaded)
        {
            ConfigFile.Load();
        }

        loadingLeft  = GameObject.Find("LoadingLeft").GetComponent <RectTransform>();
        loadingRight = GameObject.Find("LoadingRight").GetComponent <RectTransform>();

        backgroundImage = GameObject.Find("Bg").GetComponent <UnityEngine.UI.RawImage>();
        if (backgroundImage != null && backgroundImage.texture != null)
        {
            backgroundImage.texture.wrapMode = TextureWrapMode.Repeat;
        }

        Bg1.SetColor(ThemeColors.Pink);
        Bg2.SetColor(ThemeColors.Blue);
        Bg3.SetColor(ThemeColors.Yellow);

        Pools.GameSettingOptions = ScriptableObject.CreateInstance <ObjectPooler>();
        Pools.GameSettingOptions.SetPool(OptionBase, 10, true, this.gameObject);

        GameSettingsScreen.Initialize(Selection, ConfirmReject);
        GameSettingsScreen.SetConfig(ConfigFile.GetTable(Defines.GameConfig));

        ConfirmReject.SetActive(false);

        init = true;
    }
Ejemplo n.º 3
0
 public static void Update()
 {
     configTable = new Dictionary <string, object>()
     {
         { Defines.TouchConfig, TouchSettings.GetConfig() },
         { Defines.GameConfig, GameSettingsScreen.GetConfig() }
     };
 }
Ejemplo n.º 4
0
    // Update is called once per frame
    void Update()
    {
        // Prevent inputs while the game is transitioning between screens
        if (GameState.TransitionState == TransitionState.EnteringLoadingScreen ||
            GameState.TransitionState == TransitionState.LeavingLoadScreen)
        {
            return;
        }

        if (Input.GetButtonDown("Down"))
        {
            GameSettingsScreen.ScrollDown();
        }
        else if (Input.GetButtonDown("Up"))
        {
            GameSettingsScreen.ScrollUp();
        }
        else if (Input.GetButtonDown("Left"))
        {
            GameSettingsScreen.ScrollLeft();
        }
        else if (Input.GetButtonDown("Right"))
        {
            GameSettingsScreen.ScrollRight();
        }
        else if (Input.GetButtonDown("Select"))
        {
            DialogResult gameSettingResult = GameSettingsScreen.Select();
            if (gameSettingResult != DialogResult.NoAction)
            {
                bool bIsLangDialogSelected = GameSettingsScreen.IsLanguageDialogSelected();
                // save the TOML file here
                if (gameSettingResult == DialogResult.Confirm && !bIsLangDialogSelected)
                {
                    ConfigFile.Update();
                    ConfigFile.Save();
                }
                GameState.TransitionState = TransitionState.EnteringLoadingScreen;
                GameState.Destination     = bIsLangDialogSelected ? Mode.LanguageSelect : Mode.SongSelect;
            }
        }
    }
    // Start is called before the first frame update
    void Start()
    {
        if (!ConfigFile.IsLoaded)
        {
            ConfigFile.Load();
        }

        loadingLeft  = GameObject.Find("LoadingLeft").GetComponent <RectTransform>();
        loadingRight = GameObject.Find("LoadingRight").GetComponent <RectTransform>();

        Bg1.SetColor(ThemeColors.Pink);
        Bg2.SetColor(ThemeColors.Blue);
        Bg3.SetColor(ThemeColors.Yellow);

        Pools.GameSettingOptions = ScriptableObject.CreateInstance <ObjectPooler>();
        Pools.GameSettingOptions.SetPool(OptionBase, 10, true, this.gameObject);

        GameSettingsScreen.Initialize(Selection, ConfirmReject);
        GameSettingsScreen.SetConfig(ConfigFile.GetTable(Defines.GameConfig));

        ConfirmReject.SetActive(false);

        init = true;
    }
        void OnSettingsSelected(PlayerIndex playerIndex)
        {
            var gameSettingsMenu = GameSettingsScreen.Create(ScreenManager);

            ScreenManager.AddScreen(gameSettingsMenu, playerIndex);
        }