Add scroll modifier

This commit is contained in:
Miloslav Ciz 2025-03-23 16:43:35 +01:00
parent 9ec3c6b406
commit 8450e113fa
5 changed files with 15 additions and 63 deletions

19
game.h
View file

@ -894,7 +894,7 @@ void LCR_gameLoadMainMenuItems(void)
LCR_game.menu.itemNames[j][i + 1] = 0;
}
LCR_game.menu.itemCount = 4;
LCR_game.menu.itemCount = 5;
}
#define LCR_GAME_DATA_FILE_BUFFER_SIZE 32
@ -940,7 +940,7 @@ void _LCR_gameDataCharWrite(char c)
void LCR_gameLoadDataFileChunk(unsigned int startIndex, char magicNumber)
{
char c;
unsigned char state = 0;
unsigned char state = 0; // 0: read magic num., >= 1: read name, 255: skip
LCR_gameEraseMenuItemNames();
@ -963,7 +963,7 @@ void LCR_gameLoadDataFileChunk(unsigned int startIndex, char magicNumber)
if (c == 0)
return;
if (state == 0) // second magic char
if (state == 0) // magic number
{
state = 255;
@ -976,15 +976,14 @@ void LCR_gameLoadDataFileChunk(unsigned int startIndex, char magicNumber)
else if (i == 1)
state = 1;
}
}
else if (i == 1 && state != 255)
{
if (c == LCR_DATA_FILE_SEPARATOR ||
c == LCR_DATA_FILE_SEPARATOR2 ||
state >= 1 + LCR_MENU_STRING_SIZE - 1)
if (c == LCR_DATA_FILE_SEPARATOR || c == LCR_DATA_FILE_SEPARATOR2 ||
(state >= 1 + LCR_MENU_STRING_SIZE - 1))
{
state = 255;
LCR_game.menu.itemCount++;
if (LCR_game.menu.itemCount >= LCR_DATA_ITEM_CHUNK)
@ -1676,8 +1675,10 @@ uint8_t LCR_gameStep(uint32_t time)
LCR_game.state == LCR_GAME_STATE_LOADING)
LCR_rendererDrawMenu(LCR_texts[LCR_TEXTS_TABS
+ LCR_game.menu.selectedTab],LCR_game.menu.itemNamePtrs,
LCR_game.menu.itemCount + 1,LCR_game.menu.selectedItem);
LCR_game.menu.itemCount,LCR_game.menu.selectedItem,
(LCR_game.menu.selectedTab > 0) &&
LCR_game.dataFile.firstItemIndex + LCR_DATA_ITEM_CHUNK - 1
< LCR_game.dataFile.itemsTotal);
else
LCR_gameDraw3DView();