Merge branch 'master' of https://github.com/pret/pokeemerald into intro

This commit is contained in:
Diegoisawesome 2018-02-17 04:03:59 -06:00
commit ebd88b3606
125 changed files with 6338 additions and 14112 deletions

View File

@ -13,7 +13,7 @@ cache:
apt: true apt: true
install: install:
- pushd $HOME - pushd $HOME
- travis_retry wget http://download.sourceforge.net/devkitpro/devkitARM_r46-x86_64-linux.tar.bz2 - travis_retry wget http://download.sourceforge.net/devkitpro/devkitARM_r47-x86_64-linux.tar.bz2
- tar xf devkitARM*.tar.bz2 - tar xf devkitARM*.tar.bz2
- travis_retry git clone https://github.com/pret/agbcc.git - travis_retry git clone https://github.com/pret/agbcc.git
- cd agbcc && ./build.sh && ./install.sh $TRAVIS_BUILD_DIR - cd agbcc && ./build.sh && ./install.sh $TRAVIS_BUILD_DIR

View File

@ -6481,7 +6481,7 @@ _0819218E:
mov r0, r9 mov r0, r9
cmp r0, 0 cmp r0, 0
bne _081921C4 bne _081921C4
ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2 bl SetMainCallback2
b _081921FC b _081921FC
.pool .pool
@ -9539,7 +9539,7 @@ _08193B84:
ldr r0, [r4] ldr r0, [r4]
bl Free bl Free
str r6, [r4] str r6, [r4]
ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2 bl SetMainCallback2
ldr r1, =gTasks ldr r1, =gTasks
lsls r0, r5, 2 lsls r0, r5, 2
@ -11320,7 +11320,7 @@ _08194B24:
ands r0, r1 ands r0, r1
cmp r0, 0 cmp r0, 0
bne _08194B3C bne _08194B3C
ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2 bl SetMainCallback2
adds r0, r4, 0 adds r0, r4, 0
bl DestroyTask bl DestroyTask
@ -14665,7 +14665,7 @@ sub_819672C: @ 819672C
ldrh r2, [r0, 0xA] ldrh r2, [r0, 0xA]
ldrh r1, [r0, 0xC] ldrh r1, [r0, 0xC]
adds r0, r2, 0 adds r0, r2, 0
bl get_mapheader_by_bank_and_number bl Overworld_GetMapHeaderByGroupAndId
ldrb r0, [r0, 0x14] ldrb r0, [r0, 0x14]
pop {r1} pop {r1}
bx r1 bx r1
@ -15923,11 +15923,11 @@ sub_8197080: @ 8197080
b _0819715C b _0819715C
_081970A2: _081970A2:
movs r0, 0 movs r0, 0
bl sub_80C0844 bl GetHoennPokedexCount
lsls r0, 16 lsls r0, 16
lsrs r4, r0, 16 lsrs r4, r0, 16
movs r0, 0x1 movs r0, 0x1
bl sub_80C0844 bl GetHoennPokedexCount
lsls r0, 16 lsls r0, 16
lsrs r6, r0, 16 lsrs r6, r0, 16
ldr r0, =gStringVar1 ldr r0, =gStringVar1
@ -15977,11 +15977,11 @@ _081970A2:
strb r6, [r5] strb r6, [r5]
adds r5, 0x1 adds r5, 0x1
movs r0, 0 movs r0, 0
bl pokedex_count bl GetNationalPokedexCount
lsls r0, 16 lsls r0, 16
lsrs r4, r0, 16 lsrs r4, r0, 16
movs r0, 0x1 movs r0, 0x1
bl pokedex_count bl GetNationalPokedexCount
lsls r0, 16 lsls r0, 16
lsrs r6, r0, 16 lsrs r6, r0, 16
mov r0, r10 mov r0, r10

View File

@ -18683,7 +18683,7 @@ _081A4294:
adds r0, r3, r4 adds r0, r3, r4
ldrh r1, [r0] ldrh r1, [r0]
movs r0, 0x20 movs r0, 0x20
bl sav12_xor_set bl SetGameStat
ldr r1, [r7] ldr r1, [r7]
adds r0, r1, r6 adds r0, r1, r6
adds r0, r4 adds r0, r4
@ -31002,7 +31002,7 @@ sub_81AA810: @ 81AA810
ldrb r1, [r3] ldrb r1, [r3]
adds r1, 0x2C adds r1, 0x2C
movs r0, 0x19 movs r0, 0x19
bl get_mapheader_by_bank_and_number bl Overworld_GetMapHeaderByGroupAndId
adds r5, r0, 0 adds r5, r0, 0
movs r7, 0 movs r7, 0
ldr r1, [r5, 0x4] ldr r1, [r5, 0x4]

View File

@ -45,13 +45,13 @@ _0813BFCA:
bge _0813BFCA bge _0813BFCA
movs r0, 0x17 movs r0, 0x17
movs r1, 0 movs r1, 0
bl sav12_xor_set bl SetGameStat
movs r0, 0x18 movs r0, 0x18
movs r1, 0 movs r1, 0
bl sav12_xor_set bl SetGameStat
movs r0, 0x19 movs r0, 0x19
movs r1, 0 movs r1, 0
bl sav12_xor_set bl SetGameStat
pop {r4,r5} pop {r4,r5}
pop {r0} pop {r0}
bx r0 bx r0
@ -855,7 +855,7 @@ sub_813C664: @ 813C664
ands r0, r1 ands r0, r1
cmp r0, 0 cmp r0, 0
bne _0813C694 bne _0813C694
ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2 bl SetMainCallback2
ldr r0, =gUnknown_0203AB78 ldr r0, =gUnknown_0203AB78
ldr r0, [r0] ldr r0, [r0]

View File

@ -3172,7 +3172,7 @@ _08163A3C:
_08163A74: _08163A74:
bl sub_816537C bl sub_816537C
_08163A78: _08163A78:
ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2 bl SetMainCallback2
add sp, 0x4 add sp, 0x4
pop {r4-r6} pop {r4-r6}

View File

@ -1,234 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start ScriptGetPokedexInfo
ScriptGetPokedexInfo: @ 8137A4C
push {lr}
ldr r0, =gSpecialVar_0x8004
ldrh r0, [r0]
cmp r0, 0
bne _08137A70
movs r0, 0
bl sub_80C0844
ldr r1, =gSpecialVar_0x8005
strh r0, [r1]
movs r0, 0x1
bl sub_80C0844
b _08137A80
.pool
_08137A70:
movs r0, 0
bl pokedex_count
ldr r1, =gSpecialVar_0x8005
strh r0, [r1]
movs r0, 0x1
bl pokedex_count
_08137A80:
ldr r1, =gSpecialVar_0x8006
strh r0, [r1]
bl IsNationalPokedexEnabled
lsls r0, 16
lsrs r0, 16
pop {r1}
bx r1
.pool
thumb_func_end ScriptGetPokedexInfo
thumb_func_start GetPokedexRatingText
GetPokedexRatingText: @ 8137A98
push {lr}
lsls r0, 16
lsrs r0, 16
cmp r0, 0x9
bhi _08137AA4
b _08137BFC
_08137AA4:
cmp r0, 0x13
bhi _08137AB0
ldr r0, =gUnknown_082A5DAB
b _08137C06
.pool
_08137AB0:
cmp r0, 0x1D
bhi _08137ABC
ldr r0, =gUnknown_082A5DF1
b _08137C06
.pool
_08137ABC:
cmp r0, 0x27
bhi _08137AC8
ldr r0, =gUnknown_082A5E34
b _08137C06
.pool
_08137AC8:
cmp r0, 0x31
bhi _08137AD4
ldr r0, =gUnknown_082A5E83
b _08137C06
.pool
_08137AD4:
cmp r0, 0x3B
bhi _08137AE0
ldr r0, =gUnknown_082A5EB9
b _08137C06
.pool
_08137AE0:
cmp r0, 0x45
bhi _08137AEC
ldr r0, =gUnknown_082A5EF4
b _08137C06
.pool
_08137AEC:
cmp r0, 0x4F
bhi _08137AF8
ldr r0, =gUnknown_082A5F39
b _08137C06
.pool
_08137AF8:
cmp r0, 0x59
bhi _08137B04
ldr r0, =gUnknown_082A5F82
b _08137C06
.pool
_08137B04:
cmp r0, 0x63
bhi _08137B10
ldr r0, =gUnknown_082A5FB9
b _08137C06
.pool
_08137B10:
cmp r0, 0x6D
bhi _08137B1C
ldr r0, =gUnknown_082A6018
b _08137C06
.pool
_08137B1C:
cmp r0, 0x77
bhi _08137B28
ldr r0, =gUnknown_082A6061
b _08137C06
.pool
_08137B28:
cmp r0, 0x81
bhi _08137B34
ldr r0, =gUnknown_082A609C
b _08137C06
.pool
_08137B34:
cmp r0, 0x8B
bhi _08137B40
ldr r0, =gUnknown_082A60D5
b _08137C06
.pool
_08137B40:
cmp r0, 0x95
bhi _08137B4C
ldr r0, =gUnknown_082A6124
b _08137C06
.pool
_08137B4C:
cmp r0, 0x9F
bhi _08137B58
ldr r0, =gUnknown_082A616F
b _08137C06
.pool
_08137B58:
cmp r0, 0xA9
bhi _08137B64
ldr r0, =gUnknown_082A61D6
b _08137C06
.pool
_08137B64:
cmp r0, 0xB3
bhi _08137B70
ldr r0, =gUnknown_082A623A
b _08137C06
.pool
_08137B70:
cmp r0, 0xBD
bhi _08137B7C
ldr r0, =gUnknown_082A6287
b _08137C06
.pool
_08137B7C:
cmp r0, 0xC7
bls _08137BEA
cmp r0, 0xC8
bne _08137BB8
ldr r0, =0x00000199
bl SpeciesToNationalPokedexNum
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
bne _08137BEA
movs r0, 0xCD
lsls r0, 1
bl SpeciesToNationalPokedexNum
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
bne _08137BEA
b _08137C04
.pool
_08137BB8:
cmp r0, 0xC9
bne _08137BF8
ldr r0, =0x00000199
bl SpeciesToNationalPokedexNum
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _08137C04
movs r0, 0xCD
lsls r0, 1
bl SpeciesToNationalPokedexNum
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _08137C04
_08137BEA:
ldr r0, =gUnknown_082A62C9
b _08137C06
.pool
_08137BF8:
cmp r0, 0xCA
beq _08137C04
_08137BFC:
ldr r0, =gUnknown_082A5D6C
b _08137C06
.pool
_08137C04:
ldr r0, =gUnknown_082A6312
_08137C06:
pop {r1}
bx r1
.pool
thumb_func_end GetPokedexRatingText
thumb_func_start ShowPokedexRatingMessage
ShowPokedexRatingMessage: @ 8137C10
push {lr}
ldr r0, =gSpecialVar_0x8004
ldrh r0, [r0]
bl GetPokedexRatingText
bl ShowFieldMessage
pop {r0}
bx r0
.pool
thumb_func_end ShowPokedexRatingMessage

View File

@ -777,7 +777,7 @@ _08150340:
bl warp_in bl warp_in
ldr r0, =gFieldCallback ldr r0, =gFieldCallback
str r4, [r0] str r4, [r0]
ldr r0, =c2_load_new_map ldr r0, =CB2_LoadMap
bl SetMainCallback2 bl SetMainCallback2
add sp, 0x8 add sp, 0x8
pop {r3} pop {r3}

View File

@ -736,7 +736,7 @@ _080B2984:
.pool .pool
_080B2994: _080B2994:
bl GetLinkPlayerCount_2 bl GetLinkPlayerCount_2
ldr r4, =gUnknown_03005DB8 ldr r4, =gFieldLinkPlayerCount
strb r0, [r4] strb r0, [r4]
bl GetMultiplayerId bl GetMultiplayerId
ldr r1, =gUnknown_03005DB4 ldr r1, =gUnknown_03005DB4
@ -826,7 +826,7 @@ _080B2A4E:
.pool .pool
_080B2A6C: _080B2A6C:
bl GetLinkPlayerCount_2 bl GetLinkPlayerCount_2
ldr r4, =gUnknown_03005DB8 ldr r4, =gFieldLinkPlayerCount
strb r0, [r4] strb r0, [r4]
bl GetMultiplayerId bl GetMultiplayerId
ldr r1, =gUnknown_03005DB4 ldr r1, =gUnknown_03005DB4
@ -2132,12 +2132,12 @@ _080B35E0:
ldrb r0, [r0] ldrb r0, [r0]
cmp r0, 0 cmp r0, 0
bne _080B35FE bne _080B35FE
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
b _080B35FE b _080B35FE
.pool .pool
_080B35F8: _080B35F8:
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
_080B35FE: _080B35FE:
bl RunTasks bl RunTasks
@ -2156,7 +2156,7 @@ sub_80B360C: @ 80B360C
negs r1, r1 negs r1, r1
ands r0, r1 ands r0, r1
str r0, [r2] str r0, [r2]
bl call_ResetMapMusic bl Overworld_ResetMapMusic
bl copy_player_party_from_sav1 bl copy_player_party_from_sav1
bl copy_bags_and_unk_data_to_save_blocks bl copy_bags_and_unk_data_to_save_blocks
bl sub_813BF10 bl sub_813BF10
@ -2586,7 +2586,7 @@ sp02A_crash_sound: @ 80B39BC
push {lr} push {lr}
ldr r0, =gSpecialVar_0x8006 ldr r0, =gSpecialVar_0x8006
ldrb r0, [r0] ldrb r0, [r0]
ldr r1, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r1, =CB2_ReturnToFieldContinueScript
bl sub_80C4E74 bl sub_80C4E74
pop {r0} pop {r0}
bx r0 bx r0

View File

@ -5588,7 +5588,7 @@ sub_80DA830: @ 80DA830
bl FreeAllWindowBuffers bl FreeAllWindowBuffers
bl sub_80D7A5C bl sub_80D7A5C
bl FreeMonSpritesGfx bl FreeMonSpritesGfx
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
_080DA860: _080DA860:
pop {r0} pop {r0}

View File

@ -1825,7 +1825,7 @@ _080F6884:
adds r0, r5, 0 adds r0, r5, 0
bl DestroyTask bl DestroyTask
bl FreeAllWindowBuffers bl FreeAllWindowBuffers
ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2 bl SetMainCallback2
bl sub_80F7E64 bl sub_80F7E64
_080F68A8: _080F68A8:

View File

@ -9252,7 +9252,7 @@ start_menu_is_selected_item_valid: @ 811EA6C
cmp r0, 0 cmp r0, 0
bne _0811EA84 bne _0811EA84
movs r0, 0 movs r0, 0
bl pokedex_count bl GetNationalPokedexCount
lsls r0, 16 lsls r0, 16
lsrs r0, 16 lsrs r0, 16
b _0811EA9A b _0811EA9A
@ -10369,7 +10369,7 @@ sub_811F2D4: @ 811F2D4
movs r5, 0 movs r5, 0
strh r5, [r0] strh r5, [r0]
movs r0, 0 movs r0, 0
bl pokedex_count bl GetNationalPokedexCount
lsls r0, 16 lsls r0, 16
cmp r0, 0 cmp r0, 0
beq _0811F2FC beq _0811F2FC

View File

@ -5,8 +5,8 @@
.text .text
thumb_func_start sub_809BEDC thumb_func_start FieldClearPlayerInput
sub_809BEDC: @ 809BEDC FieldClearPlayerInput: @ 809BEDC
push {r4,r5,lr} push {r4,r5,lr}
movs r1, 0x2 movs r1, 0x2
negs r1, r1 negs r1, r1
@ -29,11 +29,11 @@ sub_809BEDC: @ 809BEDC
pop {r4,r5} pop {r4,r5}
pop {r0} pop {r0}
bx r0 bx r0
thumb_func_end sub_809BEDC thumb_func_end FieldClearPlayerInput
thumb_func_start process_overworld_input thumb_func_start FieldGetPlayerInput
@ void process_overworld_input(overworld_input_data *input_data, char buttons_new, char buttons_held) @ void FieldGetPlayerInput(overworld_input_data *input_data, char buttons_new, char buttons_held)
process_overworld_input: @ 809BF08 FieldGetPlayerInput: @ 809BF08
push {r4-r7,lr} push {r4-r7,lr}
mov r7, r9 mov r7, r9
mov r6, r8 mov r6, r8
@ -176,7 +176,7 @@ _0809C006:
pop {r4-r7} pop {r4-r7}
pop {r0} pop {r0}
bx r0 bx r0
thumb_func_end process_overworld_input thumb_func_end FieldGetPlayerInput
thumb_func_start sub_809C014 thumb_func_start sub_809C014
@ int sub_809C014(overworld_input_data *input_data) @ int sub_809C014(overworld_input_data *input_data)
@ -2006,7 +2006,7 @@ _0809CF20:
bl sub_8084D5C bl sub_8084D5C
ldrb r0, [r5, 0x7] ldrb r0, [r5, 0x7]
ldrb r1, [r5, 0x6] ldrb r1, [r5, 0x6]
bl get_mapheader_by_bank_and_number bl Overworld_GetMapHeaderByGroupAndId
ldr r1, [r0, 0x4] ldr r1, [r0, 0x4]
ldrb r0, [r5, 0x5] ldrb r0, [r5, 0x5]
ldr r1, [r1, 0x8] ldr r1, [r1, 0x8]

View File

@ -1943,7 +1943,7 @@ _080B69D4:
thumb_func_start sub_80B69DC thumb_func_start sub_80B69DC
sub_80B69DC: @ 80B69DC sub_80B69DC: @ 80B69DC
push {lr} push {lr}
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
ldr r1, =gFieldCallback ldr r1, =gFieldCallback
ldr r0, =mapldr_080842E8 ldr r0, =mapldr_080842E8
@ -2008,9 +2008,9 @@ _080B6A64:
lsls r0, 24 lsls r0, 24
cmp r0, 0 cmp r0, 0
bne _080B6A8A bne _080B6A8A
bl flag_var_implications_of_teleport_ bl Overworld_ResetStateAfterFly
bl warp_in bl warp_in
ldr r0, =c2_load_new_map ldr r0, =CB2_LoadMap
bl SetMainCallback2 bl SetMainCallback2
ldr r1, =gFieldCallback ldr r1, =gFieldCallback
ldr r0, =mapldr_08084390 ldr r0, =mapldr_08084390
@ -2764,7 +2764,7 @@ sub_80B7060: @ 80B7060
ldr r1, =gFieldCallback ldr r1, =gFieldCallback
ldr r0, =sub_80B70B4 ldr r0, =sub_80B70B4
str r0, [r1] str r0, [r1]
ldr r0, =c2_load_new_map ldr r0, =CB2_LoadMap
bl SetMainCallback2 bl SetMainCallback2
ldr r0, =sub_80B6E88 ldr r0, =sub_80B6E88
bl FindTaskIdByFunc bl FindTaskIdByFunc
@ -3730,7 +3730,7 @@ sub_80B7814: @ 80B7814
ldr r1, =gFieldCallback ldr r1, =gFieldCallback
ldr r0, =mapldr_080851BC ldr r0, =mapldr_080851BC
str r0, [r1] str r0, [r1]
ldr r0, =c2_load_new_map ldr r0, =CB2_LoadMap
bl SetMainCallback2 bl SetMainCallback2
ldr r0, =sub_80B75F0 ldr r0, =sub_80B75F0
bl FindTaskIdByFunc bl FindTaskIdByFunc
@ -4205,7 +4205,7 @@ sub_80B7BF4: @ 80B7BF4
ldr r1, =gFieldCallback ldr r1, =gFieldCallback
ldr r0, =sub_80B6B68 ldr r0, =sub_80B6B68
str r0, [r1] str r0, [r1]
ldr r0, =c2_load_new_map ldr r0, =CB2_LoadMap
bl SetMainCallback2 bl SetMainCallback2
ldr r0, =sub_80B7A8C ldr r0, =sub_80B7A8C
bl FindTaskIdByFunc bl FindTaskIdByFunc
@ -4402,7 +4402,7 @@ _080B7D86:
ldr r1, =gFieldCallback ldr r1, =gFieldCallback
ldr r0, =mapldr_080859D4 ldr r0, =mapldr_080859D4
str r0, [r1] str r0, [r1]
ldr r0, =c2_load_new_map ldr r0, =CB2_LoadMap
bl SetMainCallback2 bl SetMainCallback2
ldr r0, =sub_80B7CE4 ldr r0, =sub_80B7CE4
bl FindTaskIdByFunc bl FindTaskIdByFunc
@ -4881,9 +4881,9 @@ _080B81B8:
lsrs r0, 24 lsrs r0, 24
cmp r0, 0x1 cmp r0, 0x1
bne _080B81E6 bne _080B81E6
bl copy_saved_warp3_bank_and_enter_x_to_warp1 bl Overworld_SetWarpDestToLastHealLoc
bl warp_in bl warp_in
ldr r0, =c2_load_new_map ldr r0, =CB2_LoadMap
bl SetMainCallback2 bl SetMainCallback2
ldr r1, =gFieldCallback ldr r1, =gFieldCallback
ldr r0, =mapldr_08085D88 ldr r0, =mapldr_08085D88
@ -5211,7 +5211,7 @@ _080B8484:
thumb_func_start sub_80B849C thumb_func_start sub_80B849C
sub_80B849C: @ 80B849C sub_80B849C: @ 80B849C
push {r4,lr} push {r4,lr}
bl sav1_map_get_light_level bl Overworld_GetMapTypeOfSaveblockLocation
lsls r0, 24 lsls r0, 24
lsrs r0, 24 lsrs r0, 24
bl is_light_level_1_2_3_5_or_6 bl is_light_level_1_2_3_5_or_6

View File

@ -1884,8 +1884,8 @@ _080ABEF4:
.pool .pool
thumb_func_end sub_80ABE18 thumb_func_end sub_80ABE18
thumb_func_start sub_80ABF00 thumb_func_start ApplyWeatherGammaShiftToPal
sub_80ABF00: @ 80ABF00 ApplyWeatherGammaShiftToPal: @ 80ABF00
push {lr} push {lr}
lsls r0, 24 lsls r0, 24
lsrs r0, 24 lsrs r0, 24
@ -1900,7 +1900,7 @@ sub_80ABF00: @ 80ABF00
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_80ABF00 thumb_func_end ApplyWeatherGammaShiftToPal
thumb_func_start sub_80ABF20 thumb_func_start sub_80ABF20
sub_80ABF20: @ 80ABF20 sub_80ABF20: @ 80ABF20
@ -7855,7 +7855,7 @@ pal_fill_for_maplights: @ 80AF040
adds r4, r0, 0 adds r4, r0, 0
lsls r4, 24 lsls r4, 24
lsrs r4, 24 lsrs r4, 24
bl sav1_map_get_light_level bl Overworld_GetMapTypeOfSaveblockLocation
adds r1, r0, 0 adds r1, r0, 0
lsls r1, 24 lsls r1, 24
lsrs r1, 24 lsrs r1, 24
@ -7910,7 +7910,7 @@ pal_fill_black: @ 80AF0A0
thumb_func_start sub_80AF0B4 thumb_func_start sub_80AF0B4
sub_80AF0B4: @ 80AF0B4 sub_80AF0B4: @ 80AF0B4
push {r4,lr} push {r4,lr}
bl sav1_map_get_light_level bl Overworld_GetMapTypeOfSaveblockLocation
adds r4, r0, 0 adds r4, r0, 0
lsls r4, 24 lsls r4, 24
lsrs r4, 24 lsrs r4, 24
@ -9015,7 +9015,7 @@ _080AF9D0:
cmp r0, 0 cmp r0, 0
bne _080AF9E8 bne _080AF9E8
bl warp_in bl warp_in
ldr r0, =c2_load_new_map ldr r0, =CB2_LoadMap
bl SetMainCallback2 bl SetMainCallback2
adds r0, r5, 0 adds r0, r5, 0
bl DestroyTask bl DestroyTask
@ -9087,7 +9087,7 @@ _080AFA64:
b _080AFA7C b _080AFA7C
_080AFA6C: _080AFA6C:
bl warp_in bl warp_in
ldr r0, =c2_load_new_map ldr r0, =CB2_LoadMap
bl SetMainCallback2 bl SetMainCallback2
adds r0, r6, 0 adds r0, r6, 0
bl DestroyTask bl DestroyTask
@ -10060,7 +10060,7 @@ _080B0222:
b _080B023A b _080B023A
_080B022A: _080B022A:
bl warp_in bl warp_in
ldr r0, =c2_load_new_map ldr r0, =CB2_LoadMap
bl SetMainCallback2 bl SetMainCallback2
adds r0, r5, 0 adds r0, r5, 0
bl DestroyTask bl DestroyTask
@ -10478,7 +10478,7 @@ sub_80B058C: @ 80B058C
thumb_func_start sub_80B05B4 thumb_func_start sub_80B05B4
sub_80B05B4: @ 80B05B4 sub_80B05B4: @ 80B05B4
push {lr} push {lr}
bl sub_80859B0 bl Overworld_FadeOutMapMusic
ldr r0, =task50_0807F0C8 ldr r0, =task50_0807F0C8
movs r1, 0x50 movs r1, 0x50
bl CreateTask bl CreateTask

View File

@ -20,7 +20,7 @@ Special_ShowDiploma: @ 8137CB4
Special_ViewWallClock: @ 8137CC8 Special_ViewWallClock: @ 8137CC8
push {lr} push {lr}
ldr r0, =gMain ldr r0, =gMain
ldr r1, =c2_exit_to_overworld_2_switch ldr r1, =CB2_ReturnToField
str r1, [r0, 0x8] str r1, [r0, 0x8]
ldr r0, =Cb2_ViewWallClock ldr r0, =Cb2_ViewWallClock
bl SetMainCallback2 bl SetMainCallback2
@ -1906,7 +1906,7 @@ _08138C7E:
thumb_func_start CB2_FieldShowRegionMap thumb_func_start CB2_FieldShowRegionMap
CB2_FieldShowRegionMap: @ 8138C84 CB2_FieldShowRegionMap: @ 8138C84
push {lr} push {lr}
ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r0, =CB2_ReturnToFieldContinueScript
bl sub_817018C bl sub_817018C
pop {r0} pop {r0}
bx r0 bx r0
@ -7153,14 +7153,14 @@ sub_813B7D8: @ 813B7D8
ldrh r0, [r0] ldrh r0, [r0]
cmp r0, 0 cmp r0, 0
bne _0813B7F8 bne _0813B7F8
ldr r2, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r2, =CB2_ReturnToFieldContinueScript
movs r0, 0 movs r0, 0
movs r1, 0x1 movs r1, 0x1
bl DoRayquazaScene bl DoRayquazaScene
b _0813B802 b _0813B802
.pool .pool
_0813B7F8: _0813B7F8:
ldr r2, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r2, =CB2_ReturnToFieldContinueScript
movs r0, 0x1 movs r0, 0x1
movs r1, 0 movs r1, 0
bl DoRayquazaScene bl DoRayquazaScene

View File

@ -88,7 +88,7 @@ sub_809D908: @ 809D908
bl sub_809D8B8 bl sub_809D8B8
adds r0, r4, 0x2 adds r0, r4, 0x2
adds r1, r4, 0x4 adds r1, r4, 0x4
bl wild_encounter_related bl UpdateAmbientCry
_0809D930: _0809D930:
pop {r4} pop {r4}
pop {r0} pop {r0}
@ -96,8 +96,8 @@ _0809D930:
.pool .pool
thumb_func_end sub_809D908 thumb_func_end sub_809D908
thumb_func_start overworld_ensure_per_step_coros_running thumb_func_start SetUpFieldTasks
overworld_ensure_per_step_coros_running: @ 809D93C SetUpFieldTasks: @ 809D93C
push {r4,r5,lr} push {r4,r5,lr}
ldr r5, =task_per_step_callback_manager ldr r5, =task_per_step_callback_manager
adds r0, r5, 0 adds r0, r5, 0
@ -142,7 +142,7 @@ _0809D992:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end overworld_ensure_per_step_coros_running thumb_func_end SetUpFieldTasks
thumb_func_start ActivatePerStepCallback thumb_func_start ActivatePerStepCallback
ActivatePerStepCallback: @ 809D9A8 ActivatePerStepCallback: @ 809D9A8
@ -182,8 +182,8 @@ _0809D9EA:
bx r0 bx r0
thumb_func_end ActivatePerStepCallback thumb_func_end ActivatePerStepCallback
thumb_func_start wild_encounter_reset_coro_args thumb_func_start ResetFieldTasksArgs
wild_encounter_reset_coro_args: @ 809D9F0 ResetFieldTasksArgs: @ 809D9F0
push {lr} push {lr}
ldr r0, =task_per_step_callback_manager ldr r0, =task_per_step_callback_manager
bl FindTaskIdByFunc bl FindTaskIdByFunc
@ -207,7 +207,7 @@ _0809DA1A:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end wild_encounter_reset_coro_args thumb_func_end ResetFieldTasksArgs
thumb_func_start nullsub_34 thumb_func_start nullsub_34
nullsub_34: @ 809DA2C nullsub_34: @ 809DA2C

View File

@ -11,7 +11,7 @@ mapconnection_get_mapheader: @ 8087D44
ldrb r2, [r0, 0x8] ldrb r2, [r0, 0x8]
ldrb r1, [r0, 0x9] ldrb r1, [r0, 0x9]
adds r0, r2, 0 adds r0, r2, 0
bl get_mapheader_by_bank_and_number bl Overworld_GetMapHeaderByGroupAndId
pop {r1} pop {r1}
bx r1 bx r1
thumb_func_end mapconnection_get_mapheader thumb_func_end mapconnection_get_mapheader

View File

@ -217,7 +217,7 @@ sub_8137304: @ 8137304
bl get_map_light_from_warp0 bl get_map_light_from_warp0
lsls r0, 24 lsls r0, 24
lsrs r6, r0, 24 lsrs r6, r0, 24
bl sav1_map_get_light_level bl Overworld_GetMapTypeOfSaveblockLocation
lsls r0, 24 lsls r0, 24
lsrs r5, r0, 24 lsrs r5, r0, 24
movs r3, 0 movs r3, 0

View File

@ -1,339 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start hm_prepare_dive_probably
hm_prepare_dive_probably: @ 8161508
push {r4-r6,lr}
bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
movs r6, 0x64
muls r0, r6
ldr r4, =gPlayerParty
adds r0, r4
movs r1, 0x3A
bl GetMonData
adds r5, r0, 0
lsls r5, 16
lsrs r5, 16
bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
muls r0, r6
adds r0, r4
movs r1, 0x39
bl GetMonData
adds r4, r0, 0
lsls r4, 16
lsrs r4, 16
adds r0, r5, 0
movs r1, 0x5
bl __udivsi3
lsls r0, 16
lsrs r0, 16
cmp r4, r0
bhi _08161558
movs r0, 0
b _0816155A
.pool
_08161558:
movs r0, 0x1
_0816155A:
pop {r4-r6}
pop {r1}
bx r1
thumb_func_end hm_prepare_dive_probably
thumb_func_start sub_8161560
sub_8161560: @ 8161560
push {r4,lr}
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
ldr r0, =gUnknown_0203CEC8
movs r1, 0xA
strb r1, [r0, 0xB]
ldrb r1, [r0, 0x9]
strb r1, [r0, 0xA]
bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
movs r1, 0x1
bl sub_81B0FCC
movs r0, 0x5
bl display_pokemon_menu_message
ldr r1, =gTasks
lsls r0, r4, 2
adds r0, r4
lsls r0, 3
adds r0, r1
ldr r1, =sub_81B1370
str r1, [r0]
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_8161560
thumb_func_start sub_81615A8
sub_81615A8: @ 81615A8
push {r4-r7,lr}
mov r7, r10
mov r6, r9
mov r5, r8
push {r5-r7}
sub sp, 0x8
lsls r0, 24
lsrs r4, r0, 24
str r4, [sp, 0x4]
ldr r1, =gUnknown_0203CEC8
ldrb r7, [r1, 0x9]
mov r8, r7
ldrb r0, [r1, 0xA]
adds r5, r0, 0
cmp r5, 0x6
bls _081615EC
movs r0, 0
strb r0, [r1, 0xB]
bl display_pokemon_menu_message
ldr r1, =gTasks
lsls r0, r4, 2
adds r0, r4
lsls r0, 3
adds r0, r1
ldr r1, =sub_81B1370
str r1, [r0]
b _08161658
.pool
_081615EC:
movs r0, 0x64
mov r10, r0
mov r0, r10
muls r0, r5
ldr r1, =gPlayerParty
mov r9, r1
adds r6, r0, r1
adds r0, r6, 0
movs r1, 0x39
bl GetMonData
lsls r0, 16
lsrs r4, r0, 16
cmp r4, 0
beq _0816161A
cmp r7, r5
beq _0816161A
adds r0, r6, 0
movs r1, 0x3A
bl GetMonData
cmp r0, r4
bne _08161628
_0816161A:
ldr r0, [sp, 0x4]
bl sub_81617B8
b _08161658
.pool
_08161628:
movs r0, 0x1
bl PlaySE
mov r1, r10
mov r0, r8
muls r0, r1
add r0, r9
movs r1, 0x3A
bl GetMonData
movs r1, 0x5
bl __udivsi3
adds r3, r0, 0
lsls r3, 16
asrs r3, 16
movs r2, 0x1
negs r2, r2
ldr r0, =sub_816166C
str r0, [sp]
ldr r0, [sp, 0x4]
mov r1, r8
bl sub_81B1F18
_08161658:
add sp, 0x8
pop {r3-r5}
mov r8, r3
mov r9, r4
mov r10, r5
pop {r4-r7}
pop {r0}
bx r0
.pool
thumb_func_end sub_81615A8
thumb_func_start sub_816166C
sub_816166C: @ 816166C
push {r4,r5,lr}
sub sp, 0x4
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
movs r0, 0x1
bl PlaySE
ldr r5, =gUnknown_0203CEC8
movs r1, 0x9
ldrsb r1, [r5, r1]
movs r0, 0x64
muls r0, r1
ldr r1, =gPlayerParty
adds r0, r1
movs r1, 0x3A
bl GetMonData
movs r1, 0x5
bl __udivsi3
adds r3, r0, 0
lsls r3, 16
asrs r3, 16
ldrb r1, [r5, 0xA]
ldr r0, =sub_81616C0
str r0, [sp]
adds r0, r4, 0
movs r2, 0x1
bl sub_81B1F18
add sp, 0x4
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_816166C
thumb_func_start sub_81616C0
sub_81616C0: @ 81616C0
push {r4,r5,lr}
adds r5, r0, 0
lsls r5, 24
lsrs r5, 24
ldr r0, =gUnknown_0203CEC8
movs r1, 0xA
ldrsb r1, [r0, r1]
movs r0, 0x64
muls r0, r1
ldr r1, =gPlayerParty
adds r0, r1
ldr r1, =gStringVar1
bl GetMonNickname
ldr r4, =gStringVar4
ldr r1, =gText_PkmnHPRestoredByVar2
adds r0, r4, 0
bl StringExpandPlaceholders
adds r0, r4, 0
movs r1, 0
bl sub_81B1B5C
movs r0, 0x2
bl schedule_bg_copy_tilemap_to_vram
ldr r1, =gTasks
lsls r0, r5, 2
adds r0, r5
lsls r0, 3
adds r0, r1
ldr r1, =sub_8161724
str r1, [r0]
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_81616C0
thumb_func_start sub_8161724
sub_8161724: @ 8161724
push {r4,r5,lr}
lsls r0, 24
lsrs r5, r0, 24
bl sub_81B1BD4
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _08161772
ldr r4, =gUnknown_0203CEC8
movs r0, 0
strb r0, [r4, 0xB]
ldrb r0, [r4, 0x9]
movs r1, 0
bl sub_81B0FCC
ldrb r0, [r4, 0xA]
strb r0, [r4, 0x9]
ldrb r0, [r4, 0xA]
movs r1, 0x1
bl sub_81B0FCC
movs r0, 0x6
movs r1, 0
bl sub_8198070
movs r0, 0x6
bl ClearWindowTilemap
movs r0, 0
bl display_pokemon_menu_message
ldr r1, =gTasks
lsls r0, r5, 2
adds r0, r5
lsls r0, 3
adds r0, r1
ldr r1, =sub_81B1370
str r1, [r0]
_08161772:
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_8161724
thumb_func_start sub_8161784
sub_8161784: @ 8161784
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
bl sub_81B1BD4
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _081617AA
movs r0, 0x5
bl display_pokemon_menu_message
ldr r0, =gTasks
lsls r1, r4, 2
adds r1, r4
lsls r1, 3
adds r1, r0
ldr r0, =sub_81B1370
str r0, [r1]
_081617AA:
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_8161784
thumb_func_start sub_81617B8
sub_81617B8: @ 81617B8
push {r4,lr}
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
movs r0, 0x5
bl PlaySE
ldr r0, =gText_CantBeUsedOnPkmn
movs r1, 0
bl sub_81B1B5C
movs r0, 0x2
bl schedule_bg_copy_tilemap_to_vram
ldr r1, =gTasks
lsls r0, r4, 2
adds r0, r4
lsls r0, 3
adds r0, r1
ldr r1, =sub_8161784
str r1, [r0]
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_81617B8
.align 2, 0 @ Don't pad with nop.

View File

@ -1,93 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start hm_prepare_rocksmash
hm_prepare_rocksmash: @ 8145DC4
push {r4,lr}
movs r0, 0x57
bl npc_before_player_of_type
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _08145DD8
movs r0, 0
b _08145DF2
_08145DD8:
ldr r4, =gSpecialVar_Result
bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
strh r0, [r4]
ldr r1, =gUnknown_03005DB0
ldr r0, =FieldCallback_Teleport
str r0, [r1]
ldr r1, =gUnknown_0203CEEC
ldr r0, =sub_8145E0C
str r0, [r1]
movs r0, 0x1
_08145DF2:
pop {r4}
pop {r1}
bx r1
.pool
thumb_func_end hm_prepare_rocksmash
thumb_func_start sub_8145E0C
sub_8145E0C: @ 8145E0C
push {lr}
bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
ldr r0, =FieryPath_EventScript_2908FD
bl ScriptContext1_SetupScript
pop {r0}
bx r0
.pool
thumb_func_end sub_8145E0C
thumb_func_start sub_8145E2C
sub_8145E2C: @ 8145E2C
push {lr}
bl oei_task_add
lsls r0, 24
lsrs r0, 24
ldr r2, =gTasks
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
adds r1, r2
ldr r2, =sub_8145E74
lsrs r0, r2, 16
strh r0, [r1, 0x18]
strh r2, [r1, 0x1A]
ldr r0, =gFieldEffectArguments
ldr r1, [r0]
movs r0, 0x64
muls r0, r1
ldr r1, =gPlayerParty
adds r0, r1
ldr r1, =gStringVar1
bl GetMonNickname
movs r0, 0
pop {r1}
bx r1
.pool
thumb_func_end sub_8145E2C
thumb_func_start sub_8145E74
sub_8145E74: @ 8145E74
push {lr}
movs r0, 0x28
bl FieldEffectActiveListRemove
bl EnableBothScriptContexts
pop {r0}
bx r0
thumb_func_end sub_8145E74
.align 2, 0 @ Don't pad with nop.

View File

@ -1,220 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start SetUpFieldMove_SweetScent
SetUpFieldMove_SweetScent: @ 8159EF0
ldr r1, =gUnknown_03005DB0
ldr r0, =FieldCallback_Teleport
str r0, [r1]
ldr r1, =gUnknown_0203CEEC
ldr r0, =hm2_sweet_scent
str r0, [r1]
movs r0, 0x1
bx lr
.pool
thumb_func_end SetUpFieldMove_SweetScent
thumb_func_start hm2_sweet_scent
hm2_sweet_scent: @ 8159F10
push {lr}
movs r0, 0x33
bl FieldEffectStart
bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
pop {r0}
bx r0
.pool
thumb_func_end hm2_sweet_scent
thumb_func_start FldEff_SweetScent
FldEff_SweetScent: @ 8159F2C
push {lr}
bl sub_80AC3D0
bl oei_task_add
lsls r0, 24
lsrs r0, 24
ldr r2, =gTasks
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
adds r1, r2
ldr r2, =sub_8159F5C
lsrs r0, r2, 16
strh r0, [r1, 0x18]
strh r2, [r1, 0x1A]
movs r0, 0
pop {r1}
bx r1
.pool
thumb_func_end FldEff_SweetScent
thumb_func_start sub_8159F5C
sub_8159F5C: @ 8159F5C
push {r4,r5,lr}
sub sp, 0x4
movs r0, 0xEC
bl PlaySE
ldr r5, =gPlttBufferUnfaded
ldr r1, =gPaletteDecompressionBuffer
movs r4, 0x80
lsls r4, 1
adds r0, r5, 0
adds r2, r4, 0
bl CpuFastSet
ldr r0, =gPlttBufferFaded
adds r1, r5, 0
adds r2, r4, 0
bl CpuFastSet
bl GetPlayerAvatarObjectId
ldr r2, =gSprites
lsls r0, 24
lsrs r0, 24
lsls r1, r0, 4
adds r1, r0
lsls r1, 2
adds r1, r2
ldrb r1, [r1, 0x5]
lsrs r1, 4
adds r1, 0x10
movs r0, 0x1
lsls r0, r1
mvns r0, r0
movs r1, 0x1F
str r1, [sp]
movs r1, 0x4
movs r2, 0
movs r3, 0x8
bl BeginNormalPaletteFade
ldr r0, =sub_8159FEC
movs r1, 0
bl CreateTask
lsls r0, 24
lsrs r0, 24
ldr r2, =gTasks
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
adds r1, r2
movs r0, 0
strh r0, [r1, 0x8]
movs r0, 0x33
bl FieldEffectActiveListRemove
add sp, 0x4
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_8159F5C
thumb_func_start sub_8159FEC
sub_8159FEC: @ 8159FEC
push {r4-r6,lr}
sub sp, 0x4
lsls r0, 24
lsrs r5, r0, 24
ldr r0, =gPaletteFade
ldrb r1, [r0, 0x7]
movs r0, 0x80
ands r0, r1
lsls r0, 24
lsrs r6, r0, 24
cmp r6, 0
bne _0815A088
bl sub_81BE72C
movs r0, 0x40
movs r1, 0x8
movs r2, 0x1F
bl BlendPalettes
ldr r0, =gTasks
lsls r1, r5, 2
adds r1, r5
lsls r1, 3
adds r4, r1, r0
ldrh r1, [r4, 0x8]
movs r2, 0x8
ldrsh r0, [r4, r2]
cmp r0, 0x40
bne _0815A084
strh r6, [r4, 0x8]
bl SweetScentWildEncounter
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _0815A044
adds r0, r5, 0
bl DestroyTask
b _0815A088
.pool
_0815A044:
ldr r0, =sub_815A090
str r0, [r4]
bl GetPlayerAvatarObjectId
ldr r2, =gSprites
lsls r0, 24
lsrs r0, 24
lsls r1, r0, 4
adds r1, r0
lsls r1, 2
adds r1, r2
ldrb r1, [r1, 0x5]
lsrs r1, 4
adds r1, 0x10
movs r0, 0x1
lsls r0, r1
mvns r0, r0
movs r1, 0x1F
str r1, [sp]
movs r1, 0x4
movs r2, 0x8
movs r3, 0
bl BeginNormalPaletteFade
bl sub_81BE6B8
b _0815A088
.pool
_0815A084:
adds r0, r1, 0x1
strh r0, [r4, 0x8]
_0815A088:
add sp, 0x4
pop {r4-r6}
pop {r0}
bx r0
thumb_func_end sub_8159FEC
thumb_func_start sub_815A090
sub_815A090: @ 815A090
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
ldr r0, =gPaletteFade
ldrb r1, [r0, 0x7]
movs r0, 0x80
ands r0, r1
cmp r0, 0
bne _0815A0BE
ldr r0, =gPaletteDecompressionBuffer
ldr r1, =gPlttBufferUnfaded
movs r2, 0x80
lsls r2, 1
bl CpuFastSet
bl sub_80AC3E4
ldr r0, =EventScript_290CAE
bl ScriptContext1_SetupScript
adds r0, r4, 0
bl DestroyTask
_0815A0BE:
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_815A090
.align 2, 0 @ Don't pad with nop.

View File

@ -713,7 +713,7 @@ _08160CD8:
b _08160E8A b _08160E8A
_08160CE6: _08160CE6:
bl sub_8160EA0 bl sub_8160EA0
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
b _08160E8A b _08160E8A
.pool .pool

File diff suppressed because it is too large Load Diff

View File

@ -9,14 +9,14 @@
sub_80D47D4: @ 80D47D4 sub_80D47D4: @ 80D47D4
push {lr} push {lr}
bl sub_80A0934 bl sub_80A0934
bl AddMapNamePopUpWindowTask bl ShowMapNamePopup
movs r0, 0x1 movs r0, 0x1
pop {r1} pop {r1}
bx r1 bx r1
thumb_func_end sub_80D47D4 thumb_func_end sub_80D47D4
thumb_func_start AddMapNamePopUpWindowTask thumb_func_start ShowMapNamePopup
AddMapNamePopUpWindowTask: @ 80D47E4 ShowMapNamePopup: @ 80D47E4
push {r4,lr} push {r4,lr}
movs r0, 0x80 movs r0, 0x80
lsls r0, 7 lsls r0, 7
@ -83,7 +83,7 @@ _080D486C:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end AddMapNamePopUpWindowTask thumb_func_end ShowMapNamePopup
thumb_func_start Task_MapNamePopUpWindow thumb_func_start Task_MapNamePopUpWindow
Task_MapNamePopUpWindow: @ 80D487C Task_MapNamePopUpWindow: @ 80D487C

File diff suppressed because it is too large Load Diff

View File

@ -10032,7 +10032,7 @@ _081B557C:
asrs r1, 24 asrs r1, 24
lsls r1, 16 lsls r1, 16
lsrs r1, 16 lsrs r1, 16
bl get_mapheader_by_bank_and_number bl Overworld_GetMapHeaderByGroupAndId
adds r1, r0, 0 adds r1, r0, 0
ldr r0, =gStringVar1 ldr r0, =gStringVar1
ldrb r1, [r1, 0x14] ldrb r1, [r1, 0x14]
@ -10057,7 +10057,7 @@ _081B55B8:
asrs r1, 24 asrs r1, 24
lsls r1, 16 lsls r1, 16
lsrs r1, 16 lsrs r1, 16
bl get_mapheader_by_bank_and_number bl Overworld_GetMapHeaderByGroupAndId
adds r1, r0, 0 adds r1, r0, 0
ldr r0, =gStringVar1 ldr r0, =gStringVar1
ldrb r1, [r1, 0x14] ldrb r1, [r1, 0x14]
@ -10083,7 +10083,7 @@ _081B5614:
.pool .pool
_081B5624: _081B5624:
ldr r1, =gUnknown_0203CEC8 ldr r1, =gUnknown_0203CEC8
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
_081B5628: _081B5628:
str r0, [r1] str r0, [r1]
adds r0, r6, 0 adds r0, r6, 0
@ -10189,7 +10189,7 @@ _081B56F8:
b _081B572A b _081B572A
_081B56FE: _081B56FE:
ldr r1, =gUnknown_0203CEC8 ldr r1, =gUnknown_0203CEC8
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
str r0, [r1] str r0, [r1]
adds r0, r4, 0 adds r0, r4, 0
bl sub_81B12C0 bl sub_81B12C0
@ -10408,7 +10408,7 @@ sub_81B58A8: @ 81B58A8
str r0, [sp] str r0, [sp]
ldr r0, =sub_81B1370 ldr r0, =sub_81B1370
str r0, [sp, 0x4] str r0, [sp, 0x4]
ldr r0, =sub_8086194 ldr r0, =CB2_ReturnToFieldWithOpenMenu
str r0, [sp, 0x8] str r0, [sp, 0x8]
movs r0, 0 movs r0, 0
movs r1, 0 movs r1, 0
@ -14836,7 +14836,7 @@ CB2_PartyMenuFromStartMenu: @ 81B7F34
str r0, [sp] str r0, [sp]
ldr r0, =sub_81B1370 ldr r0, =sub_81B1370
str r0, [sp, 0x4] str r0, [sp, 0x4]
ldr r0, =sub_8086194 ldr r0, =CB2_ReturnToFieldWithOpenMenu
str r0, [sp, 0x8] str r0, [sp, 0x8]
movs r0, 0 movs r0, 0
movs r1, 0 movs r1, 0
@ -16021,7 +16021,7 @@ sub_81B892C: @ 81B892C
str r0, [sp] str r0, [sp]
ldr r0, =sub_81B1370 ldr r0, =sub_81B1370
str r0, [sp, 0x4] str r0, [sp, 0x4]
ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r0, =CB2_ReturnToFieldContinueScript
str r0, [sp, 0x8] str r0, [sp, 0x8]
movs r0, 0 movs r0, 0
movs r1, 0 movs r1, 0
@ -16042,7 +16042,7 @@ sub_81B8958: @ 81B8958
str r0, [sp] str r0, [sp]
ldr r0, =sub_81B1370 ldr r0, =sub_81B1370
str r0, [sp, 0x4] str r0, [sp, 0x4]
ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r0, =CB2_ReturnToFieldContinueScript
str r0, [sp, 0x8] str r0, [sp, 0x8]
movs r0, 0xB movs r0, 0xB
movs r1, 0 movs r1, 0
@ -17283,7 +17283,7 @@ sub_81B9354: @ 81B9354
str r1, [sp] str r1, [sp]
ldr r1, =sub_81B1370 ldr r1, =sub_81B1370
str r1, [sp, 0x4] str r1, [sp, 0x4]
ldr r1, =c2_exit_to_overworld_2_switch ldr r1, =CB2_ReturnToField
str r1, [sp, 0x8] str r1, [sp, 0x8]
movs r1, 0 movs r1, 0
movs r2, 0xB movs r2, 0xB
@ -17311,7 +17311,7 @@ _081B93A6:
ldr r0, =gUnknown_03005DB0 ldr r0, =gUnknown_03005DB0
ldr r1, =hm_add_c3_without_phase_2 ldr r1, =hm_add_c3_without_phase_2
str r1, [r0] str r1, [r0]
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
pop {r4} pop {r4}
pop {r0} pop {r0}
@ -17420,7 +17420,7 @@ _081B9486:
ldr r1, =gUnknown_03005DB0 ldr r1, =gUnknown_03005DB0
ldr r0, =hm_add_c3_without_phase_2 ldr r0, =hm_add_c3_without_phase_2
str r0, [r1] str r0, [r1]
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
pop {r0} pop {r0}
bx r0 bx r0
@ -17556,7 +17556,7 @@ _081B95BA:
ldr r0, =gUnknown_03005DB0 ldr r0, =gUnknown_03005DB0
ldr r1, =hm_add_c3_without_phase_2 ldr r1, =hm_add_c3_without_phase_2
str r1, [r0] str r1, [r0]
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
pop {r4,r5} pop {r4,r5}
pop {r0} pop {r0}
@ -17660,7 +17660,7 @@ sub_81B968C: @ 81B968C
subs r3, 0x1 subs r3, 0x1
lsls r3, 24 lsls r3, 24
lsrs r3, 24 lsrs r3, 24
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
str r0, [sp] str r0, [sp]
movs r0, 0x3 movs r0, 0x3
bl sub_81BF8EC bl sub_81BF8EC

View File

@ -586,7 +586,7 @@ sub_816B31C: @ 816B31C
ldr r0, =gFieldCallback ldr r0, =gFieldCallback
ldr r1, =mapldr_080EBC0C ldr r1, =mapldr_080EBC0C
str r1, [r0] str r1, [r0]
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
pop {r0} pop {r0}
bx r0 bx r0
@ -1279,7 +1279,7 @@ sub_816B900: @ 816B900
ldr r0, =gFieldCallback ldr r0, =gFieldCallback
ldr r1, =pal_fill_for_maplights_or_black ldr r1, =pal_fill_for_maplights_or_black
str r1, [r0] str r1, [r0]
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
pop {r0} pop {r0}
bx r0 bx r0
@ -1538,7 +1538,7 @@ sub_816BB28: @ 816BB28
ldr r0, =gFieldCallback ldr r0, =gFieldCallback
ldr r1, =sub_816BB48 ldr r1, =sub_816BB48
str r1, [r0] str r1, [r0]
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
pop {r0} pop {r0}
bx r0 bx r0

View File

@ -443,24 +443,24 @@ _080BB65E:
cmp r0, 0 cmp r0, 0
bne _080BB6D0 bne _080BB6D0
movs r0, 0 movs r0, 0
bl sub_80C0844 bl GetHoennPokedexCount
ldr r1, [r4] ldr r1, [r4]
ldr r2, =0x0000061a ldr r2, =0x0000061a
adds r1, r2 adds r1, r2
strh r0, [r1] strh r0, [r1]
movs r0, 0x1 movs r0, 0x1
bl sub_80C0844 bl GetHoennPokedexCount
b _080BB6E4 b _080BB6E4
.pool .pool
_080BB6D0: _080BB6D0:
movs r0, 0 movs r0, 0
bl pokedex_count bl GetNationalPokedexCount
ldr r1, [r4] ldr r1, [r4]
ldr r2, =0x0000061a ldr r2, =0x0000061a
adds r1, r2 adds r1, r2
strh r0, [r1] strh r0, [r1]
movs r0, 0x1 movs r0, 0x1
bl pokedex_count bl GetNationalPokedexCount
_080BB6E4: _080BB6E4:
ldr r1, [r4] ldr r1, [r4]
ldr r3, =0x0000061c ldr r3, =0x0000061c
@ -1244,7 +1244,7 @@ _080BBE18:
bl sub_80BC890 bl sub_80BC890
adds r0, r6, 0 adds r0, r6, 0
bl DestroyTask bl DestroyTask
ldr r0, =sub_8086194 ldr r0, =CB2_ReturnToFieldWithOpenMenu
bl SetMainCallback2 bl SetMainCallback2
ldr r0, =gMPlayInfo_BGM ldr r0, =gMPlayInfo_BGM
ldr r1, =0x0000ffff ldr r1, =0x0000ffff
@ -5058,7 +5058,7 @@ _080BDF4C:
movs r1, 0x1 movs r1, 0x1
bl StartSpriteAnim bl StartSpriteAnim
movs r0, 0 movs r0, 0
bl sub_80C0844 bl GetHoennPokedexCount
lsls r0, 16 lsls r0, 16
lsrs r6, r0, 16 lsrs r6, r0, 16
movs r0, 0 movs r0, 0
@ -5283,7 +5283,7 @@ _080BE198:
lsrs r1, 24 lsrs r1, 24
bl StartSpriteAnim bl StartSpriteAnim
movs r0, 0x1 movs r0, 0x1
bl sub_80C0844 bl GetHoennPokedexCount
lsls r0, 16 lsls r0, 16
lsrs r6, r0, 16 lsrs r6, r0, 16
movs r0, 0 movs r0, 0
@ -9597,8 +9597,8 @@ _080C07E8:
.pool .pool
thumb_func_end GetSetPokedexFlag thumb_func_end GetSetPokedexFlag
thumb_func_start pokedex_count thumb_func_start GetNationalPokedexCount
pokedex_count: @ 80C07F4 GetNationalPokedexCount: @ 80C07F4
push {r4-r7,lr} push {r4-r7,lr}
lsls r0, 24 lsls r0, 24
lsrs r6, r0, 24 lsrs r6, r0, 24
@ -9641,10 +9641,10 @@ _080C0832:
pop {r4-r7} pop {r4-r7}
pop {r1} pop {r1}
bx r1 bx r1
thumb_func_end pokedex_count thumb_func_end GetNationalPokedexCount
thumb_func_start sub_80C0844 thumb_func_start GetHoennPokedexCount
sub_80C0844: @ 80C0844 GetHoennPokedexCount: @ 80C0844
push {r4-r6,lr} push {r4-r6,lr}
lsls r0, 24 lsls r0, 24
lsrs r6, r0, 24 lsrs r6, r0, 24
@ -9691,7 +9691,7 @@ _080C088C:
pop {r4-r6} pop {r4-r6}
pop {r1} pop {r1}
bx r1 bx r1
thumb_func_end sub_80C0844 thumb_func_end GetHoennPokedexCount
thumb_func_start sub_80C089C thumb_func_start sub_80C089C
sub_80C089C: @ 80C089C sub_80C089C: @ 80C089C

View File

@ -308,7 +308,7 @@ _0813CCB8:
ldr r1, [r5] ldr r1, [r5]
ldrb r0, [r1, 0x10] ldrb r0, [r1, 0x10]
ldrb r1, [r1, 0x11] ldrb r1, [r1, 0x11]
bl get_mapheader_by_bank_and_number bl Overworld_GetMapHeaderByGroupAndId
ldr r1, [r5] ldr r1, [r5]
ldrb r0, [r0, 0x14] ldrb r0, [r0, 0x14]
strh r0, [r1, 0x12] strh r0, [r1, 0x12]
@ -360,7 +360,7 @@ sub_813CD04: @ 813CD04
strb r3, [r1, 0x11] strb r3, [r1, 0x11]
adds r0, r5, 0 adds r0, r5, 0
adds r1, r3, 0 adds r1, r3, 0
bl get_mapheader_by_bank_and_number bl Overworld_GetMapHeaderByGroupAndId
ldrb r0, [r0, 0x14] ldrb r0, [r0, 0x14]
bl CorrectSpecialMapSecId bl CorrectSpecialMapSecId
ldr r2, [r4] ldr r2, [r4]
@ -496,7 +496,7 @@ sub_813CE34: @ 813CE34
lsrs r0, 24 lsrs r0, 24
lsls r1, 24 lsls r1, 24
lsrs r1, 24 lsrs r1, 24
bl get_mapheader_by_bank_and_number bl Overworld_GetMapHeaderByGroupAndId
ldrb r0, [r0, 0x14] ldrb r0, [r0, 0x14]
pop {r1} pop {r1}
bx r1 bx r1

View File

@ -657,7 +657,7 @@ sub_80C7678: @ 80C7678
ldr r1, =gFieldCallback ldr r1, =gFieldCallback
ldr r0, =mapldr_0808C6D8 ldr r0, =mapldr_0808C6D8
str r0, [r1] str r0, [r1]
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
pop {r0} pop {r0}
bx r0 bx r0

View File

@ -2024,7 +2024,7 @@ sub_81C4EEC: @ 81C4EEC
thumb_func_start sub_81C4EFC thumb_func_start sub_81C4EFC
sub_81C4EFC: @ 81C4EFC sub_81C4EFC: @ 81C4EFC
push {lr} push {lr}
ldr r1, =sub_8086194 ldr r1, =CB2_ReturnToFieldWithOpenMenu
movs r0, 0 movs r0, 0
bl sub_81C4F98 bl sub_81C4F98
pop {r0} pop {r0}
@ -2073,7 +2073,7 @@ sub_81C4F44: @ 81C4F44
ldr r0, =gUnknown_03005DB0 ldr r0, =gUnknown_03005DB0
ldr r1, =hm_add_c3_without_phase_2 ldr r1, =hm_add_c3_without_phase_2
str r1, [r0] str r1, [r0]
ldr r1, =c2_exit_to_overworld_2_switch ldr r1, =CB2_ReturnToField
movs r0, 0x3 movs r0, 0x3
bl sub_81C4F98 bl sub_81C4F98
adds r0, r4, 0 adds r0, r4, 0

View File

@ -14,7 +14,7 @@ CB2_PokeNav: @ 81C7250
str r0, [r4] str r0, [r4]
cmp r0, 0 cmp r0, 0
bne _081C7270 bne _081C7270
ldr r0, =sub_8086194 ldr r0, =CB2_ReturnToFieldWithOpenMenu
bl SetMainCallback2 bl SetMainCallback2
b _081C7292 b _081C7292
.pool .pool
@ -66,7 +66,7 @@ sub_81C72BC: @ 81C72BC
str r0, [r4] str r0, [r4]
cmp r0, 0 cmp r0, 0
bne _081C72F0 bne _081C72F0
ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2 bl SetMainCallback2
b _081C7320 b _081C7320
.pool .pool
@ -351,12 +351,12 @@ _081C752C:
bl sub_81C7334 bl sub_81C7334
cmp r4, 0 cmp r4, 0
beq _081C755C beq _081C755C
ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2 bl SetMainCallback2
b _081C7562 b _081C7562
.pool .pool
_081C755C: _081C755C:
ldr r0, =sub_8086194 ldr r0, =CB2_ReturnToFieldWithOpenMenu
bl SetMainCallback2 bl SetMainCallback2
_081C7562: _081C7562:
pop {r4-r7} pop {r4-r7}
@ -8095,7 +8095,7 @@ sub_81CB0C8: @ 81CB0C8
ldrh r2, [r0, 0xA] ldrh r2, [r0, 0xA]
ldrh r1, [r0, 0xC] ldrh r1, [r0, 0xC]
adds r0, r2, 0 adds r0, r2, 0
bl get_mapheader_by_bank_and_number bl Overworld_GetMapHeaderByGroupAndId
ldrb r0, [r0, 0x14] ldrb r0, [r0, 0x14]
pop {r1} pop {r1}
bx r1 bx r1
@ -30295,7 +30295,7 @@ sub_81D6120: @ 81D6120
push {lr} push {lr}
movs r0, 0x1A movs r0, 0x1A
movs r1, 0x40 movs r1, 0x40
bl get_mapheader_by_bank_and_number bl Overworld_GetMapHeaderByGroupAndId
ldr r0, [r0, 0x4] ldr r0, [r0, 0x4]
ldr r0, [r0, 0x8] ldr r0, [r0, 0x8]
adds r0, 0x8 adds r0, 0x8
@ -30334,7 +30334,7 @@ _081D6162:
adds r0, r1 adds r0, r1
ldrh r1, [r0] ldrh r1, [r0]
movs r0, 0x1A movs r0, 0x1A
bl get_mapheader_by_bank_and_number bl Overworld_GetMapHeaderByGroupAndId
ldr r0, [r0, 0x4] ldr r0, [r0, 0x4]
ldr r0, [r0, 0x8] ldr r0, [r0, 0x8]
_081D6176: _081D6176:

View File

@ -44,7 +44,7 @@ _0813776C:
ldrb r0, [r2, 0x11] ldrb r0, [r2, 0x11]
orrs r1, r0 orrs r1, r0
movs r0, 0x1 movs r0, 0x1
bl sav12_xor_set bl SetGameStat
_0813778E: _0813778E:
bl sub_8076D48 bl sub_8076D48
ldr r0, =gSaveBlock2Ptr ldr r0, =gSaveBlock2Ptr

View File

@ -376,7 +376,7 @@ _0813574C:
thumb_func_start hm2_dig thumb_func_start hm2_dig
hm2_dig: @ 8135760 hm2_dig: @ 8135760
push {lr} push {lr}
bl flagmods_08054D70 bl Overworld_ResetStateAfterDigEscRope
movs r0, 0x26 movs r0, 0x26
bl FieldEffectStart bl FieldEffectStart
bl GetCursorSelectionMonId bl GetCursorSelectionMonId

View File

@ -3116,7 +3116,7 @@ _08014070:
movs r0, 0x6 movs r0, 0x6
strb r0, [r1, 0x1] strb r0, [r1, 0x1]
ldr r1, =gMain ldr r1, =gMain
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
str r0, [r1, 0x8] str r0, [r1, 0x8]
ldr r0, =sub_807AE50 ldr r0, =sub_807AE50
bl SetMainCallback2 bl SetMainCallback2
@ -3258,7 +3258,7 @@ _080141D4:
eors r0, r1 eors r0, r1
lsls r0, 24 lsls r0, 24
lsrs r0, 24 lsrs r0, 24
ldr r1, =c2_exit_to_overworld_2_switch ldr r1, =CB2_ReturnToField
bl sub_80C4E74 bl sub_80C4E74
_080141F2: _080141F2:
bl RunTasks bl RunTasks
@ -3399,7 +3399,7 @@ sub_8014304: @ 8014304
ldr r0, =0x00004087 ldr r0, =0x00004087
bl VarSet bl VarSet
bl GetLinkPlayerCount bl GetLinkPlayerCount
ldr r1, =gUnknown_03005DB8 ldr r1, =gFieldLinkPlayerCount
strb r0, [r1] strb r0, [r1]
bl GetMultiplayerId bl GetMultiplayerId
ldr r1, =gUnknown_03005DB4 ldr r1, =gUnknown_03005DB4
@ -3757,7 +3757,7 @@ _08014714:
bl GetCursorSelectionMonId bl GetCursorSelectionMonId
lsls r0, 24 lsls r0, 24
lsrs r0, 24 lsrs r0, 24
ldr r1, =c2_load_new_map ldr r1, =CB2_LoadMap
bl sub_802A9A8 bl sub_802A9A8
b _08014764 b _08014764
.pool .pool
@ -3766,7 +3766,7 @@ _08014734:
movs r1, 0x9 movs r1, 0x9
movs r2, 0x1 movs r2, 0x1
bl sub_8014290 bl sub_8014290
ldr r0, =c2_load_new_map ldr r0, =CB2_LoadMap
bl sub_8020C70 bl sub_8020C70
b _08014764 b _08014764
.pool .pool
@ -3778,7 +3778,7 @@ _0801474C:
bl GetCursorSelectionMonId bl GetCursorSelectionMonId
lsls r0, 24 lsls r0, 24
lsrs r0, 24 lsrs r0, 24
ldr r1, =c2_load_new_map ldr r1, =CB2_LoadMap
bl sub_802493C bl sub_802493C
_08014764: _08014764:
adds r0, r4, 0 adds r0, r4, 0
@ -6931,7 +6931,7 @@ _08016502:
ldr r1, =gFieldCallback ldr r1, =gFieldCallback
ldr r0, =sub_80AF128 ldr r0, =sub_80AF128
str r0, [r1] str r0, [r1]
ldr r1, =c2_exit_to_overworld_2_switch ldr r1, =CB2_ReturnToField
movs r0, 0x8 movs r0, 0x8
bl sub_81B8904 bl sub_81B8904
b _08016878 b _08016878
@ -7229,7 +7229,7 @@ _0801677E:
ldr r1, =gFieldCallback ldr r1, =gFieldCallback
ldr r0, =sub_80AF128 ldr r0, =sub_80AF128
str r0, [r1] str r0, [r1]
ldr r1, =c2_exit_to_overworld_2_switch ldr r1, =CB2_ReturnToField
movs r0, 0x9 movs r0, 0x9
bl sub_81B8904 bl sub_81B8904
adds r0, r6, 0 adds r0, r6, 0
@ -14941,7 +14941,7 @@ _0801A58C:
ldr r0, =gUnknown_03000DAC ldr r0, =gUnknown_03000DAC
ldr r0, [r0] ldr r0, [r0]
bl Free bl Free
ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2 bl SetMainCallback2
pop {r4} pop {r4}
pop {r0} pop {r0}
@ -16076,7 +16076,7 @@ _0801AF58:
bl sub_801ABDC bl sub_801ABDC
cmp r0, 0 cmp r0, 0
beq _0801AFAE beq _0801AFAE
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
b _0801AFAE b _0801AFAE
.pool .pool
@ -16102,7 +16102,7 @@ _0801AF98:
bl sub_801ABDC bl sub_801ABDC
cmp r0, 0 cmp r0, 0
beq _0801AFAE beq _0801AFAE
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
_0801AFAE: _0801AFAE:
bl RunTasks bl RunTasks
@ -23568,7 +23568,7 @@ _0801EBA8:
bne _0801EBC2 bne _0801EBC2
bl sub_801F544 bl sub_801F544
bl sub_801DE30 bl sub_801DE30
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
_0801EBC2: _0801EBC2:
add sp, 0x4 add sp, 0x4
@ -27694,7 +27694,7 @@ _08020C26:
str r0, [r5] str r0, [r5]
adds r0, r4, 0 adds r0, r4, 0
bl SetMainCallback2 bl SetMainCallback2
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
cmp r4, r0 cmp r4, r0
bne _08020C5A bne _08020C5A
ldr r2, =gTextFlags ldr r2, =gTextFlags
@ -27705,8 +27705,8 @@ _08020C26:
movs r0, 0xC8 movs r0, 0xC8
lsls r0, 1 lsls r0, 1
bl PlayNewMapMusic bl PlayNewMapMusic
ldr r0, =c1_overworld ldr r0, =CB1_Overworld
bl set_callback1 bl SetMainCallback1
_08020C5A: _08020C5A:
movs r0, 0 movs r0, 0
_08020C5C: _08020C5C:

View File

@ -915,8 +915,8 @@ _080FBECA:
bx r0 bx r0
thumb_func_end RotatingGatePuzzleCameraUpdate thumb_func_end RotatingGatePuzzleCameraUpdate
thumb_func_start sub_80FBED0 thumb_func_start RotatingGate_InitPuzzleAndGraphics
sub_80FBED0: @ 80FBED0 RotatingGate_InitPuzzleAndGraphics: @ 80FBED0
push {lr} push {lr}
bl GetCurrentMapRotatingGatePuzzleType bl GetCurrentMapRotatingGatePuzzleType
cmp r0, 0 cmp r0, 0
@ -929,7 +929,7 @@ sub_80FBED0: @ 80FBED0
_080FBEEA: _080FBEEA:
pop {r0} pop {r0}
bx r0 bx r0
thumb_func_end sub_80FBED0 thumb_func_end RotatingGate_InitPuzzleAndGraphics
thumb_func_start CheckForRotatingGatePuzzleCollision thumb_func_start CheckForRotatingGatePuzzleCollision
CheckForRotatingGatePuzzleCollision: @ 80FBEF0 CheckForRotatingGatePuzzleCollision: @ 80FBEF0

View File

@ -2570,7 +2570,7 @@ sub_8141800: @ 8141800
movs r0, 0x1E movs r0, 0x1E
ldrsh r1, [r4, r0] ldrsh r1, [r4, r0]
movs r0, 0x1D movs r0, 0x1D
bl sav12_xor_set bl SetGameStat
_08141848: _08141848:
ldr r1, =sub_8141A18 ldr r1, =sub_8141A18
ldr r2, =0x0000ffff ldr r2, =0x0000ffff
@ -3276,7 +3276,7 @@ sub_8141E7C: @ 8141E7C
ldr r1, =gFieldCallback ldr r1, =gFieldCallback
ldr r0, =sub_80AF168 ldr r0, =sub_80AF168
str r0, [r1] str r0, [r1]
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
adds r0, r5, 0 adds r0, r5, 0
bl DestroyTask bl DestroyTask

View File

@ -390,7 +390,7 @@ _080F8AB6:
thumb_func_start sub_80F8ACC thumb_func_start sub_80F8ACC
sub_80F8ACC: @ 80F8ACC sub_80F8ACC: @ 80F8ACC
push {lr} push {lr}
ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2 bl SetMainCallback2
pop {r0} pop {r0}
bx r0 bx r0
@ -1559,7 +1559,7 @@ _080F9478:
movs r0, 0x1 movs r0, 0x1
strh r0, [r1] strh r0, [r1]
_080F947E: _080F947E:
ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2 bl SetMainCallback2
pop {r0} pop {r0}
bx r0 bx r0
@ -1599,7 +1599,7 @@ _080F94D0:
movs r0, 0x1 movs r0, 0x1
strh r0, [r1] strh r0, [r1]
_080F94D6: _080F94D6:
ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2 bl SetMainCallback2
pop {r0} pop {r0}
bx r0 bx r0

View File

@ -230,7 +230,7 @@ CB2_ExitSellMenu: @ 80DFC48
ldr r0, =gFieldCallback ldr r0, =gFieldCallback
ldr r1, =MapPostLoadHook_ExitBuyOrSellMenu ldr r1, =MapPostLoadHook_ExitBuyOrSellMenu
str r1, [r0] str r1, [r0]
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
pop {r0} pop {r0}
bx r0 bx r0
@ -2706,7 +2706,7 @@ Task_ExitBuyMenu: @ 80E11B0
bne _080E11D6 bne _080E11D6
bl RemoveMoneyLabelObject bl RemoveMoneyLabelObject
bl BuyMenuFreeMemory bl BuyMenuFreeMemory
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
adds r0, r4, 0 adds r0, r4, 0
bl DestroyTask bl DestroyTask

View File

@ -1,214 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_807521C
sub_807521C: @ 807521C
push {r4-r7,lr}
mov r7, r10
mov r6, r9
mov r5, r8
push {r5-r7}
lsls r0, 16
lsrs r6, r0, 16
lsls r1, 16
lsrs r7, r1, 16
lsls r2, 24
lsrs r4, r2, 24
ldr r5, =gUnknown_0831C620
ldrh r0, [r5, 0x6]
bl GetSpriteTileStartByTag
lsls r0, 16
ldr r1, =0xffff0000
cmp r0, r1
bne _0807524E
adds r0, r5, 0
bl LoadCompressedObjectPicUsingHeap
ldr r0, =gUnknown_0831C628
bl LoadCompressedObjectPaletteUsingHeap
_0807524E:
ldr r0, =sub_8075370
bl CreateInvisibleSpriteWithCallback
mov r8, r0
mov r0, r8
lsls r0, 24
lsrs r0, 24
mov r8, r0
lsls r5, r0, 4
add r5, r8
lsls r5, 2
ldr r0, =gSprites
adds r5, r0
strh r4, [r5, 0x30]
ldr r0, =gUnknown_0831C688
mov r9, r0
lsls r6, 16
asrs r0, r6, 16
mov r10, r0
ldr r0, =0xfff00000
adds r6, r0
asrs r6, 16
lsls r4, r7, 16
asrs r7, r4, 16
adds r4, r0
asrs r4, 16
mov r0, r9
adds r1, r6, 0
adds r2, r4, 0
movs r3, 0x2
bl CreateSprite
lsls r0, 24
lsrs r0, 24
lsls r1, r0, 4
adds r1, r0
lsls r1, 2
ldr r0, =gSprites
adds r1, r0
mov r0, r8
strh r0, [r1, 0x2E]
ldrh r0, [r5, 0x2E]
adds r0, 0x1
strh r0, [r5, 0x2E]
adds r0, r1, 0
bl AnimateSprite
mov r0, r9
mov r1, r10
adds r2, r4, 0
movs r3, 0x2
bl CreateSprite
lsls r0, 24
lsrs r0, 24
lsls r4, r0, 4
adds r4, r0
lsls r4, 2
ldr r0, =gSprites
adds r4, r0
mov r0, r8
strh r0, [r4, 0x2E]
ldrh r0, [r5, 0x2E]
adds r0, 0x1
strh r0, [r5, 0x2E]
adds r0, r4, 0
movs r1, 0x1
bl StartSpriteAnim
adds r0, r4, 0
bl AnimateSprite
mov r0, r9
adds r1, r6, 0
adds r2, r7, 0
movs r3, 0x2
bl CreateSprite
lsls r0, 24
lsrs r0, 24
lsls r4, r0, 4
adds r4, r0
lsls r4, 2
ldr r0, =gSprites
adds r4, r0
mov r0, r8
strh r0, [r4, 0x2E]
ldrh r0, [r5, 0x2E]
adds r0, 0x1
strh r0, [r5, 0x2E]
adds r0, r4, 0
movs r1, 0x2
bl StartSpriteAnim
adds r0, r4, 0
bl AnimateSprite
mov r0, r9
mov r1, r10
adds r2, r7, 0
movs r3, 0x2
bl CreateSprite
lsls r0, 24
lsrs r0, 24
lsls r4, r0, 4
adds r4, r0
lsls r4, 2
ldr r0, =gSprites
adds r4, r0
mov r0, r8
strh r0, [r4, 0x2E]
ldrh r0, [r5, 0x2E]
adds r0, 0x1
strh r0, [r5, 0x2E]
adds r0, r4, 0
movs r1, 0x3
bl StartSpriteAnim
adds r0, r4, 0
bl AnimateSprite
mov r0, r8
pop {r3-r5}
mov r8, r3
mov r9, r4
mov r10, r5
pop {r4-r7}
pop {r1}
bx r1
.pool
thumb_func_end sub_807521C
thumb_func_start sub_8075370
sub_8075370: @ 8075370
push {r4,lr}
adds r4, r0, 0
movs r1, 0x2E
ldrsh r0, [r4, r1]
cmp r0, 0
bne _080753A8
ldr r0, =gUnknown_0831C620
ldrh r0, [r0, 0x6]
bl FreeSpriteTilesByTag
ldr r0, =gUnknown_0831C628
ldrh r0, [r0, 0x4]
bl FreeSpritePaletteByTag
movs r1, 0x30
ldrsh r0, [r4, r1]
cmp r0, 0
bne _080753A4
adds r0, r4, 0
bl DestroySprite
b _080753A8
.pool
_080753A4:
ldr r0, =SpriteCallbackDummy
str r0, [r4, 0x1C]
_080753A8:
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_8075370
thumb_func_start sub_80753B4
sub_80753B4: @ 80753B4
push {lr}
adds r3, r0, 0
adds r0, 0x3F
ldrb r1, [r0]
movs r0, 0x10
ands r0, r1
cmp r0, 0
beq _080753DE
ldr r2, =gSprites
movs r0, 0x2E
ldrsh r1, [r3, r0]
lsls r0, r1, 4
adds r0, r1
lsls r0, 2
adds r0, r2
ldrh r1, [r0, 0x2E]
subs r1, 0x1
strh r1, [r0, 0x2E]
adds r0, r3, 0
bl DestroySprite
_080753DE:
pop {r0}
bx r0
.pool
thumb_func_end sub_80753B4
.align 2, 0 @ Don't pad with nop.

View File

@ -418,7 +418,7 @@ _0809FAFE:
cmp r1, r0 cmp r1, r0
bne _0809FB34 bne _0809FB34
movs r0, 0 movs r0, 0
bl pokedex_count bl GetNationalPokedexCount
lsls r0, 16 lsls r0, 16
cmp r0, 0 cmp r0, 0
beq _0809FBA0 beq _0809FBA0
@ -591,7 +591,7 @@ StartMenu_PlayerName: @ 809FC8C
cmp r0, 0 cmp r0, 0
beq _0809FCC8 beq _0809FCC8
_0809FCB6: _0809FCB6:
ldr r0, =sub_8086194 ldr r0, =CB2_ReturnToFieldWithOpenMenu
bl sub_80C4DDC bl sub_80C4DDC
b _0809FCEA b _0809FCEA
.pool .pool
@ -601,12 +601,12 @@ _0809FCC8:
lsls r0, 24 lsls r0, 24
cmp r0, 0 cmp r0, 0
beq _0809FCE4 beq _0809FCE4
ldr r0, =sub_8086194 ldr r0, =CB2_ReturnToFieldWithOpenMenu
bl sub_80C51C4 bl sub_80C51C4
b _0809FCEA b _0809FCEA
.pool .pool
_0809FCE4: _0809FCE4:
ldr r0, =sub_8086194 ldr r0, =CB2_ReturnToFieldWithOpenMenu
bl sub_80C4DDC bl sub_80C4DDC
_0809FCEA: _0809FCEA:
movs r0, 0x1 movs r0, 0x1
@ -656,7 +656,7 @@ _0809FD38:
ldr r0, =CB2_InitOptionMenu ldr r0, =CB2_InitOptionMenu
bl SetMainCallback2 bl SetMainCallback2
ldr r1, =gMain ldr r1, =gMain
ldr r0, =sub_8086194 ldr r0, =CB2_ReturnToFieldWithOpenMenu
str r0, [r1, 0x8] str r0, [r1, 0x8]
movs r0, 0x1 movs r0, 0x1
_0809FD52: _0809FD52:
@ -703,7 +703,7 @@ _0809FDA0:
bl overworld_free_bg_tilemaps bl overworld_free_bg_tilemaps
ldr r0, =gUnknown_03005DB4 ldr r0, =gUnknown_03005DB4
ldrb r0, [r0] ldrb r0, [r0]
ldr r1, =sub_8086194 ldr r1, =CB2_ReturnToFieldWithOpenMenu
bl sub_80C4E74 bl sub_80C4E74
movs r0, 0x1 movs r0, 0x1
_0809FDB4: _0809FDB4:

View File

@ -10669,7 +10669,7 @@ _0807CF5C:
bl Free bl Free
str r4, [r7] str r4, [r7]
_0807CFAA: _0807CFAA:
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
bl sub_807E784 bl sub_807E784
_0807CFB4: _0807CFB4:
@ -12774,7 +12774,7 @@ _0807E3A8:
bl Free bl Free
str r4, [r7] str r4, [r7]
_0807E3F6: _0807E3F6:
ldr r0, =c2_exit_to_overworld_2_switch ldr r0, =CB2_ReturnToField
bl SetMainCallback2 bl SetMainCallback2
bl sub_807E784 bl sub_807E784
_0807E400: _0807E400:

View File

@ -1925,11 +1925,11 @@ sub_80C376C: @ 80C376C
cmp r0, 0 cmp r0, 0
bne _080C377E bne _080C377E
movs r0, 0x1 movs r0, 0x1
bl sub_80C0844 bl GetHoennPokedexCount
b _080C3784 b _080C3784
_080C377E: _080C377E:
movs r0, 0x1 movs r0, 0x1
bl pokedex_count bl GetNationalPokedexCount
_080C3784: _080C3784:
lsls r0, 16 lsls r0, 16
lsrs r0, 16 lsrs r0, 16

View File

@ -1872,24 +1872,24 @@ gUnknown_0860F010:: @ 860F010
.2byte FLAG_BADGE08_GET .2byte FLAG_BADGE08_GET
gUnknown_0860F020:: @ 860F020 gUnknown_0860F020:: @ 860F020
.4byte gUnknown_082A5D6C .4byte gBirchDexRatingText_LessThan10
.4byte gUnknown_082A5DAB .4byte gBirchDexRatingText_LessThan20
.4byte gUnknown_082A5DF1 .4byte gBirchDexRatingText_LessThan30
.4byte gUnknown_082A5E34 .4byte gBirchDexRatingText_LessThan40
.4byte gUnknown_082A5E83 .4byte gBirchDexRatingText_LessThan50
.4byte gUnknown_082A5EB9 .4byte gBirchDexRatingText_LessThan60
.4byte gUnknown_082A5EF4 .4byte gBirchDexRatingText_LessThan70
.4byte gUnknown_082A5F39 .4byte gBirchDexRatingText_LessThan80
.4byte gUnknown_082A5F82 .4byte gBirchDexRatingText_LessThan90
.4byte gUnknown_082A5FB9 .4byte gBirchDexRatingText_LessThan100
.4byte gUnknown_082A6018 .4byte gBirchDexRatingText_LessThan110
.4byte gUnknown_082A6061 .4byte gBirchDexRatingText_LessThan120
.4byte gUnknown_082A609C .4byte gBirchDexRatingText_LessThan130
.4byte gUnknown_082A60D5 .4byte gBirchDexRatingText_LessThan140
.4byte gUnknown_082A6124 .4byte gBirchDexRatingText_LessThan150
.4byte gUnknown_082A616F .4byte gBirchDexRatingText_LessThan160
.4byte gUnknown_082A61D6 .4byte gBirchDexRatingText_LessThan170
.4byte gUnknown_082A623A .4byte gBirchDexRatingText_LessThan180
.4byte gUnknown_082A6287 .4byte gBirchDexRatingText_LessThan190
.4byte gUnknown_082A62C9 .4byte gBirchDexRatingText_LessThan200
.4byte gUnknown_082A6312 .4byte gBirchDexRatingText_DexCompleted

View File

@ -8,7 +8,6 @@
.include "asm/macros.inc" .include "asm/macros.inc"
.include "asm/macros/event.inc" .include "asm/macros/event.inc"
.include "constants/constants.inc" .include "constants/constants.inc"
.section script_data, "aw", %progbits .section script_data, "aw", %progbits
@ -1287,12 +1286,12 @@ EverGrandeCity_HallOfFame_EventScript_271851:: @ 8271851
setvar VAR_0x40D3, 1 setvar VAR_0x40D3, 1
return return
EverGrandeCity_HallOfFame_EventScript_271857:: @ 8271857 EventScript_WhiteOut:: @ 8271857
call EverGrandeCity_HallOfFame_EventScript_2718CC call EverGrandeCity_HallOfFame_EventScript_2718CC
goto EverGrandeCity_HallOfFame_EventScript_271862 goto EventScript_271862
end end
EverGrandeCity_HallOfFame_EventScript_271862:: @ 8271862 EventScript_271862:: @ 8271862
compare VAR_0x4096, 1 compare VAR_0x4096, 1
goto_eq EverGrandeCity_HallOfFame_EventScript_271884 goto_eq EverGrandeCity_HallOfFame_EventScript_271884
compare VAR_0x4096, 2 compare VAR_0x4096, 2

View File

@ -483,7 +483,7 @@ gUnknown_0854FE64:: @ 854FE64
.2byte 0x00c8, 0x0048, 0x0040, 0x0038, 0x0030, 0x0028, 0x0020, 0x0018, 0x0000, 0x0000 .2byte 0x00c8, 0x0048, 0x0040, 0x0038, 0x0030, 0x0028, 0x0020, 0x0018, 0x0000, 0x0000
.align 2 .align 2
gUnknown_0854FE78:: @ 854FE78 gMaxFlashLevel:: @ 854FE78
.4byte 0x00000008 .4byte 0x00000008
.align 2 .align 2

View File

@ -8,7 +8,7 @@
.align 2 .align 2
gUnknown_085920D8:: @ 85920D8 gUnknown_085920D8:: @ 85920D8
.4byte sub_81B617C .4byte sub_81B617C
.4byte c2_exit_to_overworld_2_switch .4byte CB2_ReturnToField
.4byte NULL .4byte NULL
.align 2 .align 2

View File

@ -1,141 +0,0 @@
@ the second big chunk of data
.include "asm/macros.inc"
.include "constants/constants.inc"
.section .rodata
.align 2
gUnknown_082FECFC:: @ 82FECFC
.incbin "graphics/birch_speech/bg0.gbapal"
.incbin "graphics/birch_speech/bg1.gbapal"
.align 2
gBirchIntroShadowGfx:: @ 82FED3C
.incbin "graphics/birch_speech/shadow.4bpp.lz"
.align 2
gUnknown_082FEEF0:: @ 82FEEF0
.incbin "graphics/birch_speech/map.bin.lz"
.align 2
gUnknown_082FF018:: @ 82FF018
.incbin "graphics/birch_speech/bg2.gbapal"
.align 2
gUnknown_082FF028:: @ 82FF028
.space 16
.align 2
gUnknown_082FF038:: @ 82FF038
window_template 0x00, 0x02, 0x01, 0x1a, 0x02, 0x0f, 0x0001
window_template 0x00, 0x02, 0x05, 0x1a, 0x02, 0x0f, 0x0035
.align 2
gUnknown_082FF048:: @ 82FF048
window_template 0x00, 0x02, 0x01, 0x1a, 0x06, 0x0f, 0x0001
window_template 0x00, 0x02, 0x09, 0x1a, 0x02, 0x0f, 0x009d
window_template 0x00, 0x02, 0x0d, 0x1a, 0x02, 0x0f, 0x00d1
window_template 0x00, 0x02, 0x11, 0x1a, 0x02, 0x0f, 0x0105
window_template 0x00, 0x02, 0x15, 0x1a, 0x02, 0x0f, 0x0139
.align 2
gUnknown_082FF070:: @ 82FF070
window_template 0x00, 0x02, 0x0f, 0x1a, 0x04, 0x0f, 0x016d
null_window_template
.align 2
gUnknown_082FF080:: @ 82FF080
window_template 0x00, 0x02, 0x0f, 0x1b, 0x04, 0x0f, 0x0001
.align 2
gUnknown_082FF088:: @ 82FF088
window_template 0x00, 0x03, 0x05, 0x06, 0x04, 0x0f, 0x006d
window_template 0x00, 0x03, 0x02, 0x09, 0x0a, 0x0f, 0x0085
null_window_template
.align 2
gMainMenuBgPal:: @ 82FF0A0
.incbin "graphics/misc/main_menu_bg.gbapal"
.align 2
gMainMenuTextPal:: @ 82FF0C0
.incbin "graphics/misc/main_menu_text.gbapal"
.align 2
gUnknown_082FF0E0:: @ 82FF0E0
.byte 0x0a, 0x0b, 0x0c
gUnknown_082FF0E3:: @ 82FF0E3
.byte 0x0a, 0x01, 0x0c
.align 2
gUnknown_082FF0E8:: @ 82FF0E8
.4byte 0x000001e8, 0x00003071
.align 2
gUnknown_082FF0F0:: @ 82FF0F0
.4byte 0x000001ec
.align 2
gUnknown_082FF0F4:: @ 82FF0F4
.byte 0x02, 0x78, 0x08, 0x03, 0x78, 0x98, 0x03, 0x00, 0x04, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00
.align 2
gUnknown_082FF104:: @ 82FF104
.2byte 0xfffe, 0xfffe, 0x3000, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000
.align 2
gUnknown_082FF114:: @ 82FF114
.4byte gUnknown_082FF104
.align 2
gUnknown_082FF118:: @ 82FF118
.4byte gText_BirchBoy, 0x00000000
.4byte gText_BirchGirl, 0x00000000
.align 2
gMalePresetNames:: @ 82FF128
.4byte gText_DefaultNameStu
.4byte gText_DefaultNameMilton
.4byte gText_DefaultNameTom
.4byte gText_DefaultNameKenny
.4byte gText_DefaultNameReid
.4byte gText_DefaultNameJude
.4byte gText_DefaultNameJaxson
.4byte gText_DefaultNameEaston
.4byte gText_DefaultNameWalker
.4byte gText_DefaultNameTeru
.4byte gText_DefaultNameJohnny
.4byte gText_DefaultNameBrett
.4byte gText_DefaultNameSeth
.4byte gText_DefaultNameTerry
.4byte gText_DefaultNameCasey
.4byte gText_DefaultNameDarren
.4byte gText_DefaultNameLandon
.4byte gText_DefaultNameCollin
.4byte gText_DefaultNameStanley
.4byte gText_DefaultNameQuincy
.align 2
gFemalePresetNames:: @ 82FF178
.4byte gText_DefaultNameKimmy
.4byte gText_DefaultNameTiara
.4byte gText_DefaultNameBella
.4byte gText_DefaultNameJayla
.4byte gText_DefaultNameAllie
.4byte gText_DefaultNameLianna
.4byte gText_DefaultNameSara
.4byte gText_DefaultNameMonica
.4byte gText_DefaultNameCamila
.4byte gText_DefaultNameAubree
.4byte gText_DefaultNameRuthie
.4byte gText_DefaultNameHazel
.4byte gText_DefaultNameNadine
.4byte gText_DefaultNameTanja
.4byte gText_DefaultNameYasmin
.4byte gText_DefaultNameNicola
.4byte gText_DefaultNameLillie
.4byte gText_DefaultNameTerra
.4byte gText_DefaultNameLucy
.4byte gText_DefaultNameHalie

View File

@ -1,52 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.section .rodata
.align 2, 0
gUnknown_08339D3C:: @ 8339D3C
.4byte 0xFFFFFF, 0xFFFFFFFF, 0x4B0, 0xE10, 0x4B0, 0x960, 0x32, 0x50, 0xFFFFFFD4, 0x2C
gUnknown_08339D64:: @ 8339D64
.4byte 0, 0
.4byte 0, 1
.4byte 0, -1
.4byte -1, 0
.4byte 1, 0
.4byte -1, 1
.4byte 1, 1
.4byte -1, -1
.4byte 1, -1
gUnknown_08339DAC:: @ 8339DAC
.4byte 0x1F8
.4byte 0x11D1
.4byte 0x21C2
.4byte 0x31E3
gUnknown_08339DBC:: @ 8339DBC
.4byte REG_WIN0H
.4byte 0xa2600001
.byte 1, 0
.align 2
gUnknown_08339DC8:: @ 8339DC8
.4byte sub_80879D8
.4byte sub_80879F8
.4byte sub_80879FC
gUnknown_08339DD4:: @ 8339DD4
.4byte sub_8087A1C
.4byte sub_8087A20
.4byte sub_8087A20
.4byte sub_8087A20
.4byte sub_8087A20
.4byte sub_8087A1C
.4byte sub_8087A1C
.4byte sub_8087A88
.4byte sub_8087A88
.4byte sub_8087A88
.4byte sub_8087A88
gUnknown_08339E00:: @ 8339E00
.4byte sub_8087AA0
.4byte sub_8087AA8

View File

@ -434,7 +434,7 @@ gUnknown_08615D9C:: @ 8615D9C
.4byte sub_80D3718, 0x00000007 .4byte sub_80D3718, 0x00000007
.4byte SetUpFieldMove_Flash, 0x0000000d .4byte SetUpFieldMove_Flash, 0x0000000d
.4byte sub_8135654, 0x0000000d .4byte sub_8135654, 0x0000000d
.4byte hm_prepare_rocksmash, 0x0000000d .4byte SetUpFieldMove_Strength, 0x0000000d
.4byte sub_81B5820, 0x00000008 .4byte sub_81B5820, 0x00000008
.4byte sub_81B5884, 0x0000000d .4byte sub_81B5884, 0x0000000d
.4byte sub_81B5974, 0x0000000d .4byte sub_81B5974, 0x0000000d
@ -442,8 +442,8 @@ gUnknown_08615D9C:: @ 8615D9C
.4byte SetUpFieldMove_Teleport, 0x0000000d .4byte SetUpFieldMove_Teleport, 0x0000000d
.4byte sub_813572C, 0x0000000d .4byte sub_813572C, 0x0000000d
.4byte sub_80FA004, 0x0000000d .4byte sub_80FA004, 0x0000000d
.4byte hm_prepare_dive_probably, 0x00000010 .4byte SetUpFieldMove_SoftBoiled, 0x00000010
.4byte hm_prepare_dive_probably, 0x00000010 .4byte SetUpFieldMove_SoftBoiled, 0x00000010
.4byte SetUpFieldMove_SweetScent, 0x0000000d .4byte SetUpFieldMove_SweetScent, 0x0000000d
.align 2 .align 2

View File

@ -916,21 +916,21 @@ RecordCorner_EventScript_277471:: @ 8277471
releaseall releaseall
end end
gUnknown_0827747E:: @ 827747E EventScript_TradeRoom_ReadTrainerCard1:: @ 827747E
msgbox Text_278452, 4 msgbox Text_278452, 4
fadescreen 1 fadescreen 1
special sp02A_crash_sound special sp02A_crash_sound
waitstate waitstate
end end
gUnknown_0827748D:: @ 827748D EventScript_TradeRoom_ReadTrainerCard2:: @ 827748D
msgbox Text_27847B, 4 msgbox Text_27847B, 4
fadescreen 1 fadescreen 1
special sp02A_crash_sound special sp02A_crash_sound
waitstate waitstate
end end
gUnknown_0827749C:: @ 827749C EventScript_TradeRoom_TooBusyToNotice:: @ 827749C
msgbox Text_27842E, 4 msgbox Text_27842E, 4
closemessage closemessage
end end
@ -983,7 +983,7 @@ gUnknown_08277509:: @ 8277509
special sub_80B371C special sub_80B371C
end end
gUnknown_08277513:: @ 8277513 EventScript_277513:: @ 8277513
special sub_80B36EC special sub_80B36EC
special sub_80AF9F8 special sub_80AF9F8
waitstate waitstate

View File

@ -28,7 +28,7 @@ BattleFrontier_BattlePyramidEmptySquare_EventScript_252A77:: @ 8252A77
end end
BattleFrontier_BattlePyramidEmptySquare_EventScript_252A8F:: @ 8252A8F BattleFrontier_BattlePyramidEmptySquare_EventScript_252A8F:: @ 8252A8F
special AddMapNamePopUpWindowTask special ShowMapNamePopup
setvar VAR_0x400F, 0 setvar VAR_0x400F, 0
end end

View File

@ -64,7 +64,7 @@ BattleFrontier_BattlePyramidTop_EventScript_255180:: @ 8255180
end end
BattleFrontier_BattlePyramidTop_EventScript_25518A:: @ 825518A BattleFrontier_BattlePyramidTop_EventScript_25518A:: @ 825518A
special AddMapNamePopUpWindowTask special ShowMapNamePopup
setvar VAR_0x400F, 0 setvar VAR_0x400F, 0
end end

View File

@ -12,7 +12,7 @@ FortreeCity_Gym_MapScript2_2165BA: @ 82165BA
.2byte 0 .2byte 0
FortreeCity_Gym_EventScript_2165C4:: @ 82165C4 FortreeCity_Gym_EventScript_2165C4:: @ 82165C4
special sub_80FBED0 special RotatingGate_InitPuzzleAndGraphics
end end
FortreeCity_Gym_EventScript_2165C8:: @ 82165C8 FortreeCity_Gym_EventScript_2165C8:: @ 82165C8

View File

@ -12,7 +12,7 @@ Route110_TrickHousePuzzle6_MapScript2_26DDB6: @ 826DDB6
.2byte 0 .2byte 0
Route110_TrickHousePuzzle6_EventScript_26DDC0:: @ 826DDC0 Route110_TrickHousePuzzle6_EventScript_26DDC0:: @ 826DDC0
special sub_80FBED0 special RotatingGate_InitPuzzleAndGraphics
end end
Route110_TrickHousePuzzle6_EventScript_26DDC4:: @ 826DDC4 Route110_TrickHousePuzzle6_EventScript_26DDC4:: @ 826DDC4

View File

@ -18,7 +18,7 @@ Route119_EventScript_1F4439:: @ 81F4439
Route119_MapScript1_1F444D: @ 81F444D Route119_MapScript1_1F444D: @ 81F444D
call Route119_EventScript_271ED7 call Route119_EventScript_271ED7
call Route119_EventScript_271EFB call Route119_EventScript_271EFB
compare VAR_0x40B3, 1 compare VAR_WEATHER_INSTITUTE_STATE, 1
call_if 1, Route119_EventScript_1F4466 call_if 1, Route119_EventScript_1F4466
special SetRoute119Weather special SetRoute119Weather
end end
@ -26,7 +26,7 @@ Route119_MapScript1_1F444D: @ 81F444D
Route119_EventScript_1F4466:: @ 81F4466 Route119_EventScript_1F4466:: @ 81F4466
setflag FLAG_0x37D setflag FLAG_0x37D
clearflag FLAG_0x37C clearflag FLAG_0x37C
setvar VAR_0x40B3, 2 setvar VAR_WEATHER_INSTITUTE_STATE, 2
return return
Route119_EventScript_1F4472:: @ 81F4472 Route119_EventScript_1F4472:: @ 81F4472

View File

@ -3,7 +3,7 @@ Route119_WeatherInstitute_1F_MapScripts:: @ 826FA86
.byte 0 .byte 0
Route119_WeatherInstitute_1F_MapScript1_26FA8C: @ 826FA8C Route119_WeatherInstitute_1F_MapScript1_26FA8C: @ 826FA8C
compare VAR_0x40B3, 0 compare VAR_WEATHER_INSTITUTE_STATE, 0
call_if 1, Route119_WeatherInstitute_1F_EventScript_26FA98 call_if 1, Route119_WeatherInstitute_1F_EventScript_26FA98
end end
@ -16,7 +16,7 @@ Route119_WeatherInstitute_1F_EventScript_26FAA4:: @ 826FAA4
lock lock
faceplayer faceplayer
special GetPlayerBigGuyGirlString special GetPlayerBigGuyGirlString
compare VAR_0x40B3, 0 compare VAR_WEATHER_INSTITUTE_STATE, 0
goto_eq Route119_WeatherInstitute_1F_EventScript_26FABE goto_eq Route119_WeatherInstitute_1F_EventScript_26FABE
msgbox Route119_WeatherInstitute_1F_Text_26FCE5, 4 msgbox Route119_WeatherInstitute_1F_Text_26FCE5, 4
release release

View File

@ -3,9 +3,9 @@ Route119_WeatherInstitute_2F_MapScripts:: @ 826FF1E
.byte 0 .byte 0
Route119_WeatherInstitute_2F_MapScript1_26FF24: @ 826FF24 Route119_WeatherInstitute_2F_MapScript1_26FF24: @ 826FF24
compare VAR_0x40B3, 0 compare VAR_WEATHER_INSTITUTE_STATE, 0
call_if 1, Route119_WeatherInstitute_2F_EventScript_26FF44 call_if 1, Route119_WeatherInstitute_2F_EventScript_26FF44
compare VAR_0x40B3, 1 compare VAR_WEATHER_INSTITUTE_STATE, 1
call_if 1, Route119_WeatherInstitute_2F_EventScript_26FF50 call_if 1, Route119_WeatherInstitute_2F_EventScript_26FF50
checkflag FLAG_SYS_GAME_CLEAR checkflag FLAG_SYS_GAME_CLEAR
call_if 1, Route119_WeatherInstitute_2F_EventScript_26FF5C call_if 1, Route119_WeatherInstitute_2F_EventScript_26FF5C
@ -62,7 +62,7 @@ Route119_WeatherInstitute_2F_EventScript_26FFC8:: @ 826FFC8
waitmovement 0 waitmovement 0
msgbox Route119_WeatherInstitute_2F_Text_2705DD, 4 msgbox Route119_WeatherInstitute_2F_Text_2705DD, 4
closemessage closemessage
setvar VAR_0x40B3, 1 setvar VAR_WEATHER_INSTITUTE_STATE, 1
clearflag FLAG_0x37D clearflag FLAG_0x37D
fadedefaultbgm fadedefaultbgm
fadescreen 1 fadescreen 1

View File

@ -213,7 +213,7 @@ gSpecials:: @ 81DBA64
def_special sub_80F972C def_special sub_80F972C
def_special sp0C8_whiteout_maybe def_special sp0C8_whiteout_maybe
def_special sub_80FBE90 def_special sub_80FBE90
def_special sub_80FBED0 def_special RotatingGate_InitPuzzleAndGraphics
def_special SetSSTidalFlag def_special SetSSTidalFlag
def_special ResetSSTidalFlag def_special ResetSSTidalFlag
def_special EnterSafariMode def_special EnterSafariMode
@ -417,8 +417,8 @@ gSpecials:: @ 81DBA64
def_special sub_813B880 def_special sub_813B880
def_special sub_81A085C def_special sub_81A085C
def_special ShouldTryGetTrainerScript def_special ShouldTryGetTrainerScript
def_special AddMapNamePopUpWindowTask def_special ShowMapNamePopup
def_special AddMapNamePopUpWindowTask def_special ShowMapNamePopup
def_special sub_81BE994 def_special sub_81BE994
def_special sub_81BE79C def_special sub_81BE79C
def_special sub_81BE7F4 def_special sub_81BE7F4

View File

@ -1,4 +1,4 @@
gUnknown_082C897B:: @ 82C897B gText_Birch_Welcome:: @ 82C897B
.string "Hi! Sorry to keep you waiting!\p" .string "Hi! Sorry to keep you waiting!\p"
.string "Welcome to the world of POKéMON!\p" .string "Welcome to the world of POKéMON!\p"
.string "My name is BIRCH.\p" .string "My name is BIRCH.\p"
@ -6,12 +6,12 @@ gUnknown_082C897B:: @ 82C897B
.string "PROFESSOR.\p" .string "PROFESSOR.\p"
.string "$" .string "$"
gUnknown_082C89FB:: @ 82C89FB gText_Birch_Pokemon:: @ 82C89FB
.string "This is what we call a “POKéMON.”\p" .string "This is what we call a “POKéMON.”\p"
.string "\n" .string "\n"
.string "$" .string "$"
gUnknown_082C8A1F:: @ 82C8A1F gText_Birch_MainSpeech:: @ 82C8A1F
.string "This world is widely inhabited by\n" .string "This world is widely inhabited by\n"
.string "creatures known as POKéMON.\p" .string "creatures known as POKéMON.\p"
.string "We humans live alongside POKéMON,\n" .string "We humans live alongside POKéMON,\n"
@ -28,28 +28,28 @@ gUnknown_082C8A1F:: @ 82C8A1F
.string "Thats what I do.\p" .string "Thats what I do.\p"
.string "$" .string "$"
gUnknown_082C8BD0:: @ 82C8BD0 gText_Birch_AndYouAre:: @ 82C8BD0
.string "And you are?$" .string "And you are?$"
gUnknown_082C8BDD:: @ 82C8BDD gText_Birch_BoyOrGirl:: @ 82C8BDD
.string "Are you a boy?\n" .string "Are you a boy?\n"
.string "Or are you a girl?$" .string "Or are you a girl?$"
gUnknown_082C8BFF:: @ 82C8BFF gText_Birch_WhatsYourName:: @ 82C8BFF
.string "All right.\n" .string "All right.\n"
.string "Whats your name?$" .string "Whats your name?$"
gUnknown_082C8C1C:: @ 82C8C1C gText_Birch_SoItsPlayer:: @ 82C8C1C
.string "So its {PLAYER}{KUN}?$" .string "So its {PLAYER}{KUN}?$"
gUnknown_082C8C2A:: @ 82C8C2A gText_Birch_YourePlayer:: @ 82C8C2A
.string "Ah, okay!\p" .string "Ah, okay!\p"
.string "Youre {PLAYER}{KUN} whos moving to my\n" .string "Youre {PLAYER}{KUN} whos moving to my\n"
.string "hometown of LITTLEROOT.\l" .string "hometown of LITTLEROOT.\l"
.string "I get it now!\p" .string "I get it now!\p"
.string "$" .string "$"
gUnknown_082C8C7A:: @ 82C8C7A gText_Birch_AreYouReady:: @ 82C8C7A
.string "All right, are you ready?\p" .string "All right, are you ready?\p"
.string "Your very own adventure is about\n" .string "Your very own adventure is about\n"
.string "to unfold.\p" .string "to unfold.\p"

View File

@ -12,99 +12,99 @@ gUnknown_082A5D2C:: @ 82A5D2C
.string "So, youve seen {STR_VAR_1} POKéMON,\n" .string "So, youve seen {STR_VAR_1} POKéMON,\n"
.string "and youve caught {STR_VAR_2} POKéMON…$" .string "and youve caught {STR_VAR_2} POKéMON…$"
gUnknown_082A5D6C:: @ 82A5D6C gBirchDexRatingText_LessThan10:: @ 82A5D6C
.string "Go into grassy areas more and look\n" .string "Go into grassy areas more and look\n"
.string "for POKéMON more carefully.$" .string "for POKéMON more carefully.$"
gUnknown_082A5DAB:: @ 82A5DAB gBirchDexRatingText_LessThan20:: @ 82A5DAB
.string "I guess youre getting the hang\n" .string "I guess youre getting the hang\n"
.string "of it. But, it gets harder from here.$" .string "of it. But, it gets harder from here.$"
gUnknown_082A5DF1:: @ 82A5DF1 gBirchDexRatingText_LessThan30:: @ 82A5DF1
.string "Some POKéMON only appear in\n" .string "Some POKéMON only appear in\n"
.string "certain areas.\l" .string "certain areas.\l"
.string "You must be persistent.$" .string "You must be persistent.$"
gUnknown_082A5E34:: @ 82A5E34 gBirchDexRatingText_LessThan40:: @ 82A5E34
.string "Well, it could use more quantity,\n" .string "Well, it could use more quantity,\n"
.string "but this is looking more like\l" .string "but this is looking more like\l"
.string "a POKéDEX now.$" .string "a POKéDEX now.$"
gUnknown_082A5E83:: @ 82A5E83 gBirchDexRatingText_LessThan50:: @ 82A5E83
.string "This is coming along pretty good.\n" .string "This is coming along pretty good.\n"
.string "Keep up the effort.$" .string "Keep up the effort.$"
gUnknown_082A5EB9:: @ 82A5EB9 gBirchDexRatingText_LessThan60:: @ 82A5EB9
.string "Are you using any RODS?\n" .string "Are you using any RODS?\n"
.string "There are many POKéMON in the sea.$" .string "There are many POKéMON in the sea.$"
gUnknown_082A5EF4:: @ 82A5EF4 gBirchDexRatingText_LessThan70:: @ 82A5EF4
.string "Instead of just catching POKéMON,\n" .string "Instead of just catching POKéMON,\n"
.string "how about making them evolve, too?$" .string "how about making them evolve, too?$"
gUnknown_082A5F39:: @ 82A5F39 gBirchDexRatingText_LessThan80:: @ 82A5F39
.string "This is going to be a fantastic\n" .string "This is going to be a fantastic\n"
.string "POKéDEX.\l" .string "POKéDEX.\l"
.string "Thats the feeling Im getting.$" .string "Thats the feeling Im getting.$"
gUnknown_082A5F82:: @ 82A5F82 gBirchDexRatingText_LessThan90:: @ 82A5F82
.string "Youve collected this many…\n" .string "Youve collected this many…\n"
.string "Your talent is remarkable!$" .string "Your talent is remarkable!$"
gUnknown_082A5FB9:: @ 82A5FB9 gBirchDexRatingText_LessThan100:: @ 82A5FB9
.string "Have you visited the SAFARI ZONE?\p" .string "Have you visited the SAFARI ZONE?\p"
.string "I hear there are some POKéMON that\n" .string "I hear there are some POKéMON that\n"
.string "can only be caught there.$" .string "can only be caught there.$"
gUnknown_082A6018:: @ 82A6018 gBirchDexRatingText_LessThan110:: @ 82A6018
.string "Youve finally reached\n" .string "Youve finally reached\n"
.string "the 100-kind mark.\p" .string "the 100-kind mark.\p"
.string "This is an impressive POKéDEX!$" .string "This is an impressive POKéDEX!$"
gUnknown_082A6061:: @ 82A6061 gBirchDexRatingText_LessThan120:: @ 82A6061
.string "There might be POKéMON that can be\n" .string "There might be POKéMON that can be\n"
.string "found using ROCK SMASH.$" .string "found using ROCK SMASH.$"
gUnknown_082A609C:: @ 82A609C gBirchDexRatingText_LessThan130:: @ 82A609C
.string "You should get some more POKéMON\n" .string "You should get some more POKéMON\n"
.string "by trading with others.$" .string "by trading with others.$"
gUnknown_082A60D5:: @ 82A60D5 gBirchDexRatingText_LessThan140:: @ 82A60D5
.string "Ive heard of POKéMON that evolve\n" .string "Ive heard of POKéMON that evolve\n"
.string "when they come to fully love their\l" .string "when they come to fully love their\l"
.string "TRAINERS.$" .string "TRAINERS.$"
gUnknown_082A6124:: @ 82A6124 gBirchDexRatingText_LessThan150:: @ 82A6124
.string "I had no idea that there were so\n" .string "I had no idea that there were so\n"
.string "many POKéMON species in the HOENN\l" .string "many POKéMON species in the HOENN\l"
.string "region.$" .string "region.$"
gUnknown_082A616F:: @ 82A616F gBirchDexRatingText_LessThan160:: @ 82A616F
.string "On occasion, some POKéMON appear\n" .string "On occasion, some POKéMON appear\n"
.string "in large numbers like outbreaks.\p" .string "in large numbers like outbreaks.\p"
.string "Dont miss opportunities like\n" .string "Dont miss opportunities like\n"
.string "those.$" .string "those.$"
gUnknown_082A61D6:: @ 82A61D6 gBirchDexRatingText_LessThan170:: @ 82A61D6
.string "One can get a very good idea about\n" .string "One can get a very good idea about\n"
.string "the POKéMON of the HOENN region\l" .string "the POKéMON of the HOENN region\l"
.string "by looking through your POKéDEX.$" .string "by looking through your POKéDEX.$"
gUnknown_082A623A:: @ 82A623A gBirchDexRatingText_LessThan180:: @ 82A623A
.string "I would say you already qualify as\n" .string "I would say you already qualify as\n"
.string "a POKéMON PROFESSOR, and a good\l" .string "a POKéMON PROFESSOR, and a good\l"
.string "one, too!$" .string "one, too!$"
gUnknown_082A6287:: @ 82A6287 gBirchDexRatingText_LessThan190:: @ 82A6287
.string "With a POKéDEX this complete,\n" .string "With a POKéDEX this complete,\n"
.string "youre a real professional at this!$" .string "youre a real professional at this!$"
gUnknown_082A62C9:: @ 82A62C9 gBirchDexRatingText_LessThan200:: @ 82A62C9
.string "Youre very close to completing\n" .string "Youre very close to completing\n"
.string "this POKéDEX.\l" .string "this POKéDEX.\l"
.string "I can feel it in my bones!$" .string "I can feel it in my bones!$"
gUnknown_082A6312:: @ 82A6312 gBirchDexRatingText_DexCompleted:: @ 82A6312
.string "Congratulations!\n" .string "Congratulations!\n"
.string "Your POKéDEX is complete!$" .string "Your POKéDEX is complete!$"

View File

@ -51,9 +51,10 @@
#define GAME_STAT_USED_DAYCARE 47 #define GAME_STAT_USED_DAYCARE 47
#define GAME_STAT_RODE_CABLE_CAR 48 #define GAME_STAT_RODE_CABLE_CAR 48
#define GAME_STAT_ENTERED_HOT_SPRINGS 49 #define GAME_STAT_ENTERED_HOT_SPRINGS 49
#define GAME_STAT_50 50
#define GAME_STAT_51 51
/*TODO: add new stats added in Emerald*/ #define NUM_USED_GAME_STATS 52
#define NUM_GAME_STATS 64 #define NUM_GAME_STATS 64
#endif // GUARD_CONSTANTS_GAME_STAT_H #endif // GUARD_CONSTANTS_GAME_STAT_H

View File

@ -184,7 +184,7 @@
#define VAR_0x40B0 0x40B0 #define VAR_0x40B0 0x40B0
#define VAR_0x40B1 0x40B1 #define VAR_0x40B1 0x40B1
#define VAR_0x40B2 0x40B2 #define VAR_0x40B2 0x40B2
#define VAR_0x40B3 0x40B3 #define VAR_WEATHER_INSTITUTE_STATE 0x40B3
#define VAR_PORTHOLE 0x40B4 #define VAR_PORTHOLE 0x40B4
#define VAR_0x40B5 0x40B5 #define VAR_0x40B5 0x40B5
#define VAR_0x40B6 0x40B6 #define VAR_0x40B6 0x40B6

View File

@ -16,5 +16,9 @@ extern const u8 gSpeciesNames[][POKEMON_NAME_LENGTH + 1];
extern const u8 gMoveNames[][13]; extern const u8 gMoveNames[][13];
extern const u8 gAbilityNames[][13]; extern const u8 gAbilityNames[][13];
extern const u8 gTypeNames[][7]; extern const u8 gTypeNames[][7];
extern struct CompressedSpriteSheet gUnknown_0831C620;
extern struct CompressedSpritePalette gUnknown_0831C628;
extern const struct SpriteTemplate gUnknown_0831C688;
#endif // GUARD_DATA2_H #endif // GUARD_DATA2_H

View File

@ -380,4 +380,7 @@ extern const u8 SecretBase_RedCave1_Text_274E75[];
extern const u8 SecretBase_RedCave1_Text_2751E1[]; extern const u8 SecretBase_RedCave1_Text_2751E1[];
extern const u8 SecretBase_RedCave1_Text_2754F6[]; extern const u8 SecretBase_RedCave1_Text_2754F6[];
extern const u8 SecretBase_RedCave1_Text_2758CC[]; extern const u8 SecretBase_RedCave1_Text_2758CC[];
extern const u8 FieryPath_EventScript_2908FD[];
extern const u8 EventScript_290CAE[];
#endif //GUARD_EVENT_SCRIPTS_H #endif //GUARD_EVENT_SCRIPTS_H

View File

@ -26,5 +26,14 @@ void DrawWholeMapView(void);
void CurrentMapDrawMetatileAt(int x, int y); void CurrentMapDrawMetatileAt(int x, int y);
void sub_8089C08(s16 *a0, s16 *a1); void sub_8089C08(s16 *a0, s16 *a1);
void DrawDoorMetatileAt(int x, int y, u16 *arr); void DrawDoorMetatileAt(int x, int y, u16 *arr);
void move_tilemap_camera_to_upper_left_corner(void);
void sub_8057A58(void);
void ResetCameraUpdateInfo(void);
u32 InitCameraUpdateCallback(u8 a);
void CameraUpdate(void);
void SetCameraPanningCallback(void (*a)(void));
void SetCameraPanning(s16 a, s16 b);
void InstallCameraPanAheadCallback(void);
void UpdateCameraPanning(void);
#endif //GUARD_FIELD_CAMERA_H #endif //GUARD_FIELD_CAMERA_H

View File

@ -0,0 +1,41 @@
#ifndef GUARD_FIELDCONTROLAVATAR_H
#define GUARD_FIELDCONTROLAVATAR_H
struct FieldInput
{
u8 pressedAButton:1;
u8 input_field_0_1:1;
u8 pressedStartButton:1;
u8 pressedSelectButton:1;
u8 input_field_0_4:1;
u8 input_field_0_5:1;
u8 input_field_0_6:1;
u8 pressedBButton:1;
u8 input_field_1_0:1;
u8 input_field_1_1:1;
u8 input_field_1_2:1;
u8 input_field_1_3:1;
u8 input_field_1_4:1;
u8 input_field_1_5:1;
u8 input_field_1_6:1;
u8 input_field_1_7:1;
u8 dpadDirection;
u8 input_field_3;
};
void FieldClearPlayerInput(struct FieldInput *pStruct);
void FieldGetPlayerInput(struct FieldInput *pStruct, u16 keys, u16 heldKeys);
int sub_809C014(struct FieldInput *pStruct);
u8 *sub_80682A8(struct MapPosition *, u8, u8);
void overworld_poison_timer_set(void);
void prev_quest_postbuffer_cursor_backup_reset(void);
u8 *sub_8068E24(struct MapPosition *);
u8 *GetFieldObjectScriptPointerPlayerFacing(void);
bool8 mapheader_trigger_activate_at__run_now(struct MapPosition *);
bool8 sub_8068870(u16 a);
bool8 sub_8068894(void);
bool8 sub_8068A64(struct MapPosition *, u16);
u8 sub_8068F18(void);
bool8 dive_warp(struct MapPosition *position, u16 b);
#endif // GUARD_FIELDCONTROLAVATAR_H

View File

@ -74,10 +74,13 @@ extern u32 gFieldEffectArguments[8];
u32 FieldEffectStart(u8); u32 FieldEffectStart(u8);
bool8 FieldEffectActiveListContains(u8 id); bool8 FieldEffectActiveListContains(u8 id);
void sub_80B69DC(void); void sub_80B69DC(void);
u8 AddNewGameBirchObject(s16, s16, u8);
void FieldEffectStop(struct Sprite *sprite, u8 id); void FieldEffectStop(struct Sprite *sprite, u8 id);
u8 CreateTrainerSprite(u8 trainerSpriteID, s16 x, s16 y, u8 subpriority, u8 *buffer); u8 CreateTrainerSprite(u8 trainerSpriteID, s16 x, s16 y, u8 subpriority, u8 *buffer);
void sub_80B7FC8(void); void sub_80B7FC8(void);
void FieldEffectActiveListRemove(u8 id); void FieldEffectActiveListRemove(u8 id);
void MultiplyInvertedPaletteRGBComponents(u16, u8, u8, u8); void MultiplyInvertedPaletteRGBComponents(u16, u8, u8, u8);
extern void (*gUnknown_0203CEEC)(void);
extern bool8 (*gUnknown_03005DB0)(void);
#endif //GUARD_FIELD_EFFECTS_H #endif //GUARD_FIELD_EFFECTS_H

View File

@ -10,6 +10,8 @@
// Exported RAM declarations // Exported RAM declarations
// Exported ROM declarations // Exported ROM declarations
u8 ZCoordToPriority(u8);
void FieldObjectUpdateZCoord(struct MapObject *pObject);
void SetObjectSubpriorityByZCoord(u8, struct Sprite *, u8); void SetObjectSubpriorityByZCoord(u8, struct Sprite *, u8);
void InitObjectPriorityByZCoord(struct Sprite *, u8); void InitObjectPriorityByZCoord(struct Sprite *, u8);
bool8 IsZCoordMismatchAt(u8, s16, s16); bool8 IsZCoordMismatchAt(u8, s16, s16);

View File

@ -25,6 +25,7 @@ enum SpinnerRunnerFollowPatterns {
// Exported ROM declarations // Exported ROM declarations
void sub_808D438(void); void sub_808D438(void);
u8 get_go_image_anim_num(u8);
u8 GetFieldObjectIdByLocalIdAndMap(u8, u8, u8); u8 GetFieldObjectIdByLocalIdAndMap(u8, u8, u8);
bool8 TryGetFieldObjectIdByLocalIdAndMap(u8, u8, u8, u8 *); bool8 TryGetFieldObjectIdByLocalIdAndMap(u8, u8, u8, u8 *);
u8 GetFieldObjectIdByXY(s16, s16); u8 GetFieldObjectIdByXY(s16, s16);
@ -88,6 +89,8 @@ bool8 FieldObjectIsSpecialAnimOrDirectionSequenceAnimActive(struct MapObject *ma
u8 FieldObjectCheckIfSpecialAnimFinishedOrInactive(struct MapObject *mapObject); u8 FieldObjectCheckIfSpecialAnimFinishedOrInactive(struct MapObject *mapObject);
void sub_808F23C(const struct MapObject *mapObject, u8 movementType); void sub_808F23C(const struct MapObject *mapObject, u8 movementType);
void sub_808F208(const struct MapObject *mapObject); void sub_808F208(const struct MapObject *mapObject);
void npc_coords_shift_still(struct MapObject *pObject);
void FieldObjectMoveDestCoords(struct MapObject *pObject, u32 unk_19, s16 *pInt, s16 *pInt1);
// Exported data declarations // Exported data declarations

View File

@ -1,10 +1,12 @@
#ifndef GUARD_FIELD_PLAYER_AVATAR_H #ifndef GUARD_FIELD_PLAYER_AVATAR_H
#define GUARD_FIELD_PLAYER_AVATAR_H #define GUARD_FIELD_PLAYER_AVATAR_H
void player_step(u8 a, u16 b, u16 c);
void ClearPlayerAvatarInfo(void); void ClearPlayerAvatarInfo(void);
void SetPlayerAvatarExtraStateTransition(u8, u8); void SetPlayerAvatarExtraStateTransition(u8, u8);
u8 GetPlayerAvatarGenderByGraphicsId(u8); u8 GetPlayerAvatarGenderByGraphicsId(u8);
bool8 TestPlayerAvatarFlags(u8); bool8 TestPlayerAvatarFlags(u8);
u8 GetPlayerAvatarObjectId(void);
void PlayerGetDestCoords(s16 *, s16 *); void PlayerGetDestCoords(s16 *, s16 *);
u8 player_get_direction_lower_nybble(void); u8 player_get_direction_lower_nybble(void);
u8 player_get_direction_upper_nybble(void); u8 player_get_direction_upper_nybble(void);
@ -31,11 +33,11 @@ u8 CheckForFieldObjectCollision(struct MapObject *a, s16 b, s16 c, u8 d, u8 e);
u8 PlayerGetZCoord(void); u8 PlayerGetZCoord(void);
void SetPlayerAvatarTransitionFlags(u16 a); void SetPlayerAvatarTransitionFlags(u16 a);
void sub_808BCE8(void); void sub_808BCE8(void);
void InitPlayerAvatar(s16 a, s16 b, u8 c, u8 d);
void sub_808B864(void); void sub_808B864(void);
void sub_808BCF4(void); void sub_808BCF4(void);
void sub_808D074(u8); void sub_808D074(u8);
void GetXYCoordsOneStepInFrontOfPlayer(s16 *xPtr, s16 *yPtr); void GetXYCoordsOneStepInFrontOfPlayer(s16 *xPtr, s16 *yPtr);
u8 GetRivalAvatarGraphicsIdByStateIdAndGender(u8, u8); u8 GetRivalAvatarGraphicsIdByStateIdAndGender(u8, u8);
#endif //GUARD_FIELD_PLAYER_AVATAR_H #endif // GUARD_FIELD_PLAYER_AVATAR_H

View File

@ -10,5 +10,7 @@ void pal_fill_black(void);
bool8 sub_80ABDFC(void); bool8 sub_80ABDFC(void);
void sub_80AF168(void); void sub_80AF168(void);
void UpdateWeatherPerDay(u16 days); void UpdateWeatherPerDay(u16 days);
void sub_80AC3D0(void);
void sub_80AC3E4(void);
#endif //GUARD_FIELD_SCREEN_H #endif //GUARD_FIELD_SCREEN_H

View File

@ -15,5 +15,6 @@ bool8 MapGridIsImpassableAt(s16, s16);
s32 GetMapBorderIdAt(s16, s16); s32 GetMapBorderIdAt(s16, s16);
bool32 CanCameraMoveInDirection(u8); bool32 CanCameraMoveInDirection(u8);
u16 GetBehaviorByMetatileId(u16 metatileId); u16 GetBehaviorByMetatileId(u16 metatileId);
void sav1_camera_get_focus_coords(u16 *x, u16 *y);
#endif //GUARD_FIELDMAP_H #endif //GUARD_FIELDMAP_H

View File

@ -0,0 +1,7 @@
#ifndef GUARD_FLDEFF_GROUNDSHAKE_H
#define GUARD_FLDEFF_GROUNDSHAKE_H
void sub_81BE6B8(void);
void sub_81BE72C(void);
#endif // GUARD_FLDEFF_GROUNDSHAKE_H

View File

@ -501,23 +501,24 @@
// I/O register fields // I/O register fields
// DISPCNT // DISPCNT
#define DISPCNT_MODE_0 0x0000 // BG0: text, BG1: text, BG2: text, BG3: text #define DISPCNT_MODE_0 0x0000 // BG0: text, BG1: text, BG2: text, BG3: text
#define DISPCNT_MODE_1 0x0001 // BG0: text, BG1: text, BG2: affine, BG3: off #define DISPCNT_MODE_1 0x0001 // BG0: text, BG1: text, BG2: affine, BG3: off
#define DISPCNT_MODE_2 0x0002 // BG0: off, BG1: off, BG2: affine, BG3: affine #define DISPCNT_MODE_2 0x0002 // BG0: off, BG1: off, BG2: affine, BG3: affine
#define DISPCNT_MODE_3 0x0003 // Bitmap mode, 240x160, BGR555 color #define DISPCNT_MODE_3 0x0003 // Bitmap mode, 240x160, BGR555 color
#define DISPCNT_MODE_4 0x0004 // Bitmap mode, 240x160, 256 color palette #define DISPCNT_MODE_4 0x0004 // Bitmap mode, 240x160, 256 color palette
#define DISPCNT_MODE_5 0x0005 // Bitmap mode, 160x128, BGR555 color #define DISPCNT_MODE_5 0x0005 // Bitmap mode, 160x128, BGR555 color
#define DISPCNT_OBJ_1D_MAP 0x0040 #define DISPCNT_HBLANK_INTERVAL 0x0020 // Allow access to OAM during H-Blank
#define DISPCNT_FORCED_BLANK 0x0080 #define DISPCNT_OBJ_1D_MAP 0x0040
#define DISPCNT_BG0_ON 0x0100 #define DISPCNT_FORCED_BLANK 0x0080
#define DISPCNT_BG1_ON 0x0200 #define DISPCNT_BG0_ON 0x0100
#define DISPCNT_BG2_ON 0x0400 #define DISPCNT_BG1_ON 0x0200
#define DISPCNT_BG3_ON 0x0800 #define DISPCNT_BG2_ON 0x0400
#define DISPCNT_BG_ALL_ON 0x0F00 #define DISPCNT_BG3_ON 0x0800
#define DISPCNT_OBJ_ON 0x1000 #define DISPCNT_BG_ALL_ON 0x0F00
#define DISPCNT_WIN0_ON 0x2000 #define DISPCNT_OBJ_ON 0x1000
#define DISPCNT_WIN1_ON 0x4000 #define DISPCNT_WIN0_ON 0x2000
#define DISPCNT_OBJWIN_ON 0x8000 #define DISPCNT_WIN1_ON 0x4000
#define DISPCNT_OBJWIN_ON 0x8000
// DISPSTAT // DISPSTAT
#define DISPSTAT_VBLANK 0x0001 // in V-Blank #define DISPSTAT_VBLANK 0x0001 // in V-Blank

View File

@ -162,10 +162,10 @@ struct MapConnections
struct MapHeader struct MapHeader
{ {
/* 0x00 */ struct MapData *mapData; /* 0x00 */ const struct MapData *mapData;
/* 0x04 */ struct MapEvents *events; /* 0x04 */ const struct MapEvents *events;
/* 0x08 */ u8 *mapScripts; /* 0x08 */ const u8 *mapScripts;
/* 0x0C */ struct MapConnections *connections; /* 0x0C */ const struct MapConnections *connections;
/* 0x10 */ u16 music; /* 0x10 */ u16 music;
/* 0x12 */ u16 mapDataId; /* 0x12 */ u16 mapDataId;
/* 0x14 */ u8 regionMapSectionId; /* 0x14 */ u8 regionMapSectionId;

View File

@ -150,6 +150,18 @@ struct UCoords16
u16 y; u16 y;
}; };
struct Coords32
{
s32 x;
s32 y;
};
struct UCoords32
{
u32 x;
u32 y;
};
struct Time struct Time
{ {
/*0x00*/ s16 days; /*0x00*/ s16 days;
@ -624,12 +636,12 @@ struct SaveBlock1
/*0x04*/ struct WarpData location; /*0x04*/ struct WarpData location;
/*0x0C*/ struct WarpData warp1; /*0x0C*/ struct WarpData warp1;
/*0x14*/ struct WarpData warp2; /*0x14*/ struct WarpData warp2;
/*0x1C*/ struct WarpData warp3; /*0x1C*/ struct WarpData lastHealLocation;
/*0x24*/ struct WarpData warp4; /*0x24*/ struct WarpData warp4;
/*0x2C*/ u16 battleMusic; /*0x2C*/ u16 savedMusic;
/*0x2E*/ u8 weather; /*0x2E*/ u8 weather;
/*0x2F*/ u8 filler_2F; /*0x2F*/ u8 filler_2F;
/*0x30*/ u8 flashUsed; /*0x30*/ u8 flashLevel;
/*0x32*/ u16 mapDataId; /*0x32*/ u16 mapDataId;
/*0x34*/ u16 mapView[0x100]; /*0x34*/ u16 mapView[0x100];
/*0x234*/ u8 playerPartyCount; /*0x234*/ u8 playerPartyCount;
@ -711,6 +723,23 @@ struct SaveBlock1
extern struct SaveBlock1* gSaveBlock1Ptr; extern struct SaveBlock1* gSaveBlock1Ptr;
struct MapPosition
{
s16 x;
s16 y;
u8 height;
};
struct UnkStruct_8054FF8
{
u8 a;
u8 b;
u8 c;
u8 d;
struct MapPosition sub;
u16 field_C;
};
struct Bitmap // TODO: Find a better spot for this struct Bitmap // TODO: Find a better spot for this
{ {
u8* pixels; u8* pixels;

View File

@ -12,7 +12,7 @@ void ItemUseOutOfBattle_Itemfinder(u8);
void ItemUseOnFieldCB_Itemfinder(u8); void ItemUseOnFieldCB_Itemfinder(u8);
void RunItemfinderResults(u8); void RunItemfinderResults(u8);
void ExitItemfinder(u8); void ExitItemfinder(u8);
bool8 ItemfinderCheckForHiddenItems(struct MapEvents *, u8); bool8 ItemfinderCheckForHiddenItems(const struct MapEvents *, u8);
void sub_80C9720(u8); void sub_80C9720(u8);
void sub_80C9838(u8, s16, s16); void sub_80C9838(u8, s16, s16);
u8 GetPlayerDirectionTowardsHiddenItem(s16, s16); u8 GetPlayerDirectionTowardsHiddenItem(s16, s16);

View File

@ -198,6 +198,10 @@ extern u32 gUnknown_020223C0;
extern bool8 gLinkVSyncDisabled; extern bool8 gLinkVSyncDisabled;
extern u32 gLinkStatus; extern u32 gLinkStatus;
void c2_mystery_gift(void);
void sub_801867C(void);
bool8 sub_80093CC(void);
void Task_DestroySelf(u8 taskId); void Task_DestroySelf(u8 taskId);
void OpenLink(void); void OpenLink(void);
void CloseLink(void); void CloseLink(void);

View File

@ -34,6 +34,7 @@ void sub_8197930(void);
u8 GetPlayerTextSpeed(void); u8 GetPlayerTextSpeed(void);
void sub_81978B0(u16 arg0); void sub_81978B0(u16 arg0);
void AddTextPrinterWithCallbackForMessage(bool8 a1, void (*callback)(struct TextSubPrinter *, u16));
void box_print(u8 windowId, u8 fontId, u8 left, u8 top, const u8 *color, s8 speed, const u8 *str); void box_print(u8 windowId, u8 fontId, u8 left, u8 top, const u8 *color, s8 speed, const u8 *str);
void sub_8198070(u8 windowId, bool8 copyToVram); void sub_8198070(u8 windowId, bool8 copyToVram);
void SetWindowTemplateFields(struct WindowTemplate* template, u8 priority, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 palNum, u16 baseBlock); void SetWindowTemplateFields(struct WindowTemplate* template, u8 priority, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 palNum, u16 baseBlock);

View File

@ -6,9 +6,17 @@
// Exported RAM declarations // Exported RAM declarations
// Exported ROM declarations // Exported ROM declarations
struct ArrowStruct {
u8 unk0[6];
u16 unk6[4];
u8 unkE;
};
void Task_ScrollIndicatorArrowPairOnMainMenu(u8);
u8 AddScrollIndicatorArrowPairParametrized(u8, u8, u8, u8, s32, u16, u16, u16 *); u8 AddScrollIndicatorArrowPairParametrized(u8, u8, u8, u8, s32, u16, u16, u16 *);
void RemoveScrollIndicatorArrowPair(u8); void RemoveScrollIndicatorArrowPair(u8);
u8 AddScrollIndicatorArrowPair(void*, void*); u8 AddScrollIndicatorArrowPair(const struct ArrowStruct*, void*);
void sub_81AF15C(u8, u8, u8); void sub_81AF15C(u8, u8, u8);
#endif //GUARD_MENU_INDICATORS_H #endif //GUARD_MENU_INDICATORS_H

View File

@ -1,7 +1,5 @@
#ifndef GUARD_ROM4_H #ifndef GUARD_OVERWORLD_H
#define GUARD_ROM4_H #define GUARD_OVERWORLD_H
#include "main.h"
struct UnkPlayerStruct struct UnkPlayerStruct
{ {
@ -17,69 +15,124 @@ struct LinkPlayerMapObject
u8 mode; u8 mode;
}; };
struct UCoords32 extern struct WarpData gUnknown_020322DC;
{
u32 x, y;
};
extern struct LinkPlayerMapObject gLinkPlayerMapObjects[4]; extern struct LinkPlayerMapObject gLinkPlayerMapObjects[4];
extern MainCallback gFieldCallback;
void Overworld_SetMapObjTemplateCoords(u8, s16, s16); extern const struct UCoords32 gUnknown_08339D64[];
void Overworld_SetMapObjTemplateMovementType(u8, u8);
void Overworld_SetWarpDestination(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y); void DoWhiteOut(void);
void Overworld_ResetStateAfterFly(void);
void saved_warp2_set(int unused, s8 mapGroup, s8 mapNum, s8 warpId);
void saved_warp2_set_2(int unused, s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y);
void Overworld_SetHealLocationWarp(u8);
void sub_8084DD4(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y);
void sub_8084E2C(s8, s8, s8, s8, s8);
void sub_8084E80(s8, s8, s8, s8, s8);
void sub_8084EBC(s16, s16);
void player_avatar_init_params_reset(void);
bool8 Overworld_MapTypeAllowsTeleportAndFly(u8 mapType);
void Overworld_ResetStateAfterTeleport(void); void Overworld_ResetStateAfterTeleport(void);
void Overworld_ResetStateAfterDigEscRope(void);
void Overworld_SetFlashLevel(s32 a1); void ResetGameStats(void);
//u8 Overworld_GetFlashLevel(void); void IncrementGameStat(u8 index);
void sub_8085524(u16); u32 GetGameStat(u8 index);
void SetGameStat(u8 index, u32 value);
void Overworld_SetSavedMusic(u16); void ApplyNewEncryptionKeyToGameStats(u32 newKey);
void Overworld_ChangeMusicToDefault(void); void LoadMapObjTemplatesFromHeader(void);
void Overworld_ChangeMusicTo(u16); void LoadSaveblockMapObjScripts(void);
void Overworld_SetMapObjTemplateCoords(u8 localId, s16 x, s16 y);
bool32 is_c1_link_related_active(void); void Overworld_SetMapObjTemplateMovementType(u8 localId, u8 movementType);
extern u16 gUnknown_03005DA8; const struct MapData *get_mapdata_header(void);
void ApplyCurrentWarp(void);
void strange_npc_table_clear(void); void set_warp2_warp3_to_neg_1(void);
const struct MapHeader *get_mapheader_by_bank_and_number(u16, u16); void SetWarpData(struct WarpData *warp, s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y);
void FieldObjectMoveDestCoords(struct MapObject *, u32, s16 *, s16 *); bool32 warp_data_is_not_neg_1(struct WarpData *warp);
void sub_8086230(void); const struct MapHeader *Overworld_GetMapHeaderByGroupAndId(u16 mapGroup, u16 mapNum);
void c2_exit_to_overworld_2_switch(void); const struct MapHeader *warp1_get_mapheader(void);
bool32 sub_8087598(void); void set_current_map_header_from_sav1_save_old_name(void);
void c2_exit_to_overworld_1_continue_scripts_restart_music(void); void LoadSaveblockMapHeader(void);
void update_camera_pos_from_warpid(void);
void warp_in(void); void warp_in(void);
u8 get_map_light_level_by_bank_and_number(s8 mapGroup, s8 mapNum); void Overworld_SetWarpDestination(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y);
void sub_8086194(void); void warp1_set_2(s8 mapGroup, s8 mapNum, s8 warpId);
void sub_8084CCC(u8 spawn); void saved_warp2_set(s32 unused, s8 mapGroup, s8 mapNum, s8 warpId);
void warp1_set_2(s8 mapGroup, s8 mapNum, s8 warpNum); void saved_warp2_set_2(s32 unused, s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y);
void c2_load_new_map(void);
void copy_saved_warp2_bank_and_enter_x_to_warp1(u8 unused); void copy_saved_warp2_bank_and_enter_x_to_warp1(u8 unused);
void mapldr_default(void); void sub_8084CCC(u8 a1);
void Overworld_SetWarpDestToLastHealLoc(void);
void Overworld_SetHealLocationWarp(u8 healLocationId);
void sub_8084D5C(s16 a1, s16 a2);
void sub_8084DD4(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y);
void sub_8084E14(void);
void sub_8084E2C(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y);
void warp1_set_to_warp2(void);
void sub_8084E80(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y);
void sub_8084EBC(s16 x, s16 y);
void warp1_set_to_sav1w(void);
void sub_8084F2C(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y);
void sub_8084F6C(u8 a1);
void sub_8084FAC(void);
const struct MapConnection *GetMapConnection(u8 dir);
bool8 sub_8084FF8(u8 dir, u16 x, u16 y);
bool8 sub_8085058(u16 x, u16 y);
bool8 sub_8085078(u16 x, u16 y);
void mliX_load_map(u8 mapGroup, u8 mapNum);
void player_avatar_init_params_reset(void);
void walkrun_find_lowest_active_bit_in_bitfield(void);
bool32 Overworld_IsBikingAllowed(void);
void SetDefaultFlashLevel(void);
void Overworld_SetFlashLevel(s32 flashLevel);
u8 Overworld_GetFlashLevel(void);
void sub_8085524(u16 mapDataId);
void sub_8085540(u8 var);
u8 sub_808554C(void);
u16 GetLocationMusic(struct WarpData *warp);
u16 GetCurrLocationDefaultMusic(void);
u16 GetWarpDestinationMusic(void);
void Overworld_ResetMapMusic(void);
void Overworld_PlaySpecialMapMusic(void);
void Overworld_SetSavedMusic(u16 songNum);
void Overworld_ClearSavedMusic(void);
void Overworld_ChangeMusicToDefault(void);
void Overworld_ChangeMusicTo(u16 newMusic);
u8 GetMapMusicFadeoutSpeed(void);
void music_something(void);
bool8 sub_80859A0(void);
void Overworld_FadeOutMapMusic(void);
void UpdateAmbientCry(s16 *state, u16 *delayCounter);
u8 GetMapTypeByGroupAndId(s8 mapGroup, s8 mapNum);
u8 GetMapTypeByWarpData(struct WarpData *warp);
u8 Overworld_GetMapTypeOfSaveblockLocation(void);
u8 get_map_light_from_warp0(void); u8 get_map_light_from_warp0(void);
bool8 is_light_level_1_2_3_5_or_6(u8 a1); bool8 is_light_level_1_2_3_5_or_6(u8 mapType);
void sub_8086194(void); bool8 Overworld_MapTypeAllowsTeleportAndFly(u8 mapType);
bool8 Overworld_MapTypeIsIndoors(u8 mapType);
u8 sav1_saved_warp2_map_get_name(void);
u8 sav1_map_get_name(void);
u8 GetCurrentMapBattleScene(void);
void overworld_free_bg_tilemaps(void);
bool32 is_c1_link_related_active(void);
void CB1_Overworld(void);
void CB2_OverworldBasic(void);
void CB2_Overworld(void);
void SetMainCallback1(void (*cb)(void));
void sub_8085E94(void *a0);
void CB2_NewGame(void);
void CB2_WhiteOut(void);
void CB2_LoadMap(void);
void sub_8086024(void);
void sub_8086074(void);
void CB2_ReturnToField(void);
void CB2_ReturnToFieldLocal(void);
void CB2_ReturnToFieldLink(void);
void c2_8056854(void);
void CB2_ReturnToFieldWithOpenMenu(void);
void sub_80861B0(void); void sub_80861B0(void);
void CB2_ReturnToFieldContinueScript(void);
void sub_80861E8(void);
void CB2_ContinueSavedGame(void);
void sub_8086C2C(void);
u32 sub_8087214(void);
bool32 sub_808727C(void);
u16 sub_8087288(void);
u16 sub_808729C(void);
u16 sub_80872B0(void);
u16 sub_80872C4(void);
bool32 sub_8087598(void);
bool32 sub_80875C8(void); bool32 sub_80875C8(void);
bool32 sub_8087634(void); bool32 sub_8087634(void);
bool32 sub_808766C(void); bool32 sub_808766C(void);
void IncrementGameStat(u8); void ZeroAllLinkPlayerMapObjects(void);
u32 GetGameStat(u8);
void CB2_OverworldBasic(void); #endif // GUARD_OVERWORLD_H
#endif //GUARD_ROM4_H

View File

@ -1,6 +1,6 @@
#ifndef GUARD_PARTY_MENU_H #ifndef GUARD_PARTY_MENU_H
#define GUARD_PARTY_MENU_H #define GUARD_PARTY_MENU_H
#include "task.h"
enum enum
{ {
AILMENT_NONE, AILMENT_NONE,
@ -11,6 +11,17 @@ enum
AILMENT_BRN AILMENT_BRN
}; };
struct Struct203CEC8
{
u8 filler[0x9];
s8 unk9;
s8 unkA;
u8 unkB;
u8 filler2[0x2];
};
extern struct Struct203CEC8 gUnknown_0203CEC8;
bool8 pokemon_has_move(struct Pokemon *, u16); bool8 pokemon_has_move(struct Pokemon *, u16);
void sub_81B58A8(void); void sub_81B58A8(void);
void DoWallyTutorialBagMenu(void); void DoWallyTutorialBagMenu(void);
@ -20,4 +31,11 @@ u8 GetCursorSelectionMonId(void);
bool8 FieldCallback_Teleport(void); bool8 FieldCallback_Teleport(void);
void sub_81B7F60(void); void sub_81B7F60(void);
void sub_81B0FCC(u8 partyIdx, u8 a);
void sub_81B1370(u8 taskId);
void display_pokemon_menu_message(u8 windowId);
void sub_81B1F18(u8 taskId, u8 pokemonIdx, s8 a, s16 hp, TaskFunc func);
void sub_81B1B5C(void *a, u8 b);
u8 sub_81B1BD4();
#endif // GUARD_PARTY_MENU_H #endif // GUARD_PARTY_MENU_H

View File

@ -17,8 +17,6 @@ enum
}; };
s8 GetSetPokedexFlag(u16 nationalNum, u8 caseId); s8 GetSetPokedexFlag(u16 nationalNum, u8 caseId);
u16 pokedex_count(u8);
u16 sub_80C0844(u8);
u16 sub_80C0E9C(u16, s16, s16, u16); u16 sub_80C0E9C(u16, s16, s16, u16);
#endif // GUARD_POKEDEX_H #endif // GUARD_POKEDEX_H

10
include/pokemon_3.h Normal file
View File

@ -0,0 +1,10 @@
#ifndef GUARD_POKEMON_3_H
#define GUARD_POKEMON_3_H
u16 sub_806EFF0(u16);
const u8* GetTrainerClassNameFromId(u16 trainerId);
const u8* GetTrainerNameFromId(u16 trainerId);
void PlayMapChosenOrBattleBGM(u16 song);
u8 GetTrainerEncounterMusicId(u16 trainerOpponentId);
#endif // GUARD_POKEMON_3_H

View File

@ -11,6 +11,8 @@ void UpdateBirchState(u16 days);
void UpdateFrontierManiac(u16 days); void UpdateFrontierManiac(u16 days);
void UpdateFrontierGambler(u16 days); void UpdateFrontierGambler(u16 days);
void SetShoalItemFlag(u16 days); void SetShoalItemFlag(u16 days);
bool8 npc_before_player_of_type(u8);
u8 oei_task_add(void); u8 oei_task_add(void);
#endif //GUARD_ROM6_H #endif //GUARD_ROM6_H

View File

@ -231,6 +231,76 @@ extern const u8 gText_FemaleSymbol[];
extern const u8 gText_SelectorArrow3[]; extern const u8 gText_SelectorArrow3[];
extern const u8 gText_YesNo[]; extern const u8 gText_YesNo[];
// main menu/birch speech text
extern const u8 gText_SaveFileErased[];
extern const u8 gText_SaveFileCorrupted[];
extern const u8 gJPText_No1MSubCircuit[];
extern const u8 gText_BatteryRunDry[];
extern const u8 gText_MainMenuNewGame[];
extern const u8 gText_MainMenuOption[];
extern const u8 gText_MainMenuContinue[];
extern const u8 gText_MainMenuMysteryGift2[];
extern const u8 gText_MainMenuMysteryEvents[];
extern const u8 gText_MainMenuMysteryGift[];
extern const u8 gText_WirelessNotConnected[];
extern const u8 gText_MysteryGiftCantUse[];
extern const u8 gText_MysteryEventsCantUse[];
extern const u8 gText_Birch_Welcome[];
extern const u8 gText_ThisIsAPokemon[];
extern const u8 gText_Birch_MainSpeech[];
extern const u8 gText_Birch_AndYouAre[];
extern const u8 gText_Birch_BoyOrGirl[];
extern const u8 gText_Birch_WhatsYourName[];
extern const u8 gText_Birch_SoItsPlayer[];
extern const u8 gText_Birch_YourePlayer[];
extern const u8 gText_Birch_AreYouReady[];
extern const u8 gText_ContinueMenuPlayer[];
extern const u8 gText_ContinueMenuTime[];
extern const u8 gText_ContinueMenuPokedex[];
extern const u8 gText_ContinueMenuBadges[];
extern const u8 gText_BirchBoy[];
extern const u8 gText_BirchGirl[];
extern const u8 gText_DefaultNameStu[];
extern const u8 gText_DefaultNameMilton[];
extern const u8 gText_DefaultNameTom[];
extern const u8 gText_DefaultNameKenny[];
extern const u8 gText_DefaultNameReid[];
extern const u8 gText_DefaultNameJude[];
extern const u8 gText_DefaultNameJaxson[];
extern const u8 gText_DefaultNameEaston[];
extern const u8 gText_DefaultNameWalker[];
extern const u8 gText_DefaultNameTeru[];
extern const u8 gText_DefaultNameJohnny[];
extern const u8 gText_DefaultNameBrett[];
extern const u8 gText_DefaultNameSeth[];
extern const u8 gText_DefaultNameTerry[];
extern const u8 gText_DefaultNameCasey[];
extern const u8 gText_DefaultNameDarren[];
extern const u8 gText_DefaultNameLandon[];
extern const u8 gText_DefaultNameCollin[];
extern const u8 gText_DefaultNameStanley[];
extern const u8 gText_DefaultNameQuincy[];
extern const u8 gText_DefaultNameKimmy[];
extern const u8 gText_DefaultNameTiara[];
extern const u8 gText_DefaultNameBella[];
extern const u8 gText_DefaultNameJayla[];
extern const u8 gText_DefaultNameAllie[];
extern const u8 gText_DefaultNameLianna[];
extern const u8 gText_DefaultNameSara[];
extern const u8 gText_DefaultNameMonica[];
extern const u8 gText_DefaultNameCamila[];
extern const u8 gText_DefaultNameAubree[];
extern const u8 gText_DefaultNameRuthie[];
extern const u8 gText_DefaultNameHazel[];
extern const u8 gText_DefaultNameNadine[];
extern const u8 gText_DefaultNameTanja[];
extern const u8 gText_DefaultNameYasmin[];
extern const u8 gText_DefaultNameNicola[];
extern const u8 gText_DefaultNameLillie[];
extern const u8 gText_DefaultNameTerra[];
extern const u8 gText_DefaultNameLucy[];
extern const u8 gText_DefaultNameHalie[];
// mystery event menu text // mystery event menu text
extern const u8 gText_EventSafelyLoaded[]; extern const u8 gText_EventSafelyLoaded[];
extern const u8 gText_LoadErrorEndingSession[]; extern const u8 gText_LoadErrorEndingSession[];
@ -278,4 +348,31 @@ extern const u8 gText_DepositedVar2Var1s[];
extern const u8 gText_NoRoomForItems[]; extern const u8 gText_NoRoomForItems[];
extern const u8 gText_ThreeDashes[]; extern const u8 gText_ThreeDashes[];
//party menu text
extern const u8 gText_PkmnHPRestoredByVar2[];
extern const u8 gText_CantBeUsedOnPkmn[];
//birch dex rating text
extern const u8 gBirchDexRatingText_LessThan10[];
extern const u8 gBirchDexRatingText_LessThan20[];
extern const u8 gBirchDexRatingText_LessThan30[];
extern const u8 gBirchDexRatingText_LessThan40[];
extern const u8 gBirchDexRatingText_LessThan50[];
extern const u8 gBirchDexRatingText_LessThan60[];
extern const u8 gBirchDexRatingText_LessThan70[];
extern const u8 gBirchDexRatingText_LessThan80[];
extern const u8 gBirchDexRatingText_LessThan90[];
extern const u8 gBirchDexRatingText_LessThan100[];
extern const u8 gBirchDexRatingText_LessThan110[];
extern const u8 gBirchDexRatingText_LessThan120[];
extern const u8 gBirchDexRatingText_LessThan130[];
extern const u8 gBirchDexRatingText_LessThan140[];
extern const u8 gBirchDexRatingText_LessThan150[];
extern const u8 gBirchDexRatingText_LessThan160[];
extern const u8 gBirchDexRatingText_LessThan170[];
extern const u8 gBirchDexRatingText_LessThan180[];
extern const u8 gBirchDexRatingText_LessThan190[];
extern const u8 gBirchDexRatingText_LessThan200[];
extern const u8 gBirchDexRatingText_DexCompleted[];
#endif //GUARD_STRINGS_H #endif //GUARD_STRINGS_H

View File

@ -57,7 +57,7 @@ SECTIONS {
asm/link_rfu.o(.text); asm/link_rfu.o(.text);
asm/rom_8011DC0.o(.text); asm/rom_8011DC0.o(.text);
src/rtc.o(.text); src/rtc.o(.text);
asm/main_menu.o(.text); src/main_menu.o(.text);
src/battle_controllers.o(.text); src/battle_controllers.o(.text);
src/decompress.o(.text); src/decompress.o(.text);
asm/rom_8034C54.o(.text); asm/rom_8034C54.o(.text);
@ -79,14 +79,14 @@ SECTIONS {
src/daycare.o(.text); src/daycare.o(.text);
src/egg_hatch.o(.text); src/egg_hatch.o(.text);
src/battle_interface.o(.text); src/battle_interface.o(.text);
asm/smokescreen.o(.text); src/smokescreen.o(.text);
src/pokeball.o(.text); src/pokeball.o(.text);
src/load_save.o(.text); src/load_save.o(.text);
asm/trade.o(.text); asm/trade.o(.text);
src/berry_blender.o(.text); src/berry_blender.o(.text);
src/play_time.o(.text); src/play_time.o(.text);
src/new_game.o(.text); src/new_game.o(.text);
asm/overworld.o(.text); src/overworld.o(.text);
asm/fieldmap.o(.text); asm/fieldmap.o(.text);
src/metatile_behavior.o(.text); src/metatile_behavior.o(.text);
asm/field_camera.o(.text); asm/field_camera.o(.text);
@ -183,7 +183,7 @@ SECTIONS {
asm/fldeff_flash.o(.text); asm/fldeff_flash.o(.text);
asm/post_battle_event_funcs.o(.text); asm/post_battle_event_funcs.o(.text);
src/time_events.o(.text); src/time_events.o(.text);
asm/birch_pc.o(.text); src/birch_pc.o(.text);
src/hof_pc.o(.text); src/hof_pc.o(.text);
asm/field_specials.o(.text); asm/field_specials.o(.text);
asm/battle_records.o(.text); asm/battle_records.o(.text);
@ -193,7 +193,7 @@ SECTIONS {
asm/pokedex_cry_screen.o(.text); asm/pokedex_cry_screen.o(.text);
src/coins.o(.text); src/coins.o(.text);
src/landmark.o(.text); src/landmark.o(.text);
asm/fldeff_strength.o(.text); src/fldeff_strength.o(.text);
src/battle_transition.o(.text); src/battle_transition.o(.text);
src/battle_controller_link_partner.o(.text); src/battle_controller_link_partner.o(.text);
src/battle_message.o(.text); src/battle_message.o(.text);
@ -207,10 +207,10 @@ SECTIONS {
asm/contest_ai.o(.text); asm/contest_ai.o(.text);
asm/battle_anim_sound_tasks.o(.text); asm/battle_anim_sound_tasks.o(.text);
src/battle_controller_safari.o(.text); src/battle_controller_safari.o(.text);
asm/fldeff_sweetscent.o(.text); src/fldeff_sweetscent.o(.text);
asm/battle_anim_815A0D4.o(.text); asm/battle_anim_815A0D4.o(.text);
asm/learn_move.o(.text); asm/learn_move.o(.text);
asm/fldeff_softboiled.o(.text); src/fldeff_softboiled.o(.text);
src/decoration_inventory.o(.text); src/decoration_inventory.o(.text);
src/roamer.o(.text); src/roamer.o(.text);
asm/battle_tower.o(.text); asm/battle_tower.o(.text);
@ -371,7 +371,7 @@ SECTIONS {
src/link_rfu.o(.rodata); src/link_rfu.o(.rodata);
data/rom_8011DC0.o(.rodata); data/rom_8011DC0.o(.rodata);
src/rtc.o(.rodata); src/rtc.o(.rodata);
data/main_menu.o(.rodata); src/main_menu.o(.rodata);
data/battle_1.o(.rodata); data/battle_1.o(.rodata);
data/data2b.o(.rodata); data/data2b.o(.rodata);
src/battle_main.o(.rodata); src/battle_main.o(.rodata);
@ -393,7 +393,7 @@ SECTIONS {
data/trade.o(.rodata); data/trade.o(.rodata);
src/berry_blender.o(.rodata); src/berry_blender.o(.rodata);
src/new_game.o(.rodata); src/new_game.o(.rodata);
data/overworld.o(.rodata); src/overworld.o(.rodata);
data/tilesets.o(.rodata); data/tilesets.o(.rodata);
data/maps.o(.rodata); data/maps.o(.rodata);
data/fieldmap.o(.rodata); data/fieldmap.o(.rodata);

View File

@ -76,7 +76,7 @@ extern bool8 sub_81B1250(void); // ?
extern bool8 InBattlePike(void); extern bool8 InBattlePike(void);
extern bool8 InBattlePyramid(void); extern bool8 InBattlePyramid(void);
extern u16 GetBattlePyramidPickupItemId(void); extern u16 GetBattlePyramidPickupItemId(void);
extern u8 sav1_map_get_light_level(void); extern u8 Overworld_GetMapTypeOfSaveblockLocation(void);
extern u8 sub_813B21C(void); extern u8 sub_813B21C(void);
extern u16 get_unknown_box_id(void); extern u16 get_unknown_box_id(void);
@ -10578,7 +10578,7 @@ static void atkEF_handleballthrow(void)
ballMultiplier = 10; ballMultiplier = 10;
break; break;
case ITEM_DIVE_BALL: case ITEM_DIVE_BALL:
if (sav1_map_get_light_level() == 5) if (Overworld_GetMapTypeOfSaveblockLocation() == 5)
ballMultiplier = 35; ballMultiplier = 35;
else else
ballMultiplier = 10; ballMultiplier = 10;

View File

@ -49,6 +49,8 @@ struct TrainerBattleParameter
u8 ptrType; u8 ptrType;
}; };
extern void (*gFieldCallback)(void);
extern bool8 InBattlePyramid(void); extern bool8 InBattlePyramid(void);
extern bool8 InBattlePike(void); extern bool8 InBattlePike(void);
extern bool32 InTrainerHill(void); extern bool32 InTrainerHill(void);
@ -472,7 +474,7 @@ void StartWallyTutorialBattle(void)
{ {
CreateMaleMon(&gEnemyParty[0], SPECIES_RALTS, 5); CreateMaleMon(&gEnemyParty[0], SPECIES_RALTS, 5);
ScriptContext2_Enable(); ScriptContext2_Enable();
gMain.savedCallback = c2_exit_to_overworld_1_continue_scripts_restart_music; gMain.savedCallback = CB2_ReturnToFieldContinueScript;
gBattleTypeFlags = BATTLE_TYPE_WALLY_TUTORIAL; gBattleTypeFlags = BATTLE_TYPE_WALLY_TUTORIAL;
CreateBattleStartTask(B_TRANSITION_SLICE, 0); CreateBattleStartTask(B_TRANSITION_SLICE, 0);
} }
@ -601,7 +603,7 @@ static void CB2_EndWildBattle(void)
} }
else else
{ {
SetMainCallback2(c2_exit_to_overworld_2_switch); SetMainCallback2(CB2_ReturnToField);
gFieldCallback = sub_80AF6F0; gFieldCallback = sub_80AF6F0;
} }
} }
@ -614,13 +616,13 @@ static void CB2_EndScriptedWildBattle(void)
if (IsPlayerDefeated(gBattleOutcome) == TRUE) if (IsPlayerDefeated(gBattleOutcome) == TRUE)
{ {
if (InBattlePyramid()) if (InBattlePyramid())
SetMainCallback2(c2_exit_to_overworld_1_continue_scripts_restart_music); SetMainCallback2(CB2_ReturnToFieldContinueScript);
else else
SetMainCallback2(CB2_WhiteOut); SetMainCallback2(CB2_WhiteOut);
} }
else else
{ {
SetMainCallback2(c2_exit_to_overworld_1_continue_scripts_restart_music); SetMainCallback2(CB2_ReturnToFieldContinueScript);
} }
} }
@ -937,7 +939,7 @@ static void CB2_StartFirstBattle(void)
static void CB2_EndFirstBattle(void) static void CB2_EndFirstBattle(void)
{ {
Overworld_ClearSavedMusic(); Overworld_ClearSavedMusic();
SetMainCallback2(c2_exit_to_overworld_1_continue_scripts_restart_music); SetMainCallback2(CB2_ReturnToFieldContinueScript);
} }
static void sub_80B1218(void) static void sub_80B1218(void)
@ -1313,18 +1315,18 @@ static void CB2_EndTrainerBattle(void)
{ {
if (gTrainerBattleOpponent_A == SECRET_BASE_OPPONENT) if (gTrainerBattleOpponent_A == SECRET_BASE_OPPONENT)
{ {
SetMainCallback2(c2_exit_to_overworld_1_continue_scripts_restart_music); SetMainCallback2(CB2_ReturnToFieldContinueScript);
} }
else if (IsPlayerDefeated(gBattleOutcome) == TRUE) else if (IsPlayerDefeated(gBattleOutcome) == TRUE)
{ {
if (InBattlePyramid() || sub_81D5C18()) if (InBattlePyramid() || sub_81D5C18())
SetMainCallback2(c2_exit_to_overworld_1_continue_scripts_restart_music); SetMainCallback2(CB2_ReturnToFieldContinueScript);
else else
SetMainCallback2(CB2_WhiteOut); SetMainCallback2(CB2_WhiteOut);
} }
else else
{ {
SetMainCallback2(c2_exit_to_overworld_1_continue_scripts_restart_music); SetMainCallback2(CB2_ReturnToFieldContinueScript);
if (!InBattlePyramid() && !sub_81D5C18()) if (!InBattlePyramid() && !sub_81D5C18())
{ {
RegisterTrainerInMatchCall(); RegisterTrainerInMatchCall();
@ -1337,7 +1339,7 @@ static void CB2_EndRematchBattle(void)
{ {
if (gTrainerBattleOpponent_A == SECRET_BASE_OPPONENT) if (gTrainerBattleOpponent_A == SECRET_BASE_OPPONENT)
{ {
SetMainCallback2(c2_exit_to_overworld_1_continue_scripts_restart_music); SetMainCallback2(CB2_ReturnToFieldContinueScript);
} }
else if (IsPlayerDefeated(gBattleOutcome) == TRUE) else if (IsPlayerDefeated(gBattleOutcome) == TRUE)
{ {
@ -1345,7 +1347,7 @@ static void CB2_EndRematchBattle(void)
} }
else else
{ {
SetMainCallback2(c2_exit_to_overworld_1_continue_scripts_restart_music); SetMainCallback2(CB2_ReturnToFieldContinueScript);
RegisterTrainerInMatchCall(); RegisterTrainerInMatchCall();
SetBattledTrainersFlags(); SetBattledTrainersFlags();
HandleRematchVarsOnBattleEnd(); HandleRematchVarsOnBattleEnd();

View File

@ -919,7 +919,7 @@ static void CB2_TestBattleTransition(void)
if (IsBattleTransitionDone()) if (IsBattleTransitionDone())
{ {
sTestingTransitionState = 0; sTestingTransitionState = 0;
SetMainCallback2(c2_exit_to_overworld_2_switch); SetMainCallback2(CB2_ReturnToField);
} }
break; break;
} }

View File

@ -161,7 +161,7 @@ extern void copy_textbox_border_tile_patterns_to_vram(u8, u16, u8);
extern void sub_81AABF0(void (*callback)(void)); extern void sub_81AABF0(void (*callback)(void));
extern void sub_800B4C0(void); extern void sub_800B4C0(void);
extern void ClearLinkCallback(void); extern void ClearLinkCallback(void);
extern void c2_exit_to_overworld_1_continue_scripts_restart_music(void); extern void CB2_ReturnToFieldContinueScript(void);
extern void sub_8153430(void); extern void sub_8153430(void);
extern bool8 sub_8153474(void); extern bool8 sub_8153474(void);
extern void sub_80EECEC(void); extern void sub_80EECEC(void);
@ -2692,7 +2692,7 @@ static void CB2_HandlePlayerLinkPlayAgainChoice(void)
if (gReceivedRemoteLinkPlayers == 0) if (gReceivedRemoteLinkPlayers == 0)
{ {
FREE_AND_SET_NULL(sBerryBlenderData); FREE_AND_SET_NULL(sBerryBlenderData);
SetMainCallback2(c2_exit_to_overworld_1_continue_scripts_restart_music); SetMainCallback2(CB2_ReturnToFieldContinueScript);
} }
break; break;
} }
@ -2742,7 +2742,7 @@ static void CB2_HandlePlayerPlayAgainChoice(void)
if (sBerryBlenderData->playAgainState == PLAY_AGAIN_OK) if (sBerryBlenderData->playAgainState == PLAY_AGAIN_OK)
SetMainCallback2(DoBerryBlending); SetMainCallback2(DoBerryBlending);
else else
SetMainCallback2(c2_exit_to_overworld_1_continue_scripts_restart_music); SetMainCallback2(CB2_ReturnToFieldContinueScript);
FreeAllWindowBuffers(); FreeAllWindowBuffers();
UnsetBgTilemapBuffer(2); UnsetBgTilemapBuffer(2);

93
src/birch_pc.c Normal file
View File

@ -0,0 +1,93 @@
#include "global.h"
#include "event_data.h"
#include "field_message_box.h"
#include "pokedex.h"
#include "constants/species.h"
#include "strings.h"
extern u16 gSpecialVar_0x8004;
extern u16 gSpecialVar_0x8005;
extern u16 gSpecialVar_0x8006;
bool16 ScriptGetPokedexInfo(void)
{
if (gSpecialVar_0x8004 == 0) // is national dex not present?
{
gSpecialVar_0x8005 = GetHoennPokedexCount(0);
gSpecialVar_0x8006 = GetHoennPokedexCount(1);
}
else
{
gSpecialVar_0x8005 = GetNationalPokedexCount(0);
gSpecialVar_0x8006 = GetNationalPokedexCount(1);
}
return IsNationalPokedexEnabled();
}
// This shows your Hoenn Pokedex rating and not your National Dex.
const u8 *GetPokedexRatingText(u16 count)
{
if (count < 10)
return gBirchDexRatingText_LessThan10;
if (count < 20)
return gBirchDexRatingText_LessThan20;
if (count < 30)
return gBirchDexRatingText_LessThan30;
if (count < 40)
return gBirchDexRatingText_LessThan40;
if (count < 50)
return gBirchDexRatingText_LessThan50;
if (count < 60)
return gBirchDexRatingText_LessThan60;
if (count < 70)
return gBirchDexRatingText_LessThan70;
if (count < 80)
return gBirchDexRatingText_LessThan80;
if (count < 90)
return gBirchDexRatingText_LessThan90;
if (count < 100)
return gBirchDexRatingText_LessThan100;
if (count < 110)
return gBirchDexRatingText_LessThan110;
if (count < 120)
return gBirchDexRatingText_LessThan120;
if (count < 130)
return gBirchDexRatingText_LessThan130;
if (count < 140)
return gBirchDexRatingText_LessThan140;
if (count < 150)
return gBirchDexRatingText_LessThan150;
if (count < 160)
return gBirchDexRatingText_LessThan160;
if (count < 170)
return gBirchDexRatingText_LessThan170;
if (count < 180)
return gBirchDexRatingText_LessThan180;
if (count < 190)
return gBirchDexRatingText_LessThan190;
if (count < 200)
return gBirchDexRatingText_LessThan200;
if (count == 200)
{
if (GetSetPokedexFlag(SpeciesToNationalPokedexNum(SPECIES_JIRACHI), 1)
|| GetSetPokedexFlag(SpeciesToNationalPokedexNum(SPECIES_DEOXYS), 1)) // Jirachi or Deoxys is not counted towards the dex completion. If either of these flags are enabled, it means the actual count is less than 200.
return gBirchDexRatingText_LessThan200;
return gBirchDexRatingText_DexCompleted;
}
if (count == 201)
{
if (GetSetPokedexFlag(SpeciesToNationalPokedexNum(SPECIES_JIRACHI), 1)
&& GetSetPokedexFlag(SpeciesToNationalPokedexNum(SPECIES_DEOXYS), 1)) // If both of these flags are enabled, it means the actual count is less than 200.
return gBirchDexRatingText_LessThan200;
return gBirchDexRatingText_DexCompleted;
}
if (count == 202)
return gBirchDexRatingText_DexCompleted; // Hoenn dex is considered complete, even though the hoenn dex count is 210.
return gBirchDexRatingText_LessThan10;
}
void ShowPokedexRatingMessage(void)
{
ShowFieldMessage(GetPokedexRatingText(gSpecialVar_0x8004));
}

View File

@ -83,7 +83,7 @@ static void UpdatePerMinute(struct Time *localTime)
static void ReturnFromStartWallClock(void) static void ReturnFromStartWallClock(void)
{ {
InitTimeBasedEvents(); InitTimeBasedEvents();
SetMainCallback2(c2_exit_to_overworld_1_continue_scripts_restart_music); SetMainCallback2(CB2_ReturnToFieldContinueScript);
} }
void StartWallClock(void) void StartWallClock(void)

View File

@ -46,7 +46,7 @@ extern void sub_819746C(u8, bool8);
extern void NewMenuHelpers_DrawStdWindowFrame(u8, bool8); extern void NewMenuHelpers_DrawStdWindowFrame(u8, bool8);
extern void sub_81B9328(void); extern void sub_81B9328(void);
extern void sub_81AF078(u32, bool8, struct ListMenu *); extern void sub_81AF078(u32, bool8, struct ListMenu *);
extern void c2_exit_to_overworld_2_switch(void); extern void CB2_ReturnToField(void);
// this file's functions // this file's functions
static void ClearDaycareMonMisc(struct DaycareMiscMon *misc); static void ClearDaycareMonMisc(struct DaycareMiscMon *misc);
@ -1315,5 +1315,5 @@ void ShowDaycareLevelMenu(void)
void ChooseSendDaycareMon(void) void ChooseSendDaycareMon(void)
{ {
sub_81B9328(); sub_81B9328();
gMain.savedCallback = c2_exit_to_overworld_2_switch; gMain.savedCallback = CB2_ReturnToField;
} }

View File

@ -38,6 +38,8 @@
#include "decoration.h" #include "decoration.h"
#include "graphics.h" #include "graphics.h"
extern void (*gFieldCallback)(void);
// Static type declarations // Static type declarations
#define OVERWORLD_PLACE_DECOR_SELECTOR_PAL_TAG 0xbe5 #define OVERWORLD_PLACE_DECOR_SELECTOR_PAL_TAG 0xbe5
@ -1682,7 +1684,7 @@ void c1_overworld_prev_quest(u8 taskId)
sub_812A3C8(); sub_812A3C8();
FreeSpritePaletteByTag(OVERWORLD_PLACE_DECOR_SELECTOR_PAL_TAG); FreeSpritePaletteByTag(OVERWORLD_PLACE_DECOR_SELECTOR_PAL_TAG);
gFieldCallback = sub_8128CD4; gFieldCallback = sub_8128CD4;
SetMainCallback2(c2_exit_to_overworld_2_switch); SetMainCallback2(CB2_ReturnToField);
DestroyTask(taskId); DestroyTask(taskId);
break; break;
} }
@ -2673,7 +2675,7 @@ void sub_812A25C(u8 taskId)
case 1: case 1:
sub_812A3C8(); sub_812A3C8();
gFieldCallback = sub_812A334; gFieldCallback = sub_812A334;
SetMainCallback2(c2_exit_to_overworld_2_switch); SetMainCallback2(CB2_ReturnToField);
DestroyTask(taskId); DestroyTask(taskId);
break; break;
} }

View File

@ -63,7 +63,7 @@ extern void FadeScreen(u8, u8);
extern void overworld_free_bg_tilemaps(void); extern void overworld_free_bg_tilemaps(void);
extern void sub_80AF168(void); extern void sub_80AF168(void);
extern void ScanlineEffect_Stop(void); extern void ScanlineEffect_Stop(void);
extern void c2_exit_to_overworld_2_switch(void); extern void CB2_ReturnToField(void);
extern void play_some_sound(void); extern void play_some_sound(void);
extern void DoNamingScreen(u8, const u8*, u16, u8, u32, MainCallback); extern void DoNamingScreen(u8, const u8*, u16, u8, u32, MainCallback);
extern u16 sub_80D22D0(void); extern u16 sub_80D22D0(void);
@ -564,7 +564,7 @@ static void EggHatchSetMonNickname(void)
SetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_NICKNAME, gStringVar3); SetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_NICKNAME, gStringVar3);
FreeMonSpritesGfx(); FreeMonSpritesGfx();
Free(sEggHatchData); Free(sEggHatchData);
SetMainCallback2(c2_exit_to_overworld_2_switch); SetMainCallback2(CB2_ReturnToField);
} }
static void Task_EggHatchPlayBGM(u8 taskID) static void Task_EggHatchPlayBGM(u8 taskID)
@ -688,7 +688,7 @@ static void CB2_EggHatch_1(void)
UnsetBgTilemapBuffer(0); UnsetBgTilemapBuffer(0);
UnsetBgTilemapBuffer(1); UnsetBgTilemapBuffer(1);
Free(sEggHatchData); Free(sEggHatchData);
SetMainCallback2(c2_exit_to_overworld_2_switch); SetMainCallback2(CB2_ReturnToField);
} }
break; break;
} }

View File

@ -198,7 +198,7 @@ static void npcs_clear_ids_and_state(void)
void sub_808D438(void) void sub_808D438(void)
{ {
strange_npc_table_clear(); ZeroAllLinkPlayerMapObjects();
npcs_clear_ids_and_state(); npcs_clear_ids_and_state();
ClearPlayerAvatarInfo(); ClearPlayerAvatarInfo();
sub_808D450(); sub_808D450();
@ -1673,7 +1673,7 @@ struct MapObjectTemplate *GetFieldObjectTemplateByLocalIdAndMap(u8 localId, u8 m
} }
else else
{ {
mapHeader = get_mapheader_by_bank_and_number(mapGroup, mapNum); mapHeader = Overworld_GetMapHeaderByGroupAndId(mapGroup, mapNum);
templates = mapHeader->events->mapObjects; templates = mapHeader->events->mapObjects;
count = mapHeader->events->mapObjectCount; count = mapHeader->events->mapObjectCount;
} }

109
src/fldeff_softboiled.c Normal file
View File

@ -0,0 +1,109 @@
#include "global.h"
#include "menu.h"
#include "party_menu.h"
#include "pokemon.h"
#include "constants/songs.h"
#include "sound.h"
#include "sprite.h"
#include "string_util.h"
#include "strings.h"
#include "task.h"
void sub_816166C(u8 taskId);
void sub_81617B8(u8 taskId);
void sub_81616C0(u8 taskId);
void sub_8161724(u8 taskId);
bool8 SetUpFieldMove_SoftBoiled(void)
{
u16 maxHp;
u16 hp;
u16 minHp;
maxHp = GetMonData(&gPlayerParty[GetCursorSelectionMonId()], MON_DATA_MAX_HP);
hp = GetMonData(&gPlayerParty[GetCursorSelectionMonId()], MON_DATA_HP);
minHp = (maxHp / 5);
if (hp > minHp)
return TRUE;
return FALSE;
}
void sub_8161560(u8 taskId)
{
gUnknown_0203CEC8.unkB = 0xA;
gUnknown_0203CEC8.unkA = gUnknown_0203CEC8.unk9;
sub_81B0FCC(GetCursorSelectionMonId(), 0x1);
display_pokemon_menu_message(0x5);
gTasks[taskId].func = sub_81B1370;
}
void sub_81615A8(u8 taskId)
{
u16 hp;
u8 unk9 = gUnknown_0203CEC8.unk9;
u8 pokemonIndex = gUnknown_0203CEC8.unkA;
if(pokemonIndex > 6)
{
gUnknown_0203CEC8.unkB = 0;
display_pokemon_menu_message(0x0);
gTasks[taskId].func = sub_81B1370;
return;
}
hp = GetMonData(&gPlayerParty[pokemonIndex], MON_DATA_HP);
if(hp == 0 || unk9 == pokemonIndex || GetMonData(&gPlayerParty[pokemonIndex], MON_DATA_MAX_HP) == hp)
{
sub_81617B8(taskId);
return;
}
PlaySE(SE_KAIFUKU);
sub_81B1F18(taskId, unk9, -1, GetMonData(&gPlayerParty[unk9], MON_DATA_MAX_HP)/5, sub_816166C);
}
void sub_816166C(u8 taskId)
{
PlaySE(SE_KAIFUKU);
sub_81B1F18(taskId, gUnknown_0203CEC8.unkA, 1, GetMonData(&gPlayerParty[gUnknown_0203CEC8.unk9], MON_DATA_MAX_HP)/5, sub_81616C0);
}
void sub_81616C0(u8 taskId)
{
GetMonNickname(&gPlayerParty[gUnknown_0203CEC8.unkA], gStringVar1);
StringExpandPlaceholders(gStringVar4, gText_PkmnHPRestoredByVar2);
sub_81B1B5C(gStringVar4, 0);
schedule_bg_copy_tilemap_to_vram(2);
gTasks[taskId].func = sub_8161724;
}
void sub_8161724(u8 taskId)
{
if(sub_81B1BD4() == 1)
return;
gUnknown_0203CEC8.unkB = 0x0;
sub_81B0FCC(gUnknown_0203CEC8.unk9, 0);
gUnknown_0203CEC8.unk9 = gUnknown_0203CEC8.unkA;
sub_81B0FCC(gUnknown_0203CEC8.unkA, 1);
sub_8198070(0x6, FALSE);
ClearWindowTilemap(0x6);
display_pokemon_menu_message(0);
gTasks[taskId].func = sub_81B1370;
}
void sub_8161784(u8 taskId)
{
if(sub_81B1BD4() == 1)
return;
display_pokemon_menu_message(0x5);
gTasks[taskId].func = sub_81B1370;
}
void sub_81617B8(u8 taskId)
{
PlaySE(SE_SELECT);
sub_81B1B5C(&gText_CantBeUsedOnPkmn, 0);
schedule_bg_copy_tilemap_to_vram(2);
gTasks[taskId].func = sub_8161784;
}

44
src/fldeff_strength.c Normal file
View File

@ -0,0 +1,44 @@
#include "global.h"
#include "event_data.h"
#include "event_scripts.h"
#include "field_effect.h"
#include "party_menu.h"
#include "rom6.h"
#include "script.h"
#include "task.h"
void FldEff_UseStrength(void);
void sub_8145E74(void);
bool8 SetUpFieldMove_Strength(void)
{
if (npc_before_player_of_type(87) == TRUE)
{
gSpecialVar_Result = GetCursorSelectionMonId();
gUnknown_03005DB0 = FieldCallback_Teleport;
gUnknown_0203CEEC = FldEff_UseStrength;
return TRUE;
}
return FALSE;
}
void FldEff_UseStrength(void)
{
gFieldEffectArguments[0] = GetCursorSelectionMonId();
ScriptContext1_SetupScript(FieryPath_EventScript_2908FD);
}
bool8 sub_8145E2C(void)
{
u8 taskId = oei_task_add();
gTasks[taskId].data[8] = (u32)sub_8145E74 >> 16;
gTasks[taskId].data[9] = (u32)sub_8145E74;
GetMonNickname(&gPlayerParty[gFieldEffectArguments[0]], gStringVar1);
return FALSE;
}
void sub_8145E74(void)
{
FieldEffectActiveListRemove(FLDEFF_USE_STRENGTH);
EnableBothScriptContexts();
}

Some files were not shown because too many files have changed in this diff Show More