From 4dea0bfb26951a8a07ee4cbb9642d8bcd52ba71a Mon Sep 17 00:00:00 2001 From: Dragorn421 Date: Tue, 15 Aug 2023 22:23:53 +0200 Subject: Placeholder names for skelanime moveflags (#1489) * Add defines for all used animflags * Use named constants (and add two) for players `func_80832F54` flags * note which flags are player-only * Attempt at documenting but too FeelsUnkMan again * forgot something * ANIM_FLAG_PLAYER_0 -> ANIM_FLAG_0 and amend comment from "player-only" to "no effect outside player" * 1<bodyPartsPos[-1]; if (!LINK_IS_ADULT) { - if (!(this->skelAnime.moveFlags & 4) || (this->skelAnime.moveFlags & 1)) { + if (!(this->skelAnime.moveFlags & ANIM_FLAG_PLAYER_2) || (this->skelAnime.moveFlags & ANIM_FLAG_0)) { pos->x *= 0.64f; pos->z *= 0.64f; } - if (!(this->skelAnime.moveFlags & 4) || (this->skelAnime.moveFlags & 2)) { + if (!(this->skelAnime.moveFlags & ANIM_FLAG_PLAYER_2) || (this->skelAnime.moveFlags & ANIM_FLAG_UPDATE_Y)) { pos->y *= 0.64f; } } diff --git a/src/code/z_skelanime.c b/src/code/z_skelanime.c index bc8a9f392..0efb58769 100644 --- a/src/code/z_skelanime.c +++ b/src/code/z_skelanime.c @@ -914,13 +914,13 @@ void AnimationContext_SetCopyFalse(PlayState* play, s32 vecCount, Vec3s* dst, Ve /** * Requests moving an actor according to the translation of its root limb */ -void AnimationContext_SetMoveActor(PlayState* play, Actor* actor, SkelAnime* skelAnime, f32 arg3) { +void AnimationContext_SetMoveActor(PlayState* play, Actor* actor, SkelAnime* skelAnime, f32 moveDiffScaleY) { AnimationEntry* entry = AnimationContext_AddEntry(&play->animationCtx, ANIMENTRY_MOVEACTOR); if (entry != NULL) { entry->data.move.actor = actor; entry->data.move.skelAnime = skelAnime; - entry->data.move.unk_08 = arg3; + entry->data.move.diffScaleY = moveDiffScaleY; } } @@ -1011,7 +1011,7 @@ void AnimationContext_MoveActor(PlayState* play, AnimationEntryData* data) { SkelAnime_UpdateTranslation(entry->skelAnime, &diff, actor->shape.rot.y); actor->world.pos.x += diff.x * actor->scale.x; - actor->world.pos.y += diff.y * actor->scale.y * entry->unk_08; + actor->world.pos.y += diff.y * actor->scale.y * entry->diffScaleY; actor->world.pos.z += diff.z * actor->scale.z; } -- cgit v1.2.3