summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/overlays/actors/ovl_En_Tanron6/z_en_tanron6.c41
-rw-r--r--src/overlays/actors/ovl_En_Tanron6/z_en_tanron6.h5
2 files changed, 37 insertions, 9 deletions
diff --git a/src/overlays/actors/ovl_En_Tanron6/z_en_tanron6.c b/src/overlays/actors/ovl_En_Tanron6/z_en_tanron6.c
index 49ba2d123..8bb151e9f 100644
--- a/src/overlays/actors/ovl_En_Tanron6/z_en_tanron6.c
+++ b/src/overlays/actors/ovl_En_Tanron6/z_en_tanron6.c
@@ -9,7 +9,9 @@ void EnTanron6_Destroy(Actor* thisx, GlobalContext* globalCtx);
void EnTanron6_Update(Actor* thisx, GlobalContext* globalCtx);
void EnTanron6_Draw(Actor* thisx, GlobalContext* globalCtx);
-/*
+void EnTanron6_DoNothing(EnTanron6* this);
+void func_80BE60D0(EnTanron6* this, GlobalContext* globalCtx);
+
const ActorInit En_Tanron6_InitVars = {
ACTOR_EN_TANRON6,
ACTORTYPE_ENEMY,
@@ -21,16 +23,39 @@ const ActorInit En_Tanron6_InitVars = {
(ActorFunc)EnTanron6_Update,
(ActorFunc)EnTanron6_Draw
};
-*/
-GLOBAL_ASM("asm/non_matchings/ovl_En_Tanron6_0x80BE6040/EnTanron6_Init.asm")
+ActorDamageChart D_80BE6170 = { 0xF0, 0xF0, 0x00, 0xF1, 0xE1, 0xE1, 0x00, 0xE1, 0xF0, 0xF0, 0xF0,
+ 0xE1, 0xE1, 0x46, 0xF0, 0xF0, 0xE1, 0xF0, 0xF0, 0x00, 0x00, 0xF0,
+ 0xE1, 0x00, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0 };
+
+void EnTanron6_Init(Actor* thisx, GlobalContext* globalCtx) {
+ EnTanron6* this = THIS;
+
+ this->actor.unkA0.mass = 0xA;
+ Actor_SetDrawParams(&this->actor.shape, 0, func_800B3FC0, 19.0f);
+ this->actor.unkA0.health = 1;
+ this->actor.unkA0.damageChart = &D_80BE6170;
+ this->actor.unk1F = 6;
+ EnTanron6_DoNothing(this);
+}
+
+void EnTanron6_Destroy(Actor* thisx, GlobalContext* globalCtx) {
+}
-GLOBAL_ASM("asm/non_matchings/ovl_En_Tanron6_0x80BE6040/EnTanron6_Destroy.asm")
+void EnTanron6_DoNothing(EnTanron6* this) {
+ this->actionFunc = func_80BE60D0;
+}
-GLOBAL_ASM("asm/non_matchings/ovl_En_Tanron6_0x80BE6040/func_80BE60BC.asm")
+void func_80BE60D0(EnTanron6* this, GlobalContext* globalCtx) {
+}
-GLOBAL_ASM("asm/non_matchings/ovl_En_Tanron6_0x80BE6040/func_80BE60D0.asm")
+void EnTanron6_Update(Actor* thisx, GlobalContext* globalCtx) {
+ EnTanron6* this = THIS;
-GLOBAL_ASM("asm/non_matchings/ovl_En_Tanron6_0x80BE6040/EnTanron6_Update.asm")
+ this->actionFunc(this, globalCtx);
+ Actor_SetVelocityAndMoveYRotationAndGravity(&this->actor);
+ func_800B78B8(globalCtx, &this->actor, 10.0f, 40.0f, 40.0f, 0x1D);
+}
-GLOBAL_ASM("asm/non_matchings/ovl_En_Tanron6_0x80BE6040/EnTanron6_Draw.asm")
+void EnTanron6_Draw(Actor* thisx, GlobalContext* globalCtx) {
+}
diff --git a/src/overlays/actors/ovl_En_Tanron6/z_en_tanron6.h b/src/overlays/actors/ovl_En_Tanron6/z_en_tanron6.h
index 656f744fa..f6e16ef24 100644
--- a/src/overlays/actors/ovl_En_Tanron6/z_en_tanron6.h
+++ b/src/overlays/actors/ovl_En_Tanron6/z_en_tanron6.h
@@ -5,9 +5,12 @@
struct EnTanron6;
+typedef void (*EnTanron6ActionFunc)(struct EnTanron6*, GlobalContext*);
+
typedef struct EnTanron6 {
/* 0x000 */ Actor actor;
- /* 0x144 */ char unk_144[0xC0];
+ /* 0x144 */ char unk_144[0xBC];
+ /* 0x200 */ EnTanron6ActionFunc actionFunc;
} EnTanron6; // size = 0x204
extern const ActorInit En_Tanron6_InitVars;