// Use this for initialization void Awake() { Group.gameObject.SetActive(false); PurpleStuff.gameObject.SetActive(false); Nessie.gameObject.SetActive(false); Cerberus.gameObject.SetActive(false); Redacted.gameObject.SetActive(false); if (GameObject.Find("GameData") == null) { _MonsterFactory = gameObject.AddComponent(typeof(MonsterFactory)) as MonsterFactory; GameNarrativeManager gameNarrativeManager = gameObject.AddComponent <GameNarrativeManager>(); gameNarrativeManager.Start(); while (gameNarrativeManager.AnyStagesLeft()) { gameNarrativeManager.StartNextStage(); gameNarrativeManager.DateableMonsterIDs.Add(gameNarrativeManager.CurrentStage.MonsterID); } gameNarrativeManager.DateableMonsterIDs.Remove(gameNarrativeManager.DateableMonsterIDs[0]); } else { _MonsterFactory = GameObject.FindObjectOfType <MonsterFactory>(); var GameSettings = GameObject.FindObjectOfType <GameSettings>(); InitialMusic.volume = GameSettings.MusicVolume * GameSettings.MasterVolume; FinalMusic.volume = GameSettings.MusicVolume * GameSettings.MasterVolume; Phone.volume = GameSettings.SfxVolume * GameSettings.MasterVolume; } CreateChoiceButtons(); }
void Update() { if (!_AreItemsLoaded || !Input.anyKey) { return; } if (_CombatInitiator == null || _GameNarrativeManager == null || _MonsterFactory == null) { SceneManager.LoadScene("Game OVer", LoadSceneMode.Single); } var monster = _MonsterFactory.LoadMonster(_GameNarrativeManager.CurrentStage.MonsterID); if (monster.AffectionValue <= monster.FightThreshold) // Not good enough! FIGHT! FIGHT!! FIGHT!!! { _CombatInitiator.InitiateCombat(_GameNarrativeManager.CurrentStage.MonsterID, 1 - monster.AffectionValue); } else { _GameNarrativeManager.DateableMonsterIDs.Add(_GameNarrativeManager.CurrentStage.MonsterID); if (!_GameNarrativeManager.AnyStagesLeft()) // No more monsters - onto the end { SceneManager.LoadScene(_MONOLOGUE_SCENE_NAME); } else // Onto the next monster { _GameNarrativeManager.StartNextStage(); SceneManager.LoadScene(_DIALOGUE_SCENE_NAME, LoadSceneMode.Single); } } }