diff options
-rw-r--r-- | data/start_menu_debug.s | 56 | ||||
-rw-r--r-- | include/safari_zone.h | 3 | ||||
-rw-r--r-- | include/wild_encounter.h | 1 | ||||
-rw-r--r-- | src/debug/start_menu_debug.c | 649 | ||||
-rw-r--r-- | src/safari_zone.c | 2 | ||||
-rw-r--r-- | src/wild_encounter.c | 6 |
6 files changed, 176 insertions, 541 deletions
diff --git a/data/start_menu_debug.s b/data/start_menu_debug.s index f309fc740..d8099cbd2 100644 --- a/data/start_menu_debug.s +++ b/data/start_menu_debug.s @@ -6,63 +6,7 @@ .section .rodata -Str_839BE94:: @ 0x839BE94 - .string "Max num of steps$" - -Str_839BEA5:: @ 0x839BEA5 - .string "Clear num of steps$" - -Str_839BEB8:: @ 0x839BEB8 - .string "See trainers$" - -Str_839BEC5:: @ 0x839BEC5 - .string "Flag all clear$" - -Str_839BED4:: @ 0x839BED4 - .string "Flag all set$" - - .align 2 -gUnknown_Debug_839BEE4:: @ 0x839BEE4 - .4byte Str_839BEB8, DebugMenu_8077974+1 - .4byte Str_839BE94, DebugMenu_8077A20+1 - .4byte Str_839BEA5, DebugMenu_8077A40+1 - .4byte Str_839BED4, DebugMenu_8077934+1 - .4byte Str_839BEC5, DebugMenu_8077954+1 - -Str_839BF0C:: @ 0x839BF0C - .string "のこり {STR_VAR_1}ほ$" - -Str_839BF14:: @ 0x839BF14 - .string "{STR_VAR_1}\n" - .string "のこり {STR_VAR_2}ほ$" - -Str_839BF1F:: @ 0x839BF1F - .string "めのまえには\n" - .string "キューブが ありません!$" - -Str_839BF33:: @ 0x839BF33 - .string "ほすうをのこり1にする$" - -Str_839BF3F:: @ 0x839BF3F - .string "ボールをのこり1にする$" - -Str_839BF4B:: @ 0x839BF4B - .string "キューブおきば$" - -Str_839BF53:: @ 0x839BF53 - .string "ボールをのこり30に$" - -Str_839BF5E:: @ 0x839BF5E - .string "ほすうをのこり500に$" - .align 2 -gUnknown_Debug_839BF6C:: @ 0x839BF6C - .4byte Str_839BF4B, DebugMenu_8077B00+1 - .4byte Str_839BF5E, DebugMenu_8077ACC+1 - .4byte Str_839BF33, DebugMenu_8077AE8+1 - .4byte Str_839BF53, DebugMenu_8077A9C+1 - .4byte Str_839BF3F, DebugMenu_8077AB4+1 - gUnknown_Debug_839BF94:: @ 0x839BF94 .4byte gMoveNames + 13 * MOVE_CUT, DebugMenu_8077BB4+1 .4byte gMoveNames + 13 * MOVE_FLASH, DebugMenu_8077BC0+1 diff --git a/include/safari_zone.h b/include/safari_zone.h index 0bee08a95..08d635794 100644 --- a/include/safari_zone.h +++ b/include/safari_zone.h @@ -2,6 +2,7 @@ #define GUARD_SAFARI_ZONE_H extern u8 gNumSafariBalls; +extern u16 gSafariZoneStepCounter; bool32 GetSafariZoneFlag(void); void SetSafariZoneFlag(void); @@ -18,6 +19,6 @@ void SafariZoneGetPokeblockNameInFeeder(void); struct Pokeblock *unref_sub_80C8418(void); struct Pokeblock *SafariZoneGetActivePokeblock(void); void SafariZoneActivatePokeblockFeeder(u8 pokeblock_index); -bool8 unref_sub_80C853C(void); +bool32 unref_sub_80C853C(void); #endif // GUARD_SAFARI_ZONE_H diff --git a/include/wild_encounter.h b/include/wild_encounter.h index 41ca31835..1b8b8dfc7 100644 --- a/include/wild_encounter.h +++ b/include/wild_encounter.h @@ -39,6 +39,7 @@ bool8 UpdateRepelCounter(void); u16 FeebasDebug_GetTrueNumberOfWaterTilesInMapThird(u8 arg0); void FeebasSeedRng(u16 seed); u16 FeebasRandom(void); +extern u8 gWildEncountersDisabled; #endif // DEBUG #endif // GUARD_WILD_ENCOUNTER_H diff --git a/src/debug/start_menu_debug.c b/src/debug/start_menu_debug.c index 0328565c6..4663d01a6 100644 --- a/src/debug/start_menu_debug.c +++ b/src/debug/start_menu_debug.c @@ -29,6 +29,9 @@ #include "mori_debug_menu.h" #include "cable_club.h" #include "field_fadetransition.h" +#include "wild_encounter.h" +#include "battle_setup.h" +#include "safari_zone.h" // berry_blender.c extern void unref_sub_80524BC(void); @@ -42,6 +45,8 @@ void DebugMenu_80771EC(void); void DebugMenu_8077238(void); u8 DebugMenu_8077D78(const struct MenuAction *menuActions); void DebugMenu_8077D24(const struct MenuAction *menuAction, u8 a1, u8 a2); +u8 DebugMenu_8077C14(void); +bool8 DebugMenu_8077DB4(void); u8 DebugMenu_Exit(void); u8 DebugMenu_OpenWatanabe(void); @@ -1073,148 +1078,54 @@ void DebugMenu_807786C(u8 a0) Menu_PrintText(sp00 + 3 * a0, 26, 1); } -NAKED -void DebugMenu_80778A8() +u8 DebugMenu_80778A8(void) { - asm( - " push {r4, lr}\n" - " ldr r4, ._211 @ gMain\n" - " ldrh r1, [r4, #0x2e]\n" - " mov r0, #0x30\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._207 @cond_branch\n" - " mov r0, #0x5\n" - " bl PlaySE\n" - " ldr r2, ._211 + 4 @ sWildEncountersDisabled\n" - " ldrb r0, [r2]\n" - " mov r1, #0x1\n" - " eor r0, r0, r1\n" - " strb r0, [r2]\n" - " ldrb r0, [r2]\n" - " bl DebugMenu_807786C\n" - "._207:\n" - " ldrh r1, [r4, #0x2e]\n" - " mov r0, #0x1\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " bne ._208 @cond_branch\n" - " mov r0, #0x2\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._209 @cond_branch\n" - "._208:\n" - " bl CloseMenu\n" - " mov r0, #0x1\n" - " b ._210\n" - "._212:\n" - " .align 2, 0\n" - "._211:\n" - " .word gMain\n" - " .word sWildEncountersDisabled\n" - "._209:\n" - " mov r0, #0x0\n" - "._210:\n" - " pop {r4}\n" - " pop {r1}\n" - " bx r1\n" - "\n" - ); + if (gMain.newKeys & (DPAD_LEFT | DPAD_RIGHT)) + { + PlaySE(SE_SELECT); + gWildEncountersDisabled ^= 1; + DebugMenu_807786C(gWildEncountersDisabled); + } + if (gMain.newKeys & A_BUTTON || gMain.newKeys & B_BUTTON) + { + CloseMenu(); + return TRUE; + } + return FALSE; } -NAKED -u8 DebugMenu_ControlEncounter() +u8 DebugMenu_ControlEncounter(void) { - asm( - " push {lr}\n" - " bl Menu_EraseScreen\n" - " ldr r0, ._213 @ sWildEncountersDisabled\n" - " ldrb r0, [r0]\n" - " bl DebugMenu_807786C\n" - " ldr r1, ._213 + 4 @ gMenuCallback\n" - " ldr r0, ._213 + 8 @ DebugMenu_80778A8\n" - " str r0, [r1]\n" - " mov r0, #0x0\n" - " pop {r1}\n" - " bx r1\n" - "._214:\n" - " .align 2, 0\n" - "._213:\n" - " .word sWildEncountersDisabled\n" - " .word gMenuCallback\n" - " .word DebugMenu_80778A8+1\n" - "\n" - ); + Menu_EraseScreen(); + DebugMenu_807786C(gWildEncountersDisabled); + gMenuCallback = DebugMenu_80778A8; + return FALSE; } -NAKED u8 DebugMenu_UseHM() { - asm( - " ldr r1, ._215 @ gMenuCallback\n" - " ldr r0, ._215 + 4 @ DebugMenu_8077C14\n" - " str r0, [r1]\n" - " mov r0, #0x0\n" - " bx lr\n" - "._216:\n" - " .align 2, 0\n" - "._215:\n" - " .word gMenuCallback\n" - " .word DebugMenu_8077C14+1\n" - "\n" - ); + gMenuCallback = DebugMenu_8077C14; + return FALSE; } -NAKED -void DebugMenu_8077934() +u8 DebugMenu_8077934(void) { - asm( - " push {lr}\n" - " mov r1, #0x0\n" - " ldr r3, ._218 @ gSaveBlock1\n" - " mov r2, #0x1\n" - "._217:\n" - " add r0, r1, r3\n" - " strb r2, [r0]\n" - " add r1, r1, #0x1\n" - " cmp r1, #0x63\n" - " bls ._217 @cond_branch\n" - " bl CloseMenu\n" - " mov r0, #0x1\n" - " pop {r1}\n" - " bx r1\n" - "._219:\n" - " .align 2, 0\n" - "._218:\n" - " .word gSaveBlock1+0x97a\n" - "\n" - ); + int i; + + for (i = 0; i < ARRAY_COUNT(gSaveBlock1.trainerRematches); i++) + gSaveBlock1.trainerRematches[i] = 1; + CloseMenu(); + return TRUE; } -NAKED -void DebugMenu_8077954() +u8 DebugMenu_8077954(void) { - asm( - " push {lr}\n" - " mov r1, #0x0\n" - " ldr r3, ._222 @ gSaveBlock1\n" - " mov r2, #0x0\n" - "._221:\n" - " add r0, r1, r3\n" - " strb r2, [r0]\n" - " add r1, r1, #0x1\n" - " cmp r1, #0x63\n" - " bls ._221 @cond_branch\n" - " bl CloseMenu\n" - " mov r0, #0x1\n" - " pop {r1}\n" - " bx r1\n" - "._223:\n" - " .align 2, 0\n" - "._222:\n" - " .word gSaveBlock1+0x97a\n" - "\n" - ); + int i; + + for (i = 0; i < ARRAY_COUNT(gSaveBlock1.trainerRematches); i++) + gSaveBlock1.trainerRematches[i] = 0; + CloseMenu(); + return TRUE; } const u8 Str_839BE6B[] = _("さいせんかのうトレーナー:{STR_VAR_1}\n" @@ -1222,368 +1133,146 @@ const u8 Str_839BE6B[] = _("さいせんかのうトレーナー:{STR_VAR_1}\n" const u8 Str_839BE8D[] = _("いる"); const u8 Str_839BE90[] = _("いない"); -NAKED -void DebugMenu_8077974() +bool8 DebugMenu_8077974(void) { - asm( - " push {lr}\n" - " bl Menu_EraseScreen\n" - " ldr r1, ._226 @ gSaveBlock1\n" - " mov r0, #0x4\n" - " ldsb r0, [r1, r0]\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " ldrb r1, [r1, #0x5]\n" - " lsl r1, r1, #0x18\n" - " asr r1, r1, #0x18\n" - " lsl r1, r1, #0x10\n" - " lsr r1, r1, #0x10\n" - " bl IsRematchTrainerIn\n" - " cmp r0, #0\n" - " beq ._224 @cond_branch\n" - " ldr r0, ._226 + 4 @ gStringVar1\n" - " ldr r1, ._226 + 8 @ Str_839BE8D\n" - " bl StringCopy\n" - " b ._225\n" - "._227:\n" - " .align 2, 0\n" - "._226:\n" - " .word gSaveBlock1\n" - " .word gStringVar1\n" - " .word Str_839BE8D\n" - "._224:\n" - " ldr r0, ._230 @ gStringVar1\n" - " ldr r1, ._230 + 4 @ Str_839BE90\n" - " bl StringCopy\n" - "._225:\n" - " ldr r1, ._230 + 8 @ gSaveBlock1\n" - " mov r0, #0x4\n" - " ldsb r0, [r1, r0]\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " ldrb r1, [r1, #0x5]\n" - " lsl r1, r1, #0x18\n" - " asr r1, r1, #0x18\n" - " lsl r1, r1, #0x10\n" - " lsr r1, r1, #0x10\n" - " bl DoesSomeoneWantRematchIn\n" - " cmp r0, #0\n" - " beq ._228 @cond_branch\n" - " ldr r0, ._230 + 12 @ gStringVar2\n" - " ldr r1, ._230 + 16 @ Str_839BE8D\n" - " bl StringCopy\n" - " b ._229\n" - "._231:\n" - " .align 2, 0\n" - "._230:\n" - " .word gStringVar1\n" - " .word Str_839BE90\n" - " .word gSaveBlock1\n" - " .word gStringVar2\n" - " .word Str_839BE8D\n" - "._228:\n" - " ldr r0, ._232 @ gStringVar2\n" - " ldr r1, ._232 + 4 @ Str_839BE90\n" - " bl StringCopy\n" - "._229:\n" - " ldr r0, ._232 + 8 @ Str_839BE6B\n" - " bl sub_8071F40\n" - " ldr r1, ._232 + 12 @ gMenuCallback\n" - " ldr r0, ._232 + 16 @ DebugMenu_8077DB4\n" - " str r0, [r1]\n" - " mov r0, #0x0\n" - " pop {r1}\n" - " bx r1\n" - "._233:\n" - " .align 2, 0\n" - "._232:\n" - " .word gStringVar2\n" - " .word Str_839BE90\n" - " .word Str_839BE6B\n" - " .word gMenuCallback\n" - " .word DebugMenu_8077DB4+1\n" - "\n" - ); + Menu_EraseScreen(); + if (IsRematchTrainerIn(gSaveBlock1.location.mapGroup, gSaveBlock1.location.mapNum)) + StringCopy(gStringVar1, Str_839BE8D); + else + StringCopy(gStringVar1, Str_839BE90); + if (DoesSomeoneWantRematchIn(gSaveBlock1.location.mapGroup, gSaveBlock1.location.mapNum)) + StringCopy(gStringVar2, Str_839BE8D); + else + StringCopy(gStringVar2, Str_839BE90); + sub_8071F40(Str_839BE6B); + gMenuCallback = DebugMenu_8077DB4; + return FALSE; } -NAKED -void DebugMenu_8077A20() +bool8 DebugMenu_8077A20(void) { - asm( - " push {lr}\n" - " ldr r0, ._234 @ gSaveBlock1\n" - " ldr r1, ._234 + 4 @ 0x978\n" - " add r0, r0, r1\n" - " mov r1, #0xff\n" - " strh r1, [r0]\n" - " bl CloseMenu\n" - " mov r0, #0x1\n" - " pop {r1}\n" - " bx r1\n" - "._235:\n" - " .align 2, 0\n" - "._234:\n" - " .word gSaveBlock1\n" - " .word 0x978\n" - "\n" - ); + gSaveBlock1.trainerRematchStepCounter = 255; + CloseMenu(); + return TRUE; } -NAKED -void DebugMenu_8077A40() +bool8 DebugMenu_8077A40(void) { - asm( - " push {lr}\n" - " ldr r0, ._236 @ gSaveBlock1\n" - " ldr r1, ._236 + 4 @ 0x978\n" - " add r0, r0, r1\n" - " mov r1, #0x0\n" - " strh r1, [r0]\n" - " bl CloseMenu\n" - " mov r0, #0x1\n" - " pop {r1}\n" - " bx r1\n" - "._237:\n" - " .align 2, 0\n" - "._236:\n" - " .word gSaveBlock1\n" - " .word 0x978\n" - "\n" - ); + gSaveBlock1.trainerRematchStepCounter = 0; + CloseMenu(); + return TRUE; } -NAKED -u8 DebugMenu_8077A60() +const u8 Str_839BE94[] = _("Max num of steps"); +const u8 Str_839BEA5[] = _("Clear num of steps"); +const u8 Str_839BEB8[] = _("See trainers"); +const u8 Str_839BEC5[] = _("Flag all clear"); +const u8 Str_839BED4[] = _("Flag all set"); + +const struct MenuAction gUnknown_Debug_839BEE4[] = { + {Str_839BEB8, DebugMenu_8077974}, + {Str_839BE94, DebugMenu_8077A20}, + {Str_839BEA5, DebugMenu_8077A40}, + {Str_839BED4, DebugMenu_8077934}, + {Str_839BEC5, DebugMenu_8077954} +}; + +u8 DebugMenu_8077A60(void) { - asm( - " push {lr}\n" - " ldr r0, ._238 @ gUnknown_Debug_839BEE4\n" - " bl DebugMenu_8077D78\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " pop {r1}\n" - " bx r1\n" - "._239:\n" - " .align 2, 0\n" - "._238:\n" - " .word gUnknown_Debug_839BEE4\n" - "\n" - ); + return DebugMenu_8077D78(gUnknown_Debug_839BEE4); } -NAKED -u8 DebugMenu_RematchTrainers() +u8 DebugMenu_RematchTrainers(void) { - asm( - " push {lr}\n" - " bl Menu_EraseScreen\n" - " ldr r0, ._240 @ gUnknown_Debug_839BEE4\n" - " mov r1, #0xd\n" - " mov r2, #0x5\n" - " bl DebugMenu_8077D24\n" - " ldr r1, ._240 + 4 @ gMenuCallback\n" - " ldr r0, ._240 + 8 @ DebugMenu_8077A60\n" - " str r0, [r1]\n" - " mov r0, #0x0\n" - " pop {r1}\n" - " bx r1\n" - "._241:\n" - " .align 2, 0\n" - "._240:\n" - " .word gUnknown_Debug_839BEE4\n" - " .word gMenuCallback\n" - " .word DebugMenu_8077A60+1\n" - "\n" - ); + Menu_EraseScreen(); + DebugMenu_8077D24(gUnknown_Debug_839BEE4, 13, 5); + gMenuCallback = DebugMenu_8077A60; + return FALSE; } -NAKED -void DebugMenu_8077A9C() +bool8 DebugMenu_8077A9C(void) { - asm( - " push {lr}\n" - " ldr r1, ._242 @ gNumSafariBalls\n" - " mov r0, #0x1e\n" - " strb r0, [r1]\n" - " bl CloseMenu\n" - " mov r0, #0x1\n" - " pop {r1}\n" - " bx r1\n" - "._243:\n" - " .align 2, 0\n" - "._242:\n" - " .word gNumSafariBalls\n" - "\n" - ); + gNumSafariBalls = 30; + CloseMenu(); + return TRUE; } -NAKED -void DebugMenu_8077AB4() +bool8 DebugMenu_8077AB4() { - asm( - " push {lr}\n" - " ldr r1, ._244 @ gNumSafariBalls\n" - " mov r0, #0x1\n" - " strb r0, [r1]\n" - " bl CloseMenu\n" - " mov r0, #0x1\n" - " pop {r1}\n" - " bx r1\n" - "._245:\n" - " .align 2, 0\n" - "._244:\n" - " .word gNumSafariBalls\n" - "\n" - ); + gNumSafariBalls = 1; + CloseMenu(); + return TRUE; } -NAKED -void DebugMenu_8077ACC() +bool8 DebugMenu_8077ACC() { - asm( - " push {lr}\n" - " ldr r1, ._246 @ gSafariZoneStepCounter\n" - " mov r2, #0xfa\n" - " lsl r2, r2, #0x1\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " bl CloseMenu\n" - " mov r0, #0x1\n" - " pop {r1}\n" - " bx r1\n" - "._247:\n" - " .align 2, 0\n" - "._246:\n" - " .word gSafariZoneStepCounter\n" - "\n" - ); + gSafariZoneStepCounter = 500; + CloseMenu(); + return TRUE; } -NAKED -void DebugMenu_8077AE8() +bool8 DebugMenu_8077AE8() { - asm( - " push {lr}\n" - " ldr r1, ._248 @ gSafariZoneStepCounter\n" - " mov r0, #0x1\n" - " strh r0, [r1]\n" - " bl CloseMenu\n" - " mov r0, #0x1\n" - " pop {r1}\n" - " bx r1\n" - "._249:\n" - " .align 2, 0\n" - "._248:\n" - " .word gSafariZoneStepCounter\n" - "\n" - ); + gSafariZoneStepCounter = 1; + CloseMenu(); + return TRUE; } -NAKED -void DebugMenu_8077B00() +const u8 Str_839BF0C[] = _("のこり {STR_VAR_1}ほ"); +const u8 Str_839BF14[] = _("{STR_VAR_1}\n" + "のこり {STR_VAR_2}ほ"); +const u8 Str_839BF1F[] = _("めのまえには\n" + "キューブが ありません!"); + +bool8 DebugMenu_8077B00() { - asm( - " push {lr}\n" - " bl Menu_EraseScreen\n" - " bl unref_sub_80C853C\n" - " cmp r0, #0\n" - " beq ._250 @cond_branch\n" - " ldr r0, ._252 @ Str_839BF14\n" - " bl sub_8071F40\n" - " b ._251\n" - "._253:\n" - " .align 2, 0\n" - "._252:\n" - " .word Str_839BF14\n" - "._250:\n" - " ldr r0, ._254 @ Str_839BF1F\n" - " bl sub_8071F40\n" - "._251:\n" - " ldr r1, ._254 + 4 @ gMenuCallback\n" - " ldr r0, ._254 + 8 @ DebugMenu_8077DB4\n" - " str r0, [r1]\n" - " mov r0, #0x0\n" - " pop {r1}\n" - " bx r1\n" - "._255:\n" - " .align 2, 0\n" - "._254:\n" - " .word Str_839BF1F\n" - " .word gMenuCallback\n" - " .word DebugMenu_8077DB4+1\n" - "\n" - ); + Menu_EraseScreen(); + if (unref_sub_80C853C()) + sub_8071F40(Str_839BF14); + else + sub_8071F40(Str_839BF1F); + gMenuCallback = DebugMenu_8077DB4; + return FALSE; } -NAKED -void DebugMenu_8077B3C() +const u8 Str_839BF33[] = _("ほすうをのこり1にする"); +const u8 Str_839BF3F[] = _("ボールをのこり1にする"); +const u8 Str_839BF4B[] = _("キューブおきば"); +const u8 Str_839BF53[] = _("ボールをのこり30に"); +const u8 Str_839BF5E[] = _("ほすうをのこり500に"); + +const struct MenuAction gUnknown_Debug_839BF6C[] = { + {Str_839BF4B, DebugMenu_8077B00}, + {Str_839BF5E, DebugMenu_8077ACC}, + {Str_839BF33, DebugMenu_8077AE8}, + {Str_839BF53, DebugMenu_8077A9C}, + {Str_839BF3F, DebugMenu_8077AB4} +}; + +bool8 DebugMenu_8077B3C() { - asm( - " push {lr}\n" - " ldr r0, ._256 @ gUnknown_Debug_839BF6C\n" - " bl DebugMenu_8077D78\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " pop {r1}\n" - " bx r1\n" - "._257:\n" - " .align 2, 0\n" - "._256:\n" - " .word gUnknown_Debug_839BF6C\n" - "\n" - ); + return DebugMenu_8077D78(gUnknown_Debug_839BF6C); } -NAKED u8 DebugMenu_Safari() { - asm( - " push {lr}\n" - " bl GetSafariZoneFlag\n" - " cmp r0, #0\n" - " beq ._258 @cond_branch\n" - " bl Menu_EraseScreen\n" - " ldr r0, ._260 @ gUnknown_Debug_839BF6C\n" - " mov r1, #0xe\n" - " mov r2, #0x5\n" - " bl DebugMenu_8077D24\n" - " ldr r0, ._260 + 4 @ gStringVar1\n" - " ldr r1, ._260 + 8 @ gSafariZoneStepCounter\n" - " ldrh r1, [r1]\n" - " mov r2, #0x1\n" - " mov r3, #0x3\n" - " bl ConvertIntToDecimalStringN\n" - " ldr r0, ._260 + 12 @ Str_839BF0C\n" - " bl sub_8071F40\n" - " ldr r1, ._260 + 16 @ gMenuCallback\n" - " ldr r0, ._260 + 20 @ DebugMenu_8077B3C\n" - " str r0, [r1]\n" - " bl ScriptContext2_Enable\n" - " mov r0, #0x0\n" - " b ._259\n" - "._261:\n" - " .align 2, 0\n" - "._260:\n" - " .word gUnknown_Debug_839BF6C\n" - " .word gStringVar1\n" - " .word gSafariZoneStepCounter\n" - " .word Str_839BF0C\n" - " .word gMenuCallback\n" - " .word DebugMenu_8077B3C+1\n" - "._258:\n" - " bl CloseMenu\n" - " mov r0, #0x16\n" - " bl PlaySE\n" - " mov r0, #0x1\n" - "._259:\n" - " pop {r1}\n" - " bx r1\n" - "\n" - ); + if (!GetSafariZoneFlag()) + { + CloseMenu(); + PlaySE(SE_BOO); + return TRUE; + } + Menu_EraseScreen(); + DebugMenu_8077D24(gUnknown_Debug_839BF6C, 14, 5); + ConvertIntToDecimalStringN(gStringVar1, gSafariZoneStepCounter, STR_CONV_MODE_RIGHT_ALIGN, 3); + sub_8071F40(Str_839BF0C); + gMenuCallback = DebugMenu_8077B3C; + ScriptContext2_Enable(); + return FALSE; } NAKED -void DebugMenu_8077BB4() +bool8 DebugMenu_8077BB4() { asm( " push {lr}\n" @@ -1596,7 +1285,7 @@ void DebugMenu_8077BB4() } NAKED -void DebugMenu_8077BC0() +bool8 DebugMenu_8077BC0() { asm( " push {lr}\n" @@ -1609,7 +1298,7 @@ void DebugMenu_8077BC0() } NAKED -void DebugMenu_8077BCC() +bool8 DebugMenu_8077BCC() { asm( " push {lr}\n" @@ -1622,7 +1311,7 @@ void DebugMenu_8077BCC() } NAKED -void DebugMenu_8077BD8() +bool8 DebugMenu_8077BD8() { asm( " push {lr}\n" @@ -1635,7 +1324,7 @@ void DebugMenu_8077BD8() } NAKED -void DebugMenu_8077BE4() +bool8 DebugMenu_8077BE4() { asm( " push {lr}\n" @@ -1649,7 +1338,7 @@ void DebugMenu_8077BE4() } NAKED -void DebugMenu_8077BF4() +bool8 DebugMenu_8077BF4() { asm( " push {lr}\n" @@ -1662,7 +1351,7 @@ void DebugMenu_8077BF4() } NAKED -void DebugMenu_8077C00() +bool8 DebugMenu_8077C00() { asm( " push {lr}\n" @@ -1681,7 +1370,7 @@ void DebugMenu_8077C00() } NAKED -void DebugMenu_8077C14() +u8 DebugMenu_8077C14(void) { asm( " push {lr}\n" @@ -1926,7 +1615,7 @@ u8 DebugMenu_8077D78(const struct MenuAction *menuActions) } NAKED -void DebugMenu_8077DB4() +bool8 DebugMenu_8077DB4(void) { asm( " push {lr}\n" @@ -1953,7 +1642,7 @@ void DebugMenu_8077DB4() } NAKED -void DebugMenu_8077DD8() +bool8 DebugMenu_8077DD8() { asm( " push {r4, r5, lr}\n" @@ -2020,7 +1709,7 @@ void DebugMenu_8077DD8() } NAKED -void DebugMenu_8077E40() +bool8 DebugMenu_8077E40() { asm( " push {r4, lr}\n" @@ -2835,7 +2524,7 @@ u8 DebugMenu_MiragaIslandRND() } NAKED -void DebugMenu_80783C8() +bool8 DebugMenu_80783C8() { asm( " push {r4, lr}\n" @@ -2927,7 +2616,7 @@ u8 DebugMenu_ToggleClearFlag() } NAKED -void DebugMenu_8078464() +bool8 DebugMenu_8078464() { asm( " push {r4, lr}\n" @@ -3009,7 +2698,7 @@ u8 DebugMenu_OpenWeatherEvents() } NAKED -void DebugMenu_80784E8() +bool8 DebugMenu_80784E8() { asm( " push {lr}\n" @@ -3171,7 +2860,7 @@ void DebugMenu_8078550() } NAKED -void DebugMenu_807860C() +bool8 DebugMenu_807860C() { asm( " push {r4, r5, lr}\n" @@ -3372,7 +3061,7 @@ void DebugMenu_8078714() } NAKED -void DebugMenu_8078758() +bool8 DebugMenu_8078758() { asm( " push {r4, lr}\n" @@ -3391,7 +3080,7 @@ void DebugMenu_8078758() } NAKED -void DebugMenu_8078774() +bool8 DebugMenu_8078774() { asm( " push {lr}\n" @@ -3410,7 +3099,7 @@ void DebugMenu_8078774() } NAKED -void DebugMenu_8078788() +bool8 DebugMenu_8078788() { asm( " push {lr}\n" @@ -3429,7 +3118,7 @@ void DebugMenu_8078788() } NAKED -void DebugMenu_807879C() +bool8 DebugMenu_807879C() { asm( " push {lr}\n" @@ -3448,7 +3137,7 @@ void DebugMenu_807879C() } NAKED -void DebugMenu_80787B0() +bool8 DebugMenu_80787B0() { asm( " push {lr}\n" @@ -4192,7 +3881,7 @@ u8 DebugMenu_CheckPKBLCK() } NAKED -void DebugMenu_8078C80() +bool8 DebugMenu_8078C80() { asm( " push {lr}\n" @@ -4218,7 +3907,7 @@ void DebugMenu_8078C80() } NAKED -void DebugMenu_8078CA8() +bool8 DebugMenu_8078CA8() { asm( " push {lr}\n" @@ -4257,7 +3946,7 @@ void DebugMenu_8078CA8() } NAKED -void DebugMenu_8078CE4() +bool8 DebugMenu_8078CE4() { asm( " push {lr}\n" @@ -4301,7 +3990,7 @@ void DebugMenu_8078CE4() } NAKED -void DebugMenu_8078D30() +bool8 DebugMenu_8078D30() { asm( " push {r4, r5, r6, lr}\n" @@ -4343,7 +4032,7 @@ void DebugMenu_8078D30() } NAKED -void DebugMenu_8078D7C() +bool8 DebugMenu_8078D7C() { asm( " push {lr}\n" @@ -4369,7 +4058,7 @@ void DebugMenu_8078D7C() } NAKED -void DebugMenu_8078DA4() +bool8 DebugMenu_8078DA4() { asm( " push {lr}\n" @@ -4422,7 +4111,7 @@ u8 DebugMenu_MeTooBackupMan() } NAKED -void DebugMenu_8078DF0() +bool8 DebugMenu_8078DF0() { asm( " push {lr}\n" @@ -4441,7 +4130,7 @@ void DebugMenu_8078DF0() } NAKED -void DebugMenu_8078E04() +bool8 DebugMenu_8078E04() { asm( " push {r4, r5, r6, lr}\n" @@ -4484,7 +4173,7 @@ void DebugMenu_8078E04() } NAKED -void DebugMenu_8078E40() +bool8 DebugMenu_8078E40() { asm( " push {r4, r5, r6, lr}\n" diff --git a/src/safari_zone.c b/src/safari_zone.c index f371b08b3..f4f1d96a6 100644 --- a/src/safari_zone.c +++ b/src/safari_zone.c @@ -236,7 +236,7 @@ static void DecrementFeederStepCounters(void) } } -bool8 unref_sub_80C853C(void) +bool32 unref_sub_80C853C(void) { SafariZoneGetPokeblockNameInFeeder(); diff --git a/src/wild_encounter.c b/src/wild_encounter.c index ddad43a56..7e5dac594 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -3698,7 +3698,7 @@ const u16 gRoute119WaterTileData[] = extern u16 gSpecialVar_Result; extern u8 S_RepelWoreOff[]; -EWRAM_DATA u8 sWildEncountersDisabled = 0; +EWRAM_DATA u8 gWildEncountersDisabled = 0; EWRAM_DATA static u32 sFeebasRngValue = 0; #define NUM_FEEBAS_SPOTS 6 @@ -3712,7 +3712,7 @@ static void ApplyCleanseTagEncounterRateMod(u32 *encRate); void DisableWildEncounters(bool8 disabled) { - sWildEncountersDisabled = disabled; + gWildEncountersDisabled = disabled; } static u16 GetRoute119WaterTileNum(s16 x, s16 y, u8 section) @@ -4110,7 +4110,7 @@ bool8 StandardWildEncounter(u16 a, u16 b) u16 headerNum; struct Roamer *roamer; - if (sWildEncountersDisabled == TRUE) + if (gWildEncountersDisabled == TRUE) return 0; else { |