mirror of
https://github.com/zeldaret/oot.git
synced 2025-02-23 07:45:55 +00:00
Merge commit '24571203df84c3294c8410260160cd5a3e9cfa68' into doc_pause_menu
This commit is contained in:
commit
73ba1f864d
10 changed files with 67 additions and 43 deletions
|
@ -1,6 +1,7 @@
|
|||
#ifndef Z64ACTOR_H
|
||||
#define Z64ACTOR_H
|
||||
|
||||
#include "color.h"
|
||||
#include "z64dma.h"
|
||||
#include "z64animation.h"
|
||||
#include "z64math.h"
|
||||
|
@ -14,19 +15,15 @@
|
|||
#define MASS_HEAVY 0xFE // Can only be pushed by OC colliders from actors with IMMOVABLE or HEAVY mass.
|
||||
|
||||
struct Actor;
|
||||
struct PlayState;
|
||||
struct CollisionPoly;
|
||||
struct Lights;
|
||||
struct PlayState;
|
||||
|
||||
typedef void (*ActorFunc)(struct Actor*, struct PlayState*);
|
||||
typedef void (*ActorShadowFunc)(struct Actor*, struct Lights*, struct PlayState*);
|
||||
typedef u16 (*NpcGetTextIdFunc)(struct PlayState*, struct Actor*);
|
||||
typedef s16 (*NpcUpdateTalkStateFunc)(struct PlayState*, struct Actor*);
|
||||
|
||||
typedef struct {
|
||||
Vec3f pos;
|
||||
Vec3s rot;
|
||||
} PosRot; // size = 0x14
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ s16 id;
|
||||
/* 0x02 */ u8 category; // Classifies actor and determines when it will update or draw
|
||||
|
@ -270,8 +267,8 @@ typedef struct Actor {
|
|||
/* 0x068 */ f32 speed; // Context dependent speed value. Can be used for XZ or XYZ depending on which move function is used
|
||||
/* 0x06C */ f32 gravity; // Acceleration due to gravity. Value is added to Y velocity every frame
|
||||
/* 0x070 */ f32 minVelocityY; // Sets the lower bounds cap for velocity along the Y axis. Only relevant when moved with gravity.
|
||||
/* 0x074 */ CollisionPoly* wallPoly; // Wall polygon the actor is touching
|
||||
/* 0x078 */ CollisionPoly* floorPoly; // Floor polygon directly below the actor
|
||||
/* 0x074 */ struct CollisionPoly* wallPoly; // Wall polygon the actor is touching
|
||||
/* 0x078 */ struct CollisionPoly* floorPoly; // Floor polygon directly below the actor
|
||||
/* 0x07C */ u8 wallBgId; // Bg ID of the wall polygon the actor is touching
|
||||
/* 0x07D */ u8 floorBgId; // Bg ID of the floor polygon directly below the actor
|
||||
/* 0x07E */ s16 wallYaw; // Y rotation of the wall polygon the actor is touching
|
||||
|
|
|
@ -99,6 +99,11 @@ typedef enum {
|
|||
|
||||
// Enables the movement of an actor in the Y-axis based on the current animation.
|
||||
// This only has an effect if the "Actor Move" Anim Task is in use.
|
||||
//
|
||||
// This animation-driven movement does not replace "normal" movement from other sources
|
||||
// such as speed/velocity and collisions. The actor should stop updating other sources of movement
|
||||
// as required if they are preventing the animation from playing as intended.
|
||||
// An option is to implement and use `ANIM_FLAG_OVERRIDE_MOVEMENT`.
|
||||
#define ANIM_FLAG_UPDATE_Y (1 << 1)
|
||||
|
||||
// (player-only) Related to scaling an animation from/to child/adult
|
||||
|
@ -110,8 +115,12 @@ typedef enum {
|
|||
//
|
||||
#define ANIM_FLAG_NO_MOVE (1 << 4)
|
||||
|
||||
// (player-only)
|
||||
#define ANIM_FLAG_PLAYER_7 (1 << 7)
|
||||
// Disables "normal" movement from sources like speed/velocity and collisions, which allows the
|
||||
// animation to have full control over the actor's movement.
|
||||
//
|
||||
// Note that individual actors are responsible for implementing the functionality of this flag.
|
||||
// In practice, Player is the only actor who implements this flag.
|
||||
#define ANIM_FLAG_OVERRIDE_MOVEMENT (1 << 7)
|
||||
|
||||
typedef struct SkelAnime {
|
||||
/* 0x00 */ u8 limbCount; // Number of limbs in the skeleton
|
||||
|
|
|
@ -49,7 +49,7 @@ typedef struct {
|
|||
// flags for flags_vIB
|
||||
#define COLPOLY_IS_FLOOR_CONVEYOR (1 << 0)
|
||||
|
||||
typedef struct {
|
||||
typedef struct CollisionPoly {
|
||||
/* 0x00 */ u16 type;
|
||||
union {
|
||||
u16 vtxData[3];
|
||||
|
|
|
@ -130,6 +130,9 @@
|
|||
// Use a camera pivot setting that allows camera rotation (CAM_SET_PIVOT_SHOP_BROWSING for shop specifically)
|
||||
#define VIEWPOINT_PIVOT (BGCAM_INDEX_TOGGLE_PIVOT + 1)
|
||||
|
||||
struct Actor;
|
||||
struct CollisionPoly;
|
||||
|
||||
typedef enum {
|
||||
/* 0x00 */ CAM_SET_NONE,
|
||||
/* 0x01 */ CAM_SET_NORMAL0,
|
||||
|
@ -336,7 +339,7 @@ typedef enum {
|
|||
|
||||
typedef struct {
|
||||
/* 0x00 */ Vec3f collisionClosePoint;
|
||||
/* 0x0C */ CollisionPoly* atEyePoly;
|
||||
/* 0x0C */ struct CollisionPoly* atEyePoly;
|
||||
/* 0x10 */ f32 swingUpdateRate;
|
||||
/* 0x14 */ s16 unk_14;
|
||||
/* 0x16 */ s16 unk_16;
|
||||
|
@ -676,7 +679,7 @@ typedef struct {
|
|||
/* 0x00 */ f32 initialEyeToAtDist;
|
||||
/* 0x04 */ f32 roll;
|
||||
/* 0x08 */ f32 yPosOffset;
|
||||
/* 0x0C */ Actor* target;
|
||||
/* 0x0C */ struct Actor* target;
|
||||
/* 0x10 */ f32 unk_10;
|
||||
/* 0x14 */ s16 unk_14; // unused
|
||||
/* 0x16 */ s16 initialEyeToAtYaw;
|
||||
|
@ -757,7 +760,7 @@ typedef struct {
|
|||
/* 0x00 */ f32 unk_00;
|
||||
/* 0x04 */ f32 unk_04;
|
||||
/* 0x08 */ f32 unk_08;
|
||||
/* 0x0C */ Actor* unk_0C;
|
||||
/* 0x0C */ struct Actor* unk_0C;
|
||||
/* 0x10 */ s16 unk_10;
|
||||
/* 0x12 */ s16 unk_12;
|
||||
/* 0x14 */ s16 unk_14;
|
||||
|
@ -806,7 +809,7 @@ typedef struct {
|
|||
/* 0x00 */ f32 eyeToAtTargetR;
|
||||
/* 0x08 */ f32 eyeToAtTargetYaw;
|
||||
/* 0x04 */ f32 eyeToAtTargetPitch;
|
||||
/* 0x0C */ Actor* target;
|
||||
/* 0x0C */ struct Actor* target;
|
||||
/* 0x10 */ Vec3f atTarget;
|
||||
/* 0x1C */ s16 animTimer;
|
||||
} KeepOn3ReadWriteData; // size = 0x20
|
||||
|
@ -1548,7 +1551,7 @@ typedef union {
|
|||
typedef struct {
|
||||
/* 0x00 */ Vec3f pos;
|
||||
/* 0x0C */ Vec3f norm;
|
||||
/* 0x18 */ CollisionPoly* poly;
|
||||
/* 0x18 */ struct CollisionPoly* poly;
|
||||
/* 0x1C */ VecGeo geoNorm;
|
||||
/* 0x24 */ s32 bgId;
|
||||
} CamColChk; // size = 0x28
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
#define Z64CUTSCENE_H
|
||||
|
||||
#include "ultra64.h"
|
||||
#include "z64math.h"
|
||||
|
||||
typedef union CutsceneData {
|
||||
s32 i;
|
||||
|
|
|
@ -37,6 +37,11 @@ typedef struct {
|
|||
f32 radius;
|
||||
} Spheref; // size = 0x10
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ Vec3f pos;
|
||||
/* 0x0C */ Vec3s rot;
|
||||
} PosRot; // size = 0x14
|
||||
|
||||
typedef struct {
|
||||
Vec3f normal;
|
||||
f32 originDist;
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
// For retail BSS ordering, the block number of cbf in Math3D_CylVsCylOverlapCenterDist
|
||||
// must be 0.
|
||||
#pragma increment_block_number 111
|
||||
#pragma increment_block_number 108
|
||||
|
||||
s32 Math3D_LineVsLineClosestTwoPoints(Vec3f* lineAPointA, Vec3f* lineAPointB, Vec3f* lineBPointA, Vec3f* lineBPointB,
|
||||
Vec3f* lineAClosestToB, Vec3f* lineBClosestToA);
|
||||
|
|
|
@ -8,10 +8,11 @@
|
|||
|
||||
#include "overlays/actors/ovl_En_Kanban/z_en_kanban.h"
|
||||
#include "assets/objects/object_fish/object_fish.h"
|
||||
#include "ichain.h"
|
||||
#include "terminal.h"
|
||||
|
||||
// For retail BSS ordering, the block number of sStreamSfxProjectedPos must be 0.
|
||||
#pragma increment_block_number 183
|
||||
#pragma increment_block_number 182
|
||||
|
||||
#define FLAGS ACTOR_FLAG_4
|
||||
|
||||
|
|
|
@ -2,7 +2,8 @@
|
|||
#define Z_FISHING_H
|
||||
|
||||
#include "ultra64.h"
|
||||
#include "global.h"
|
||||
#include "z64actor.h"
|
||||
#include "z64light.h"
|
||||
|
||||
struct Fishing;
|
||||
|
||||
|
|
|
@ -2984,7 +2984,7 @@ s32 func_80835588(Player* this, PlayState* play) {
|
|||
void func_808355DC(Player* this) {
|
||||
this->stateFlags1 |= PLAYER_STATE1_17;
|
||||
|
||||
if (!(this->skelAnime.moveFlags & ANIM_FLAG_PLAYER_7) &&
|
||||
if (!(this->skelAnime.moveFlags & ANIM_FLAG_OVERRIDE_MOVEMENT) &&
|
||||
(this->actor.bgCheckFlags & BGCHECKFLAG_PLAYER_WALL_INTERACT) && (sShapeYawToTouchedWall < 0x2000)) {
|
||||
this->yaw = this->actor.shape.rot.y = this->actor.wallYaw + 0x8000;
|
||||
}
|
||||
|
@ -3400,7 +3400,7 @@ s32 Player_UpdateUpperBody(Player* this, PlayState* play) {
|
|||
Player_AnimPlayOnce(play, this, &gPlayerAnim_link_hook_fly_start);
|
||||
Player_AnimReplaceApplyFlags(play, this,
|
||||
ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y | ANIM_FLAG_PLAYER_SETMOVE |
|
||||
ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
func_80832224(this);
|
||||
this->yaw = this->actor.shape.rot.y;
|
||||
this->actor.bgCheckFlags &= ~BGCHECKFLAG_GROUND;
|
||||
|
@ -5056,7 +5056,8 @@ s32 Player_ActionChange_1(Player* this, PlayState* play) {
|
|||
func_80832224(this);
|
||||
Player_AnimReplaceApplyFlags(play, this,
|
||||
ANIM_REPLACE_APPLY_FLAG_9 | ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y |
|
||||
ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE |
|
||||
ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
|
||||
// If this door is the second half of a double door (spawned as child)
|
||||
if (doorActor->parent != NULL) {
|
||||
|
@ -5367,7 +5368,8 @@ s32 func_8083A6AC(Player* this, PlayState* play) {
|
|||
this->stateFlags1 |= PLAYER_STATE1_21;
|
||||
Player_AnimReplaceApplyFlags(play, this,
|
||||
ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y | ANIM_FLAG_PLAYER_2 |
|
||||
ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE |
|
||||
ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
|
||||
this->av2.actionVar2 = -1;
|
||||
this->av1.actionVar1 = sp50;
|
||||
|
@ -5412,7 +5414,7 @@ void func_8083AA10(Player* this, PlayState* play) {
|
|||
return;
|
||||
}
|
||||
|
||||
if (!(this->stateFlags3 & PLAYER_STATE3_1) && !(this->skelAnime.moveFlags & ANIM_FLAG_PLAYER_7) &&
|
||||
if (!(this->stateFlags3 & PLAYER_STATE3_1) && !(this->skelAnime.moveFlags & ANIM_FLAG_OVERRIDE_MOVEMENT) &&
|
||||
(Player_Action_8084411C != this->actionFunc) && (Player_Action_80844A44 != this->actionFunc)) {
|
||||
|
||||
if ((sPrevFloorProperty == FLOOR_PROPERTY_7) || (this->meleeWeaponState != 0)) {
|
||||
|
@ -6722,7 +6724,7 @@ s32 Player_ActionChange_3(Player* this, PlayState* play) {
|
|||
Player_AnimPlayOnce(play, this, D_80854578[temp].anim);
|
||||
Player_AnimReplaceApplyFlags(play, this,
|
||||
ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y | ANIM_FLAG_PLAYER_SETMOVE |
|
||||
ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
|
||||
this->actor.parent = this->rideActor;
|
||||
func_80832224(this);
|
||||
|
@ -6891,7 +6893,7 @@ s32 Player_ActionChange_2(Player* this, PlayState* play) {
|
|||
Player_AnimReplaceApplyFlags(play, this,
|
||||
ANIM_REPLACE_APPLY_FLAG_9 | ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y |
|
||||
ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE |
|
||||
ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
chest->unk_1F4 = 1;
|
||||
Camera_RequestSetting(Play_GetCamera(play, CAM_ID_MAIN), CAM_SET_SLOW_CHEST_CS);
|
||||
} else {
|
||||
|
@ -7069,7 +7071,8 @@ s32 func_8083EC18(Player* this, PlayState* play, u32 wallFlags) {
|
|||
Player_AnimPlayOnce(play, this, anim);
|
||||
Player_AnimReplaceApplyFlags(play, this,
|
||||
ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y | ANIM_FLAG_PLAYER_2 |
|
||||
ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE |
|
||||
ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
@ -7150,7 +7153,7 @@ s32 Player_TryEnteringCrawlspace(Player* this, PlayState* play, u32 interactWall
|
|||
Player_AnimPlayOnce(play, this, &gPlayerAnim_link_child_tunnel_start);
|
||||
Player_AnimReplaceApplyFlags(play, this,
|
||||
ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE |
|
||||
ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
@ -7240,7 +7243,7 @@ s32 Player_TryLeavingCrawlspace(Player* this, PlayState* play) {
|
|||
Player_AnimPlayOnce(play, this, &gPlayerAnim_link_child_tunnel_end);
|
||||
Player_AnimReplaceApplyFlags(play, this,
|
||||
ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE |
|
||||
ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
OnePointCutscene_Init(play, 9601, 999, NULL, CAM_ID_MAIN);
|
||||
} else {
|
||||
// Leaving a crawlspace backwards
|
||||
|
@ -7250,7 +7253,7 @@ s32 Player_TryLeavingCrawlspace(Player* this, PlayState* play) {
|
|||
0.0f);
|
||||
Player_AnimReplaceApplyFlags(play, this,
|
||||
ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE |
|
||||
ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
OnePointCutscene_Init(play, 9602, 999, NULL, CAM_ID_MAIN);
|
||||
}
|
||||
|
||||
|
@ -9969,7 +9972,7 @@ void func_808467D4(PlayState* play, Player* this) {
|
|||
0.0f);
|
||||
Player_AnimReplaceApplyFlags(play, this,
|
||||
ANIM_REPLACE_APPLY_FLAG_9 | ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y |
|
||||
ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
if (LINK_IS_ADULT) {
|
||||
func_80846720(play, this, 0);
|
||||
}
|
||||
|
@ -9980,7 +9983,7 @@ void func_808468A8(PlayState* play, Player* this) {
|
|||
Player_SetupAction(play, this, Player_Action_8084F9A0, 0);
|
||||
Player_AnimReplaceApplyFlags(play, this,
|
||||
ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y | ANIM_FLAG_PLAYER_SETMOVE |
|
||||
ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
}
|
||||
|
||||
void func_808468E8(PlayState* play, Player* this) {
|
||||
|
@ -11136,7 +11139,7 @@ void Player_UpdateCommon(Player* this, PlayState* play, Input* input) {
|
|||
Player_AnimPlayOnce(play, this, &gPlayerAnim_link_uma_wait_1);
|
||||
Player_AnimReplaceApplyFlags(play, this,
|
||||
ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y | ANIM_FLAG_PLAYER_SETMOVE |
|
||||
ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
this->av2.actionVar2 = 99;
|
||||
}
|
||||
|
||||
|
@ -11161,7 +11164,7 @@ void Player_UpdateCommon(Player* this, PlayState* play, Input* input) {
|
|||
func_8084FF7C(this);
|
||||
}
|
||||
|
||||
if (!(this->skelAnime.moveFlags & ANIM_FLAG_PLAYER_7)) {
|
||||
if (!(this->skelAnime.moveFlags & ANIM_FLAG_OVERRIDE_MOVEMENT)) {
|
||||
if (((this->actor.bgCheckFlags & BGCHECKFLAG_GROUND) && (sFloorType == FLOOR_TYPE_5) &&
|
||||
(this->currentBoots != PLAYER_BOOTS_IRON)) ||
|
||||
((this->currentBoots == PLAYER_BOOTS_HOVER) &&
|
||||
|
@ -14546,7 +14549,8 @@ void func_808510D4(PlayState* play, Player* this, void* anim) {
|
|||
|
||||
void func_808510F4(PlayState* play, Player* this, void* anim) {
|
||||
Player_AnimReplacePlayOnce(play, this, anim,
|
||||
ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE |
|
||||
ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
}
|
||||
|
||||
void func_80851114(PlayState* play, Player* this, void* anim) {
|
||||
|
@ -14555,7 +14559,8 @@ void func_80851114(PlayState* play, Player* this, void* anim) {
|
|||
|
||||
void func_80851134(PlayState* play, Player* this, void* anim) {
|
||||
Player_AnimReplacePlayLoop(play, this, anim,
|
||||
ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE |
|
||||
ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
}
|
||||
|
||||
void func_80851154(PlayState* play, Player* this, void* anim) {
|
||||
|
@ -14802,7 +14807,7 @@ void func_808519EC(PlayState* play, Player* this, CsCmdActorCue* cue) {
|
|||
Player_AnimPlayOnceAdjusted(play, this, this->ageProperties->unk_9C);
|
||||
Player_AnimReplaceApplyFlags(play, this,
|
||||
ANIM_REPLACE_APPLY_FLAG_9 | ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y |
|
||||
ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
}
|
||||
|
||||
static struct_808551A4 D_808551A4[] = {
|
||||
|
@ -14913,12 +14918,13 @@ void func_80851E28(PlayState* play, Player* this, CsCmdActorCue* cue) {
|
|||
|
||||
void func_80851E64(PlayState* play, Player* this, CsCmdActorCue* cue) {
|
||||
Player_AnimReplacePlayOnceAdjusted(play, this, &gPlayerAnim_link_swimer_swim_get,
|
||||
ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
}
|
||||
|
||||
void func_80851E90(PlayState* play, Player* this, CsCmdActorCue* cue) {
|
||||
Player_AnimReplacePlayOnce(play, this, &gPlayerAnim_clink_op3_negaeri,
|
||||
ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE |
|
||||
ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
func_80832698(this, NA_SE_VO_LI_GROAN);
|
||||
}
|
||||
|
||||
|
@ -14926,7 +14932,7 @@ void func_80851ECC(PlayState* play, Player* this, CsCmdActorCue* cue) {
|
|||
if (LinkAnimation_Update(play, &this->skelAnime)) {
|
||||
Player_AnimReplacePlayLoop(play, this, &gPlayerAnim_clink_op3_wait2,
|
||||
ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE |
|
||||
ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -14954,7 +14960,7 @@ void func_80851FB0(PlayState* play, Player* this, CsCmdActorCue* cue) {
|
|||
if (LinkAnimation_Update(play, &this->skelAnime)) {
|
||||
Player_AnimReplacePlayLoop(play, this, &gPlayerAnim_clink_op3_wait3,
|
||||
ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE |
|
||||
ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
this->av2.actionVar2 = 1;
|
||||
} else if (this->av2.actionVar2 == 0) {
|
||||
Player_ProcessAnimSfxList(this, D_808551BC);
|
||||
|
@ -14979,7 +14985,7 @@ void func_80852048(PlayState* play, Player* this, CsCmdActorCue* cue) {
|
|||
void func_80852080(PlayState* play, Player* this, CsCmdActorCue* cue) {
|
||||
Player_AnimReplacePlayOnceAdjusted(play, this, &gPlayerAnim_clink_demo_futtobi,
|
||||
ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE |
|
||||
ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7);
|
||||
ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
func_80832698(this, NA_SE_VO_LI_FALL_L);
|
||||
}
|
||||
|
||||
|
@ -15027,7 +15033,8 @@ void func_80852234(PlayState* play, Player* this, CsCmdActorCue* cue) {
|
|||
}
|
||||
|
||||
void func_8085225C(PlayState* play, Player* this, CsCmdActorCue* cue) {
|
||||
Player_AnimReplaceApplyFlags(play, this, ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7);
|
||||
Player_AnimReplaceApplyFlags(play, this,
|
||||
ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT);
|
||||
}
|
||||
|
||||
void func_80852280(PlayState* play, Player* this, CsCmdActorCue* cue) {
|
||||
|
|
Loading…
Add table
Reference in a new issue