mirror of
https://github.com/zeldaret/mm.git
synced 2026-08-18 13:13:22 -04:00
EnKame (Snapper) documented (#1383)
* EnKame (Snapper) documented * Respond to engineer's review
This commit is contained in:
@@ -492,7 +492,7 @@ void EnBigokuta_CheckOneHitKill(EnBigokuta* this, PlayState* play) {
|
||||
if (this->bodyCollider.info.acHitInfo->toucher.dmgFlags & 0x1000) { // Ice Arrow
|
||||
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_FROZEN_NO_SFX;
|
||||
this->drawDmgEffScale = 1.2f;
|
||||
this->drawDmgEffFrozenSteamScale = 1.8000001f;
|
||||
this->drawDmgEffFrozenSteamScale = 1800.0f * 0.001f;
|
||||
this->drawDmgEffAlpha = 1.0f;
|
||||
} else if (this->bodyCollider.info.acHitInfo->toucher.dmgFlags & 0x2000) { // Light Arrow
|
||||
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
|
||||
|
||||
@@ -150,7 +150,7 @@ void EnDekunuts_Destroy(Actor* thisx, PlayState* play) {
|
||||
void func_808BD348(EnDekunuts* this) {
|
||||
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_FROZEN_NO_SFX;
|
||||
this->drawDmgEffScale = 0.55f;
|
||||
this->drawDmgEffFrozenSteamScale = 0.82500005f;
|
||||
this->drawDmgEffFrozenSteamScale = 825.0f * 0.001f;
|
||||
this->drawDmgEffAlpha = 1.0f;
|
||||
this->collider.base.colType = COLTYPE_HIT3;
|
||||
this->unk_190 = 80;
|
||||
|
||||
@@ -378,7 +378,7 @@ void func_8089AC70(EnDinofos* this) {
|
||||
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_FROZEN_NO_SFX;
|
||||
this->drawDmgEffScale = 0.55f;
|
||||
this->colliderJntSph.base.colType = COLTYPE_HIT3;
|
||||
this->drawDmgEffFrozenSteamScale = 0.82500005f;
|
||||
this->drawDmgEffFrozenSteamScale = 825.0f * 0.001f;
|
||||
this->drawDmgEffAlpha = 1.0f;
|
||||
this->unk_290 = 80;
|
||||
this->actor.flags &= ~ACTOR_FLAG_400;
|
||||
|
||||
@@ -224,7 +224,7 @@ void func_808D0930(EnFloormas* this, PlayState* play) {
|
||||
void func_808D09CC(EnFloormas* this) {
|
||||
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_FROZEN_NO_SFX;
|
||||
this->drawDmgEffScale = 0.55f;
|
||||
this->drawDmgEffFrozenSteamScale = 0.82500005f;
|
||||
this->drawDmgEffFrozenSteamScale = 825.0f * 0.001f;
|
||||
this->drawDmgEffAlpha = 1.0f;
|
||||
this->collider.base.colType = COLTYPE_HIT3;
|
||||
this->unk_18E = 80;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -14,11 +14,11 @@ typedef enum SnapperBodyPart {
|
||||
/* 2 */ SNAPPER_BODYPART_FRONT_RIGHT_FOOT,
|
||||
/* 3 */ SNAPPER_BODYPART_BACK_LEFT_FOOT,
|
||||
/* 4 */ SNAPPER_BODYPART_BACK_RIGHT_FOOT,
|
||||
/* 5 */ SNAPPER_BODYPART_5,
|
||||
/* 6 */ SNAPPER_BODYPART_6,
|
||||
/* 7 */ SNAPPER_BODYPART_7,
|
||||
/* 8 */ SNAPPER_BODYPART_8,
|
||||
/* 9 */ SNAPPER_BODYPART_9,
|
||||
/* 5 */ SNAPPER_BODYPART_BODY_1,
|
||||
/* 6 */ SNAPPER_BODYPART_BODY_2,
|
||||
/* 7 */ SNAPPER_BODYPART_BODY_3,
|
||||
/* 8 */ SNAPPER_BODYPART_BODY_4,
|
||||
/* 9 */ SNAPPER_BODYPART_BODY_5,
|
||||
/* 10 */ SNAPPER_BODYPART_MAX
|
||||
} SnapperBodyPart;
|
||||
|
||||
@@ -31,19 +31,26 @@ typedef struct EnKame {
|
||||
/* 0x268 */ Vec3s spikedSnapperJointTable[SPIKED_SNAPPER_LIMB_MAX];
|
||||
/* 0x280 */ Vec3s spikedSnapperMorphTable[SPIKED_SNAPPER_LIMB_MAX];
|
||||
/* 0x298 */ EnKameActionFunc actionFunc;
|
||||
/* 0x29C */ u8 unk_29C;
|
||||
/* 0x29C */ u8 eyeIndex;
|
||||
/* 0x29D */ u8 drawDmgEffType;
|
||||
/* 0x29E */ s16 unk_29E;
|
||||
/* 0x2A0 */ s16 unk_2A0;
|
||||
/* 0x2A2 */ s16 unk_2A2;
|
||||
/* 0x2A4 */ s16 unk_2A4;
|
||||
/* 0x2A6 */ s16 unk_2A6;
|
||||
/* 0x2A8 */ f32 unk_2A8;
|
||||
/* 0x2AC */ f32 unk_2AC;
|
||||
/* 0x29E */ union {
|
||||
s16 timer;
|
||||
s16 targetAngularVelocityY;
|
||||
s16 flipType;
|
||||
};
|
||||
/* 0x2A0 */ s16 voiceTimer;
|
||||
/* 0x2A2 */ s16 stunTimer;
|
||||
/* 0x2A4 */ s16 targetRotY;
|
||||
/* 0x2A6 */ s16 angularVelocityY;
|
||||
/* 0x2A8 */ f32 limbScaleXZ;
|
||||
/* 0x2AC */ union {
|
||||
f32 limbScaleY; // used the Snapper's regular form (i.e., when it's walking around on its legs)
|
||||
f32 spikesScale; // used for the Snapper's "spiked" form
|
||||
};
|
||||
/* 0x2B0 */ f32 drawDmgEffAlpha;
|
||||
/* 0x2B4 */ f32 drawDmgEffScale;
|
||||
/* 0x2B8 */ f32 drawDmgEffFrozenSteamScale;
|
||||
/* 0x2BC */ Vec3f unk_2BC;
|
||||
/* 0x2BC */ Vec3f targetPos; // this actor relies on the y-position of this variable to be set in a specific way, see EnKame_SetupPrepareToAttack
|
||||
/* 0x2C8 */ Vec3f bodyPartsPos[SNAPPER_BODYPART_MAX];
|
||||
/* 0x340 */ ColliderCylinder collider;
|
||||
} EnKame; // size = 0x38C
|
||||
|
||||
@@ -231,7 +231,7 @@ void EnPeehat_Destroy(Actor* thisx, PlayState* play) {
|
||||
void func_80897170(EnPeehat* this) {
|
||||
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_FROZEN_NO_SFX;
|
||||
this->drawDmgEffScale = 1.1f;
|
||||
this->drawDmgEffFrozenSteamScale = 1.6500001f;
|
||||
this->drawDmgEffFrozenSteamScale = 1650.0f * 0.001f;
|
||||
this->drawDmgEffAlpha = 1.0f;
|
||||
this->colliderSphere.base.colType = COLTYPE_HIT3;
|
||||
this->unk_2B0 = 80;
|
||||
|
||||
@@ -195,7 +195,7 @@ void func_808FA11C(EnRr* this) {
|
||||
this->collider1.info.elemType = ELEMTYPE_UNK0;
|
||||
this->unk_1EE = 80;
|
||||
this->drawDmgEffScale = 0.85f;
|
||||
this->drawDmgEffFrozenSteamScale = 1.2750001f;
|
||||
this->drawDmgEffFrozenSteamScale = 1275.0f * 0.001f;
|
||||
this->drawDmgEffAlpha = 1.0f;
|
||||
this->actor.flags &= ~ACTOR_FLAG_400;
|
||||
Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_RED, 255, COLORFILTER_BUFFLAG_OPA, 80);
|
||||
|
||||
@@ -198,7 +198,7 @@ void EnWallmas_Destroy(Actor* thisx, PlayState* play) {
|
||||
void EnWallmas_Freeze(EnWallmas* this) {
|
||||
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_FROZEN_NO_SFX;
|
||||
this->drawDmgEffScale = 0.55f;
|
||||
this->drawDmgEffFrozenSteamScale = 0.82500005f;
|
||||
this->drawDmgEffFrozenSteamScale = 825.0f * 0.001f;
|
||||
this->drawDmgEffAlpha = 1.0f;
|
||||
this->collider.base.colType = 3;
|
||||
this->timer = 80;
|
||||
|
||||
Reference in New Issue
Block a user