Door_Warp1 (2 non-matching) (#347)

* Door_Warp1

* Rebase

* Rebase

* PR

* Object

* Format

* Undef

* def more

* Whoops
This commit is contained in:
Maide 2021-12-27 01:25:39 +00:00 committed by GitHub
parent 56101f9dc9
commit cee404f6b2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 1170 additions and 98 deletions

View File

@ -54,6 +54,6 @@
<Texture Name="object_warp1_TLUT_0078C0" OutName="tlut_0078C0" Format="rgba16" Width="4" Height="4" Offset="0x78C0" />
<Texture Name="object_warp1_Tex_0078E0" OutName="tex_0078E0" Format="ci4" Width="64" Height="64" Offset="0x78E0" />
<Texture Name="object_warp1_Tex_0080E0" OutName="tex_0080E0" Format="ci4" Width="64" Height="64" Offset="0x80E0" />
<!-- <Blob Name="object_warp1_Blob_0088E0" Size="0x320" Offset="0x88E0" /> -->
<Collision Name="object_warp1_Colheader_008BD4" Offset="0x8BD4" />
</File>
</Root>

View File

@ -3005,7 +3005,7 @@ void func_80169E6C(GlobalContext* globalCtx, s32 param_1, s32 param_2);
// void func_80169ECC(void);
void func_80169EFC(GlobalContext* globalCtx);
void func_80169F78(GlobalContext* globalCtx);
// void func_80169FDC(void);
void func_80169FDC(GlobalContext* globalCtx);
// void func_80169FFC(void);
s32 FrameAdvance_IsEnabled(GlobalContext* globalCtx);
// UNK_TYPE4 func_8016A02C(s32 param_1, s32 param_2, s16* param_3);

View File

@ -3227,7 +3227,7 @@ extern GameInfo* gGameInfo;
// extern UNK_TYPE2 D_801F4DCC[8];
// extern UNK_TYPE1 D_801F4DDC;
// extern UNK_TYPE1 D_801F4DE0;
// extern UNK_TYPE2 D_801F4DE2;
extern s16 D_801F4DE2;
extern ActorCutscene* actorCutscenes;
extern s16 actorCutsceneCount;
extern u8 actorCutsceneWaiting[16];

6
spec
View File

@ -1055,9 +1055,11 @@ beginseg
name "ovl_Door_Warp1"
compress
include "build/src/overlays/actors/ovl_Door_Warp1/z_door_warp1.o"
include "build/data/ovl_Door_Warp1/ovl_Door_Warp1.data.o"
include "build/data/ovl_Door_Warp1/ovl_Door_Warp1.bss.o"
#ifdef NON_MATCHING
include "build/src/overlays/actors/ovl_Door_Warp1/ovl_Door_Warp1_reloc.o"
#else
include "build/data/ovl_Door_Warp1/ovl_Door_Warp1.reloc.o"
#endif
endseg
beginseg

View File

@ -1820,7 +1820,7 @@ void func_809DD934(Boss02* this, GlobalContext* globalCtx) {
if (D_809E0434 != NULL) {
D_809E0434->unk_203 = 0;
D_809E0434->unk_204 = 1.0f;
D_809E0434->actor.world.pos.y = 60.0f;
D_809E0434->dyna.actor.world.pos.y = 60.0f;
}
player->actor.world.pos.x *= 10.0f;
@ -1892,7 +1892,7 @@ void func_809DD934(Boss02* this, GlobalContext* globalCtx) {
if (D_809E0434 != 0) {
D_809E0434->unk_203 = 1;
D_809E0434->unk_204 = 0.1f;
D_809E0434->actor.world.pos.y = 3155.0f;
D_809E0434->dyna.actor.world.pos.y = 3155.0f;
}
player->actor.world.pos.x *= 0.1f;

View File

@ -10,7 +10,10 @@ typedef void (*DmHinaActionFunc)(struct DmHina*, GlobalContext*);
typedef struct DmHina {
/* 0x0000 */ Actor actor;
/* 0x0144 */ DmHinaActionFunc actionFunc;
/* 0x0148 */ char unk_148[0x3C];
/* 0x0148 */ char unk_148[0x10];
/* 0x0158 */ f32 unk_158;
/* 0x015C */ f32 unk_15C;
/* 0x0160 */ char unk_160[0x24];
} DmHina; // size = 0x184
extern const ActorInit Dm_Hina_InitVars;

File diff suppressed because it is too large Load Diff

View File

@ -2,19 +2,58 @@
#define Z_DOOR_WARP1_H
#include "global.h"
#include "overlays/actors/ovl_Dm_Hina/z_dm_hina.h"
struct DoorWarp1;
typedef void (*DoorWarp1ActionFunc)(struct DoorWarp1*, GlobalContext*);
#define DOORWARP1_GET_FF(thisx) ((thisx)->params & 0xFF)
#define DOORWARP1_GET_FF00_1(thisx) (((thisx)->params >> 8) & 0xFF)
#define DOORWARP1_GET_FF00_2(thisx) ((thisx)->params & 0xFF00)
#define DOORWARP1_GET_FF00_3(thisx) ((thisx)->params >> 8)
enum {
/* 0 */ ENDOORWARP1_FF_0,
/* 1 */ ENDOORWARP1_FF_1,
/* 2 */ ENDOORWARP1_FF_2,
/* 3 */ ENDOORWARP1_FF_3,
/* 4 */ ENDOORWARP1_FF_4,
/* 5 */ ENDOORWARP1_FF_5,
/* 6 */ ENDOORWARP1_FF_6,
};
typedef struct DoorWarp1 {
/* 0x0000 */ Actor actor;
/* 0x0144 */ char unk_144[0x94];
/* 0x0000 */ DynaPolyActor dyna;
/* 0x015C */ SkelAnime skelAnime;
/* 0x01A0 */ DmHina* unk_1A0;
/* 0x01A4 */ f32 unk_1A4;
/* 0x01A8 */ f32 unk_1A8;
/* 0x01AC */ f32 unk_1AC;
/* 0x01B0 */ f32 unk_1B0;
/* 0x01B4 */ f32 unk_1B4;
/* 0x01B8 */ f32 unk_1B8;
/* 0x01BC */ f32 unk_1BC;
/* 0x01C0 */ f32 unk_1C0;
/* 0x01C4 */ s16 unk_1C4;
/* 0x01C6 */ s16 unk_1C6;
/* 0x01C8 */ s16 unk_1C8;
/* 0x01CA */ s16 unk_1CA;
/* 0x01CC */ s16 unk_1CC;
/* 0x01CE */ s16 unk_1CE;
/* 0x01D0 */ u16 unk_1D0;
/* 0x01D2 */ s8 unk_1D2;
/* 0x01D3 */ u8 unk_1D3;
/* 0x01D4 */ u8 unk_1D4;
/* 0x01D8 */ DoorWarp1ActionFunc actionFunc;
/* 0x01DC */ char unk_1DC[0x27];
/* 0x01DC */ LightNode* unk_1DC;
/* 0x01E0 */ LightInfo unk_1E0;
/* 0x01F0 */ LightNode* unk_1F0;
/* 0x01F4 */ LightInfo unk_1F4;
/* 0x0202 */ u8 unk_202;
/* 0x0203 */ u8 unk_203;
/* 0x0204 */ f32 unk_204;
/* 0x0208 */ char unk_208[0x4];
/* 0x0208 */ u8 unk_208;
} DoorWarp1; // size = 0x20C
extern const ActorInit Door_Warp1_InitVars;

View File

@ -6735,10 +6735,8 @@
0x808BBB20:("Door_Warp1_InitVars","UNK_TYPE1","",0x1),
0x808BBB40:("D_808BBB40","UNK_TYPE1","",0x1),
0x808BBB50:("D_808BBB50","UNK_TYPE4","",0x4),
0x808BBB5C:("D_808BBB5C","f32","",0x4),
0x808BBB64:("D_808BBB64","f32","",0x4),
0x808BBB68:("D_808BBB68","UNK_TYPE1","",0x1),
0x808BBB6C:("D_808BBB6C","f32","",0x4),
0x808BBB5C:("D_808BBB5C","Vec3f","",0xC),
0x808BBB68:("D_808BBB68","Vec3f","",0xC),
0x808BBB80:("jtbl_808BBB80","UNK_PTR","",0x4),
0x808BBB98:("jtbl_808BBB98","UNK_PTR","",0x4),
0x808BBBB4:("D_808BBBB4","f32","",0x4),

View File

@ -1479,17 +1479,11 @@ D_06013EA8 = 0x06013EA8;
// ovl_Door_Warp1
D_060001A0 = 0x060001A0;
D_06001374 = 0x06001374;
D_06002CA8 = 0x06002CA8;
D_06003230 = 0x06003230;
D_060044D8 = 0x060044D8;
D_06004690 = 0x06004690;
D_060057D8 = 0x060057D8;
D_060058C8 = 0x060058C8;
D_06007238 = 0x06007238;
D_060076C0 = 0x060076C0;
D_06008BD4 = 0x06008BD4;
// ovl_Effect_En_Ice_Block