//! constructor CSSceneNodeAnimatorFPS::CSSceneNodeAnimatorFPS(gui::ICursorControl* cursorControl, f32 rotateSpeed, f32 moveSpeed, f32 jumpSpeed, SKeyMap* keyMapArray, u32 keyMapSize, bool noVerticalMovement, bool invertY) : CursorControl(cursorControl), MaxVerticalAngle(88.0f), MoveSpeed(moveSpeed), RotateSpeed(rotateSpeed), JumpSpeed(jumpSpeed), MouseYDirection(invertY ? -1.0f : 1.0f), LastAnimationTime(0), firstUpdate(true), firstInput(true), NoVerticalMovement(noVerticalMovement) { #ifdef _DEBUG setDebugName("CCameraSceneNodeAnimatorFPS"); #endif if (CursorControl) CursorControl->grab(); allKeysUp(); // create key map if (!keyMapArray || !keyMapSize) { // create default key map KeyMap.push_back(SKeyMap(EKA_MOVE_FORWARD, irr::KEY_UP)); KeyMap.push_back(SKeyMap(EKA_MOVE_BACKWARD, irr::KEY_DOWN)); KeyMap.push_back(SKeyMap(EKA_STRAFE_LEFT, irr::KEY_LEFT)); KeyMap.push_back(SKeyMap(EKA_STRAFE_RIGHT, irr::KEY_RIGHT)); KeyMap.push_back(SKeyMap(EKA_JUMP_UP, irr::KEY_KEY_J)); } else { // create custom key map setKeyMap(keyMapArray, keyMapSize); } }
void KeyBoard::doButtonClicked(int idx) { qDebug() << m_allKeys.at(idx)->text(); if (m_allKeys.at(idx)->text() == "Caps") { m_caps = !m_caps; if (m_caps) { setKeyMap(en_upper_keymap); } else { setKeyMap(en_lower_keymap); } } else if (m_allKeys.at(idx)->text() == "123") { setKeyMap(en_number_keymap); } else if (m_allKeys.at(idx)->text() == "en/cn") { setKeyMap(en_lower_keymap); } }
void RenderState::loadManagedAssembly() { clearLoadedMods(); Interop::ReloadAssembly(); if (Interop::OK()) { setKeyMap(); } }