diff options
Diffstat (limited to 'gba')
| -rw-r--r-- | gba/source/savestructs.h | 14 | ||||
| -rw-r--r-- | gba/source/serialize.c | 20 |
2 files changed, 27 insertions, 7 deletions
| diff --git a/gba/source/savestructs.h b/gba/source/savestructs.h index fb8ef36..a5aff4e 100644 --- a/gba/source/savestructs.h +++ b/gba/source/savestructs.h | |||
| @@ -342,13 +342,13 @@ struct PokemonSubstruct3 | |||
| 342 | /* 0x0A */ u32 victoryRibbon:1; | 342 | /* 0x0A */ u32 victoryRibbon:1; |
| 343 | /* 0x0A */ u32 artistRibbon:1; | 343 | /* 0x0A */ u32 artistRibbon:1; |
| 344 | /* 0x0A */ u32 effortRibbon:1; | 344 | /* 0x0A */ u32 effortRibbon:1; |
| 345 | /* 0x0A */ u32 giftRibbon1:1; | 345 | /* 0x0A */ u32 marineRibbon:1; |
| 346 | /* 0x0A */ u32 giftRibbon2:1; | 346 | /* 0x0A */ u32 landRibbon:1; |
| 347 | /* 0x0A */ u32 giftRibbon3:1; | 347 | /* 0x0A */ u32 skyRibbon:1; |
| 348 | /* 0x0A */ u32 giftRibbon4:1; | 348 | /* 0x0A */ u32 countryRibbon:1; |
| 349 | /* 0x0B */ u32 giftRibbon5:1; | 349 | /* 0x0B */ u32 nationalRibbon:1; |
| 350 | /* 0x0B */ u32 giftRibbon6:1; | 350 | /* 0x0B */ u32 earthRibbon:1; |
| 351 | /* 0x0B */ u32 giftRibbon7:1; | 351 | /* 0x0B */ u32 worldRibbon:1; |
| 352 | /* 0x0B */ u32 fatefulEncounter:5; // unused in Ruby/Sapphire, but the high bit must be set for Mew/Deoxys to obey in FR/LG/Emerald | 352 | /* 0x0B */ u32 fatefulEncounter:5; // unused in Ruby/Sapphire, but the high bit must be set for Mew/Deoxys to obey in FR/LG/Emerald |
| 353 | }; | 353 | }; |
| 354 | 354 | ||
| diff --git a/gba/source/serialize.c b/gba/source/serialize.c index 5c4ff8d..4cb95ac 100644 --- a/gba/source/serialize.c +++ b/gba/source/serialize.c | |||
| @@ -101,6 +101,26 @@ void PokemonIntermediateInit( | |||
| 101 | pki->language = bpkm->language & 7; | 101 | pki->language = bpkm->language & 7; |
| 102 | pki->orre = (sub3->metGame == 15); | 102 | pki->orre = (sub3->metGame == 15); |
| 103 | 103 | ||
| 104 | pki->coolRibbons = sub3->coolRibbon; | ||
| 105 | pki->beautyRibbons = sub3->beautyRibbon; | ||
| 106 | pki->cuteRibbons = sub3->cuteRibbon; | ||
| 107 | pki->smartRibbons = sub3->smartRibbon; | ||
| 108 | pki->toughRibbons = sub3->toughRibbon; | ||
| 109 | |||
| 110 | pki->miscRibbons = | ||
| 111 | (CHAMPION_RIBBON * sub3->championRibbon) | ||
| 112 | | (WINNING_RIBBON * sub3->winningRibbon) | ||
| 113 | | (VICTORY_RIBBON * sub3->victoryRibbon) | ||
| 114 | | (ARTIST_RIBBON * sub3->artistRibbon) | ||
| 115 | | (EFFORT_RIBBON * sub3->effortRibbon) | ||
| 116 | | (MARINE_RIBBON * sub3->marineRibbon) | ||
| 117 | | (LAND_RIBBON * sub3->landRibbon) | ||
| 118 | | (SKY_RIBBON * sub3->skyRibbon) | ||
| 119 | | (COUNTRY_RIBBON * sub3->countryRibbon) | ||
| 120 | | (NATIONAL_RIBBON * sub3->nationalRibbon) | ||
| 121 | | (EARTH_RIBBON * sub3->earthRibbon) | ||
| 122 | | (WORLD_RIBBON * sub3->worldRibbon); | ||
| 123 | |||
| 104 | // Derive nature from the personality value. | 124 | // Derive nature from the personality value. |
| 105 | pki->nature = (bpkm->personality % 25); | 125 | pki->nature = (bpkm->personality % 25); |
| 106 | 126 | ||
