void Input::clear(UCHAR what) { if (what & inputNS::KEYS_DOWN) { for (int i = 0; i < inputNS::KEYS_ARRAY_LEN; i++) m_keysDown[i] = false; } if (what & inputNS::KEYS_PRESSED) { for (int i = 0; i < inputNS::KEYS_ARRAY_LEN; i++) m_keysPressed[i] = false; } if (what & inputNS::MOUSE) { m_mouseX = 0; m_mouseY = 0; m_mouseRawX = 0; m_mouseRawY = 0; } if (what * inputNS::TEXT_IN) clearTextIn(); }
//============================================================================= // Clear specified input buffers // See input.h for what values //============================================================================= void Input::clear(UCHAR what) { if(what & inputNS::KEYS_DOWN) // if clear keys down { for (size_t i = 0; i < inputNS::KEYS_ARRAY_LEN; i++) keysDown[i] = false; } if(what & inputNS::KEYS_PRESSED) // if clear keys pressed { for (size_t i = 0; i < inputNS::KEYS_ARRAY_LEN; i++) keysPressed[i] = false; } if(what & inputNS::MOUSE) // if clear mouse { mouseX = 0; mouseY = 0; mouseRawX = 0; mouseRawY = 0; dragStartX = 0; dragStartX = 0; dragEndX = 0; dragEndY = 0; } if(what & inputNS::TEXT_IN) clearTextIn(); }
//============================================================================= // 指定の入力バッファをクリア // whatの値についてはinput.hを参照 //============================================================================= void Input::clear(UCHAR what) { // キーが押されている状態かどうかをクリアする場合 if (what & inputNS::KEYS_ARRAY_LEN) { for (size_t i = 0; i < inputNS::KEYS_ARRAY_LEN; ++i) keysDown[i] = false; } // キーが押されたかどうかをクリアする場合 if (what & inputNS::KEYS_PRESSED) { for (size_t i = 0; i < inputNS::KEYS_ARRAY_LEN; ++i) keysPressed[i] = false; } // マウスをクリアする場合 if (what & inputNS::MOUSE) { mouseX = 0; mouseY = 0; mouseRawX = 0; mouseRawY = 0; } if (what & inputNS::TEXT_IN) clearTextIn(); }