ported battle_controller_player from pokeem and matched several new functions

This commit is contained in:
jiangzhengwenjz
2019-08-05 08:15:58 +08:00
parent 5568895b04
commit b9d547a02f
33 changed files with 3154 additions and 11135 deletions
+6 -6
View File
@@ -4427,8 +4427,8 @@ _08012130:
_08012134: .4byte gIntroSlideFlags
thumb_func_end sub_8012110
thumb_func_start dp11b_obj_instanciate
dp11b_obj_instanciate: @ 8012138
thumb_func_start DoBounceEffect
DoBounceEffect: @ 8012138
push {r4-r7,lr}
mov r7, r10
mov r6, r9
@@ -4570,10 +4570,10 @@ _0801223C:
_0801224C: .4byte gBattlerSpriteIds
_08012250: .4byte gBattleSpritesDataPtr
_08012254: .4byte gSprites
thumb_func_end dp11b_obj_instanciate
thumb_func_end DoBounceEffect
thumb_func_start dp11b_obj_free
dp11b_obj_free: @ 8012258
thumb_func_start EndBounceEffect
EndBounceEffect: @ 8012258
push {r4-r6,lr}
lsls r0, 24
lsrs r2, r0, 24
@@ -4660,7 +4660,7 @@ _080122FA:
.align 2, 0
_08012300: .4byte gBattleSpritesDataPtr
_08012304: .4byte gSprites
thumb_func_end dp11b_obj_free
thumb_func_end EndBounceEffect
thumb_func_start SpriteCB_HealthBoxBounce
SpriteCB_HealthBoxBounce: @ 8012308
+2 -2
View File
@@ -5375,7 +5375,7 @@ _080D6DFC:
adds r1, r4
ldrb r0, [r1, 0x13]
_080D6E0C:
ldr r1, _080D6EA4 @ =gUnknown_8239FD4
ldr r1, _080D6EA4 @ =gTrainerBackPicPaletteTable
lsls r0, 3
adds r0, r1
ldr r0, [r0]
@@ -5451,7 +5451,7 @@ _080D6E86:
pop {r0}
bx r0
.align 2, 0
_080D6EA4: .4byte gUnknown_8239FD4
_080D6EA4: .4byte gTrainerBackPicPaletteTable
_080D6EA8: .4byte gSprites
_080D6EAC: .4byte gBattlerSpriteIds
_080D6EB0: .4byte gActiveBattler
+15 -15
View File
@@ -101,12 +101,12 @@ sub_80E763C: @ 80E763C
movs r1, 0x1
movs r2, 0x7
movs r3, 0x1
bl dp11b_obj_instanciate
bl DoBounceEffect
ldrb r0, [r4]
movs r1, 0
movs r2, 0x7
movs r3, 0x1
bl dp11b_obj_instanciate
bl DoBounceEffect
ldr r0, _080E76A4 @ =gMain
ldrh r1, [r0, 0x2E]
movs r2, 0x1
@@ -329,7 +329,7 @@ _080E782C:
ands r0, r1
cmp r0, 0
beq _080E7838
bl sub_8048A4C
bl SwapHpBarsWithHpText
_080E7838:
pop {r3}
mov r8, r3
@@ -511,7 +511,7 @@ _080E7984: .4byte gDoingBattleAnim
thumb_func_start sub_80E7988
sub_80E7988: @ 80E7988
push {lr}
bl sub_802EA10
bl HandleInputChooseMove
ldr r2, _080E79AC @ =gBattleControllerExecFlags
ldr r1, _080E79B0 @ =gBitTable
ldr r0, _080E79B4 @ =gActiveBattler
@@ -562,7 +562,7 @@ sub_80E79B8: @ 80E79B8
bl DestroyTask
bl FreeAllWindowBuffers
adds r0, r4, 0
bl sub_81278DC
bl OpenPartyMenuInBattle
_080E79F6:
pop {r4}
pop {r0}
@@ -6031,7 +6031,7 @@ _080EA71E:
ands r0, r1
cmp r0, 0
beq _080EA770
ldr r0, _080EA76C @ =gUnknown_83FE6D5
ldr r0, _080EA76C @ =gText_WhatWillPkmnDo
bl BattleStringExpandPlaceholdersToDisplayedString
b _080EA776
.align 2, 0
@@ -6042,7 +6042,7 @@ _080EA75C: .4byte gUnknown_83FDA4C
_080EA760: .4byte gUnknown_83FE725
_080EA764: .4byte gActionSelectionCursor
_080EA768: .4byte gBattleTypeFlags
_080EA76C: .4byte gUnknown_83FE6D5
_080EA76C: .4byte gText_WhatWillPkmnDo
_080EA770:
ldr r0, _080EA784 @ =gUnknown_83FE6FA
bl BattleStringExpandPlaceholdersToDisplayedString
@@ -6108,7 +6108,7 @@ sub_80EA7DC: @ 80EA7DC
ands r0, r1
cmp r0, 0
beq _080EA810
bl sub_8032CB4
bl InitMoveSelectionsVarsAndStrings
ldr r1, _080EA804 @ =gBattlerControllerFuncs
ldr r0, _080EA808 @ =gActiveBattler
ldrb r0, [r0]
@@ -6135,7 +6135,7 @@ _080EA810:
.align 2, 0
_080EA824: .4byte gBattleStruct
_080EA828:
bl sub_8032CB4
bl InitMoveSelectionsVarsAndStrings
ldr r1, [r4]
adds r1, 0x95
ldrb r0, [r1]
@@ -6891,7 +6891,7 @@ _080EAD64:
bl AllocSpritePalette
adds r4, r0, 0
lsls r4, 24
ldr r1, _080EAEC0 @ =gUnknown_8239FD4
ldr r1, _080EAEC0 @ =gTrainerBackPicPaletteTable
ldr r0, _080EAEC4 @ =gSaveBlock2Ptr
ldr r0, [r0]
ldrb r0, [r0, 0x8]
@@ -6973,7 +6973,7 @@ _080EAEB0: .4byte 0x0000ffd8
_080EAEB4: .4byte StartAnimLinearTranslation
_080EAEB8: .4byte sub_80335F8
_080EAEBC: .4byte 0x0000d6f8
_080EAEC0: .4byte gUnknown_8239FD4
_080EAEC0: .4byte gTrainerBackPicPaletteTable
_080EAEC4: .4byte gSaveBlock2Ptr
_080EAEC8: .4byte sub_80EB0A8
_080EAECC: .4byte gTasks
@@ -7326,10 +7326,10 @@ sub_80EB1AC: @ 80EB1AC
ldr r4, _080EB1CC @ =gActiveBattler
ldrb r0, [r4]
movs r1, 0x1
bl dp11b_obj_free
bl EndBounceEffect
ldrb r0, [r4]
movs r1, 0
bl dp11b_obj_free
bl EndBounceEffect
bl WallyBufferExecCompleted
pop {r4}
pop {r0}
@@ -7410,10 +7410,10 @@ sub_80EB238: @ 80EB238
bgt _080EB260
adds r0, r2, 0
movs r1, 0x1
bl dp11b_obj_free
bl EndBounceEffect
ldrb r0, [r4]
movs r1, 0
bl dp11b_obj_free
bl EndBounceEffect
_080EB260:
bl WallyBufferExecCompleted
pop {r4}
File diff suppressed because it is too large Load Diff
+11 -11
View File
@@ -5191,7 +5191,7 @@ _08158B8E:
ldrb r0, [r0]
movs r1, 0
bl ActionSelectionCreateCursorAt
ldr r0, _08158BD4 @ =gUnknown_83FE6D5
ldr r0, _08158BD4 @ =gText_WhatWillPkmnDo
bl BattleStringExpandPlaceholdersToDisplayedString
ldr r0, _08158BD8 @ =gDisplayedStringBattle
movs r1, 0x1
@@ -5204,7 +5204,7 @@ _08158BC4: .4byte sub_8158B20
_08158BC8: .4byte gUnknown_83FDA4C
_08158BCC: .4byte gUnknown_83FE725
_08158BD0: .4byte gActionSelectionCursor
_08158BD4: .4byte gUnknown_83FE6D5
_08158BD4: .4byte gText_WhatWillPkmnDo
_08158BD8: .4byte gDisplayedStringBattle
_08158BDC:
ldr r0, _08158BF0 @ =gBattlerControllerFuncs
@@ -5272,7 +5272,7 @@ sub_8158C48: @ 8158C48
lsls r0, 24
cmp r0, 0
bne _08158C74
bl sub_8032CB4
bl InitMoveSelectionsVarsAndStrings
ldr r0, _08158C6C @ =gBattlerControllerFuncs
ldrb r1, [r4]
lsls r1, 2
@@ -6198,7 +6198,7 @@ sub_8159304: @ 8159304
bl AllocSpritePalette
adds r4, r0, 0
lsls r4, 24
ldr r0, _08159458 @ =gUnknown_8239FD4
ldr r0, _08159458 @ =gTrainerBackPicPaletteTable
ldr r0, [r0, 0x20]
lsrs r4, 20
movs r2, 0x80
@@ -6276,7 +6276,7 @@ _08159448: .4byte 0x0000ffd8
_0815944C: .4byte StartAnimLinearTranslation
_08159450: .4byte sub_80335F8
_08159454: .4byte 0x0000d6f8
_08159458: .4byte gUnknown_8239FD4
_08159458: .4byte gTrainerBackPicPaletteTable
_0815945C: .4byte sub_81595EC
_08159460: .4byte gTasks
_08159464: .4byte gBattleSpritesDataPtr
@@ -6591,10 +6591,10 @@ sub_81596F0: @ 81596F0
ldr r4, _08159710 @ =gActiveBattler
ldrb r0, [r4]
movs r1, 0x1
bl dp11b_obj_free
bl EndBounceEffect
ldrb r0, [r4]
movs r1, 0
bl dp11b_obj_free
bl EndBounceEffect
bl PlayerPartnerBufferExecCompleted
pop {r4}
pop {r0}
@@ -6675,10 +6675,10 @@ sub_815977C: @ 815977C
bgt _081597A4
adds r0, r2, 0
movs r1, 0x1
bl dp11b_obj_free
bl EndBounceEffect
ldrb r0, [r4]
movs r1, 0
bl dp11b_obj_free
bl EndBounceEffect
_081597A4:
bl PlayerPartnerBufferExecCompleted
pop {r4}
@@ -6765,12 +6765,12 @@ sub_8159824: @ 8159824
movs r1, 0x1
movs r2, 0x7
movs r3, 0x1
bl dp11b_obj_instanciate
bl DoBounceEffect
ldrb r0, [r4]
movs r1, 0
movs r2, 0x7
movs r3, 0x1
bl dp11b_obj_instanciate
bl DoBounceEffect
_0815985C:
ldr r6, _081598C0 @ =gUnknown_3005EE0
ldrb r2, [r4]
+3 -3
View File
@@ -1945,8 +1945,8 @@ _08048A44: .4byte 0x060100c0
_08048A48: .4byte 0x04000008
thumb_func_end sub_80487F8
thumb_func_start sub_8048A4C
sub_8048A4C: @ 8048A4C
thumb_func_start SwapHpBarsWithHpText
SwapHpBarsWithHpText: @ 8048A4C
push {r4-r7,lr}
mov r7, r10
mov r6, r9
@@ -2277,7 +2277,7 @@ _08048D04: .4byte gEnemyParty
_08048D08: .4byte gBattleTypeFlags
_08048D0C: .4byte gHealthboxSpriteIds
_08048D10: .4byte gBattlersCount
thumb_func_end sub_8048A4C
thumb_func_end SwapHpBarsWithHpText
thumb_func_start CreatePartyStatusSummarySprites
CreatePartyStatusSummarySprites: @ 8048D14
+2 -2
View File
@@ -2304,10 +2304,10 @@ _080D8504:
ldrb r0, [r0, 0x1]
lsls r1, r0, 3
subs r1, r0
ldr r0, _080D8510 @ =gUnknown_824F1A0
ldr r0, _080D8510 @ =gTypeNames
b _080D8616
.align 2, 0
_080D8510: .4byte gUnknown_824F1A0
_080D8510: .4byte gTypeNames
_080D8514:
ldrb r0, [r4, 0x1]
bl GetBattlerSide
+8 -8
View File
@@ -154,14 +154,14 @@ _08107EC8: .4byte sub_80568A8
thumb_func_start sub_8107ECC
sub_8107ECC: @ 8107ECC
push {lr}
ldr r2, _08107EDC @ =sub_8030AEC
ldr r2, _08107EDC @ =SetCB2ToReshowScreenAfterMenu2
movs r0, 0x5
movs r1, 0x3
bl sub_8107DB4
pop {r0}
bx r0
.align 2, 0
_08107EDC: .4byte sub_8030AEC
_08107EDC: .4byte SetCB2ToReshowScreenAfterMenu2
thumb_func_end sub_8107ECC
thumb_func_start sub_8107EE0
@@ -6124,14 +6124,14 @@ sub_810AF74: @ 810AF74
movs r0, 0x4
movs r1, 0x1
bl AddBagItem
ldr r2, _0810AF98 @ =sub_8030AEC
ldr r2, _0810AF98 @ =SetCB2ToReshowScreenAfterMenu2
movs r0, 0x6
movs r1, 0
bl sub_8107DB4
pop {r0}
bx r0
.align 2, 0
_0810AF98: .4byte sub_8030AEC
_0810AF98: .4byte SetCB2ToReshowScreenAfterMenu2
thumb_func_end sub_810AF74
thumb_func_start sub_810AF9C
@@ -6348,13 +6348,13 @@ sub_810B108: @ 810B108
.align 2, 0
_0810B15C: .4byte CB2_ReturnToTeachyTV
_0810B160:
ldr r2, _0810B168 @ =sub_8030AEC
ldr r2, _0810B168 @ =SetCB2ToReshowScreenAfterMenu2
movs r0, 0x7
b _0810B170
.align 2, 0
_0810B168: .4byte sub_8030AEC
_0810B168: .4byte SetCB2ToReshowScreenAfterMenu2
_0810B16C:
ldr r2, _0810B17C @ =sub_8030AEC
ldr r2, _0810B17C @ =SetCB2ToReshowScreenAfterMenu2
movs r0, 0x8
_0810B170:
movs r1, 0
@@ -6363,7 +6363,7 @@ _0810B170:
pop {r0}
bx r0
.align 2, 0
_0810B17C: .4byte sub_8030AEC
_0810B17C: .4byte SetCB2ToReshowScreenAfterMenu2
thumb_func_end sub_810B108
thumb_func_start sub_810B180
+4 -4
View File
@@ -7242,7 +7242,7 @@ _081196EC:
lsrs r2, 2
lsls r1, r2, 3
subs r1, r2
ldr r2, _0811972C @ =gUnknown_824F1A0
ldr r2, _0811972C @ =gTypeNames
adds r1, r2
bl StringCopy
ldr r1, _08119730 @ =gUnknown_8458ED0
@@ -7250,7 +7250,7 @@ _081196EC:
.align 2, 0
_08119724: .4byte gStringVar1
_08119728: .4byte gStringVar2
_0811972C: .4byte gUnknown_824F1A0
_0811972C: .4byte gTypeNames
_08119730: .4byte gUnknown_8458ED0
_08119734:
ldr r4, _08119774 @ =gStringVar1
@@ -7273,7 +7273,7 @@ _08119734:
lsrs r2, 2
lsls r1, r2, 3
subs r1, r2
ldr r2, _0811977C @ =gUnknown_824F1A0
ldr r2, _0811977C @ =gTypeNames
adds r1, r2
bl StringCopy
ldr r1, _08119780 @ =gUnknown_8458F04
@@ -7284,7 +7284,7 @@ _0811976A:
.align 2, 0
_08119774: .4byte gStringVar1
_08119778: .4byte gStringVar2
_0811977C: .4byte gUnknown_824F1A0
_0811977C: .4byte gTypeNames
_08119780: .4byte gUnknown_8458F04
_08119784:
adds r0, r6, 0
+11 -11
View File
@@ -17930,8 +17930,8 @@ _081278D6:
bx r1
thumb_func_end sub_81278B4
thumb_func_start sub_81278DC
sub_81278DC: @ 81278DC
thumb_func_start OpenPartyMenuInBattle
OpenPartyMenuInBattle: @ 81278DC
push {r4,lr}
sub sp, 0xC
lsls r0, 24
@@ -17955,7 +17955,7 @@ sub_81278DC: @ 81278DC
str r0, [sp]
ldr r0, _08127928 @ =sub_8120C3C
str r0, [sp, 0x4]
ldr r0, _0812792C @ =sub_8030ADC
ldr r0, _0812792C @ =SetCB2ToReshowScreenAfterMenu
str r0, [sp, 0x8]
movs r0, 0x1
adds r2, r4, 0
@@ -17967,7 +17967,7 @@ sub_81278DC: @ 81278DC
.align 2, 0
_08127924: .4byte gBattleTypeFlags
_08127928: .4byte sub_8120C3C
_0812792C: .4byte sub_8030ADC
_0812792C: .4byte SetCB2ToReshowScreenAfterMenu
_08127930:
bl sub_81278B4
adds r1, r0, 0
@@ -17977,7 +17977,7 @@ _08127930:
str r0, [sp]
ldr r0, _08127960 @ =sub_811FB28
str r0, [sp, 0x4]
ldr r0, _08127964 @ =sub_8030ADC
ldr r0, _08127964 @ =SetCB2ToReshowScreenAfterMenu
str r0, [sp, 0x8]
movs r0, 0x1
adds r2, r4, 0
@@ -17992,8 +17992,8 @@ _08127950:
bx r0
.align 2, 0
_08127960: .4byte sub_811FB28
_08127964: .4byte sub_8030ADC
thumb_func_end sub_81278DC
_08127964: .4byte SetCB2ToReshowScreenAfterMenu
thumb_func_end OpenPartyMenuInBattle
thumb_func_start sub_8127968
sub_8127968: @ 8127968
@@ -18007,7 +18007,7 @@ sub_8127968: @ 8127968
str r0, [sp]
ldr r0, _0812799C @ =sub_8120EBC
str r0, [sp, 0x4]
ldr r0, _081279A0 @ =sub_8030ADC
ldr r0, _081279A0 @ =SetCB2ToReshowScreenAfterMenu
str r0, [sp, 0x8]
movs r0, 0x1
movs r2, 0
@@ -18020,7 +18020,7 @@ sub_8127968: @ 8127968
bx r0
.align 2, 0
_0812799C: .4byte sub_8120EBC
_081279A0: .4byte sub_8030ADC
_081279A0: .4byte SetCB2ToReshowScreenAfterMenu
thumb_func_end sub_8127968
thumb_func_start sub_81279A4
@@ -19046,12 +19046,12 @@ _0812817A:
sub_8128184: @ 8128184
push {lr}
bl sub_8108CF0
ldr r0, _08128194 @ =sub_8030ADC
ldr r0, _08128194 @ =SetCB2ToReshowScreenAfterMenu
bl SetMainCallback2
pop {r0}
bx r0
.align 2, 0
_08128194: .4byte sub_8030ADC
_08128194: .4byte SetCB2ToReshowScreenAfterMenu
thumb_func_end sub_8128184
thumb_func_start sub_8128198
+3 -7
View File
@@ -163,7 +163,7 @@ gTrainerBackPicCoords:: @ 8239F8C
gTrainerBackPicTable:: @ 8239FA4
.incbin "baserom.gba", 0x239FA4, 0x30
gUnknown_8239FD4:: @ 8239FD4
gTrainerBackPicPaletteTable:: @ 8239FD4
.incbin "baserom.gba", 0x239FD4, 0x30
gEnemyMonElevation:: @ 823A004
@@ -236,7 +236,7 @@ gUnknown_824F048:: @ 824F048
gTypeEffectiveness:: @ 824F050
.incbin "baserom.gba", 0x24F050, 0x150
gUnknown_824F1A0:: @ 824F1A0
gTypeNames:: @ 824F1A0
.incbin "baserom.gba", 0x24F1A0, 0x80
gUnknown_824F220:: @ 824F220
@@ -329,11 +329,7 @@ gUnknown_8250888:: @ 8250888
gUnknown_8250892:: @ 8250892
.incbin "baserom.gba", 0x250892, 0xA
gUnknown_825089C:: @ 825089C
.incbin "baserom.gba", 0x25089C, 0xE4
gUnknown_8250980:: @ 8250980
.incbin "baserom.gba", 0x250980, 0xC
.section .rodata.825098C
gUnknown_825098C:: @ 825098C
.incbin "baserom.gba", 0x25098C, 0x8
+5 -5
View File
@@ -387,7 +387,7 @@ gUnknown_83FE6B5:: @ 83FE6B5
gUnknown_83FE6D0:: @ 83FE6D0
.incbin "baserom.gba", 0x3FE6D0, 0x5
gUnknown_83FE6D5:: @ 83FE6D5
gText_WhatWillPkmnDo:: @ 83FE6D5
.incbin "baserom.gba", 0x3FE6D5, 0x11
gUnknown_83FE6E6:: @ 83FE6E6
@@ -396,7 +396,7 @@ gUnknown_83FE6E6:: @ 83FE6E6
gUnknown_83FE6FA:: @ 83FE6FA
.incbin "baserom.gba", 0x3FE6FA, 0x1A
gUnknown_83FE714:: @ 83FE714
gText_LinkStandby:: @ 83FE714
.incbin "baserom.gba", 0x3FE714, 0x11
gUnknown_83FE725:: @ 83FE725
@@ -405,10 +405,10 @@ gUnknown_83FE725:: @ 83FE725
gUnknown_83FE747:: @ 83FE747
.incbin "baserom.gba", 0x3FE747, 0x1F
gUnknown_83FE766:: @ 83FE766
gText_MoveInterfacePP:: @ 83FE766
.incbin "baserom.gba", 0x3FE766, 0x4
gUnknown_83FE76A:: @ 83FE76A
gText_MoveInterfaceType:: @ 83FE76A
.incbin "baserom.gba", 0x3FE76A, 0x6
gUnknown_83FE770:: @ 83FE770
@@ -417,7 +417,7 @@ gUnknown_83FE770:: @ 83FE770
gUnknown_83FE791:: @ 83FE791
.incbin "baserom.gba", 0x3FE791, 0xF
gUnknown_83FE7A0:: @ 83FE7A0
gText_BattleSwitchWhich:: @ 83FE7A0
.incbin "baserom.gba", 0x3FE7A0, 0x6C
gUnknown_83FE80C:: @ 83FE80C
+3 -5
View File
@@ -5,7 +5,7 @@
#include "constants/battle.h"
#include "battle_util.h"
#include "battle_script_commands.h"
#include "battle_2.h"
#include "battle_main.h"
#include "battle_ai_switch_items.h"
#include "battle_gfx_sfx_util.h"
#include "battle_util2.h"
@@ -385,10 +385,6 @@ extern u8 gActiveBattler;
extern u8 gBattlerTarget;
extern u8 gAbsentBattlerFlags;
// TODO: move these to constants/battle.h
#define MAX_BATTLERS_COUNT 4
#define BIT_FLANK 2
// script's table id to bit
#define AI_SCRIPT_CHECK_BAD_MOVE (1 << 0)
#define AI_SCRIPT_TRY_TO_FAINT (1 << 1)
@@ -984,5 +980,7 @@ extern u8 gBattlerStatusSummaryTaskId[MAX_BATTLERS_COUNT];
extern u16 gDynamicBasePower;
extern u16 gLastLandedMoves[MAX_BATTLERS_COUNT];
extern u8 gLastHitBy[MAX_BATTLERS_COUNT];
extern u8 gMultiUsePlayerCursor;
extern u8 gNumberOfMovesToChoose;
#endif // GUARD_BATTLE_H
+4
View File
@@ -133,6 +133,8 @@ u8 GetBattlerSpriteDefault_Y(u8 bank);
u8 sub_80A82E4(u8 bank);
u8 GetSubstituteSpriteDefault_Y(u8 bank);
u8 GetGhostSpriteDefault_Y(u8 battlerId);
void sub_8072E48(u8 battlerId, u8);
void sub_8073128(u8);
// battle_anim_80A9C70.s
void LaunchStatusAnimation(u8 bank, u8 statusAnimId);
@@ -154,6 +156,8 @@ void sub_80759DC(u8 spriteId);
bool8 IsBattlerSpritePresent(u8 battlerId);
u8 GetBattlerSpriteSubpriority(u8 battlerId);
void StartAnimLinearTranslation(struct Sprite *sprite);
void sub_80755B8(struct Sprite *sprite);
u8 sub_80768B0(u8 battlerId);
// battle_anim_mon_movement.c
void AnimTask_ShakeMon(u8 taskId);
+10 -3
View File
@@ -82,6 +82,9 @@ enum
#define INSTANT_HP_BAR_DROP 32767
// Special return values in gBattleBufferB from Battle Controller functions.
#define RET_VALUE_LEVELED_UP 11
struct UnusedControllerStruct
{
u8 field_0 : 7;
@@ -227,17 +230,20 @@ void BtlController_EmitResetActionMoveSelection(u8 bufferId, u8 caseId);
void BtlController_EmitCmd55(u8 bufferId, u8 arg1);
// player controller
void nullsub_13(void);
void SetControllerToPlayer(void);
void PlayerHandleGetRawMonData(void);
void sub_80587B0(void);
void sub_805CC00(struct Sprite *sprite);
void sub_80335F8(struct Sprite *sprite);
void SetCB2ToReshowScreenAfterMenu(void);
void SetCB2ToReshowScreenAfterMenu2(void);
void c3_0802FDF4(u8 taskId);
void ActionSelectionCreateCursorAt(u8 cursorPos, u8 unused);
void ActionSelectionDestroyCursorAt(u8 cursorPos);
void InitMoveSelectionsVarsAndStrings(void);
void nullsub_13(void);
void sub_802F6A8(void);
void MoveSelectionCreateCursorAt(u8 cursorPos, u8 arg1);
void MoveSelectionDestroyCursorAt(u8 cursorPos);
void HandleInputChooseMove(void);
// recorded player controller
void SetControllerToRecordedPlayer(void);
@@ -262,6 +268,7 @@ void sub_80EB2F4(u8);
void sub_80E8570(void);
void sub_80E85C0(void);
void sub_80E8598(void);
void sub_80E7988(void);
// link opponent
void SetControllerToLinkOpponent(void);
+50 -11
View File
@@ -1,8 +1,47 @@
#ifndef GUARD_BATTLE_2_H
#define GUARD_BATTLE_2_H
#ifndef GUARD_BATTLE_MAIN_H
#define GUARD_BATTLE_MAIN_H
#include "global.h"
#include "sprite.h"
struct TrainerMoney
{
u8 classId;
u8 value;
};
struct UnknownPokemonStruct4
{
/*0x00*/ u16 species;
/*0x02*/ u16 heldItem;
/*0x04*/ u8 nickname[POKEMON_NAME_LENGTH + 1];
/*0x0F*/ u8 level;
/*0x10*/ u16 hp;
/*0x12*/ u16 maxhp;
/*0x14*/ u32 status;
/*0x18*/ u32 personality;
/*0x1C*/ u8 gender;
/*0x1D*/ u8 language;
};
#define TYPE_NAME_LENGTH 6
#define ABILITY_NAME_LENGTH 12
// defines for the u8 array gTypeEffectiveness
#define TYPE_EFFECT_ATK_TYPE(i)((gTypeEffectiveness[i + 0]))
#define TYPE_EFFECT_DEF_TYPE(i)((gTypeEffectiveness[i + 1]))
#define TYPE_EFFECT_MULTIPLIER(i)((gTypeEffectiveness[i + 2]))
// defines for the gTypeEffectiveness multipliers
#define TYPE_MUL_NO_EFFECT 0
#define TYPE_MUL_NOT_EFFECTIVE 5
#define TYPE_MUL_NORMAL 10
#define TYPE_MUL_SUPER_EFFECTIVE 20
// special type table Ids
#define TYPE_FORESIGHT 0xFE
#define TYPE_ENDTABLE 0xFF
// defines for the 'DoBounceEffect' function
#define BOUNCE_MON 0x0
#define BOUNCE_HEALTHBOX 0x1
void CB2_InitBattle(void);
void BattleMainCB2(void);
@@ -11,20 +50,20 @@ void sub_8038528(struct Sprite* sprite);
void sub_8038A04(void); // unused
void VBlankCB_Battle(void);
void sub_8038B74(struct Sprite *sprite);
void sub_8038D64(void);
void sub_8011A1C(void);
u32 sub_80391E0(u8 arrayId, u8 caseId);
u32 sub_80397C4(u32 setId, u32 tableId);
void oac_poke_opponent(struct Sprite *sprite);
void SpriteCallbackDummy_2(struct Sprite *sprite);
void sub_8039934(struct Sprite *sprite);
void sub_8039AD8(struct Sprite *sprite);
void sub_8039B2C(struct Sprite *sprite);
void sub_8012098(struct Sprite *sprite);
void sub_8012044(struct Sprite *sprite);
void sub_8039B58(struct Sprite *sprite);
void sub_8039BB4(struct Sprite *sprite);
void sub_80105DC(struct Sprite *sprite);
void sub_8039C00(struct Sprite *sprite);
void dp11b_obj_instanciate(u8 bank, u8 b, s8 c, s8 d);
void dp11b_obj_free(u8 bank, bool8 b);
void sub_8012110(struct Sprite *sprite);
void DoBounceEffect(u8 bank, u8 b, s8 c, s8 d);
void EndBounceEffect(u8 bank, bool8 b);
void sub_8039E44(struct Sprite *sprite);
void sub_8039E60(struct Sprite *sprite);
void sub_8039E84(struct Sprite *sprite);
@@ -61,4 +100,4 @@ extern const u8 * const gStatusConditionStringsTable[7][2];
extern const u8 gTypeEffectiveness[336];
#endif // GUARD_BATTLE_2_H
#endif // GUARD_BATTLE_MAIN_H
+1
View File
@@ -61,6 +61,7 @@ void BattleCreateYesNoCursorAt(u8 cursorPosition);
void BufferMoveToLearnIntoBattleTextBuff2(void);
void HandleBattleWindow(u8 xStart, u8 yStart, u8 xEnd, u8 yEnd, u8 flags);
bool8 UproarWakeUpCheck(u8 bank);
bool32 IsMonGettingExpSentOut(void);
extern void (* const gBattleScriptingCommandsTable[])(void);
extern const u8 gUnknown_0831C494[][4];
+1 -1
View File
@@ -30,7 +30,7 @@ extern const struct CompressedSpritePalette gMonPaletteTable[];
extern const struct CompressedSpritePalette gMonShinyPaletteTable[];
extern const struct CompressedSpriteSheet gTrainerFrontPicTable[];
extern const struct CompressedSpritePalette gTrainerFrontPicPaletteTable[];
extern const struct CompressedSpritePalette gUnknown_8239FD4[];
extern const struct CompressedSpritePalette gTrainerBackPicPaletteTable[];
extern const struct CompressedSpriteSheet gSpriteSheet_EnemyShadow;
extern const struct SpriteTemplate gSpriteTemplate_EnemyShadow;
+2 -2
View File
@@ -192,14 +192,14 @@ void sub_800E0E8(void);
bool8 sub_800A520(void);
bool8 sub_8010500(void);
void sub_800DFB4(u8, u8);
void sub_800ADF8(void);
void sub_800AB9C(void);
void sub_800B488(void);
void sub_8009734(void);
void sub_800A620(void);
void sub_8011BD0(void);
u8 sub_800ABAC(void);
u8 sub_800ABBC(void);
void sub_800AC34(void);
void sub_800AAC0(void);
void OpenLink(void);
bool8 IsLinkMaster(void);
void CheckShouldAdvanceLinkState(void);
+4 -1
View File
@@ -29,7 +29,9 @@ struct Struct203B0A0
};
extern struct Struct203B0A0 gUnknown_203B0A0;
extern u8 gUnknown_203B0C0;
extern u8 gUnknown_203B0C1;
extern u8 gUnknown_203B0DC[3];
extern void (*gUnknown_3005E98)(u8 taskId, TaskFunc func);
bool8 FieldCallback_PrepareFadeInFromMenu(void);
@@ -64,5 +66,6 @@ u8 GetItemEffectType(u16 itemId);
u8 pokemon_order_func(u8);
void sub_8127CAC(void);
void sub_8127DA8(u8 battlerId, u8 multiplayerFlag);
void OpenPartyMenuInBattle(u8 arg);
#endif // GUARD_PARTY_MENU_H
+2
View File
@@ -94,6 +94,8 @@
#define MON_DATA_SPATK2 87
#define MON_DATA_SPDEF2 88
#define MAX_LEVEL 100
#define OT_ID_RANDOM_NO_SHINY 2
#define OT_ID_PRESET 1
#define OT_ID_PLAYER_ID 0
+9
View File
@@ -0,0 +1,9 @@
#ifndef GUARD_POKEMON_SPECIAL_ANIM_H
#define GUARD_POKEMON_SPECIAL_ANIM_H
#include "global.h"
void sub_811E5B8(u16, u16, u16, u16, u16, u16);
bool8 sub_811E680(void);
#endif // GUARD_POKEMON_SPECIAL_ANIM_H
+10
View File
@@ -213,4 +213,14 @@ extern const u8 gUnknown_83FDA4C[];
extern const u8 gUnknown_83FE747[];
extern const u8 gUnknown_83FE6E6[];
// battle_controller_player
extern const u8 gText_BattleSwitchWhich[];
extern const u8 gUnknown_83FE770[];
extern const u8 gText_MoveInterfacePP[];
extern const u8 gUnknown_83FE770[];
extern const u8 gText_MoveInterfaceType[];
extern const u8 gText_LinkStandby[];
extern const u8 gUnknown_83FE725[];
extern const u8 gText_WhatWillPkmnDo[];
#endif //GUARD_STRINGS_H
+3 -1
View File
@@ -70,7 +70,7 @@ SECTIONS {
src/battle_util.o(.text);
asm/battle_script_commands.o(.text);
src/battle_util2.o(.text);
asm/battle_controller_player.o(.text);
src/battle_controller_player.o(.text);
src/battle_gfx_sfx_util.o(.text);
src/battle_controller_opponent.o(.text);
src/battle_ai_switch_items.o(.text);
@@ -382,6 +382,8 @@ SECTIONS {
data/data.o(.rodata);
src/battle_util.o(.rodata);
data/data.o(.rodata.825011C);
src/battle_controller_player.o(.rodata);
data/data.o(.rodata.825098C);
src/battle_controller_opponent.o(.rodata);
data/data.o(.rodata.8250B20);
src/pokemon.o(.rodata);
+1 -1
View File
@@ -1,6 +1,6 @@
#include "global.h"
#include "battle.h"
#include "battle_2.h"
#include "battle_main.h"
#include "util.h"
#include "item.h"
#include "random.h"
+1 -1
View File
@@ -530,7 +530,7 @@ static u32 GetOpponentMonData(u8 monId, u8 *dst)
moveData.pp[size] = GetMonData(&gEnemyParty[monId], MON_DATA_PP1 + size);
}
moveData.ppBonuses = GetMonData(&gEnemyParty[monId], MON_DATA_PP_BONUSES);
src = (u8*)(&moveData);
src = (u8 *)(&moveData);
for (size = 0; size < sizeof(moveData); ++size)
dst[size] = src[size];
break;
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,6 +1,6 @@
#include "global.h"
#include "battle.h"
#include "battle_2.h"
#include "battle_main.h"
#include "battle_ai_script_commands.h"
#include "battle_anim.h"
#include "battle_util.h"
+2 -2
View File
@@ -12,7 +12,7 @@
#include "util.h"
#include "party_menu.h"
#include "battle.h"
#include "battle_2.h"
#include "battle_main.h"
#include "battle_controllers.h"
#include "battle_ai_script_commands.h"
#include "battle_anim.h"
@@ -450,7 +450,7 @@ void DecompressTrainerFrontPic(u16 frontPicId, u8 battlerId)
void DecompressTrainerBackPalette(u16 index, u8 palette)
{
LoadCompressedPalette(gUnknown_8239FD4[index].data, (palette + 16) * 16, 0x20);
LoadCompressedPalette(gTrainerBackPicPaletteTable[index].data, (palette + 16) * 16, 0x20);
}
void nullsub_16(u8 a1)
+1 -1
View File
@@ -8,7 +8,7 @@
#include "data2.h"
#include "string_util.h"
#include "battle.h"
#include "battle_2.h"
#include "battle_main.h"
#include "item.h"
#include "event_data.h"
#include "util.h"
+1 -1
View File
@@ -23,7 +23,7 @@
#include "event_data.h"
#include "load_save.h"
#include "battle_transition.h"
#include "battle_2.h"
#include "battle_main.h"
#include "battle.h"
#include "global.fieldmap.h"
#include "teachy_tv.h"
+1 -1
View File
@@ -17,7 +17,7 @@
#include "battle_setup.h"
#include "battle_transition.h"
#include "battle.h"
#include "battle_2.h"
#include "battle_main.h"
#include "overworld.h"
#include "item.h"
#include "window.h"
+2 -2
View File
@@ -123,10 +123,10 @@ gBattlerControllerFuncs: @ 3004FE0
gHealthboxSpriteIds: @ 3004FF0
.space 0x4
gUnknown_3004FF4: @ 3004FF4
gMultiUsePlayerCursor: @ 3004FF4
.space 0x4
gUnknown_3004FF8: @ 3004FF8
gNumberOfMovesToChoose: @ 3004FF8
.space 0x4
gUnknown_3004FFC: @ 3004FFC