summaryrefslogtreecommitdiff
path: root/src/battle/battle_controller_linkpartner.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/battle/battle_controller_linkpartner.c')
-rw-r--r--src/battle/battle_controller_linkpartner.c54
1 files changed, 23 insertions, 31 deletions
diff --git a/src/battle/battle_controller_linkpartner.c b/src/battle/battle_controller_linkpartner.c
index fc3fde661..adc3c1c85 100644
--- a/src/battle/battle_controller_linkpartner.c
+++ b/src/battle/battle_controller_linkpartner.c
@@ -1,5 +1,6 @@
#include "global.h"
#include "battle.h"
+#include "battle_anim.h"
#include "battle_interface.h"
#include "data2.h"
#include "battle_811DA74.h"
@@ -21,15 +22,7 @@
#include "util.h"
#include "ewram.h"
-struct UnknownStruct1
-{
- u8 unk0;
- u8 unk1;
- u8 unk2[0x1FE];
-};
-
-//Possibly PokemonSubstruct1
-struct UnknownStruct3
+struct MovePpInfo
{
u16 moves[4];
u8 pp[4];
@@ -47,14 +40,13 @@ extern u8 gBattleOutcome;
extern u16 gUnknown_02024DE8;
extern u8 gUnknown_02024E68[];
extern u8 gDoingBattleAnim;
-extern u32 gPID_perBank[];
+extern u32 gTransformedPersonalities[];
extern struct SpriteTemplate gUnknown_02024E8C;
-extern u32 *gDisableStructMoveAnim;
-extern u32 gMoveDmgMoveAnim;
-extern u16 gMovePowerMoveAnim;
-extern u8 gHappinessMoveAnim;
+extern u32 gAnimMoveDmg;
+extern u16 gAnimMovePower;
+extern u8 gAnimFriendship;
extern u16 gWeatherMoveAnim;
-extern u8 gUnknown_0202F7C4;
+extern u8 gAnimMoveTurn;
extern struct Window gUnknown_03004210;
extern u16 gUnknown_030042A0;
extern u16 gUnknown_030042A4;
@@ -67,7 +59,7 @@ extern u8 gAnimScriptActive;
extern void (*gAnimScriptCallback)(void);
extern u8 move_anim_start_t3();
-extern u8 AnimBankSpriteExists();
+extern u8 IsBankSpritePresent();
extern void sub_8044CA0(u8);
extern void sub_8030E38(struct Sprite *);
extern void sub_80E43C0();
@@ -78,7 +70,7 @@ extern void sub_8043D84();
extern void BufferStringBattle();
extern void sub_8031F24(void);
extern void sub_80326EC();
-extern void ExecuteMoveAnim();
+extern void DoMoveAnim();
extern void sub_80324BC();
extern u8 sub_8031720();
extern u8 mplay_80342A4();
@@ -93,7 +85,7 @@ extern u8 sub_8046400();
extern void sub_80312F0(struct Sprite *);
extern u8 CreateInvisibleSpriteWithCallback();
extern void BattleLoadPlayerMonSprite();
-extern u8 sub_8077ABC();
+extern u8 GetBankPosition();
extern u8 sub_8077F68();
extern u8 sub_8079E90();
extern void nullsub_10();
@@ -552,7 +544,7 @@ void LinkPartnerHandleGetAttributes(void)
u32 dp01_getattr_by_ch1_for_player_pokemon(u8 a, u8 *buffer)
{
struct BattlePokemon battlePokemon;
- struct UnknownStruct3 moveData;
+ struct MovePpInfo moveData;
u8 nickname[20];
u8 *src;
s16 data16;
@@ -881,7 +873,7 @@ void LinkPartnerHandleSetAttributes(void)
void sub_811EC68(u8 a)
{
struct BattlePokemon *battlePokemon = (struct BattlePokemon *)&gBattleBufferA[gActiveBank][3];
- struct UnknownStruct3 *moveData = (struct UnknownStruct3 *)&gBattleBufferA[gActiveBank][3];
+ struct MovePpInfo *moveData = (struct MovePpInfo *)&gBattleBufferA[gActiveBank][3];
s32 i;
switch (gBattleBufferA[gActiveBank][1])
@@ -1114,7 +1106,7 @@ void LinkPartnerHandleLoadPokeSprite(void)
GetBankIdentity(gActiveBank));
gObjectBankIDs[gActiveBank] = CreateSprite(
&gUnknown_02024E8C,
- sub_8077ABC(gActiveBank, 2),
+ GetBankPosition(gActiveBank, 2),
sub_8077F68(gActiveBank),
sub_8079E90(gActiveBank));
gSprites[gObjectBankIDs[gActiveBank]].pos2.x = -240;
@@ -1144,7 +1136,7 @@ void sub_811F864(u8 a, u8 b)
GetMonSpriteTemplate_803C56C(species, GetBankIdentity(a));
gObjectBankIDs[a] = CreateSprite(
&gUnknown_02024E8C,
- sub_8077ABC(a, 2),
+ GetBankPosition(a, 2),
sub_8077F68(a),
sub_8079E90(a));
gSprites[gUnknown_0300434C[a]].data[1] = gObjectBankIDs[a];
@@ -1287,20 +1279,20 @@ void LinkPartnerHandleMoveAnimation(void)
u32 r0 = gBattleBufferA[gActiveBank][1]
| (gBattleBufferA[gActiveBank][2] << 8);
- gUnknown_0202F7C4 = gBattleBufferA[gActiveBank][3];
- gMovePowerMoveAnim = gBattleBufferA[gActiveBank][4]
+ gAnimMoveTurn = gBattleBufferA[gActiveBank][3];
+ gAnimMovePower = gBattleBufferA[gActiveBank][4]
| (gBattleBufferA[gActiveBank][5] << 8);
- gMoveDmgMoveAnim = gBattleBufferA[gActiveBank][6]
+ gAnimMoveDmg = gBattleBufferA[gActiveBank][6]
| (gBattleBufferA[gActiveBank][7] << 8)
| (gBattleBufferA[gActiveBank][8] << 16)
| (gBattleBufferA[gActiveBank][9] << 24);
- gHappinessMoveAnim = gBattleBufferA[gActiveBank][10];
+ gAnimFriendship = gBattleBufferA[gActiveBank][10];
gWeatherMoveAnim = gBattleBufferA[gActiveBank][12]
| (gBattleBufferA[gActiveBank][13] << 8);
- gDisableStructMoveAnim = (u32 *)&gBattleBufferA[gActiveBank][16];
- gPID_perBank[gActiveBank] = *gDisableStructMoveAnim;
+ gAnimDisableStructPtr = (struct DisableStruct *)&gBattleBufferA[gActiveBank][16];
+ gTransformedPersonalities[gActiveBank] = gAnimDisableStructPtr->transformedMonPersonality;
- if (sub_8031720(r0, gUnknown_0202F7C4) != 0)
+ if (sub_8031720(r0, gAnimMoveTurn) != 0)
LinkPartnerBufferExecCompleted();
else
{
@@ -1330,7 +1322,7 @@ void sub_811FF30(void)
if (!ewram17810[gActiveBank].unk0_6)
{
sub_80326EC(0);
- ExecuteMoveAnim(r4);
+ DoMoveAnim(r4);
ewram17810[gActiveBank].unk4 = 2;
}
break;
@@ -1679,7 +1671,7 @@ void LinkPartnerHandlecmd50(void)
void LinkPartnerHandleSpriteInvisibility(void)
{
- if (AnimBankSpriteExists(gActiveBank) != 0)
+ if (IsBankSpritePresent(gActiveBank) != 0)
{
gSprites[gObjectBankIDs[gActiveBank]].invisible = gBattleBufferA[gActiveBank][1];
sub_8031F88(gActiveBank);