1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2024-12-04 16:55:56 +00:00

func_80034DD4 -> Actor_FadeInOut

https://github.com/zeldaret/oot/pull/2289#discussion_r1837267267
This commit is contained in:
feacur 2024-11-12 01:12:59 +01:00
parent b11a9e9942
commit 318126a1b7
4 changed files with 12 additions and 12 deletions

View file

@ -916,7 +916,7 @@ void func_80034BA0(struct PlayState* play, SkelAnime* skelAnime, OverrideLimbDra
PostLimbDraw postLimbDraw, Actor* actor, s16 alpha); PostLimbDraw postLimbDraw, Actor* actor, s16 alpha);
void func_80034CC4(struct PlayState* play, SkelAnime* skelAnime, OverrideLimbDraw overrideLimbDraw, void func_80034CC4(struct PlayState* play, SkelAnime* skelAnime, OverrideLimbDraw overrideLimbDraw,
PostLimbDraw postLimbDraw, Actor* actor, s16 alpha); PostLimbDraw postLimbDraw, Actor* actor, s16 alpha);
s16 Actor_SmoothStep_Attention(Actor* actor, struct PlayState* play, s16 alpha, f32 threshold); s16 Actor_FadeInOut(Actor* actor, struct PlayState* play, s16 alpha, f32 radius);
void func_80034F54(struct PlayState* play, s16* arg1, s16* arg2, s32 arg3); void func_80034F54(struct PlayState* play, s16* arg1, s16* arg2, s32 arg3);
void Actor_Noop(Actor* actor, struct PlayState* play); void Actor_Noop(Actor* actor, struct PlayState* play);

View file

@ -4396,7 +4396,7 @@ void func_80034CC4(PlayState* play, SkelAnime* skelAnime, OverrideLimbDraw overr
CLOSE_DISPS(play->state.gfxCtx, "../z_actor.c", 8904); CLOSE_DISPS(play->state.gfxCtx, "../z_actor.c", 8904);
} }
s16 Actor_SmoothStep_Attention(Actor* actor, PlayState* play, s16 alpha, f32 threshold) { s16 Actor_FadeInOut(Actor* actor, PlayState* play, s16 alpha, f32 radius) {
Player* player = GET_PLAYER(play); Player* player = GET_PLAYER(play);
f32 distance; f32 distance;
@ -4406,7 +4406,7 @@ s16 Actor_SmoothStep_Attention(Actor* actor, PlayState* play, s16 alpha, f32 thr
distance = Math_Vec3f_DistXYZ(&actor->world.pos, &player->actor.world.pos); distance = Math_Vec3f_DistXYZ(&actor->world.pos, &player->actor.world.pos);
} }
if (threshold < distance) { if (radius < distance) {
actor->flags &= ~ACTOR_FLAG_ATTENTION_ENABLED; actor->flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Math_SmoothStepToS(&alpha, 0, 6, 0x14, 1); Math_SmoothStepToS(&alpha, 0, 6, 0x14, 1);
} else { } else {

View file

@ -650,15 +650,15 @@ u8 EnMd_SetMovedPos(EnMd* this, PlayState* play) {
return 1; return 1;
} }
void EnMd_SmoothStep_Attention(EnMd* this, PlayState* play) { void EnMd_FadeInOut(EnMd* this, PlayState* play) {
f32 threshold; f32 radius;
if (play->sceneId != SCENE_MIDOS_HOUSE) { if (play->sceneId != SCENE_MIDOS_HOUSE) {
threshold = (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD) && !GET_EVENTCHKINF(EVENTCHKINF_1C) && radius = (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD) && !GET_EVENTCHKINF(EVENTCHKINF_1C) &&
(play->sceneId == SCENE_KOKIRI_FOREST)) (play->sceneId == SCENE_KOKIRI_FOREST))
? 100.0f ? 100.0f
: 400.0f; : 400.0f;
this->alpha = Actor_SmoothStep_Attention(&this->actor, play, this->alpha, threshold); this->alpha = Actor_FadeInOut(&this->actor, play, this->alpha, radius);
this->actor.shape.shadowAlpha = this->alpha; this->actor.shape.shadowAlpha = this->alpha;
} else { } else {
this->alpha = 255; this->alpha = 255;
@ -844,7 +844,7 @@ void EnMd_Update(Actor* thisx, PlayState* play) {
CollisionCheck_SetOC(play, &play->colChkCtx, &this->collider.base); CollisionCheck_SetOC(play, &play->colChkCtx, &this->collider.base);
SkelAnime_Update(&this->skelAnime); SkelAnime_Update(&this->skelAnime);
EnMd_UpdateEyes(this); EnMd_UpdateEyes(this);
EnMd_SmoothStep_Attention(this, play); EnMd_FadeInOut(this, play);
Actor_MoveXZGravity(&this->actor); Actor_MoveXZGravity(&this->actor);
EnMd_UpdateTalking(this, play); EnMd_UpdateTalking(this, play);
Actor_UpdateBgCheckInfo(play, &this->actor, 0.0f, 0.0f, 0.0f, UPDBGCHECKINFO_FLAG_2); Actor_UpdateBgCheckInfo(play, &this->actor, 0.0f, 0.0f, 0.0f, UPDBGCHECKINFO_FLAG_2);

View file

@ -738,7 +738,7 @@ void EnSa_Update(Actor* thisx, PlayState* play) {
} }
if (this->actionFunc != func_80AF68E4) { if (this->actionFunc != func_80AF68E4) {
this->alpha = Actor_SmoothStep_Attention(&this->actor, play, this->alpha, 400.0f); this->alpha = Actor_FadeInOut(&this->actor, play, this->alpha, 400.0f);
} else { } else {
this->alpha = 255; this->alpha = 255;
} }