From 68973c163ba5f6aa26f03d006f472cac4d682fe3 Mon Sep 17 00:00:00 2001 From: Tal Hayon Date: Fri, 31 Dec 2021 01:06:02 +0200 Subject: [PATCH] Review Fixes --- include/enemy.h | 2 +- include/entity.h | 4 ++++ include/functions.h | 2 +- src/enemy/bowMoblin.c | 12 ++++++------ src/player.c | 2 -- 5 files changed, 12 insertions(+), 10 deletions(-) diff --git a/include/enemy.h b/include/enemy.h index 5905ce5b..c4ef561e 100644 --- a/include/enemy.h +++ b/include/enemy.h @@ -12,7 +12,7 @@ #include "entity.h" extern u32 GetNextFunction(Entity*); -extern void EnemyFunctionHandler(Entity*, void (*const func[])(Entity*)); +extern void EnemyFunctionHandler(Entity*, EntityActionArray); extern void sub_08001324(Entity*); extern Entity* sub_0804A9FC(Entity*, u32); diff --git a/include/entity.h b/include/entity.h index 9afeafe1..d98445b4 100644 --- a/include/entity.h +++ b/include/entity.h @@ -149,6 +149,10 @@ typedef struct Entity_ { #endif } Entity; +typedef void(EntityAction)(Entity*); +typedef void(*EntityActionPtr)(Entity*); +typedef void(*const* EntityActionArray)(Entity*); + typedef struct LinkedList { Entity* last; Entity* first; diff --git a/include/functions.h b/include/functions.h index a271ad64..79fe5c2d 100644 --- a/include/functions.h +++ b/include/functions.h @@ -48,7 +48,7 @@ extern void ChangeObjPalette(Entity*, u32); extern void sub_0806FD3C(Entity*); extern void sub_0805ED14(u32*); extern void sub_080A7C18(u32, u32, u32); -extern void sub_0804AA30(Entity*, void (*const funcs[])(Entity*)); +extern void sub_0804AA30(Entity*, EntityActionArray); extern void sub_0804A720(Entity*); extern u32 sub_080AEFE0(Entity*); extern u32 sub_08049FA0(Entity*); diff --git a/src/enemy/bowMoblin.c b/src/enemy/bowMoblin.c index 97b79a21..29fdd6bc 100644 --- a/src/enemy/bowMoblin.c +++ b/src/enemy/bowMoblin.c @@ -30,8 +30,8 @@ extern Entity* sub_08049DF4(u32); extern u32 sub_0806FC80(Entity*, Entity*, s32); void sub_0803C664(BowMoblinEntity*); -extern void (*const gUnk_080CFF78[])(Entity*); -extern void (*const gUnk_080CFF90[])(Entity*); +extern void (*const gUnk_080CFF78[])(BowMoblinEntity*); +extern void (*const gUnk_080CFF90[])(BowMoblinEntity*); extern const s8 gUnk_080CFFC4[8]; extern const s8 gUnk_080CFFA4[8]; @@ -39,12 +39,12 @@ extern const s8 gUnk_080CFFAC[16]; extern const u16 gUnk_080CFFBC[4]; void BowMoblin(Entity* this) { - EnemyFunctionHandler(this, gUnk_080CFF78); + EnemyFunctionHandler(this, (EntityActionArray)gUnk_080CFF78); SetChildOffset(this, 0, 1, -0x18); } void sub_0803C180(BowMoblinEntity* this) { - gUnk_080CFF90[super->action](super); + gUnk_080CFF90[super->action](this); } void sub_0803C198(BowMoblinEntity* this) { @@ -53,7 +53,7 @@ void sub_0803C198(BowMoblinEntity* this) { if (super->field_0x43 != 0) { sub_0804A9FC(super, 0x1c); } - sub_0804AA30(super, gUnk_080CFF78); + sub_0804AA30(super, (EntityActionArray)gUnk_080CFF78); if ((super->bitfield & 0x80) != 0) { sub_0803C5F0(this); pEVar1 = super->child; @@ -371,7 +371,7 @@ u32 sub_0803C6F8(BowMoblinEntity* this) { } void sub_0803C714(BowMoblinEntity* this) { - Entity* child = super->child; // Unused + Entity* child = super->child; const s8* tmp; u32 offsetX; u32 offsetY; diff --git a/src/player.c b/src/player.c index 3a12ef17..65af62d8 100644 --- a/src/player.c +++ b/src/player.c @@ -31,8 +31,6 @@ #define DEFAULT_ANIM 0x100 -typedef void(EntityAction)(Entity*); - static EntityAction PlayerInit; static EntityAction PlayerNormal; // static EntityAction PlayerInit;