summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--asm/battle_records.s16
-rw-r--r--asm/berry_blender.s4
-rw-r--r--asm/evolution_scene.s4
-rw-r--r--asm/field_control_avatar.s4
-rw-r--r--asm/fldeff_cut.s4
-rw-r--r--asm/hall_of_fame.s2
-rw-r--r--asm/mauville_old_man.s2
-rw-r--r--asm/pokenav.s2
-rw-r--r--asm/rom6.s2
-rw-r--r--asm/rom_800D42C.s2
-rw-r--r--asm/rom_810CBB4.s14
-rw-r--r--asm/rom_81258BC.s14
-rw-r--r--asm/roulette.s4
-rw-r--r--asm/secret_base.s4
-rw-r--r--asm/shop.s2
-rw-r--r--asm/slot_machine.s2
-rw-r--r--asm/trade.s2
-rw-r--r--asm/tv.s6
-rw-r--r--asm/weather.s2
-rw-r--r--data/event_scripts.s2
-rw-r--r--data/scripts/cable_club.inc34
-rw-r--r--data/specials.inc2
-rw-r--r--data/text/cable_club.inc10
-rw-r--r--include/battle.h35
-rw-r--r--include/global.h12
-rw-r--r--include/new_game.h8
-rw-r--r--include/rom4.h10
-rw-r--r--src/battle_ai.c129
-rw-r--r--src/battle_setup.c58
-rw-r--r--src/field_player_avatar.c2
-rw-r--r--src/field_poison.c2
-rw-r--r--src/item_use.c2
-rw-r--r--src/new_game.c25
-rw-r--r--src/rom4.c93
-rw-r--r--src/rom_800D42C.c7
-rw-r--r--src/safari_zone.c2
-rw-r--r--src/save.c4
-rw-r--r--src/scrcmd.c2
-rw-r--r--src/start_menu.c4
-rw-r--r--src/trainer_card.c6
-rw-r--r--src/wild_encounter.c2
41 files changed, 240 insertions, 303 deletions
diff --git a/asm/battle_records.s b/asm/battle_records.s
index b58a6506c..60d7b9b2b 100644
--- a/asm/battle_records.s
+++ b/asm/battle_records.s
@@ -47,13 +47,13 @@ _0810FFAE:
bge _0810FFAE
movs r0, 0x17
movs r1, 0
- bl sav12_xor_set
+ bl SetGameStat
movs r0, 0x18
movs r1, 0
- bl sav12_xor_set
+ bl SetGameStat
movs r0, 0x19
movs r1, 0
- bl sav12_xor_set
+ bl SetGameStat
pop {r4,r5}
pop {r0}
bx r0
@@ -264,12 +264,12 @@ _0811013A:
movs r4, 0x19
_0811013C:
adds r0, r4, 0
- bl sub_8053108
+ bl GetGameStat
ldr r1, _08110154 @ =0x0000270e
cmp r0, r1
bhi _0811014E
adds r0, r4, 0
- bl sav12_xor_increment
+ bl IncrementGameStat
_0811014E:
pop {r4}
pop {r0}
@@ -488,7 +488,7 @@ PrintLinkBattleWinsLossesDraws: @ 81102E8
push {r4,lr}
ldr r4, _08110338 @ =gStringVar1
movs r0, 0x17
- bl sub_8053108
+ bl GetGameStat
adds r1, r0, 0
adds r0, r4, 0
movs r2, 0x1
@@ -496,7 +496,7 @@ PrintLinkBattleWinsLossesDraws: @ 81102E8
bl ConvertIntToDecimalStringN_DigitWidth6
ldr r4, _0811033C @ =gStringVar2
movs r0, 0x18
- bl sub_8053108
+ bl GetGameStat
adds r1, r0, 0
adds r0, r4, 0
movs r2, 0x1
@@ -504,7 +504,7 @@ PrintLinkBattleWinsLossesDraws: @ 81102E8
bl ConvertIntToDecimalStringN_DigitWidth6
ldr r4, _08110340 @ =gStringVar3
movs r0, 0x19
- bl sub_8053108
+ bl GetGameStat
adds r1, r0, 0
adds r0, r4, 0
movs r2, 0x1
diff --git a/asm/berry_blender.s b/asm/berry_blender.s
index def318c24..666882c04 100644
--- a/asm/berry_blender.s
+++ b/asm/berry_blender.s
@@ -4998,13 +4998,13 @@ _08050AEA:
cmp r0, 0
bne _08050B00
movs r0, 0x22
- bl sav12_xor_increment
+ bl IncrementGameStat
b _08050C82
.align 2, 0
_08050AFC: .4byte gUnknown_03004834
_08050B00:
movs r0, 0x21
- bl sav12_xor_increment
+ bl IncrementGameStat
b _08050C82
_08050B08:
ldr r0, _08050B2C @ =gUnknown_03004854
diff --git a/asm/evolution_scene.s b/asm/evolution_scene.s
index 64144d656..6ecd355c3 100644
--- a/asm/evolution_scene.s
+++ b/asm/evolution_scene.s
@@ -1747,7 +1747,7 @@ _081127BE:
movs r1, 0x3
bl sub_8090D90
movs r0, 0xE
- bl sav12_xor_increment
+ bl IncrementGameStat
b _08112FD0
.align 2, 0
_08112834: .4byte gPaletteFade
@@ -3055,7 +3055,7 @@ _08113316:
movs r1, 0x3
bl sub_8090D90
movs r0, 0xE
- bl sav12_xor_increment
+ bl IncrementGameStat
b _08113B3A
.align 2, 0
_08113390: .4byte gPaletteFade
diff --git a/asm/field_control_avatar.s b/asm/field_control_avatar.s
index 7f7c35ce1..e2fd1b54f 100644
--- a/asm/field_control_avatar.s
+++ b/asm/field_control_avatar.s
@@ -222,7 +222,7 @@ _08068076:
cmp r0, 0
beq _08068098
movs r0, 0x5
- bl sav12_xor_increment
+ bl IncrementGameStat
mov r0, sp
adds r1, r4, 0
adds r2, r6, 0
@@ -1271,7 +1271,7 @@ _080688B4:
cmp r0, 0
beq _080688CC
movs r0, 0xD
- bl sav12_xor_increment
+ bl IncrementGameStat
ldr r0, _080688C8 @ =Event_EggHatch
b _080688E8
.align 2, 0
diff --git a/asm/fldeff_cut.s b/asm/fldeff_cut.s
index 0033c77cd..a56ad32fa 100644
--- a/asm/fldeff_cut.s
+++ b/asm/fldeff_cut.s
@@ -148,7 +148,7 @@ FldEff_UseCutOnGrass: @ 80A2604
strh r0, [r1, 0x18]
strh r2, [r1, 0x1A]
movs r0, 0x12
- bl sav12_xor_increment
+ bl IncrementGameStat
movs r0, 0
pop {r1}
bx r1
@@ -190,7 +190,7 @@ FldEff_UseCutOnTree: @ 80A2654
strh r0, [r1, 0x18]
strh r2, [r1, 0x1A]
movs r0, 0x12
- bl sav12_xor_increment
+ bl IncrementGameStat
movs r0, 0
pop {r1}
bx r1
diff --git a/asm/hall_of_fame.s b/asm/hall_of_fame.s
index 76846e9c3..c1e93c8b3 100644
--- a/asm/hall_of_fame.s
+++ b/asm/hall_of_fame.s
@@ -1562,7 +1562,7 @@ _08142A98:
_08142AA0:
strh r1, [r0, 0x8]
movs r0, 0xA
- bl sub_8053108
+ bl GetGameStat
ldr r2, _08142AF0 @ =gTasks
adds r1, r6, r5
lsls r1, 3
diff --git a/asm/mauville_old_man.s b/asm/mauville_old_man.s
index 7dfaa890e..3af0f2b11 100644
--- a/asm/mauville_old_man.s
+++ b/asm/mauville_old_man.s
@@ -1369,7 +1369,7 @@ sub_80F8438: @ 80F8438
bne _080F8444
movs r0, 0
_080F8444:
- bl sub_8053108
+ bl GetGameStat
pop {r1}
bx r1
thumb_func_end sub_80F8438
diff --git a/asm/pokenav.s b/asm/pokenav.s
index ba1079dec..d86790b71 100644
--- a/asm/pokenav.s
+++ b/asm/pokenav.s
@@ -9571,7 +9571,7 @@ _080F088C:
bne _080F08C6
_080F089A:
movs r0, 0x9
- bl sub_8053108
+ bl GetGameStat
adds r1, r0, 0
ldr r0, _080F08E0 @ =0x0001869f
cmp r1, r0
diff --git a/asm/rom6.s b/asm/rom6.s
index d28085ae2..16899bf2e 100644
--- a/asm/rom6.s
+++ b/asm/rom6.s
@@ -342,7 +342,7 @@ FldEff_RockSmash: @ 810B55C
strh r0, [r1, 0x18]
strh r2, [r1, 0x1A]
movs r0, 0x13
- bl sav12_xor_increment
+ bl IncrementGameStat
movs r0, 0
pop {r1}
bx r1
diff --git a/asm/rom_800D42C.s b/asm/rom_800D42C.s
index fb917fd7e..47be2eaf0 100644
--- a/asm/rom_800D42C.s
+++ b/asm/rom_800D42C.s
@@ -44618,7 +44618,7 @@ atk60_cmd60: @ 8024298
ldr r0, _080242C4 @ =gUnknown_02024C10
ldr r0, [r0]
ldrb r0, [r0, 0x1]
- bl sav12_xor_increment
+ bl IncrementGameStat
_080242B2:
ldr r1, _080242C4 @ =gUnknown_02024C10
ldr r0, [r1]
diff --git a/asm/rom_810CBB4.s b/asm/rom_810CBB4.s
index 9289078b3..a29775d72 100644
--- a/asm/rom_810CBB4.s
+++ b/asm/rom_810CBB4.s
@@ -776,7 +776,7 @@ _0810D1A8:
bl FlagSet
_0810D1B4:
movs r0, 0x1
- bl sub_8053108
+ bl GetGameStat
cmp r0, 0
bne _0810D1D4
ldr r2, _0810D1EC @ =gSaveBlock2
@@ -788,7 +788,7 @@ _0810D1B4:
ldrb r0, [r2, 0x11]
orrs r1, r0
movs r0, 0x1
- bl sav12_xor_set
+ bl SetGameStat
_0810D1D4:
bl SetSecretBase2Field_9
ldr r0, _0810D1EC @ =gSaveBlock2
@@ -843,7 +843,7 @@ _0810D23A:
cmp r6, 0x1
bne _0810D250
movs r0, 0x2A
- bl sav12_xor_increment
+ bl IncrementGameStat
ldr r0, _0810D264 @ =0x0000083b
bl FlagSet
_0810D250:
@@ -863,13 +863,13 @@ _0810D268: .4byte sub_8141F90
thumb_func_start sp0C8_whiteout_maybe
sp0C8_whiteout_maybe: @ 810D26C
push {lr}
- ldr r0, _0810D27C @ =c2_whiteout
+ ldr r0, _0810D27C @ =CB2_WhiteOut
bl SetMainCallback2
movs r0, 0
pop {r1}
bx r1
.align 2, 0
-_0810D27C: .4byte c2_whiteout
+_0810D27C: .4byte CB2_WhiteOut
thumb_func_end sp0C8_whiteout_maybe
thumb_func_start sub_810D280
@@ -5215,7 +5215,7 @@ _0810F400: .4byte 0x00004026
sub_810F404: @ 810F404
push {lr}
movs r0, 0x20
- bl sub_8053108
+ bl GetGameStat
lsls r0, 16
lsrs r0, 16
pop {r1}
@@ -5395,7 +5395,7 @@ GivLeadMonEffortRibbon: @ 810F54C
push {lr}
sub sp, 0x4
movs r0, 0x2A
- bl sav12_xor_increment
+ bl IncrementGameStat
ldr r0, _0810F580 @ =0x0000083b
bl FlagSet
movs r1, 0x1
diff --git a/asm/rom_81258BC.s b/asm/rom_81258BC.s
index 28a8de060..a169258ae 100644
--- a/asm/rom_81258BC.s
+++ b/asm/rom_81258BC.s
@@ -21803,7 +21803,7 @@ _08135820:
adds r0, r5, r2
ldrh r1, [r0]
movs r0, 0x20
- bl sav12_xor_set
+ bl SetGameStat
b _0813589A
.align 2, 0
_08135830: .4byte 0x00000572
@@ -21985,7 +21985,7 @@ _081359A0:
adds r0, r3, r1
ldrh r1, [r0]
movs r0, 0x20
- bl sav12_xor_set
+ bl SetGameStat
b _08135A0A
.align 2, 0
_081359B0: .4byte 0x00000572
@@ -22093,7 +22093,7 @@ _08135A66:
adds r5, r0, 0
movs r0, 0x20
adds r1, r5, 0
- bl sav12_xor_set
+ bl SetGameStat
ldr r1, _08135A90 @ =0x0000270f
cmp r5, r1
bhi _08135AA4
@@ -22107,7 +22107,7 @@ _08135A94:
ldrh r5, [r1]
movs r0, 0x20
adds r1, r5, 0
- bl sav12_xor_set
+ bl SetGameStat
ldr r1, _08135AAC @ =0x0000270f
cmp r5, r1
bls _08135AB4
@@ -22179,7 +22179,7 @@ _08135B0E:
adds r0, 0xC
ldr r4, _08135B88 @ =gSaveBlock2 + 0xA
adds r1, r4, 0
- bl sub_8052D10
+ bl copy_word_to_mem
adds r0, r5, 0x4
subs r4, 0xA
adds r1, r4, 0
@@ -22651,7 +22651,7 @@ _08135EBA:
cmp r0, 0
beq _08135EC8
movs r0, 0x2A
- bl sav12_xor_increment
+ bl IncrementGameStat
_08135EC8:
pop {r3}
mov r8, r3
@@ -22708,7 +22708,7 @@ _08135F2A:
adds r0, 0xC
ldr r4, _08135FAC @ =gSaveBlock2 + 0xA
adds r1, r4, 0
- bl sub_8052D10
+ bl copy_word_to_mem
adds r0, r7, 0x4
subs r4, 0xA
adds r1, r4, 0
diff --git a/asm/roulette.s b/asm/roulette.s
index 01ff3ac8f..0704caf7f 100644
--- a/asm/roulette.s
+++ b/asm/roulette.s
@@ -2555,7 +2555,7 @@ sub_811659C: @ 811659C
cmp r0, 0
beq _08116624
movs r0, 0x1D
- bl sub_8053108
+ bl GetGameStat
ldrh r1, [r4, 0x1E]
adds r1, 0x1
strh r1, [r4, 0x1E]
@@ -2566,7 +2566,7 @@ sub_811659C: @ 811659C
movs r0, 0x1E
ldrsh r1, [r4, r0]
movs r0, 0x1D
- bl sav12_xor_set
+ bl SetGameStat
_081165E4:
ldr r1, _081165F8 @ =sub_811677C
ldr r2, _081165FC @ =0x0000ffff
diff --git a/asm/secret_base.s b/asm/secret_base.s
index 72c467e70..139375998 100644
--- a/asm/secret_base.s
+++ b/asm/secret_base.s
@@ -2058,7 +2058,7 @@ _080BC460: .4byte 0x00001a16
SecretBasePC_PackUp: @ 80BC464
push {lr}
movs r0, 0x14
- bl sav12_xor_increment
+ bl IncrementGameStat
bl sub_80BC440
pop {r0}
bx r0
@@ -2149,7 +2149,7 @@ sub_80BC50C: @ 80BC50C
push {r4,r5,lr}
bl sub_80BC474
movs r0, 0x14
- bl sav12_xor_increment
+ bl IncrementGameStat
ldr r4, _080BC530 @ =gSaveBlock1
ldr r0, _080BC534 @ =0x00001a16
adds r4, r0
diff --git a/asm/shop.s b/asm/shop.s
index 94ee3c867..d59f9584e 100644
--- a/asm/shop.s
+++ b/asm/shop.s
@@ -1820,7 +1820,7 @@ sub_80B3B80: @ 80B3B80
lsls r4, 24
lsrs r4, 24
movs r0, 0x26
- bl sav12_xor_increment
+ bl IncrementGameStat
ldr r5, _080B3BC0 @ =gSaveBlock1 + 0x490
ldr r0, _080B3BC4 @ =gUnknown_020386A0
ldr r1, [r0]
diff --git a/asm/slot_machine.s b/asm/slot_machine.s
index ee176211f..1c374b3ea 100644
--- a/asm/slot_machine.s
+++ b/asm/slot_machine.s
@@ -1254,7 +1254,7 @@ sub_81021FC: @ 81021FC
cmp r0, 0
beq _08102220
movs r0, 0x1C
- bl sav12_xor_increment
+ bl IncrementGameStat
_08102220:
ldrh r1, [r4, 0x8]
movs r0, 0x4
diff --git a/asm/trade.s b/asm/trade.s
index 340d95606..d1fe82d6c 100644
--- a/asm/trade.s
+++ b/asm/trade.s
@@ -11767,7 +11767,7 @@ _0804DF50: .4byte gSystemText_Saving
_0804DF54:
bl SetSecretBase2Field_9_AndHideBG
movs r0, 0x15
- bl sav12_xor_increment
+ bl IncrementGameStat
bl sub_8125D80
ldr r1, _0804DF74 @ =gMain
ldr r2, _0804DF78 @ =0x0000043c
diff --git a/asm/tv.s b/asm/tv.s
index 6126631dd..fd5fdeeac 100644
--- a/asm/tv.s
+++ b/asm/tv.s
@@ -638,7 +638,7 @@ sub_80BDC14: @ 80BDC14
adds r4, r1
strb r0, [r4]
movs r0, 0x6
- bl sav12_xor_increment
+ bl IncrementGameStat
pop {r4-r6}
pop {r0}
bx r0
@@ -1136,7 +1136,7 @@ sub_80BE028: @ 80BE028
movs r1, 0x18
bl sub_80BF55C
movs r0, 0x5
- bl sub_8053108
+ bl GetGameStat
strh r0, [r4, 0x6]
movs r0, 0x19
strb r0, [r4]
@@ -1921,7 +1921,7 @@ sub_80BEA88: @ 80BEA88
ldrh r0, [r5, 0x2]
strh r0, [r4, 0x2]
movs r0, 0x5
- bl sub_8053108
+ bl GetGameStat
ldrh r1, [r5, 0x6]
subs r0, r1
strh r0, [r4, 0x6]
diff --git a/asm/weather.s b/asm/weather.s
index 7ede8e818..01190c75e 100644
--- a/asm/weather.s
+++ b/asm/weather.s
@@ -7570,7 +7570,7 @@ UpdateRainCounter: @ 8080854
bne _0808086E
_08080868:
movs r0, 0x28
- bl sav12_xor_increment
+ bl IncrementGameStat
_0808086E:
pop {r0}
bx r0
diff --git a/data/event_scripts.s b/data/event_scripts.s
index 41ac10d06..d909f1006 100644
--- a/data/event_scripts.s
+++ b/data/event_scripts.s
@@ -1324,7 +1324,7 @@ EverGrandeCity_HallOfFame_EventScript_19FC70:: @ 819FC70
setflag 2141
return
-gUnknown_0819FC74:: @ 819FC74
+EventScript_LeagueWhiteOut:: @ 819FC74
call EverGrandeCity_HallOfFame_EventScript_19FD09
call EventScript_19FC84
jump gUnknown_0819FC9F
diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc
index 32bb55a08..c8f701d95 100644
--- a/data/scripts/cable_club.inc
+++ b/data/scripts/cable_club.inc
@@ -603,21 +603,18 @@ gUnknown_081A4363:: @ 81A4363
releaseall
end
-gUnknown_081A436F:: @ 81A436F
SingleBattleColosseum_EventScript_1A436F:: @ 81A436F
setvar 0x8005, 0
special 32
waitstate
end
-gUnknown_081A4379:: @ 81A4379
SingleBattleColosseum_EventScript_1A4379:: @ 81A4379
setvar 0x8005, 1
special 32
waitstate
end
-gUnknown_081A4383:: @ 81A4383
DoubleBattleColosseum_EventScript_1A4383:: @ 81A4383
fadescreen 1
special 41
@@ -629,7 +626,6 @@ DoubleBattleColosseum_EventScript_1A4383:: @ 81A4383
waitstate
end
-gUnknown_081A439E:: @ 81A439E
DoubleBattleColosseum_EventScript_1A439E:: @ 81A439E
fadescreen 1
special 41
@@ -641,7 +637,6 @@ DoubleBattleColosseum_EventScript_1A439E:: @ 81A439E
waitstate
end
-gUnknown_081A43B9:: @ 81A43B9
DoubleBattleColosseum_EventScript_1A43B9:: @ 81A43B9
fadescreen 1
special 41
@@ -653,7 +648,6 @@ DoubleBattleColosseum_EventScript_1A43B9:: @ 81A43B9
waitstate
end
-gUnknown_081A43D4:: @ 81A43D4
DoubleBattleColosseum_EventScript_1A43D4:: @ 81A43D4
fadescreen 1
special 41
@@ -668,14 +662,12 @@ DoubleBattleColosseum_EventScript_1A43D4:: @ 81A43D4
DoubleBattleColosseum_EventScript_1A43EF:: @ 81A43EF
end
-gUnknown_081A43F0:: @ 81A43F0
TradeCenter_EventScript_1A43F0:: @ 81A43F0
setvar 0x8005, 0
special 33
waitstate
end
-gUnknown_081A43FA:: @ 81A43FA
TradeCenter_EventScript_1A43FA:: @ 81A43FA
setvar 0x8005, 1
special 33
@@ -694,7 +686,6 @@ TradeCenter_EventScript_1A43FA:: @ 81A43FA
waitstate
end
-gUnknown_081A4418:: @ 81A4418
RecordCorner_EventScript_1A4418:: @ 81A4418
setvar 0x8005, 0
special 27
@@ -703,7 +694,6 @@ RecordCorner_EventScript_1A4418:: @ 81A4418
jumpif 5, RecordCorner_EventScript_1A446C
end
-gUnknown_081A442D:: @ 81A442D
RecordCorner_EventScript_1A442D:: @ 81A442D
setvar 0x8005, 1
special 27
@@ -712,7 +702,6 @@ RecordCorner_EventScript_1A442D:: @ 81A442D
jumpif 5, RecordCorner_EventScript_1A446C
end
-gUnknown_081A4442:: @ 81A4442
RecordCorner_EventScript_1A4442:: @ 81A4442
setvar 0x8005, 2
special 27
@@ -721,7 +710,6 @@ RecordCorner_EventScript_1A4442:: @ 81A4442
jumpif 5, RecordCorner_EventScript_1A446C
end
-gUnknown_081A4457:: @ 81A4457
RecordCorner_EventScript_1A4457:: @ 81A4457
setvar 0x8005, 3
special 27
@@ -738,8 +726,8 @@ RecordCorner_EventScript_1A446C:: @ 81A446C
releaseall
end
-gUnknown_081A4479:: @ 81A4479
- message UnknownString_81A4D1C
+TradeRoom_ReadTrainerCard1:: @ 81A4479
+ message CableClub_LookAtTrainerCard1
waittext
waitbutton
fadescreen 1
@@ -747,8 +735,8 @@ gUnknown_081A4479:: @ 81A4479
waitstate
end
-gUnknown_081A4487:: @ 81A4487
- message UnknownString_81A4D45
+TradeRoom_ReadTrainerCard2:: @ 81A4487
+ message CableClub_LookAtTrainerCard2
waittext
waitbutton
fadescreen 1
@@ -756,8 +744,8 @@ gUnknown_081A4487:: @ 81A4487
waitstate
end
-gUnknown_081A4495:: @ 81A4495
- message UnknownString_81A4CF6
+TradeRoom_TooBusyToNotice:: @ 81A4495
+ message CableClub_TooBusyToNotice
waittext
waitbutton
closebutton
@@ -801,15 +789,15 @@ RecordCorner_EventScript_1A44D6:: @ 81A44D6
closebutton
end
-gUnknown_081A44E5:: @ 81A44E5
- msgbox UnknownString_81A4C6E, 5
+TradeRoom_PromptToCancelLink:: @ 81A44E5
+ msgbox TradeRoom_WillLinkBeTerminated, 5
compare RESULT, 1
- jumpeq gUnknown_081A44FE
+ jumpeq TradeRoom_TerminateLink
hidebox 0, 0, 29, 19
end
-gUnknown_081A44FE:: @ 81A44FE
- message2 UnknownString_81A4CAF
+TradeRoom_TerminateLink:: @ 81A44FE
+ message2 TradeRoom_TerminatingLink
waittext
special 5
end
diff --git a/data/specials.inc b/data/specials.inc
index 5d9f2e084..46fb14058 100644
--- a/data/specials.inc
+++ b/data/specials.inc
@@ -199,7 +199,7 @@ gSpecials::
.4byte ShowLinkBattleRecords
.4byte sub_80B7CE8
.4byte sub_80B7D0C
- .4byte DoWhiteOut
+ .4byte ExecuteWhiteOut
.4byte sp0C8_whiteout_maybe
.4byte sub_80C8040
.4byte sub_80C8080
diff --git a/data/text/cable_club.inc b/data/text/cable_club.inc
index 1d3c7fd92..a4c8bc7c0 100644
--- a/data/text/cable_club.inc
+++ b/data/text/cable_club.inc
@@ -127,22 +127,22 @@ OldaleTown_PokemonCenter_2F_Text_1A4C38:: @ 81A4C38
.string "Please confirm the number of players\n"
.string "and start again.$"
-UnknownString_81A4C6E: @ 81A4C6E
+TradeRoom_WillLinkBeTerminated: @ 81A4C6E
.string "The link will be terminated if you\n"
.string "leave the room. Is that okay?$"
-UnknownString_81A4CAF: @ 81A4CAF
+TradeRoom_TerminatingLink: @ 81A4CAF
.string "Terminating link... You will be\n"
.string "escorted out of the room. Please wait.$"
-UnknownString_81A4CF6: @ 81A4CF6
+CableClub_TooBusyToNotice: @ 81A4CF6
.string "This TRAINER is too busy to notice...$"
-UnknownString_81A4D1C: @ 81A4D1C
+CableClub_LookAtTrainerCard1: @ 81A4D1C
.string "Score! Got to look at {STR_VAR_1}’s\n"
.string "TRAINER CARD!$"
-UnknownString_81A4D45: @ 81A4D45
+CableClub_LookAtTrainerCard2: @ 81A4D45
.string "Score! Got to look at {STR_VAR_1}’s\n"
.string "TRAINER CARD! It’s a {STR_VAR_2} card!$"
diff --git a/include/battle.h b/include/battle.h
index 14cbb3a1b..2f52fd986 100644
--- a/include/battle.h
+++ b/include/battle.h
@@ -32,4 +32,39 @@ struct Trainer
/*0x24*/ void *party;
};
+struct AI_ThinkingStruct /* 0x2016800 */
+{
+/* 0x00 */ u8 unk0;
+/* 0x01 */ u8 moveConsidered;
+/* 0x02 */ u16 unk2;
+/* 0x04 */ s8 score[4]; // score?
+/* 0x08 */ u32 unk8;
+/* 0x0C */ u32 aiFlags;
+/* 0x10 */ u8 unk10;
+/* 0x11 */ u8 aiLogicId;
+/* 0x12 */ u8 filler12[6];
+/* 0x18 */ u8 unk18[4];
+};
+
+struct SmallBattleStruct1
+{
+ u8 unk1;
+ u8 unk2;
+ u8 unk3;
+ u8 unk4;
+};
+
+struct BattleStruct /* 0x2000000 */
+{
+ u8 filler0[0x1601C];
+ struct SmallBattleStruct1 unk;
+ u8 filler1[0xAB]; // 0x2016020
+ /* 0x160CB */ u8 linkPlayerIndex;
+ u8 filler2[0x734];
+ struct AI_ThinkingStruct ai;
+};
+
+extern struct BattleStruct unk_2000000;
+extern struct AI_ThinkingStruct gAIThinkingSpace;
+
#endif // GUARD_BATTLE_H
diff --git a/include/global.h b/include/global.h
index 30f935521..846673dd7 100644
--- a/include/global.h
+++ b/include/global.h
@@ -397,12 +397,12 @@ struct SaveBlock2 /* 0x02024EA4 */
/*0x11*/ u8 playTimeSeconds;
/*0x12*/ u8 playTimeVBlanks;
/*0x13*/ u8 optionsButtonMode; // OPTIONS_BUTTON_MODE_[NORMAL/LR/L_EQUALS_A]
- u16 optionsTextSpeed:3; // OPTIONS_TEXT_SPEED_[SLOW/MID/FAST]
- u16 optionsWindowFrameType:5; // Specifies one of the 20 decorative borders for text boxes
- u16 optionsSound:1; // OPTIONS_SOUND_[MONO/STEREO]
- u16 optionsBattleStyle:1; // OPTIONS_BATTLE_STYLE_[SHIFT/SET]
- u16 optionsBattleSceneOff:1; // whether battle animations are disabled
- u16 regionMapZoom:1; // whether the map is zoomed in
+ u16 optionsTextSpeed:3; // OPTIONS_TEXT_SPEED_[SLOW/MID/FAST]
+ u16 optionsWindowFrameType:5; // Specifies one of the 20 decorative borders for text boxes
+ u16 optionsSound:1; // OPTIONS_SOUND_[MONO/STEREO]
+ u16 optionsBattleStyle:1; // OPTIONS_BATTLE_STYLE_[SHIFT/SET]
+ u16 optionsBattleSceneOff:1; // whether battle animations are disabled
+ u16 regionMapZoom:1; // whether the map is zoomed in
/*0x18*/ struct Pokedex pokedex;
/*0x90*/ u8 filler_90[0x8];
/*0x98*/ struct Time localTimeOffset;
diff --git a/include/new_game.h b/include/new_game.h
index dce42bf52..62e83f8f0 100644
--- a/include/new_game.h
+++ b/include/new_game.h
@@ -1,14 +1,14 @@
#ifndef GUARD_NEW_GAME_H
#define GUARD_NEW_GAME_H
-void write_word_to_mem(u32 a1, u8 *a2);
-void sub_8052D10(u8 *a1, u8 *a2);
+void write_word_to_mem(u32 var, u8 *dataPtr);
+void copy_word_to_mem(u8 *copyTo, u8 *copyFrom);
void set_player_trainer_id(void);
void SetDefaultOptions(void);
-void sub_8052D78(void);
+void ClearPokedexFlags(void);
void sub_8052DA8(void);
void sub_8052DE4(void);
-void sub_8052E04(void);
+void WarpToTruck(void);
void ClearSav2(void);
void sub_8052E4C(void);
void NewGameInitData(void);
diff --git a/include/rom4.h b/include/rom4.h
index a182a0bff..0fe80a82b 100644
--- a/include/rom4.h
+++ b/include/rom4.h
@@ -22,10 +22,10 @@ struct LinkPlayerMapObject {
// sub_8053014
void sub_8053050(void);
// sub_805308C
-void sub_80530AC(void);
-void sav12_xor_increment(u8 index);
-u32 sub_8053108(u8 index);
-// sav12_xor_set
+void ResetGameStats(void);
+void IncrementGameStat(u8 index);
+u32 GetGameStat(u8 index);
+// SetGameStat
// sub_8053154
// sub_8053198
void update_saveblock1_field_object_coords(u8, s16, s16);
@@ -117,7 +117,7 @@ void c2_overworld(void);
// sub_80543DC
// sub_80543E8
void CB2_NewGame(void);
-void c2_whiteout(void);
+void CB2_WhiteOut(void);
void CB2_LoadMap(void);
void CB2_LoadMap2(void);
// sub_8054534
diff --git a/src/battle_ai.c b/src/battle_ai.c
index 19ccfef99..1bb57cc59 100644
--- a/src/battle_ai.c
+++ b/src/battle_ai.c
@@ -16,24 +16,24 @@ enum
USER
};
+extern void move_effectiveness_something(u16, u8, u8);
+
extern u16 gBattleTypeFlags;
extern u8 gUnknown_02024A60;
-extern u8 gUnknown_02024C07;
-extern u8 gUnknown_02024C08;
-extern u8 gUnknown_02024C0C;
-extern u16 gUnknown_02024DEC;
-extern u8 gUnknown_02024C68;
-extern u32 gUnknown_02024BEC;
-extern u8 gUnknown_0201601C;
-extern u8 gUnknown_0201601F;
extern u16 gUnknown_02024BE6;
-extern u8 gCritMultiplier;
+extern u32 gUnknown_02024BEC;
+extern u8 gUnknown_02024C07; // something player?
+extern u8 gUnknown_02024C08; // something opponent?
+extern u8 gUnknown_02024C0C;
+extern u8 gUnknown_02024C68;
+extern u16 gUnknown_02024DEC;
extern u16 gUnknown_02024C34[];
extern u32 gUnknown_02024ACC[];
extern u32 gUnknown_02024C98[];
extern u16 gUnknown_02024C7A[];
extern struct BattlePokemon gUnknown_02024A8C[];
extern u8 gUnknown_030042E0[];
+extern u8 gCritMultiplier;
extern u16 gTrainerBattleOpponent;
extern u32 gBitTable[];
extern u8 *BattleAIs[];
@@ -61,43 +61,12 @@ struct UnknownStruct1
/* 0x2C */ u8 unk8;
};
-struct AI_ThinkingStruct /* 0x2016800 */
-{
-/* 0x00 */ u8 unk0;
-/* 0x01 */ u8 moveConsidered;
-/* 0x02 */ u16 unk2;
-/* 0x04 */ s8 score[4]; // score?
-/* 0x08 */ u32 unk8;
-/* 0x0C */ u32 aiFlags;
-/* 0x10 */ u8 unk10;
-/* 0x11 */ u8 aiLogicId;
-/* 0x12 */ u8 filler12[6];
-/* 0x18 */ u8 unk18[4];
-};
-
struct UnknownStruct3
{
u8 filler0[0x20];
u8 unk20;
};
-struct SmallBattleStruct1
-{
- u8 unk1;
- u8 unk2;
- u8 unk3;
- u8 unk4;
-};
-
-// move to battle.h before PR.
-struct BattleStruct /* 0x2000000 */
-{
- u8 filler0[0x1601C];
- struct SmallBattleStruct1 unk;
-};
-
-extern struct BattleStruct unk_2000000;
-extern struct AI_ThinkingStruct gAIThinkingSpace;
extern struct UnknownStruct1 unk_2016A00;
extern struct UnknownStruct3 unk_2016C00;
@@ -263,63 +232,20 @@ void BattleAI_DoAIProcessing(void)
}
}
-#ifdef NONMATCHING
void sub_810745C(void)
{
s32 i;
for(i = 0; i < 8; i++)
{
- if(unk_2016A00.unk0[gUnknown_02024C08 / 2][i] == 0)
+ // this is the same as dividing it by 2, but for some reason, >> 1 is needed to match the asm.
+ if(unk_2016A00.unk0[gUnknown_02024C08 >> 1][i] == 0)
{
- //gUnknown_02024C34[gUnknown_02024C08] += 0;
- unk_2016A00.unk0[gUnknown_02024C08 / 2][i] = gUnknown_02024C34[gUnknown_02024C08];
+ unk_2016A00.unk0[gUnknown_02024C08 >> 1][i] = gUnknown_02024C34[gUnknown_02024C08];
return;
}
}
}
-#else
-__attribute__((naked))
-void sub_810745C(void)
-{
- asm(".syntax unified\n\
- push {r4-r6,lr}\n\
- movs r2, 0\n\
- ldr r3, _08107488 @ =gUnknown_02024C08\n\
- ldr r5, _0810748C @ =0x02016a00\n\
- ldr r6, _08107490 @ =gUnknown_02024C34\n\
- adds r4, r3, 0\n\
-_08107468:\n\
- lsls r0, r2, 1\n\
- ldrb r1, [r4]\n\
- lsrs r1, 1\n\
- lsls r1, 4\n\
- adds r0, r1\n\
- adds r1, r0, r5\n\
- ldrh r0, [r1]\n\
- cmp r0, 0\n\
- bne _08107494\n\
- ldrb r0, [r3]\n\
- lsls r0, 1\n\
- adds r0, r6\n\
- ldrh r0, [r0]\n\
- strh r0, [r1]\n\
- b _0810749A\n\
- .align 2, 0\n\
-_08107488: .4byte gUnknown_02024C08\n\
-_0810748C: .4byte 0x02016a00\n\
-_08107490: .4byte gUnknown_02024C34\n\
-_08107494:\n\
- adds r2, 0x1\n\
- cmp r2, 0x7\n\
- ble _08107468\n\
-_0810749A:\n\
- pop {r4-r6}\n\
- pop {r0}\n\
- bx r0\n\
- .syntax divided");
-}
-#endif
void unref_sub_81074A0(u8 a)
{
@@ -1321,37 +1247,22 @@ void BattleAICmd_get_ability(void)
}
}
-// this should probably be in battle.h after this file is fully decompiled.
-extern struct
-{
- u8 unknownStuff[0x16000];
- struct
- {
- u8 filler0[0x1C];
- u8 unk1C;
- u8 filler1D[2];
- u8 unk1F;
- u8 filler16020[0x7E0];
- } unk_2016000;
- struct AI_ThinkingStruct gAIThinkingSpace;
-} ewram; //0x02000000
-
#ifdef NONMATCHING
void BattleAICmd_unk_30(void)
{
- s32 loopCounter;
+ s32 i;
gUnknown_02024DEC = 0;
- ewram.unk_2016000.unk1C = 0;
- ewram.unk_2016000.unk1F = 1;
+ unk_2000000.unk.unk1 = 0;
+ unk_2000000.unk.unk4 = 1;
gUnknown_02024C68 = 0;
gCritMultiplier = 1;
- ewram.gAIThinkingSpace.unk8 = 0;
+ unk_2000000.ai.unk0 = 0;
- for(loopCounter = 0; loopCounter <= 3; loopCounter++)
+ for(i = 0; i < 4; i++)
{
gUnknown_02024BEC = 40;
- gUnknown_02024BE6 = gBattleMons[gUnknown_02024C07].moves[loopCounter];
+ gUnknown_02024BE6 = gBattleMons[gUnknown_02024C07].moves[i];
if (gUnknown_02024BE6)
{
@@ -1370,8 +1281,8 @@ void BattleAICmd_unk_30(void)
if(gUnknown_02024C68 & 8)
gUnknown_02024BEC = 0;
- if (ewram.gAIThinkingSpace.unk8 < gUnknown_02024BEC)
- ewram.gAIThinkingSpace.unk8 = gUnknown_02024BEC;
+ if (unk_2000000.ai.unk0 < gUnknown_02024BEC)
+ unk_2000000.ai.unk0 = gUnknown_02024BEC;
}
}
gAIScriptPtr += 1;
diff --git a/src/battle_setup.c b/src/battle_setup.c
index 5296f1923..1c3e8e836 100644
--- a/src/battle_setup.c
+++ b/src/battle_setup.c
@@ -26,6 +26,7 @@
extern u16 gScriptResult;
+// IV + LEVEL + SPECIES
struct TrainerPartyMember0
{
u16 iv;
@@ -33,6 +34,7 @@ struct TrainerPartyMember0
u16 species;
};
+// IV + LEVEL + SPECIES + MOVES
struct TrainerPartyMember1
{
u16 iv;
@@ -41,6 +43,7 @@ struct TrainerPartyMember1
u16 moves[4];
};
+// IV + LEVEL + SPECIES + ITEMS
struct TrainerPartyMember2
{
u16 iv;
@@ -49,6 +52,7 @@ struct TrainerPartyMember2
u16 heldItem;
};
+// IV + LEVEL + SPECIES + ITEMS + MOVES
struct TrainerPartyMember3
{
u16 iv;
@@ -167,8 +171,8 @@ void StartBattle_StandardWild(void)
gMain.savedCallback = HandleWildBattleEnd;
gBattleTypeFlags = 0;
task_add_01_battle_start(GetWildBattleTransition(), 0);
- sav12_xor_increment(7);
- sav12_xor_increment(8);
+ IncrementGameStat(7);
+ IncrementGameStat(8);
}
void StartBattle_Roamer(void)
@@ -179,8 +183,8 @@ void StartBattle_Roamer(void)
gMain.savedCallback = HandleWildBattleEnd;
gBattleTypeFlags = BATTLE_TYPE_ROAMER;
task_add_01_battle_start(GetWildBattleTransition(), 0);
- sav12_xor_increment(7);
- sav12_xor_increment(8);
+ IncrementGameStat(7);
+ IncrementGameStat(8);
}
void StartBattle_Safari(void)
@@ -196,8 +200,8 @@ void StartBattle_Safari(void)
void task_add_01_battle_start_with_music_and_stats(void)
{
task_add_01_battle_start(GetTrainerBattleTransition(), 0);
- sav12_xor_increment(7);
- sav12_xor_increment(9);
+ IncrementGameStat(7);
+ IncrementGameStat(9);
}
//Initiates battle where Wally catches Ralts
@@ -216,8 +220,8 @@ void StartBattle_ScriptedWild(void)
gMain.savedCallback = HandleScriptedWildBattleEnd;
gBattleTypeFlags = 0;
task_add_01_battle_start(GetWildBattleTransition(), 0);
- sav12_xor_increment(7);
- sav12_xor_increment(8);
+ IncrementGameStat(7);
+ IncrementGameStat(8);
}
void StartBattle_SouthernIsland(void)
@@ -226,8 +230,8 @@ void StartBattle_SouthernIsland(void)
gMain.savedCallback = HandleScriptedWildBattleEnd;
gBattleTypeFlags = BATTLE_TYPE_LEGENDARY;
task_add_01_battle_start(GetWildBattleTransition(), 0);
- sav12_xor_increment(7);
- sav12_xor_increment(8);
+ IncrementGameStat(7);
+ IncrementGameStat(8);
}
void StartBattle_Rayquaza(void)
@@ -236,8 +240,8 @@ void StartBattle_Rayquaza(void)
gMain.savedCallback = HandleScriptedWildBattleEnd;
gBattleTypeFlags = BATTLE_TYPE_LEGENDARY;
task_add_01_battle_start(0, BGM_BATTLE34);
- sav12_xor_increment(7);
- sav12_xor_increment(8);
+ IncrementGameStat(7);
+ IncrementGameStat(8);
}
void StartBattle_GroudonKyogre(void)
@@ -249,8 +253,8 @@ void StartBattle_GroudonKyogre(void)
task_add_01_battle_start(0xB, BGM_BATTLE34); // KYOGRE
else
task_add_01_battle_start(0x6, BGM_BATTLE34); // GROUDON
- sav12_xor_increment(7);
- sav12_xor_increment(8);
+ IncrementGameStat(7);
+ IncrementGameStat(8);
}
void StartBattle_Regi(void)
@@ -259,8 +263,8 @@ void StartBattle_Regi(void)
gMain.savedCallback = HandleScriptedWildBattleEnd;
gBattleTypeFlags = BATTLE_TYPE_LEGENDARY | BATTLE_TYPE_REGI;
task_add_01_battle_start(0xA, BGM_BATTLE36);
- sav12_xor_increment(7);
- sav12_xor_increment(8);
+ IncrementGameStat(7);
+ IncrementGameStat(8);
}
void HandleWildBattleEnd(void)
@@ -270,7 +274,7 @@ void HandleWildBattleEnd(void)
if (battle_exit_is_player_defeat(gUnknown_02024D26) == TRUE)
{
- SetMainCallback2(c2_whiteout);
+ SetMainCallback2(CB2_WhiteOut);
}
else
{
@@ -285,7 +289,7 @@ void HandleScriptedWildBattleEnd(void)
ResetOamRange(0, 128);
if (battle_exit_is_player_defeat(gUnknown_02024D26) == TRUE)
- SetMainCallback2(c2_whiteout);
+ SetMainCallback2(CB2_WhiteOut);
else
SetMainCallback2(c2_exit_to_overworld_1_continue_scripts_restart_music);
}
@@ -448,7 +452,7 @@ u8 GetWildBattleTransition(void)
u8 GetTrainerBattleTransition(void)
{
struct Trainer *trainer;
- u8 partyCount;
+ u8 minPartyCount;
u8 flashVar;
u8 level;
@@ -474,14 +478,14 @@ u8 GetTrainerBattleTransition(void)
return 16;
if (trainer[gTrainerBattleOpponent].doubleBattle == TRUE)
- partyCount = 2; // double battles always at least have 2 pokemon.
+ minPartyCount = 2; // double battles always at least have 2 pokemon.
else
- partyCount = 1;
+ minPartyCount = 1;
flashVar = GetBattleTransitionTypeByMap();
- level = GetSumOfEnemyPartyLevel(gTrainerBattleOpponent, partyCount);
+ level = GetSumOfEnemyPartyLevel(gTrainerBattleOpponent, minPartyCount);
- if (level < (u8)GetSumOfPartyMonLevel(partyCount)) // is wild mon level than the player's mon level?
+ if (level < (u8)GetSumOfPartyMonLevel(minPartyCount)) // is wild mon level than the player's mon level?
return gBattleTransitionTable_Trainer[flashVar][0];
else
return gBattleTransitionTable_Trainer[flashVar][1];
@@ -528,8 +532,8 @@ void CB2_StartFirstBattle(void)
SetMainCallback2(sub_800E7C4);
prev_quest_postbuffer_cursor_backup_reset();
overworld_poison_timer_set();
- sav12_xor_increment(7);
- sav12_xor_increment(8);
+ IncrementGameStat(7);
+ IncrementGameStat(8);
}
}
@@ -747,7 +751,7 @@ void sub_808260C(void)
}
else if (battle_exit_is_player_defeat(gUnknown_02024D26) == TRUE)
{
- SetMainCallback2(c2_whiteout);
+ SetMainCallback2(CB2_WhiteOut);
}
else
{
@@ -764,7 +768,7 @@ void do_choose_name_or_words_screen(void)
}
else if (battle_exit_is_player_defeat(gUnknown_02024D26) == TRUE)
{
- SetMainCallback2(c2_whiteout);
+ SetMainCallback2(CB2_WhiteOut);
}
else
{
diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c
index 7e4e5aed6..fdd5ae5c5 100644
--- a/src/field_player_avatar.c
+++ b/src/field_player_avatar.c
@@ -415,7 +415,7 @@ u8 CheckForFieldObjectCollision(struct MapObject *a, s16 b, s16 c, u8 d, u8 e)
return 5;
if (ShouldJumpLedge(b, c, d))
{
- sav12_xor_increment(0x2B);
+ IncrementGameStat(0x2B);
return 6;
}
if (sp0 == 4 && sub_8058F6C(b, c, d))
diff --git a/src/field_poison.c b/src/field_poison.c
index 309ec1d71..9b21ac5f3 100644
--- a/src/field_poison.c
+++ b/src/field_poison.c
@@ -100,7 +100,7 @@ void Task_WhiteOut(u8 taskId)
}
}
-void DoWhiteOut(void)
+void ExecuteWhiteOut(void)
{
CreateTask(Task_WhiteOut, 0x50);
ScriptContext1_Stop();
diff --git a/src/item_use.c b/src/item_use.c
index af22eddae..557705460 100644
--- a/src/item_use.c
+++ b/src/item_use.c
@@ -231,7 +231,7 @@ void ItemUseOnFieldCB_Rod(u8 taskId)
void ItemUseOutOfBattle_Itemfinder(u8 var)
{
- sav12_xor_increment(0x27);
+ IncrementGameStat(0x27);
gUnknown_03005D00 = (void *)ItemUseOnFieldCB_Itemfinder;
SetUpItemUseOnFieldCallback(var);
}
diff --git a/src/new_game.c b/src/new_game.c
index aced10a47..4f93e4e3c 100644
--- a/src/new_game.c
+++ b/src/new_game.c
@@ -29,19 +29,19 @@ const struct SB1_2EFC_Struct gUnknown_08216604 =
}
};
-void write_word_to_mem(u32 a1, u8 *a2)
+void write_word_to_mem(u32 var, u8 *dataPtr)
{
- a2[0] = a1;
- a2[1] = a1 >> 8;
- a2[2] = a1 >> 16;
- a2[3] = a1 >> 24;
+ dataPtr[0] = var;
+ dataPtr[1] = var >> 8;
+ dataPtr[2] = var >> 16;
+ dataPtr[3] = var >> 24;
}
-void sub_8052D10(u8 *a1, u8 *a2)
+void copy_word_to_mem(u8 *copyTo, u8 *copyFrom)
{
s32 i;
for (i = 0; i < 4; i++)
- a1[i] = a2[i];
+ copyTo[i] = copyFrom[i];
}
void set_player_trainer_id(void)
@@ -49,6 +49,7 @@ void set_player_trainer_id(void)
write_word_to_mem((Random() << 16) | Random(), gSaveBlock2.playerTrainerId);
}
+// L=A isnt set here for some reason.
void SetDefaultOptions(void)
{
gSaveBlock2.optionsTextSpeed = OPTIONS_TEXT_SPEED_MID;
@@ -59,7 +60,7 @@ void SetDefaultOptions(void)
gSaveBlock2.regionMapZoom = FALSE;
}
-void sub_8052D78(void)
+void ClearPokedexFlags(void)
{
gUnknown_03005CE8 = 0;
memset(&gSaveBlock2.pokedex.owned, 0, sizeof(gSaveBlock2.pokedex.owned));
@@ -79,7 +80,7 @@ void sub_8052DE4(void)
CpuFill32(0, &gSaveBlock2.filler_A8, sizeof(gSaveBlock2.filler_A8));
}
-void sub_8052E04(void)
+void WarpToTruck(void)
{
warp1_set(25, 40, -1, -1, -1); // inside of truck
warp_in();
@@ -114,7 +115,7 @@ void NewGameInitData(void)
gSaveBlock2.specialSaveWarp = 0;
set_player_trainer_id();
PlayTimeCounter_Reset();
- sub_8052D78();
+ ClearPokedexFlags();
InitEventData();
sub_80BD7A8();
sub_80BDAB4();
@@ -122,7 +123,7 @@ void NewGameInitData(void)
ClearBerryTrees();
gSaveBlock1.money = 3000;
sub_80AB1B0();
- sub_80530AC();
+ ResetGameStats();
sub_8052DA8();
InitLinkBattleRecords();
InitShroomishSizeRecord();
@@ -142,6 +143,6 @@ void NewGameInitData(void)
sub_80FA17C();
sub_810FA54();
ResetLotteryCorner();
- sub_8052E04();
+ WarpToTruck();
ScriptContext2_RunNewScript(gUnknown_0819FA81);
}
diff --git a/src/rom4.c b/src/rom4.c
index e7c28f474..4f3e35fea 100644
--- a/src/rom4.c
+++ b/src/rom4.c
@@ -74,25 +74,25 @@ extern struct UnkTVStruct gUnknown_03004870;
extern u16 gUnknown_03004898;
extern u16 gUnknown_0300489C;
-extern u8 gUnknown_0819FC74[];
+extern u8 EventScript_LeagueWhiteOut[];
extern u8 gUnknown_0819FC9F[];
-extern u8 gUnknown_081A436F[];
-extern u8 gUnknown_081A4379[];
-extern u8 gUnknown_081A4383[];
-extern u8 gUnknown_081A439E[];
-extern u8 gUnknown_081A43B9[];
-extern u8 gUnknown_081A43D4[];
-extern u8 gUnknown_081A43F0[];
-extern u8 gUnknown_081A43FA[];
-extern u8 gUnknown_081A4418[];
-extern u8 gUnknown_081A442D[];
-extern u8 gUnknown_081A4442[];
-extern u8 gUnknown_081A4457[];
-extern u8 gUnknown_081A4479[];
-extern u8 gUnknown_081A4487[];
-extern u8 gUnknown_081A4495[];
-extern u8 gUnknown_081A44E5[];
-extern u8 gUnknown_081A44FE[];
+extern u8 SingleBattleColosseum_EventScript_1A436F[];
+extern u8 SingleBattleColosseum_EventScript_1A4379[];
+extern u8 DoubleBattleColosseum_EventScript_1A4383[];
+extern u8 DoubleBattleColosseum_EventScript_1A439E[];
+extern u8 DoubleBattleColosseum_EventScript_1A43B9[];
+extern u8 DoubleBattleColosseum_EventScript_1A43D4[];
+extern u8 TradeCenter_EventScript_1A43F0[];
+extern u8 TradeCenter_EventScript_1A43FA[];
+extern u8 RecordCorner_EventScript_1A4418[];
+extern u8 RecordCorner_EventScript_1A442D[];
+extern u8 RecordCorner_EventScript_1A4442[];
+extern u8 RecordCorner_EventScript_1A4457[];
+extern u8 TradeRoom_ReadTrainerCard1[];
+extern u8 TradeRoom_ReadTrainerCard2[];
+extern u8 TradeRoom_TooBusyToNotice[];
+extern u8 TradeRoom_PromptToCancelLink[];
+extern u8 TradeRoom_TerminateLink[];
extern u8 gUnknown_081A4508[];
extern struct UCoords32 gUnknown_0821664C[];
@@ -108,9 +108,9 @@ extern s32 gUnknown_0839ACE8;
extern u32 gUnknown_08216694[];
-void sub_8052F5C(void)
+void DoWhiteOut(void)
{
- ScriptContext2_RunNewScript(gUnknown_0819FC74);
+ ScriptContext2_RunNewScript(EventScript_LeagueWhiteOut);
gSaveBlock1.money /= 2;
HealPlayerParty();
sub_8053050();
@@ -168,14 +168,15 @@ void sub_805308C(void)
sub_8134348();
}
-void sub_80530AC(void)
+void ResetGameStats(void)
{
s32 i;
+
for (i = 0; i < NUM_GAME_STATS; i++)
gSaveBlock1.gameStats[i] = 0;
}
-void sav12_xor_increment(u8 index)
+void IncrementGameStat(u8 index)
{
if (index < NUM_GAME_STATS)
{
@@ -186,7 +187,7 @@ void sav12_xor_increment(u8 index)
}
}
-u32 sub_8053108(u8 index)
+u32 GetGameStat(u8 index)
{
if (index >= NUM_GAME_STATS)
return 0;
@@ -194,7 +195,7 @@ u32 sub_8053108(u8 index)
return gSaveBlock1.gameStats[index];
}
-void sav12_xor_set(u8 index, u32 value)
+void SetGameStat(u8 index, u32 value)
{
if (index < NUM_GAME_STATS)
gSaveBlock1.gameStats[index] = value;
@@ -512,6 +513,7 @@ bool8 sub_80538D0(u16 x, u16 y)
void sub_80538F0(u8 mapGroup, u8 mapNum)
{
s32 i;
+
warp1_set(mapGroup, mapNum, -1, -1, -1);
sub_8053F0C();
warp_shift();
@@ -530,8 +532,10 @@ void sub_80538F0(u8 mapGroup, u8 mapNum)
not_trainer_hill_battle_pyramid();
sub_8056D38(gMapHeader.mapData);
apply_map_tileset2_palette(gMapHeader.mapData);
+
for (i = 6; i < 12; i++)
sub_807D874(i);
+
sub_8072ED0();
mapnumbers_history_shift_sav1_0_2_4_out();
sub_8134394();
@@ -1106,7 +1110,7 @@ void CB2_NewGame(void)
SetMainCallback2(c2_overworld);
}
-void c2_whiteout(void)
+void CB2_WhiteOut(void)
{
u8 val;
gMain.state++;
@@ -1115,7 +1119,7 @@ void c2_whiteout(void)
FieldClearVBlankHBlankCallbacks();
StopMapMusic();
ResetSafariZoneFlag_();
- sub_8052F5C();
+ DoWhiteOut();
player_avatar_init_params_reset();
ScriptContext1_Init();
ScriptContext2_Disable();
@@ -2155,12 +2159,13 @@ u8 *sub_805568C(struct UnkStruct_8054FF8 *a1)
if (linkPlayerId != 4)
{
if (!a1->b)
- return gUnknown_081A4495;
+ return TradeRoom_TooBusyToNotice;
if (gUnknown_03000580[linkPlayerId] != 0x80)
- return gUnknown_081A4495;
+ return TradeRoom_TooBusyToNotice;
if (!sub_8083BF4(linkPlayerId))
- return gUnknown_081A4479;
- return gUnknown_081A4487;
+ return TradeRoom_ReadTrainerCard1;
+ else
+ return TradeRoom_ReadTrainerCard2;
}
return sub_80682A8(&unkStruct, a1->field_C, a1->d);
@@ -2168,29 +2173,29 @@ u8 *sub_805568C(struct UnkStruct_8054FF8 *a1)
u16 sub_8055758(u8 *script)
{
- if (script == gUnknown_081A4383)
+ if (script == DoubleBattleColosseum_EventScript_1A4383)
return 10;
- if (script == gUnknown_081A439E)
+ if (script == DoubleBattleColosseum_EventScript_1A439E)
return 9;
- if (script == gUnknown_081A43B9)
+ if (script == DoubleBattleColosseum_EventScript_1A43B9)
return 10;
- if (script == gUnknown_081A43D4)
+ if (script == DoubleBattleColosseum_EventScript_1A43D4)
return 9;
- if (script == gUnknown_081A4418)
+ if (script == RecordCorner_EventScript_1A4418)
return 10;
- if (script == gUnknown_081A442D)
+ if (script == RecordCorner_EventScript_1A442D)
return 9;
- if (script == gUnknown_081A4442)
+ if (script == RecordCorner_EventScript_1A4442)
return 10;
- if (script == gUnknown_081A4457)
+ if (script == RecordCorner_EventScript_1A4457)
return 9;
- if (script == gUnknown_081A436F)
+ if (script == SingleBattleColosseum_EventScript_1A436F)
return 10;
- if (script == gUnknown_081A4379)
+ if (script == SingleBattleColosseum_EventScript_1A4379)
return 9;
- if (script == gUnknown_081A43F0)
+ if (script == TradeCenter_EventScript_1A43F0)
return 10;
- if (script == gUnknown_081A43FA)
+ if (script == TradeCenter_EventScript_1A43FA)
return 9;
return 0;
}
@@ -2217,7 +2222,7 @@ void sub_8055808(u8 *script)
void sub_8055824(void)
{
PlaySE(SE_WIN_OPEN);
- ScriptContext1_SetupScript(gUnknown_081A44E5);
+ ScriptContext1_SetupScript(TradeRoom_PromptToCancelLink);
ScriptContext2_Enable();
}
@@ -2230,7 +2235,7 @@ void sub_8055840(u8 *script)
void sub_805585C(void)
{
- ScriptContext1_SetupScript(gUnknown_081A44FE);
+ ScriptContext1_SetupScript(TradeRoom_TerminateLink);
ScriptContext2_Enable();
}
diff --git a/src/rom_800D42C.c b/src/rom_800D42C.c
index 43819f991..3df2ee5e3 100644
--- a/src/rom_800D42C.c
+++ b/src/rom_800D42C.c
@@ -3,13 +3,6 @@
#include "link.h"
#include "text.h"
-struct Unk2000000
-{
- u8 filler0[0x160CB];
- /* 0x160CB */ u8 linkPlayerIndex;
-};
-
-extern struct Unk2000000 unk_2000000;
extern u16 gBattleTypeFlags;
extern u8 gUnknown_02024D26;
diff --git a/src/safari_zone.c b/src/safari_zone.c
index 6ecb5cc44..08bfbefbf 100644
--- a/src/safari_zone.c
+++ b/src/safari_zone.c
@@ -55,7 +55,7 @@ void ResetSafariZoneFlag(void)
void EnterSafariMode(void)
{
- sav12_xor_increment(0x11);
+ IncrementGameStat(0x11);
SetSafariZoneFlag();
ClearAllPokeblockFeeders();
gNumSafariBalls = 30;
diff --git a/src/save.c b/src/save.c
index 2771b4ea5..49db679f8 100644
--- a/src/save.c
+++ b/src/save.c
@@ -548,8 +548,8 @@ u8 sub_8125C3C(u8 a1)
for (i = 28; i < 32; i++)
EraseFlashSector(i);
case 3:
- if (sub_8053108(10) < 999)
- sav12_xor_increment(10);
+ if (GetGameStat(10) < 999)
+ IncrementGameStat(10);
for (i = 0; i < 2; i++)
sub_81253C8(28 + i, gHallOfFameSaveSectionLocations[i].data, gHallOfFameSaveSectionLocations[i].size);
SaveSerializedGame();
diff --git a/src/scrcmd.c b/src/scrcmd.c
index 4dc7a38dc..d3d28f923 100644
--- a/src/scrcmd.c
+++ b/src/scrcmd.c
@@ -543,7 +543,7 @@ bool8 ScrCmd_checkflag(struct ScriptContext *ctx)
bool8 ScrCmd_inccounter(struct ScriptContext *ctx)
{
- sav12_xor_increment(ScriptReadByte(ctx));
+ IncrementGameStat(ScriptReadByte(ctx));
return FALSE;
}
diff --git a/src/start_menu.c b/src/start_menu.c
index 87cb3f593..31ba31766 100644
--- a/src/start_menu.c
+++ b/src/start_menu.c
@@ -357,7 +357,7 @@ static u8 StartMenu_PokedexCallback(void)
{
if(!gPaletteFade.active)
{
- sav12_xor_increment(0x29);
+ IncrementGameStat(0x29);
PlayRainSoundEffect();
SetMainCallback2(CB2_InitPokedex);
return 1;
@@ -679,7 +679,7 @@ static u8 SaveDialogCB_DoSave(void)
{
u8 a;
- sav12_xor_increment(0);
+ IncrementGameStat(0);
if(gUnknown_020297EC == TRUE)
{
a = sub_8125D44(4);
diff --git a/src/trainer_card.c b/src/trainer_card.c
index d2d6b922d..83551eb2b 100644
--- a/src/trainer_card.c
+++ b/src/trainer_card.c
@@ -283,8 +283,8 @@ void sub_8093390(struct TrainerCard *arg1) {
arg1->playTimeHours = gSaveBlock2.playTimeHours;
arg1->playTimeMinutes = gSaveBlock2.playTimeMinutes;
- playTime = sub_8053108(GAME_STAT_FIRST_HOF_PLAY_TIME);
- enteredHallOfFame = sub_8053108(GAME_STAT_ENTERED_HOF);
+ playTime = GetGameStat(GAME_STAT_FIRST_HOF_PLAY_TIME);
+ enteredHallOfFame = GetGameStat(GAME_STAT_ENTERED_HOF);
if (!enteredHallOfFame) {
playTime = 0;
}
@@ -345,7 +345,7 @@ u8 sub_80934C4(u8 id) {
}
static u32 sav12_xor_get_clamped_above(u8 index, u32 maxVal) {
- u32 value = sub_8053108(index);
+ u32 value = GetGameStat(index);
if (value > maxVal) {
value = maxVal;
diff --git a/src/wild_encounter.c b/src/wild_encounter.c
index 48e0c1d1c..8e983c300 100644
--- a/src/wild_encounter.c
+++ b/src/wild_encounter.c
@@ -596,7 +596,7 @@ void FishingWildEncounter(u8 rod)
gWildMonHeaders[GetCurrentMapWildMonHeader()].fishingMonsInfo,
rod);
}
- sav12_xor_increment(12);
+ IncrementGameStat(12);
sub_80BEA50(species);
CheckForSafariZoneAndProceed();
}