bool InputHandler::Clicked() { if(getMouseButtonState(Mouse::LEFT) && released) { released = false; } if (!getMouseButtonState(Mouse::LEFT) && !released) { clicked = true; released = true; } else if (!getMouseButtonState(Mouse::LEFT)) { released = true; clicked = false; } return clicked; }
bool MainMenuState::update(ESContext* ctx, float deltaTime) { // Read mouse values float mouseX = float(getMouseAxisX()); float mouseY = float(getMouseAxisY()); // Convert mouse coordinates to map coordinates. vec2 mouseInMapCoordinates = m_map->screenToMapCoordinates(mouseX, mouseY); //esLogMessage("Mouse in map: <%2.2f, %2.2f>", mouseInMapCoordinates.x, mouseInMapCoordinates.y); GameObject* pickedObject = m_map->getLayer("Objects")->pick(mouseInMapCoordinates); std::string start = "Start"; std::string exit = "Exit"; if (pickedObject != 0) { std::string test1 = pickedObject->getName(); if (test1.compare(start) == 0 && getMouseButtonState(MOUSE_LEFT)) { esLogMessage("%s pressed!", pickedObject->getName().c_str()); getApp()->setState(new GameRunningState(getApp())); return true; } else if (test1.compare(exit) == 0 && getMouseButtonState(MOUSE_LEFT)) { esLogMessage("%s pressed!", pickedObject->getName().c_str()); return false; } } else { // Update map. this will update all GameObjects inside a map layers. m_map->update(deltaTime); } }
void InputSystem::resetOldKeys() { #ifndef PLATFORM_WP8 for(int i = 0; i < 256; ++i) { m_oldKeys[i] = getKeyState((KeyboardKey)i); } for(int i = 0; i < 128; ++i) { m_oldJoystickButtons[i] = getJoystickButtonState(i); } for(int i = 0; i < 4; ++i) { m_oldButtons[i] = getMouseButtonState((MouseButton)i); } #else for(int i = 0; i < INPUT_SUPPORTED_TOUCH_COUNT; ++i) { m_oldTouchList[i] = m_touchList[i]; } #endif }
bool InputSystem::isMouseButtonUp(int touchID) { return (!getMouseButtonState(touchID)); }
bool InputSystem::isMouseButtonDown(int touchID) { return (getMouseButtonState(touchID)); }
bool InputSystem::isMouseButtonUp(MouseButton button) { return(!getMouseButtonState(button)); }
bool InputSystem::isMouseButtonDown(MouseButton button) { return(getMouseButtonState(button)); }