コード例 #1
0
        /// <summary>
        /// 更新する
        /// </summary>
        /// <param name="gameTime">ゲーム内部の時間</param>
        /// <returns>次の場面</returns>
        public Scene Update(GameTime gameTime,Input input)
        {
            // TODO
            foreach (PlayerIndex index in Enum.GetValues(typeof(PlayerIndex)))
            {
                //誰のどんなボタンでも開始できるようにする。
                if (isStart) break;
                isStart = input.PushABXY(index) || input.PushStart(index) || input.PushMouseLeftButton();
            }

            if (!stopwatch.IsRunning)
            {
                stopwatch.Start();
            }

            if (stopwatch.ElapsedMilliseconds > 1 && m_isFadeOut == false)
            {
                creditMov = Vector2.Add(creditMov, creditSpeed);
                stopwatch.Restart();
            }

            if (m_isFadeIn == true && creditMov.Y < -200.0f)
            {
                m_isFadeIn = false;
            }

            // ある時間を超えるとフェードアウト処理に移行
            if (m_isFadeOut == false && creditMov.Y < -6200.0f)
            {
                m_isFadeOut = true;
                stopwatch.Restart();
            }

            if (m_isFadeOut == true && stopwatch.ElapsedMilliseconds > 5000)
            {
                stopwatch.Stop();
                return new TitleScene(content);
                Console.WriteLine("a");

            }
            foreach (PlayerIndex index in Enum.GetValues(typeof(PlayerIndex)))
            {
                if (input.PushABXY(index) || input.PushStart(index))
                {
                    return new TitleScene(content);
                }
            }

            return this;
        }