mirror of
https://github.com/zeldaret/oot.git
synced 2025-07-13 11:24:40 +00:00
Document EnGo .unk_218
as .waypoint
This commit is contained in:
parent
bbf4225db9
commit
3be6be591e
2 changed files with 10 additions and 10 deletions
|
@ -496,23 +496,23 @@ s32 EnGo_FollowPath(EnGo* this, PlayState* play) {
|
||||||
|
|
||||||
path = &play->pathList[ENGO_GET_PATH_INDEX(this)];
|
path = &play->pathList[ENGO_GET_PATH_INDEX(this)];
|
||||||
pointPos = SEGMENTED_TO_VIRTUAL(path->points);
|
pointPos = SEGMENTED_TO_VIRTUAL(path->points);
|
||||||
pointPos += this->unk_218;
|
pointPos += this->waypoint;
|
||||||
xDist = pointPos->x - this->actor.world.pos.x;
|
xDist = pointPos->x - this->actor.world.pos.x;
|
||||||
zDist = pointPos->z - this->actor.world.pos.z;
|
zDist = pointPos->z - this->actor.world.pos.z;
|
||||||
Math_SmoothStepToS(&this->actor.world.rot.y, RAD_TO_BINANG(Math_FAtan2F(xDist, zDist)), 10, 1000, 1);
|
Math_SmoothStepToS(&this->actor.world.rot.y, RAD_TO_BINANG(Math_FAtan2F(xDist, zDist)), 10, 1000, 1);
|
||||||
|
|
||||||
if ((SQ(xDist) + SQ(zDist)) < 600.0f) {
|
if ((SQ(xDist) + SQ(zDist)) < 600.0f) {
|
||||||
this->unk_218++;
|
this->waypoint++;
|
||||||
if (this->unk_218 >= path->count) {
|
if (this->waypoint >= path->count) {
|
||||||
this->unk_218 = 0;
|
this->waypoint = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ENGO_GET_TYPE(this) != ENGO_TYPE_CITY_LINK) {
|
if (ENGO_GET_TYPE(this) != ENGO_TYPE_CITY_LINK) {
|
||||||
return true;
|
return true;
|
||||||
} else if (ENGO2_IS_CAGE_OPEN(this, play)) {
|
} else if (ENGO2_IS_CAGE_OPEN(this, play)) {
|
||||||
return true;
|
return true;
|
||||||
} else if (this->unk_218 >= this->actor.shape.rot.z) {
|
} else if (this->waypoint >= this->actor.shape.rot.z) {
|
||||||
this->unk_218 = 0;
|
this->waypoint = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
@ -747,7 +747,7 @@ void EnGo_StopRolling(EnGo* this, PlayState* play) {
|
||||||
}
|
}
|
||||||
|
|
||||||
this->actor.speed = 3.0f;
|
this->actor.speed = 3.0f;
|
||||||
if ((EnGo_FollowPath(this, play) == true) && (this->unk_218 == 0)) {
|
if ((EnGo_FollowPath(this, play) == true) && (this->waypoint == 0)) {
|
||||||
bomb = (EnBom*)Actor_Spawn(&play->actorCtx, play, ACTOR_EN_BOM, this->actor.world.pos.x,
|
bomb = (EnBom*)Actor_Spawn(&play->actorCtx, play, ACTOR_EN_BOM, this->actor.world.pos.x,
|
||||||
this->actor.world.pos.y, this->actor.world.pos.z, 0, 0, 0, 0);
|
this->actor.world.pos.y, this->actor.world.pos.z, 0, 0, 0, 0);
|
||||||
if (bomb != NULL) {
|
if (bomb != NULL) {
|
||||||
|
@ -777,7 +777,7 @@ void func_80A4008C(EnGo* this, PlayState* play) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void EnGo_GoronLinkRolling(EnGo* this, PlayState* play) {
|
void EnGo_GoronLinkRolling(EnGo* this, PlayState* play) {
|
||||||
if ((EnGo_FollowPath(this, play) == true) && ENGO2_IS_CAGE_OPEN(this, play) && (this->unk_218 == 0)) {
|
if ((EnGo_FollowPath(this, play) == true) && ENGO2_IS_CAGE_OPEN(this, play) && (this->waypoint == 0)) {
|
||||||
this->actor.speed = 0.0f;
|
this->actor.speed = 0.0f;
|
||||||
EnGo_SetupAction(this, func_80A4008C);
|
EnGo_SetupAction(this, func_80A4008C);
|
||||||
SET_INFTABLE(INFTABLE_109);
|
SET_INFTABLE(INFTABLE_109);
|
||||||
|
@ -954,7 +954,7 @@ void func_80A40A54(EnGo* this, PlayState* play) {
|
||||||
f32 float2 = this->skelAnime.curFrame * float1;
|
f32 float2 = this->skelAnime.curFrame * float1;
|
||||||
|
|
||||||
this->actor.speed = Math_SinS((s16)float2);
|
this->actor.speed = Math_SinS((s16)float2);
|
||||||
if (EnGo_FollowPath(this, play) && this->unk_218 == 0) {
|
if (EnGo_FollowPath(this, play) && this->waypoint == 0) {
|
||||||
EnGo_ChangeAnim(this, ENGO_ANIM_UNCURL_SIT_STAND);
|
EnGo_ChangeAnim(this, ENGO_ANIM_UNCURL_SIT_STAND);
|
||||||
this->skelAnime.curFrame = Animation_GetLastFrame(&gGoronUncurlSitStandAnim);
|
this->skelAnime.curFrame = Animation_GetLastFrame(&gGoronUncurlSitStandAnim);
|
||||||
this->actor.speed = 0.0f;
|
this->actor.speed = 0.0f;
|
||||||
|
|
|
@ -58,7 +58,7 @@ typedef struct EnGo {
|
||||||
/* 0x0212 */ s16 unk_212;
|
/* 0x0212 */ s16 unk_212;
|
||||||
/* 0x0214 */ s16 blinkTimer; // unused
|
/* 0x0214 */ s16 blinkTimer; // unused
|
||||||
/* 0x0216 */ s16 eyeTexIndex; // unused
|
/* 0x0216 */ s16 eyeTexIndex; // unused
|
||||||
/* 0x0218 */ s16 unk_218;
|
/* 0x0218 */ s16 waypoint;
|
||||||
/* 0x021A */ s16 bounceCounter;
|
/* 0x021A */ s16 bounceCounter;
|
||||||
/* 0x021C */ s16 bounceTimer;
|
/* 0x021C */ s16 bounceTimer;
|
||||||
/* 0x021E */ s16 unk_21E;
|
/* 0x021E */ s16 unk_21E;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue