nost: touch piano mode (#830)

## Link to GitHub Issue or related Pull Request, if one exists
n/a

## Description of change
Touch piano mode. Allows piano keys to be played with the touch screen.
Since the touch screen is still needed for menu navigation (including
during songs) a toggle switch is added so that the user can flip between
navigation mode and piano mode.

The touch targets are pixel-perfect. Don't let the game's piano
animations fool you.

## Testing
This commit is contained in:
bicarus
2026-07-23 15:49:50 -07:00
committed by GitHub
parent 80deb4bbbd
commit 64600826b7
15 changed files with 540 additions and 2 deletions
+8
View File
@@ -1,5 +1,6 @@
#include "nost.h"
#include "poke.h"
#include "touch_mode.h"
#include "hooks/setupapihook.h"
#include "touch/native/nativetouchhook.h"
#include "avs/game.h"
@@ -7,6 +8,7 @@
namespace games::nost {
bool ENABLE_POKE = false;
bool ENABLE_TOUCH_MODE = false;
NostGame::NostGame() : Game("Nostalgia") {
}
@@ -40,6 +42,9 @@ namespace games::nost {
setupapihook_add(touch_settings);
nativetouch::hook(avs::game::DLL_INSTANCE);
if (ENABLE_TOUCH_MODE) {
touch_mode::enable();
}
}
void NostGame::post_attach() {
@@ -49,6 +54,9 @@ namespace games::nost {
}
void NostGame::detach() {
if (ENABLE_TOUCH_MODE) {
touch_mode::disable();
}
if (ENABLE_POKE) {
poke::disable();
}