Bootstrap actors (#14)

* Bootstrap actors

* Address feedback. Improve header guard. Remove ovl_Player_Actor, it will need to be handled seperately.
This commit is contained in:
Rozelette 2020-09-13 13:21:43 -05:00 committed by GitHub
parent b930732494
commit 189d0d6c30
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1728 changed files with 51355 additions and 789 deletions

View File

@ -177,10 +177,10 @@ build/baserom/%: baserom/%
build/asm/%.o: asm/%.asm
$(AS) $(ASFLAGS) $^ -o $@
build/src/actors/%.o: src/actors/%.c include/* $(S_FILES)
build/src/overlays/%.o: src/overlays/%.c include/* $(S_FILES)
$(CC) -c $(CFLAGS) $(MIPS_VERSION) $(OPTFLAGS) -o $@ $<
./tools/overlay.py $@ build/src/actors/$*_overlay.s
$(AS) $(ASFLAGS) build/src/actors/$*_overlay.s -o build/src/actors/$*_overlay.o
./tools/overlay.py $@ build/src/overlays/$*_overlay.s
$(AS) $(ASFLAGS) build/src/overlays/$*_overlay.s -o build/src/overlays/$*_overlay.o
build/src/%.o: src/%.c include/* $(S_FILES)
$(CC) -c $(CFLAGS) $(MIPS_VERSION) $(OPTFLAGS) -o $@ $<

View File

@ -2922,7 +2922,7 @@ void func_809200F8(void); // func_809200F8
void ItemEtcetera_Update(void); // func_80920140
void func_80920164(void); // func_80920164
void func_809201BC(void); // func_809201BC
void FireArrow_SetUpdateFunc(ActorArrowFire* this, actor_func update); // func_80920340
void FireArrow_SetUpdateFunc(ActorArrowFire* this, ActorFunc update); // func_80920340
void ArrowFire_Init(ActorArrowFire* this, GlobalContext* ctxt); // func_8092034C
void ArrowFire_Destroy(ActorArrowFire* this, GlobalContext* ctxt); // func_809203F8
void FireArrow_Update1(ActorArrowFire* pzParm1); // func_80920440
@ -8001,12 +8001,12 @@ void BgOpenSpot_Init(void); // func_80ACB1E0
void BgOpenSpot_Destroy(void); // func_80ACB220
void BgOpenSpot_Update(void); // func_80ACB230
void func_80ACB2B0(void); // func_80ACB2B0
void BgFuKaiten_Init(ActorBgFuKaiten* this, GlobalContext* ctxt); // func_80ACB400
void BgFuKaiten_Destroy(ActorBgFuKaiten* this, GlobalContext* ctxt); // func_80ACB480
void BgFuKaiten_UpdateRotation(ActorBgFuKaiten* this); // func_80ACB4B4
void BgFuKaiten_UpdateHeight(ActorBgFuKaiten* this); // func_80ACB50C
void BgFuKaiten_Update(ActorBgFuKaiten* this, GlobalContext* ctxt); // func_80ACB570
void BgFuKaiten_Draw(ActorBgFuKaiten* this, GlobalContext* ctxt); // func_80ACB5A0
void BgFuKaiten_Init(Actor* this, GlobalContext* ctxt); // func_80ACB400
void BgFuKaiten_Destroy(Actor* this, GlobalContext* ctxt); // func_80ACB480
void BgFuKaiten_UpdateRotation(Actor* this); // func_80ACB4B4
void BgFuKaiten_UpdateHeight(Actor* this); // func_80ACB50C
void BgFuKaiten_Update(Actor* this, GlobalContext* ctxt); // func_80ACB570
void BgFuKaiten_Draw(Actor* this, GlobalContext* ctxt); // func_80ACB5A0
void func_80ACB6A0(void); // func_80ACB6A0
void func_80ACB7F4(void); // func_80ACB7F4
void func_80ACB940(void); // func_80ACB940
@ -11748,14 +11748,14 @@ void func_80BD5118(void); // func_80BD5118
void func_80BD5134(void); // func_80BD5134
void BgIkanaBombwall_Update(void); // func_80BD51DC
void BgIkanaBombwall_Draw(void); // func_80BD5200
void BgIkanaRay_Init(ActorBgIkanaRay* this, GlobalContext* ctxt); // func_80BD53C0
void BgIkanaRay_Destroy(ActorBgIkanaRay* this, GlobalContext* ctxt); // func_80BD546C
void BgIkanaRay_SetDeactivated(ActorBgIkanaRay* this); // func_80BD5498
void BgIkanaRay_UpdateCheckForActivation(ActorBgIkanaRay* this, GlobalContext* ctxt); // func_80BD54BC
void BgIkanaRay_SetActivated(ActorBgIkanaRay* this); // func_80BD5500
void BgIkanaRay_UpdateActivated(ActorBgIkanaRay* this, GlobalContext* ctxt); // func_80BD5530
void BgIkanaRay_Update(ActorBgIkanaRay* this, GlobalContext* ctxt); // func_80BD556C
void BgIkanaRay_Draw(ActorBgIkanaRay* this, GlobalContext* ctxt); // func_80BD5590
void BgIkanaRay_Init(Actor* this, GlobalContext* ctxt); // func_80BD53C0
void BgIkanaRay_Destroy(Actor* this, GlobalContext* ctxt); // func_80BD546C
void BgIkanaRay_SetDeactivated(Actor* this); // func_80BD5498
void BgIkanaRay_UpdateCheckForActivation(Actor* this, GlobalContext* ctxt); // func_80BD54BC
void BgIkanaRay_SetActivated(Actor* this); // func_80BD5500
void BgIkanaRay_UpdateActivated(Actor* this, GlobalContext* ctxt); // func_80BD5530
void BgIkanaRay_Update(Actor* this, GlobalContext* ctxt); // func_80BD556C
void BgIkanaRay_Draw(Actor* this, GlobalContext* ctxt); // func_80BD5590
void func_80BD5690(void); // func_80BD5690
void BgIkanaShutter_Init(void); // func_80BD5728
void BgIkanaShutter_Destroy(void); // func_80BD57F4

View File

@ -9526,7 +9526,7 @@ extern UNK_TYPE1 D_80ACB3B0; // D_80ACB3B0
extern OverlayRelocationSection bgOpenSpotOverlayInfo; // D_80ACB3C0
extern u32 bgOpenSpotOverlayRelocations[7]; // D_80ACB3D4
extern u32 bgOpenSpotOverlayInfoOffset; // D_80ACB3FC
extern ActorInit bgFuKaitenInitData; // D_80ACB630
extern ActorInit Bg_Fu_Kaiten_InitVars; // D_80ACB630
extern f32 D_80ACB650; // D_80ACB650
extern OverlayRelocationSection bgFuKaitenOverlayInfo; // D_80ACB660
extern u32 bgFuKaitenOverlayRelocations[8]; // D_80ACB674
@ -12749,7 +12749,7 @@ extern UNK_TYPE4 D_80BD52FC; // D_80BD52FC
extern OverlayRelocationSection bgIkanaBombwallOverlayInfo; // D_80BD5300
extern u32 bgIkanaBombwallOverlayRelocations[39]; // D_80BD5314
extern u32 bgIkanaBombwallOverlayInfoOffset; // D_80BD53BC
extern ActorInit bgIkanaRayInitData; // D_80BD55D0
extern ActorInit Bg_Ikana_Ray_InitVars; // D_80BD55D0
extern ColCylinderInit bgIkanaRayCylinderInit; // D_80BD55F0
extern InitChainEntry bgIkanaRayCompInit[4]; // D_80BD561C
extern OverlayRelocationSection bgIkanaRayOverlayInfo; // D_80BD5630

View File

@ -992,8 +992,6 @@ typedef struct {
/* 0x44 */ BgScenePolygonLists scenePolyLists;
} StaticCollisionContext; // size = 0x50
typedef struct ActorBgFuKaiten ActorBgFuKaiten;
typedef struct ActorBgMbarChair ActorBgMbarChair;
typedef struct ActorEnBji01 ActorEnBji01;
@ -1671,20 +1669,13 @@ typedef struct {
/* 0x244 */ Vec3f unk244;
/* 0x250 */ f32 unk250;
/* 0x254 */ f32 unk254;
/* 0x258 */ actor_func update;
/* 0x258 */ ActorFunc update;
/* 0x25C */ s16 unk25C;
/* 0x25E */ u16 unk25E;
/* 0x260 */ u8 unk260;
/* 0x261 */ UNK_TYPE1 pad261[0x3];
} ActorArrowFire; // size = 0x264
typedef struct {
/* 0x000 */ Actor base;
/* 0x144 */ ColCylinder collision;
/* 0x190 */ AnimatedTexture* animatedTextures;
/* 0x194 */ actor_func update;
} ActorBgIkanaRay; // size = 0x198
struct ActorBgMbarChair {
/* 0x000 */ Actor base;
/* 0x144 */ UNK_TYPE1 pad144[0x18];
@ -1751,7 +1742,7 @@ typedef struct {
/* 0x14A */ u16 unk14A;
/* 0x14C */ u8 unk14C;
/* 0x14D */ UNK_TYPE1 pad14D[0x3];
/* 0x150 */ actor_func unk150;
/* 0x150 */ ActorFunc unk150;
} ActorEnTest4; // size = 0x154
struct ActorObjBell {
@ -1765,22 +1756,12 @@ struct ActorObjBell {
/* 0x214 */ s16 unk214;
/* 0x216 */ UNK_TYPE1 pad216[0x12];
}; // size = 0x228
struct ActorBgFuKaiten {
/* 0x000 */ DynaPolyActor bg;
/* 0x15C */ UNK_TYPE1 pad15C[0x4];
/* 0x160 */ f32 elevation;
/* 0x164 */ f32 bouceHeight;
/* 0x168 */ s16 rotationSpeed;
/* 0x16A */ s16 bounceSpeed;
/* 0x16C */ s16 bounce;
/* 0x16E */ UNK_TYPE1 pad16E[0x2];
}; // size = 0x170
struct ActorBgIknvObj {
/* 0x000 */ DynaPolyActor bg;
/* 0x15C */ ColCylinder collision;
/* 0x1A8 */ u32 displayListAddr;
/* 0x1AC */ actor_func updateFunc;
/* 0x1AC */ ActorFunc updateFunc;
}; // size = 0x1B0
typedef struct {

View File

@ -11,7 +11,7 @@ struct GlobalContext;
struct LightMapper;
struct BgPolygon;
typedef void(*actor_func)(struct Actor* this, struct GlobalContext* ctxt);
typedef void(*ActorFunc)(struct Actor* this, struct GlobalContext* ctxt);
typedef struct {
/* 0x00 */ Vec3f pos;
@ -61,14 +61,13 @@ typedef struct {
typedef struct {
/* 0x00 */ s16 id;
/* 0x02 */ u8 type;
/* 0x03 */ u8 room;
/* 0x04 */ u32 flags;
/* 0x08 */ s16 objectId;
/* 0x0C */ u32 instanceSize;
/* 0x10 */ actor_func init;
/* 0x14 */ actor_func destroy;
/* 0x18 */ actor_func update;
/* 0x1C */ actor_func draw;
/* 0x10 */ ActorFunc init;
/* 0x14 */ ActorFunc destroy;
/* 0x18 */ ActorFunc update;
/* 0x1C */ ActorFunc draw;
} ActorInit; // size = 0x20
typedef struct {
@ -152,10 +151,10 @@ typedef struct Actor {
/* 0x124 */ struct Actor* child;
/* 0x128 */ struct Actor* prev;
/* 0x12C */ struct Actor* next;
/* 0x130 */ actor_func init;
/* 0x134 */ actor_func destroy;
/* 0x138 */ actor_func update;
/* 0x13C */ actor_func draw;
/* 0x130 */ ActorFunc init;
/* 0x134 */ ActorFunc destroy;
/* 0x138 */ ActorFunc update;
/* 0x13C */ ActorFunc draw;
/* 0x140 */ ActorOverlay* overlayEntry;
} Actor; // size = 0x144
@ -212,7 +211,7 @@ typedef struct {
typedef struct {
/* 0x000 */ Actor base;
/* 0x144 */ actor_func update;
/* 0x144 */ ActorFunc update;
/* 0x148 */ s16 collectibleFlagId;
/* 0x14A */ s16 unk14A;
/* 0x14C */ s16 unk14C;
@ -226,11 +225,26 @@ typedef struct {
typedef struct {
/* 0x000 */ Actor base;
/* 0x144 */ actor_func update;
/* 0x144 */ ActorFunc update;
/* 0x148 */ ColCylinder collision;
/* 0x194 */ UNK_TYPE1 pad194[0x14];
} ActorEnAObj; // size = 0x1A8
typedef enum {
/* 0x00 */ ACTORTYPE_SWITCH,
/* 0x01 */ ACTORTYPE_BG,
/* 0x02 */ ACTORTYPE_PLAYER,
/* 0x03 */ ACTORTYPE_EXPLOSIVES,
/* 0x04 */ ACTORTYPE_NPC,
/* 0x05 */ ACTORTYPE_ENEMY,
/* 0x06 */ ACTORTYPE_PROP,
/* 0x07 */ ACTORTYPE_ITEMACTION,
/* 0x08 */ ACTORTYPE_MISC,
/* 0x09 */ ACTORTYPE_BOSS,
/* 0x0A */ ACTORTYPE_DOOR,
/* 0x0B */ ACTORTYPE_CHEST
} ActorType;
typedef enum {
/* 0x000 */ ACTOR_PLAYER,
/* 0x001 */ ACTOR_EN_TEST,

File diff suppressed because it is too large Load Diff

View File

@ -1,67 +0,0 @@
#include <ultra64.h>
#include <global_overlay.h>
ActorInit bgFuKaitenInitData = {
ACTOR_BG_FU_KAITEN,
1,
0,
0x30,
0x01A0,
sizeof(ActorBgFuKaiten),
(actor_func)&BgFuKaiten_Init,
(actor_func)&BgFuKaiten_Destroy,
(actor_func)&BgFuKaiten_Update,
(actor_func)&BgFuKaiten_Draw
};
void BgFuKaiten_Init(ActorBgFuKaiten* this, GlobalContext* ctxt) {
UNK_TYPE pad0;
UNK_TYPE pad1;
BgMeshHeader* header = 0;
Actor_SetScale(&this->bg.actor, 1.0);
BcCheck3_BgActorInit(&this->bg, 3);
BgCheck_RelocateMeshHeader(&object_fu_kaiten_002D30, &header);
this->bg.dynaPolyId = BgCheck_AddActorMesh(ctxt, &ctxt->colCtx.dyna, &this->bg, header);
this->bouceHeight = 0.0;
this->rotationSpeed = 0;
this->bounceSpeed = 0;
this->bounce = 0;
}
void BgFuKaiten_Destroy(ActorBgFuKaiten* this, GlobalContext* ctxt) {
BgCheck_RemoveActorMesh(ctxt, &ctxt->colCtx.dyna, this->bg.dynaPolyId);
}
void BgFuKaiten_UpdateRotation(ActorBgFuKaiten* this) {
f32 f0;
this->bg.actor.shape.rot.y += this->rotationSpeed;
if (this->rotationSpeed > 0)
{
f0 = this->rotationSpeed * .002f;
func_8019FAD8(&this->bg.actor.unkEC, 8310, f0);
}
}
void BgFuKaiten_UpdateHeight(ActorBgFuKaiten* this) {
this->bounce += this->bounceSpeed;
this->bg.actor.currPosRot.pos.y = this->bg.actor.initPosRot.pos.y + this->elevation + this->bouceHeight;
this->bg.actor.currPosRot.pos.y -= this->bouceHeight * Math_Coss(this->bounce);
}
void BgFuKaiten_Update(ActorBgFuKaiten* this, GlobalContext* ctxt) {
BgFuKaiten_UpdateRotation(this);
BgFuKaiten_UpdateHeight(this);
}
void BgFuKaiten_Draw(ActorBgFuKaiten* this, GlobalContext* ctxt) {
GraphicsContext* gfxCtx = ctxt->state.gfxCtx;
UNK_TYPE pad;
func_8012C28C(gfxCtx);
gSPMatrix(gfxCtx->polyOpa.p++, SysMatrix_AppendStateToPolyOpaDisp(ctxt->state.gfxCtx), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(gfxCtx->polyOpa.p++, object_fu_kaiten_0005D0);
}

View File

@ -1,85 +0,0 @@
#include <ultra64.h>
#include <global_overlay.h>
ActorInit bgIkanaRayInitData = {
ACTOR_BG_IKANA_RAY,
6,
0,
0,
0x0203,
sizeof(ActorBgIkanaRay),
(actor_func)BgIkanaRay_Init,
(actor_func)BgIkanaRay_Destroy,
(actor_func)BgIkanaRay_Update,
(actor_func)BgIkanaRay_Draw
};
// TODO better formatting
ColCylinderInit bgIkanaRayCylinderInit = {
{ 10, 33, 0, 0, 0, 1 },
{ 0, { 0x00200000, 0, 0 }, { 0, 0, 0 }, 25, 0, 1 },
{ 90, 420, 65116}
};
// TODO macro
InitChainEntry bgIkanaRayCompInit[] = {
{1, 6, 0x0FC, 4000},
{1, 6, 0x100, 1000},
{1, 6, 0x104, 1000},
{0, 9, 0x058, 100}
};
void BgIkanaRay_Init(ActorBgIkanaRay* this, GlobalContext* ctxt) {
ColCylinder* collision = &this->collision;
u32 pad;
Actor_ProcessInitChain((Actor*)this, bgIkanaRayCompInit);
Collision_InitCylinderDefault(ctxt, collision);
Collision_InitCylinderWithData(ctxt, collision, (Actor*)this, &bgIkanaRayCylinderInit);
Collision_CylinderMoveToActor((Actor*)this, &this->collision);
this->animatedTextures = (AnimatedTexture*)Lib_PtrSegToVirt(object_ikana_obj_001228);
if (Actor_GetSwitchFlag(ctxt, this->base.params & 0x7F) != 0) {
BgIkanaRay_SetActivated(this);
} else {
BgIkanaRay_SetDeactivated(this);
}
}
void BgIkanaRay_Destroy(ActorBgIkanaRay* this, GlobalContext* ctxt) {
ColCylinder* collision = &this->collision;
Collision_FiniCylinder(ctxt, collision);
}
void BgIkanaRay_SetDeactivated(ActorBgIkanaRay* this) {
this->base.draw = NULL;
this->base.flags |= 0x10;
this->update = (actor_func)BgIkanaRay_UpdateCheckForActivation;
}
void BgIkanaRay_UpdateCheckForActivation(ActorBgIkanaRay* this, GlobalContext* ctxt) {
if (Actor_GetSwitchFlag(ctxt, this->base.params & 0x7F) != 0) {
BgIkanaRay_SetActivated(this);
}
}
void BgIkanaRay_SetActivated(ActorBgIkanaRay* this) {
this->base.draw = (actor_func)BgIkanaRay_Draw;
this->base.flags &= 0xFFFFFFEF;
this->update = (actor_func)BgIkanaRay_UpdateActivated;
}
void BgIkanaRay_UpdateActivated(ActorBgIkanaRay* this, GlobalContext* ctxt) {
Collision_AddAT(ctxt, &ctxt->colCheckCtx, &this->collision.base);
}
void BgIkanaRay_Update(ActorBgIkanaRay* this, GlobalContext* ctxt) {
this->update((Actor*)this, ctxt);
}
void BgIkanaRay_Draw(ActorBgIkanaRay* this, GlobalContext* ctxt) {
SceneProc_DrawAllSceneAnimatedTextures(ctxt, this->animatedTextures);
func_800BE03C(ctxt, object_ikana_obj_001100);
}

View File

@ -12,7 +12,7 @@ void EnAObj_Init(ActorEnAObj* this, GlobalContext* ctxt) {
Collision_InitCylinder(ctxt, &s0->collision, (Actor*)s0, &enAObjCylinderInit);
Collision_CylinderMoveToActor((Actor*)s0, &s0->collision);
s0->base.unkA0.mass = 255;
s0->update = (actor_func)EnAObj_Update1;
s0->update = (ActorFunc)EnAObj_Update1;
}
void EnAObj_Destroy(ActorEnAObj* this, GlobalContext* ctxt) {
@ -24,7 +24,7 @@ void EnAObj_Update1(ActorEnAObj* this, GlobalContext* ctxt) {
s16 v0;
s32 v1;
if (func_800B84D0((Actor*)this, ctxt) != 0) {
this->update = (actor_func)EnAObj_Update2;
this->update = (ActorFunc)EnAObj_Update2;
} else {
v0 = this->base.rotTowardsLinkY - this->base.shape.rot.y;
v1 = (v0 < 0)? -v0 : v0;
@ -36,7 +36,7 @@ void EnAObj_Update1(ActorEnAObj* this, GlobalContext* ctxt) {
void EnAObj_Update2(ActorEnAObj* this, GlobalContext* ctxt) {
if (func_800B867C((Actor*)this, ctxt) != 0) {
this->update = (actor_func)EnAObj_Update1;
this->update = (ActorFunc)EnAObj_Update1;
}
}

View File

@ -0,0 +1,2 @@
ovl_Arms_Hook
z_arms_hook.c

View File

@ -0,0 +1,48 @@
#include "z_arms_hook.h"
#define FLAGS 0x00000030
#define THIS ((ArmsHook*)thisx)
void ArmsHook_Init(Actor* thisx, GlobalContext* globalCtx);
void ArmsHook_Destroy(Actor* thisx, GlobalContext* globalCtx);
void ArmsHook_Update(Actor* thisx, GlobalContext* globalCtx);
void ArmsHook_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Arms_Hook_InitVars = {
ACTOR_ARMS_HOOK,
ACTORTYPE_ITEMACTION,
FLAGS,
GAMEPLAY_KEEP,
sizeof(ArmsHook),
(ActorFunc)ArmsHook_Init,
(ActorFunc)ArmsHook_Destroy,
(ActorFunc)ArmsHook_Update,
(ActorFunc)ArmsHook_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Arms_Hook_0x808C1030/func_808C1030.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arms_Hook_0x808C1030/ArmsHook_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arms_Hook_0x808C1030/ArmsHook_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arms_Hook_0x808C1030/func_808C10F8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arms_Hook_0x808C1030/func_808C1154.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arms_Hook_0x808C1030/func_808C1168.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arms_Hook_0x808C1030/func_808C1198.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arms_Hook_0x808C1030/func_808C11C0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arms_Hook_0x808C1030/func_808C125C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arms_Hook_0x808C1030/func_808C12A4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arms_Hook_0x808C1030/ArmsHook_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arms_Hook_0x808C1030/ArmsHook_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_ARMS_HOOK_H
#define Z_ARMS_HOOK_H
#include <global.h>
struct ArmsHook;
typedef struct ArmsHook {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0xCC];
} ArmsHook; // size = 0x210
extern const ActorInit Arms_Hook_InitVars;
#endif // Z_ARMS_HOOK_H

View File

@ -0,0 +1,2 @@
ovl_Arrow_Fire
z_arrow_fire.c

View File

@ -0,0 +1,44 @@
#include "z_arrow_fire.h"
#define FLAGS 0x02000010
#define THIS ((ArrowFire*)thisx)
void ArrowFire_Init(Actor* thisx, GlobalContext* globalCtx);
void ArrowFire_Destroy(Actor* thisx, GlobalContext* globalCtx);
void ArrowFire_Update(Actor* thisx, GlobalContext* globalCtx);
void ArrowFire_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Arrow_Fire_InitVars = {
ACTOR_ARROW_FIRE,
ACTORTYPE_ITEMACTION,
FLAGS,
GAMEPLAY_KEEP,
sizeof(ArrowFire),
(ActorFunc)ArrowFire_Init,
(ActorFunc)ArrowFire_Destroy,
(ActorFunc)ArrowFire_Update,
(ActorFunc)ArrowFire_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Fire_0x80920340/FireArrow_SetUpdateFunc.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Fire_0x80920340/ArrowFire_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Fire_0x80920340/ArrowFire_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Fire_0x80920340/FireArrow_Update1.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Fire_0x80920340/FireArrow_Lerp.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Fire_0x80920340/FireArrow_Update3.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Fire_0x80920340/FireArrow_Update2.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Fire_0x80920340/ArrowFire_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Fire_0x80920340/func_80920948.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Fire_0x80920340/ArrowFire_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_ARROW_FIRE_H
#define Z_ARROW_FIRE_H
#include <global.h>
struct ArrowFire;
typedef struct ArrowFire {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x120];
} ArrowFire; // size = 0x264
extern const ActorInit Arrow_Fire_InitVars;
#endif // Z_ARROW_FIRE_H

View File

@ -0,0 +1,2 @@
ovl_Arrow_Ice
z_arrow_ice.c

View File

@ -0,0 +1,42 @@
#include "z_arrow_ice.h"
#define FLAGS 0x02000010
#define THIS ((ArrowIce*)thisx)
void ArrowIce_Init(Actor* thisx, GlobalContext* globalCtx);
void ArrowIce_Destroy(Actor* thisx, GlobalContext* globalCtx);
void ArrowIce_Update(Actor* thisx, GlobalContext* globalCtx);
void ArrowIce_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Arrow_Ice_InitVars = {
ACTOR_ARROW_ICE,
ACTORTYPE_ITEMACTION,
FLAGS,
GAMEPLAY_KEEP,
sizeof(ArrowIce),
(ActorFunc)ArrowIce_Init,
(ActorFunc)ArrowIce_Destroy,
(ActorFunc)ArrowIce_Update,
(ActorFunc)ArrowIce_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Ice_0x80922430/func_80922430.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Ice_0x80922430/ArrowIce_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Ice_0x80922430/ArrowIce_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Ice_0x80922430/func_809224DC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Ice_0x80922430/func_809225D0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Ice_0x80922430/func_80922628.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Ice_0x80922430/func_809227F4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Ice_0x80922430/ArrowIce_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Ice_0x80922430/ArrowIce_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_ARROW_ICE_H
#define Z_ARROW_ICE_H
#include <global.h>
struct ArrowIce;
typedef struct ArrowIce {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x20];
} ArrowIce; // size = 0x164
extern const ActorInit Arrow_Ice_InitVars;
#endif // Z_ARROW_ICE_H

View File

@ -0,0 +1,2 @@
ovl_Arrow_Light
z_arrow_light.c

View File

@ -0,0 +1,42 @@
#include "z_arrow_light.h"
#define FLAGS 0x02000010
#define THIS ((ArrowLight*)thisx)
void ArrowLight_Init(Actor* thisx, GlobalContext* globalCtx);
void ArrowLight_Destroy(Actor* thisx, GlobalContext* globalCtx);
void ArrowLight_Update(Actor* thisx, GlobalContext* globalCtx);
void ArrowLight_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Arrow_Light_InitVars = {
ACTOR_ARROW_LIGHT,
ACTORTYPE_ITEMACTION,
FLAGS,
GAMEPLAY_KEEP,
sizeof(ArrowLight),
(ActorFunc)ArrowLight_Init,
(ActorFunc)ArrowLight_Destroy,
(ActorFunc)ArrowLight_Update,
(ActorFunc)ArrowLight_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Light_0x80924300/func_80924300.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Light_0x80924300/ArrowLight_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Light_0x80924300/ArrowLight_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Light_0x80924300/func_809243AC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Light_0x80924300/func_809244A0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Light_0x80924300/func_809244F8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Light_0x80924300/func_809246C4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Light_0x80924300/ArrowLight_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Arrow_Light_0x80924300/ArrowLight_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_ARROW_LIGHT_H
#define Z_ARROW_LIGHT_H
#include <global.h>
struct ArrowLight;
typedef struct ArrowLight {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x20];
} ArrowLight; // size = 0x164
extern const ActorInit Arrow_Light_InitVars;
#endif // Z_ARROW_LIGHT_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Astr_Bombwall
z_bg_astr_bombwall.c

View File

@ -0,0 +1,48 @@
#include "z_bg_astr_bombwall.h"
#define FLAGS 0x00000000
#define THIS ((BgAstrBombwall*)thisx)
void BgAstrBombwall_Init(Actor* thisx, GlobalContext* globalCtx);
void BgAstrBombwall_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgAstrBombwall_Update(Actor* thisx, GlobalContext* globalCtx);
void BgAstrBombwall_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Astr_Bombwall_InitVars = {
ACTOR_BG_ASTR_BOMBWALL,
ACTORTYPE_BG,
FLAGS,
OBJECT_ASTR_OBJ,
sizeof(BgAstrBombwall),
(ActorFunc)BgAstrBombwall_Init,
(ActorFunc)BgAstrBombwall_Destroy,
(ActorFunc)BgAstrBombwall_Update,
(ActorFunc)BgAstrBombwall_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Astr_Bombwall_0x80C09ED0/func_80C09ED0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Astr_Bombwall_0x80C09ED0/BgAstrBombwall_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Astr_Bombwall_0x80C09ED0/BgAstrBombwall_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Astr_Bombwall_0x80C09ED0/func_80C0A120.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Astr_Bombwall_0x80C09ED0/func_80C0A378.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Astr_Bombwall_0x80C09ED0/func_80C0A38C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Astr_Bombwall_0x80C09ED0/func_80C0A400.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Astr_Bombwall_0x80C09ED0/func_80C0A418.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Astr_Bombwall_0x80C09ED0/func_80C0A458.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Astr_Bombwall_0x80C09ED0/func_80C0A4BC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Astr_Bombwall_0x80C09ED0/BgAstrBombwall_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Astr_Bombwall_0x80C09ED0/BgAstrBombwall_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_ASTR_BOMBWALL_H
#define Z_BG_ASTR_BOMBWALL_H
#include <global.h>
struct BgAstrBombwall;
typedef struct BgAstrBombwall {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0xF8];
} BgAstrBombwall; // size = 0x23C
extern const ActorInit Bg_Astr_Bombwall_InitVars;
#endif // Z_BG_ASTR_BOMBWALL_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Botihasira
z_bg_botihasira.c

View File

@ -0,0 +1,34 @@
#include "z_bg_botihasira.h"
#define FLAGS 0x00000000
#define THIS ((BgBotihasira*)thisx)
void BgBotihasira_Init(Actor* thisx, GlobalContext* globalCtx);
void BgBotihasira_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgBotihasira_Update(Actor* thisx, GlobalContext* globalCtx);
void BgBotihasira_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Botihasira_InitVars = {
ACTOR_BG_BOTIHASIRA,
ACTORTYPE_ITEMACTION,
FLAGS,
OBJECT_BOTIHASIRA,
sizeof(BgBotihasira),
(ActorFunc)BgBotihasira_Init,
(ActorFunc)BgBotihasira_Destroy,
(ActorFunc)BgBotihasira_Update,
(ActorFunc)BgBotihasira_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Botihasira_0x80B28080/BgBotihasira_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Botihasira_0x80B28080/BgBotihasira_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Botihasira_0x80B28080/func_80B2815C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Botihasira_0x80B28080/BgBotihasira_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Botihasira_0x80B28080/BgBotihasira_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_BOTIHASIRA_H
#define Z_BG_BOTIHASIRA_H
#include <global.h>
struct BgBotihasira;
typedef struct BgBotihasira {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x68];
} BgBotihasira; // size = 0x1AC
extern const ActorInit Bg_Botihasira_InitVars;
#endif // Z_BG_BOTIHASIRA_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Breakwall
z_bg_breakwall.c

View File

@ -0,0 +1,72 @@
#include "z_bg_breakwall.h"
#define FLAGS 0x00000030
#define THIS ((BgBreakwall*)thisx)
void BgBreakwall_Init(Actor* thisx, GlobalContext* globalCtx);
void BgBreakwall_Update(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Breakwall_InitVars = {
ACTOR_BG_BREAKWALL,
ACTORTYPE_ITEMACTION,
FLAGS,
GAMEPLAY_KEEP,
sizeof(BgBreakwall),
(ActorFunc)BgBreakwall_Init,
(ActorFunc)NULL,
(ActorFunc)BgBreakwall_Update,
(ActorFunc)NULL
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B7360.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B736C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B7380.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B73C4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B73FC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B7410.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B7460.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B74A8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B74D8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B751C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/BgBreakwall_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B767C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B76CC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B77D0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B77E0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B782C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B78A4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B78DC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B7914.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B7A10.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/BgBreakwall_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B7A90.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B7B54.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B7D34.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Breakwall_0x808B7360/func_808B7FE4.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_BREAKWALL_H
#define Z_BG_BREAKWALL_H
#include <global.h>
struct BgBreakwall;
typedef struct BgBreakwall {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x20];
} BgBreakwall; // size = 0x164
extern const ActorInit Bg_Breakwall_InitVars;
#endif // Z_BG_BREAKWALL_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Crace_Movebg
z_bg_crace_movebg.c

View File

@ -0,0 +1,64 @@
#include "z_bg_crace_movebg.h"
#define FLAGS 0x00000010
#define THIS ((BgCraceMovebg*)thisx)
void BgCraceMovebg_Init(Actor* thisx, GlobalContext* globalCtx);
void BgCraceMovebg_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgCraceMovebg_Update(Actor* thisx, GlobalContext* globalCtx);
void BgCraceMovebg_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Crace_Movebg_InitVars = {
ACTOR_BG_CRACE_MOVEBG,
ACTORTYPE_BG,
FLAGS,
OBJECT_CRACE_OBJECT,
sizeof(BgCraceMovebg),
(ActorFunc)BgCraceMovebg_Init,
(ActorFunc)BgCraceMovebg_Destroy,
(ActorFunc)BgCraceMovebg_Update,
(ActorFunc)BgCraceMovebg_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/BgCraceMovebg_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/func_80A7090C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/func_80A70970.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/func_80A7099C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/func_80A709E4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/func_80A70A08.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/func_80A70A84.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/func_80A70A9C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/BgCraceMovebg_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/BgCraceMovebg_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/func_80A70C04.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/func_80A70D74.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/func_80A70DA8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/func_80A70E2C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/func_80A70E70.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/func_80A70F14.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/func_80A70F2C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/func_80A70FF4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/func_80A71040.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Crace_Movebg_0x80A706F0/BgCraceMovebg_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_CRACE_MOVEBG_H
#define Z_BG_CRACE_MOVEBG_H
#include <global.h>
struct BgCraceMovebg;
typedef struct BgCraceMovebg {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x50];
} BgCraceMovebg; // size = 0x194
extern const ActorInit Bg_Crace_Movebg_InitVars;
#endif // Z_BG_CRACE_MOVEBG_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Ctower_Gear
z_bg_ctower_gear.c

View File

@ -0,0 +1,38 @@
#include "z_bg_ctower_gear.h"
#define FLAGS 0x00000010
#define THIS ((BgCtowerGear*)thisx)
void BgCtowerGear_Init(Actor* thisx, GlobalContext* globalCtx);
void BgCtowerGear_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgCtowerGear_Update(Actor* thisx, GlobalContext* globalCtx);
void BgCtowerGear_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Ctower_Gear_InitVars = {
ACTOR_BG_CTOWER_GEAR,
ACTORTYPE_PROP,
FLAGS,
OBJECT_CTOWER_ROT,
sizeof(BgCtowerGear),
(ActorFunc)BgCtowerGear_Init,
(ActorFunc)BgCtowerGear_Destroy,
(ActorFunc)BgCtowerGear_Update,
(ActorFunc)BgCtowerGear_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Ctower_Gear_0x80AD2B70/func_80AD2B70.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Ctower_Gear_0x80AD2B70/BgCtowerGear_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Ctower_Gear_0x80AD2B70/BgCtowerGear_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Ctower_Gear_0x80AD2B70/BgCtowerGear_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Ctower_Gear_0x80AD2B70/func_80AD3054.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Ctower_Gear_0x80AD2B70/BgCtowerGear_Draw.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Ctower_Gear_0x80AD2B70/func_80AD3164.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_CTOWER_GEAR_H
#define Z_BG_CTOWER_GEAR_H
#include <global.h>
struct BgCtowerGear;
typedef struct BgCtowerGear {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x18];
} BgCtowerGear; // size = 0x15C
extern const ActorInit Bg_Ctower_Gear_InitVars;
#endif // Z_BG_CTOWER_GEAR_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Ctower_Rot
z_bg_ctower_rot.c

View File

@ -0,0 +1,42 @@
#include "z_bg_ctower_rot.h"
#define FLAGS 0x00000030
#define THIS ((BgCtowerRot*)thisx)
void BgCtowerRot_Init(Actor* thisx, GlobalContext* globalCtx);
void BgCtowerRot_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgCtowerRot_Update(Actor* thisx, GlobalContext* globalCtx);
void BgCtowerRot_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Ctower_Rot_InitVars = {
ACTOR_BG_CTOWER_ROT,
ACTORTYPE_BG,
FLAGS,
OBJECT_CTOWER_ROT,
sizeof(BgCtowerRot),
(ActorFunc)BgCtowerRot_Init,
(ActorFunc)BgCtowerRot_Destroy,
(ActorFunc)BgCtowerRot_Update,
(ActorFunc)BgCtowerRot_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Ctower_Rot_0x808E2070/BgCtowerRot_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Ctower_Rot_0x808E2070/BgCtowerRot_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Ctower_Rot_0x808E2070/func_808E21FC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Ctower_Rot_0x808E2070/func_808E22DC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Ctower_Rot_0x808E2070/func_808E22EC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Ctower_Rot_0x808E2070/func_808E23D0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Ctower_Rot_0x808E2070/func_808E2444.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Ctower_Rot_0x808E2070/BgCtowerRot_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Ctower_Rot_0x808E2070/BgCtowerRot_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_CTOWER_ROT_H
#define Z_BG_CTOWER_ROT_H
#include <global.h>
struct BgCtowerRot;
typedef struct BgCtowerRot {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x24];
} BgCtowerRot; // size = 0x168
extern const ActorInit Bg_Ctower_Rot_InitVars;
#endif // Z_BG_CTOWER_ROT_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Danpei_Movebg
z_bg_danpei_movebg.c

View File

@ -0,0 +1,47 @@
#include "z_bg_danpei_movebg.h"
#define FLAGS 0x00000010
#define THIS ((BgDanpeiMovebg*)thisx)
void BgDanpeiMovebg_Init(Actor* thisx, GlobalContext* globalCtx);
void BgDanpeiMovebg_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgDanpeiMovebg_Update(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Danpei_Movebg_InitVars = {
ACTOR_BG_DANPEI_MOVEBG,
ACTORTYPE_BG,
FLAGS,
GAMEPLAY_KEEP,
sizeof(BgDanpeiMovebg),
(ActorFunc)BgDanpeiMovebg_Init,
(ActorFunc)BgDanpeiMovebg_Destroy,
(ActorFunc)BgDanpeiMovebg_Update,
(ActorFunc)NULL
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Danpei_Movebg_0x80AF6DE0/func_80AF6DE0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Danpei_Movebg_0x80AF6DE0/BgDanpeiMovebg_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Danpei_Movebg_0x80AF6DE0/func_80AF6EA8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Danpei_Movebg_0x80AF6DE0/BgDanpeiMovebg_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Danpei_Movebg_0x80AF6DE0/BgDanpeiMovebg_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Danpei_Movebg_0x80AF6DE0/func_80AF705C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Danpei_Movebg_0x80AF6DE0/func_80AF70FC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Danpei_Movebg_0x80AF6DE0/func_80AF71FC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Danpei_Movebg_0x80AF6DE0/func_80AF72F8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Danpei_Movebg_0x80AF6DE0/func_80AF7354.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Danpei_Movebg_0x80AF6DE0/func_80AF746C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Danpei_Movebg_0x80AF6DE0/func_80AF74CC.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_DANPEI_MOVEBG_H
#define Z_BG_DANPEI_MOVEBG_H
#include <global.h>
struct BgDanpeiMovebg;
typedef struct BgDanpeiMovebg {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x94];
} BgDanpeiMovebg; // size = 0x1D8
extern const ActorInit Bg_Danpei_Movebg_InitVars;
#endif // Z_BG_DANPEI_MOVEBG_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Dblue_Balance
z_bg_dblue_balance.c

View File

@ -0,0 +1,64 @@
#include "z_bg_dblue_balance.h"
#define FLAGS 0x00000000
#define THIS ((BgDblueBalance*)thisx)
void BgDblueBalance_Init(Actor* thisx, GlobalContext* globalCtx);
void BgDblueBalance_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgDblueBalance_Update(Actor* thisx, GlobalContext* globalCtx);
void BgDblueBalance_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Dblue_Balance_InitVars = {
ACTOR_BG_DBLUE_BALANCE,
ACTORTYPE_BG,
FLAGS,
OBJECT_DBLUE_OBJECT,
sizeof(BgDblueBalance),
(ActorFunc)BgDblueBalance_Init,
(ActorFunc)BgDblueBalance_Destroy,
(ActorFunc)BgDblueBalance_Update,
(ActorFunc)BgDblueBalance_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/func_80B823B0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/func_80B82454.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/func_80B8259C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/func_80B8264C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/func_80B828E4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/func_80B8296C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/func_80B82B00.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/BgDblueBalance_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/BgDblueBalance_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/func_80B82DC4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/func_80B82DE0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/BgDblueBalance_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/func_80B8330C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/func_80B83344.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/func_80B8335C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/func_80B833A8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/func_80B833C4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/func_80B83518.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/BgDblueBalance_Draw.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Balance_0x80B823B0/func_80B83758.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_DBLUE_BALANCE_H
#define Z_BG_DBLUE_BALANCE_H
#include <global.h>
struct BgDblueBalance;
typedef struct BgDblueBalance {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0xE8];
} BgDblueBalance; // size = 0x22C
extern const ActorInit Bg_Dblue_Balance_InitVars;
#endif // Z_BG_DBLUE_BALANCE_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Dblue_Elevator
z_bg_dblue_elevator.c

View File

@ -0,0 +1,52 @@
#include "z_bg_dblue_elevator.h"
#define FLAGS 0x00000010
#define THIS ((BgDblueElevator*)thisx)
void BgDblueElevator_Init(Actor* thisx, GlobalContext* globalCtx);
void BgDblueElevator_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgDblueElevator_Update(Actor* thisx, GlobalContext* globalCtx);
void BgDblueElevator_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Dblue_Elevator_InitVars = {
ACTOR_BG_DBLUE_ELEVATOR,
ACTORTYPE_BG,
FLAGS,
OBJECT_DBLUE_OBJECT,
sizeof(BgDblueElevator),
(ActorFunc)BgDblueElevator_Init,
(ActorFunc)BgDblueElevator_Destroy,
(ActorFunc)BgDblueElevator_Update,
(ActorFunc)BgDblueElevator_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Elevator_0x80B91F20/func_80B91F20.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Elevator_0x80B91F20/func_80B91F74.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Elevator_0x80B91F20/func_80B922C0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Elevator_0x80B91F20/func_80B922FC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Elevator_0x80B91F20/BgDblueElevator_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Elevator_0x80B91F20/BgDblueElevator_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Elevator_0x80B91F20/func_80B924DC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Elevator_0x80B91F20/func_80B924F8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Elevator_0x80B91F20/func_80B9257C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Elevator_0x80B91F20/func_80B925B8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Elevator_0x80B91F20/func_80B92644.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Elevator_0x80B91F20/func_80B92660.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Elevator_0x80B91F20/BgDblueElevator_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Elevator_0x80B91F20/BgDblueElevator_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_DBLUE_ELEVATOR_H
#define Z_BG_DBLUE_ELEVATOR_H
#include <global.h>
struct BgDblueElevator;
typedef struct BgDblueElevator {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x2C];
} BgDblueElevator; // size = 0x170
extern const ActorInit Bg_Dblue_Elevator_InitVars;
#endif // Z_BG_DBLUE_ELEVATOR_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Dblue_Movebg
z_bg_dblue_movebg.c

View File

@ -0,0 +1,62 @@
#include "z_bg_dblue_movebg.h"
#define FLAGS 0x00000030
#define THIS ((BgDblueMovebg*)thisx)
void BgDblueMovebg_Init(Actor* thisx, GlobalContext* globalCtx);
void BgDblueMovebg_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgDblueMovebg_Update(Actor* thisx, GlobalContext* globalCtx);
void BgDblueMovebg_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Dblue_Movebg_InitVars = {
ACTOR_BG_DBLUE_MOVEBG,
ACTORTYPE_BG,
FLAGS,
OBJECT_DBLUE_OBJECT,
sizeof(BgDblueMovebg),
(ActorFunc)BgDblueMovebg_Init,
(ActorFunc)BgDblueMovebg_Destroy,
(ActorFunc)BgDblueMovebg_Update,
(ActorFunc)BgDblueMovebg_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/func_80A29A80.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/BgDblueMovebg_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/BgDblueMovebg_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/func_80A2A128.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/func_80A2A1E0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/func_80A2A32C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/func_80A2A444.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/func_80A2A670.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/func_80A2A688.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/func_80A2A714.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/func_80A2A7F8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/func_80A2AAB8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/func_80A2ABD0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/func_80A2AED0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/func_80A2B1A0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/BgDblueMovebg_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/func_80A2B274.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/func_80A2B308.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Movebg_0x80A29A80/BgDblueMovebg_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_DBLUE_MOVEBG_H
#define Z_BG_DBLUE_MOVEBG_H
#include <global.h>
struct BgDblueMovebg;
typedef struct BgDblueMovebg {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x22C];
} BgDblueMovebg; // size = 0x370
extern const ActorInit Bg_Dblue_Movebg_InitVars;
#endif // Z_BG_DBLUE_MOVEBG_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Dblue_Waterfall
z_bg_dblue_waterfall.c

View File

@ -0,0 +1,68 @@
#include "z_bg_dblue_waterfall.h"
#define FLAGS 0x00000010
#define THIS ((BgDblueWaterfall*)thisx)
void BgDblueWaterfall_Init(Actor* thisx, GlobalContext* globalCtx);
void BgDblueWaterfall_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgDblueWaterfall_Update(Actor* thisx, GlobalContext* globalCtx);
void BgDblueWaterfall_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Dblue_Waterfall_InitVars = {
ACTOR_BG_DBLUE_WATERFALL,
ACTORTYPE_PROP,
FLAGS,
OBJECT_DBLUE_OBJECT,
sizeof(BgDblueWaterfall),
(ActorFunc)BgDblueWaterfall_Init,
(ActorFunc)BgDblueWaterfall_Destroy,
(ActorFunc)BgDblueWaterfall_Update,
(ActorFunc)BgDblueWaterfall_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B83C80.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B83D04.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B83D58.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B83D94.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B83E1C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B83EA4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B841A0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B84348.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B84568.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B84610.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/BgDblueWaterfall_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/BgDblueWaterfall_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B8484C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B84928.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B84AD4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B84AEC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B84B9C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B84BCC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B84EF0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B84F20.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/BgDblueWaterfall_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dblue_Waterfall_0x80B83C80/BgDblueWaterfall_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_DBLUE_WATERFALL_H
#define Z_BG_DBLUE_WATERFALL_H
#include <global.h>
struct BgDblueWaterfall;
typedef struct BgDblueWaterfall {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x68];
} BgDblueWaterfall; // size = 0x1AC
extern const ActorInit Bg_Dblue_Waterfall_InitVars;
#endif // Z_BG_DBLUE_WATERFALL_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Dkjail_Ivy
z_bg_dkjail_ivy.c

View File

@ -0,0 +1,46 @@
#include "z_bg_dkjail_ivy.h"
#define FLAGS 0x00000000
#define THIS ((BgDkjailIvy*)thisx)
void BgDkjailIvy_Init(Actor* thisx, GlobalContext* globalCtx);
void BgDkjailIvy_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgDkjailIvy_Update(Actor* thisx, GlobalContext* globalCtx);
void BgDkjailIvy_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Dkjail_Ivy_InitVars = {
ACTOR_BG_DKJAIL_IVY,
ACTORTYPE_BG,
FLAGS,
OBJECT_DKJAIL_OBJ,
sizeof(BgDkjailIvy),
(ActorFunc)BgDkjailIvy_Init,
(ActorFunc)BgDkjailIvy_Destroy,
(ActorFunc)BgDkjailIvy_Update,
(ActorFunc)BgDkjailIvy_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dkjail_Ivy_0x80ADE230/func_80ADE230.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dkjail_Ivy_0x80ADE230/BgDkjailIvy_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dkjail_Ivy_0x80ADE230/BgDkjailIvy_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dkjail_Ivy_0x80ADE230/func_80ADE6AC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dkjail_Ivy_0x80ADE230/func_80ADE6C0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dkjail_Ivy_0x80ADE230/func_80ADE734.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dkjail_Ivy_0x80ADE230/func_80ADE748.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dkjail_Ivy_0x80ADE230/func_80ADE7E0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dkjail_Ivy_0x80ADE230/func_80ADE7F4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dkjail_Ivy_0x80ADE230/BgDkjailIvy_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dkjail_Ivy_0x80ADE230/BgDkjailIvy_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_DKJAIL_IVY_H
#define Z_BG_DKJAIL_IVY_H
#include <global.h>
struct BgDkjailIvy;
typedef struct BgDkjailIvy {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x6C];
} BgDkjailIvy; // size = 0x1B0
extern const ActorInit Bg_Dkjail_Ivy_InitVars;
#endif // Z_BG_DKJAIL_IVY_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Dy_Yoseizo
z_bg_dy_yoseizo.c

View File

@ -0,0 +1,71 @@
#include "z_bg_dy_yoseizo.h"
#define FLAGS 0x02000030
#define THIS ((BgDyYoseizo*)thisx)
void BgDyYoseizo_Init(Actor* thisx, GlobalContext* globalCtx);
void BgDyYoseizo_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgDyYoseizo_Update(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Dy_Yoseizo_InitVars = {
ACTOR_BG_DY_YOSEIZO,
ACTORTYPE_PROP,
FLAGS,
OBJECT_DY_OBJ,
sizeof(BgDyYoseizo),
(ActorFunc)BgDyYoseizo_Init,
(ActorFunc)BgDyYoseizo_Destroy,
(ActorFunc)BgDyYoseizo_Update,
(ActorFunc)NULL
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/BgDyYoseizo_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/BgDyYoseizo_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0A96C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0A9E4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0AA40.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0AD50.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0AE1C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0AFDC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0B078.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0B184.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0B290.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0B35C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0B500.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0B5F0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0B75C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0B834.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0B8CC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0BB08.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/BgDyYoseizo_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0BCD8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0BD40.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0BE60.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0BF70.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/func_80A0C270.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_DY_YOSEIZO_H
#define Z_BG_DY_YOSEIZO_H
#include <global.h>
struct BgDyYoseizo;
typedef struct BgDyYoseizo {
/* 0x0000 */ Actor actor;
/* 0x0144 */ char unk_0144[0x33C0];
} BgDyYoseizo; // size = 0x3504
extern const ActorInit Bg_Dy_Yoseizo_InitVars;
#endif // Z_BG_DY_YOSEIZO_H

View File

@ -0,0 +1,2 @@
ovl_Bg_F40_Block
z_bg_f40_block.c

View File

@ -0,0 +1,62 @@
#include "z_bg_f40_block.h"
#define FLAGS 0x00000010
#define THIS ((BgF40Block*)thisx)
void BgF40Block_Init(Actor* thisx, GlobalContext* globalCtx);
void BgF40Block_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgF40Block_Update(Actor* thisx, GlobalContext* globalCtx);
void BgF40Block_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_F40_Block_InitVars = {
ACTOR_BG_F40_BLOCK,
ACTORTYPE_BG,
FLAGS,
OBJECT_F40_OBJ,
sizeof(BgF40Block),
(ActorFunc)BgF40Block_Init,
(ActorFunc)BgF40Block_Destroy,
(ActorFunc)BgF40Block_Update,
(ActorFunc)BgF40Block_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/func_80BC3980.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/func_80BC3A2C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/func_80BC3B00.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/func_80BC3CA4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/func_80BC3D08.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/func_80BC4038.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/BgF40Block_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/BgF40Block_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/func_80BC41AC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/func_80BC4228.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/func_80BC4344.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/func_80BC4380.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/func_80BC43CC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/func_80BC4448.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/func_80BC44F4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/func_80BC4530.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/func_80BC457C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/BgF40Block_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Block_0x80BC3980/BgF40Block_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_F40_BLOCK_H
#define Z_BG_F40_BLOCK_H
#include <global.h>
struct BgF40Block;
typedef struct BgF40Block {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x2C];
} BgF40Block; // size = 0x170
extern const ActorInit Bg_F40_Block_InitVars;
#endif // Z_BG_F40_BLOCK_H

View File

@ -0,0 +1,2 @@
ovl_Bg_F40_Flift
z_bg_f40_flift.c

View File

@ -0,0 +1,36 @@
#include "z_bg_f40_flift.h"
#define FLAGS 0x00000010
#define THIS ((BgF40Flift*)thisx)
void BgF40Flift_Init(Actor* thisx, GlobalContext* globalCtx);
void BgF40Flift_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgF40Flift_Update(Actor* thisx, GlobalContext* globalCtx);
void BgF40Flift_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_F40_Flift_InitVars = {
ACTOR_BG_F40_FLIFT,
ACTORTYPE_BG,
FLAGS,
OBJECT_F40_OBJ,
sizeof(BgF40Flift),
(ActorFunc)BgF40Flift_Init,
(ActorFunc)BgF40Flift_Destroy,
(ActorFunc)BgF40Flift_Update,
(ActorFunc)BgF40Flift_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Flift_0x808D7550/BgF40Flift_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Flift_0x808D7550/BgF40Flift_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Flift_0x808D7550/func_808D75F0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Flift_0x808D7550/func_808D7714.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Flift_0x808D7550/BgF40Flift_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Flift_0x808D7550/BgF40Flift_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_F40_FLIFT_H
#define Z_BG_F40_FLIFT_H
#include <global.h>
struct BgF40Flift;
typedef struct BgF40Flift {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x20];
} BgF40Flift; // size = 0x164
extern const ActorInit Bg_F40_Flift_InitVars;
#endif // Z_BG_F40_FLIFT_H

View File

@ -0,0 +1,2 @@
ovl_Bg_F40_Switch
z_bg_f40_switch.c

View File

@ -0,0 +1,44 @@
#include "z_bg_f40_switch.h"
#define FLAGS 0x00000010
#define THIS ((BgF40Switch*)thisx)
void BgF40Switch_Init(Actor* thisx, GlobalContext* globalCtx);
void BgF40Switch_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgF40Switch_Update(Actor* thisx, GlobalContext* globalCtx);
void BgF40Switch_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_F40_Switch_InitVars = {
ACTOR_BG_F40_SWITCH,
ACTORTYPE_SWITCH,
FLAGS,
OBJECT_F40_SWITCH,
sizeof(BgF40Switch),
(ActorFunc)BgF40Switch_Init,
(ActorFunc)BgF40Switch_Destroy,
(ActorFunc)BgF40Switch_Update,
(ActorFunc)BgF40Switch_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Switch_0x80BC47B0/func_80BC47B0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Switch_0x80BC47B0/BgF40Switch_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Switch_0x80BC47B0/BgF40Switch_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Switch_0x80BC47B0/func_80BC4B20.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Switch_0x80BC47B0/func_80BC4B94.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Switch_0x80BC47B0/func_80BC4BB8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Switch_0x80BC47B0/func_80BC4C68.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Switch_0x80BC47B0/func_80BC4D30.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Switch_0x80BC47B0/BgF40Switch_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Switch_0x80BC47B0/BgF40Switch_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_F40_SWITCH_H
#define Z_BG_F40_SWITCH_H
#include <global.h>
struct BgF40Switch;
typedef struct BgF40Switch {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x24];
} BgF40Switch; // size = 0x168
extern const ActorInit Bg_F40_Switch_InitVars;
#endif // Z_BG_F40_SWITCH_H

View File

@ -0,0 +1,2 @@
ovl_Bg_F40_Swlift
z_bg_f40_swlift.c

View File

@ -0,0 +1,32 @@
#include "z_bg_f40_swlift.h"
#define FLAGS 0x00000010
#define THIS ((BgF40Swlift*)thisx)
void BgF40Swlift_Init(Actor* thisx, GlobalContext* globalCtx);
void BgF40Swlift_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgF40Swlift_Update(Actor* thisx, GlobalContext* globalCtx);
void BgF40Swlift_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_F40_Swlift_InitVars = {
ACTOR_BG_F40_SWLIFT,
ACTORTYPE_BG,
FLAGS,
OBJECT_F40_OBJ,
sizeof(BgF40Swlift),
(ActorFunc)BgF40Swlift_Init,
(ActorFunc)BgF40Swlift_Destroy,
(ActorFunc)BgF40Swlift_Update,
(ActorFunc)BgF40Swlift_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Swlift_0x8096F160/BgF40Swlift_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Swlift_0x8096F160/BgF40Swlift_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Swlift_0x8096F160/BgF40Swlift_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_F40_Swlift_0x8096F160/BgF40Swlift_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_F40_SWLIFT_H
#define Z_BG_F40_SWLIFT_H
#include <global.h>
struct BgF40Swlift;
typedef struct BgF40Swlift {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x1C];
} BgF40Swlift; // size = 0x160
extern const ActorInit Bg_F40_Swlift_InitVars;
#endif // Z_BG_F40_SWLIFT_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Fire_Wall
z_bg_fire_wall.c

View File

@ -0,0 +1,45 @@
#include "z_bg_fire_wall.h"
#define FLAGS 0x00000000
#define THIS ((BgFireWall*)thisx)
void BgFireWall_Init(Actor* thisx, GlobalContext* globalCtx);
void BgFireWall_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgFireWall_Update(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Fire_Wall_InitVars = {
ACTOR_BG_FIRE_WALL,
ACTORTYPE_BG,
FLAGS,
OBJECT_FWALL,
sizeof(BgFireWall),
(ActorFunc)BgFireWall_Init,
(ActorFunc)BgFireWall_Destroy,
(ActorFunc)BgFireWall_Update,
(ActorFunc)NULL
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Fire_Wall_0x809AC4B0/BgFireWall_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Fire_Wall_0x809AC4B0/BgFireWall_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Fire_Wall_0x809AC4B0/func_809AC5C0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Fire_Wall_0x809AC4B0/func_809AC638.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Fire_Wall_0x809AC4B0/func_809AC68C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Fire_Wall_0x809AC4B0/func_809AC6C0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Fire_Wall_0x809AC4B0/func_809AC760.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Fire_Wall_0x809AC4B0/func_809AC7F8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Fire_Wall_0x809AC4B0/func_809AC970.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Fire_Wall_0x809AC4B0/BgFireWall_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Fire_Wall_0x809AC4B0/func_809ACB28.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_FIRE_WALL_H
#define Z_BG_FIRE_WALL_H
#include <global.h>
struct BgFireWall;
typedef struct BgFireWall {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x6C];
} BgFireWall; // size = 0x1B0
extern const ActorInit Bg_Fire_Wall_InitVars;
#endif // Z_BG_FIRE_WALL_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Fu_Kaiten
z_bg_fu_kaiten.c

View File

@ -0,0 +1,74 @@
#include "z_bg_fu_kaiten.h"
#define FLAGS 0x00000030
#define THIS ((BgFuKaiten*)thisx)
void BgFuKaiten_Init(Actor* thisx, GlobalContext* globalCtx);
void BgFuKaiten_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgFuKaiten_Update(Actor* thisx, GlobalContext* globalCtx);
void BgFuKaiten_Draw(Actor* thisx, GlobalContext* globalCtx);
const ActorInit Bg_Fu_Kaiten_InitVars = {
ACTOR_BG_FU_KAITEN,
ACTORTYPE_BG,
FLAGS,
OBJECT_FU_KAITEN,
sizeof(BgFuKaiten),
(ActorFunc)BgFuKaiten_Init,
(ActorFunc)BgFuKaiten_Destroy,
(ActorFunc)BgFuKaiten_Update,
(ActorFunc)BgFuKaiten_Draw
};
void BgFuKaiten_Init(Actor* thisx, GlobalContext* globalCtx) {
UNK_TYPE pad0;
UNK_TYPE pad1;
BgMeshHeader* header = 0;
Actor_SetScale(thisx, 1.0);
BcCheck3_BgActorInit(&THIS->bg, 3);
BgCheck_RelocateMeshHeader(&object_fu_kaiten_002D30, &header);
THIS->bg.dynaPolyId = BgCheck_AddActorMesh(globalCtx, &globalCtx->colCtx.dyna, &THIS->bg, header);
THIS->bouceHeight = 0.0;
THIS->rotationSpeed = 0;
THIS->bounceSpeed = 0;
THIS->bounce = 0;
}
void BgFuKaiten_Destroy(Actor* thisx, GlobalContext* globalCtx) {
BgCheck_RemoveActorMesh(globalCtx, &globalCtx->colCtx.dyna, THIS->bg.dynaPolyId);
}
void BgFuKaiten_UpdateRotation(BgFuKaiten* this) {
f32 f0;
this->bg.actor.shape.rot.y += this->rotationSpeed;
if (this->rotationSpeed > 0)
{
f0 = this->rotationSpeed * .002f;
func_8019FAD8(&this->bg.actor.unkEC, 8310, f0);
}
}
void BgFuKaiten_UpdateHeight(BgFuKaiten* this) {
this->bounce += this->bounceSpeed;
this->bg.actor.currPosRot.pos.y = this->bg.actor.initPosRot.pos.y + this->elevation + this->bouceHeight;
this->bg.actor.currPosRot.pos.y -= this->bouceHeight * Math_Coss(this->bounce);
}
void BgFuKaiten_Update(Actor* thisx, GlobalContext* globalCtx) {
BgFuKaiten_UpdateRotation(THIS);
BgFuKaiten_UpdateHeight(THIS);
}
void BgFuKaiten_Draw(Actor* thisx, GlobalContext* globalCtx) {
GraphicsContext* gfxCtx = globalCtx->state.gfxCtx;
UNK_TYPE pad;
func_8012C28C(gfxCtx);
gSPMatrix(gfxCtx->polyOpa.p++, SysMatrix_AppendStateToPolyOpaDisp(globalCtx->state.gfxCtx), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(gfxCtx->polyOpa.p++, object_fu_kaiten_0005D0);
}

View File

@ -0,0 +1,21 @@
#ifndef Z_BG_FU_KAITEN_H
#define Z_BG_FU_KAITEN_H
#include <global.h>
struct BgFuKaiten;
typedef struct BgFuKaiten {
/* 0x000 */ DynaPolyActor bg;
/* 0x15C */ UNK_TYPE1 pad15C[0x4];
/* 0x160 */ f32 elevation;
/* 0x164 */ f32 bouceHeight;
/* 0x168 */ s16 rotationSpeed;
/* 0x16A */ s16 bounceSpeed;
/* 0x16C */ s16 bounce;
/* 0x16E */ UNK_TYPE1 pad16E[0x2];
} BgFuKaiten; // size = 0x170
extern const ActorInit Bg_Fu_Kaiten_InitVars;
#endif // Z_BG_FU_KAITEN_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Fu_Mizu
z_bg_fu_mizu.c

View File

@ -0,0 +1,34 @@
#include "z_bg_fu_mizu.h"
#define FLAGS 0x00000030
#define THIS ((BgFuMizu*)thisx)
void BgFuMizu_Init(Actor* thisx, GlobalContext* globalCtx);
void BgFuMizu_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgFuMizu_Update(Actor* thisx, GlobalContext* globalCtx);
void BgFuMizu_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Fu_Mizu_InitVars = {
ACTOR_BG_FU_MIZU,
ACTORTYPE_BG,
FLAGS,
OBJECT_FU_KAITEN,
sizeof(BgFuMizu),
(ActorFunc)BgFuMizu_Init,
(ActorFunc)BgFuMizu_Destroy,
(ActorFunc)BgFuMizu_Update,
(ActorFunc)BgFuMizu_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Fu_Mizu_0x80ADAAF0/BgFuMizu_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Fu_Mizu_0x80ADAAF0/BgFuMizu_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Fu_Mizu_0x80ADAAF0/func_80ADABA4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Fu_Mizu_0x80ADAAF0/BgFuMizu_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Fu_Mizu_0x80ADAAF0/BgFuMizu_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_FU_MIZU_H
#define Z_BG_FU_MIZU_H
#include <global.h>
struct BgFuMizu;
typedef struct BgFuMizu {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x20];
} BgFuMizu; // size = 0x164
extern const ActorInit Bg_Fu_Mizu_InitVars;
#endif // Z_BG_FU_MIZU_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Goron_Oyu
z_bg_goron_oyu.c

View File

@ -0,0 +1,48 @@
#include "z_bg_goron_oyu.h"
#define FLAGS 0x00000030
#define THIS ((BgGoronOyu*)thisx)
void BgGoronOyu_Init(Actor* thisx, GlobalContext* globalCtx);
void BgGoronOyu_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgGoronOyu_Update(Actor* thisx, GlobalContext* globalCtx);
void BgGoronOyu_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Goron_Oyu_InitVars = {
ACTOR_BG_GORON_OYU,
ACTORTYPE_BG,
FLAGS,
OBJECT_OYU,
sizeof(BgGoronOyu),
(ActorFunc)BgGoronOyu_Init,
(ActorFunc)BgGoronOyu_Destroy,
(ActorFunc)BgGoronOyu_Update,
(ActorFunc)BgGoronOyu_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Goron_Oyu_0x80B40080/func_80B40080.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Goron_Oyu_0x80B40080/func_80B4009C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Goron_Oyu_0x80B40080/func_80B400C8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Goron_Oyu_0x80B40080/func_80B40100.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Goron_Oyu_0x80B40080/func_80B40160.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Goron_Oyu_0x80B40080/func_80B401F8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Goron_Oyu_0x80B40080/func_80B40308.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Goron_Oyu_0x80B40080/func_80B40394.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Goron_Oyu_0x80B40080/BgGoronOyu_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Goron_Oyu_0x80B40080/BgGoronOyu_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Goron_Oyu_0x80B40080/BgGoronOyu_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Goron_Oyu_0x80B40080/BgGoronOyu_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_GORON_OYU_H
#define Z_BG_GORON_OYU_H
#include <global.h>
struct BgGoronOyu;
typedef struct BgGoronOyu {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x3C];
} BgGoronOyu; // size = 0x180
extern const ActorInit Bg_Goron_Oyu_InitVars;
#endif // Z_BG_GORON_OYU_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Haka_Bombwall
z_bg_haka_bombwall.c

View File

@ -0,0 +1,48 @@
#include "z_bg_haka_bombwall.h"
#define FLAGS 0x00000000
#define THIS ((BgHakaBombwall*)thisx)
void BgHakaBombwall_Init(Actor* thisx, GlobalContext* globalCtx);
void BgHakaBombwall_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgHakaBombwall_Update(Actor* thisx, GlobalContext* globalCtx);
void BgHakaBombwall_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Haka_Bombwall_InitVars = {
ACTOR_BG_HAKA_BOMBWALL,
ACTORTYPE_BG,
FLAGS,
OBJECT_HAKA_OBJ,
sizeof(BgHakaBombwall),
(ActorFunc)BgHakaBombwall_Init,
(ActorFunc)BgHakaBombwall_Destroy,
(ActorFunc)BgHakaBombwall_Update,
(ActorFunc)BgHakaBombwall_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Bombwall_0x80BD5E00/func_80BD5E00.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Bombwall_0x80BD5E00/func_80BD5E6C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Bombwall_0x80BD5E00/BgHakaBombwall_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Bombwall_0x80BD5E00/BgHakaBombwall_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Bombwall_0x80BD5E00/func_80BD6260.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Bombwall_0x80BD5E00/func_80BD6274.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Bombwall_0x80BD5E00/func_80BD62D0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Bombwall_0x80BD5E00/func_80BD6314.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Bombwall_0x80BD5E00/func_80BD63B4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Bombwall_0x80BD5E00/func_80BD63D0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Bombwall_0x80BD5E00/BgHakaBombwall_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Bombwall_0x80BD5E00/BgHakaBombwall_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_HAKA_BOMBWALL_H
#define Z_BG_HAKA_BOMBWALL_H
#include <global.h>
struct BgHakaBombwall;
typedef struct BgHakaBombwall {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x6C];
} BgHakaBombwall; // size = 0x1B0
extern const ActorInit Bg_Haka_Bombwall_InitVars;
#endif // Z_BG_HAKA_BOMBWALL_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Haka_Curtain
z_bg_haka_curtain.c

View File

@ -0,0 +1,52 @@
#include "z_bg_haka_curtain.h"
#define FLAGS 0x00000010
#define THIS ((BgHakaCurtain*)thisx)
void BgHakaCurtain_Init(Actor* thisx, GlobalContext* globalCtx);
void BgHakaCurtain_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgHakaCurtain_Update(Actor* thisx, GlobalContext* globalCtx);
void BgHakaCurtain_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Haka_Curtain_InitVars = {
ACTOR_BG_HAKA_CURTAIN,
ACTORTYPE_BG,
FLAGS,
OBJECT_HAKA_OBJ,
sizeof(BgHakaCurtain),
(ActorFunc)BgHakaCurtain_Init,
(ActorFunc)BgHakaCurtain_Destroy,
(ActorFunc)BgHakaCurtain_Update,
(ActorFunc)BgHakaCurtain_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Curtain_0x80B6DBE0/BgHakaCurtain_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Curtain_0x80B6DBE0/BgHakaCurtain_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Curtain_0x80B6DBE0/func_80B6DC98.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Curtain_0x80B6DBE0/func_80B6DCAC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Curtain_0x80B6DBE0/func_80B6DCEC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Curtain_0x80B6DBE0/func_80B6DD00.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Curtain_0x80B6DBE0/func_80B6DD5C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Curtain_0x80B6DBE0/func_80B6DD70.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Curtain_0x80B6DBE0/func_80B6DD80.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Curtain_0x80B6DBE0/func_80B6DD9C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Curtain_0x80B6DBE0/func_80B6DE80.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Curtain_0x80B6DBE0/func_80B6DEA8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Curtain_0x80B6DBE0/BgHakaCurtain_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Curtain_0x80B6DBE0/BgHakaCurtain_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_HAKA_CURTAIN_H
#define Z_BG_HAKA_CURTAIN_H
#include <global.h>
struct BgHakaCurtain;
typedef struct BgHakaCurtain {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x1C];
} BgHakaCurtain; // size = 0x160
extern const ActorInit Bg_Haka_Curtain_InitVars;
#endif // Z_BG_HAKA_CURTAIN_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Haka_Tomb
z_bg_haka_tomb.c

View File

@ -0,0 +1,46 @@
#include "z_bg_haka_tomb.h"
#define FLAGS 0x00000000
#define THIS ((BgHakaTomb*)thisx)
void BgHakaTomb_Init(Actor* thisx, GlobalContext* globalCtx);
void BgHakaTomb_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgHakaTomb_Update(Actor* thisx, GlobalContext* globalCtx);
void BgHakaTomb_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Haka_Tomb_InitVars = {
ACTOR_BG_HAKA_TOMB,
ACTORTYPE_BG,
FLAGS,
OBJECT_HAKA_OBJ,
sizeof(BgHakaTomb),
(ActorFunc)BgHakaTomb_Init,
(ActorFunc)BgHakaTomb_Destroy,
(ActorFunc)BgHakaTomb_Update,
(ActorFunc)BgHakaTomb_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Tomb_0x80BD6580/BgHakaTomb_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Tomb_0x80BD6580/BgHakaTomb_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Tomb_0x80BD6580/func_80BD6624.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Tomb_0x80BD6580/func_80BD6638.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Tomb_0x80BD6580/func_80BD66AC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Tomb_0x80BD6580/func_80BD6754.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Tomb_0x80BD6580/func_80BD6768.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Tomb_0x80BD6580/func_80BD67A8.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Tomb_0x80BD6580/func_80BD67BC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Tomb_0x80BD6580/BgHakaTomb_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Haka_Tomb_0x80BD6580/BgHakaTomb_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_HAKA_TOMB_H
#define Z_BG_HAKA_TOMB_H
#include <global.h>
struct BgHakaTomb;
typedef struct BgHakaTomb {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x20];
} BgHakaTomb; // size = 0x164
extern const ActorInit Bg_Haka_Tomb_InitVars;
#endif // Z_BG_HAKA_TOMB_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Hakugin_Bombwall
z_bg_hakugin_bombwall.c

View File

@ -0,0 +1,50 @@
#include "z_bg_hakugin_bombwall.h"
#define FLAGS 0x00000000
#define THIS ((BgHakuginBombwall*)thisx)
void BgHakuginBombwall_Init(Actor* thisx, GlobalContext* globalCtx);
void BgHakuginBombwall_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgHakuginBombwall_Update(Actor* thisx, GlobalContext* globalCtx);
void BgHakuginBombwall_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Hakugin_Bombwall_InitVars = {
ACTOR_BG_HAKUGIN_BOMBWALL,
ACTORTYPE_BG,
FLAGS,
OBJECT_HAKUGIN_OBJ,
sizeof(BgHakuginBombwall),
(ActorFunc)BgHakuginBombwall_Init,
(ActorFunc)BgHakuginBombwall_Destroy,
(ActorFunc)BgHakuginBombwall_Update,
(ActorFunc)BgHakuginBombwall_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Bombwall_0x80ABBFC0/func_80ABBFC0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Bombwall_0x80ABBFC0/func_80ABC2E0.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Bombwall_0x80ABBFC0/func_80ABC58C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Bombwall_0x80ABBFC0/func_80ABC7FC.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Bombwall_0x80ABBFC0/BgHakuginBombwall_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Bombwall_0x80ABBFC0/BgHakuginBombwall_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Bombwall_0x80ABBFC0/func_80ABCB5C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Bombwall_0x80ABBFC0/func_80ABCC00.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Bombwall_0x80ABBFC0/func_80ABCCE4.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Bombwall_0x80ABBFC0/func_80ABCD98.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Bombwall_0x80ABBFC0/func_80ABCE60.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Bombwall_0x80ABBFC0/BgHakuginBombwall_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Bombwall_0x80ABBFC0/BgHakuginBombwall_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_HAKUGIN_BOMBWALL_H
#define Z_BG_HAKUGIN_BOMBWALL_H
#include <global.h>
struct BgHakuginBombwall;
typedef struct BgHakuginBombwall {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x6C];
} BgHakuginBombwall; // size = 0x1B0
extern const ActorInit Bg_Hakugin_Bombwall_InitVars;
#endif // Z_BG_HAKUGIN_BOMBWALL_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Hakugin_Elvpole
z_bg_hakugin_elvpole.c

View File

@ -0,0 +1,34 @@
#include "z_bg_hakugin_elvpole.h"
#define FLAGS 0x00000010
#define THIS ((BgHakuginElvpole*)thisx)
void BgHakuginElvpole_Init(Actor* thisx, GlobalContext* globalCtx);
void BgHakuginElvpole_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgHakuginElvpole_Update(Actor* thisx, GlobalContext* globalCtx);
void BgHakuginElvpole_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Bg_Hakugin_Elvpole_InitVars = {
ACTOR_BG_HAKUGIN_ELVPOLE,
ACTORTYPE_BG,
FLAGS,
OBJECT_HAKUGIN_OBJ,
sizeof(BgHakuginElvpole),
(ActorFunc)BgHakuginElvpole_Init,
(ActorFunc)BgHakuginElvpole_Destroy,
(ActorFunc)BgHakuginElvpole_Update,
(ActorFunc)BgHakuginElvpole_Draw
};
*/
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Elvpole_0x80ABD830/BgHakuginElvpole_Init.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Elvpole_0x80ABD830/BgHakuginElvpole_Destroy.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Elvpole_0x80ABD830/func_80ABD92C.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Elvpole_0x80ABD830/BgHakuginElvpole_Update.asm")
GLOBAL_ASM("asm/non_matchings/ovl_Bg_Hakugin_Elvpole_0x80ABD830/BgHakuginElvpole_Draw.asm")

View File

@ -0,0 +1,15 @@
#ifndef Z_BG_HAKUGIN_ELVPOLE_H
#define Z_BG_HAKUGIN_ELVPOLE_H
#include <global.h>
struct BgHakuginElvpole;
typedef struct BgHakuginElvpole {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x24];
} BgHakuginElvpole; // size = 0x168
extern const ActorInit Bg_Hakugin_Elvpole_InitVars;
#endif // Z_BG_HAKUGIN_ELVPOLE_H

View File

@ -0,0 +1,2 @@
ovl_Bg_Hakugin_Post
z_bg_hakugin_post.c

Some files were not shown because too many files have changed in this diff Show More