コード例 #1
0
        private void InitializeStageWatch()
        {
            deathCounter.Subscribe(count =>
            {
                for (int i = titleSettings.NextStageCount.Length - 1; i >= 0; --i)
                {
                    if (count < titleSettings.NextStageCount[i])
                    {
                        continue;
                    }
                    stageReactiveProperty.Value = i + 1;
                    return;
                }
            });
            stageReactiveProperty.Subscribe(stage =>
            {
                switch (stage)
                {
                case 0:
                    break;

                case 1:
                    EnemyPlayerCollisionSystem.Enabled = true;
                    break;

                case 2:
                    RainSystem.Enabled = true;
                    break;

                case 3:
                    Input1.Subscribe(ChangeWeapon1);
                    Input2.Subscribe(ChangeWeapon2);
                    武器欄.SetActive(true);
                    武器名 = 武器欄.transform.Find(nameof(武器名)).GetComponent <TMPro.TMP_Text>();
                    break;

                case 4:
                    // System.Buffer.BlockCopy(stage4EnemySpeed.Speeds, 0, enemySpeeds.Speeds, 0, enemySpeeds.Speeds.Length);
                    break;

                case 5:
                    // LastBossAppear();
                    break;

                default: break;
                }
            });
        }