void CreditScene::Update(float dt) { CScene::Update(dt); // MUST CALL BASE CLASS'S Update if (IsTopMost() == false) return; // Pause if I'm not the topmost screen if (mpGamepad->IsGamepadConnected(0)) { if (mpGamepad->IsButtonPressed(0, XINPUT_GAMEPAD_B)) { mpCreditSFX->PlayCue("ClickSound"); ExitScene(); } } // WARNING: you cannot have two calls to KeyPress for the same key within a function // the second call always gives false // therefore one KeyPress with many tests within it if (CGameWindow::KeyPress(VK_LBUTTON)) { POINT mouse = CGameWindow::GetMousePos(); if (InSprite(mouse, BACK_BUT, mpButtonTex[0])) // clicked the button { mpCreditSFX->PlayCue("ClickSound"); ExitScene(); } } }
void CMessageBoxScene::Update(float dt) { CScene::Update(dt); // NEED THIS FIRST if (CGameWindow::KeyPress(VK_SPACE) || CGameWindow::KeyPress(VK_RETURN)) { if (mCallback) mCallback(true, mCallbackUsr); ExitScene(); } if (CGameWindow::KeyPress(VK_ESCAPE)) { if (mCallback) mCallback(false, mCallbackUsr); ExitScene(); } }
void CFirstScene::OnDraw(CDIB32 *lp) { lp->Clear(0); if (f3Input.GetKeyPushed(F3KEY_PAUSE)) { if (m_Select->GetSelected()==FSM_GAMESTART) { // ゲーム開始 f3Replay.Leave(); f3Input.Input(); JumpScene(TITLE_SCENE); }ef(m_Select->GetSelected()==FSM_EXPLAIN) { // 操作説明 f3Replay.Leave(); f3Input.Input(); JumpScene(EXPLAIN_SCENE); }ef(m_Select->GetSelected()==FSM_CONFIG) { // 設定 f3Input.Input(); JumpScene(SETTING_SCENE); }ef(m_Select->GetSelected()==FSM_EXIT) { // 終了 f3Replay.Leave(); ExitScene(); }ef(m_Select->GetSelected()==FSM_RESULT) { // プレイ記録 f3Input.Input(); JumpScene(RESULT_SCENE); } }else {
void CMessageBoxScene::Update(float dt) { CScene::Update(dt); // NEED THIS FIRST if (mpJoy->IsJoyActive(0)) { DIJOYSTATE state = mpJoy->GetJoystick(0).GetState(); DIJOYSTATE prevState = mpJoy->GetJoystick(0).GetPrevState(); if (state.rgbButtons[0] != 0 && prevState.rgbButtons[0] == 0) { if (mCallback) mCallback(true,mCallbackUsr); ExitScene(); } else if (state.rgbButtons[1] != 0 && prevState.rgbButtons[1] == 0) { if (mCallback) mCallback(false,mCallbackUsr); ExitScene(); } } else { if (CGameWindow::KeyPress(VK_RETURN)) { if (mCallback) mCallback(true,mCallbackUsr); ExitScene(); } if (CGameWindow::KeyPress(VK_ESCAPE)) { if (mCallback) mCallback(false,mCallbackUsr); ExitScene(); } } }