コード例 #1
0
        // 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();
        }
コード例 #2
0
        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);
                }
            }
        }