commit 8e3fb7e1
Level select can now be navigated with controller
Changed files
| M | source/code/ScoresDisplay.cpp before |
| M | source/code/main.cpp before |
diff --git a/source/code/ScoresDisplay.cpp b/source/code/ScoresDisplay.cpp
index 45cb2b4..5043f2d 100644
--- a/source/code/ScoresDisplay.cpp
+++ b/source/code/ScoresDisplay.cpp
@@ -167,14 +167,14 @@ void ScoresDisplay::ProcessInput(const SDL_Event& event, bool& processed) {
page = 0;
}
}
-
+
if (isRightEvent(event)) {
page--;
if (page<0) {
page = numberOfPages-1;
}
}
-
+
if (isConfirmEvent(event) || isEscapeEvent(event)) {
isActive = false;
}
diff --git a/source/code/main.cpp b/source/code/main.cpp
index d32ddee..614248e 100644
--- a/source/code/main.cpp
+++ b/source/code/main.cpp
@@ -1266,38 +1266,36 @@ int PuzzleLevelSelect(int Type) {
levelNr = -1;
levelSelected = true;
}
- if ( event.type == SDL_KEYDOWN ) {
- if ( event.key.keysym.sym == SDLK_ESCAPE ) {
- levelNr = -1;
- levelSelected = true;
- }
- if ( event.key.keysym.sym == SDLK_RETURN || event.key.keysym.sym == SDLK_KP_ENTER ) {
- levelNr = selected;
- levelSelected = true;
+ if (isEscapeEvent(event)) {
+ levelNr = -1;
+ levelSelected = true;
+ }
+ if (isConfirmEvent(event)) {
+ levelNr = selected;
+ levelSelected = true;
+ }
+ if (isRightEvent(event)) {
+ ++selected;
+ if (selected >= nrOfLevels) {
+ selected = 0;
}
- if ( event.key.keysym.sym == SDLK_RIGHT ) {
- ++selected;
- if (selected >= nrOfLevels) {
- selected = 0;
- }
+ }
+ if (isLeftEvent(event)) {
+ --selected;
+ if (selected < 0) {
+ selected = nrOfLevels-1;
}
- if ( event.key.keysym.sym == SDLK_LEFT ) {
- --selected;
- if (selected < 0) {
- selected = nrOfLevels-1;
- }
+ }
+ if (isDownEvent(event)) {
+ selected+=10;
+ if (selected >= nrOfLevels) {
+ selected-=10;
}
- if ( event.key.keysym.sym == SDLK_DOWN ) {
+ }
+ if (isUpEvent(event)) {
+ selected-=10;
+ if (selected < 0) {
selected+=10;
- if (selected >= nrOfLevels) {
- selected-=10;
- }
- }
- if ( event.key.keysym.sym == SDLK_UP ) {
- selected-=10;
- if (selected < 0) {
- selected+=10;
- }
}
}
}