1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
#include "global.h"
#include "gflib.h"
#include "event_data.h"
#include "pokedex.h"
#include "region_map.h"
#include "save_menu_util.h"
void SaveStatToString(u8 gameStatId, u8 *dest0, u8 color)
{
int nBadges;
int flagId;
u8 *dest = dest0;
*dest++ = EXT_CTRL_CODE_BEGIN;
*dest++ = EXT_CTRL_CODE_COLOR;
*dest++ = color;
*dest++ = EXT_CTRL_CODE_BEGIN;
*dest++ = EXT_CTRL_CODE_SHADOW;
*dest++ = color + 1;
switch (gameStatId)
{
case SAVE_STAT_NAME:
dest = StringCopy(dest, gSaveBlock2Ptr->playerName);
break;
case SAVE_STAT_POKEDEX:
if (IsNationalPokedexEnabled())
dest = ConvertIntToDecimalStringN(dest, GetNationalPokedexCount(1), STR_CONV_MODE_LEFT_ALIGN, 3);
else
dest = ConvertIntToDecimalStringN(dest, GetKantoPokedexCount(1), STR_CONV_MODE_LEFT_ALIGN, 3);
break;
case SAVE_STAT_TIME:
dest = ConvertIntToDecimalStringN(dest, gSaveBlock2Ptr->playTimeHours, STR_CONV_MODE_LEFT_ALIGN, 3);
*dest++ = CHAR_COLON;
dest = ConvertIntToDecimalStringN(dest, gSaveBlock2Ptr->playTimeMinutes, STR_CONV_MODE_LEADING_ZEROS, 2);
break;
case SAVE_STAT_TIME_HR_RT_ALIGN:
dest = ConvertIntToDecimalStringN(dest, gSaveBlock2Ptr->playTimeHours, STR_CONV_MODE_RIGHT_ALIGN, 3);
*dest++ = CHAR_COLON;
dest = ConvertIntToDecimalStringN(dest, gSaveBlock2Ptr->playTimeMinutes, STR_CONV_MODE_LEADING_ZEROS, 2);
break;
case SAVE_STAT_LOCATION:
GetMapNameGeneric(dest, gMapHeader.regionMapSectionId);
break;
case SAVE_STAT_BADGES:
for (flagId = FLAG_BADGE01_GET, nBadges = 0; flagId < FLAG_BADGE01_GET + 8; flagId++)
{
if (FlagGet(flagId))
nBadges++;
}
*dest++ = nBadges + CHAR_0;
*dest++ = 10; // 'こ'
*dest++ = EOS;
break;
}
}
|