Skip to content
Snippets Groups Projects
Commit eb4596cb authored by Nicolas Will's avatar Nicolas Will
Browse files

add handleMovementEvents handler

parent 8d1b0eae
No related branches found
No related tags found
2 merge requests!29Merge main into box2d to implement physics,!20Level event handler
......@@ -167,12 +167,6 @@ void Level::handleEvent(Engine& engine, SDL_Event& event)
switch (m_state)
{
case LevelState::MENUACTIVE_STATE:
/*
Escape
Key Down
Key up
Enter
*/
handleMenuActiveEvents(engine, event);
break;
case LevelState::SELECTING_STATE:
......@@ -187,6 +181,7 @@ void Level::handleEvent(Engine& engine, SDL_Event& event)
escape
enter
*/
handleMovementEvents(engine, event);
break;
default:
break;
......@@ -434,13 +429,44 @@ void Level::handleMenuActiveEvents(Engine& engine, SDL_Event& event)
{
m_state = LevelState::SELECTING_STATE;
}
if (m_contextMenu.getSelectedOption() == "Move")
{
m_state = LevelState::MOVEMENT_STATE;
// Hier Pathfinding einsetzen
}
if (m_contextMenu.getSelectedOption() == "Info")
{
// TODO: Hier Informationen zur Einheit darstellen
}
}
break;
default:
break;
}
}
void Level::handleMovementEvents(Engine& engine, SDL_Event& event)
{
switch (event.type)
{
case SDL_KEYDOWN:
if (event.key.keysym.sym == SDLK_RETURN)
{
}
if (event.key.keysym.sym == SDLK_ESCAPE)
{
m_state = LevelState::MENUACTIVE_STATE;
}
break;
case SDL_MOUSEBUTTONDOWN:
if (event.button.button == SDL_BUTTON_LEFT)
{
std::pair<int, int> tilePos = calcTilePos(event.button.x, event.button.y);
m_units.at(m_selectedUnit).updatePosition(tilePos.first, tilePos.second);
m_state = LevelState::SELECTING_STATE;
}
break;
default:
break;
}
......
......@@ -79,6 +79,7 @@ class Level : public Scene
void handleSelectingEvents(Engine& engine, SDL_Event& event);
void handleMenuActiveEvents(Engine& engine, SDL_Event& event);
void handleMovementEvents(Engine& engine, SDL_Event& event);
bool clickCheckLeft(int mouseX, int mouseY);
bool clickCheckRight(int mouseX, int mouseY);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment