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);
}
}
}