diff --git a/src/defs/chara_data.h b/src/defs/chara_data.h index 801193b..ef3d143 100644 --- a/src/defs/chara_data.h +++ b/src/defs/chara_data.h @@ -36,6 +36,7 @@ struct CharacterData { bool strengthCareMistakeObtained = false; bool sleepCareMistakeObtained = false; bool careMistakeCallLight = false; + bool overfeedHappened = false; bool sleepy = false; bool asleep = false; diff --git a/src/main.cpp b/src/main.cpp index 4312cc6..4025b0e 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -87,8 +87,6 @@ void setup() { xTaskCreatePinnedToCore(secondCoreTask, "VPET_EVAL", 4096, NULL, 0, &secondLoop, 0); - debug_printFreeMemory(); - lines_initLineStorage(); vpet_initTimer(); diff --git a/src/menu/egg_select_screen.cpp b/src/menu/egg_select_screen.cpp index d71f581..096886f 100644 --- a/src/menu/egg_select_screen.cpp +++ b/src/menu/egg_select_screen.cpp @@ -49,8 +49,6 @@ void menu_reloadEggs(uint8_t selectedEgg) { lines_freeEggList(); - printf("[DEBUG] fileName=%s\n", fileName); - lines_getSingleLine(fileName); lines_getLineCareMistakes(fileName); diff --git a/src/menu/food_select_screen.cpp b/src/menu/food_select_screen.cpp index 8fce651..d12857d 100644 --- a/src/menu/food_select_screen.cpp +++ b/src/menu/food_select_screen.cpp @@ -42,6 +42,10 @@ void menu_foodScreen(TFT_eSprite &composite, TFT_eSprite &bg, TFT_eSprite &mainC submenuKey = FOOD_ICON; } else { screenKey = REFUSING_SCREEN; + if (!charaData.overfeedHappened) { + charaData.overfeed++; + charaData.overfeedHappened = true; + } } break; diff --git a/src/vpet/lines/get_single_line.cpp b/src/vpet/lines/get_single_line.cpp index 0943402..e99af4a 100644 --- a/src/vpet/lines/get_single_line.cpp +++ b/src/vpet/lines/get_single_line.cpp @@ -30,8 +30,6 @@ void lines_getSingleLine(const char* fileName) { bytesRead += lineFile.read(&selectedLine->charaNumber, 1); - printf("[DEBUG] SelectedLine numChara=%d hatchTime=%d\n", selectedLine->charaNumber, selectedLine->hatchTime); - selectedLine->characters = (LineChara_t*) malloc(selectedLine->charaNumber * sizeof(LineChara_t)); for (int i = 0; i < selectedLine->charaNumber; i++) { @@ -43,8 +41,6 @@ void lines_getSingleLine(const char* fileName) { } void lines_getSingleEggSprites(File &lineFile, Egg_t* selectedEgg) { - // Ahora si, vamos a ver cuantos sprites hay que reservar - // Importante tener el nombre de archivo del huevo en todo momento strcpy(selectedEgg->fileName, lineFile.name()); diff --git a/src/vpet/lines/on_hatch_finished.cpp b/src/vpet/lines/on_hatch_finished.cpp index 3b6cca9..275fd96 100644 --- a/src/vpet/lines/on_hatch_finished.cpp +++ b/src/vpet/lines/on_hatch_finished.cpp @@ -11,7 +11,6 @@ void lines_onHatchComplete() { char spriteFileName[30]; snprintf(spriteFileName, 30, "/chara/%02x.bin", currentLine[currentCharacter]->characters[0].id); - printf("[DEBUG] spriteFileName=%s\n", spriteFileName); storage_readFile(spriteFileName, &mainCharacterSprites); diff --git a/src/vpet/vpet.cpp b/src/vpet/vpet.cpp index 35a757d..c6b3596 100644 --- a/src/vpet/vpet.cpp +++ b/src/vpet/vpet.cpp @@ -152,6 +152,9 @@ void vpet_evalTimers() { screenKey = TIMER_FINISHED_SCREEN; interruptKey = POOPING_SCREEN; charaData.poopNumber++; + if (charaData.hunger < 4 && charaData.overfeedHappened) { + charaData.overfeedHappened = false; + } if (charaData.hunger > 0) { charaData.hungerCareMistakeTimer = charaData.initialStatsReductionTime; } else {