summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2017-05-15 01:19:07 -0400
committerPikalaxALT <pikalaxalt@gmail.com>2017-05-15 01:19:07 -0400
commita6840f01f49737c7db2487c252ddf0b1de16db7f (patch)
tree2c3c52aafb9766b2492e1e9bb5747bf37ab888a3 /src
parentfe5f0749278b7f6fb18d39ac2aab6db1de822625 (diff)
More secret base functions decompiled
Diffstat (limited to 'src')
-rwxr-xr-xsrc/secret_base_80bb4ac.c75
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;
+// }