diff options
| author | Ralphie Morell <stratomaster64@gmail.com> | 2023-05-30 15:05:04 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-05-30 15:05:04 -0400 |
| commit | 71662c56b5fd17bebee73181c12f7098794f3014 (patch) | |
| tree | 6d62d0e1db1fb43b071f7404a71c36784571f854 /soh/src/code | |
| parent | f544aba6477f8af129f11ca002cceed9a286c6de (diff) | |
Docs: Update Player/Actor Flags (#2765)
* Actor Flags update
* player state1 flags; cleanup; prep for state2 and state3
* Player state2
* player state3
* Rename flags in Player tab
Diffstat (limited to 'soh/src/code')
| -rw-r--r-- | soh/src/code/code_800430A0.c | 2 | ||||
| -rw-r--r-- | soh/src/code/z_actor.c | 72 | ||||
| -rw-r--r-- | soh/src/code/z_en_a_keep.c | 6 | ||||
| -rw-r--r-- | soh/src/code/z_en_item00.c | 6 | ||||
| -rw-r--r-- | soh/src/code/z_player_call.c | 2 | ||||
| -rw-r--r-- | soh/src/code/z_player_lib.c | 2 |
6 files changed, 45 insertions, 45 deletions
diff --git a/soh/src/code/code_800430A0.c b/soh/src/code/code_800430A0.c index 95c7c4fc5..abaf88405 100644 --- a/soh/src/code/code_800430A0.c +++ b/soh/src/code/code_800430A0.c @@ -62,7 +62,7 @@ void func_80043334(CollisionContext* colCtx, Actor* actor, s32 bgId) { if (dynaActor != NULL) { func_800434A8(dynaActor); - if (CHECK_FLAG_ALL(actor->flags, ACTOR_FLAG_26)) { + if (CHECK_FLAG_ALL(actor->flags, ACTOR_FLAG_CAN_PRESS_SWITCH)) { func_80043538(dynaActor); } } diff --git a/soh/src/code/z_actor.c b/soh/src/code/z_actor.c index 21d4e8702..c7db247f4 100644 --- a/soh/src/code/z_actor.c +++ b/soh/src/code/z_actor.c @@ -525,7 +525,7 @@ void func_8002C124(TargetContext* targetCtx, PlayState* play) { } actor = targetCtx->unk_94; - if ((actor != NULL) && !(actor->flags & ACTOR_FLAG_27)) { + if ((actor != NULL) && !(actor->flags & ACTOR_FLAG_NO_LOCKON)) { FrameInterpolation_RecordOpenChild(actor, 1); NaviColor* naviColor = &sNaviColorList[actor->category]; @@ -620,7 +620,7 @@ void func_8002C7BC(TargetContext* targetCtx, Player* player, Actor* actorArg, Pl targetCtx->unk_48 = 0; } - lockOnSfxId = CHECK_FLAG_ALL(actorArg->flags, ACTOR_FLAG_0 | ACTOR_FLAG_2) ? NA_SE_SY_LOCK_ON + lockOnSfxId = CHECK_FLAG_ALL(actorArg->flags, ACTOR_FLAG_TARGETABLE | ACTOR_FLAG_HOSTILE) ? NA_SE_SY_LOCK_ON : NA_SE_SY_LOCK_ON_HUMAN; func_80078884(lockOnSfxId); } @@ -1147,7 +1147,7 @@ s32 func_8002D53C(PlayState* play, TitleCardContext* titleCtx) { void Actor_Kill(Actor* actor) { actor->draw = NULL; actor->update = NULL; - actor->flags &= ~ACTOR_FLAG_0; + actor->flags &= ~ACTOR_FLAG_TARGETABLE; } void Actor_SetWorldToHome(Actor* actor) { @@ -1393,8 +1393,8 @@ void func_8002DE04(PlayState* play, Actor* actorA, Actor* actorB) { hookshot->grabbedDistDiff.x = 0.0f; hookshot->grabbedDistDiff.y = 0.0f; hookshot->grabbedDistDiff.z = 0.0f; - actorB->flags |= ACTOR_FLAG_13; - actorA->flags &= ~ACTOR_FLAG_13; + actorB->flags |= ACTOR_FLAG_HOOKSHOT_ATTACHED; + actorA->flags &= ~ACTOR_FLAG_HOOKSHOT_ATTACHED; } void func_8002DE74(PlayState* play, Player* player) { @@ -1829,7 +1829,7 @@ f32 func_8002EFC0(Actor* actor, Player* player, s16 arg2) { s16 yawTempAbs = ABS(yawTemp); if (player->unk_664 != NULL) { - if ((yawTempAbs > 0x4000) || (actor->flags & ACTOR_FLAG_27)) { + if ((yawTempAbs > 0x4000) || (actor->flags & ACTOR_FLAG_NO_LOCKON)) { return FLT_MAX; } else { f32 ret = @@ -1865,7 +1865,7 @@ u32 func_8002F090(Actor* actor, f32 arg1) { } s32 func_8002F0C8(Actor* actor, Player* player, s32 flag) { - if ((actor->update == NULL) || !(actor->flags & ACTOR_FLAG_0)) { + if ((actor->update == NULL) || !(actor->flags & ACTOR_FLAG_TARGETABLE)) { return true; } @@ -1887,8 +1887,8 @@ s32 func_8002F0C8(Actor* actor, Player* player, s32 flag) { } u32 Actor_ProcessTalkRequest(Actor* actor, PlayState* play) { - if (actor->flags & ACTOR_FLAG_8) { - actor->flags &= ~ACTOR_FLAG_8; + if (actor->flags & ACTOR_FLAG_PLAYER_TALKED_TO) { + actor->flags &= ~ACTOR_FLAG_PLAYER_TALKED_TO; return true; } @@ -1899,7 +1899,7 @@ s32 func_8002F1C4(Actor* actor, PlayState* play, f32 arg2, f32 arg3, u32 exchang Player* player = GET_PLAYER(play); // This is convoluted but it seems like it must be a single if statement to match - if ((player->actor.flags & ACTOR_FLAG_8) || ((exchangeItemId != EXCH_ITEM_NONE) && Player_InCsMode(play)) || + if ((player->actor.flags & ACTOR_FLAG_PLAYER_TALKED_TO) || ((exchangeItemId != EXCH_ITEM_NONE) && Player_InCsMode(play)) || (!actor->isTargeted && ((arg3 < fabsf(actor->yDistToPlayer)) || (player->targetActorDistance < actor->xzDistToPlayer) || (arg2 < actor->xzDistToPlayer)))) { @@ -2201,30 +2201,30 @@ void func_8002F850(PlayState* play, Actor* actor) { void func_8002F8F0(Actor* actor, u16 sfxId) { actor->sfx = sfxId; - actor->flags |= ACTOR_FLAG_19; - actor->flags &= ~(ACTOR_FLAG_20 | ACTOR_FLAG_21 | ACTOR_FLAG_28); + actor->flags |= ACTOR_FLAG_SFX_AT_POS; + actor->flags &= ~(ACTOR_FLAG_SFX_AT_CENTER | ACTOR_FLAG_SFX_AT_CENTER2 | ACTOR_FLAG_SFX_AS_TIMER); } void func_8002F91C(Actor* actor, u16 sfxId) { actor->sfx = sfxId; - actor->flags |= ACTOR_FLAG_20; - actor->flags &= ~(ACTOR_FLAG_19 | ACTOR_FLAG_21 | ACTOR_FLAG_28); + actor->flags |= ACTOR_FLAG_SFX_AT_CENTER; + actor->flags &= ~(ACTOR_FLAG_SFX_AT_POS | ACTOR_FLAG_SFX_AT_CENTER2 | ACTOR_FLAG_SFX_AS_TIMER); } void func_8002F948(Actor* actor, u16 sfxId) { actor->sfx = sfxId; - actor->flags |= ACTOR_FLAG_21; - actor->flags &= ~(ACTOR_FLAG_19 | ACTOR_FLAG_20 | ACTOR_FLAG_28); + actor->flags |= ACTOR_FLAG_SFX_AT_CENTER2; + actor->flags &= ~(ACTOR_FLAG_SFX_AT_POS | ACTOR_FLAG_SFX_AT_CENTER | ACTOR_FLAG_SFX_AS_TIMER); } void func_8002F974(Actor* actor, u16 sfxId) { - actor->flags &= ~(ACTOR_FLAG_19 | ACTOR_FLAG_20 | ACTOR_FLAG_21 | ACTOR_FLAG_28); + actor->flags &= ~(ACTOR_FLAG_SFX_AT_POS | ACTOR_FLAG_SFX_AT_CENTER | ACTOR_FLAG_SFX_AT_CENTER2 | ACTOR_FLAG_SFX_AS_TIMER); actor->sfx = sfxId; } void func_8002F994(Actor* actor, s32 arg1) { - actor->flags |= ACTOR_FLAG_28; - actor->flags &= ~(ACTOR_FLAG_19 | ACTOR_FLAG_20 | ACTOR_FLAG_21); + actor->flags |= ACTOR_FLAG_SFX_AS_TIMER; + actor->flags &= ~(ACTOR_FLAG_SFX_AT_POS | ACTOR_FLAG_SFX_AT_CENTER | ACTOR_FLAG_SFX_AT_CENTER2); if (arg1 < 40) { actor->sfx = NA_SE_PL_WALK_DIRT - SFX_FLAG; } else if (arg1 < 100) { @@ -2523,7 +2523,7 @@ void Actor_UpdateAll(PlayState* play, ActorContext* actorCtx) { sp80 = &D_80116068[0]; if (player->stateFlags2 & 0x8000000) { - unkFlag = ACTOR_FLAG_25; + unkFlag = ACTOR_FLAG_NO_FREEZE_OCARINA; } if ((player->stateFlags1 & 0x40) && ((player->actor.textId & 0xFF00) != 0x600)) { @@ -2571,9 +2571,9 @@ void Actor_UpdateAll(PlayState* play, ActorContext* actorCtx) { actor->xyzDistToPlayerSq = SQ(actor->xzDistToPlayer) + SQ(actor->yDistToPlayer); actor->yawTowardsPlayer = Actor_WorldYawTowardActor(actor, &player->actor); - actor->flags &= ~ACTOR_FLAG_24; + actor->flags &= ~ACTOR_FLAG_PLAY_HIT_SFX; - if ((DECR(actor->freezeTimer) == 0) && (actor->flags & (ACTOR_FLAG_4 | ACTOR_FLAG_6))) { + if ((DECR(actor->freezeTimer) == 0) && (actor->flags & (ACTOR_FLAG_UPDATE_WHILE_CULLED | ACTOR_FLAG_ACTIVE))) { if (actor == player->unk_664) { actor->isTargeted = true; } else { @@ -2657,11 +2657,11 @@ void Actor_Draw(PlayState* play, Actor* actor) { lights = LightContext_NewLights(&play->lightCtx, play->state.gfxCtx); - Lights_BindAll(lights, play->lightCtx.listHead, (actor->flags & ACTOR_FLAG_22) ? NULL : &actor->world.pos); + Lights_BindAll(lights, play->lightCtx.listHead, (actor->flags & ACTOR_FLAG_IGNORE_POINTLIGHTS) ? NULL : &actor->world.pos); Lights_Draw(lights, play->state.gfxCtx); FrameInterpolation_RecordActorPosRotMatrix(); - if (actor->flags & ACTOR_FLAG_12) { + if (actor->flags & ACTOR_FLAG_IGNORE_QUAKE) { Matrix_SetTranslateRotateYXZ( actor->world.pos.x + play->mainCamera.skyboxOffset.x, actor->world.pos.y + (f32)((actor->shape.yOffset * actor->scale.y) + play->mainCamera.skyboxOffset.y), @@ -2716,13 +2716,13 @@ void Actor_Draw(PlayState* play, Actor* actor) { } void func_80030ED8(Actor* actor) { - if (actor->flags & ACTOR_FLAG_19) { + if (actor->flags & ACTOR_FLAG_SFX_AT_POS) { Audio_PlaySoundGeneral(actor->sfx, &actor->projectedPos, 4, &D_801333E0, &D_801333E0, &D_801333E8); - } else if (actor->flags & ACTOR_FLAG_20) { + } else if (actor->flags & ACTOR_FLAG_SFX_AT_CENTER) { func_80078884(actor->sfx); - } else if (actor->flags & ACTOR_FLAG_21) { + } else if (actor->flags & ACTOR_FLAG_SFX_AT_CENTER2) { func_800788CC(actor->sfx); - } else if (actor->flags & ACTOR_FLAG_28) { + } else if (actor->flags & ACTOR_FLAG_SFX_AS_TIMER) { func_800F4C58(&D_801333D4, NA_SE_SY_TIMER - SFX_FLAG, (s8)(actor->sfx - 1)); } else { func_80078914(&actor->projectedPos, actor->sfx); @@ -2908,17 +2908,17 @@ void func_800315AC(PlayState* play, ActorContext* actorCtx) { if ((HREG(64) != 1) || ((HREG(65) != -1) && (HREG(65) != HREG(66))) || (HREG(70) == 0)) { if (func_800314B0(play, actor)) { - actor->flags |= ACTOR_FLAG_6; + actor->flags |= ACTOR_FLAG_ACTIVE; } else { - actor->flags &= ~ACTOR_FLAG_6; + actor->flags &= ~ACTOR_FLAG_ACTIVE; } } actor->isDrawn = false; if ((HREG(64) != 1) || ((HREG(65) != -1) && (HREG(65) != HREG(66))) || (HREG(71) == 0)) { - if ((actor->init == NULL) && (actor->draw != NULL) && (actor->flags & (ACTOR_FLAG_5 | ACTOR_FLAG_6))) { - if ((actor->flags & ACTOR_FLAG_7) && + if ((actor->init == NULL) && (actor->draw != NULL) && (actor->flags & (ACTOR_FLAG_DRAW_WHILE_CULLED | ACTOR_FLAG_ACTIVE))) { + if ((actor->flags & ACTOR_FLAG_LENS) && ((play->roomCtx.curRoom.lensMode == LENS_MODE_HIDE_ACTORS) || play->actorCtx.lensActive || (actor->room != play->roomCtx.curRoom.num))) { ASSERT(invisibleActorCounter < INVISIBLE_ACTOR_MAX); @@ -3458,11 +3458,11 @@ void func_800328D4(PlayState* play, ActorContext* actorCtx, Player* player, u32 sp84 = player->unk_664; while (actor != NULL) { - if ((actor->update != NULL) && ((Player*)actor != player) && CHECK_FLAG_ALL(actor->flags, ACTOR_FLAG_0)) { + if ((actor->update != NULL) && ((Player*)actor != player) && CHECK_FLAG_ALL(actor->flags, ACTOR_FLAG_TARGETABLE)) { // This block below is for determining the closest actor to player in determining the volume // used while playing enemy bgm music - if ((actorCategory == ACTORCAT_ENEMY) && CHECK_FLAG_ALL(actor->flags, ACTOR_FLAG_0 | ACTOR_FLAG_2) && + if ((actorCategory == ACTORCAT_ENEMY) && CHECK_FLAG_ALL(actor->flags, ACTOR_FLAG_TARGETABLE | ACTOR_FLAG_HOSTILE) && (actor->xyzDistToPlayerSq < SQ(500.0f)) && (actor->xyzDistToPlayerSq < sbgmEnemyDistSq)) { actorCtx->targetCtx.bgmEnemy = actor; sbgmEnemyDistSq = actor->xyzDistToPlayerSq; @@ -4510,10 +4510,10 @@ s16 func_80034DD4(Actor* actor, PlayState* play, s16 arg2, f32 arg3) { } if (arg3 < var) { - actor->flags &= ~ACTOR_FLAG_0; + actor->flags &= ~ACTOR_FLAG_TARGETABLE; Math_SmoothStepToS(&arg2, 0, 6, 0x14, 1); } else { - actor->flags |= ACTOR_FLAG_0; + actor->flags |= ACTOR_FLAG_TARGETABLE; Math_SmoothStepToS(&arg2, 0xFF, 6, 0x14, 1); } diff --git a/soh/src/code/z_en_a_keep.c b/soh/src/code/z_en_a_keep.c index abdc07ecc..c0eded587 100644 --- a/soh/src/code/z_en_a_keep.c +++ b/soh/src/code/z_en_a_keep.c @@ -3,7 +3,7 @@ #include "objects/gameplay_keep/gameplay_keep.h" #include <objects/object_d_hsblock/object_d_hsblock.h> -#define FLAGS ACTOR_FLAG_4 +#define FLAGS ACTOR_FLAG_UPDATE_WHILE_CULLED void EnAObj_Init(Actor* thisx, PlayState* play); void EnAObj_Destroy(Actor* thisx, PlayState* play); @@ -142,7 +142,7 @@ void EnAObj_Init(Actor* thisx, PlayState* play) { break; case A_OBJ_UNKNOWN_6: // clang-format off - thisx->flags |= ACTOR_FLAG_0; this->dyna.bgId = 5; this->focusYoffset = 10.0f; + thisx->flags |= ACTOR_FLAG_TARGETABLE; this->dyna.bgId = 5; this->focusYoffset = 10.0f; // clang-format on thisx->gravity = -2.0f; EnAObj_SetupWaitTalk(this, thisx->params); @@ -156,7 +156,7 @@ void EnAObj_Init(Actor* thisx, PlayState* play) { case A_OBJ_SIGNPOST_ARROW: thisx->textId = (this->textId & 0xFF) | 0x300; // clang-format off - thisx->flags |= ACTOR_FLAG_0 | ACTOR_FLAG_3; thisx->targetArrowOffset = 500.0f; + thisx->flags |= ACTOR_FLAG_TARGETABLE | ACTOR_FLAG_FRIENDLY; thisx->targetArrowOffset = 500.0f; // clang-format on this->focusYoffset = 45.0f; EnAObj_SetupWaitTalk(this, thisx->params); diff --git a/soh/src/code/z_en_item00.c b/soh/src/code/z_en_item00.c index 6ab7c0ede..cfe5a96d3 100644 --- a/soh/src/code/z_en_item00.c +++ b/soh/src/code/z_en_item00.c @@ -1642,7 +1642,7 @@ EnItem00* Item_DropCollectible(PlayState* play, Vec3f* spawnPos, s16 params) { (spawnedActor->actor.params != ITEM00_HEART_CONTAINER)) { spawnedActor->actor.room = -1; } - spawnedActor->actor.flags |= ACTOR_FLAG_4; + spawnedActor->actor.flags |= ACTOR_FLAG_UPDATE_WHILE_CULLED; } } } @@ -1676,7 +1676,7 @@ EnItem00* Item_DropCollectible2(PlayState* play, Vec3f* spawnPos, s16 params) { spawnedActor->actor.speedXZ = 0.0f; spawnedActor->actor.gravity = param4000 ? 0.0f : -0.9f; spawnedActor->actor.world.rot.y = Rand_CenteredFloat(65536.0f); - spawnedActor->actor.flags |= ACTOR_FLAG_4; + spawnedActor->actor.flags |= ACTOR_FLAG_UPDATE_WHILE_CULLED; } } } @@ -1790,7 +1790,7 @@ void Item_DropCollectibleRandom(PlayState* play, Actor* fromActor, Vec3f* spawnP spawnedActor->actor.world.rot.y = Rand_ZeroOne() * 40000.0f; Actor_SetScale(&spawnedActor->actor, 0.0f); EnItem00_SetupAction(spawnedActor, func_8001E304); - spawnedActor->actor.flags |= ACTOR_FLAG_4; + spawnedActor->actor.flags |= ACTOR_FLAG_UPDATE_WHILE_CULLED; if ((spawnedActor->actor.params != ITEM00_SMALL_KEY) && (spawnedActor->actor.params != ITEM00_HEART_PIECE) && (spawnedActor->actor.params != ITEM00_HEART_CONTAINER)) { diff --git a/soh/src/code/z_player_call.c b/soh/src/code/z_player_call.c index 901280787..89d093383 100644 --- a/soh/src/code/z_player_call.c +++ b/soh/src/code/z_player_call.c @@ -1,6 +1,6 @@ #include "global.h" -#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_5 | ACTOR_FLAG_25 | ACTOR_FLAG_26) +#define FLAGS (ACTOR_FLAG_TARGETABLE | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_UPDATE_WHILE_CULLED | ACTOR_FLAG_DRAW_WHILE_CULLED | ACTOR_FLAG_NO_FREEZE_OCARINA | ACTOR_FLAG_CAN_PRESS_SWITCH) void (*sPlayerCallInitFunc)(Actor* thisx, PlayState* play); void (*sPlayerCallDestroyFunc)(Actor* thisx, PlayState* play); diff --git a/soh/src/code/z_player_lib.c b/soh/src/code/z_player_lib.c index d556fcc30..581044935 100644 --- a/soh/src/code/z_player_lib.c +++ b/soh/src/code/z_player_lib.c @@ -1490,7 +1490,7 @@ void func_80090D20(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* rot, void Matrix_Get(&sp14C); Matrix_MtxFToYXZRotS(&sp14C, &spB8, 0); - if (hookedActor->flags & ACTOR_FLAG_17) { + if (hookedActor->flags & ACTOR_FLAG_PILLAR_PICKUP) { hookedActor->world.rot.x = hookedActor->shape.rot.x = spB8.x - this->unk_3BC.x; } else { hookedActor->world.rot.y = hookedActor->shape.rot.y = this->actor.shape.rot.y + this->unk_3BC.y; |
