diff options
| author | engineer124 <47598039+engineer124@users.noreply.github.com> | 2024-10-24 11:55:14 +1100 |
|---|---|---|
| committer | Eblo <7004497+Eblo@users.noreply.github.com> | 2025-09-16 12:53:02 -0400 |
| commit | f3758ad920950e173368120ff1364ea51c5458b4 (patch) | |
| tree | e1352ed8f808c5da8ebdcbd2423e96aea18601bf | |
| parent | 8ba67efcb2824f88a20ce24d358b765af68d7962 (diff) | |
dead flag (#1735)
| -rw-r--r-- | mm/include/z64player.h | 5 | ||||
| -rw-r--r-- | mm/src/code/z_actor.c | 26 | ||||
| -rw-r--r-- | mm/src/code/z_player_lib.c | 4 | ||||
| -rw-r--r-- | mm/src/overlays/actors/ovl_Arms_Hook/z_arms_hook.c | 2 | ||||
| -rw-r--r-- | mm/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c | 2 | ||||
| -rw-r--r-- | mm/src/overlays/actors/ovl_Door_Spiral/z_door_spiral.c | 2 | ||||
| -rw-r--r-- | mm/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c | 2 | ||||
| -rw-r--r-- | mm/src/overlays/actors/ovl_En_Nutsball/z_en_nutsball.c | 2 | ||||
| -rw-r--r-- | mm/src/overlays/actors/ovl_En_Okuta/z_en_okuta.c | 2 | ||||
| -rw-r--r-- | mm/src/overlays/actors/ovl_En_Railgibud/z_en_railgibud.c | 2 | ||||
| -rw-r--r-- | mm/src/overlays/actors/ovl_En_Rd/z_en_rd.c | 6 | ||||
| -rw-r--r-- | mm/src/overlays/actors/ovl_En_Talk_Gibud/z_en_talk_gibud.c | 2 | ||||
| -rw-r--r-- | mm/src/overlays/actors/ovl_Obj_Moon_Stone/z_obj_moon_stone.c | 2 | ||||
| -rw-r--r-- | mm/src/overlays/actors/ovl_player_actor/z_player.c | 32 |
14 files changed, 47 insertions, 44 deletions
diff --git a/mm/include/z64player.h b/mm/include/z64player.h index 97502be7d..0437df3de 100644 --- a/mm/include/z64player.h +++ b/mm/include/z64player.h @@ -885,8 +885,9 @@ typedef enum PlayerCueId { #define PLAYER_STATE1_20 (1 << 5) // #define PLAYER_STATE1_40 (1 << 6) -// -#define PLAYER_STATE1_80 (1 << 7) +// Player has died. Note that this gets set when the death cutscene has started, after landing from the air. +// This also gets set when either deku/zora forms touches lava floor, or goron form enters water and the scene resets. +#define PLAYER_STATE1_DEAD (1 << 7) // #define PLAYER_STATE1_100 (1 << 8) // diff --git a/mm/src/code/z_actor.c b/mm/src/code/z_actor.c index 209f9e524..866aa0bb7 100644 --- a/mm/src/code/z_actor.c +++ b/mm/src/code/z_actor.c @@ -526,7 +526,7 @@ void Attention_Draw(Attention* attention, PlayState* play) { Player* player = GET_PLAYER(play); Actor* actor; // used for both the reticle actor and arrow hover actor - if (player->stateFlags1 & (PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_80 | PLAYER_STATE1_200 | + if (player->stateFlags1 & (PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_DEAD | PLAYER_STATE1_200 | PLAYER_STATE1_400 | PLAYER_STATE1_10000000 | PLAYER_STATE1_20000000)) { return; } @@ -1563,7 +1563,7 @@ void Player_MountHorse(PlayState* play, Player* player, Actor* horse) { } bool func_800B7200(Player* player) { - return (player->stateFlags1 & (PLAYER_STATE1_80 | PLAYER_STATE1_20000000)) || + return (player->stateFlags1 & (PLAYER_STATE1_DEAD | PLAYER_STATE1_20000000)) || (player->csAction != PLAYER_CSACTION_NONE); } @@ -2334,7 +2334,7 @@ s32 Actor_OfferGetItem(Actor* actor, PlayState* play, GetItemId getItemId, f32 x Player* player = GET_PLAYER(play); if (!(player->stateFlags1 & - (PLAYER_STATE1_80 | PLAYER_STATE1_1000 | PLAYER_STATE1_2000 | PLAYER_STATE1_4000 | PLAYER_STATE1_40000 | + (PLAYER_STATE1_DEAD | PLAYER_STATE1_1000 | PLAYER_STATE1_2000 | PLAYER_STATE1_4000 | PLAYER_STATE1_40000 | PLAYER_STATE1_80000 | PLAYER_STATE1_100000 | PLAYER_STATE1_200000)) && (Player_GetExplosiveHeld(player) <= PLAYER_EXPLOSIVE_NONE)) { if ((actor->xzDistToPlayer <= xzRange) && (fabsf(actor->playerHeightRel) <= fabsf(yRange))) { @@ -2424,7 +2424,7 @@ s32 Actor_HasRider(PlayState* play, Actor* horse) { s32 Actor_SetRideActor(PlayState* play, Actor* horse, s32 mountSide) { Player* player = GET_PLAYER(play); - if (!(player->stateFlags1 & (PLAYER_STATE1_80 | PLAYER_STATE1_CARRYING_ACTOR | PLAYER_STATE1_1000 | + if (!(player->stateFlags1 & (PLAYER_STATE1_DEAD | PLAYER_STATE1_CARRYING_ACTOR | PLAYER_STATE1_1000 | PLAYER_STATE1_2000 | PLAYER_STATE1_4000 | PLAYER_STATE1_40000 | PLAYER_STATE1_80000 | PLAYER_STATE1_100000 | PLAYER_STATE1_200000))) { player->rideActor = horse; @@ -2771,33 +2771,33 @@ Actor* Actor_UpdateActor(UpdateActor_Params* params) { u32 sCategoryFreezeMasks[ACTORCAT_MAX] = { /* ACTORCAT_SWITCH */ - PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_80 | PLAYER_STATE1_200 | PLAYER_STATE1_10000000, + PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_DEAD | PLAYER_STATE1_200 | PLAYER_STATE1_10000000, /* ACTORCAT_BG */ - PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_80 | PLAYER_STATE1_200 | PLAYER_STATE1_10000000, + PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_DEAD | PLAYER_STATE1_200 | PLAYER_STATE1_10000000, /* ACTORCAT_PLAYER */ PLAYER_STATE1_200, /* ACTORCAT_EXPLOSIVES */ - PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_80 | PLAYER_STATE1_200 | PLAYER_STATE1_400 | + PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_DEAD | PLAYER_STATE1_200 | PLAYER_STATE1_400 | PLAYER_STATE1_10000000, /* ACTORCAT_NPC */ - PLAYER_STATE1_2 | PLAYER_STATE1_80 | PLAYER_STATE1_200, + PLAYER_STATE1_2 | PLAYER_STATE1_DEAD | PLAYER_STATE1_200, /* ACTORCAT_ENEMY */ - PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_80 | PLAYER_STATE1_200 | PLAYER_STATE1_10000000 | + PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_DEAD | PLAYER_STATE1_200 | PLAYER_STATE1_10000000 | PLAYER_STATE1_20000000, /* ACTORCAT_PROP */ - PLAYER_STATE1_2 | PLAYER_STATE1_80 | PLAYER_STATE1_200 | PLAYER_STATE1_10000000, + PLAYER_STATE1_2 | PLAYER_STATE1_DEAD | PLAYER_STATE1_200 | PLAYER_STATE1_10000000, /* ACTORCAT_ITEMACTION */ PLAYER_STATE1_2, /* ACTORCAT_MISC */ - PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_80 | PLAYER_STATE1_200 | PLAYER_STATE1_10000000 | + PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_DEAD | PLAYER_STATE1_200 | PLAYER_STATE1_10000000 | PLAYER_STATE1_20000000, /* ACTORCAT_BOSS */ - PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_80 | PLAYER_STATE1_200 | PLAYER_STATE1_400 | + PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_DEAD | PLAYER_STATE1_200 | PLAYER_STATE1_400 | PLAYER_STATE1_10000000, /* ACTORCAT_DOOR */ PLAYER_STATE1_2, /* ACTORCAT_CHEST */ - PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_80 | PLAYER_STATE1_200 | PLAYER_STATE1_10000000, + PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_DEAD | PLAYER_STATE1_200 | PLAYER_STATE1_10000000, }; void Actor_UpdateAll(PlayState* play, ActorContext* actorCtx) { diff --git a/mm/src/code/z_player_lib.c b/mm/src/code/z_player_lib.c index deb923a00..bf08eb966 100644 --- a/mm/src/code/z_player_lib.c +++ b/mm/src/code/z_player_lib.c @@ -653,7 +653,7 @@ void func_80123140(PlayState* play, Player* player) { } bool Player_InBlockingCsMode(PlayState* play, Player* player) { - return (player->stateFlags1 & (PLAYER_STATE1_80 | PLAYER_STATE1_200 | PLAYER_STATE1_20000000)) || + return (player->stateFlags1 & (PLAYER_STATE1_DEAD | PLAYER_STATE1_200 | PLAYER_STATE1_20000000)) || (player->csAction != PLAYER_CSACTION_NONE) || (play->transitionTrigger == TRANS_TRIGGER_START) || (play->transitionMode != TRANS_MODE_OFF) || (player->stateFlags1 & PLAYER_STATE1_1) || (player->stateFlags3 & PLAYER_STATE3_80) || play->actorCtx.isOverrideInputOn; @@ -2084,7 +2084,7 @@ void Player_AdjustSingleLeg(PlayState* play, Player* player, SkelAnime* skelAnim f32 sp7C; if ((player->stateFlags3 & PLAYER_STATE3_1) || !(player->actor.scale.y >= 0.0f) || - (player->stateFlags1 & PLAYER_STATE1_80) || play->unk_18844) { + (player->stateFlags1 & PLAYER_STATE1_DEAD) || play->unk_18844) { return; } diff --git a/mm/src/overlays/actors/ovl_Arms_Hook/z_arms_hook.c b/mm/src/overlays/actors/ovl_Arms_Hook/z_arms_hook.c index 64c153bbd..8c073f4f8 100644 --- a/mm/src/overlays/actors/ovl_Arms_Hook/z_arms_hook.c +++ b/mm/src/overlays/actors/ovl_Arms_Hook/z_arms_hook.c @@ -111,7 +111,7 @@ s32 ArmsHook_CheckForCancel(ArmsHook* this) { if (Player_IsHoldingHookshot(player)) { if ((player->itemAction != player->heldItemAction) || (player->actor.flags & ACTOR_FLAG_TALK) || - (player->stateFlags1 & (PLAYER_STATE1_80 | PLAYER_STATE1_4000000))) { + (player->stateFlags1 & (PLAYER_STATE1_DEAD | PLAYER_STATE1_4000000))) { this->timer = 0; ArmsHook_DetachHookFromActor(this); Math_Vec3f_Copy(&this->actor.world.pos, &player->rightHandWorld.pos); diff --git a/mm/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c b/mm/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c index de7bf9b6d..8f0bec306 100644 --- a/mm/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c +++ b/mm/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c @@ -650,7 +650,7 @@ void DoorShutter_Update(Actor* thisx, PlayState* play) { DoorShutter* this = THIS; Player* player = GET_PLAYER(play); - if (!(player->stateFlags1 & (PLAYER_STATE1_40 | PLAYER_STATE1_80 | PLAYER_STATE1_400 | PLAYER_STATE1_10000000)) || + if (!(player->stateFlags1 & (PLAYER_STATE1_40 | PLAYER_STATE1_DEAD | PLAYER_STATE1_400 | PLAYER_STATE1_10000000)) || (this->actionFunc == DoorShutter_SetupType)) { this->actionFunc(this, play); diff --git a/mm/src/overlays/actors/ovl_Door_Spiral/z_door_spiral.c b/mm/src/overlays/actors/ovl_Door_Spiral/z_door_spiral.c index 2fc2f91e8..de25150ed 100644 --- a/mm/src/overlays/actors/ovl_Door_Spiral/z_door_spiral.c +++ b/mm/src/overlays/actors/ovl_Door_Spiral/z_door_spiral.c @@ -233,7 +233,7 @@ void DoorSpiral_Update(Actor* thisx, PlayState* play) { DoorSpiral* this = THIS; Player* player = GET_PLAYER(play); - if (!(player->stateFlags1 & (PLAYER_STATE1_40 | PLAYER_STATE1_80 | PLAYER_STATE1_400 | PLAYER_STATE1_10000000)) || + if (!(player->stateFlags1 & (PLAYER_STATE1_40 | PLAYER_STATE1_DEAD | PLAYER_STATE1_400 | PLAYER_STATE1_10000000)) || (this->actionFunc == func_809A2DB0)) { this->actionFunc(this, play); } diff --git a/mm/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c b/mm/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c index a5687d17b..cc6c93854 100644 --- a/mm/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c +++ b/mm/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c @@ -1441,7 +1441,7 @@ void EnGoroiwa_Update(Actor* thisx, PlayState* play) { CollisionPoly* tmp; if (!(player->stateFlags1 & - (PLAYER_STATE1_40 | PLAYER_STATE1_80 | PLAYER_STATE1_10000000 | PLAYER_STATE1_20000000))) { + (PLAYER_STATE1_40 | PLAYER_STATE1_DEAD | PLAYER_STATE1_10000000 | PLAYER_STATE1_20000000))) { if (this->unk_1CC > 0) { this->unk_1CC--; } diff --git a/mm/src/overlays/actors/ovl_En_Nutsball/z_en_nutsball.c b/mm/src/overlays/actors/ovl_En_Nutsball/z_en_nutsball.c index d68ff3f5f..e9e4ee864 100644 --- a/mm/src/overlays/actors/ovl_En_Nutsball/z_en_nutsball.c +++ b/mm/src/overlays/actors/ovl_En_Nutsball/z_en_nutsball.c @@ -98,7 +98,7 @@ void EnNutsball_Update(Actor* thisx, PlayState* play2) { CollisionPoly* poly; if (!(player->stateFlags1 & - (PLAYER_STATE1_40 | PLAYER_STATE1_80 | PLAYER_STATE1_10000000 | PLAYER_STATE1_20000000))) { + (PLAYER_STATE1_40 | PLAYER_STATE1_DEAD | PLAYER_STATE1_10000000 | PLAYER_STATE1_20000000))) { this->timer--; if (this->timer < 0) { this->actor.velocity.y += this->actor.gravity; diff --git a/mm/src/overlays/actors/ovl_En_Okuta/z_en_okuta.c b/mm/src/overlays/actors/ovl_En_Okuta/z_en_okuta.c index ac37b1037..e244c0266 100644 --- a/mm/src/overlays/actors/ovl_En_Okuta/z_en_okuta.c +++ b/mm/src/overlays/actors/ovl_En_Okuta/z_en_okuta.c @@ -947,7 +947,7 @@ void EnOkuta_Projectile_Update(Actor* thisx, PlayState* play) { Vec3f prevPos; s32 canRestorePrevPos = false; - if (!(player->stateFlags1 & (PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_80 | PLAYER_STATE1_200 | + if (!(player->stateFlags1 & (PLAYER_STATE1_2 | PLAYER_STATE1_40 | PLAYER_STATE1_DEAD | PLAYER_STATE1_200 | PLAYER_STATE1_10000000 | PLAYER_STATE1_20000000))) { this->actionFunc(this, play); Actor_MoveWithoutGravity(&this->actor); diff --git a/mm/src/overlays/actors/ovl_En_Railgibud/z_en_railgibud.c b/mm/src/overlays/actors/ovl_En_Railgibud/z_en_railgibud.c index 575573e02..f9aaef183 100644 --- a/mm/src/overlays/actors/ovl_En_Railgibud/z_en_railgibud.c +++ b/mm/src/overlays/actors/ovl_En_Railgibud/z_en_railgibud.c @@ -751,7 +751,7 @@ s32 EnRailgibud_PlayerInRangeWithCorrectState(EnRailgibud* this, PlayState* play } if ((Actor_WorldDistXYZToPoint(&player->actor, &this->actor.home.pos) < 100.0f) && - !(player->stateFlags1 & (PLAYER_STATE1_80 | PLAYER_STATE1_2000 | PLAYER_STATE1_4000 | PLAYER_STATE1_40000 | + !(player->stateFlags1 & (PLAYER_STATE1_DEAD | PLAYER_STATE1_2000 | PLAYER_STATE1_4000 | PLAYER_STATE1_40000 | PLAYER_STATE1_80000 | PLAYER_STATE1_200000)) && !(player->stateFlags2 & (PLAYER_STATE2_80 | PLAYER_STATE2_4000))) { return true; diff --git a/mm/src/overlays/actors/ovl_En_Rd/z_en_rd.c b/mm/src/overlays/actors/ovl_En_Rd/z_en_rd.c index c4d35fa69..f133589ca 100644 --- a/mm/src/overlays/actors/ovl_En_Rd/z_en_rd.c +++ b/mm/src/overlays/actors/ovl_En_Rd/z_en_rd.c @@ -655,8 +655,8 @@ void EnRd_WalkToPlayer(EnRd* this, PlayState* play) { } if ((ABS_ALT(yaw) < 0x1554) && (Actor_WorldDistXYZToActor(&this->actor, &player->actor) <= 150.0f)) { - if (!(player->stateFlags1 & (PLAYER_STATE1_80 | PLAYER_STATE1_2000 | PLAYER_STATE1_4000 | PLAYER_STATE1_40000 | - PLAYER_STATE1_80000 | PLAYER_STATE1_200000)) && + if (!(player->stateFlags1 & (PLAYER_STATE1_DEAD | PLAYER_STATE1_2000 | PLAYER_STATE1_4000 | + PLAYER_STATE1_40000 | PLAYER_STATE1_80000 | PLAYER_STATE1_200000)) && !(player->stateFlags2 & (PLAYER_STATE2_80 | PLAYER_STATE2_4000))) { if (this->playerStunWaitTimer == 0) { if (!(this->flags & EN_RD_FLAG_CANNOT_FREEZE_PLAYER)) { @@ -737,7 +737,7 @@ void EnRd_WalkToHome(EnRd* this, PlayState* play) { this->actor.world.rot.y = this->actor.shape.rot.y; SkelAnime_Update(&this->skelAnime); - if (!(player->stateFlags1 & (PLAYER_STATE1_80 | PLAYER_STATE1_2000 | PLAYER_STATE1_4000 | PLAYER_STATE1_40000 | + if (!(player->stateFlags1 & (PLAYER_STATE1_DEAD | PLAYER_STATE1_2000 | PLAYER_STATE1_4000 | PLAYER_STATE1_40000 | PLAYER_STATE1_80000 | PLAYER_STATE1_200000)) && !(player->stateFlags2 & (PLAYER_STATE2_80 | PLAYER_STATE2_4000)) && (player->transformation != PLAYER_FORM_GORON) && (player->transformation != PLAYER_FORM_DEKU) && diff --git a/mm/src/overlays/actors/ovl_En_Talk_Gibud/z_en_talk_gibud.c b/mm/src/overlays/actors/ovl_En_Talk_Gibud/z_en_talk_gibud.c index 5d64aa852..4eda1d52d 100644 --- a/mm/src/overlays/actors/ovl_En_Talk_Gibud/z_en_talk_gibud.c +++ b/mm/src/overlays/actors/ovl_En_Talk_Gibud/z_en_talk_gibud.c @@ -915,7 +915,7 @@ s32 EnTalkGibud_PlayerInRangeWithCorrectState(EnTalkGibud* this, PlayState* play Player* player = GET_PLAYER(play); if ((Actor_WorldDistXYZToPoint(&player->actor, &this->actor.home.pos) < 150.0f) && - !(player->stateFlags1 & (PLAYER_STATE1_80 | PLAYER_STATE1_2000 | PLAYER_STATE1_4000 | PLAYER_STATE1_40000 | + !(player->stateFlags1 & (PLAYER_STATE1_DEAD | PLAYER_STATE1_2000 | PLAYER_STATE1_4000 | PLAYER_STATE1_40000 | PLAYER_STATE1_80000 | PLAYER_STATE1_200000)) && !(player->stateFlags2 & (PLAYER_STATE2_80 | PLAYER_STATE2_4000))) { return true; diff --git a/mm/src/overlays/actors/ovl_Obj_Moon_Stone/z_obj_moon_stone.c b/mm/src/overlays/actors/ovl_Obj_Moon_Stone/z_obj_moon_stone.c index 8d0b15b15..d03362629 100644 --- a/mm/src/overlays/actors/ovl_Obj_Moon_Stone/z_obj_moon_stone.c +++ b/mm/src/overlays/actors/ovl_Obj_Moon_Stone/z_obj_moon_stone.c @@ -140,7 +140,7 @@ void ObjMoonStone_Update(Actor* thisx, PlayState* play) { ObjMoonStone* this = THIS; Player* player = GET_PLAYER(play); - if (!(player->stateFlags1 & (PLAYER_STATE1_2 | PLAYER_STATE1_80 | PLAYER_STATE1_200 | PLAYER_STATE1_10000000))) { + if (!(player->stateFlags1 & (PLAYER_STATE1_2 | PLAYER_STATE1_DEAD | PLAYER_STATE1_200 | PLAYER_STATE1_10000000))) { this->actionFunc(this, play); } } diff --git a/mm/src/overlays/actors/ovl_player_actor/z_player.c b/mm/src/overlays/actors/ovl_player_actor/z_player.c index 9a48954c0..a702d467a 100644 --- a/mm/src/overlays/actors/ovl_player_actor/z_player.c +++ b/mm/src/overlays/actors/ovl_player_actor/z_player.c @@ -4752,7 +4752,7 @@ void func_80831F34(PlayState* play, Player* this, PlayerAnimationHeader* anim) { this->skelAnime.endFrame = 84.0f; } - this->stateFlags1 |= PLAYER_STATE1_80; + this->stateFlags1 |= PLAYER_STATE1_DEAD; func_8082DAD4(this); Player_AnimSfx_PlayVoice(this, NA_SE_VO_LI_DOWN); @@ -5012,7 +5012,7 @@ void func_80832888(Player* this, PlayState* play) { } if ((play->csCtx.state != CS_STATE_IDLE) || (this->csAction != PLAYER_CSACTION_NONE) || - (this->stateFlags1 & (PLAYER_STATE1_80 | PLAYER_STATE1_20000000)) || (this->stateFlags3 & PLAYER_STATE3_80)) { + (this->stateFlags1 & (PLAYER_STATE1_DEAD | PLAYER_STATE1_20000000)) || (this->stateFlags3 & PLAYER_STATE3_80)) { this->unk_738 = 0; } else if (heldZ || (this->stateFlags2 & PLAYER_STATE2_LOCK_ON_WITH_SWITCH) || (this->autoLockOnActor != NULL)) { if (this->unk_738 <= 5) { @@ -5422,7 +5422,8 @@ s32 (*sActionHandlerFuncs[PLAYER_ACTION_HANDLER_MAX])(Player* this, PlayState* p * */ s32 Player_TryActionHandlerList(PlayState* play, Player* this, s8* actionHandlerList, s32 updateUpperBody) { - if (!(this->stateFlags1 & (PLAYER_STATE1_1 | PLAYER_STATE1_80 | PLAYER_STATE1_20000000)) && !func_8082DA90(play)) { + if (!(this->stateFlags1 & (PLAYER_STATE1_1 | PLAYER_STATE1_DEAD | PLAYER_STATE1_20000000)) && + !func_8082DA90(play)) { if (updateUpperBody) { sUpperBodyIsBusy = Player_UpdateUpperBody(this, play); if (Player_Action_64 == this->actionFunc) { @@ -5959,12 +5960,12 @@ void func_80834104(PlayState* play, Player* this) { } void func_80834140(PlayState* play, Player* this, PlayerAnimationHeader* anim) { - if (!(this->stateFlags1 & PLAYER_STATE1_80)) { + if (!(this->stateFlags1 & PLAYER_STATE1_DEAD)) { func_80834104(play, this); if (func_8082DA90(play)) { this->av2.actionVar2 = -30; } - this->stateFlags1 |= PLAYER_STATE1_80; + this->stateFlags1 |= PLAYER_STATE1_DEAD; PlayerAnimation_Change(play, &this->skelAnime, anim, PLAYER_ANIM_NORMAL_SPEED, 0.0f, 84.0f, ANIMMODE_ONCE, -6.0f); this->av1.actionVar1 = 1; @@ -6036,7 +6037,7 @@ s32 Player_UpdateBodyBurn(PlayState* play, Player* this) { this->bodyIsBurning = false; } - return this->stateFlags1 & PLAYER_STATE1_80; + return this->stateFlags1 & PLAYER_STATE1_DEAD; } s32 func_808344C0(PlayState* play, Player* this) { @@ -6447,7 +6448,7 @@ s32 Player_HandleExitsAndVoids(PlayState* play, Player* this, CollisionPoly* pol s32 sp34; s32 sp30; - if ((this == GET_PLAYER(play)) && !(this->stateFlags1 & PLAYER_STATE1_80) && !func_8082DA90(play) && + if ((this == GET_PLAYER(play)) && !(this->stateFlags1 & PLAYER_STATE1_DEAD) && !func_8082DA90(play) && (this->csAction == PLAYER_CSACTION_NONE) && !(this->stateFlags1 & PLAYER_STATE1_1)) { exitIndexPlusOne = 0; @@ -10670,7 +10671,7 @@ void func_80840770(PlayState* play, Player* this) { } else if (gSaveContext.healthAccumulator == 0) { Player_StopCutscene(this); - this->stateFlags1 &= ~PLAYER_STATE1_80; + this->stateFlags1 &= ~PLAYER_STATE1_DEAD; if (this->stateFlags1 & PLAYER_STATE1_8000000) { func_808353DC(play, this); } else { @@ -11662,7 +11663,7 @@ void Player_ProcessSceneCollision(PlayState* play, Player* this) { ceilingCheckHeight = this->ageProperties->ceilingCheckHeight; if (this->stateFlags1 & (PLAYER_STATE1_20000000 | PLAYER_STATE1_80000000)) { - if ((!(this->stateFlags1 & PLAYER_STATE1_80) && !(this->stateFlags2 & PLAYER_STATE2_4000) && + if ((!(this->stateFlags1 & PLAYER_STATE1_DEAD) && !(this->stateFlags2 & PLAYER_STATE2_4000) && (this->stateFlags1 & PLAYER_STATE1_80000000)) || spAC) { updBgCheckInfoFlags = UPDBGCHECKINFO_FLAG_8 | UPDBGCHECKINFO_FLAG_10 | UPDBGCHECKINFO_FLAG_20; @@ -12585,7 +12586,7 @@ void Player_UpdateCommon(Player* this, PlayState* play, Input* input) { } else if (this->pushedSpeed != 0.0f) { Math_StepToF(&this->pushedSpeed, 0.0f, (this->stateFlags1 & PLAYER_STATE1_8000000) ? 0.5f : 2.0f); } - if (!(this->stateFlags1 & (PLAYER_STATE1_80 | PLAYER_STATE1_20000000)) && + if (!(this->stateFlags1 & (PLAYER_STATE1_DEAD | PLAYER_STATE1_20000000)) && !(this->stateFlags3 & PLAYER_STATE3_80) && (Player_Action_80 != this->actionFunc)) { func_8083BB4C(play, this); if (!Play_InCsMode(play)) { @@ -12800,7 +12801,7 @@ void Player_UpdateCommon(Player* this, PlayState* play, Input* input) { Collider_UpdateCylinder(&this->actor, &this->cylinder); if (!(this->stateFlags2 & PLAYER_STATE2_4000)) { - if (!(this->stateFlags1 & (PLAYER_STATE1_4 | PLAYER_STATE1_80 | PLAYER_STATE1_2000 | PLAYER_STATE1_4000 | + if (!(this->stateFlags1 & (PLAYER_STATE1_4 | PLAYER_STATE1_DEAD | PLAYER_STATE1_2000 | PLAYER_STATE1_4000 | PLAYER_STATE1_800000)) && !(this->stateFlags3 & PLAYER_STATE3_10000000)) { if ((Player_Action_93 != this->actionFunc) && (Player_Action_73 != this->actionFunc) && @@ -12811,7 +12812,8 @@ void Player_UpdateCommon(Player* this, PlayState* play, Input* input) { CollisionCheck_SetOC(play, &play->colChkCtx, &this->cylinder.base); } } - if (!(this->stateFlags1 & (PLAYER_STATE1_80 | PLAYER_STATE1_4000000)) && (this->invincibilityTimer <= 0)) { + if (!(this->stateFlags1 & (PLAYER_STATE1_DEAD | PLAYER_STATE1_4000000)) && + (this->invincibilityTimer <= 0)) { if ((Player_Action_93 != this->actionFunc) && ((Player_Action_96 != this->actionFunc) || (this->av1.actionVar1 != 1))) { if (this->cylinder.base.atFlags != AT_NONE) { @@ -12828,7 +12830,7 @@ void Player_UpdateCommon(Player* this, PlayState* play, Input* input) { func_801229FC(this); Math_Vec3f_Copy(&this->actor.home.pos, &this->actor.world.pos); - if ((this->stateFlags1 & (PLAYER_STATE1_80 | PLAYER_STATE1_10000000 | PLAYER_STATE1_20000000)) || + if ((this->stateFlags1 & (PLAYER_STATE1_DEAD | PLAYER_STATE1_10000000 | PLAYER_STATE1_20000000)) || (this != GET_PLAYER(play))) { this->actor.colChkInfo.mass = MASS_IMMOVABLE; } else { @@ -13535,7 +13537,7 @@ void func_808475B4(Player* this) { temp_fv0 = CLAMP(temp_fv0, -0.4f, -0.1f); sp4 = temp_fv0 - ((this->actor.velocity.y <= 0.0f) ? 0.0f : this->actor.velocity.y * 0.5f); } else { - if (!(this->stateFlags1 & PLAYER_STATE1_80) && (this->currentBoots >= PLAYER_BOOTS_ZORA_UNDERWATER) && + if (!(this->stateFlags1 & PLAYER_STATE1_DEAD) && (this->currentBoots >= PLAYER_BOOTS_ZORA_UNDERWATER) && (this->actor.velocity.y >= -5.0f)) { sp4 = -0.3f; } else if ((this->transformation == PLAYER_FORM_DEKU) && (this->actor.velocity.y < 0.0f)) { @@ -21302,7 +21304,7 @@ void func_8085B170(PlayState* play, Player* this) { s32 Player_GrabPlayer(PlayState* play, Player* this) { if (!Player_InBlockingCsMode(play, this) && (this->invincibilityTimer >= 0) && !func_801240DC(this)) { - if (!(this->stateFlags1 & (PLAYER_STATE1_80 | PLAYER_STATE1_2000 | PLAYER_STATE1_4000 | PLAYER_STATE1_100000 | + if (!(this->stateFlags1 & (PLAYER_STATE1_DEAD | PLAYER_STATE1_2000 | PLAYER_STATE1_4000 | PLAYER_STATE1_100000 | PLAYER_STATE1_200000 | PLAYER_STATE1_800000))) { if (!(this->stateFlags2 & PLAYER_STATE2_80) && !(this->stateFlags3 & PLAYER_STATE3_80)) { func_8085B170(play, this); |
