mirror of
https://gitlab.com/drummyfish/anarch.git
synced 2025-02-16 07:00:11 -05:00
Add save deleting
This commit is contained in:
parent
e80ec3f2f8
commit
e6b29d179f
4
game.h
4
game.h
@ -1644,9 +1644,9 @@ void SFG_setAndInitLevel(uint8_t levelNumber)
|
|||||||
void SFG_createDefaultSaveData(uint8_t *memory)
|
void SFG_createDefaultSaveData(uint8_t *memory)
|
||||||
{
|
{
|
||||||
for (uint16_t i = 0; i < SFG_SAVE_SIZE; ++i)
|
for (uint16_t i = 0; i < SFG_SAVE_SIZE; ++i)
|
||||||
SFG_game.save[i] = 0;
|
memory[i] = 0;
|
||||||
|
|
||||||
SFG_game.save[1] = SFG_DEFAULT_SETTINGS;
|
memory[1] = SFG_DEFAULT_SETTINGS;
|
||||||
}
|
}
|
||||||
|
|
||||||
void SFG_init()
|
void SFG_init()
|
||||||
|
@ -138,6 +138,25 @@ void setup()
|
|||||||
gb.setFrameRate(SFG_FPS);
|
gb.setFrameRate(SFG_FPS);
|
||||||
gb.save.config(saveDefault);
|
gb.save.config(saveDefault);
|
||||||
|
|
||||||
|
uint8_t data[SFG_SAVE_SIZE];
|
||||||
|
|
||||||
|
gb.save.get(0,data,SFG_SAVE_SIZE);
|
||||||
|
|
||||||
|
uint8_t allZeros = 1;
|
||||||
|
|
||||||
|
for (uint8_t i = 0; i < SFG_SAVE_SIZE; ++i)
|
||||||
|
if (data[i] != 0)
|
||||||
|
{
|
||||||
|
allZeros = 0;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (allZeros) // 1st time save?
|
||||||
|
{
|
||||||
|
SFG_createDefaultSaveData(data);
|
||||||
|
gb.save.set(0,data,SFG_SAVE_SIZE);
|
||||||
|
}
|
||||||
|
|
||||||
for (int i = 0; i < 256; ++i)
|
for (int i = 0; i < 256; ++i)
|
||||||
{
|
{
|
||||||
uint16_t rgb565 = paletteRGB565[i];
|
uint16_t rgb565 = paletteRGB565[i];
|
||||||
@ -148,8 +167,13 @@ void setup()
|
|||||||
blinkLED(RED);
|
blinkLED(RED);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
uint8_t stop = 0;
|
||||||
|
|
||||||
void loop()
|
void loop()
|
||||||
{
|
{
|
||||||
|
if (stop)
|
||||||
|
return;
|
||||||
|
|
||||||
while(!gb.update())
|
while(!gb.update())
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
@ -163,6 +187,17 @@ void loop()
|
|||||||
}
|
}
|
||||||
|
|
||||||
SFG_mainLoopBody();
|
SFG_mainLoopBody();
|
||||||
|
|
||||||
|
if (
|
||||||
|
gb.buttons.timeHeld(BUTTON_LEFT) >= 255 &&
|
||||||
|
gb.buttons.timeHeld(BUTTON_RIGHT) >= 255 &&
|
||||||
|
gb.buttons.timeHeld(BUTTON_B) >= 255)
|
||||||
|
{
|
||||||
|
// holding L+R+B in menu will erase all saved data
|
||||||
|
|
||||||
|
gb.save.del(0);
|
||||||
|
stop = 1;
|
||||||
|
}
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
// debuggin performance
|
// debuggin performance
|
||||||
|
@ -224,7 +224,7 @@ int main()
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (allZeros) // 1st time save
|
if (allZeros) // 1st time save?
|
||||||
{
|
{
|
||||||
SFG_createDefaultSaveData(save.data);
|
SFG_createDefaultSaveData(save.data);
|
||||||
save.saveCookie();
|
save.saveCookie();
|
||||||
|
Loading…
Reference in New Issue
Block a user