supercasiobros/src/save.c

61 lines
1.5 KiB
C

#include <save.h>
#include <stdint.h>
uint32_t level_scores [NB_MONDES] [WORLD_RUN_ENTRY]={0};
uint32_t level_times [NB_MONDES] [WORLD_RUN_ENTRY]={0};
uint32_t level_coins [NB_MONDES] [WORLD_RUN_ENTRY]={0};
uint32_t level_starfrags [NB_MONDES] [WORLD_RUN_ENTRY]={0};
uint32_t progress_status=0; // in worlds : world 1 only
static uint32_t checksum1;
static uint32_t const file_size = sizeof(level_scores)+sizeof(level_times)+sizeof(progress_status)+sizeof(checksum1);
void saveLoad(){};
void saveWrite(){};
int saveGetScore(int world, int level)
{
return level_scores[world%NB_MONDES][level%WORLD_RUN_ENTRY];
}
void saveSetScore(int world, int level, unsigned int score)
{
if (score>level_scores[world%NB_MONDES][level%WORLD_RUN_ENTRY])
level_scores[world%NB_MONDES][level%WORLD_RUN_ENTRY]=score;
}
int saveGetCoins(int world, int level)
{
return level_coins[world%NB_MONDES][level%WORLD_RUN_ENTRY];
}
void saveSetCoins(int world, int level, unsigned int coins)
{
if (coins>level_coins[world%NB_MONDES][level%WORLD_RUN_ENTRY])
level_coins[world%NB_MONDES][level%WORLD_RUN_ENTRY]=coins;
}
int saveGetTime(int world, int level)
{
return level_times[world%NB_MONDES][level%WORLD_RUN_ENTRY];
}
void saveSetTime(int world, int level, unsigned int time)
{
if (level_times[world%NB_MONDES][level%WORLD_RUN_ENTRY]==0 || time<level_times[world%NB_MONDES][level%WORLD_RUN_ENTRY])
level_times[world%NB_MONDES][level%WORLD_RUN_ENTRY]=time;
}
unsigned int saveGetProgressStatus()
{
return progress_status;
}