obj_visiblock OK (#93)

* obj_visiblock OK

* re-oked obj_visiblock

* removed unnecessary pad
This commit is contained in:
kyleburnette 2021-05-03 15:07:08 -07:00 committed by GitHub
parent 0d4e4ffc38
commit a91eaad34c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 32 additions and 9 deletions

View File

@ -6001,9 +6001,9 @@ SECTIONS
ovl_Obj_Visiblock : AT(RomLocation)
{
build/src/overlays/actors/ovl_Obj_Visiblock/z_obj_visiblock.o(.text)
build/asm/overlays/ovl_Obj_Visiblock_data.o(.data)
build/src/overlays/actors/ovl_Obj_Visiblock/z_obj_visiblock.o(.data)
build/src/overlays/actors/ovl_Obj_Visiblock/z_obj_visiblock.o(.rodata)
build/asm/overlays/ovl_Obj_Visiblock_rodata.o(.rodata)
build/src/overlays/actors/ovl_Obj_Visiblock/z_obj_visiblock_overlay.o(.ovl)
}
SegmentEnd = .;
SegmentSize = SegmentEnd - SegmentStart;

View File

@ -173,6 +173,10 @@ D_06009278 = 0x06009278;
D_06012B70 = 0x06012B70;
D_06013EA8 = 0x06013EA8;
/* z_obj_visiblock */
D_06000AD0 = 0x06000AD0;
D_06000140 = 0x06000140;
/* bg_lotus */
D_06000A20 = 0x06000A20;
D_06000040 = 0x06000040;

View File

@ -8,7 +8,6 @@ void ObjVisiblock_Init(Actor* thisx, GlobalContext* globalCtx);
void ObjVisiblock_Destroy(Actor* thisx, GlobalContext* globalCtx);
void ObjVisiblock_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
const ActorInit Obj_Visiblock_InitVars = {
ACTOR_OBJ_VISIBLOCK,
ACTORCAT_BG,
@ -20,10 +19,31 @@ const ActorInit Obj_Visiblock_InitVars = {
(ActorFunc)func_800BDFB0,
(ActorFunc)ObjVisiblock_Draw
};
*/
#pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Visiblock_0x80ADEA70/ObjVisiblock_Init.asm")
static InitChainEntry D_80ADEB50[] = {
ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE),
ICHAIN_F32(uncullZoneScale, 200, ICHAIN_CONTINUE),
ICHAIN_F32(uncullZoneDownward, 150, ICHAIN_CONTINUE),
ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP),
};
#pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Visiblock_0x80ADEA70/ObjVisiblock_Destroy.asm")
extern CollisionHeader D_06000AD0;
extern UNK_TYPE D_06000140;
#pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Visiblock_0x80ADEA70/ObjVisiblock_Draw.asm")
void ObjVisiblock_Init(Actor* thisx, GlobalContext* globalCtx) {
ObjVisiblock* this = THIS;
Actor_ProcessInitChain(this, D_80ADEB50);
BcCheck3_BgActorInit(&this->dyna, 0);
BgCheck3_LoadMesh(globalCtx, &this->dyna, &D_06000AD0);
}
void ObjVisiblock_Destroy(Actor* thisx, GlobalContext* globalCtx) {
ObjVisiblock* this = THIS;
BgCheck_RemoveActorMesh(globalCtx, &globalCtx->colCtx.dyna, this->dyna.bgId);
}
void ObjVisiblock_Draw(Actor* thisx, GlobalContext* globalCtx) {
func_800BE03C(globalCtx, &D_06000140);
}

View File

@ -6,8 +6,7 @@
struct ObjVisiblock;
typedef struct ObjVisiblock {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x1C];
/* 0x000 */ DynaPolyActor dyna;
} ObjVisiblock; // size = 0x160
extern const ActorInit Obj_Visiblock_InitVars;