mirror of
https://github.com/zeldaret/oot.git
synced 2025-06-08 01:21:52 +00:00
Merge e6b79a0470
into 484abb1d39
This commit is contained in:
commit
81d8403a9a
3 changed files with 471 additions and 415 deletions
|
@ -1085,7 +1085,7 @@ s32 OnePointCutscene_SetInfo(PlayState* play, s16 subCamId, s16 csId, Actor* act
|
||||||
D_801211D4[0].atTargetInit.x = actor->focus.pos.x;
|
D_801211D4[0].atTargetInit.x = actor->focus.pos.x;
|
||||||
D_801211D4[0].atTargetInit.y = actor->focus.pos.y - 5.0f;
|
D_801211D4[0].atTargetInit.y = actor->focus.pos.y - 5.0f;
|
||||||
D_801211D4[0].atTargetInit.z = actor->focus.pos.z;
|
D_801211D4[0].atTargetInit.z = actor->focus.pos.z;
|
||||||
spC0 = ((EnSw*)actor)->unk_364;
|
spC0 = ((EnSw*)actor)->surfaceNormal;
|
||||||
PRINTF("%s(%d): xyz_t: %s (%f %f %f)\n", "../z_onepointdemo.c", 1671, "&cp", spC0.x, spC0.y, spC0.z);
|
PRINTF("%s(%d): xyz_t: %s (%f %f %f)\n", "../z_onepointdemo.c", 1671, "&cp", spC0.x, spC0.y, spC0.z);
|
||||||
D_801211D4[0].eyeTargetInit.x = (actor->focus.pos.x + (120.0f * spC0.x)) - (Rand_ZeroOne() * 20.0f);
|
D_801211D4[0].eyeTargetInit.x = (actor->focus.pos.x + (120.0f * spC0.x)) - (Rand_ZeroOne() * 20.0f);
|
||||||
D_801211D4[0].eyeTargetInit.y = actor->focus.pos.y + (120.0f * spC0.y) + 20.0f;
|
D_801211D4[0].eyeTargetInit.y = actor->focus.pos.y + (120.0f * spC0.y) + 20.0f;
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -14,39 +14,51 @@ typedef struct EnSw {
|
||||||
/* 0x0190 */ EnSwActionFunc actionFunc;
|
/* 0x0190 */ EnSwActionFunc actionFunc;
|
||||||
/* 0x0194 */ ColliderJntSph collider;
|
/* 0x0194 */ ColliderJntSph collider;
|
||||||
/* 0x01B4 */ ColliderJntSphElement colliderElements[1];
|
/* 0x01B4 */ ColliderJntSphElement colliderElements[1];
|
||||||
/* 0x01F4 */ Color_RGBA8 unk_1F4;
|
/* 0x01F4 */ Color_RGBA8 limb4Color; // never set past black.
|
||||||
/* 0x01F8 */ Vec3s jointTable[30];
|
/* 0x01F8 */ Vec3s jointTable[30];
|
||||||
/* 0x02AC */ Vec3s morphTable[30];
|
/* 0x02AC */ Vec3s morphTable[30];
|
||||||
/* 0x0360 */ u8 unk_360;
|
/* 0x0360 */ u8 goldInAir; // set when revealed, unset when landing.
|
||||||
/* 0x0364 */ Vec3f unk_364;
|
/* 0x0364 */ Vec3f surfaceNormal; // normal of wall/floor/ceiling it's on.
|
||||||
/* 0x0370 */ Vec3f unk_370;
|
/* 0x0370 */ Vec3f unk_370; // used for rotate calculation
|
||||||
/* 0x037C */ Vec3f unk_37C;
|
/* 0x037C */ Vec3f unk_37C; // used for rotate calculation
|
||||||
/* 0x0388 */ s16 unk_388;
|
/* 0x0388 */ s16 animTimer;
|
||||||
/* 0x038A */ s16 unk_38A;
|
/* 0x038A */ s16 animVar; // used to determine crawl and "death bounce" animations.
|
||||||
/* 0x038C */ s16 unk_38C;
|
/* 0x038C */ s16 waitTimer;
|
||||||
/* 0x038E */ s16 unk_38E;
|
/* 0x038E */ s16 crawlTimer;
|
||||||
/* 0x0390 */ s16 unk_390;
|
/* 0x0390 */ s16 attackTimer;
|
||||||
/* 0x0392 */ s16 unk_392;
|
/* 0x0392 */ s16 painTimer;
|
||||||
/* 0x0394 */ s16 unk_394;
|
/* 0x0394 */ s16 deathFlames;
|
||||||
/* 0x0396 */ char unk_396[0x42];
|
/* 0x0396 */ char unk_396[0x42]; //another Mtx(F)?
|
||||||
/* 0x03D8 */ MtxF unk_3D8;
|
/* 0x03D8 */ MtxF rotMtxF;
|
||||||
/* 0x0418 */ char unk_418[8];
|
/* 0x0418 */ char unk_418[8];
|
||||||
/* 0x0420 */ f32 unk_420;
|
/* 0x0420 */ f32 rotateMag;
|
||||||
/* 0x0424 */ char unk_424[0x8];
|
/* 0x0424 */ char unk_424[0x8];
|
||||||
/* 0x042C */ u8 unk_42C;
|
/* 0x042C */ u8 moveGoldBool; // set during EnSw_MoveGold, rever read.
|
||||||
/* 0x0430 */ struct CollisionPoly* unk_430;
|
/* 0x0430 */ struct CollisionPoly* wallPoly;
|
||||||
/* 0x0434 */ Vec3f unk_434;
|
/* 0x0434 */ Vec3f unk_434; // set during EnSW_LineTestWall, never read. another target pos?
|
||||||
/* 0x0440 */ s16 unk_440;
|
/* 0x0440 */ s16 sfxTimer;
|
||||||
/* 0x0442 */ s16 unk_442;
|
/* 0x0442 */ s16 dashTimer;
|
||||||
/* 0x0444 */ s16 unk_444;
|
/* 0x0444 */ s16 rotZTarget;
|
||||||
/* 0x0446 */ s16 unk_446;
|
/* 0x0448 */ Vec3f targetPos;
|
||||||
/* 0x0448 */ Vec3f unk_448;
|
/* 0x0454 */ Vec3f eyeLine0; // used for line tests of walls/player
|
||||||
/* 0x0454 */ Vec3f unk_454;
|
/* 0x0460 */ Vec3f eyeLine1;
|
||||||
/* 0x0460 */ Vec3f unk_460;
|
/* 0x046C */ Vec3f eyeLine2;
|
||||||
/* 0x046C */ Vec3f unk_46C;
|
/* 0x0478 */ Vec3f eyeLine3;
|
||||||
/* 0x0478 */ Vec3f unk_478;
|
/* 0x0484 */ Vec3f wallCast;
|
||||||
/* 0x0484 */ Vec3f unk_484;
|
|
||||||
/* 0x0490 */ char unk_490[0x48];
|
/* 0x0490 */ char unk_490[0x48];
|
||||||
} EnSw; // size = 0x04D8
|
} EnSw; // size = 0x04D8
|
||||||
|
|
||||||
|
// Skullwalltula type stored in last 3 bits of params.
|
||||||
|
#define ENSW_GET_TYPE(thisx) PARAMS_GET_S(thisx->params,13,3)
|
||||||
|
// version of the macro used for the whole entity struct.
|
||||||
|
#define ENSW_GET_TYPE_EN(this) PARAMS_GET_S(this->actor.params,13,3)
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
SW_TYPE_NORMAL, // normal Skull(wall)tula
|
||||||
|
SW_TYPE_GOLD_DEFAULT, // normal Gold Skultula, found in dungeons
|
||||||
|
SW_TYPE_GOLD_NIGHT, // nocturnal Gold Skultula, found outside
|
||||||
|
SW_TYPE_GOLD_HIDDEN_SOIL, // found by using bugs on soil patches
|
||||||
|
SW_TYPE_GOLD_HIDDEN_TREE, // found by hitting trees.
|
||||||
|
} EnSwType;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Add table
Reference in a new issue