diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2017-05-15 01:19:07 -0400 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2017-05-15 01:19:07 -0400 |
commit | a6840f01f49737c7db2487c252ddf0b1de16db7f (patch) | |
tree | 2c3c52aafb9766b2492e1e9bb5747bf37ab888a3 /src | |
parent | fe5f0749278b7f6fb18d39ac2aab6db1de822625 (diff) |
More secret base functions decompiled
Diffstat (limited to 'src')
-rwxr-xr-x | src/secret_base_80bb4ac.c | 75 |
1 files changed, 46 insertions, 29 deletions
diff --git a/src/secret_base_80bb4ac.c b/src/secret_base_80bb4ac.c index f3f3641fc..cc629d05a 100755 --- a/src/secret_base_80bb4ac.c +++ b/src/secret_base_80bb4ac.c @@ -1,32 +1,49 @@ #include "global.h" -void sub_80BB4AC(struct SecretBaseRecord *record) { - u16 i; - u16 j; - record->sbr_field_0 = 0; - for (i=0; i<7; i++) - record->sbr_field_2[i] = 0xff; - for (i=0; i<4; i++) - record->trainerId[i] = 0x00; - record->sbr_field_e = 0; - record->sbr_field_10 = 0; - record->sbr_field_11 = 0; - record->sbr_field_1_0 = 0; - record->gender = 0; - record->sbr_field_1_5 = 0; - record->sbr_field_1_6 = 0; - for (i=0; i<16; i++) { - record->decorations[i] = 0; - record->sbr_field_22[i] = 0; - } - for (i=0; i<6; i++) { - for (j=0; j<4; j++) { - record->partyMoves[i * 4 + j] = 0; - } - record->partyPersonality[i] = 0; - record->partyEVs[i] = 0; - record->partySpecies[i] = 0; - record->partyHeldItems[i] = 0; - record->partyLevels[i] = 0; - } +extern int gUnknown_020387DC; +extern int gSpecialVar_0x8004; + +void sub_80BB4AC(struct SecretBaseRecord *record) { // 080bb4ac + u16 i; + u16 j; + record->sbr_field_0 = 0; + for (i=0; i<7; i++) + record->sbr_field_2[i] = 0xff; + for (i=0; i<4; i++) + record->trainerId[i] = 0x00; + record->sbr_field_e = 0; + record->sbr_field_10 = 0; + record->sbr_field_11 = 0; + record->sbr_field_1_0 = 0; + record->gender = 0; + record->sbr_field_1_5 = 0; + record->sbr_field_1_6 = 0; + for (i=0; i<16; i++) { + record->decorations[i] = 0; + record->sbr_field_22[i] = 0; + } + for (i=0; i<6; i++) { + for (j=0; j<4; j++) { + record->partyMoves[i * 4 + j] = 0; + } + record->partyPersonality[i] = 0; + record->partyEVs[i] = 0; + record->partySpecies[i] = 0; + record->partyHeldItems[i] = 0; + record->partyLevels[i] = 0; + } +} + +void ResetSecretBase(u8 idx) { // 80bb594 + sub_80BB4AC(&(gSaveBlock1.secretBases[idx])); } + +void ResetSecretBases(void) { // 080bb5b4 + u16 i; + for (i=0; i<20; i++) + ResetSecretBase(i); +} + +// void sub_80BB5D0(void) { // 080bb5d0 + // gUnknown_020387DC = gSpecialVar_0x8004; +// } |