Add click sound

This commit is contained in:
Miloslav Ciz 2025-01-07 20:01:36 +01:00
parent 5d30b9d600
commit a9f0a6885a
3 changed files with 86 additions and 42 deletions

26
game.h
View file

@ -574,7 +574,7 @@ void LCR_gameDraw3DView(void)
LCR_rendererDrawText(str,
(LCR_EFFECTIVE_RESOLUTION_X - LCR_rendererComputeTextWidth(str,8)) / 2,
LCR_EFFECTIVE_RESOLUTION_Y / 2,0x0707,8);
LCR_EFFECTIVE_RESOLUTION_Y / 2,0x0707,8);
break;
default:
@ -630,6 +630,7 @@ void LCR_gameHandleInput(void)
(LCR_game.menuSelectedTab + 1) % LCR_MENU_TABS;
tabSwitchedTo = LCR_game.menuSelectedTab;
LCR_game.menuSelectedItem = 0;
LCR_audioPlaySound(LCR_SOUND_CLICK);
}
else if (LCR_game.keyStates[LCR_KEY_LEFT] == 1)
{
@ -638,17 +639,22 @@ void LCR_gameHandleInput(void)
(LCR_game.menuSelectedTab + LCR_MENU_TABS - 1) % LCR_MENU_TABS;
tabSwitchedTo = LCR_game.menuSelectedTab;
LCR_game.menuSelectedItem = 0;
LCR_audioPlaySound(LCR_SOUND_CLICK);
}
else if (LCR_game.keyStates[LCR_KEY_UP] == 1)
{
LCR_LOG1("menu item up");
if (LCR_game.menuSelectedItem != 0)
{
LCR_game.menuSelectedItem--;
LCR_audioPlaySound(LCR_SOUND_CLICK);
}
else if (LCR_game.menuSelectedTab != 0 &&
LCR_game.resourceFile.firstItemIndex != 0)
{
LCR_game.menuSelectedItem = LCR_RESOURCE_ITEM_CHUNK - 1;
LCR_audioPlaySound(LCR_SOUND_CLICK);
scrolled = -1;
}
}
@ -659,14 +665,21 @@ void LCR_gameHandleInput(void)
if (LCR_game.menuSelectedTab == 0)
{
if (LCR_game.menuSelectedItem < 4)
{
LCR_game.menuSelectedItem++;
LCR_audioPlaySound(LCR_SOUND_CLICK);
}
}
else if (LCR_game.menuSelectedItem < LCR_game.menuItemCount - 1)
{
LCR_game.menuSelectedItem++;
LCR_audioPlaySound(LCR_SOUND_CLICK);
}
else if (LCR_game.resourceFile.firstItemIndex +
LCR_RESOURCE_ITEM_CHUNK < LCR_game.resourceFile.itemsTotal)
{
LCR_game.menuSelectedItem = 0;
LCR_audioPlaySound(LCR_SOUND_CLICK);
scrolled = 1;
}
}
@ -678,6 +691,7 @@ void LCR_gameHandleInput(void)
else if (LCR_game.keyStates[LCR_KEY_A] == 1)
{
LCR_LOG1("menu confirm");
LCR_audioPlaySound(LCR_SOUND_CLICK);
switch (LCR_game.menuSelectedTab)
{
@ -742,8 +756,6 @@ void LCR_gameHandleInput(void)
(tabSwitchedTo > 0) ? 0 : (LCR_game.resourceFile.firstItemIndex +
scrolled * LCR_RESOURCE_ITEM_CHUNK),
LCR_game.menuSelectedTab == 1 ? 'M' : 'R');
}
uint8_t LCR_gameStep(uint32_t time)
@ -827,10 +839,12 @@ uint8_t LCR_gameStep(uint32_t time)
LCR_racingGetCarBlockCoords(carBlock);
LCR_LOG1("CP taken");
LCR_rendererMarkTakenCP(carBlock[0],carBlock[1],carBlock[2]);
LCR_audioPlaySound(LCR_SOUND_CLICK);
}
else if (events & LCR_RACING_EVENT_FINISHED)
{
LCR_LOG1("finished");
LCR_audioPlaySound(LCR_SOUND_CLICK);
}
if (events & LCR_RACING_EVENT_CRASH_SMALL)
@ -877,11 +891,13 @@ uint8_t LCR_gameStep(uint32_t time)
if (LCR_game.state == LCR_GAME_STATE_LOADING_MAP)
{
// show the "loading" screen
LCR_rendererDrawRect(
LCR_EFFECTIVE_RESOLUTION_X / 8,
LCR_EFFECTIVE_RESOLUTION_Y / 8,
LCR_EFFECTIVE_RESOLUTION_Y / 3,
LCR_EFFECTIVE_RESOLUTION_X - LCR_EFFECTIVE_RESOLUTION_X / 4,
LCR_EFFECTIVE_RESOLUTION_Y - LCR_EFFECTIVE_RESOLUTION_Y / 4,
LCR_EFFECTIVE_RESOLUTION_Y - 2 * LCR_EFFECTIVE_RESOLUTION_Y / 3,
0xffff,0);
LCR_rendererDrawText(LCR_texts[9],