private static void Prefix(DifficultySelect __instance) { if (SongBrowser.songDataLoaderInstalled) { IEnumerator coroutine = ChangeNamesDS(__instance); MelonCoroutines.Start(coroutine); } }
public static IEnumerator ChangeNamesDS(DifficultySelect __instance) { yield return(new WaitForSeconds(0.05f)); SongList.SongData song = SongDataHolder.I.songData; ChangeSpecificDifficulty(ref song, __instance.expert.label, difficultyNameToTag["Expert"]); ChangeSpecificDifficulty(ref song, __instance.hard.label, difficultyNameToTag["Advanced"]); ChangeSpecificDifficulty(ref song, __instance.normal.label, difficultyNameToTag["Moderate"]); ChangeSpecificDifficulty(ref song, __instance.easy.label, difficultyNameToTag["Beginner"]); }
public void StartGame() { sum = 0; _ope = Enum.Operator.None; waitTime = DifficultySelect.WaitTime(); _baseNumberList = DifficultySelect.BaseNumberList(); _operatorList = DifficultySelect.OperatorList(); _repetition = DifficultySelect.Repetition(); _startButton.gameObject.SetActive(false); StartCoroutine(RepeatCoroutine()); }
private static void Prefix(DifficultySelect __instance) { if (MelonHandler.Mods.Any(it => it.Info.SystemType.Name == nameof(SongDataLoader))) { IEnumerator coroutine = ChangeNamesDS(__instance); MelonCoroutines.Start(coroutine); } else { MelonLogger.LogError("Custom Song Data mod not detected, Custom difficulty names will not run"); } }
public void Update() { link = GameObject.Find("DifficultySelector"); select = link.GetComponent <DifficultySelect>(); WorldToDie = GameObject.Find(DestroyWorld.name + "(Clone)"); Gamepad[] pads = Gamepad.all.ToArray(); if (pads.Length >= 1) { if (Loss.activeSelf == true && p1DevicePad.buttonEast.wasPressedThisFrame || Win.activeSelf == true && p1DevicePad.buttonEast.wasPressedThisFrame) { QuitGame(); } if (Loss.activeSelf == true && p1DevicePad.buttonWest.wasPressedThisFrame || Win.activeSelf == true && p1DevicePad.buttonWest.wasPressedThisFrame) { ReturntoSelect(); } } }
public static IEnumerator ChangeNamesDS(DifficultySelect __instance) { yield return(new WaitForSeconds(0.05f)); var song = SongDataHolder.I.songData; bool hasCustom = SongDataLoader.AllSongData[song.songID].HasCustomData(); if (hasCustom && SongDataLoader.AllSongData[song.songID].SongHasCustomDataKey("customExpert")) { __instance.expert.label.SetText(SongDataLoader.AllSongData[song.songID].GetCustomData <string>("customExpert")); } else { __instance.expert.label.text = "Expert"; } if (hasCustom && SongDataLoader.AllSongData[song.songID].SongHasCustomDataKey("customAdvanced")) { __instance.hard.label.SetText(SongDataLoader.AllSongData[song.songID].GetCustomData <string>("customAdvanced")); } else { __instance.hard.label.text = "Advanced"; } if (hasCustom && SongDataLoader.AllSongData[song.songID].SongHasCustomDataKey("customModerate")) { __instance.normal.label.SetText(SongDataLoader.AllSongData[song.songID].GetCustomData <string>("customModerate")); } else { __instance.normal.label.text = "Moderate"; } if (hasCustom && SongDataLoader.AllSongData[song.songID].SongHasCustomDataKey("customBeginner")) { __instance.easy.label.SetText(SongDataLoader.AllSongData[song.songID].GetCustomData <string>("customBeginner")); } else { __instance.easy.label.text = "Beginner"; } }
/// <summary> /// All state changes go through this function. /// </summary> public void ChangeState(GameStateType state) { // Transition to a NoneState?! No way! if (state == GameStateType.None) { return; } // Store off old state. if (IsStorableState(State, state)) { StoreState(); } lastState = State; State = state; if (lastState != state) { stateChanged = true; } if (!stateChanged) { return; } if (!IsBackgroundMusicState(state) && IsBackgroundMusicState(lastState)) { StopAllSongs(); } // Pause is a unique state. if (state == GameStateType.Paused && lastState != GameStateType.Paused) { PauseGame(true); return; } if (lastState == GameStateType.Paused) { CancelMenu(); if (state == GameStateType.Running) { PauseGame(false); return; } } if (state == GameStateType.SongRestart) { musicPlayer.StopAll(); QueueSong(_currentSong); List <Player> members = CurrentBand.BandMembers; foreach (Player p in members) { p.Notes.Reset(); } ChangeState(GameStateType.Running); return; } // Clear out residue from last state. ResetComponents(); // Temporarily skip band members if (State == GameStateType.MembersSelect) { state = State = GameStateType.CareerSelect; } if (ShouldSaveBand(state)) { if (state == GameStateType.SongSuccess) { Band tmp = CurrentBand; _currentBand.ScoreSong(_currentSong.songData.info.name, _currentBand.CurrentScore, _currentBand.Stars); } Band.SaveBandToFile(_currentBand); } bool changeToMenu = false; Menu newMenu = null; // Initialize our next state. switch (state) { case GameStateType.TitleScreen: newMenu = new TitleScreen(this, menu); changeToMenu = true; break; case GameStateType.CareerSelect: newMenu = new CareerSelect(this, menu); changeToMenu = true; break; case GameStateType.MembersSelect: changeToMenu = true; break; case GameStateType.BandSelect: newMenu = new BandSelect(this, menu); changeToMenu = true; break; case GameStateType.SongSelect: // Stupid hack to get a player readied for rpg stuffs if (CurrentBand.BandMembers.Count == 0) { PlayerFactory.TestPlayer(null, this); } newMenu = new SongSelect(this, menu); changeToMenu = true; break; case GameStateType.BuySong: newMenu = new BuySongWarning(this, menu); changeToMenu = true; break; case GameStateType.Credits: newMenu = new CreditsScreen(this, menu); changeToMenu = true; break; case GameStateType.DifficultySelect: newMenu = new DifficultySelect(this, menu); changeToMenu = true; break; case GameStateType.Running: menu = null; float realDifficulty = (Difficulty == 0 ? 0.2f : Difficulty == 1 ? 0.4f : Difficulty == 2 ? 0.6f : Difficulty == 3 ? 0.8f : 0.96f); foreach (Player p in CurrentBand.BandMembers) { p.Reset(); p.StartSong(this, gameTime, _currentSong, Player.GUITAR, realDifficulty); p.ChangeState += new Action <RhythmGame.GameStateType>(ChangeState); if (musicPlayer != null) { p.NoteWasMissed += new Action <SongData.NoteSet>(musicPlayer.MissedNote); p.NoteWasHit += new Action <SongData.NoteSet>(musicPlayer.HitNote); } } break; case GameStateType.LoadSong: _currentSong = songQueue.Dequeue(); if (QueueSong(_currentSong)) { ChangeState(GameStateType.DifficultySelect); } else { ChangeState(GameStateType.BuySong); } break; case GameStateType.SongFail: newMenu = new SongFail(this, menu); changeToMenu = true; break; case GameStateType.SongSuccess: newMenu = new SongSuccess(this, menu); changeToMenu = true; break; case GameStateType.SongCancel: StopAllSongs(); CancelMenu(); break; } if (changeToMenu) { // Give the plugin a chance to override the menu. newMenu = ActivePlugin.GetPluginMenu(this, menu, newMenu); menu = newMenu; menu.DrawOrder = 1; menu.Enabled = true; menu.Visible = true; Components.Add(menu); } }
void Awake() { parent = GetComponentInParent <DifficultySelect>(); }
void Start() { diffSelector = transform.GetComponentInParent <DifficultySelect>(); }