Instance() public static method

public static Instance ( ) : ActorManager,
return ActorManager,
コード例 #1
0
ファイル: GamePlay.cs プロジェクト: KondoSuguru/LoopGame
        public void Update(GameTime gameTime)
        {
            var    s   = GameDevice.Instance().GetSound();
            string bgm = mIsClear ? "clear" : "tekuteku_arukou";

            s.PlayBGM(bgm);

            FadeUpdate(gameTime);
            if (mFadeState == FadeState.OUT)
            {
                return;
            }

            if (Input.GetKeyTrigger(Keys.Q))
            {
                if (mIsClear)
                {
                    return;
                }
                string se = mIsMenu ? "menu_close" : "menu";
                mIsMenu  = !mIsMenu;
                mMenuNum = 0;
                s.PlaySE(se);
            }

            if (!mIsMenu)
            {
                if (mIsClear)
                {
                    mAnim.Update(gameTime);
                    mAnim.SetMotion(0);
                    if (Input.GetKeyTrigger(Keys.Space) || Input.GetKeyTrigger(Keys.Enter))
                    {
                        mNextScene = Scene.StageSelect;
                        SetFadeState(FadeState.OUT);
                        s.PlaySE("stage_choice");
                    }
                    return;
                }

                if (Input.GetKeyUp(Keys.X))
                {
                    mStage.Reset();
                    s.PlaySE("reset");
                }
                if (ActorManager.Instance().IsClear())
                {
                    mIsClear = true;
                    s.StopBGM();
                    if (ActorMove.mWalkCount <= mRankA)
                    {
                        mA = 0;
                    }
                    else if (mRankA < ActorMove.mWalkCount && ActorMove.mWalkCount <= mRankB)
                    {
                        mA = 3;
                    }
                    else
                    {
                        mA = 6;
                    }

                    if (ActorMove.mWalkCount < mRecord)
                    {
                        FileManager.WriteRank("./Content/data/rankData.txt", mStageNo, mRecord);
                        mRecord = ActorMove.mWalkCount;
                    }
                }
                ActorManager.Instance().Update(gameTime);
            }
            else
            {
                mAnim.Update(gameTime);
                mAnim.SetMotion(0);

                if (Input.GetKeyTrigger(Keys.Up))
                {
                    mMenuNum--;
                    s.PlaySE("cursor");
                }
                if (Input.GetKeyTrigger(Keys.Down))
                {
                    mMenuNum++;
                    s.PlaySE("cursor");
                }
                mMenuNum = (mMenuNum + 4) % 4;

                if (Input.GetKeyTrigger(Keys.Space) || Input.GetKeyTrigger(Keys.Enter))
                {
                    string se = "stage_choice";
                    switch (mMenuNum)
                    {
                    case 0:
                        mNextScene = Scene.Title;
                        SetFadeState(FadeState.OUT);
                        break;

                    case 1:
                        mNextScene = Scene.StageSelect;
                        SetFadeState(FadeState.OUT);
                        break;

                    case 2:
                        mIsMenu = false;
                        se      = "menu_close";
                        break;

                    case 3:
                        Game1.mIsEndGame = true;
                        break;
                    }
                    s.PlaySE(se);
                }
            }
        }
コード例 #2
0
ファイル: GamePlay.cs プロジェクト: KondoSuguru/LoopGame
        public void Draw()
        {
            var r = GameDevice.Instance().GetRenderer();

            r.DrawTexture("floor", Vector2.Zero);
            ActorManager.Instance().Draw();

            r.DrawTexture("stateFrame", new Vector2(Screen.PLAY_WIDTH, 0));
            r.DrawTexture("resetButton", new Vector2(Screen.PLAY_WIDTH, GridSize.GRID_SIZE * 6));
            r.DrawTexture("undoButton", new Vector2(Screen.PLAY_WIDTH, GridSize.GRID_SIZE * 6));

            ActorManager.Instance().DrawWalkCount();
            r.DrawNumberRightEdgeAlignment("number", new Vector2(Screen.PLAY_WIDTH + GridSize.GRID_SIZE * 2, GridSize.GRID_SIZE), mStageNo);
            r.DrawNumberRightEdgeAlignment("number", new Vector2(Screen.PLAY_WIDTH + GridSize.GRID_SIZE * 2f, GridSize.GRID_SIZE * 5), mRecord);

            if (!mIsMenu && !mIsClear)
            {
                if (Input.GetKeyState(Keys.X))
                {
                    r.DrawTexture("resetButtonDown", new Vector2(Screen.PLAY_WIDTH, GridSize.GRID_SIZE * 6));
                }
                if (Input.GetKeyState(Keys.Z))
                {
                    r.DrawTexture("undoButtonDown", new Vector2(Screen.PLAY_WIDTH, GridSize.GRID_SIZE * 6));
                }
            }


            if (mIsMenu)
            {
                r.DrawTexture("menuBG", Vector2.Zero);
                r.DrawTexture("gamemenuframe", new Vector2(Screen.WIDTH / 2 - 256, 50));
                r.DrawTexture("titlemodoruDark", new Vector2(Screen.WIDTH / 2 - 192, Screen.HEIGHT / 2 - 190));
                r.DrawTexture("selectmodoruDark", new Vector2(Screen.WIDTH / 2 - 192, Screen.HEIGHT / 2 - 90));
                r.DrawTexture("menutojiruDark", new Vector2(Screen.WIDTH / 2 - 192, Screen.HEIGHT / 2 + 10));
                r.DrawTexture("gameowaruDark", new Vector2(Screen.WIDTH / 2 - 192, Screen.HEIGHT / 2 + 110));

                switch (mMenuNum)
                {
                case 0: r.DrawTexture("titlemodoru", new Vector2(Screen.WIDTH / 2 - 192, Screen.HEIGHT / 2 - 190)); break;

                case 1: r.DrawTexture("selectmodoru", new Vector2(Screen.WIDTH / 2 - 192, Screen.HEIGHT / 2 - 90)); break;

                case 2: r.DrawTexture("menutojiru", new Vector2(Screen.WIDTH / 2 - 192, Screen.HEIGHT / 2 + 10)); break;

                case 3: r.DrawTexture("gameowaru", new Vector2(Screen.WIDTH / 2 - 192, Screen.HEIGHT / 2 + 110)); break;
                }

                mAnim.Draw(mMenuCursor[mMenuNum]);
            }

            if (mIsClear)
            {
                r.DrawTexture("clearBG", Vector2.Zero);
                r.DrawTexture("CLEAR", new Vector2(Screen.PLAY_WIDTH / 2 - 256, Screen.HEIGHT / 2 - 200));
                for (int i = 0; i < mStarPosition.Count; i++)
                {
                    r.DrawTexture(mStarName[i + mA], mStarPosition[i]);
                }
                r.DrawTexture("selectmodoru", new Vector2(Screen.PLAY_WIDTH / 2 - 192, Screen.HEIGHT - 180));
                mAnim.Draw(new Vector2(Screen.PLAY_WIDTH / 2 + 160, Screen.HEIGHT - 170));
            }

            FadeDraw();
        }
コード例 #3
0
ファイル: GamePlay.cs プロジェクト: KondoSuguru/LoopGame
 public void Shutdown()
 {
     mStage.Unload();
     ActorManager.Instance().Clear();
     GameDevice.Instance().GetSound().StopBGM();
 }