summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorengineer124 <47598039+engineer124@users.noreply.github.com>2024-10-24 11:55:14 +1100
committerEblo <7004497+Eblo@users.noreply.github.com>2025-09-16 12:53:02 -0400
commitf3758ad920950e173368120ff1364ea51c5458b4 (patch)
treee1352ed8f808c5da8ebdcbd2423e96aea18601bf
parent8ba67efcb2824f88a20ce24d358b765af68d7962 (diff)
dead flag (#1735)
-rw-r--r--mm/include/z64player.h5
-rw-r--r--mm/src/code/z_actor.c26
-rw-r--r--mm/src/code/z_player_lib.c4
-rw-r--r--mm/src/overlays/actors/ovl_Arms_Hook/z_arms_hook.c2
-rw-r--r--mm/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c2
-rw-r--r--mm/src/overlays/actors/ovl_Door_Spiral/z_door_spiral.c2
-rw-r--r--mm/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c2
-rw-r--r--mm/src/overlays/actors/ovl_En_Nutsball/z_en_nutsball.c2
-rw-r--r--mm/src/overlays/actors/ovl_En_Okuta/z_en_okuta.c2
-rw-r--r--mm/src/overlays/actors/ovl_En_Railgibud/z_en_railgibud.c2
-rw-r--r--mm/src/overlays/actors/ovl_En_Rd/z_en_rd.c6
-rw-r--r--mm/src/overlays/actors/ovl_En_Talk_Gibud/z_en_talk_gibud.c2
-rw-r--r--mm/src/overlays/actors/ovl_Obj_Moon_Stone/z_obj_moon_stone.c2
-rw-r--r--mm/src/overlays/actors/ovl_player_actor/z_player.c32
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);