1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-07-04 23:14:37 +00:00

Document Attention/Lock-on Related Actor Flags (#2161)

* document actor flags 0, 2, 3, and 27

* format

* fly -> hover

* wodring
This commit is contained in:
fig02 2024-09-07 17:53:48 -04:00 committed by GitHub
parent a039aeffb7
commit 2056ae5f1a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
181 changed files with 616 additions and 597 deletions

View file

@ -107,14 +107,19 @@ typedef struct ActorShape {
/* 0x18 */ Vec3f feetPos[2]; // Update by using `Actor_SetFeetPos` in PostLimbDraw /* 0x18 */ Vec3f feetPos[2]; // Update by using `Actor_SetFeetPos` in PostLimbDraw
} ActorShape; // size = 0x30 } ActorShape; // size = 0x30
// // Actor is discoverable by the Attention System. This enables Navi to hover over the actor when it is in range.
#define ACTOR_FLAG_0 (1 << 0) // The actor can also be locked onto (as long as `ACTOR_FLAG_LOCK_ON_DISABLED` is not set).
#define ACTOR_FLAG_ATTENTION_ENABLED (1 << 0)
// // Actor is hostile toward the Player. Player has specific "battle" behavior when locked onto hostile actors.
#define ACTOR_FLAG_2 (1 << 2) // Enemy background music will also be played when the player is close enough to a hostile actor.
// Note: This must be paired with `ACTOR_FLAG_ATTENTION_ENABLED` to have any effect.
#define ACTOR_FLAG_HOSTILE (1 << 2)
// // Actor is not hostile toward the player; Opposite flag of `ACTOR_FLAG_HOSTILE`.
#define ACTOR_FLAG_3 (1 << 3) // Note that this flag doesn't have any effect on either the actor, or Player's behvaior.
// What actually matters is the presence or lack of `ACTOR_FLAG_HOSTILE`.
#define ACTOR_FLAG_NEUTRAL (1 << 3)
// //
#define ACTOR_FLAG_4 (1 << 4) #define ACTOR_FLAG_4 (1 << 4)
@ -187,8 +192,9 @@ typedef struct ActorShape {
// //
#define ACTOR_FLAG_26 (1 << 26) #define ACTOR_FLAG_26 (1 << 26)
// // Player is not able to lock onto the actor.
#define ACTOR_FLAG_27 (1 << 27) // Navi will still be able to hover over the actor, assuming `ACTOR_FLAG_ATTENTION_ENABLED` is set.
#define ACTOR_FLAG_LOCK_ON_DISABLED (1 << 27)
// //
#define ACTOR_FLAG_28 (1 << 28) #define ACTOR_FLAG_28 (1 << 28)

View file

@ -431,7 +431,7 @@ void Attention_Draw(Attention* attention, PlayState* play) {
actor = attention->arrowHoverActor; actor = attention->arrowHoverActor;
if ((actor != NULL) && !(actor->flags & ACTOR_FLAG_27)) { if ((actor != NULL) && !(actor->flags & ACTOR_FLAG_LOCK_ON_DISABLED)) {
AttentionColor* attentionColor = &sAttentionColors[actor->category]; AttentionColor* attentionColor = &sAttentionColors[actor->category];
POLY_XLU_DISP = Gfx_SetupDL(POLY_XLU_DISP, SETUPDL_7); POLY_XLU_DISP = Gfx_SetupDL(POLY_XLU_DISP, SETUPDL_7);
@ -545,8 +545,9 @@ void Attention_Update(Attention* attention, Player* player, Actor* playerFocusAc
attention->reticleFadeAlphaControl = 0; attention->reticleFadeAlphaControl = 0;
} }
lockOnSfxId = CHECK_FLAG_ALL(playerFocusActor->flags, ACTOR_FLAG_0 | ACTOR_FLAG_2) ? NA_SE_SY_LOCK_ON lockOnSfxId = CHECK_FLAG_ALL(playerFocusActor->flags, ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE)
: NA_SE_SY_LOCK_ON_HUMAN; ? NA_SE_SY_LOCK_ON
: NA_SE_SY_LOCK_ON_HUMAN;
Sfx_PlaySfxCentered(lockOnSfxId); Sfx_PlaySfxCentered(lockOnSfxId);
} }
@ -848,7 +849,7 @@ s32 TitleCard_Clear(PlayState* play, TitleCardContext* titleCtx) {
void Actor_Kill(Actor* actor) { void Actor_Kill(Actor* actor) {
actor->draw = NULL; actor->draw = NULL;
actor->update = NULL; actor->update = NULL;
actor->flags &= ~ACTOR_FLAG_0; actor->flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
void Actor_SetWorldToHome(Actor* actor) { void Actor_SetWorldToHome(Actor* actor) {
@ -1589,7 +1590,7 @@ f32 Attention_WeightedDistToPlayerSq(Actor* actor, Player* player, s16 playerSha
s16 yawTempAbs = ABS(yawTemp); s16 yawTempAbs = ABS(yawTemp);
if (player->focusActor != NULL) { if (player->focusActor != NULL) {
if ((yawTempAbs > 0x4000) || (actor->flags & ACTOR_FLAG_27)) { if ((yawTempAbs > 0x4000) || (actor->flags & ACTOR_FLAG_LOCK_ON_DISABLED)) {
return MAXFLOAT; return MAXFLOAT;
} else { } else {
f32 adjDistSq; f32 adjDistSq;
@ -1650,14 +1651,14 @@ u32 Attention_ActorIsInRange(Actor* actor, f32 distSq) {
* Returns true if an actor lock-on should be released. * Returns true if an actor lock-on should be released.
* This function does not actually release the lock-on, as that is Player's responsibility. * This function does not actually release the lock-on, as that is Player's responsibility.
* *
* If an actor's update function is NULL or `ACTOR_FLAG_0` is unset, the lock-on should be released. * If an actor's update function is NULL or `ACTOR_FLAG_ATTENTION_ENABLED` is unset, the lock-on should be released.
* *
* There is also a check for Player exceeding the lock-on leash distance. * There is also a check for Player exceeding the lock-on leash distance.
* Note that this check will be ignored if `ignoreLeash` is true. * Note that this check will be ignored if `ignoreLeash` is true.
* *
*/ */
s32 Attention_ShouldReleaseLockOn(Actor* actor, Player* player, s32 ignoreLeash) { s32 Attention_ShouldReleaseLockOn(Actor* actor, Player* player, s32 ignoreLeash) {
if ((actor->update == NULL) || !(actor->flags & ACTOR_FLAG_0)) { if ((actor->update == NULL) || !(actor->flags & ACTOR_FLAG_ATTENTION_ENABLED)) {
return true; return true;
} }
@ -3208,7 +3209,7 @@ s16 sAttentionPlayerRotY;
* To be considered an attention actor the actor needs to: * To be considered an attention actor the actor needs to:
* - Have a non-NULL update function (still active) * - Have a non-NULL update function (still active)
* - Not be player (this is technically a redundant check because the PLAYER category is never searched) * - Not be player (this is technically a redundant check because the PLAYER category is never searched)
* - Have `ACTOR_FLAG_0` set * - Have `ACTOR_FLAG_ATTENTION_ENABLED` set
* - Not be the current focus actor * - Not be the current focus actor
* - Be the closest attention actor found so far * - Be the closest attention actor found so far
* - Be within range, specified by attentionRangeType * - Be within range, specified by attentionRangeType
@ -3233,8 +3234,10 @@ void Attention_FindActorInCategory(PlayState* play, ActorContext* actorCtx, Play
playerFocusActor = player->focusActor; playerFocusActor = player->focusActor;
while (actor != NULL) { 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) &&
if ((actorCategory == ACTORCAT_ENEMY) && CHECK_FLAG_ALL(actor->flags, ACTOR_FLAG_0 | ACTOR_FLAG_2) && CHECK_FLAG_ALL(actor->flags, ACTOR_FLAG_ATTENTION_ENABLED)) {
if ((actorCategory == ACTORCAT_ENEMY) &&
CHECK_FLAG_ALL(actor->flags, ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE) &&
(actor->xyzDistToPlayerSq < SQ(500.0f)) && (actor->xyzDistToPlayerSq < sBgmEnemyDistSq)) { (actor->xyzDistToPlayerSq < SQ(500.0f)) && (actor->xyzDistToPlayerSq < sBgmEnemyDistSq)) {
actorCtx->attention.bgmEnemy = actor; actorCtx->attention.bgmEnemy = actor;
sBgmEnemyDistSq = actor->xyzDistToPlayerSq; sBgmEnemyDistSq = actor->xyzDistToPlayerSq;
@ -4335,10 +4338,10 @@ s16 func_80034DD4(Actor* actor, PlayState* play, s16 arg2, f32 arg3) {
} }
if (arg3 < var) { if (arg3 < var) {
actor->flags &= ~ACTOR_FLAG_0; actor->flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Math_SmoothStepToS(&arg2, 0, 6, 0x14, 1); Math_SmoothStepToS(&arg2, 0, 6, 0x14, 1);
} else { } else {
actor->flags |= ACTOR_FLAG_0; actor->flags |= ACTOR_FLAG_ATTENTION_ENABLED;
Math_SmoothStepToS(&arg2, 0xFF, 6, 0x14, 1); Math_SmoothStepToS(&arg2, 0xFF, 6, 0x14, 1);
} }

View file

@ -132,7 +132,7 @@ void EnAObj_Init(Actor* thisx, PlayState* play) {
break; break;
case A_OBJ_UNKNOWN_6: case A_OBJ_UNKNOWN_6:
this->focusYoffset = 10.0f; this->focusYoffset = 10.0f;
thisx->flags |= ACTOR_FLAG_0; thisx->flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->dyna.bgId = 5; this->dyna.bgId = 5;
thisx->gravity = -2.0f; thisx->gravity = -2.0f;
EnAObj_SetupWaitTalk(this, thisx->params); EnAObj_SetupWaitTalk(this, thisx->params);
@ -146,7 +146,7 @@ void EnAObj_Init(Actor* thisx, PlayState* play) {
case A_OBJ_SIGNPOST_ARROW: case A_OBJ_SIGNPOST_ARROW:
thisx->textId = (this->textId & 0xFF) | 0x300; thisx->textId = (this->textId & 0xFF) | 0x300;
thisx->lockOnArrowOffset = 500.0f; thisx->lockOnArrowOffset = 500.0f;
thisx->flags |= ACTOR_FLAG_0 | ACTOR_FLAG_3; thisx->flags |= ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL;
this->focusYoffset = 45.0f; this->focusYoffset = 45.0f;
EnAObj_SetupWaitTalk(this, thisx->params); EnAObj_SetupWaitTalk(this, thisx->params);
Collider_InitCylinder(play, &this->collider); Collider_InitCylinder(play, &this->collider);

View file

@ -1,6 +1,7 @@
#include "global.h" #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_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_5 | ACTOR_FLAG_25 | ACTOR_FLAG_26)
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" #pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128"

View file

@ -164,7 +164,7 @@ void BgBdanSwitch_Init(Actor* thisx, PlayState* play) {
case YELLOW_TALL_1: case YELLOW_TALL_1:
case YELLOW_TALL_2: case YELLOW_TALL_2:
BgBdanSwitch_InitCollision(this, play); BgBdanSwitch_InitCollision(this, play);
this->dyna.actor.flags |= ACTOR_FLAG_0; this->dyna.actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->dyna.actor.attentionRangeType = ATTENTION_RANGE_4; this->dyna.actor.attentionRangeType = ATTENTION_RANGE_4;
break; break;
} }

View file

@ -8,7 +8,7 @@
#include "assets/objects/object_haka_objects/object_haka_objects.h" #include "assets/objects/object_haka_objects/object_haka_objects.h"
#include "assets/objects/object_ice_objects/object_ice_objects.h" #include "assets/objects/object_ice_objects/object_ice_objects.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_4)
typedef enum SpinningScytheTrapMode { typedef enum SpinningScytheTrapMode {
/* 0 */ SCYTHE_TRAP_SHADOW_TEMPLE, /* 0 */ SCYTHE_TRAP_SHADOW_TEMPLE,
@ -170,7 +170,7 @@ void BgHakaSgami_Init(Actor* thisx, PlayState* play) {
if (thisx->params == SCYTHE_TRAP_SHADOW_TEMPLE) { if (thisx->params == SCYTHE_TRAP_SHADOW_TEMPLE) {
this->requiredObjectSlot = Object_GetSlot(&play->objectCtx, OBJECT_HAKA_OBJECTS); this->requiredObjectSlot = Object_GetSlot(&play->objectCtx, OBJECT_HAKA_OBJECTS);
thisx->flags &= ~ACTOR_FLAG_0; thisx->flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} else { } else {
this->requiredObjectSlot = Object_GetSlot(&play->objectCtx, OBJECT_ICE_OBJECTS); this->requiredObjectSlot = Object_GetSlot(&play->objectCtx, OBJECT_ICE_OBJECTS);
this->colliderScytheCenter.dim.radius = 30; this->colliderScytheCenter.dim.radius = 30;

View file

@ -1,7 +1,7 @@
#include "z_bg_jya_bombchuiwa.h" #include "z_bg_jya_bombchuiwa.h"
#include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h" #include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h"
#include "assets/objects/object_jya_obj/object_jya_obj.h" #include "assets/objects/object_jya_obj/object_jya_obj.h"
#define FLAGS ACTOR_FLAG_0 #define FLAGS ACTOR_FLAG_ATTENTION_ENABLED
void BgJyaBombchuiwa_Init(Actor* thisx, PlayState* play); void BgJyaBombchuiwa_Init(Actor* thisx, PlayState* play);
void BgJyaBombchuiwa_Destroy(Actor* thisx, PlayState* play2); void BgJyaBombchuiwa_Destroy(Actor* thisx, PlayState* play2);
@ -162,7 +162,7 @@ void BgJyaBombchuiwa_CleanUpAfterExplosion(BgJyaBombchuiwa* this, PlayState* pla
BgJyaBombchuiwa_SetDrawFlags(this, 4); BgJyaBombchuiwa_SetDrawFlags(this, 4);
this->lightRayIntensity = 0.3f; this->lightRayIntensity = 0.3f;
this->timer = 0; this->timer = 0;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
void func_808949B8(BgJyaBombchuiwa* this, PlayState* play) { void func_808949B8(BgJyaBombchuiwa* this, PlayState* play) {

View file

@ -330,7 +330,7 @@ void BgMizuMovebg_UpdateMain(BgMizuMovebg* this, PlayState* play) {
this->dyna.actor.child->world.pos.x = this->dyna.actor.world.pos.x + offsetPos.x; this->dyna.actor.child->world.pos.x = this->dyna.actor.world.pos.x + offsetPos.x;
this->dyna.actor.child->world.pos.y = this->dyna.actor.world.pos.y + offsetPos.y; this->dyna.actor.child->world.pos.y = this->dyna.actor.world.pos.y + offsetPos.y;
this->dyna.actor.child->world.pos.z = this->dyna.actor.world.pos.z + offsetPos.z; this->dyna.actor.child->world.pos.z = this->dyna.actor.world.pos.z + offsetPos.z;
this->dyna.actor.child->flags &= ~ACTOR_FLAG_0; this->dyna.actor.child->flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
break; break;
} }

View file

@ -138,7 +138,7 @@ s32 BgMoriHashigo_SpawnLadder(BgMoriHashigo* this, PlayState* play) {
s32 BgMoriHashigo_InitClasp(BgMoriHashigo* this, PlayState* play) { s32 BgMoriHashigo_InitClasp(BgMoriHashigo* this, PlayState* play) {
Actor_ProcessInitChain(&this->dyna.actor, sInitChainClasp); Actor_ProcessInitChain(&this->dyna.actor, sInitChainClasp);
this->dyna.actor.flags |= ACTOR_FLAG_0; this->dyna.actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
Actor_SetFocus(&this->dyna.actor, 55.0f); Actor_SetFocus(&this->dyna.actor, 55.0f);
BgMoriHashigo_InitCollider(this, play); BgMoriHashigo_InitCollider(this, play);
if ((this->dyna.actor.params == HASHIGO_CLASP) && !BgMoriHashigo_SpawnLadder(this, play)) { if ((this->dyna.actor.params == HASHIGO_CLASP) && !BgMoriHashigo_SpawnLadder(this, play)) {

View file

@ -142,9 +142,9 @@ void func_808BC8B8(BgTreemouth* this, PlayState* play) {
if (!LINK_IS_ADULT) { if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_0C)) { if (Flags_GetEventChkInf(EVENTCHKINF_0C)) {
if (Actor_IsFacingAndNearPlayer(&this->dyna.actor, 1658.0f, 0x7530)) { if (Actor_IsFacingAndNearPlayer(&this->dyna.actor, 1658.0f, 0x7530)) {
this->dyna.actor.flags |= ACTOR_FLAG_0; this->dyna.actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
if (this->dyna.actor.isLockedOn) { if (this->dyna.actor.isLockedOn) {
this->dyna.actor.flags &= ~ACTOR_FLAG_0; this->dyna.actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
play->csCtx.script = D_808BD2A0; play->csCtx.script = D_808BD2A0;
gSaveContext.cutsceneTrigger = 1; gSaveContext.cutsceneTrigger = 1;
BgTreemouth_SetupAction(this, func_808BC9EC); BgTreemouth_SetupAction(this, func_808BC9EC);

View file

@ -3,7 +3,7 @@
#include "overlays/actors/ovl_Door_Warp1/z_door_warp1.h" #include "overlays/actors/ovl_Door_Warp1/z_door_warp1.h"
#include "assets/scenes/dungeons/ddan_boss/ddan_boss_room_1.h" #include "assets/scenes/dungeons/ddan_boss/ddan_boss_room_1.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_5) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_5)
void BossDodongo_Init(Actor* thisx, PlayState* play); void BossDodongo_Init(Actor* thisx, PlayState* play);
void BossDodongo_Destroy(Actor* thisx, PlayState* play); void BossDodongo_Destroy(Actor* thisx, PlayState* play);
@ -217,7 +217,7 @@ void BossDodongo_Init(Actor* thisx, PlayState* play) {
} }
} }
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
void BossDodongo_Destroy(Actor* thisx, PlayState* play) { void BossDodongo_Destroy(Actor* thisx, PlayState* play) {
@ -476,7 +476,7 @@ void BossDodongo_SetupWalk(BossDodongo* this) {
this->unk_1AA = 0; this->unk_1AA = 0;
this->actionFunc = BossDodongo_Walk; this->actionFunc = BossDodongo_Walk;
this->unk_1DA = 0; this->unk_1DA = 0;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->unk_1E4 = 0.0f; this->unk_1E4 = 0.0f;
} }
@ -1279,7 +1279,7 @@ void BossDodongo_SetupDeathCutscene(BossDodongo* this) {
Actor_PlaySfx(&this->actor, NA_SE_EN_DODO_K_DEAD); Actor_PlaySfx(&this->actor, NA_SE_EN_DODO_K_DEAD);
this->unk_1DA = 0; this->unk_1DA = 0;
this->csState = 0; this->csState = 0;
this->actor.flags &= ~(ACTOR_FLAG_0 | ACTOR_FLAG_2); this->actor.flags &= ~(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE);
this->unk_1BC = 1; this->unk_1BC = 1;
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 1); SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 1);
} }

View file

@ -12,7 +12,7 @@
#include "overlays/actors/ovl_Door_Warp1/z_door_warp1.h" #include "overlays/actors/ovl_Door_Warp1/z_door_warp1.h"
#include "assets/objects/gameplay_keep/gameplay_keep.h" #include "assets/objects/gameplay_keep/gameplay_keep.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_5) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_5)
typedef enum BossFdIntroFlyState { typedef enum BossFdIntroFlyState {
/* 0 */ INTRO_FLY_EMERGE, /* 0 */ INTRO_FLY_EMERGE,
@ -1277,9 +1277,9 @@ void BossFd_Effects(BossFd* this, PlayState* play) {
} }
if ((this->actor.world.pos.y < 90.0f) || (700.0f < this->actor.world.pos.y) || (this->actionFunc == BossFd_Wait)) { if ((this->actor.world.pos.y < 90.0f) || (700.0f < this->actor.world.pos.y) || (this->actionFunc == BossFd_Wait)) {
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} else { } else {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
} }
} }

View file

@ -10,7 +10,7 @@
#include "overlays/actors/ovl_Door_Warp1/z_door_warp1.h" #include "overlays/actors/ovl_Door_Warp1/z_door_warp1.h"
#include "terminal.h" #include "terminal.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_5) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_5)
typedef enum BossFd2CutsceneState { typedef enum BossFd2CutsceneState {
/* 0 */ DEATH_START, /* 0 */ DEATH_START,
@ -612,7 +612,7 @@ void BossFd2_SetupDeath(BossFd2* this, PlayState* play) {
Animation_Change(&this->skelAnime, &gHoleVolvagiaDamagedAnim, 1.0f, 0.0f, this->fwork[FD2_END_FRAME], Animation_Change(&this->skelAnime, &gHoleVolvagiaDamagedAnim, 1.0f, 0.0f, this->fwork[FD2_END_FRAME],
ANIMMODE_ONCE_INTERP, -3.0f); ANIMMODE_ONCE_INTERP, -3.0f);
this->actionFunc = BossFd2_Death; this->actionFunc = BossFd2_Death;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->deathState = DEATH_START; this->deathState = DEATH_START;
} }
@ -995,9 +995,9 @@ void BossFd2_Update(Actor* thisx, PlayState* play2) {
this->fwork[FD2_TEX2_SCROLL_X] += 3.0f; this->fwork[FD2_TEX2_SCROLL_X] += 3.0f;
this->fwork[FD2_TEX2_SCROLL_Y] -= 2.0f; this->fwork[FD2_TEX2_SCROLL_Y] -= 2.0f;
if (this->actor.focus.pos.y < 90.0f) { if (this->actor.focus.pos.y < 90.0f) {
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} else { } else {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
} }
} }

View file

@ -9,7 +9,7 @@
#include "assets/objects/object_ganon_anime2/object_ganon_anime2.h" #include "assets/objects/object_ganon_anime2/object_ganon_anime2.h"
#include "assets/scenes/dungeons/ganon_boss/ganon_boss_scene.h" #include "assets/scenes/dungeons/ganon_boss/ganon_boss_scene.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_5) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_5)
void BossGanon_Init(Actor* thisx, PlayState* play2); void BossGanon_Init(Actor* thisx, PlayState* play2);
void BossGanon_Destroy(Actor* thisx, PlayState* play); void BossGanon_Destroy(Actor* thisx, PlayState* play);
@ -392,7 +392,7 @@ void BossGanon_Init(Actor* thisx, PlayState* play2) {
0, 0, 1); 0, 0, 1);
Actor_ChangeCategory(play, &play->actorCtx, thisx, ACTORCAT_BOSS); Actor_ChangeCategory(play, &play->actorCtx, thisx, ACTORCAT_BOSS);
} else { } else {
thisx->flags &= ~ACTOR_FLAG_0; thisx->flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->fwork[GDF_FWORK_1] = 255.0f; this->fwork[GDF_FWORK_1] = 255.0f;
if (thisx->params >= 0xC8) { if (thisx->params >= 0xC8) {
@ -2521,7 +2521,7 @@ void BossGanon_Vulnerable(BossGanon* this, PlayState* play) {
Vec3f sp40; Vec3f sp40;
if (this->timers[3] == 0) { if (this->timers[3] == 0) {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
} }
SkelAnime_Update(&this->skelAnime); SkelAnime_Update(&this->skelAnime);
@ -2671,7 +2671,7 @@ void BossGanon_SetupDamaged(BossGanon* this, PlayState* play) {
} }
void BossGanon_Damaged(BossGanon* this, PlayState* play) { void BossGanon_Damaged(BossGanon* this, PlayState* play) {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
SkelAnime_Update(&this->skelAnime); SkelAnime_Update(&this->skelAnime);
@ -2832,7 +2832,7 @@ void BossGanon_Update(Actor* thisx, PlayState* play2) {
this->collider.base.colType = 3; this->collider.base.colType = 3;
sCape->gravity = -3.0f; sCape->gravity = -3.0f;
this->shockGlow = false; this->shockGlow = false;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->unk_1A2++; this->unk_1A2++;
this->unk_1A4++; this->unk_1A4++;

View file

@ -7,7 +7,7 @@
#include "assets/objects/object_ganon_anime3/object_ganon_anime3.h" #include "assets/objects/object_ganon_anime3/object_ganon_anime3.h"
#include "assets/objects/object_geff/object_geff.h" #include "assets/objects/object_geff/object_geff.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_5) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_5)
void BossGanon2_Init(Actor* thisx, PlayState* play); void BossGanon2_Init(Actor* thisx, PlayState* play);
void BossGanon2_Destroy(Actor* thisx, PlayState* play); void BossGanon2_Destroy(Actor* thisx, PlayState* play);
@ -175,7 +175,7 @@ void func_808FD4D4(BossGanon2* this, PlayState* play, s16 arg2, s16 arg3) {
void func_808FD5C4(BossGanon2* this, PlayState* play) { void func_808FD5C4(BossGanon2* this, PlayState* play) {
this->actionFunc = func_808FD5F4; this->actionFunc = func_808FD5F4;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.world.pos.y = -3000.0f; this->actor.world.pos.y = -3000.0f;
} }
@ -882,7 +882,7 @@ void func_808FD5F4(BossGanon2* this, PlayState* play) {
this->unk_337 = 1; this->unk_337 = 1;
func_808FFDB0(this, play); func_808FFDB0(this, play);
this->unk_1A2[1] = 50; this->unk_1A2[1] = 50;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
sZelda->unk_3C8 = 7; sZelda->unk_3C8 = 7;
} }
break; break;
@ -1054,7 +1054,7 @@ void func_808FFDB0(BossGanon2* this, PlayState* play) {
} }
this->unk_336 = 1; this->unk_336 = 1;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->unk_228 = 1.0f; this->unk_228 = 1.0f;
this->unk_224 = 1.0f; this->unk_224 = 1.0f;
} else { } else {

View file

@ -12,7 +12,7 @@
#include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h" #include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h"
#include "overlays/actors/ovl_Door_Warp1/z_door_warp1.h" #include "overlays/actors/ovl_Door_Warp1/z_door_warp1.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_5) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_5)
typedef enum BossGanondrofDeathState { typedef enum BossGanondrofDeathState {
/* 0 */ NOT_DEAD, /* 0 */ NOT_DEAD,
@ -296,7 +296,7 @@ void BossGanondrof_Init(Actor* thisx, PlayState* play) {
Collider_InitCylinder(play, &this->colliderSpear); Collider_InitCylinder(play, &this->colliderSpear);
Collider_SetCylinder(play, &this->colliderBody, &this->actor, &sCylinderInitBody); Collider_SetCylinder(play, &this->colliderBody, &this->actor, &sCylinderInitBody);
Collider_SetCylinder(play, &this->colliderSpear, &this->actor, &sCylinderInitSpear); Collider_SetCylinder(play, &this->colliderSpear, &this->actor, &sCylinderInitSpear);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
if (Flags_GetClear(play, play->roomCtx.curRoom.num)) { if (Flags_GetClear(play, play->roomCtx.curRoom.num)) {
Actor_Kill(&this->actor); Actor_Kill(&this->actor);
Actor_Spawn(&play->actorCtx, play, ACTOR_DOOR_WARP1, GND_BOSSROOM_CENTER_X, GND_BOSSROOM_CENTER_Y, Actor_Spawn(&play->actorCtx, play, ACTOR_DOOR_WARP1, GND_BOSSROOM_CENTER_X, GND_BOSSROOM_CENTER_Y,
@ -438,7 +438,7 @@ void BossGanondrof_Paintings(BossGanondrof* this, PlayState* play) {
EnfHG* horseTemp; EnfHG* horseTemp;
Animation_MorphToPlayOnce(&this->skelAnime, &gPhantomGanonRideSpearRaiseAnim, -2.0f); Animation_MorphToPlayOnce(&this->skelAnime, &gPhantomGanonRideSpearRaiseAnim, -2.0f);
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
horseTemp = (EnfHG*)this->actor.child; horseTemp = (EnfHG*)this->actor.child;
Actor_SpawnAsChild(&play->actorCtx, &this->actor, play, ACTOR_EN_FHG_FIRE, this->spearTip.x, this->spearTip.y, Actor_SpawnAsChild(&play->actorCtx, &this->actor, play, ACTOR_EN_FHG_FIRE, this->spearTip.x, this->spearTip.y,
this->spearTip.z, 30, FHGFIRE_LIGHT_GREEN, 0, FHGFIRE_SPEAR_LIGHT); this->spearTip.z, 30, FHGFIRE_LIGHT_GREEN, 0, FHGFIRE_SPEAR_LIGHT);
@ -449,7 +449,7 @@ void BossGanondrof_Paintings(BossGanondrof* this, PlayState* play) {
Animation_MorphToPlayOnce(&this->skelAnime, &gPhantomGanonRideSpearResetAnim, -2.0f); Animation_MorphToPlayOnce(&this->skelAnime, &gPhantomGanonRideSpearResetAnim, -2.0f);
} else if (horse->bossGndSignal == FHG_RIDE) { } else if (horse->bossGndSignal == FHG_RIDE) {
Animation_MorphToLoop(&this->skelAnime, &gPhantomGanonRideAnim, -2.0f); Animation_MorphToLoop(&this->skelAnime, &gPhantomGanonRideAnim, -2.0f);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
PRINTF("RUN 3\n"); PRINTF("RUN 3\n");
@ -476,7 +476,7 @@ void BossGanondrof_Paintings(BossGanondrof* this, PlayState* play) {
void BossGanondrof_SetupNeutral(BossGanondrof* this, f32 arg1) { void BossGanondrof_SetupNeutral(BossGanondrof* this, f32 arg1) {
Animation_MorphToLoop(&this->skelAnime, &gPhantomGanonNeutralAnim, arg1); Animation_MorphToLoop(&this->skelAnime, &gPhantomGanonNeutralAnim, arg1);
this->actionFunc = BossGanondrof_Neutral; this->actionFunc = BossGanondrof_Neutral;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->fwork[GND_FLOAT_SPEED] = 0.0f; this->fwork[GND_FLOAT_SPEED] = 0.0f;
this->timers[0] = (s16)(Rand_ZeroOne() * 64.0f) + 30; this->timers[0] = (s16)(Rand_ZeroOne() * 64.0f) + 30;
} }
@ -931,7 +931,7 @@ void BossGanondrof_SetupDeath(BossGanondrof* this, PlayState* play) {
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 1); SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 1);
Actor_PlaySfx(&this->actor, NA_SE_EN_FANTOM_DEAD); Actor_PlaySfx(&this->actor, NA_SE_EN_FANTOM_DEAD);
this->deathState = DEATH_START; this->deathState = DEATH_START;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->work[GND_VARIANCE_TIMER] = 0; this->work[GND_VARIANCE_TIMER] = 0;
this->shockTimer = 50; this->shockTimer = 50;
} }

View file

@ -4,7 +4,7 @@
#include "overlays/actors/ovl_Door_Shutter/z_door_shutter.h" #include "overlays/actors/ovl_Door_Shutter/z_door_shutter.h"
#include "overlays/actors/ovl_Door_Warp1/z_door_warp1.h" #include "overlays/actors/ovl_Door_Warp1/z_door_warp1.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_5) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_5)
// IRIS_FOLLOW: gohma looks towards the player (iris rotation) // IRIS_FOLLOW: gohma looks towards the player (iris rotation)
// BONUS_IFRAMES: gain invincibility frames when the player does something (throwing things?), or // BONUS_IFRAMES: gain invincibility frames when the player does something (throwing things?), or
@ -404,7 +404,7 @@ void BossGoma_SetupDefeated(BossGoma* this, PlayState* play) {
this->noBackfaceCulling = false; this->noBackfaceCulling = false;
this->framesUntilNextAction = 1200; this->framesUntilNextAction = 1200;
this->actionState = 0; this->actionState = 0;
this->actor.flags &= ~(ACTOR_FLAG_0 | ACTOR_FLAG_2); this->actor.flags &= ~(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE);
this->actor.speed = 0.0f; this->actor.speed = 0.0f;
this->actor.shape.shadowScale = 0.0f; this->actor.shape.shadowScale = 0.0f;
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 1); SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 1);
@ -627,7 +627,7 @@ void BossGoma_SetupEncounterState4(BossGoma* this, PlayState* play) {
player = GET_PLAYER(play); player = GET_PLAYER(play);
this->actionState = 4; this->actionState = 4;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
Cutscene_StartManual(play, &play->csCtx); Cutscene_StartManual(play, &play->csCtx);
Player_SetCsActionWithHaltedActors(play, &this->actor, PLAYER_CSACTION_1); Player_SetCsActionWithHaltedActors(play, &this->actor, PLAYER_CSACTION_1);
this->subCamId = Play_CreateSubCamera(play); this->subCamId = Play_CreateSubCamera(play);
@ -718,7 +718,7 @@ void BossGoma_Encounter(BossGoma* this, PlayState* play) {
this->framesUntilNextAction = 50; this->framesUntilNextAction = 50;
this->timer = 80; this->timer = 80;
this->frameCount = 0; this->frameCount = 0;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
FALLTHROUGH; FALLTHROUGH;
case 2: // zoom on player from room center case 2: // zoom on player from room center
// room entrance, towards center // room entrance, towards center

View file

@ -12,7 +12,7 @@
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" #pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_5) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_5)
#define MO_WATER_LEVEL(play) play->colCtx.colHeader->waterBoxes[0].ySurface #define MO_WATER_LEVEL(play) play->colCtx.colHeader->waterBoxes[0].ySurface
@ -526,7 +526,7 @@ void BossMo_Tentacle(BossMo* this, PlayState* play) {
} }
switch (this->work[MO_TENT_ACTION_STATE]) { switch (this->work[MO_TENT_ACTION_STATE]) {
case MO_TENT_WAIT: case MO_TENT_WAIT:
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
if (this == sMorphaTent2) { if (this == sMorphaTent2) {
this->work[MO_TENT_ACTION_STATE] = MO_TENT_SPAWN; this->work[MO_TENT_ACTION_STATE] = MO_TENT_SPAWN;
this->timers[0] = 70; this->timers[0] = 70;
@ -919,7 +919,7 @@ void BossMo_Tentacle(BossMo* this, PlayState* play) {
Vec3f spFC; Vec3f spFC;
Vec3f spF0; Vec3f spF0;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Math_ApproachF(&this->baseAlpha, 0.0, 1.0f, 5.0f); Math_ApproachF(&this->baseAlpha, 0.0, 1.0f, 5.0f);
for (indS1 = 0; indS1 < 40; indS1++) { for (indS1 = 0; indS1 < 40; indS1++) {
indS0 = sTentSpawnIndex[(s16)Rand_ZeroFloat(20.9f)]; indS0 = sTentSpawnIndex[(s16)Rand_ZeroFloat(20.9f)];
@ -963,7 +963,7 @@ void BossMo_Tentacle(BossMo* this, PlayState* play) {
} }
break; break;
case MO_TENT_DESPAWN: case MO_TENT_DESPAWN:
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Math_ApproachF(&this->baseAlpha, 0, 1.0f, 5.0f); Math_ApproachF(&this->baseAlpha, 0, 1.0f, 5.0f);
if ((this->baseAlpha <= 0.5f) && (this->timers[0] == 0)) { if ((this->baseAlpha <= 0.5f) && (this->timers[0] == 0)) {
this->meltIndex = 0; this->meltIndex = 0;
@ -990,7 +990,7 @@ void BossMo_Tentacle(BossMo* this, PlayState* play) {
case MO_TENT_DEATH_3: case MO_TENT_DEATH_3:
this->baseBubblesTimer = 20; this->baseBubblesTimer = 20;
Math_ApproachF(&sMorphaCore->waterLevel, -300.0f, 0.1f, 0.8f); Math_ApproachF(&sMorphaCore->waterLevel, -300.0f, 0.1f, 0.8f);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
for (indS1 = 0; indS1 < 41; indS1++) { for (indS1 = 0; indS1 < 41; indS1++) {
sin = Math_SinS(((s16)this->fwork[MO_TENT_SWING_LAG_X] * indS1) + this->xSwing); sin = Math_SinS(((s16)this->fwork[MO_TENT_SWING_LAG_X] * indS1) + this->xSwing);
tempf1 = this->fwork[MO_TENT_SWING_SIZE_X] * (indS1 * 0.025f * sin); tempf1 = this->fwork[MO_TENT_SWING_SIZE_X] * (indS1 * 0.025f * sin);
@ -1357,8 +1357,8 @@ void BossMo_IntroCs(BossMo* this, PlayState* play) {
this->subCamFov = 60.0f; this->subCamFov = 60.0f;
this->actor.world.pos = sMorphaTent1->actor.world.pos; this->actor.world.pos = sMorphaTent1->actor.world.pos;
this->work[MO_TENT_ACTION_STATE] = MO_CORE_INTRO_REVEAL; this->work[MO_TENT_ACTION_STATE] = MO_CORE_INTRO_REVEAL;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
sMorphaTent1->actor.flags |= ACTOR_FLAG_0; sMorphaTent1->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
goto intro_reveal; goto intro_reveal;
} }
sMorphaTent1->xSwing = 0xCEC; sMorphaTent1->xSwing = 0xCEC;
@ -1569,7 +1569,7 @@ void BossMo_DeathCs(BossMo* this, PlayState* play) {
Rand_ZeroFloat(0.08f) + 0.13f); Rand_ZeroFloat(0.08f) + 0.13f);
} }
this->drawActor = false; this->drawActor = false;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Actor_PlaySfx(&this->actor, NA_SE_EN_MOFER_CORE_JUMP); Actor_PlaySfx(&this->actor, NA_SE_EN_MOFER_CORE_JUMP);
SfxSource_PlaySfxAtFixedWorldPos(play, &this->actor.world.pos, 70, NA_SE_EN_MOFER_LASTVOICE); SfxSource_PlaySfxAtFixedWorldPos(play, &this->actor.world.pos, 70, NA_SE_EN_MOFER_LASTVOICE);
} }
@ -1810,7 +1810,7 @@ void BossMo_CoreCollisionCheck(BossMo* this, PlayState* play) {
sMorphaTent1->cutScale = 1.0f; sMorphaTent1->cutScale = 1.0f;
sMorphaTent1->work[MO_TENT_ACTION_STATE] = MO_TENT_CUT; sMorphaTent1->work[MO_TENT_ACTION_STATE] = MO_TENT_CUT;
sMorphaTent1->timers[0] = 40; sMorphaTent1->timers[0] = 40;
sMorphaTent1->actor.flags &= ~ACTOR_FLAG_0; sMorphaTent1->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
if (player->actor.parent == &sMorphaTent1->actor) { if (player->actor.parent == &sMorphaTent1->actor) {
player->av2.actionVar2 = 0x65; player->av2.actionVar2 = 0x65;
player->actor.parent = NULL; player->actor.parent = NULL;
@ -1877,7 +1877,7 @@ void BossMo_Core(BossMo* this, PlayState* play) {
if ((this->csState != MO_BATTLE) && (this->csState < MO_DEATH_START)) { if ((this->csState != MO_BATTLE) && (this->csState < MO_DEATH_START)) {
BossMo_IntroCs(this, play); BossMo_IntroCs(this, play);
if (this->work[MO_TENT_ACTION_STATE] == MO_CORE_INTRO_WAIT) { if (this->work[MO_TENT_ACTION_STATE] == MO_CORE_INTRO_WAIT) {
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
return; return;
} }
} else if (this->csState >= MO_DEATH_START) { } else if (this->csState >= MO_DEATH_START) {
@ -1910,7 +1910,7 @@ void BossMo_Core(BossMo* this, PlayState* play) {
} }
switch (this->work[MO_TENT_ACTION_STATE]) { switch (this->work[MO_TENT_ACTION_STATE]) {
case MO_CORE_MOVE: case MO_CORE_MOVE:
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
if ((this->timers[0] == 0) && if ((this->timers[0] == 0) &&
((sMorphaTent1->work[MO_TENT_ACTION_STATE] == MO_TENT_WAIT) || ((sMorphaTent1->work[MO_TENT_ACTION_STATE] == MO_TENT_WAIT) ||
(sMorphaTent1->work[MO_TENT_ACTION_STATE] == MO_TENT_READY)) && (sMorphaTent1->work[MO_TENT_ACTION_STATE] == MO_TENT_READY)) &&
@ -1949,7 +1949,7 @@ void BossMo_Core(BossMo* this, PlayState* play) {
} }
break; break;
case MO_CORE_STUNNED: case MO_CORE_STUNNED:
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
if (this->timers[0] == 0) { if (this->timers[0] == 0) {
this->work[MO_TENT_ACTION_STATE] = MO_CORE_MOVE; this->work[MO_TENT_ACTION_STATE] = MO_CORE_MOVE;
this->timers[0] = 30; this->timers[0] = 30;
@ -1966,7 +1966,7 @@ void BossMo_Core(BossMo* this, PlayState* play) {
if (this->timers[0] == 0) { if (this->timers[0] == 0) {
switch (this->work[MO_TENT_ACTION_STATE]) { switch (this->work[MO_TENT_ACTION_STATE]) {
case MO_CORE_ATTACK: case MO_CORE_ATTACK:
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->work[MO_CORE_POS_IN_TENT]++; this->work[MO_CORE_POS_IN_TENT]++;
if (sMorphaTent1->work[MO_TENT_ACTION_STATE] == MO_TENT_ATTACK) { if (sMorphaTent1->work[MO_TENT_ACTION_STATE] == MO_TENT_ATTACK) {
temp = (s16)(Math_SinS(this->work[MO_TENT_MOVE_TIMER] * 0x300) * 10.0f) + 15; temp = (s16)(Math_SinS(this->work[MO_TENT_MOVE_TIMER] * 0x300) * 10.0f) + 15;
@ -1991,7 +1991,7 @@ void BossMo_Core(BossMo* this, PlayState* play) {
this->timers[0] = 0; this->timers[0] = 0;
break; break;
case MO_CORE_INTRO_REVEAL: case MO_CORE_INTRO_REVEAL:
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->work[MO_CORE_POS_IN_TENT]++; this->work[MO_CORE_POS_IN_TENT]++;
temp = (s16)(Math_SinS(this->work[MO_TENT_MOVE_TIMER] * 0x500) * 10.0f) + 15; temp = (s16)(Math_SinS(this->work[MO_TENT_MOVE_TIMER] * 0x500) * 10.0f) + 15;
if (this->work[MO_CORE_POS_IN_TENT] >= temp) { if (this->work[MO_CORE_POS_IN_TENT] >= temp) {
@ -2258,7 +2258,7 @@ void BossMo_UpdateCore(Actor* thisx, PlayState* play) {
} }
BossMo_UpdateEffects(this, play); BossMo_UpdateEffects(this, play);
if (player->actor.parent != NULL) { if (player->actor.parent != NULL) {
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
#if !PLATFORM_N64 #if !PLATFORM_N64

View file

@ -12,7 +12,7 @@
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" #pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_5 | ACTOR_FLAG_10) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_5 | ACTOR_FLAG_10)
#define vParity actionVar #define vParity actionVar
#define vVanish actionVar #define vVanish actionVar
@ -304,7 +304,7 @@ void BossSst_Init(Actor* thisx, PlayState* play2) {
sHands[LEFT]->actor.child = &sHands[RIGHT]->actor; sHands[LEFT]->actor.child = &sHands[RIGHT]->actor;
sHands[RIGHT]->actor.child = &sHands[LEFT]->actor; sHands[RIGHT]->actor.child = &sHands[LEFT]->actor;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.update = BossSst_UpdateHead; this->actor.update = BossSst_UpdateHead;
this->actor.draw = BossSst_DrawHead; this->actor.draw = BossSst_DrawHead;
this->radius = -650.0f; this->radius = -650.0f;
@ -329,7 +329,7 @@ void BossSst_Init(Actor* thisx, PlayState* play2) {
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 95.0f); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 95.0f);
this->handZPosMod = -3500; this->handZPosMod = -3500;
this->actor.lockOnArrowOffset = 5000.0f; this->actor.lockOnArrowOffset = 5000.0f;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
BossSst_HandSetupWait(this); BossSst_HandSetupWait(this);
} }
} }
@ -403,8 +403,8 @@ void BossSst_HeadIntro(BossSst* this, PlayState* play) {
} }
if (this->timer == 0) { if (this->timer == 0) {
sHands[RIGHT]->actor.flags |= ACTOR_FLAG_0; sHands[RIGHT]->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
sHands[LEFT]->actor.flags |= ACTOR_FLAG_0; sHands[LEFT]->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
player->stateFlags1 &= ~PLAYER_STATE1_5; player->stateFlags1 &= ~PLAYER_STATE1_5;
Cutscene_StopManual(play, &play->csCtx); Cutscene_StopManual(play, &play->csCtx);
Player_SetCsActionWithHaltedActors(play, &this->actor, PLAYER_CSACTION_7); Player_SetCsActionWithHaltedActors(play, &this->actor, PLAYER_CSACTION_7);
@ -1401,7 +1401,7 @@ void BossSst_HandSetupRetreat(BossSst* this) {
Animation_MorphToPlayOnce(&this->skelAnime, sHandHangPoses[this->actor.params], 10.0f); Animation_MorphToPlayOnce(&this->skelAnime, sHandHangPoses[this->actor.params], 10.0f);
this->colliderJntSph.base.atFlags &= ~(AT_ON | AT_HIT); this->colliderJntSph.base.atFlags &= ~(AT_ON | AT_HIT);
this->colliderJntSph.base.acFlags |= AC_ON; this->colliderJntSph.base.acFlags |= AC_ON;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
BossSst_HandSetInvulnerable(this, false); BossSst_HandSetInvulnerable(this, false);
this->timer = 0; this->timer = 0;
this->actionFunc = BossSst_HandRetreat; this->actionFunc = BossSst_HandRetreat;
@ -2055,7 +2055,7 @@ void BossSst_HandShake(BossSst* this, PlayState* play) {
this->timer = 80; this->timer = 80;
} }
} else if (this->timer == 0) { } else if (this->timer == 0) {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
BossSst_HandSetupSlam(this); BossSst_HandSetupSlam(this);
} }
} }
@ -2536,7 +2536,7 @@ void BossSst_HandCollisionCheck(BossSst* this, PlayState* play) {
BossSst_HandSetupRetreat(OTHER_HAND(this)); BossSst_HandSetupRetreat(OTHER_HAND(this));
} }
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
if (this->actor.colChkInfo.damageEffect == 3) { if (this->actor.colChkInfo.damageEffect == 3) {
BossSst_HandSetupFrozen(this); BossSst_HandSetupFrozen(this);
} else { } else {
@ -2678,9 +2678,9 @@ void BossSst_UpdateHead(Actor* thisx, PlayState* play) {
((this->actionFunc == BossSst_HeadReadyCharge) || (this->actionFunc == BossSst_HeadCharge) || ((this->actionFunc == BossSst_HeadReadyCharge) || (this->actionFunc == BossSst_HeadCharge) ||
(this->actionFunc == BossSst_HeadFrozenHand) || (this->actionFunc == BossSst_HeadStunned) || (this->actionFunc == BossSst_HeadFrozenHand) || (this->actionFunc == BossSst_HeadStunned) ||
(this->actionFunc == BossSst_HeadVulnerable) || (this->actionFunc == BossSst_HeadDamage))) { (this->actionFunc == BossSst_HeadVulnerable) || (this->actionFunc == BossSst_HeadDamage))) {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
} else { } else {
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
if (this->actionFunc == BossSst_HeadCharge) { if (this->actionFunc == BossSst_HeadCharge) {

View file

@ -3,7 +3,7 @@
#include "assets/objects/object_tw/object_tw.h" #include "assets/objects/object_tw/object_tw.h"
#include "overlays/actors/ovl_Door_Warp1/z_door_warp1.h" #include "overlays/actors/ovl_Door_Warp1/z_door_warp1.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_5) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_5)
typedef enum TwEffType { typedef enum TwEffType {
/* 0 */ TWEFF_NONE, /* 0 */ TWEFF_NONE,
@ -457,7 +457,7 @@ void BossTw_Init(Actor* thisx, PlayState* play2) {
Actor_SetScale(&this->actor, 0.01f); Actor_SetScale(&this->actor, 0.01f);
this->actor.update = BossTw_BlastUpdate; this->actor.update = BossTw_BlastUpdate;
this->actor.draw = BossTw_BlastDraw; this->actor.draw = BossTw_BlastDraw;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Collider_InitCylinder(play, &this->collider); Collider_InitCylinder(play, &this->collider);
Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInitBlasts); Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInitBlasts);
@ -646,7 +646,7 @@ void BossTw_SetupFlyTo(BossTw* this, PlayState* play) {
BossTw* otherTw = (BossTw*)this->actor.parent; BossTw* otherTw = (BossTw*)this->actor.parent;
this->unk_5F8 = 1; this->unk_5F8 = 1;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->actionFunc = BossTw_FlyTo; this->actionFunc = BossTw_FlyTo;
this->rotateSpeed = 0.0f; this->rotateSpeed = 0.0f;
Animation_MorphToLoop(&this->skelAnime, &gTwinrovaKotakeKoumeFlyAnim, -10.0f); Animation_MorphToLoop(&this->skelAnime, &gTwinrovaKotakeKoumeFlyAnim, -10.0f);
@ -1470,7 +1470,7 @@ void BossTw_SetupWait(BossTw* this, PlayState* play) {
this->actionFunc = BossTw_Wait; this->actionFunc = BossTw_Wait;
this->visible = false; this->visible = false;
this->actor.world.pos.y = -2000.0f; this->actor.world.pos.y = -2000.0f;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
void BossTw_Wait(BossTw* this, PlayState* play) { void BossTw_Wait(BossTw* this, PlayState* play) {
@ -1632,7 +1632,7 @@ void BossTw_TwinrovaMergeCS(BossTw* this, PlayState* play) {
this->csState1 = 1; this->csState1 = 1;
this->visible = true; this->visible = true;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.shape.rot.y = 0; this->actor.shape.rot.y = 0;
BossTw_SetupWait(sKotakePtr, play); BossTw_SetupWait(sKotakePtr, play);
BossTw_SetupWait(sKoumePtr, play); BossTw_SetupWait(sKoumePtr, play);
@ -1753,7 +1753,7 @@ void BossTw_SetupCSWait(BossTw* this, PlayState* play) {
this->actionFunc = BossTw_CSWait; this->actionFunc = BossTw_CSWait;
this->visible = false; this->visible = false;
this->actor.world.pos.y = -2000.0f; this->actor.world.pos.y = -2000.0f;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
/** /**
@ -1766,7 +1766,7 @@ void BossTw_TwinrovaSetupIntroCS(BossTw* this, PlayState* play) {
this->actionFunc = BossTw_TwinrovaIntroCS; this->actionFunc = BossTw_TwinrovaIntroCS;
this->visible = false; this->visible = false;
this->actor.world.pos.y = -2000.0f; this->actor.world.pos.y = -2000.0f;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
void BossTw_TwinrovaIntroCS(BossTw* this, PlayState* play) { void BossTw_TwinrovaIntroCS(BossTw* this, PlayState* play) {
@ -2372,7 +2372,7 @@ void BossTw_TwinrovaSetupDeathCS(BossTw* this, PlayState* play) {
this->actionFunc = BossTw_TwinrovaDeathCS; this->actionFunc = BossTw_TwinrovaDeathCS;
Animation_MorphToLoop(&this->skelAnime, &gTwinrovaDamageAnim, -3.0f); Animation_MorphToLoop(&this->skelAnime, &gTwinrovaDamageAnim, -3.0f);
this->actor.world.rot.y = this->actor.shape.rot.y; this->actor.world.rot.y = this->actor.shape.rot.y;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->csState2 = this->csState1 = 0; this->csState2 = this->csState1 = 0;
this->work[CS_TIMER_1] = this->work[CS_TIMER_2] = 0; this->work[CS_TIMER_1] = this->work[CS_TIMER_2] = 0;
this->work[INVINC_TIMER] = 10000; this->work[INVINC_TIMER] = 10000;
@ -2670,7 +2670,7 @@ void BossTw_TwinrovaDeathCS(BossTw* this, PlayState* play) {
this->actor.world.pos.y, this->actor.world.pos.z, 0, 0, 0, TW_DEATHBALL_KOUME); this->actor.world.pos.y, this->actor.world.pos.z, 0, 0, 0, TW_DEATHBALL_KOUME);
Actor_SpawnAsChild(&play->actorCtx, &this->actor, play, ACTOR_BOSS_TW, this->actor.world.pos.x, Actor_SpawnAsChild(&play->actorCtx, &this->actor, play, ACTOR_BOSS_TW, this->actor.world.pos.x,
this->actor.world.pos.y, this->actor.world.pos.z, 0, 0, 0, TW_DEATHBALL_KOTAKE); this->actor.world.pos.y, this->actor.world.pos.z, 0, 0, 0, TW_DEATHBALL_KOTAKE);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
} }
Actor_SetScale(&this->actor, this->actor.scale.x); Actor_SetScale(&this->actor, this->actor.scale.x);
@ -2723,7 +2723,7 @@ void BossTw_TwinrovaDeathCS(BossTw* this, PlayState* play) {
sKoumePtr->work[YAW_TGT] = sKotakePtr->work[YAW_TGT] = sKoumePtr->actor.shape.rot.x = sKoumePtr->work[YAW_TGT] = sKotakePtr->work[YAW_TGT] = sKoumePtr->actor.shape.rot.x =
sKotakePtr->actor.shape.rot.x = sKoumePtr->actor.shape.rot.y = sKotakePtr->actor.shape.rot.y = 0; sKotakePtr->actor.shape.rot.x = sKoumePtr->actor.shape.rot.y = sKotakePtr->actor.shape.rot.y = 0;
Player_SetCsActionWithHaltedActors(play, &sKoumePtr->actor, PLAYER_CSACTION_1); Player_SetCsActionWithHaltedActors(play, &sKoumePtr->actor, PLAYER_CSACTION_1);
sKoumePtr->actor.flags |= ACTOR_FLAG_0; sKoumePtr->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
} }
break; break;
case 2: case 2:

View file

@ -9,7 +9,7 @@
#include "overlays/actors/ovl_En_Boom/z_en_boom.h" #include "overlays/actors/ovl_En_Boom/z_en_boom.h"
#include "assets/objects/gameplay_keep/gameplay_keep.h" #include "assets/objects/gameplay_keep/gameplay_keep.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_5) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_5)
#define GET_BODY(this) ((BossVa*)(this)->actor.parent) #define GET_BODY(this) ((BossVa*)(this)->actor.parent)
#define vaGorePulse offset.x #define vaGorePulse offset.x
@ -756,7 +756,7 @@ void BossVa_SetupIntro(BossVa* this) {
Animation_Change(&this->skelAnime, &gBarinadeBodyAnim, 1.0f, lastFrame, lastFrame, ANIMMODE_ONCE, 0.0f); Animation_Change(&this->skelAnime, &gBarinadeBodyAnim, 1.0f, lastFrame, lastFrame, ANIMMODE_ONCE, 0.0f);
this->actor.shape.yOffset = -450.0f; this->actor.shape.yOffset = -450.0f;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
BossVa_SetupAction(this, BossVa_BodyIntro); BossVa_SetupAction(this, BossVa_BodyIntro);
} }
@ -1048,7 +1048,7 @@ void BossVa_SetupBodyPhase1(BossVa* this) {
Animation_Change(&this->skelAnime, &gBarinadeBodyAnim, 1.0f, lastFrame, lastFrame, ANIMMODE_ONCE, 0.0f); Animation_Change(&this->skelAnime, &gBarinadeBodyAnim, 1.0f, lastFrame, lastFrame, ANIMMODE_ONCE, 0.0f);
this->actor.shape.yOffset = -450.0f; this->actor.shape.yOffset = -450.0f;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->timer = 25; this->timer = 25;
sBodyState = 0x80; sBodyState = 0x80;
BossVa_SetupAction(this, BossVa_BodyPhase1); BossVa_SetupAction(this, BossVa_BodyPhase1);
@ -1115,7 +1115,7 @@ void BossVa_SetupBodyPhase2(BossVa* this, PlayState* play) {
} }
this->invincibilityTimer = 0; this->invincibilityTimer = 0;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
BossVa_SetupAction(this, BossVa_BodyPhase2); BossVa_SetupAction(this, BossVa_BodyPhase2);
} }
@ -1181,10 +1181,10 @@ void BossVa_BodyPhase2(BossVa* this, PlayState* play) {
Math_SmoothStepToS(&this->actor.shape.rot.z, this->actor.world.rot.z, 1, 0xC8, 0); Math_SmoothStepToS(&this->actor.shape.rot.z, this->actor.world.rot.z, 1, 0xC8, 0);
Math_SmoothStepToF(&this->actor.shape.yOffset, -1000.0f, 1.0f, 20.0f, 0.0f); Math_SmoothStepToF(&this->actor.shape.yOffset, -1000.0f, 1.0f, 20.0f, 0.0f);
if (!(sPhase2Timer & 0x100)) { if (!(sPhase2Timer & 0x100)) {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.speed = 1.0f; this->actor.speed = 1.0f;
} else { } else {
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.speed = 0.0f; this->actor.speed = 0.0f;
} }
@ -1247,7 +1247,7 @@ void BossVa_BodyPhase3(BossVa* this, PlayState* play) {
Actor_PlaySfx(&this->actor, NA_SE_EN_BALINADE_FAINT); Actor_PlaySfx(&this->actor, NA_SE_EN_BALINADE_FAINT);
sBodyState = 1; sBodyState = 1;
this->timer = 131; this->timer = 131;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} else { } else {
sBodyState = 0; sBodyState = 0;
if (this->timer == 0) { if (this->timer == 0) {
@ -1257,7 +1257,7 @@ void BossVa_BodyPhase3(BossVa* this, PlayState* play) {
} }
Math_SmoothStepToF(&this->actor.speed, 3.0f, 1.0f, 0.15f, 0.0f); Math_SmoothStepToF(&this->actor.speed, 3.0f, 1.0f, 0.15f, 0.0f);
} }
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
} else { } else {
this->timer--; this->timer--;
if (this->timer < 35) { if (this->timer < 35) {
@ -1332,7 +1332,7 @@ void BossVa_BodyPhase3(BossVa* this, PlayState* play) {
void BossVa_SetupBodyPhase4(BossVa* this, PlayState* play) { void BossVa_SetupBodyPhase4(BossVa* this, PlayState* play) {
this->unk_1AC = 0; this->unk_1AC = 0;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->vaBodySpinRate = this->unk_1AC; this->vaBodySpinRate = this->unk_1AC;
this->actor.world.rot.y = this->actor.yawTowardsPlayer; this->actor.world.rot.y = this->actor.yawTowardsPlayer;
this->timer2 = (s16)(Rand_ZeroOne() * 150.0f) + 300; this->timer2 = (s16)(Rand_ZeroOne() * 150.0f) + 300;
@ -1511,7 +1511,7 @@ void BossVa_BodyPhase4(BossVa* this, PlayState* play) {
void BossVa_SetupBodyDeath(BossVa* this, PlayState* play) { void BossVa_SetupBodyDeath(BossVa* this, PlayState* play) {
func_800F436C(&this->actor.projectedPos, NA_SE_EN_BALINADE_LEVEL - SFX_FLAG, 1.0f); func_800F436C(&this->actor.projectedPos, NA_SE_EN_BALINADE_LEVEL - SFX_FLAG, 1.0f);
this->actor.flags &= ~(ACTOR_FLAG_0 | ACTOR_FLAG_2); this->actor.flags &= ~(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE);
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 1); SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 1);
this->vaCamRotMod = 0xC31; this->vaCamRotMod = 0xC31;
sCsState = DEATH_START; sCsState = DEATH_START;
@ -1800,7 +1800,7 @@ void BossVa_SupportCut(BossVa* this, PlayState* play) {
lastFrame = Animation_GetLastFrame(&gBarinadeSupportDetachedAnim); lastFrame = Animation_GetLastFrame(&gBarinadeSupportDetachedAnim);
Animation_Change(&this->skelAnime, &gBarinadeSupportDetachedAnim, 1.0f, 0.0f, lastFrame, ANIMMODE_LOOP_INTERP, Animation_Change(&this->skelAnime, &gBarinadeSupportDetachedAnim, 1.0f, 0.0f, lastFrame, ANIMMODE_LOOP_INTERP,
0.0f); 0.0f);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
if ((this->timer == 0) && (sCsState < DEATH_START)) { if ((this->timer == 0) && (sCsState < DEATH_START)) {
@ -1854,7 +1854,7 @@ void BossVa_SupportCut(BossVa* this, PlayState* play) {
void BossVa_SetupStump(BossVa* this, PlayState* play) { void BossVa_SetupStump(BossVa* this, PlayState* play) {
Animation_Change(&this->skelAnime, &gBarinadeStumpAnim, 1.0f, 0.0f, Animation_GetLastFrame(&gBarinadeStumpAnim), Animation_Change(&this->skelAnime, &gBarinadeStumpAnim, 1.0f, 0.0f, Animation_GetLastFrame(&gBarinadeStumpAnim),
ANIMMODE_ONCE, 0.0f); ANIMMODE_ONCE, 0.0f);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
BossVa_SetupAction(this, BossVa_Stump); BossVa_SetupAction(this, BossVa_Stump);
} }
@ -1873,7 +1873,7 @@ void BossVa_SetupZapperIntro(BossVa* this, PlayState* play) {
Animation_Change(&this->skelAnime, &gBarinadeZapperIdleAnim, 1.0f, lastFrame - 1.0f, lastFrame, Animation_Change(&this->skelAnime, &gBarinadeZapperIdleAnim, 1.0f, lastFrame - 1.0f, lastFrame,
ANIMMODE_LOOP_INTERP, -6.0f); ANIMMODE_LOOP_INTERP, -6.0f);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
BossVa_SetupAction(this, BossVa_ZapperIntro); BossVa_SetupAction(this, BossVa_ZapperIntro);
} }
@ -1900,7 +1900,7 @@ void BossVa_SetupZapperAttack(BossVa* this, PlayState* play) {
Animation_Change(&this->skelAnime, &gBarinadeZapperIdleAnim, 1.0f, lastFrame - 1.0f, lastFrame, Animation_Change(&this->skelAnime, &gBarinadeZapperIdleAnim, 1.0f, lastFrame - 1.0f, lastFrame,
ANIMMODE_LOOP_INTERP, -6.0f); ANIMMODE_LOOP_INTERP, -6.0f);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
BossVa_SetupAction(this, BossVa_ZapperAttack); BossVa_SetupAction(this, BossVa_ZapperAttack);
} }
@ -2399,7 +2399,7 @@ void BossVa_SetupBariIntro(BossVa* this, PlayState* play) {
this->actor.world.pos.y = sInitPosOffsets[this->actor.params + 10].y + this->actor.home.pos.y; this->actor.world.pos.y = sInitPosOffsets[this->actor.params + 10].y + this->actor.home.pos.y;
this->actor.world.pos.z = sInitPosOffsets[this->actor.params + 10].z + this->actor.home.pos.z; this->actor.world.pos.z = sInitPosOffsets[this->actor.params + 10].z + this->actor.home.pos.z;
this->timer = 45; this->timer = 45;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
BossVa_SetupAction(this, BossVa_BariIntro); BossVa_SetupAction(this, BossVa_BariIntro);
} }
@ -2521,7 +2521,7 @@ void BossVa_SetupBariPhase3Attack(BossVa* this, PlayState* play) {
this->unk_1F0 = 0x78; this->unk_1F0 = 0x78;
this->unk_1A0 = 60.0f; this->unk_1A0 = 60.0f;
this->unk_1A8 = 0.0f; this->unk_1A8 = 0.0f;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
BossVa_SetupAction(this, BossVa_BariPhase3Attack); BossVa_SetupAction(this, BossVa_BariPhase3Attack);
} }
@ -2608,7 +2608,7 @@ void BossVa_SetupBariPhase2Attack(BossVa* this, PlayState* play) {
this->unk_1F0 = 0x78; this->unk_1F0 = 0x78;
this->unk_1A0 = 60.0f; this->unk_1A0 = 60.0f;
this->unk_1A8 = 0.0f; this->unk_1A8 = 0.0f;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
BossVa_SetupAction(this, BossVa_BariPhase2Attack); BossVa_SetupAction(this, BossVa_BariPhase2Attack);
} }
@ -2658,7 +2658,7 @@ void BossVa_BariPhase2Attack(BossVa* this, PlayState* play) {
if (!(sPhase2Timer & 0x100) && (GET_BODY(this)->actor.colorFilterTimer == 0)) { if (!(sPhase2Timer & 0x100) && (GET_BODY(this)->actor.colorFilterTimer == 0)) {
sp4C = 200.0f; sp4C = 200.0f;
BossVa_Spark(play, this, 1, 125, 15.0f, 7.0f, SPARK_TETHER, 1.0f, true); BossVa_Spark(play, this, 1, 125, 15.0f, 7.0f, SPARK_TETHER, 1.0f, true);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
if (PARAMS_GET_U(this->actor.params, 0, 1)) { if (PARAMS_GET_U(this->actor.params, 0, 1)) {
sp4C = -200.0f; sp4C = -200.0f;
} }
@ -2681,7 +2681,7 @@ void BossVa_BariPhase2Attack(BossVa* this, PlayState* play) {
CollisionCheck_SetAT(play, &play->colChkCtx, &this->colliderLightning.base); CollisionCheck_SetAT(play, &play->colChkCtx, &this->colliderLightning.base);
CollisionCheck_SetAT(play, &play->colChkCtx, &this->colliderSph.base); CollisionCheck_SetAT(play, &play->colChkCtx, &this->colliderSph.base);
} else { } else {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
Math_SmoothStepToS(&this->unk_1AC, sp50 + 150, 1, 0x3C, 0); Math_SmoothStepToS(&this->unk_1AC, sp50 + 150, 1, 0x3C, 0);
if (GET_BODY(this)->actor.colorFilterTimer == 0) { if (GET_BODY(this)->actor.colorFilterTimer == 0) {
Math_SmoothStepToF(&this->unk_1A0, 180.0f, 1.0f, 1.5f, 0.0f); Math_SmoothStepToF(&this->unk_1A0, 180.0f, 1.0f, 1.5f, 0.0f);
@ -2722,7 +2722,7 @@ void BossVa_BariPhase2Attack(BossVa* this, PlayState* play) {
} }
void BossVa_SetupBariPhase3Stunned(BossVa* this, PlayState* play) { void BossVa_SetupBariPhase3Stunned(BossVa* this, PlayState* play) {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->timer = GET_BODY(this)->timer; this->timer = GET_BODY(this)->timer;
Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_BLUE, 255, COLORFILTER_BUFFLAG_XLU, this->timer); Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_BLUE, 255, COLORFILTER_BUFFLAG_XLU, this->timer);
BossVa_SetupAction(this, BossVa_BariPhase3Stunned); BossVa_SetupAction(this, BossVa_BariPhase3Stunned);
@ -2755,7 +2755,7 @@ void BossVa_BariPhase3Stunned(BossVa* this, PlayState* play) {
} else { } else {
BossVa_Spark(play, this, 1, 85, 15.0f, 0.0f, SPARK_TETHER, 1.0f, true); BossVa_Spark(play, this, 1, 85, 15.0f, 0.0f, SPARK_TETHER, 1.0f, true);
if (this->timer2 >= 0x10) { if (this->timer2 >= 0x10) {
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->timer2 = 0x80; this->timer2 = 0x80;
BossVa_SetupAction(this, BossVa_BariPhase3Attack); BossVa_SetupAction(this, BossVa_BariPhase3Attack);
} }
@ -2764,7 +2764,7 @@ void BossVa_BariPhase3Stunned(BossVa* this, PlayState* play) {
} }
void BossVa_SetupBariDeath(BossVa* this) { void BossVa_SetupBariDeath(BossVa* this) {
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->timer = 30; this->timer = 30;
Actor_PlaySfx(&this->actor, NA_SE_EN_BALINADE_BL_DEAD); Actor_PlaySfx(&this->actor, NA_SE_EN_BALINADE_BL_DEAD);
this->isDead++; this->isDead++;
@ -2782,7 +2782,7 @@ void BossVa_SetupDoor(BossVa* this, PlayState* play) {
if (sCsState >= INTRO_SPAWN_BARI) { if (sCsState >= INTRO_SPAWN_BARI) {
sDoorState = 100; sDoorState = 100;
} }
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
BossVa_SetupAction(this, BossVa_Door); BossVa_SetupAction(this, BossVa_Door);
} }

View file

@ -11,7 +11,7 @@
#include "assets/objects/object_im/object_im.h" #include "assets/objects/object_im/object_im.h"
#include "terminal.h" #include "terminal.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_4)
void DemoIm_Init(Actor* thisx, PlayState* play); void DemoIm_Init(Actor* thisx, PlayState* play);
void DemoIm_Destroy(Actor* thisx, PlayState* play); void DemoIm_Destroy(Actor* thisx, PlayState* play);
@ -861,7 +861,7 @@ s32 func_80986A5C(DemoIm* this, PlayState* play) {
} }
s32 func_80986AD0(DemoIm* this, PlayState* play) { s32 func_80986AD0(DemoIm* this, PlayState* play) {
this->actor.flags |= ACTOR_FLAG_0 | ACTOR_FLAG_3; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL;
if (!Actor_TalkOfferAccepted(&this->actor, play)) { if (!Actor_TalkOfferAccepted(&this->actor, play)) {
this->actor.textId = 0x708E; this->actor.textId = 0x708E;
Actor_OfferTalkNearColChkInfoCylinder(&this->actor, play); Actor_OfferTalkNearColChkInfoCylinder(&this->actor, play);
@ -957,7 +957,7 @@ void func_80986DC8(DemoIm* this, PlayState* play) {
DemoIm_UpdateSkelAnime(this); DemoIm_UpdateSkelAnime(this);
func_80984BE0(this); func_80984BE0(this);
func_80984E58(this, play); func_80984E58(this, play);
this->actor.flags &= ~(ACTOR_FLAG_0 | ACTOR_FLAG_3); this->actor.flags &= ~(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL);
} }
void func_80986E20(DemoIm* this, PlayState* play) { void func_80986E20(DemoIm* this, PlayState* play) {
@ -1004,7 +1004,7 @@ void func_80986FA8(DemoIm* this, PlayState* play) {
DemoIm_UpdateSkelAnime(this); DemoIm_UpdateSkelAnime(this);
func_80984BE0(this); func_80984BE0(this);
func_80984E58(this, play); func_80984E58(this, play);
this->actor.flags &= ~(ACTOR_FLAG_0 | ACTOR_FLAG_3); this->actor.flags &= ~(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL);
DemoIm_UpdateCollider(this, play); DemoIm_UpdateCollider(this, play);
func_80986CFC(this, play); func_80986CFC(this, play);
} }
@ -1122,7 +1122,7 @@ void DemoIm_Init(Actor* thisx, PlayState* play) {
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f);
DemoIm_InitCollider(thisx, play); DemoIm_InitCollider(thisx, play);
SkelAnime_InitFlex(play, &this->skelAnime, &gImpaSkel, NULL, this->jointTable, this->morphTable, 17); SkelAnime_InitFlex(play, &this->skelAnime, &gImpaSkel, NULL, this->jointTable, this->morphTable, 17);
thisx->flags &= ~ACTOR_FLAG_0; thisx->flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
switch (this->actor.params) { switch (this->actor.params) {
case 2: case 2:

View file

@ -88,7 +88,8 @@ void ElfMsg2_Init(Actor* thisx, PlayState* play) {
ElfMsg2_SetupAction(this, ElfMsg2_WaitUntilActivated); ElfMsg2_SetupAction(this, ElfMsg2_WaitUntilActivated);
} else { } else {
ElfMsg2_SetupAction(this, ElfMsg2_WaitForTextRead); ElfMsg2_SetupAction(this, ElfMsg2_WaitForTextRead);
this->actor.flags |= ACTOR_FLAG_0 | ACTOR_FLAG_18; // Make actor targetable and Navi-checkable this->actor.flags |=
ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_18; // Make actor targetable and Navi-checkable
this->actor.textId = ElfMsg2_GetMessageId(this); this->actor.textId = ElfMsg2_GetMessageId(this);
} }
this->actor.shape.rot.x = this->actor.shape.rot.y = this->actor.shape.rot.z = 0; this->actor.shape.rot.x = this->actor.shape.rot.y = this->actor.shape.rot.z = 0;
@ -140,7 +141,7 @@ void ElfMsg2_WaitUntilActivated(ElfMsg2* this, PlayState* play) {
if ((this->actor.world.rot.y >= 0x41) && (this->actor.world.rot.y <= 0x80) && if ((this->actor.world.rot.y >= 0x41) && (this->actor.world.rot.y <= 0x80) &&
(Flags_GetSwitch(play, (this->actor.world.rot.y - 0x41)))) { (Flags_GetSwitch(play, (this->actor.world.rot.y - 0x41)))) {
ElfMsg2_SetupAction(this, ElfMsg2_WaitForTextRead); ElfMsg2_SetupAction(this, ElfMsg2_WaitForTextRead);
this->actor.flags |= ACTOR_FLAG_0 | ACTOR_FLAG_18; // Make actor targetable and Navi-checkable this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_18; // Make actor targetable and Navi-checkable
this->actor.textId = ElfMsg2_GetMessageId(this); this->actor.textId = ElfMsg2_GetMessageId(this);
} }
} }

View file

@ -8,7 +8,7 @@
#include "assets/objects/object_am/object_am.h" #include "assets/objects/object_am/object_am.h"
#include "overlays/actors/ovl_En_Bom/z_en_bom.h" #include "overlays/actors/ovl_En_Bom/z_en_bom.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_26) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_26)
void EnAm_Init(Actor* thisx, PlayState* play); void EnAm_Init(Actor* thisx, PlayState* play);
void EnAm_Destroy(Actor* thisx, PlayState* play); void EnAm_Destroy(Actor* thisx, PlayState* play);
@ -284,7 +284,7 @@ void EnAm_SetupStatue(EnAm* this) {
f32 lastFrame = Animation_GetLastFrame(&gArmosRicochetAnim); f32 lastFrame = Animation_GetLastFrame(&gArmosRicochetAnim);
Animation_Change(&this->skelAnime, &gArmosRicochetAnim, 0.0f, lastFrame, lastFrame, ANIMMODE_LOOP, 0.0f); Animation_Change(&this->skelAnime, &gArmosRicochetAnim, 0.0f, lastFrame, lastFrame, ANIMMODE_LOOP, 0.0f);
this->dyna.actor.flags &= ~ACTOR_FLAG_0; this->dyna.actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->behavior = AM_BEHAVIOR_DO_NOTHING; this->behavior = AM_BEHAVIOR_DO_NOTHING;
this->dyna.actor.speed = 0.0f; this->dyna.actor.speed = 0.0f;
EnAm_SetupAction(this, EnAm_Statue); EnAm_SetupAction(this, EnAm_Statue);
@ -385,7 +385,7 @@ void EnAm_Sleep(EnAm* this, PlayState* play) {
if (this->textureBlend >= 240) { if (this->textureBlend >= 240) {
this->attackTimer = 200; this->attackTimer = 200;
this->textureBlend = 255; this->textureBlend = 255;
this->dyna.actor.flags |= ACTOR_FLAG_0; this->dyna.actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->dyna.actor.shape.yOffset = 0.0f; this->dyna.actor.shape.yOffset = 0.0f;
EnAm_SetupLunge(this); EnAm_SetupLunge(this);
} else { } else {
@ -406,7 +406,7 @@ void EnAm_Sleep(EnAm* this, PlayState* play) {
this->textureBlend -= 10; this->textureBlend -= 10;
} else { } else {
this->textureBlend = 0; this->textureBlend = 0;
this->dyna.actor.flags &= ~ACTOR_FLAG_0; this->dyna.actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
if (this->dyna.bgId < 0) { if (this->dyna.bgId < 0) {
this->unk_264 = 0; this->unk_264 = 0;

View file

@ -7,7 +7,7 @@
#include "z_en_ani.h" #include "z_en_ani.h"
#include "assets/objects/object_ani/object_ani.h" #include "assets/objects/object_ani/object_ani.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL)
void EnAni_Init(Actor* thisx, PlayState* play); void EnAni_Init(Actor* thisx, PlayState* play);
void EnAni_Destroy(Actor* thisx, PlayState* play); void EnAni_Destroy(Actor* thisx, PlayState* play);

View file

@ -10,7 +10,7 @@
#include "overlays/actors/ovl_Bg_Hidan_Curtain/z_bg_hidan_curtain.h" #include "overlays/actors/ovl_Bg_Hidan_Curtain/z_bg_hidan_curtain.h"
#include "terminal.h" #include "terminal.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4)
void EnAnubice_Init(Actor* thisx, PlayState* play); void EnAnubice_Init(Actor* thisx, PlayState* play);
void EnAnubice_Destroy(Actor* thisx, PlayState* play); void EnAnubice_Destroy(Actor* thisx, PlayState* play);
@ -146,7 +146,7 @@ void EnAnubice_Init(Actor* thisx, PlayState* play) {
this->actor.colChkInfo.mass = MASS_IMMOVABLE; this->actor.colChkInfo.mass = MASS_IMMOVABLE;
this->actor.shape.yOffset = -4230.0f; this->actor.shape.yOffset = -4230.0f;
this->focusHeightOffset = 0.0f; this->focusHeightOffset = 0.0f;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->home = this->actor.world.pos; this->home = this->actor.world.pos;
this->actor.attentionRangeType = ATTENTION_RANGE_3; this->actor.attentionRangeType = ATTENTION_RANGE_3;
this->actionFunc = EnAnubice_FindFlameCircles; this->actionFunc = EnAnubice_FindFlameCircles;
@ -193,7 +193,7 @@ void EnAnubice_FindFlameCircles(EnAnubice* this, PlayState* play) {
} }
this->hasSearchedForFlameCircles = true; this->hasSearchedForFlameCircles = true;
} }
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->actionFunc = EnAnubice_SetupIdle; this->actionFunc = EnAnubice_SetupIdle;
} }
} }
@ -374,7 +374,7 @@ void EnAnubice_Update(Actor* thisx, PlayState* play) {
(fabsf(this->flameCircles[i]->actor.world.pos.z - this->actor.world.pos.z) < 60.0f) && (fabsf(this->flameCircles[i]->actor.world.pos.z - this->actor.world.pos.z) < 60.0f) &&
(flameCircle->timer != 0)) { (flameCircle->timer != 0)) {
Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_PROP); Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_PROP);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Enemy_StartFinishingBlow(play, &this->actor); Enemy_StartFinishingBlow(play, &this->actor);
Actor_PlaySfx(&this->actor, NA_SE_EN_ANUBIS_DEAD); Actor_PlaySfx(&this->actor, NA_SE_EN_ANUBIS_DEAD);
this->actionFunc = EnAnubice_SetupDie; this->actionFunc = EnAnubice_SetupDie;
@ -386,7 +386,7 @@ void EnAnubice_Update(Actor* thisx, PlayState* play) {
this->collider.base.acFlags &= ~AC_HIT; this->collider.base.acFlags &= ~AC_HIT;
if (this->actor.colChkInfo.damageEffect == ANUBICE_DMGEFF_FIRE) { if (this->actor.colChkInfo.damageEffect == ANUBICE_DMGEFF_FIRE) {
Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_PROP); Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_PROP);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Enemy_StartFinishingBlow(play, &this->actor); Enemy_StartFinishingBlow(play, &this->actor);
Actor_PlaySfx(&this->actor, NA_SE_EN_ANUBIS_DEAD); Actor_PlaySfx(&this->actor, NA_SE_EN_ANUBIS_DEAD);
this->actionFunc = EnAnubice_SetupDie; this->actionFunc = EnAnubice_SetupDie;

View file

@ -53,7 +53,7 @@ void EnAttackNiw_Init(Actor* thisx, PlayState* play) {
this->unk_298.y = Rand_CenteredFloat(10.0f); this->unk_298.y = Rand_CenteredFloat(10.0f);
this->unk_298.z = Rand_CenteredFloat(100.0f); this->unk_298.z = Rand_CenteredFloat(100.0f);
Actor_SetScale(&this->actor, 0.01f); Actor_SetScale(&this->actor, 0.01f);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.shape.rot.y = this->actor.world.rot.y = (Rand_ZeroOne() - 0.5f) * 60000.0f; this->actor.shape.rot.y = this->actor.world.rot.y = (Rand_ZeroOne() - 0.5f) * 60000.0f;
this->actionFunc = func_809B5670; this->actionFunc = func_809B5670;
} }

View file

@ -7,7 +7,7 @@
#include "z_en_ba.h" #include "z_en_ba.h"
#include "assets/objects/object_bxa/object_bxa.h" #include "assets/objects/object_bxa/object_bxa.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4)
void EnBa_Init(Actor* thisx, PlayState* play); void EnBa_Init(Actor* thisx, PlayState* play);
void EnBa_Destroy(Actor* thisx, PlayState* play); void EnBa_Destroy(Actor* thisx, PlayState* play);
@ -146,7 +146,7 @@ void EnBa_Idle(EnBa* this, PlayState* play) {
if ((this->actor.colChkInfo.mass == MASS_IMMOVABLE) && (this->actor.xzDistToPlayer > 175.0f)) { if ((this->actor.colChkInfo.mass == MASS_IMMOVABLE) && (this->actor.xzDistToPlayer > 175.0f)) {
Math_SmoothStepToF(&this->actor.world.pos.y, this->actor.home.pos.y + 330.0f, 1.0f, 7.0f, 0.0f); Math_SmoothStepToF(&this->actor.world.pos.y, this->actor.home.pos.y + 330.0f, 1.0f, 7.0f, 0.0f);
} else { } else {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
Math_SmoothStepToF(&this->actor.world.pos.y, this->actor.home.pos.y + 100.0f, 1.0f, 10.0f, 0.0f); Math_SmoothStepToF(&this->actor.world.pos.y, this->actor.home.pos.y + 100.0f, 1.0f, 10.0f, 0.0f);
} }
this->unk_2FC = this->actor.world.pos; this->unk_2FC = this->actor.world.pos;
@ -402,7 +402,7 @@ void func_809B75A0(EnBa* this, PlayState* play2) {
Matrix_Translate(this->actor.world.pos.x, this->actor.world.pos.y, this->actor.world.pos.z, MTXMODE_NEW); Matrix_Translate(this->actor.world.pos.x, this->actor.world.pos.y, this->actor.world.pos.z, MTXMODE_NEW);
Matrix_RotateZYX(this->actor.shape.rot.x - 0x8000, this->actor.shape.rot.y, 0, MTXMODE_APPLY); Matrix_RotateZYX(this->actor.shape.rot.x - 0x8000, this->actor.shape.rot.y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&D_809B8080, &this->unk_158[0]); Matrix_MultVec3f(&D_809B8080, &this->unk_158[0]);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
for (i = 5; i < 13; i++) { for (i = 5; i < 13; i++) {
Math_SmoothStepToS(&this->unk_2A8[i].x, this->unk_2A8[5].x, 1, this->unk_31C, 0); Math_SmoothStepToS(&this->unk_2A8[i].x, this->unk_2A8[5].x, 1, this->unk_31C, 0);
Math_SmoothStepToS(&this->unk_2A8[i].y, this->unk_2A8[5].y, 1, this->unk_31C, 0); Math_SmoothStepToS(&this->unk_2A8[i].y, this->unk_2A8[5].y, 1, this->unk_31C, 0);

View file

@ -8,7 +8,7 @@
#include "assets/objects/gameplay_keep/gameplay_keep.h" #include "assets/objects/gameplay_keep/gameplay_keep.h"
#include "assets/objects/object_Bb/object_Bb.h" #include "assets/objects/object_Bb/object_Bb.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_24) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_24)
#define vBombHopPhase actionVar1 #define vBombHopPhase actionVar1
#define vTrailIdx actionVar1 #define vTrailIdx actionVar1
@ -412,7 +412,7 @@ void EnBb_SetupFlameTrail(EnBb* this) {
this->actor.velocity.y = 0.0f; this->actor.velocity.y = 0.0f;
this->actor.gravity = 0.0f; this->actor.gravity = 0.0f;
this->actor.speed = 0.0f; this->actor.speed = 0.0f;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
EnBb_SetupAction(this, EnBb_FlameTrail); EnBb_SetupAction(this, EnBb_FlameTrail);
} }
@ -700,7 +700,7 @@ void EnBb_Down(EnBb* this, PlayState* play) {
this->moveMode = BBMOVE_HIDDEN; this->moveMode = BBMOVE_HIDDEN;
this->timer = 10; this->timer = 10;
this->actionState++; this->actionState++;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->action = BB_RED; this->action = BB_RED;
EnBb_SetupAction(this, EnBb_Red); EnBb_SetupAction(this, EnBb_Red);
return; return;
@ -765,7 +765,7 @@ void EnBb_SetupRed(PlayState* play, EnBb* this) {
this->actor.home.pos = this->actor.world.pos; this->actor.home.pos = this->actor.world.pos;
this->actor.velocity.y = this->actor.gravity = this->actor.speed = 0.0f; this->actor.velocity.y = this->actor.gravity = this->actor.speed = 0.0f;
this->actor.bgCheckFlags &= ~BGCHECKFLAG_GROUND; this->actor.bgCheckFlags &= ~BGCHECKFLAG_GROUND;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
this->action = BB_RED; this->action = BB_RED;
EnBb_SetupAction(this, EnBb_Red); EnBb_SetupAction(this, EnBb_Red);
@ -799,7 +799,7 @@ void EnBb_Red(EnBb* this, PlayState* play) {
case BBRED_ATTACK: case BBRED_ATTACK:
if (this->timer == 0) { if (this->timer == 0) {
this->moveMode = BBMOVE_NORMAL; this->moveMode = BBMOVE_NORMAL;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
} }
this->bobPhase += Rand_ZeroOne(); this->bobPhase += Rand_ZeroOne();
Math_SmoothStepToF(&this->flameScaleY, 80.0f, 1.0f, 10.0f, 0.0f); Math_SmoothStepToF(&this->flameScaleY, 80.0f, 1.0f, 10.0f, 0.0f);
@ -818,7 +818,7 @@ void EnBb_Red(EnBb* this, PlayState* play) {
this->moveMode = BBMOVE_HIDDEN; this->moveMode = BBMOVE_HIDDEN;
this->timer = 10; this->timer = 10;
this->actionState++; this->actionState++;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} else { } else {
this->actor.velocity.y *= -1.06f; this->actor.velocity.y *= -1.06f;
if (this->actor.velocity.y > 13.0f) { if (this->actor.velocity.y > 13.0f) {
@ -1128,7 +1128,7 @@ void EnBb_Stunned(EnBb* this, PlayState* play) {
EnBb_SetupDown(this); EnBb_SetupDown(this);
} }
} else { } else {
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
EnBb_SetupDeath(this, play); EnBb_SetupDeath(this, play);
} }
} }
@ -1194,7 +1194,7 @@ void EnBb_CollisionCheck(EnBb* this, PlayState* play) {
} }
} }
if (this->actor.colChkInfo.health == 0) { if (this->actor.colChkInfo.health == 0) {
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
if (this->actor.params == ENBB_RED) { if (this->actor.params == ENBB_RED) {
EnBb_KillFlameTrail(this); EnBb_KillFlameTrail(this);
} }

View file

@ -1,7 +1,7 @@
#include "z_en_bigokuta.h" #include "z_en_bigokuta.h"
#include "assets/objects/object_bigokuta/object_bigokuta.h" #include "assets/objects/object_bigokuta/object_bigokuta.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_5) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_5)
void EnBigokuta_Init(Actor* thisx, PlayState* play); void EnBigokuta_Init(Actor* thisx, PlayState* play);
void EnBigokuta_Destroy(Actor* thisx, PlayState* play); void EnBigokuta_Destroy(Actor* thisx, PlayState* play);
@ -383,7 +383,7 @@ void func_809BD6B8(EnBigokuta* this) {
void func_809BD768(EnBigokuta* this) { void func_809BD768(EnBigokuta* this) {
this->unk_194 = Rand_ZeroOne() < 0.5f ? -1 : 1; this->unk_194 = Rand_ZeroOne() < 0.5f ? -1 : 1;
this->unk_19A = 0; this->unk_19A = 0;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->cylinder[0].base.atFlags &= ~AT_ON; this->cylinder[0].base.atFlags &= ~AT_ON;
Actor_PlaySfx(&this->actor, NA_SE_EN_DAIOCTA_SINK); Actor_PlaySfx(&this->actor, NA_SE_EN_DAIOCTA_SINK);
this->actionFunc = func_809BE4A4; this->actionFunc = func_809BE4A4;
@ -684,7 +684,7 @@ void func_809BE4A4(EnBigokuta* this, PlayState* play) {
void func_809BE518(EnBigokuta* this, PlayState* play) { void func_809BE518(EnBigokuta* this, PlayState* play) {
if (Math_StepToF(&this->actor.world.pos.y, this->actor.home.pos.y, 10.0f)) { if (Math_StepToF(&this->actor.world.pos.y, this->actor.home.pos.y, 10.0f)) {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
func_809BD3F8(this); func_809BD3F8(this);
} }
} }

View file

@ -7,7 +7,7 @@
#include "z_en_bili.h" #include "z_en_bili.h"
#include "assets/objects/object_bl/object_bl.h" #include "assets/objects/object_bl/object_bl.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_IGNORE_QUAKE | ACTOR_FLAG_14) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_IGNORE_QUAKE | ACTOR_FLAG_14)
void EnBili_Init(Actor* thisx, PlayState* play); void EnBili_Init(Actor* thisx, PlayState* play);
void EnBili_Destroy(Actor* thisx, PlayState* play); void EnBili_Destroy(Actor* thisx, PlayState* play);
@ -227,7 +227,7 @@ void EnBili_SetupBurnt(EnBili* this) {
void EnBili_SetupDie(EnBili* this) { void EnBili_SetupDie(EnBili* this) {
this->timer = 18; this->timer = 18;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actionFunc = EnBili_Die; this->actionFunc = EnBili_Die;
this->actor.speed = 0.0f; this->actor.speed = 0.0f;
} }
@ -555,7 +555,7 @@ void EnBili_UpdateDamage(EnBili* this, PlayState* play) {
if (Actor_ApplyDamage(&this->actor) == 0) { if (Actor_ApplyDamage(&this->actor) == 0) {
Actor_PlaySfx(&this->actor, NA_SE_EN_BIRI_DEAD); Actor_PlaySfx(&this->actor, NA_SE_EN_BIRI_DEAD);
Enemy_StartFinishingBlow(play, &this->actor); Enemy_StartFinishingBlow(play, &this->actor);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
damageEffect = this->actor.colChkInfo.damageEffect; damageEffect = this->actor.colChkInfo.damageEffect;

View file

@ -4,7 +4,8 @@
#include "overlays/actors/ovl_En_Ex_Item/z_en_ex_item.h" #include "overlays/actors/ovl_En_Ex_Item/z_en_ex_item.h"
#include "assets/objects/object_bg/object_bg.h" #include "assets/objects/object_bg/object_bg.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_4 | ACTOR_FLAG_5 | ACTOR_FLAG_27) #define FLAGS \
(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_4 | ACTOR_FLAG_5 | ACTOR_FLAG_LOCK_ON_DISABLED)
typedef enum BombchuGirlEyeMode { typedef enum BombchuGirlEyeMode {
/* 0 */ CHU_GIRL_EYES_ASLEEP, /* 0 */ CHU_GIRL_EYES_ASLEEP,

View file

@ -234,7 +234,7 @@ void EnBomChu_WaitForRelease(EnBomChu* this, PlayState* play) {
//! @bug there is no NULL check on the floor poly. If the player is out of bounds the floor poly will be NULL //! @bug there is no NULL check on the floor poly. If the player is out of bounds the floor poly will be NULL
//! and will cause a crash inside this function. //! and will cause a crash inside this function.
EnBomChu_UpdateFloorPoly(this, this->actor.floorPoly, play); EnBomChu_UpdateFloorPoly(this, this->actor.floorPoly, play);
this->actor.flags |= ACTOR_FLAG_0; // make chu targetable this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED; // make chu targetable
func_8002F850(play, &this->actor); func_8002F850(play, &this->actor);
this->actionFunc = EnBomChu_Move; this->actionFunc = EnBomChu_Move;
} }

View file

@ -8,7 +8,7 @@
#include "assets/objects/object_bombf/object_bombf.h" #include "assets/objects/object_bombf/object_bombf.h"
#include "overlays/effects/ovl_Effect_Ss_Dead_Sound/z_eff_ss_dead_sound.h" #include "overlays/effects/ovl_Effect_Ss_Dead_Sound/z_eff_ss_dead_sound.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_4)
void EnBombf_Init(Actor* thisx, PlayState* play); void EnBombf_Init(Actor* thisx, PlayState* play);
void EnBombf_Destroy(Actor* thisx, PlayState* play); void EnBombf_Destroy(Actor* thisx, PlayState* play);
@ -117,7 +117,7 @@ void EnBombf_Init(Actor* thisx, PlayState* play) {
thisx->gravity = -1.5f; thisx->gravity = -1.5f;
Actor_ChangeCategory(play, &play->actorCtx, thisx, ACTORCAT_EXPLOSIVE); Actor_ChangeCategory(play, &play->actorCtx, thisx, ACTORCAT_EXPLOSIVE);
thisx->colChkInfo.mass = 200; thisx->colChkInfo.mass = 200;
thisx->flags &= ~ACTOR_FLAG_0; thisx->flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
EnBombf_SetupAction(this, EnBombf_Move); EnBombf_SetupAction(this, EnBombf_Move);
} else { } else {
thisx->colChkInfo.mass = MASS_IMMOVABLE; thisx->colChkInfo.mass = MASS_IMMOVABLE;
@ -157,7 +157,7 @@ void EnBombf_GrowBomb(EnBombf* this, PlayState* play) {
this->timer = 180; this->timer = 180;
this->flowerBombScale = 0.0f; this->flowerBombScale = 0.0f;
Actor_PlaySfx(&this->actor, NA_SE_PL_PULL_UP_ROCK); Actor_PlaySfx(&this->actor, NA_SE_PL_PULL_UP_ROCK);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} else { } else {
player->actor.child = NULL; player->actor.child = NULL;
player->heldActor = NULL; player->heldActor = NULL;
@ -175,7 +175,7 @@ void EnBombf_GrowBomb(EnBombf* this, PlayState* play) {
bombFlower->isFuseEnabled = true; bombFlower->isFuseEnabled = true;
bombFlower->timer = 0; bombFlower->timer = 0;
this->timer = 180; this->timer = 180;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->flowerBombScale = 0.0f; this->flowerBombScale = 0.0f;
} }
} }
@ -186,7 +186,7 @@ void EnBombf_GrowBomb(EnBombf* this, PlayState* play) {
if (bombFlower != NULL) { if (bombFlower != NULL) {
bombFlower->timer = 100; bombFlower->timer = 100;
this->timer = 180; this->timer = 180;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->flowerBombScale = 0.0f; this->flowerBombScale = 0.0f;
} }
} else { } else {
@ -206,7 +206,7 @@ void EnBombf_GrowBomb(EnBombf* this, PlayState* play) {
if (this->timer == 0) { if (this->timer == 0) {
this->flowerBombScale += 0.05f; this->flowerBombScale += 0.05f;
if (this->flowerBombScale >= 1.0f) { if (this->flowerBombScale >= 1.0f) {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
} }
} }

View file

@ -7,7 +7,7 @@
#include "z_en_brob.h" #include "z_en_brob.h"
#include "assets/objects/object_brob/object_brob.h" #include "assets/objects/object_brob/object_brob.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE)
void EnBrob_Init(Actor* thisx, PlayState* play); void EnBrob_Init(Actor* thisx, PlayState* play);
void EnBrob_Destroy(Actor* thisx, PlayState* play); void EnBrob_Destroy(Actor* thisx, PlayState* play);
@ -91,7 +91,7 @@ void EnBrob_Init(Actor* thisx, PlayState* play) {
this->colliders[1].dim.height *= thisx->scale.y; this->colliders[1].dim.height *= thisx->scale.y;
this->colliders[1].dim.yShift *= thisx->scale.y; this->colliders[1].dim.yShift *= thisx->scale.y;
this->actionFunc = NULL; this->actionFunc = NULL;
thisx->flags &= ~ACTOR_FLAG_0; thisx->flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
EnBrob_SetupIdle(this, play); EnBrob_SetupIdle(this, play);
} }

View file

@ -1,7 +1,7 @@
#include "z_en_bubble.h" #include "z_en_bubble.h"
#include "assets/objects/object_bubble/object_bubble.h" #include "assets/objects/object_bubble/object_bubble.h"
#define FLAGS ACTOR_FLAG_0 #define FLAGS ACTOR_FLAG_ATTENTION_ENABLED
void EnBubble_Init(Actor* thisx, PlayState* play); void EnBubble_Init(Actor* thisx, PlayState* play);
void EnBubble_Destroy(Actor* thisx, PlayState* play); void EnBubble_Destroy(Actor* thisx, PlayState* play);
@ -76,7 +76,7 @@ void EnBubble_SetDimensions(EnBubble* this, f32 dim) {
f32 c; f32 c;
f32 d; f32 d;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
Actor_SetScale(&this->actor, 1.0f); Actor_SetScale(&this->actor, 1.0f);
this->actor.shape.yOffset = 16.0f; this->actor.shape.yOffset = 16.0f;
this->graphicRotSpeed = 16.0f; this->graphicRotSpeed = 16.0f;
@ -145,7 +145,7 @@ s32 EnBubble_Explosion(EnBubble* this, PlayState* play) {
&sEffectEnvColor, Rand_S16Offset(100, 50), 0x19, 0); &sEffectEnvColor, Rand_S16Offset(100, 50), 0x19, 0);
} }
Item_DropCollectibleRandom(play, NULL, &this->actor.world.pos, 0x50); Item_DropCollectibleRandom(play, NULL, &this->actor.world.pos, 0x50);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
return Rand_S16Offset(90, 60); return Rand_S16Offset(90, 60);
} }

View file

@ -8,7 +8,7 @@
#include "assets/objects/gameplay_keep/gameplay_keep.h" #include "assets/objects/gameplay_keep/gameplay_keep.h"
#include "assets/objects/object_bw/object_bw.h" #include "assets/objects/object_bw/object_bw.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4)
void EnBw_Init(Actor* thisx, PlayState* play); void EnBw_Init(Actor* thisx, PlayState* play);
void EnBw_Destroy(Actor* thisx, PlayState* play); void EnBw_Destroy(Actor* thisx, PlayState* play);
@ -573,7 +573,7 @@ void func_809CFF98(EnBw* this, PlayState* play) {
void func_809D00F4(EnBw* this) { void func_809D00F4(EnBw* this) {
this->unk_220 = 0; this->unk_220 = 0;
this->unk_222 = 40; this->unk_222 = 40;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.speed = 0.0f; this->actor.speed = 0.0f;
Actor_PlaySfx(&this->actor, NA_SE_EN_BUBLEWALK_DEAD); Actor_PlaySfx(&this->actor, NA_SE_EN_BUBLEWALK_DEAD);
EnBw_SetupAction(this, func_809D014C); EnBw_SetupAction(this, func_809D014C);

View file

@ -194,7 +194,7 @@ void EnChanger_Init(Actor* thisx, PlayState* play2) {
((this->rightChestNum & 0x1F) << 8) + (rightChestItem & 0xFF)); ((this->rightChestNum & 0x1F) << 8) + (rightChestItem & 0xFF));
} }
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actionFunc = EnChanger_Wait; this->actionFunc = EnChanger_Wait;
} }

View file

@ -1,6 +1,6 @@
#include "z_en_clear_tag.h" #include "z_en_clear_tag.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_5) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_5)
void EnClearTag_Init(Actor* thisx, PlayState* play); void EnClearTag_Init(Actor* thisx, PlayState* play);
void EnClearTag_Destroy(Actor* thisx, PlayState* play); void EnClearTag_Destroy(Actor* thisx, PlayState* play);
@ -250,7 +250,7 @@ void EnClearTag_Init(Actor* thisx, PlayState* play) {
Collider_SetCylinder(play, &this->collider, &this->actor, &sLaserCylinderInit); Collider_SetCylinder(play, &this->collider, &this->actor, &sLaserCylinderInit);
Actor_PlaySfx(&this->actor, NA_SE_IT_SWORD_REFLECT_MG); Actor_PlaySfx(&this->actor, NA_SE_IT_SWORD_REFLECT_MG);
} else { // Initialize the Arwing. } else { // Initialize the Arwing.
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.attentionRangeType = ATTENTION_RANGE_5; this->actor.attentionRangeType = ATTENTION_RANGE_5;
Collider_SetCylinder(play, &this->collider, &this->actor, &sArwingCylinderInit); Collider_SetCylinder(play, &this->collider, &this->actor, &sArwingCylinderInit);
this->actor.colChkInfo.health = 3; this->actor.colChkInfo.health = 3;
@ -537,7 +537,7 @@ void EnClearTag_Update(Actor* thisx, PlayState* play2) {
if (this->drawMode != CLEAR_TAG_DRAW_MODE_ARWING) { if (this->drawMode != CLEAR_TAG_DRAW_MODE_ARWING) {
this->drawMode = CLEAR_TAG_DRAW_MODE_EFFECT; this->drawMode = CLEAR_TAG_DRAW_MODE_EFFECT;
this->deathTimer = 70; this->deathTimer = 70;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} else { } else {
Actor_Kill(&this->actor); Actor_Kill(&this->actor);
} }

View file

@ -6,7 +6,7 @@
#include "z_en_cow.h" #include "z_en_cow.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL)
void EnCow_Init(Actor* thisx, PlayState* play); void EnCow_Init(Actor* thisx, PlayState* play);
void EnCow_Destroy(Actor* thisx, PlayState* play); void EnCow_Destroy(Actor* thisx, PlayState* play);
@ -158,7 +158,7 @@ void EnCow_Init(Actor* thisx, PlayState* play) {
this->actor.draw = EnCow_DrawTail; this->actor.draw = EnCow_DrawTail;
this->actionFunc = EnCow_IdleTail; this->actionFunc = EnCow_IdleTail;
EnCow_SetTailPos(this); EnCow_SetTailPos(this);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->animationTimer = (u16)Rand_ZeroFloat(1000.0f) + 40.0f; this->animationTimer = (u16)Rand_ZeroFloat(1000.0f) + 40.0f;
break; break;
} }

View file

@ -1,7 +1,7 @@
#include "z_en_crow.h" #include "z_en_crow.h"
#include "assets/objects/object_crow/object_crow.h" #include "assets/objects/object_crow/object_crow.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_IGNORE_QUAKE | ACTOR_FLAG_14) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_IGNORE_QUAKE | ACTOR_FLAG_14)
void EnCrow_Init(Actor* thisx, PlayState* play); void EnCrow_Init(Actor* thisx, PlayState* play);
void EnCrow_Destroy(Actor* thisx, PlayState* play); void EnCrow_Destroy(Actor* thisx, PlayState* play);
@ -400,7 +400,7 @@ void EnCrow_Respawn(EnCrow* this, PlayState* play) {
target = 0.01f; target = 0.01f;
} }
if (Math_StepToF(&this->actor.scale.x, target, target * 0.1f)) { if (Math_StepToF(&this->actor.scale.x, target, target * 0.1f)) {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.flags &= ~ACTOR_FLAG_4; this->actor.flags &= ~ACTOR_FLAG_4;
this->actor.colChkInfo.health = 1; this->actor.colChkInfo.health = 1;
EnCrow_SetupFlyIdle(this); EnCrow_SetupFlyIdle(this);
@ -418,7 +418,7 @@ void EnCrow_UpdateDamage(EnCrow* this, PlayState* play) {
EnCrow_SetupTurnAway(this); EnCrow_SetupTurnAway(this);
} else { } else {
Actor_ApplyDamage(&this->actor); Actor_ApplyDamage(&this->actor);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Enemy_StartFinishingBlow(play, &this->actor); Enemy_StartFinishingBlow(play, &this->actor);
EnCrow_SetupDamaged(this, play); EnCrow_SetupDamaged(this, play);
} }

View file

@ -2,7 +2,7 @@
#include "assets/objects/object_cs/object_cs.h" #include "assets/objects/object_cs/object_cs.h"
#include "assets/objects/object_link_child/object_link_child.h" #include "assets/objects/object_link_child/object_link_child.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL)
void EnCs_Init(Actor* thisx, PlayState* play); void EnCs_Init(Actor* thisx, PlayState* play);
void EnCs_Destroy(Actor* thisx, PlayState* play); void EnCs_Destroy(Actor* thisx, PlayState* play);

View file

@ -2,7 +2,7 @@
#include "overlays/actors/ovl_En_GeldB/z_en_geldb.h" #include "overlays/actors/ovl_En_GeldB/z_en_geldb.h"
#include "assets/objects/object_daiku/object_daiku.h" #include "assets/objects/object_daiku/object_daiku.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_4)
typedef struct EnDaikuEscapeSubCamParam { typedef struct EnDaikuEscapeSubCamParam {
Vec3f eyePosDeltaLocal; Vec3f eyePosDeltaLocal;
@ -367,7 +367,7 @@ void EnDaiku_Jailed(EnDaiku* this, PlayState* play) {
this->actionFunc = EnDaiku_WaitFreedom; this->actionFunc = EnDaiku_WaitFreedom;
} else if (!(this->stateFlags & ENDAIKU_STATEFLAG_GERUDOFIGHTING) && !gerudo->invisible) { } else if (!(this->stateFlags & ENDAIKU_STATEFLAG_GERUDOFIGHTING) && !gerudo->invisible) {
this->stateFlags |= ENDAIKU_STATEFLAG_GERUDOFIGHTING; this->stateFlags |= ENDAIKU_STATEFLAG_GERUDOFIGHTING;
this->actor.flags &= ~(ACTOR_FLAG_0 | ACTOR_FLAG_3); this->actor.flags &= ~(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL);
} }
} }
@ -379,7 +379,7 @@ void EnDaiku_WaitFreedom(EnDaiku* this, PlayState* play) {
SkelAnime_Update(&this->skelAnime); SkelAnime_Update(&this->skelAnime);
if (Flags_GetSwitch(play, PARAMS_GET_U(this->actor.params, 8, 6))) { if (Flags_GetSwitch(play, PARAMS_GET_U(this->actor.params, 8, 6))) {
this->actor.flags |= ACTOR_FLAG_0 | ACTOR_FLAG_3; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL;
EnDaiku_UpdateText(this, play); EnDaiku_UpdateText(this, play);
} }
} }

View file

@ -7,7 +7,7 @@
#include "z_en_daiku_kakariko.h" #include "z_en_daiku_kakariko.h"
#include "assets/objects/object_daiku/object_daiku.h" #include "assets/objects/object_daiku/object_daiku.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_4)
typedef enum KakarikoCarpenterType { typedef enum KakarikoCarpenterType {
/* 0x0 */ CARPENTER_ICHIRO, // Red and purple pants, normal hair /* 0x0 */ CARPENTER_ICHIRO, // Red and purple pants, normal hair

View file

@ -3,7 +3,7 @@
#include "assets/objects/gameplay_keep/gameplay_keep.h" #include "assets/objects/gameplay_keep/gameplay_keep.h"
#include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h" #include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE)
void EnDekubaba_Init(Actor* thisx, PlayState* play); void EnDekubaba_Init(Actor* thisx, PlayState* play);
void EnDekubaba_Destroy(Actor* thisx, PlayState* play); void EnDekubaba_Destroy(Actor* thisx, PlayState* play);
@ -955,7 +955,7 @@ void EnDekubaba_PrunedSomersault(EnDekubaba* this, PlayState* play) {
((this->actor.bgCheckFlags & BGCHECKFLAG_GROUND_TOUCH) || (this->actor.bgCheckFlags & BGCHECKFLAG_WALL))) { ((this->actor.bgCheckFlags & BGCHECKFLAG_GROUND_TOUCH) || (this->actor.bgCheckFlags & BGCHECKFLAG_WALL))) {
this->actor.scale.x = this->actor.scale.y = this->actor.scale.z = 0.0f; this->actor.scale.x = this->actor.scale.y = this->actor.scale.z = 0.0f;
this->actor.speed = 0.0f; this->actor.speed = 0.0f;
this->actor.flags &= ~(ACTOR_FLAG_0 | ACTOR_FLAG_2); this->actor.flags &= ~(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE);
EffectSsHahen_SpawnBurst(play, &this->actor.world.pos, this->size * 3.0f, 0, this->size * 12.0f, EffectSsHahen_SpawnBurst(play, &this->actor.world.pos, this->size * 3.0f, 0, this->size * 12.0f,
this->size * 5.0f, 15, HAHEN_OBJECT_DEFAULT, 10, NULL); this->size * 5.0f, 15, HAHEN_OBJECT_DEFAULT, 10, NULL);
} }

View file

@ -8,7 +8,7 @@
#include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h" #include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h"
#include "assets/objects/object_dekunuts/object_dekunuts.h" #include "assets/objects/object_dekunuts/object_dekunuts.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE)
#define DEKUNUTS_FLOWER 10 #define DEKUNUTS_FLOWER 10
@ -111,7 +111,7 @@ void EnDekunuts_Init(Actor* thisx, PlayState* play) {
Actor_ProcessInitChain(&this->actor, sInitChain); Actor_ProcessInitChain(&this->actor, sInitChain);
if (thisx->params == DEKUNUTS_FLOWER) { if (thisx->params == DEKUNUTS_FLOWER) {
thisx->flags &= ~(ACTOR_FLAG_0 | ACTOR_FLAG_2); thisx->flags &= ~(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE);
} else { } else {
ActorShape_Init(&thisx->shape, 0.0f, ActorShadow_DrawCircle, 35.0f); ActorShape_Init(&thisx->shape, 0.0f, ActorShadow_DrawCircle, 35.0f);
SkelAnime_Init(play, &this->skelAnime, &gDekuNutsSkel, &gDekuNutsStandAnim, this->jointTable, this->morphTable, SkelAnime_Init(play, &this->skelAnime, &gDekuNutsSkel, &gDekuNutsStandAnim, this->jointTable, this->morphTable,

View file

@ -1,7 +1,7 @@
#include "z_en_dh.h" #include "z_en_dh.h"
#include "assets/objects/object_dh/object_dh.h" #include "assets/objects/object_dh/object_dh.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_10) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_10)
typedef enum EnDhAction { typedef enum EnDhAction {
/* 0 */ DH_WAIT, /* 0 */ DH_WAIT,
@ -148,7 +148,7 @@ void EnDh_Init(Actor* thisx, PlayState* play) {
this->actor.colChkInfo.mass = MASS_HEAVY; this->actor.colChkInfo.mass = MASS_HEAVY;
this->actor.colChkInfo.health = LINK_IS_ADULT ? 14 : 20; this->actor.colChkInfo.health = LINK_IS_ADULT ? 14 : 20;
this->alpha = this->unk_258 = 255; this->alpha = this->unk_258 = 255;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Collider_InitCylinder(play, &this->collider1); Collider_InitCylinder(play, &this->collider1);
Collider_SetCylinder(play, &this->collider1, &this->actor, &sCylinderInit); Collider_SetCylinder(play, &this->collider1, &this->actor, &sCylinderInit);
Collider_InitJntSph(play, &this->collider2); Collider_InitJntSph(play, &this->collider2);
@ -206,7 +206,7 @@ void EnDh_Wait(EnDh* this, PlayState* play) {
if ((this->actor.params >= ENDH_START_ATTACK_GRAB) || (this->actor.params <= ENDH_HANDS_KILLED_4)) { if ((this->actor.params >= ENDH_START_ATTACK_GRAB) || (this->actor.params <= ENDH_HANDS_KILLED_4)) {
switch (this->actionState) { switch (this->actionState) {
case 0: case 0:
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.shape.rot.y = this->actor.yawTowardsPlayer; this->actor.shape.rot.y = this->actor.yawTowardsPlayer;
this->actor.flags &= ~ACTOR_FLAG_REACT_TO_LENS; this->actor.flags &= ~ACTOR_FLAG_REACT_TO_LENS;
this->actionState++; this->actionState++;
@ -366,7 +366,7 @@ void EnDh_SetupBurrow(EnDh* this) {
this->actor.world.rot.y = this->actor.shape.rot.y; this->actor.world.rot.y = this->actor.shape.rot.y;
this->dirtWavePhase = 0; this->dirtWavePhase = 0;
this->actionState = 0; this->actionState = 0;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Actor_PlaySfx(&this->actor, NA_SE_EN_DEADHAND_HIDE); Actor_PlaySfx(&this->actor, NA_SE_EN_DEADHAND_HIDE);
EnDh_SetupAction(this, EnDh_Burrow); EnDh_SetupAction(this, EnDh_Burrow);
} }
@ -437,7 +437,7 @@ void EnDh_SetupDeath(EnDh* this) {
Animation_MorphToPlayOnce(&this->skelAnime, &object_dh_Anim_0032BC, -1.0f); Animation_MorphToPlayOnce(&this->skelAnime, &object_dh_Anim_0032BC, -1.0f);
this->curAction = DH_DEATH; this->curAction = DH_DEATH;
this->timer = 300; this->timer = 300;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.speed = 0.0f; this->actor.speed = 0.0f;
func_800F5B58(); func_800F5B58();
this->actor.params = ENDH_DEATH; this->actor.params = ENDH_DEATH;

View file

@ -8,7 +8,7 @@
#include "overlays/actors/ovl_En_Dh/z_en_dh.h" #include "overlays/actors/ovl_En_Dh/z_en_dh.h"
#include "assets/objects/object_dh/object_dh.h" #include "assets/objects/object_dh/object_dh.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4)
void EnDha_Init(Actor* thisx, PlayState* play); void EnDha_Init(Actor* thisx, PlayState* play);
void EnDha_Destroy(Actor* thisx, PlayState* play); void EnDha_Destroy(Actor* thisx, PlayState* play);
@ -166,7 +166,7 @@ void EnDha_Init(Actor* thisx, PlayState* play) {
this->limbAngleX[0] = -0x4000; this->limbAngleX[0] = -0x4000;
Collider_InitJntSph(play, &this->collider); Collider_InitJntSph(play, &this->collider);
Collider_SetJntSph(play, &this->collider, &this->actor, &sJntSphInit, this->colliderItem); Collider_SetJntSph(play, &this->collider, &this->actor, &sJntSphInit, this->colliderItem);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
EnDha_SetupWait(this); EnDha_SetupWait(this);
} }

View file

@ -9,7 +9,7 @@
#include "assets/objects/object_zo/object_zo.h" #include "assets/objects/object_zo/object_zo.h"
#include "terminal.h" #include "terminal.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_4)
void EnDivingGame_Init(Actor* thisx, PlayState* play); void EnDivingGame_Init(Actor* thisx, PlayState* play);
void EnDivingGame_Destroy(Actor* thisx, PlayState* play); void EnDivingGame_Destroy(Actor* thisx, PlayState* play);

View file

@ -7,7 +7,7 @@
#include "z_en_dns.h" #include "z_en_dns.h"
#include "terminal.h" #include "terminal.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL)
void EnDns_Init(Actor* thisx, PlayState* play); void EnDns_Init(Actor* thisx, PlayState* play);
void EnDns_Destroy(Actor* thisx, PlayState* play); void EnDns_Destroy(Actor* thisx, PlayState* play);
@ -435,7 +435,7 @@ void EnDns_SetupBurrow(EnDns* this, PlayState* play) {
this->dnsItemEntry->payment(this); this->dnsItemEntry->payment(this);
this->dropCollectible = true; this->dropCollectible = true;
this->isColliderEnabled = false; this->isColliderEnabled = false;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
EnDns_ChangeAnim(this, DNS_ANIM_BURROW); EnDns_ChangeAnim(this, DNS_ANIM_BURROW);
this->actionFunc = EnDns_Burrow; this->actionFunc = EnDns_Burrow;
} }
@ -443,7 +443,7 @@ void EnDns_SetupBurrow(EnDns* this, PlayState* play) {
this->dnsItemEntry->payment(this); this->dnsItemEntry->payment(this);
this->dropCollectible = true; this->dropCollectible = true;
this->isColliderEnabled = false; this->isColliderEnabled = false;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
EnDns_ChangeAnim(this, DNS_ANIM_BURROW); EnDns_ChangeAnim(this, DNS_ANIM_BURROW);
this->actionFunc = EnDns_Burrow; this->actionFunc = EnDns_Burrow;
} }
@ -452,7 +452,7 @@ void EnDns_SetupBurrow(EnDns* this, PlayState* play) {
void EnDns_SetupNoSaleBurrow(EnDns* this, PlayState* play) { void EnDns_SetupNoSaleBurrow(EnDns* this, PlayState* play) {
if ((Message_GetState(&play->msgCtx) == TEXT_STATE_DONE) && Message_ShouldAdvance(play)) { if ((Message_GetState(&play->msgCtx) == TEXT_STATE_DONE) && Message_ShouldAdvance(play)) {
this->isColliderEnabled = false; this->isColliderEnabled = false;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
EnDns_ChangeAnim(this, DNS_ANIM_BURROW); EnDns_ChangeAnim(this, DNS_ANIM_BURROW);
this->actionFunc = EnDns_Burrow; this->actionFunc = EnDns_Burrow;
} }

View file

@ -98,7 +98,7 @@ void EnDntDemo_Init(Actor* thisx, PlayState* play2) {
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ じじじじじじじじじじい ☆☆☆☆☆ %x\n" VT_RST, this->leader); PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ じじじじじじじじじじい ☆☆☆☆☆ %x\n" VT_RST, this->leader);
} }
this->subCamId = SUB_CAM_ID_DONE; this->subCamId = SUB_CAM_ID_DONE;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actionFunc = EnDntDemo_Judge; this->actionFunc = EnDntDemo_Judge;
} }

View file

@ -10,7 +10,7 @@
#include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h" #include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h"
#include "terminal.h" #include "terminal.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_4)
void EnDntJiji_Init(Actor* thisx, PlayState* play); void EnDntJiji_Init(Actor* thisx, PlayState* play);
void EnDntJiji_Destroy(Actor* thisx, PlayState* play); void EnDntJiji_Destroy(Actor* thisx, PlayState* play);
@ -82,7 +82,7 @@ void EnDntJiji_Init(Actor* thisx, PlayState* play) {
PRINTF("\n\n"); PRINTF("\n\n");
// "Deku Scrub mask show elder" // "Deku Scrub mask show elder"
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ デグナッツお面品評会長老 ☆☆☆☆☆ %x\n" VT_RST, this->stage); PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ デグナッツお面品評会長老 ☆☆☆☆☆ %x\n" VT_RST, this->stage);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.colChkInfo.mass = 0xFF; this->actor.colChkInfo.mass = 0xFF;
this->actor.attentionRangeType = ATTENTION_RANGE_6; this->actor.attentionRangeType = ATTENTION_RANGE_6;
this->actionFunc = EnDntJiji_SetFlower; this->actionFunc = EnDntJiji_SetFlower;
@ -221,7 +221,7 @@ void EnDntJiji_SetupCower(EnDntJiji* this, PlayState* play) {
} else { } else {
this->getItemId = GI_DEKU_NUT_UPGRADE_40; this->getItemId = GI_DEKU_NUT_UPGRADE_40;
} }
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.textId = 0x10DB; this->actor.textId = 0x10DB;
this->unused = 5; this->unused = 5;
this->actionFunc = EnDntJiji_Cower; this->actionFunc = EnDntJiji_Cower;
@ -302,7 +302,7 @@ void EnDntJiji_GivePrize(EnDntJiji* this, PlayState* play) {
this->stage->leaderSignal = DNT_SIGNAL_RETURN; this->stage->leaderSignal = DNT_SIGNAL_RETURN;
} }
} }
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
if (!this->unburrow) { if (!this->unburrow) {
this->actionFunc = EnDntJiji_SetupHide; this->actionFunc = EnDntJiji_SetupHide;
} else { } else {

View file

@ -122,7 +122,7 @@ void EnDntNomal_Init(Actor* thisx, PlayState* play) {
if (this->type < ENDNTNOMAL_TARGET) { if (this->type < ENDNTNOMAL_TARGET) {
this->type = ENDNTNOMAL_TARGET; this->type = ENDNTNOMAL_TARGET;
} }
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.colChkInfo.mass = 0xFF; this->actor.colChkInfo.mass = 0xFF;
this->objectId = -1; this->objectId = -1;
if (this->type == ENDNTNOMAL_TARGET) { if (this->type == ENDNTNOMAL_TARGET) {

View file

@ -8,7 +8,7 @@
#include "overlays/actors/ovl_En_Bom/z_en_bom.h" #include "overlays/actors/ovl_En_Bom/z_en_bom.h"
#include "assets/objects/object_dodojr/object_dodojr.h" #include "assets/objects/object_dodojr/object_dodojr.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE)
void EnDodojr_Init(Actor* thisx, PlayState* play); void EnDodojr_Init(Actor* thisx, PlayState* play);
void EnDodojr_Destroy(Actor* thisx, PlayState* play); void EnDodojr_Destroy(Actor* thisx, PlayState* play);
@ -76,7 +76,7 @@ void EnDodojr_Init(Actor* thisx, PlayState* play) {
CollisionCheck_SetInfo2(&this->actor.colChkInfo, DamageTable_Get(4), &sColChkInit); CollisionCheck_SetInfo2(&this->actor.colChkInfo, DamageTable_Get(4), &sColChkInit);
this->actor.naviEnemyId = NAVI_ENEMY_BABY_DODONGO; this->actor.naviEnemyId = NAVI_ENEMY_BABY_DODONGO;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Actor_SetScale(&this->actor, 0.02f); Actor_SetScale(&this->actor, 0.02f);
@ -203,7 +203,7 @@ void EnDodojr_SetupJumpAttackBounce(EnDodojr* this) {
void EnDodojr_SetupDespawn(EnDodojr* this) { void EnDodojr_SetupDespawn(EnDodojr* this) {
this->actor.shape.shadowDraw = NULL; this->actor.shape.shadowDraw = NULL;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.home.pos = this->actor.world.pos; this->actor.home.pos = this->actor.world.pos;
this->actor.speed = 0.0f; this->actor.speed = 0.0f;
this->actor.gravity = -0.8f; this->actor.gravity = -0.8f;
@ -315,7 +315,7 @@ s32 EnDodojr_IsPlayerWithinAttackRange(EnDodojr* this) {
void EnDodojr_SetupStandardDeathBounce(EnDodojr* this) { void EnDodojr_SetupStandardDeathBounce(EnDodojr* this) {
Actor_PlaySfx(&this->actor, NA_SE_EN_DODO_M_DEAD); Actor_PlaySfx(&this->actor, NA_SE_EN_DODO_M_DEAD);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
EnDodojr_SetupFlipBounce(this); EnDodojr_SetupFlipBounce(this);
this->actionFunc = EnDodojr_StandardDeathBounce; this->actionFunc = EnDodojr_StandardDeathBounce;
} }
@ -400,7 +400,7 @@ void EnDodojr_WaitUnderground(EnDodojr* this, PlayState* play) {
-10.0f); -10.0f);
Actor_PlaySfx(&this->actor, NA_SE_EN_DODO_M_UP); Actor_PlaySfx(&this->actor, NA_SE_EN_DODO_M_UP);
this->actor.world.pos.y -= 60.0f; this->actor.world.pos.y -= 60.0f;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.world.rot.x -= 0x4000; this->actor.world.rot.x -= 0x4000;
this->actor.shape.rot.x = this->actor.world.rot.x; this->actor.shape.rot.x = this->actor.world.rot.x;
this->dustPos = this->actor.world.pos; this->dustPos = this->actor.world.pos;
@ -477,7 +477,7 @@ void EnDodojr_EatBomb(EnDodojr* this, PlayState* play) {
void EnDodojr_SwallowBomb(EnDodojr* this, PlayState* play) { void EnDodojr_SwallowBomb(EnDodojr* this, PlayState* play) {
if (DECR(this->timer) == 0) { if (DECR(this->timer) == 0) {
EnDodojr_DoSwallowedBombEffects(this); EnDodojr_DoSwallowedBombEffects(this);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
EnDodojr_SetupFlipBounce(this); EnDodojr_SetupFlipBounce(this);
this->actionFunc = EnDodojr_SwallowedBombDeathBounce; this->actionFunc = EnDodojr_SwallowedBombDeathBounce;
} }

View file

@ -3,7 +3,7 @@
#include "overlays/actors/ovl_En_Bombf/z_en_bombf.h" #include "overlays/actors/ovl_En_Bombf/z_en_bombf.h"
#include "assets/objects/object_dodongo/object_dodongo.h" #include "assets/objects/object_dodongo/object_dodongo.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4)
typedef enum EnDodongoActionState { typedef enum EnDodongoActionState {
DODONGO_SWEEP_TAIL, DODONGO_SWEEP_TAIL,
@ -563,12 +563,12 @@ void EnDodongo_Walk(EnDodongo* this, PlayState* play) {
if (Math_Vec3f_DistXZ(&this->actor.home.pos, &player->actor.world.pos) < 400.0f) { if (Math_Vec3f_DistXZ(&this->actor.home.pos, &player->actor.world.pos) < 400.0f) {
Math_SmoothStepToS(&this->actor.world.rot.y, this->actor.yawTowardsPlayer, 1, 0x1F4, 0); Math_SmoothStepToS(&this->actor.world.rot.y, this->actor.yawTowardsPlayer, 1, 0x1F4, 0);
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
if ((this->actor.xzDistToPlayer < 100.0f) && (yawDiff < 0x1388) && (this->actor.yDistToPlayer < 60.0f)) { if ((this->actor.xzDistToPlayer < 100.0f) && (yawDiff < 0x1388) && (this->actor.yDistToPlayer < 60.0f)) {
EnDodongo_SetupBreatheFire(this); EnDodongo_SetupBreatheFire(this);
} }
} else { } else {
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
if ((Math_Vec3f_DistXZ(&this->actor.world.pos, &this->actor.home.pos) > 150.0f) || (this->retreatTimer != 0)) { if ((Math_Vec3f_DistXZ(&this->actor.world.pos, &this->actor.home.pos) > 150.0f) || (this->retreatTimer != 0)) {
s16 yawToHome = Math_Vec3f_Yaw(&this->actor.world.pos, &this->actor.home.pos); s16 yawToHome = Math_Vec3f_Yaw(&this->actor.world.pos, &this->actor.home.pos);
@ -663,7 +663,7 @@ void EnDodongo_SetupDeath(EnDodongo* this, PlayState* play) {
this->timer = 0; this->timer = 0;
Actor_PlaySfx(&this->actor, NA_SE_EN_DODO_J_DEAD); Actor_PlaySfx(&this->actor, NA_SE_EN_DODO_J_DEAD);
this->actionState = DODONGO_DEATH; this->actionState = DODONGO_DEATH;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.speed = 0.0f; this->actor.speed = 0.0f;
EnDodongo_SetupAction(this, EnDodongo_Death); EnDodongo_SetupAction(this, EnDodongo_Death);
} }

View file

@ -206,7 +206,7 @@ void EnDoor_SetupType(EnDoor* this, PlayState* play) {
doorType = DOOR_SCENEEXIT; doorType = DOOR_SCENEEXIT;
} else { } else {
this->actionFunc = EnDoor_WaitForCheck; this->actionFunc = EnDoor_WaitForCheck;
this->actor.flags |= ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_27; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_LOCK_ON_DISABLED;
} }
} }
// Replace the door type it was loaded with by the new type // Replace the door type it was loaded with by the new type

View file

@ -7,7 +7,7 @@
#include "z_en_ds.h" #include "z_en_ds.h"
#include "assets/objects/object_ds/object_ds.h" #include "assets/objects/object_ds/object_ds.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL)
void EnDs_Init(Actor* thisx, PlayState* play); void EnDs_Init(Actor* thisx, PlayState* play);
void EnDs_Destroy(Actor* thisx, PlayState* play); void EnDs_Destroy(Actor* thisx, PlayState* play);
@ -43,7 +43,7 @@ void EnDs_Init(Actor* thisx, PlayState* play) {
this->actionFunc = EnDs_Wait; this->actionFunc = EnDs_Wait;
this->actor.attentionRangeType = ATTENTION_RANGE_1; this->actor.attentionRangeType = ATTENTION_RANGE_1;
this->unk_1E8 = 0; this->unk_1E8 = 0;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->unk_1E4 = 0.0f; this->unk_1E4 = 0.0f;
} }

View file

@ -2,7 +2,7 @@
#include "assets/objects/object_du/object_du.h" #include "assets/objects/object_du/object_du.h"
#include "assets/scenes/overworld/spot18/spot18_scene.h" #include "assets/scenes/overworld/spot18/spot18_scene.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_25) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_25)
void EnDu_Init(Actor* thisx, PlayState* play); void EnDu_Init(Actor* thisx, PlayState* play);
void EnDu_Destroy(Actor* thisx, PlayState* play); void EnDu_Destroy(Actor* thisx, PlayState* play);

View file

@ -1,7 +1,7 @@
#include "z_en_eiyer.h" #include "z_en_eiyer.h"
#include "assets/objects/object_ei/object_ei.h" #include "assets/objects/object_ei/object_ei.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE)
void EnEiyer_Init(Actor* thisx, PlayState* play); void EnEiyer_Init(Actor* thisx, PlayState* play);
void EnEiyer_Destroy(Actor* thisx, PlayState* play); void EnEiyer_Destroy(Actor* thisx, PlayState* play);
@ -200,7 +200,7 @@ void EnEiyer_SetupAppearFromGround(EnEiyer* this) {
this->collider.base.atFlags &= ~AT_ON; this->collider.base.atFlags &= ~AT_ON;
this->collider.base.acFlags &= ~AC_ON; this->collider.base.acFlags &= ~AC_ON;
this->actor.flags &= ~(ACTOR_FLAG_0 | ACTOR_FLAG_IGNORE_QUAKE); this->actor.flags &= ~(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_IGNORE_QUAKE);
this->actor.shape.shadowScale = 0.0f; this->actor.shape.shadowScale = 0.0f;
this->actor.shape.yOffset = 0.0f; this->actor.shape.yOffset = 0.0f;
this->actionFunc = EnEiyer_AppearFromGround; this->actionFunc = EnEiyer_AppearFromGround;
@ -216,11 +216,11 @@ void EnEiyer_SetupUnderground(EnEiyer* this) {
this->collider.base.acFlags |= AC_ON; this->collider.base.acFlags |= AC_ON;
this->actor.flags &= ~ACTOR_FLAG_4; this->actor.flags &= ~ACTOR_FLAG_4;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
} }
void EnEiyer_SetupInactive(EnEiyer* this) { void EnEiyer_SetupInactive(EnEiyer* this) {
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.world.rot.y = this->actor.shape.rot.y; this->actor.world.rot.y = this->actor.shape.rot.y;
this->actionFunc = EnEiyer_Inactive; this->actionFunc = EnEiyer_Inactive;
} }
@ -608,7 +608,7 @@ void EnEiyer_UpdateDamage(EnEiyer* this, PlayState* play) {
if (Actor_ApplyDamage(&this->actor) == 0) { if (Actor_ApplyDamage(&this->actor) == 0) {
Enemy_StartFinishingBlow(play, &this->actor); Enemy_StartFinishingBlow(play, &this->actor);
Actor_PlaySfx(&this->actor, NA_SE_EN_EIER_DEAD); Actor_PlaySfx(&this->actor, NA_SE_EN_EIER_DEAD);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
// If underground, one hit kill // If underground, one hit kill
@ -672,7 +672,7 @@ void EnEiyer_Update(Actor* thisx, PlayState* play) {
} }
} }
if (this->actor.flags & ACTOR_FLAG_0) { if (this->actor.flags & ACTOR_FLAG_ATTENTION_ENABLED) {
this->actor.focus.pos.x = this->actor.world.pos.x + Math_SinS(this->actor.shape.rot.y) * 12.5f; this->actor.focus.pos.x = this->actor.world.pos.x + Math_SinS(this->actor.shape.rot.y) * 12.5f;
this->actor.focus.pos.z = this->actor.world.pos.z + Math_CosS(this->actor.shape.rot.y) * 12.5f; this->actor.focus.pos.z = this->actor.world.pos.z + Math_CosS(this->actor.shape.rot.y) * 12.5f;
this->actor.focus.pos.y = this->actor.world.pos.y; this->actor.focus.pos.y = this->actor.world.pos.y;

View file

@ -2,7 +2,7 @@
#include "terminal.h" #include "terminal.h"
#include "overlays/actors/ovl_En_Tite/z_en_tite.h" #include "overlays/actors/ovl_En_Tite/z_en_tite.h"
#define FLAGS (ACTOR_FLAG_4 | ACTOR_FLAG_27) #define FLAGS (ACTOR_FLAG_4 | ACTOR_FLAG_LOCK_ON_DISABLED)
void EnEncount1_Init(Actor* thisx, PlayState* play); void EnEncount1_Init(Actor* thisx, PlayState* play);
void EnEncount1_Update(Actor* thisx, PlayState* play); void EnEncount1_Update(Actor* thisx, PlayState* play);
@ -66,7 +66,7 @@ void EnEncount1_Init(Actor* thisx, PlayState* play) {
this->spawnRange); this->spawnRange);
PRINTF("\n\n"); PRINTF("\n\n");
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
switch (this->spawnType) { switch (this->spawnType) {
case SPAWNER_LEEVER: case SPAWNER_LEEVER:
this->timer = 30; this->timer = 30;

View file

@ -51,7 +51,7 @@ void EnExItem_Init(Actor* thisx, PlayState* play) {
s32 pad; s32 pad;
EnExItem* this = (EnExItem*)thisx; EnExItem* this = (EnExItem*)thisx;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->type = PARAMS_GET_U(this->actor.params, 0, 8); this->type = PARAMS_GET_U(this->actor.params, 0, 8);
this->unusedParam = PARAMS_GET_U(this->actor.params, 8, 8); this->unusedParam = PARAMS_GET_U(this->actor.params, 8, 8);
PRINTF("\n\n"); PRINTF("\n\n");

View file

@ -105,7 +105,7 @@ void EnExRuppy_Init(Actor* thisx, PlayState* play) {
this->unk_15A = this->actor.world.rot.z; this->unk_15A = this->actor.world.rot.z;
this->actor.world.rot.z = 0; this->actor.world.rot.z = 0;
this->timer = 30; this->timer = 30;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actionFunc = EnExRuppy_DropIntoWater; this->actionFunc = EnExRuppy_DropIntoWater;
break; break;
@ -123,7 +123,7 @@ void EnExRuppy_Init(Actor* thisx, PlayState* play) {
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ わーなーコイン ☆☆☆☆☆ \n" VT_RST); PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ わーなーコイン ☆☆☆☆☆ \n" VT_RST);
this->actor.shape.shadowScale = 6.0f; this->actor.shape.shadowScale = 6.0f;
this->actor.shape.yOffset = 700.0f; this->actor.shape.yOffset = 700.0f;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actionFunc = EnExRuppy_WaitToBlowUp; this->actionFunc = EnExRuppy_WaitToBlowUp;
break; break;
@ -145,13 +145,13 @@ void EnExRuppy_Init(Actor* thisx, PlayState* play) {
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ ノーマルルピー ☆☆☆☆☆ \n" VT_RST); PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ ノーマルルピー ☆☆☆☆☆ \n" VT_RST);
this->actor.shape.shadowScale = 6.0f; this->actor.shape.shadowScale = 6.0f;
this->actor.shape.yOffset = 700.0f; this->actor.shape.yOffset = 700.0f;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actionFunc = EnExRuppy_WaitAsCollectible; this->actionFunc = EnExRuppy_WaitAsCollectible;
break; break;
case 4: // Progress markers in the shooting gallery case 4: // Progress markers in the shooting gallery
this->actor.gravity = -3.0f; this->actor.gravity = -3.0f;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Actor_SetScale(&this->actor, 0.01f); Actor_SetScale(&this->actor, 0.01f);
this->actor.shape.shadowScale = 6.0f; this->actor.shape.shadowScale = 6.0f;
this->actor.shape.yOffset = -700.0f; this->actor.shape.yOffset = -700.0f;

View file

@ -8,7 +8,7 @@
#include "assets/objects/gameplay_keep/gameplay_keep.h" #include "assets/objects/gameplay_keep/gameplay_keep.h"
#include "assets/objects/object_fw/object_fw.h" #include "assets/objects/object_fw/object_fw.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_9) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_9)
void EnFd_Init(Actor* thisx, PlayState* play); void EnFd_Init(Actor* thisx, PlayState* play);
void EnFd_Destroy(Actor* thisx, PlayState* play); void EnFd_Destroy(Actor* thisx, PlayState* play);
@ -288,7 +288,7 @@ s32 EnFd_ColliderCheck(EnFd* this, PlayState* play) {
return false; return false;
} }
this->invincibilityTimer = 30; this->invincibilityTimer = 30;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Actor_PlaySfx(&this->actor, NA_SE_EN_FLAME_DAMAGE); Actor_PlaySfx(&this->actor, NA_SE_EN_FLAME_DAMAGE);
Enemy_StartFinishingBlow(play, &this->actor); Enemy_StartFinishingBlow(play, &this->actor);
return true; return true;
@ -452,7 +452,7 @@ void EnFd_Init(Actor* thisx, PlayState* play) {
Collider_InitJntSph(play, &this->collider); Collider_InitJntSph(play, &this->collider);
Collider_SetJntSph(play, &this->collider, &this->actor, &sJntSphInit, this->colSphs); Collider_SetJntSph(play, &this->collider, &this->actor, &sJntSphInit, this->colSphs);
CollisionCheck_SetInfo2(&this->actor.colChkInfo, DamageTable_Get(0xF), &sColChkInit); CollisionCheck_SetInfo2(&this->actor.colChkInfo, DamageTable_Get(0xF), &sColChkInit);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.flags |= ACTOR_FLAG_24; this->actor.flags |= ACTOR_FLAG_24;
Actor_SetScale(&this->actor, 0.01f); Actor_SetScale(&this->actor, 0.01f);
this->firstUpdateFlag = true; this->firstUpdateFlag = true;
@ -485,7 +485,7 @@ void EnFd_SpinAndGrow(EnFd* this, PlayState* play) {
this->actor.velocity.y = 6.0f; this->actor.velocity.y = 6.0f;
this->actor.scale.y = 0.01f; this->actor.scale.y = 0.01f;
this->actor.world.rot.y ^= 0x8000; this->actor.world.rot.y ^= 0x8000;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.speed = 8.0f; this->actor.speed = 8.0f;
Animation_ChangeByInfo(&this->skelAnime, sAnimationInfo, ENFD_ANIM_1); Animation_ChangeByInfo(&this->skelAnime, sAnimationInfo, ENFD_ANIM_1);
this->actionFunc = EnFd_JumpToGround; this->actionFunc = EnFd_JumpToGround;
@ -663,7 +663,7 @@ void EnFd_Update(Actor* thisx, PlayState* play) {
if (CHECK_FLAG_ALL(this->actor.flags, ACTOR_FLAG_13)) { if (CHECK_FLAG_ALL(this->actor.flags, ACTOR_FLAG_13)) {
// has been hookshoted // has been hookshoted
if (EnFd_SpawnCore(this, play)) { if (EnFd_SpawnCore(this, play)) {
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->invincibilityTimer = 30; this->invincibilityTimer = 30;
Actor_PlaySfx(&this->actor, NA_SE_EN_FLAME_DAMAGE); Actor_PlaySfx(&this->actor, NA_SE_EN_FLAME_DAMAGE);
Enemy_StartFinishingBlow(play, &this->actor); Enemy_StartFinishingBlow(play, &this->actor);

View file

@ -1,7 +1,7 @@
#include "z_en_fd_fire.h" #include "z_en_fd_fire.h"
#include "assets/objects/gameplay_keep/gameplay_keep.h" #include "assets/objects/gameplay_keep/gameplay_keep.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4)
void EnFdFire_Init(Actor* thisx, PlayState* play); void EnFdFire_Init(Actor* thisx, PlayState* play);
void EnFdFire_Destroy(Actor* thisx, PlayState* play); void EnFdFire_Destroy(Actor* thisx, PlayState* play);
@ -128,7 +128,7 @@ void EnFdFire_Init(Actor* thisx, PlayState* play) {
Collider_InitCylinder(play, &this->collider); Collider_InitCylinder(play, &this->collider);
Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit); Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit);
CollisionCheck_SetInfo2(&this->actor.colChkInfo, &sDamageTable, &sColChkInit); CollisionCheck_SetInfo2(&this->actor.colChkInfo, &sDamageTable, &sColChkInit);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.gravity = -0.6f; this->actor.gravity = -0.6f;
this->actor.speed = 5.0f; this->actor.speed = 5.0f;
this->actor.velocity.y = 12.0f; this->actor.velocity.y = 12.0f;

View file

@ -8,7 +8,7 @@
#include "assets/objects/object_firefly/object_firefly.h" #include "assets/objects/object_firefly/object_firefly.h"
#include "overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.h" #include "overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_IGNORE_QUAKE | ACTOR_FLAG_14) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_IGNORE_QUAKE | ACTOR_FLAG_14)
void EnFirefly_Init(Actor* thisx, PlayState* play); void EnFirefly_Init(Actor* thisx, PlayState* play);
void EnFirefly_Destroy(Actor* thisx, PlayState* play); void EnFirefly_Destroy(Actor* thisx, PlayState* play);
@ -625,7 +625,7 @@ void EnFirefly_UpdateDamage(EnFirefly* this, PlayState* play) {
if ((this->actor.colChkInfo.damageEffect != 0) || (this->actor.colChkInfo.damage != 0)) { if ((this->actor.colChkInfo.damageEffect != 0) || (this->actor.colChkInfo.damage != 0)) {
if (Actor_ApplyDamage(&this->actor) == 0) { if (Actor_ApplyDamage(&this->actor) == 0) {
Enemy_StartFinishingBlow(play, &this->actor); Enemy_StartFinishingBlow(play, &this->actor);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
damageEffect = this->actor.colChkInfo.damageEffect; damageEffect = this->actor.colChkInfo.damageEffect;

View file

@ -7,7 +7,7 @@
#include "z_en_floormas.h" #include "z_en_floormas.h"
#include "assets/objects/object_wallmaster/object_wallmaster.h" #include "assets/objects/object_wallmaster/object_wallmaster.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_10) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_10)
#define SPAWN_INVISIBLE 0x8000 #define SPAWN_INVISIBLE 0x8000
#define SPAWN_SMALL 0x10 #define SPAWN_SMALL 0x10
@ -144,7 +144,7 @@ void EnFloormas_Init(Actor* thisx, PlayState* play2) {
if (this->actor.params == SPAWN_SMALL) { if (this->actor.params == SPAWN_SMALL) {
this->actor.draw = NULL; this->actor.draw = NULL;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actionFunc = EnFloormas_SmallWait; this->actionFunc = EnFloormas_SmallWait;
} else { } else {
// spawn first small floormaster // spawn first small floormaster
@ -345,7 +345,7 @@ void EnFloormas_SetupGrabLink(EnFloormas* this, Player* player) {
f32 xzDelta; f32 xzDelta;
Animation_Change(&this->skelAnime, &gWallmasterJumpAnim, 1.0f, 36.0f, 45.0f, ANIMMODE_ONCE, -3.0f); Animation_Change(&this->skelAnime, &gWallmasterJumpAnim, 1.0f, 36.0f, 45.0f, ANIMMODE_ONCE, -3.0f);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.speed = 0.0f; this->actor.speed = 0.0f;
this->actor.velocity.y = 0.0f; this->actor.velocity.y = 0.0f;
EnFloormas_MakeInvulnerable(this); EnFloormas_MakeInvulnerable(this);
@ -384,7 +384,7 @@ void EnFloormas_SetupSmallWait(EnFloormas* this) {
} }
this->actor.draw = NULL; this->actor.draw = NULL;
this->actionFunc = EnFloormas_SmallWait; this->actionFunc = EnFloormas_SmallWait;
this->actor.flags &= ~(ACTOR_FLAG_0 | ACTOR_FLAG_4); this->actor.flags &= ~(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_4);
} }
void EnFloormas_SetupTakeDamage(EnFloormas* this) { void EnFloormas_SetupTakeDamage(EnFloormas* this) {
@ -662,7 +662,7 @@ void EnFloormas_Land(EnFloormas* this, PlayState* play) {
void EnFloormas_Split(EnFloormas* this, PlayState* play) { void EnFloormas_Split(EnFloormas* this, PlayState* play) {
if (this->actor.bgCheckFlags & BGCHECKFLAG_GROUND) { if (this->actor.bgCheckFlags & BGCHECKFLAG_GROUND) {
if (SkelAnime_Update(&this->skelAnime)) { if (SkelAnime_Update(&this->skelAnime)) {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->smallActionTimer = 50; this->smallActionTimer = 50;
EnFloormas_SetupStand(this); EnFloormas_SetupStand(this);
} }
@ -804,7 +804,7 @@ void EnFloormas_GrabLink(EnFloormas* this, PlayState* play) {
this->actor.shape.rot.x = 0; this->actor.shape.rot.x = 0;
this->actor.velocity.y = 6.0f; this->actor.velocity.y = 6.0f;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.speed = -3.0f; this->actor.speed = -3.0f;
EnFloormas_SetupLand(this); EnFloormas_SetupLand(this);
} else { } else {
@ -996,7 +996,7 @@ void EnFloormas_ColliderCheck(EnFloormas* this, PlayState* play) {
Actor_PlaySfx(&this->actor, NA_SE_EN_FALL_DEAD); Actor_PlaySfx(&this->actor, NA_SE_EN_FALL_DEAD);
} }
Enemy_StartFinishingBlow(play, &this->actor); Enemy_StartFinishingBlow(play, &this->actor);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} else if (this->actor.colChkInfo.damage != 0) { } else if (this->actor.colChkInfo.damage != 0) {
Actor_PlaySfx(&this->actor, NA_SE_EN_FALL_DAMAGE); Actor_PlaySfx(&this->actor, NA_SE_EN_FALL_DAMAGE);
} }

View file

@ -3,7 +3,7 @@
#include "terminal.h" #include "terminal.h"
#include "assets/objects/object_fr/object_fr.h" #include "assets/objects/object_fr/object_fr.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_4 | ACTOR_FLAG_25) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_4 | ACTOR_FLAG_25)
void EnFr_Init(Actor* thisx, PlayState* play); void EnFr_Init(Actor* thisx, PlayState* play);
void EnFr_Destroy(Actor* thisx, PlayState* play); void EnFr_Destroy(Actor* thisx, PlayState* play);
@ -236,7 +236,7 @@ void EnFr_Init(Actor* thisx, PlayState* play) {
this->actor.destroy = NULL; this->actor.destroy = NULL;
this->actor.draw = NULL; this->actor.draw = NULL;
this->actor.update = EnFr_UpdateIdle; this->actor.update = EnFr_UpdateIdle;
this->actor.flags &= ~(ACTOR_FLAG_0 | ACTOR_FLAG_4); this->actor.flags &= ~(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_4);
this->actor.flags &= ~0; this->actor.flags &= ~0;
Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_PROP); Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_PROP);
this->actor.textId = 0x40AC; this->actor.textId = 0x40AC;
@ -321,7 +321,7 @@ void EnFr_Update(Actor* thisx, PlayState* play) {
this->posButterflyLight.x = this->posButterfly.x = this->posLogSpot.x; this->posButterflyLight.x = this->posButterfly.x = this->posLogSpot.x;
this->posButterflyLight.y = this->posButterfly.y = this->posLogSpot.y + 50.0f; this->posButterflyLight.y = this->posButterfly.y = this->posLogSpot.y + 50.0f;
this->posButterflyLight.z = this->posButterfly.z = this->posLogSpot.z; this->posButterflyLight.z = this->posButterfly.z = this->posLogSpot.z;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
} }

View file

@ -8,7 +8,7 @@
#include "assets/objects/object_fu/object_fu.h" #include "assets/objects/object_fu/object_fu.h"
#include "assets/scenes/indoors/hakasitarelay/hakasitarelay_scene.h" #include "assets/scenes/indoors/hakasitarelay/hakasitarelay_scene.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_4 | ACTOR_FLAG_25) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_4 | ACTOR_FLAG_25)
#define FU_RESET_LOOK_ANGLE (1 << 0) #define FU_RESET_LOOK_ANGLE (1 << 0)
#define FU_WAIT (1 << 1) #define FU_WAIT (1 << 1)

View file

@ -9,7 +9,7 @@
#include "overlays/actors/ovl_En_Bom/z_en_bom.h" #include "overlays/actors/ovl_En_Bom/z_en_bom.h"
#include "assets/objects/gameplay_keep/gameplay_keep.h" #include "assets/objects/gameplay_keep/gameplay_keep.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_9) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_9)
void EnFw_Init(Actor* thisx, PlayState* play); void EnFw_Init(Actor* thisx, PlayState* play);
void EnFw_Destroy(Actor* thisx, PlayState* play); void EnFw_Destroy(Actor* thisx, PlayState* play);

View file

@ -1,7 +1,7 @@
#include "z_en_fz.h" #include "z_en_fz.h"
#include "assets/objects/object_fz/object_fz.h" #include "assets/objects/object_fz/object_fz.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_10) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_10)
void EnFz_Init(Actor* thisx, PlayState* play); void EnFz_Init(Actor* thisx, PlayState* play);
void EnFz_Destroy(Actor* thisx, PlayState* play); void EnFz_Destroy(Actor* thisx, PlayState* play);
@ -173,7 +173,7 @@ void EnFz_Init(Actor* thisx, PlayState* play) {
Actor_SetScale(&this->actor, 0.008f); Actor_SetScale(&this->actor, 0.008f);
this->actor.colChkInfo.mass = MASS_IMMOVABLE; this->actor.colChkInfo.mass = MASS_IMMOVABLE;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->unusedTimer1 = 0; this->unusedTimer1 = 0;
this->unusedCounter = 0; this->unusedCounter = 0;
this->updateBgInfo = true; this->updateBgInfo = true;
@ -389,7 +389,7 @@ void EnFz_SetYawTowardsPlayer(EnFz* this) {
void EnFz_SetupDisappear(EnFz* this) { void EnFz_SetupDisappear(EnFz* this) {
this->state = 2; this->state = 2;
this->isFreezing = false; this->isFreezing = false;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actionFunc = EnFz_Disappear; this->actionFunc = EnFz_Disappear;
} }
@ -447,7 +447,7 @@ void EnFz_SetupAimForMove(EnFz* this) {
this->timer = 40; this->timer = 40;
this->updateBgInfo = true; this->updateBgInfo = true;
this->isFreezing = true; this->isFreezing = true;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->actionFunc = EnFz_AimForMove; this->actionFunc = EnFz_AimForMove;
this->actor.gravity = -1.0f; this->actor.gravity = -1.0f;
} }
@ -554,7 +554,7 @@ void EnFz_SetupDespawn(EnFz* this, PlayState* play) {
this->updateBgInfo = true; this->updateBgInfo = true;
this->isFreezing = false; this->isFreezing = false;
this->isDespawning = true; this->isDespawning = true;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->isActive = false; this->isActive = false;
this->timer = 60; this->timer = 60;
Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_PROP); Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_PROP);
@ -572,7 +572,7 @@ void EnFz_SetupMelt(EnFz* this) {
this->state = 3; this->state = 3;
this->isFreezing = false; this->isFreezing = false;
this->isDespawning = true; this->isDespawning = true;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.speed = 0.0f; this->actor.speed = 0.0f;
this->speedXZ = 0.0f; this->speedXZ = 0.0f;
this->actionFunc = EnFz_Melt; this->actionFunc = EnFz_Melt;
@ -603,7 +603,7 @@ void EnFz_SetupBlowSmokeStationary(EnFz* this) {
this->timer = 40; this->timer = 40;
this->updateBgInfo = true; this->updateBgInfo = true;
this->isFreezing = true; this->isFreezing = true;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->actionFunc = EnFz_BlowSmokeStationary; this->actionFunc = EnFz_BlowSmokeStationary;
this->actor.gravity = -1.0f; this->actor.gravity = -1.0f;
} }

View file

@ -102,7 +102,7 @@ static u64 sForceAlignment = 0;
void EnGanonMant_Init(Actor* thisx, PlayState* play) { void EnGanonMant_Init(Actor* thisx, PlayState* play) {
EnGanonMant* this = (EnGanonMant*)thisx; EnGanonMant* this = (EnGanonMant*)thisx;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
void EnGanonMant_Destroy(Actor* thisx, PlayState* play) { void EnGanonMant_Destroy(Actor* thisx, PlayState* play) {

View file

@ -31,7 +31,7 @@ static u64 sForceAlignment = 0;
#include "assets/overlays/ovl_En_Ganon_Organ/ovl_En_Ganon_Organ.c" #include "assets/overlays/ovl_En_Ganon_Organ/ovl_En_Ganon_Organ.c"
void EnGanonOrgan_Init(Actor* thisx, PlayState* play) { void EnGanonOrgan_Init(Actor* thisx, PlayState* play) {
thisx->flags &= ~ACTOR_FLAG_0; thisx->flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
void EnGanonOrgan_Destroy(Actor* thisx, PlayState* play) { void EnGanonOrgan_Destroy(Actor* thisx, PlayState* play) {

View file

@ -7,7 +7,7 @@
#include "z_en_gb.h" #include "z_en_gb.h"
#include "assets/objects/object_ps/object_ps.h" #include "assets/objects/object_ps/object_ps.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL)
void EnGb_Init(Actor* thisx, PlayState* play); void EnGb_Init(Actor* thisx, PlayState* play);
void EnGb_Destroy(Actor* thisx, PlayState* play); void EnGb_Destroy(Actor* thisx, PlayState* play);

View file

@ -8,7 +8,7 @@
#include "terminal.h" #include "terminal.h"
#include "assets/objects/object_ge1/object_ge1.h" #include "assets/objects/object_ge1/object_ge1.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL)
#define GE1_STATE_TALKING (1 << 0) #define GE1_STATE_TALKING (1 << 0)
#define GE1_STATE_GIVE_QUIVER (1 << 1) #define GE1_STATE_GIVE_QUIVER (1 << 1)

View file

@ -8,7 +8,7 @@
#include "terminal.h" #include "terminal.h"
#include "assets/objects/object_gla/object_gla.h" #include "assets/objects/object_gla/object_gla.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_4)
#define GE2_STATE_ANIMCOMPLETE (1 << 1) #define GE2_STATE_ANIMCOMPLETE (1 << 1)
#define GE2_STATE_KO (1 << 2) #define GE2_STATE_KO (1 << 2)
@ -298,7 +298,7 @@ void EnGe2_KnockedOut(EnGe2* this, PlayState* play) {
s32 effectAngle; s32 effectAngle;
Vec3f effectPos; Vec3f effectPos;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
if (this->stateFlags & GE2_STATE_ANIMCOMPLETE) { if (this->stateFlags & GE2_STATE_ANIMCOMPLETE) {
effectAngle = (play->state.frames) * 0x2800; effectAngle = (play->state.frames) * 0x2800;
effectPos.x = this->actor.focus.pos.x + (Math_CosS(effectAngle) * 5.0f); effectPos.x = this->actor.focus.pos.x + (Math_CosS(effectAngle) * 5.0f);

View file

@ -8,7 +8,7 @@
#include "assets/objects/object_geldb/object_geldb.h" #include "assets/objects/object_geldb/object_geldb.h"
#include "versions.h" #include "versions.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_4)
void EnGe3_Init(Actor* thisx, PlayState* play2); void EnGe3_Init(Actor* thisx, PlayState* play2);
void EnGe3_Destroy(Actor* thisx, PlayState* play); void EnGe3_Destroy(Actor* thisx, PlayState* play);

View file

@ -7,7 +7,7 @@
#include "z_en_geldb.h" #include "z_en_geldb.h"
#include "assets/objects/object_geldb/object_geldb.h" #include "assets/objects/object_geldb/object_geldb.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4)
typedef enum EnGeldBAction { typedef enum EnGeldBAction {
/* 0 */ GELDB_WAIT, /* 0 */ GELDB_WAIT,
@ -355,7 +355,7 @@ void EnGeldB_SetupWait(EnGeldB* this) {
this->action = GELDB_WAIT; this->action = GELDB_WAIT;
this->actor.bgCheckFlags &= ~(BGCHECKFLAG_GROUND | BGCHECKFLAG_GROUND_TOUCH); this->actor.bgCheckFlags &= ~(BGCHECKFLAG_GROUND | BGCHECKFLAG_GROUND_TOUCH);
this->actor.gravity = -2.0f; this->actor.gravity = -2.0f;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
EnGeldB_SetupAction(this, EnGeldB_Wait); EnGeldB_SetupAction(this, EnGeldB_Wait);
} }
@ -372,7 +372,7 @@ void EnGeldB_Wait(EnGeldB* this, PlayState* play) {
Actor_PlaySfx(&this->actor, NA_SE_EN_RIZA_DOWN); Actor_PlaySfx(&this->actor, NA_SE_EN_RIZA_DOWN);
this->skelAnime.playSpeed = 1.0f; this->skelAnime.playSpeed = 1.0f;
this->actor.world.pos.y = this->actor.floorHeight; this->actor.world.pos.y = this->actor.floorHeight;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.focus.pos = this->actor.world.pos; this->actor.focus.pos = this->actor.world.pos;
this->actor.bgCheckFlags &= ~BGCHECKFLAG_GROUND_TOUCH; this->actor.bgCheckFlags &= ~BGCHECKFLAG_GROUND_TOUCH;
this->actor.velocity.y = 0.0f; this->actor.velocity.y = 0.0f;
@ -1328,7 +1328,7 @@ void EnGeldB_SetupDefeated(EnGeldB* this) {
this->invisible = true; this->invisible = true;
} }
this->action = GELDB_DEFEAT; this->action = GELDB_DEFEAT;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Actor_PlaySfx(&this->actor, NA_SE_EN_GERUDOFT_DEAD); Actor_PlaySfx(&this->actor, NA_SE_EN_GERUDOFT_DEAD);
EnGeldB_SetupAction(this, EnGeldB_Defeated); EnGeldB_SetupAction(this, EnGeldB_Defeated);
} }

View file

@ -7,7 +7,7 @@
#include "z_en_girla.h" #include "z_en_girla.h"
#include "terminal.h" #include "terminal.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_4)
void EnGirlA_Init(Actor* thisx, PlayState* play); void EnGirlA_Init(Actor* thisx, PlayState* play);
void EnGirlA_Destroy(Actor* thisx, PlayState* play); void EnGirlA_Destroy(Actor* thisx, PlayState* play);
@ -1058,7 +1058,7 @@ void EnGirlA_WaitForObject(EnGirlA* this, PlayState* play) {
this->hiliteFunc = itemEntry->hiliteFunc; this->hiliteFunc = itemEntry->hiliteFunc;
this->giDrawId = itemEntry->giDrawId; this->giDrawId = itemEntry->giDrawId;
PRINTF("%s(%2d)\n", sShopItemDescriptions[params], params); PRINTF("%s(%2d)\n", sShopItemDescriptions[params], params);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Actor_SetScale(&this->actor, 0.25f); Actor_SetScale(&this->actor, 0.25f);
this->actor.shape.yOffset = 24.0f; this->actor.shape.yOffset = 24.0f;
this->actor.shape.shadowScale = 4.0f; this->actor.shape.shadowScale = 4.0f;

View file

@ -9,7 +9,7 @@
#include "assets/objects/object_gm/object_gm.h" #include "assets/objects/object_gm/object_gm.h"
#include "terminal.h" #include "terminal.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_4)
void EnGm_Init(Actor* thisx, PlayState* play); void EnGm_Init(Actor* thisx, PlayState* play);
void EnGm_Destroy(Actor* thisx, PlayState* play); void EnGm_Destroy(Actor* thisx, PlayState* play);

View file

@ -3,7 +3,7 @@
#include "assets/objects/gameplay_keep/gameplay_keep.h" #include "assets/objects/gameplay_keep/gameplay_keep.h"
#include "assets/objects/object_oF1d_map/object_oF1d_map.h" #include "assets/objects/object_oF1d_map/object_oF1d_map.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_4 | ACTOR_FLAG_5) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_4 | ACTOR_FLAG_5)
void EnGo_Init(Actor* thisx, PlayState* play); void EnGo_Init(Actor* thisx, PlayState* play);
void EnGo_Destroy(Actor* thisx, PlayState* play); void EnGo_Destroy(Actor* thisx, PlayState* play);

View file

@ -5,7 +5,7 @@
#include "quake.h" #include "quake.h"
#include "versions.h" #include "versions.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_4 | ACTOR_FLAG_5) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_4 | ACTOR_FLAG_5)
/* /*
FLAGS FLAGS
@ -961,10 +961,10 @@ s32 EnGo2_IsWakingUp(EnGo2* this) {
if (PARAMS_GET_S(this->actor.params, 0, 5) == GORON_DMT_BIGGORON) { if (PARAMS_GET_S(this->actor.params, 0, 5) == GORON_DMT_BIGGORON) {
if (!(this->collider.base.ocFlags2 & OC2_HIT_PLAYER)) { if (!(this->collider.base.ocFlags2 & OC2_HIT_PLAYER)) {
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
return false; return false;
} else { } else {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
return true; return true;
} }
} }
@ -1296,7 +1296,7 @@ void EnGo2_GetDustData(EnGo2* this, s32 index2) {
void EnGo2_RollingAnimation(EnGo2* this, PlayState* play) { void EnGo2_RollingAnimation(EnGo2* this, PlayState* play) {
if (PARAMS_GET_S(this->actor.params, 0, 5) == GORON_DMT_BIGGORON) { if (PARAMS_GET_S(this->actor.params, 0, 5) == GORON_DMT_BIGGORON) {
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Animation_ChangeByInfo(&this->skelAnime, sAnimationInfo, ENGO2_ANIM_10); Animation_ChangeByInfo(&this->skelAnime, sAnimationInfo, ENGO2_ANIM_10);
this->skelAnime.playSpeed = -0.5f; this->skelAnime.playSpeed = -0.5f;
} else { } else {
@ -1601,7 +1601,7 @@ void EnGo2_Init(Actor* thisx, PlayState* play) {
break; break;
case GORON_DMT_BIGGORON: case GORON_DMT_BIGGORON:
this->actor.shape.shadowDraw = NULL; this->actor.shape.shadowDraw = NULL;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
if ((INV_CONTENT(ITEM_TRADE_ADULT) >= ITEM_BROKEN_GORONS_SWORD) && if ((INV_CONTENT(ITEM_TRADE_ADULT) >= ITEM_BROKEN_GORONS_SWORD) &&
(INV_CONTENT(ITEM_TRADE_ADULT) <= ITEM_EYE_DROPS)) { (INV_CONTENT(ITEM_TRADE_ADULT) <= ITEM_EYE_DROPS)) {
this->eyeMouthTexState = 1; this->eyeMouthTexState = 1;
@ -1680,7 +1680,7 @@ void func_80A46B40(EnGo2* this, PlayState* play) {
} else { } else {
if (Animation_OnFrame(&this->skelAnime, this->skelAnime.endFrame)) { if (Animation_OnFrame(&this->skelAnime, this->skelAnime.endFrame)) {
if (PARAMS_GET_S(this->actor.params, 0, 5) == GORON_DMT_BIGGORON) { if (PARAMS_GET_S(this->actor.params, 0, 5) == GORON_DMT_BIGGORON) {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
} }
func_80A454CC(this); func_80A454CC(this);
this->unk_211 = true; this->unk_211 = true;
@ -1828,7 +1828,7 @@ void EnGo2_BiggoronEyedrops(EnGo2* this, PlayState* play) {
switch (this->goronState) { switch (this->goronState) {
case 0: case 0:
Animation_ChangeByInfo(&this->skelAnime, sAnimationInfo, ENGO2_ANIM_5); Animation_ChangeByInfo(&this->skelAnime, sAnimationInfo, ENGO2_ANIM_5);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.shape.rot.y += 0x5B0; this->actor.shape.rot.y += 0x5B0;
this->trackingMode = NPC_TRACKING_NONE; this->trackingMode = NPC_TRACKING_NONE;
this->animTimer = this->skelAnime.endFrame + 60.0f + 60.0f; // eyeDrops animation timer this->animTimer = this->skelAnime.endFrame + 60.0f + 60.0f; // eyeDrops animation timer
@ -1859,7 +1859,7 @@ void EnGo2_BiggoronEyedrops(EnGo2* this, PlayState* play) {
} }
if (Message_GetState(&play->msgCtx) == TEXT_STATE_CLOSING) { if (Message_GetState(&play->msgCtx) == TEXT_STATE_CLOSING) {
Animation_ChangeByInfo(&this->skelAnime, sAnimationInfo, ENGO2_ANIM_1); Animation_ChangeByInfo(&this->skelAnime, sAnimationInfo, ENGO2_ANIM_1);
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->trackingMode = NPC_TRACKING_HEAD_AND_TORSO; this->trackingMode = NPC_TRACKING_HEAD_AND_TORSO;
this->skelAnime.playSpeed = 0.0f; this->skelAnime.playSpeed = 0.0f;
this->skelAnime.curFrame = this->skelAnime.endFrame; this->skelAnime.curFrame = this->skelAnime.endFrame;

View file

@ -4,7 +4,7 @@
#include "overlays/actors/ovl_Boss_Goma/z_boss_goma.h" #include "overlays/actors/ovl_Boss_Goma/z_boss_goma.h"
#include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h" #include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4 | ACTOR_FLAG_5) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_5)
void EnGoma_Init(Actor* thisx, PlayState* play); void EnGoma_Init(Actor* thisx, PlayState* play);
void EnGoma_Destroy(Actor* thisx, PlayState* play); void EnGoma_Destroy(Actor* thisx, PlayState* play);
@ -119,10 +119,10 @@ void EnGoma_Init(Actor* thisx, PlayState* play) {
this->gomaType = ENGOMA_BOSSLIMB; this->gomaType = ENGOMA_BOSSLIMB;
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 0.0f); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 0.0f);
this->actionTimer = this->actor.params + 150; this->actionTimer = this->actor.params + 150;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} else if (params >= 10) { // Debris when hatching } else if (params >= 10) { // Debris when hatching
this->actor.gravity = -1.3f; this->actor.gravity = -1.3f;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
this->actionTimer = 50; this->actionTimer = 50;
this->gomaType = ENGOMA_HATCH_DEBRIS; this->gomaType = ENGOMA_HATCH_DEBRIS;
this->eggScale = 1.0f; this->eggScale = 1.0f;
@ -366,7 +366,7 @@ void EnGoma_SetupDie(EnGoma* this) {
} }
this->invincibilityTimer = 100; this->invincibilityTimer = 100;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
void EnGoma_Die(EnGoma* this, PlayState* play) { void EnGoma_Die(EnGoma* this, PlayState* play) {

View file

@ -9,7 +9,7 @@
#include "overlays/actors/ovl_En_Elf/z_en_elf.h" #include "overlays/actors/ovl_En_Elf/z_en_elf.h"
#include "assets/objects/gameplay_keep/gameplay_keep.h" #include "assets/objects/gameplay_keep/gameplay_keep.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_25) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_25)
void EnGs_Init(Actor* thisx, PlayState* play); void EnGs_Init(Actor* thisx, PlayState* play);
void EnGs_Destroy(Actor* thisx, PlayState* play); void EnGs_Destroy(Actor* thisx, PlayState* play);

View file

@ -9,7 +9,7 @@
#include "assets/objects/object_boj/object_boj.h" #include "assets/objects/object_boj/object_boj.h"
#include "terminal.h" #include "terminal.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_4)
void EnGuest_Init(Actor* thisx, PlayState* play); void EnGuest_Init(Actor* thisx, PlayState* play);
void EnGuest_Destroy(Actor* thisx, PlayState* play); void EnGuest_Destroy(Actor* thisx, PlayState* play);

View file

@ -12,7 +12,7 @@
#include "overlays/actors/ovl_En_Bom/z_en_bom.h" #include "overlays/actors/ovl_En_Bom/z_en_bom.h"
#include "overlays/actors/ovl_Bg_Spot15_Saku/z_bg_spot15_saku.h" #include "overlays/actors/ovl_Bg_Spot15_Saku/z_bg_spot15_saku.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL)
void EnHeishi2_Init(Actor* thisx, PlayState* play); void EnHeishi2_Init(Actor* thisx, PlayState* play);
void EnHeishi2_Destroy(Actor* thisx, PlayState* play); void EnHeishi2_Destroy(Actor* thisx, PlayState* play);
@ -92,7 +92,7 @@ void EnHeishi2_Init(Actor* thisx, PlayState* play) {
if ((this->type == 6) || (this->type == 9)) { if ((this->type == 6) || (this->type == 9)) {
this->actor.draw = EnHeishi2_DrawKingGuard; this->actor.draw = EnHeishi2_DrawKingGuard;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_PROP); Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_PROP);
if (this->type == 6) { if (this->type == 6) {
this->actionFunc = EnHeishi2_DoNothing1; this->actionFunc = EnHeishi2_DoNothing1;
@ -112,7 +112,7 @@ void EnHeishi2_Init(Actor* thisx, PlayState* play) {
this->actor.shape.rot.y = this->actor.world.rot.y; this->actor.shape.rot.y = this->actor.world.rot.y;
Collider_DestroyCylinder(play, &this->collider); Collider_DestroyCylinder(play, &this->collider);
Player_SetCsActionWithHaltedActors(play, NULL, PLAYER_CSACTION_8); Player_SetCsActionWithHaltedActors(play, NULL, PLAYER_CSACTION_8);
this->actor.flags |= ACTOR_FLAG_0 | ACTOR_FLAG_4; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_4;
this->actionFunc = func_80A544AC; this->actionFunc = func_80A544AC;
} }
} else { } else {
@ -143,7 +143,7 @@ void EnHeishi2_Init(Actor* thisx, PlayState* play) {
// "Peep hole soldier!" // "Peep hole soldier!"
PRINTF(VT_FGCOL(GREEN) " ☆☆☆☆☆ 覗き穴奥兵士ふぃ〜 ☆☆☆☆☆ \n" VT_RST); PRINTF(VT_FGCOL(GREEN) " ☆☆☆☆☆ 覗き穴奥兵士ふぃ〜 ☆☆☆☆☆ \n" VT_RST);
Collider_DestroyCylinder(play, collider); Collider_DestroyCylinder(play, collider);
this->actor.flags &= ~(ACTOR_FLAG_0 | ACTOR_FLAG_3); this->actor.flags &= ~(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL);
this->actionFunc = EnHeishi_DoNothing2; this->actionFunc = EnHeishi_DoNothing2;
break; break;
} }

View file

@ -2,7 +2,7 @@
#include "assets/objects/object_sd/object_sd.h" #include "assets/objects/object_sd/object_sd.h"
#include "terminal.h" #include "terminal.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL)
void EnHeishi4_Init(Actor* thisx, PlayState* play); void EnHeishi4_Init(Actor* thisx, PlayState* play);
void EnHeishi4_Destroy(Actor* thisx, PlayState* play); void EnHeishi4_Destroy(Actor* thisx, PlayState* play);

View file

@ -7,7 +7,7 @@
#include "z_en_hintnuts.h" #include "z_en_hintnuts.h"
#include "assets/objects/object_hintnuts/object_hintnuts.h" #include "assets/objects/object_hintnuts/object_hintnuts.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE)
void EnHintnuts_Init(Actor* thisx, PlayState* play); void EnHintnuts_Init(Actor* thisx, PlayState* play);
void EnHintnuts_Destroy(Actor* thisx, PlayState* play); void EnHintnuts_Destroy(Actor* thisx, PlayState* play);
@ -75,7 +75,7 @@ void EnHintnuts_Init(Actor* thisx, PlayState* play) {
Actor_ProcessInitChain(&this->actor, sInitChain); Actor_ProcessInitChain(&this->actor, sInitChain);
if (this->actor.params == 0xA) { if (this->actor.params == 0xA) {
this->actor.flags &= ~(ACTOR_FLAG_0 | ACTOR_FLAG_2); this->actor.flags &= ~(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE);
} else { } else {
ActorShape_Init(&this->actor.shape, 0x0, ActorShadow_DrawCircle, 35.0f); ActorShape_Init(&this->actor.shape, 0x0, ActorShadow_DrawCircle, 35.0f);
SkelAnime_Init(play, &this->skelAnime, &gHintNutsSkel, &gHintNutsStandAnim, this->jointTable, this->morphTable, SkelAnime_Init(play, &this->skelAnime, &gHintNutsSkel, &gHintNutsStandAnim, this->jointTable, this->morphTable,
@ -110,8 +110,8 @@ void EnHintnuts_Destroy(Actor* thisx, PlayState* play) {
void EnHintnuts_HitByScrubProjectile1(EnHintnuts* this, PlayState* play) { void EnHintnuts_HitByScrubProjectile1(EnHintnuts* this, PlayState* play) {
if (this->actor.textId != 0 && this->actor.category == ACTORCAT_ENEMY && if (this->actor.textId != 0 && this->actor.category == ACTORCAT_ENEMY &&
((this->actor.params == 0) || (sPuzzleCounter == 2))) { ((this->actor.params == 0) || (sPuzzleCounter == 2))) {
this->actor.flags &= ~(ACTOR_FLAG_0 | ACTOR_FLAG_2); this->actor.flags &= ~(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE);
this->actor.flags |= ACTOR_FLAG_0 | ACTOR_FLAG_3; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL;
Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_BG); Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_BG);
} }
} }
@ -204,7 +204,7 @@ void EnHintnuts_SetupLeave(EnHintnuts* this, PlayState* play) {
void EnHintnuts_SetupFreeze(EnHintnuts* this) { void EnHintnuts_SetupFreeze(EnHintnuts* this) {
Animation_PlayLoop(&this->skelAnime, &gHintNutsFreezeAnim); Animation_PlayLoop(&this->skelAnime, &gHintNutsFreezeAnim);
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_BLUE, 255, COLORFILTER_BUFFLAG_OPA, 100); Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_BLUE, 255, COLORFILTER_BUFFLAG_OPA, 100);
this->actor.colorFilterTimer = 1; this->actor.colorFilterTimer = 1;
this->animFlagAndTimer = 0; this->animFlagAndTimer = 0;
@ -377,8 +377,8 @@ void EnHintnuts_Run(EnHintnuts* this, PlayState* play) {
fabsf(this->actor.world.pos.y - this->actor.home.pos.y) < 2.0f) { fabsf(this->actor.world.pos.y - this->actor.home.pos.y) < 2.0f) {
this->actor.speed = 0.0f; this->actor.speed = 0.0f;
if (this->actor.category == ACTORCAT_BG) { if (this->actor.category == ACTORCAT_BG) {
this->actor.flags &= ~(ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_16); this->actor.flags &= ~(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_16);
this->actor.flags |= ACTOR_FLAG_0 | ACTOR_FLAG_2; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE;
Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_ENEMY); Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_ENEMY);
} }
EnHintnuts_SetupBurrow(this); EnHintnuts_SetupBurrow(this);
@ -449,7 +449,7 @@ void EnHintnuts_Freeze(EnHintnuts* this, PlayState* play) {
if (this->animFlagAndTimer == 1) { if (this->animFlagAndTimer == 1) {
Actor_Kill(&this->actor); Actor_Kill(&this->actor);
} else { } else {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.flags &= ~ACTOR_FLAG_4; this->actor.flags &= ~ACTOR_FLAG_4;
this->actor.colChkInfo.health = sColChkInfoInit.health; this->actor.colChkInfo.health = sColChkInfoInit.health;
this->actor.colorFilterTimer = 0; this->actor.colorFilterTimer = 0;

View file

@ -8,7 +8,7 @@
#include "terminal.h" #include "terminal.h"
#include "assets/objects/object_hs/object_hs.h" #include "assets/objects/object_hs/object_hs.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL)
void EnHs_Init(Actor* thisx, PlayState* play); void EnHs_Init(Actor* thisx, PlayState* play);
void EnHs_Destroy(Actor* thisx, PlayState* play); void EnHs_Destroy(Actor* thisx, PlayState* play);

View file

@ -8,7 +8,7 @@
#include "terminal.h" #include "terminal.h"
#include "assets/objects/object_hs/object_hs.h" #include "assets/objects/object_hs/object_hs.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL)
void EnHs2_Init(Actor* thisx, PlayState* play); void EnHs2_Init(Actor* thisx, PlayState* play);
void EnHs2_Destroy(Actor* thisx, PlayState* play); void EnHs2_Destroy(Actor* thisx, PlayState* play);

View file

@ -15,7 +15,7 @@
#include "assets/objects/object_cob/object_cob.h" #include "assets/objects/object_cob/object_cob.h"
#include "assets/objects/object_os_anime/object_os_anime.h" #include "assets/objects/object_os_anime/object_os_anime.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_4)
void EnHy_Init(Actor* thisx, PlayState* play); void EnHy_Init(Actor* thisx, PlayState* play);
void EnHy_Destroy(Actor* thisx, PlayState* play); void EnHy_Destroy(Actor* thisx, PlayState* play);

View file

@ -105,7 +105,7 @@ void EnIceHono_InitCapturableFlame(Actor* thisx, PlayState* play) {
Actor_ProcessInitChain(&this->actor, sInitChainCapturableFlame); Actor_ProcessInitChain(&this->actor, sInitChainCapturableFlame);
Actor_SetScale(&this->actor, 0.0074f); Actor_SetScale(&this->actor, 0.0074f);
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
Actor_SetFocus(&this->actor, 10.0f); Actor_SetFocus(&this->actor, 10.0f);
Collider_InitCylinder(play, &this->collider); Collider_InitCylinder(play, &this->collider);

View file

@ -313,7 +313,7 @@ void EnIk_StandUp(EnIk* this, PlayState* play) {
} }
if (SkelAnime_Update(&this->skelAnime)) { if (SkelAnime_Update(&this->skelAnime)) {
this->actor.flags |= ACTOR_FLAG_0 | ACTOR_FLAG_2; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE;
EnIk_SetupWalkOrRun(this); EnIk_SetupWalkOrRun(this);
} }
} }
@ -321,7 +321,7 @@ void EnIk_StandUp(EnIk* this, PlayState* play) {
void EnIk_SetupIdle(EnIk* this) { void EnIk_SetupIdle(EnIk* this) {
f32 endFrame = Animation_GetLastFrame(&object_ik_Anim_00DD50); f32 endFrame = Animation_GetLastFrame(&object_ik_Anim_00DD50);
this->actor.flags |= ACTOR_FLAG_0 | ACTOR_FLAG_2; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE;
this->unk_2F8 = 4; this->unk_2F8 = 4;
this->actor.speed = 0.0f; this->actor.speed = 0.0f;
Animation_Change(&this->skelAnime, &object_ik_Anim_00DD50, 0.0f, 0.0f, endFrame, ANIMMODE_LOOP, 4.0f); Animation_Change(&this->skelAnime, &object_ik_Anim_00DD50, 0.0f, 0.0f, endFrame, ANIMMODE_LOOP, 4.0f);
@ -1522,7 +1522,7 @@ void EnIk_CsInit(EnIk* this, PlayState* play) {
void EnIk_ChangeToEnemy(EnIk* this, PlayState* play) { void EnIk_ChangeToEnemy(EnIk* this, PlayState* play) {
this->actor.update = EnIk_UpdateEnemy; this->actor.update = EnIk_UpdateEnemy;
this->actor.draw = EnIk_DrawEnemy; this->actor.draw = EnIk_DrawEnemy;
this->actor.flags |= ACTOR_FLAG_0 | ACTOR_FLAG_2; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE;
SET_EVENTCHKINF(EVENTCHKINF_3B); SET_EVENTCHKINF(EVENTCHKINF_3B);
Actor_SetScale(&this->actor, 0.012f); Actor_SetScale(&this->actor, 0.012f);
EnIk_SetupIdle(this); EnIk_SetupIdle(this);

View file

@ -2,7 +2,7 @@
#include "overlays/actors/ovl_En_Horse/z_en_horse.h" #include "overlays/actors/ovl_En_Horse/z_en_horse.h"
#include "assets/objects/object_in/object_in.h" #include "assets/objects/object_in/object_in.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_4)
void EnIn_Init(Actor* thisx, PlayState* play); void EnIn_Init(Actor* thisx, PlayState* play);
void EnIn_Destroy(Actor* thisx, PlayState* play); void EnIn_Destroy(Actor* thisx, PlayState* play);
@ -467,7 +467,7 @@ void func_80A79C78(EnIn* this, PlayState* play) {
player->rideActor->freezeTimer = 10; player->rideActor->freezeTimer = 10;
} }
player->actor.freezeTimer = 10; player->actor.freezeTimer = 10;
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
Letterbox_SetSizeTarget(32); Letterbox_SetSizeTarget(32);
Interface_ChangeHudVisibilityMode(HUD_VISIBILITY_NOTHING_ALT); Interface_ChangeHudVisibilityMode(HUD_VISIBILITY_NOTHING_ALT);
} }

View file

@ -7,7 +7,7 @@
#include "z_en_js.h" #include "z_en_js.h"
#include "assets/objects/object_js/object_js.h" #include "assets/objects/object_js/object_js.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL)
void EnJs_Init(Actor* thisx, PlayState* play); void EnJs_Init(Actor* thisx, PlayState* play);
void EnJs_Destroy(Actor* thisx, PlayState* play); void EnJs_Destroy(Actor* thisx, PlayState* play);

View file

@ -7,7 +7,7 @@
#include "z_en_jsjutan.h" #include "z_en_jsjutan.h"
#include "overlays/actors/ovl_En_Bom/z_en_bom.h" #include "overlays/actors/ovl_En_Bom/z_en_bom.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL)
void EnJsjutan_Init(Actor* thisx, PlayState* play); void EnJsjutan_Init(Actor* thisx, PlayState* play);
void EnJsjutan_Destroy(Actor* thisx, PlayState* play); void EnJsjutan_Destroy(Actor* thisx, PlayState* play);
@ -40,7 +40,7 @@ void EnJsjutan_Init(Actor* thisx, PlayState* play) {
s32 pad; s32 pad;
CollisionHeader* header = NULL; CollisionHeader* header = NULL;
this->dyna.actor.flags &= ~ACTOR_FLAG_0; this->dyna.actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
DynaPolyActor_Init(&this->dyna, 0); DynaPolyActor_Init(&this->dyna, 0);
CollisionHeader_GetVirtual(&sCol, &header); CollisionHeader_GetVirtual(&sCol, &header);
this->dyna.bgId = DynaPoly_SetBgActor(play, &play->colCtx.dyna, thisx, header); this->dyna.bgId = DynaPoly_SetBgActor(play, &play->colCtx.dyna, thisx, header);

View file

@ -8,7 +8,7 @@
#include "terminal.h" #include "terminal.h"
#include "assets/objects/object_ka/object_ka.h" #include "assets/objects/object_ka/object_ka.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_25) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_25)
void EnKakasi_Init(Actor* thisx, PlayState* play); void EnKakasi_Init(Actor* thisx, PlayState* play);
void EnKakasi_Destroy(Actor* thisx, PlayState* play); void EnKakasi_Destroy(Actor* thisx, PlayState* play);

View file

@ -8,7 +8,7 @@
#include "terminal.h" #include "terminal.h"
#include "assets/objects/object_ka/object_ka.h" #include "assets/objects/object_ka/object_ka.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_4 | ACTOR_FLAG_5 | ACTOR_FLAG_25 | ACTOR_FLAG_27) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_4 | ACTOR_FLAG_5 | ACTOR_FLAG_25 | ACTOR_FLAG_LOCK_ON_DISABLED)
static ColliderCylinderInit sCylinderInit = { static ColliderCylinderInit sCylinderInit = {
{ {
@ -124,7 +124,7 @@ void func_80A90264(EnKakasi2* this, PlayState* play) {
Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit); Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit);
SkelAnime_InitFlex(play, &this->skelAnime, &object_ka_Skel_0065B0, &object_ka_Anim_000214, NULL, NULL, 0); SkelAnime_InitFlex(play, &this->skelAnime, &object_ka_Skel_0065B0, &object_ka_Anim_000214, NULL, NULL, 0);
OnePointCutscene_Attention(play, &this->actor); OnePointCutscene_Attention(play, &this->actor);
this->actor.flags |= ACTOR_FLAG_0 | ACTOR_FLAG_27; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_LOCK_ON_DISABLED;
Sfx_PlaySfxCentered(NA_SE_SY_CORRECT_CHIME); Sfx_PlaySfxCentered(NA_SE_SY_CORRECT_CHIME);
if (this->switchFlag >= 0) { if (this->switchFlag >= 0) {
@ -151,7 +151,7 @@ void func_80A90264(EnKakasi2* this, PlayState* play) {
OnePointCutscene_Attention(play, &this->actor); OnePointCutscene_Attention(play, &this->actor);
Sfx_PlaySfxCentered(NA_SE_SY_CORRECT_CHIME); Sfx_PlaySfxCentered(NA_SE_SY_CORRECT_CHIME);
this->actor.flags |= ACTOR_FLAG_0 | ACTOR_FLAG_27; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_LOCK_ON_DISABLED;
this->actionFunc = func_80A904D8; this->actionFunc = func_80A904D8;
} }
} }

View file

@ -8,7 +8,7 @@
#include "terminal.h" #include "terminal.h"
#include "assets/objects/object_ka/object_ka.h" #include "assets/objects/object_ka/object_ka.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_25) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_25)
void EnKakasi3_Init(Actor* thisx, PlayState* play); void EnKakasi3_Init(Actor* thisx, PlayState* play);
void EnKakasi3_Destroy(Actor* thisx, PlayState* play); void EnKakasi3_Destroy(Actor* thisx, PlayState* play);

View file

@ -10,7 +10,7 @@
#include "assets/objects/object_kanban/object_kanban.h" #include "assets/objects/object_kanban/object_kanban.h"
#include "terminal.h" #include "terminal.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_3 | ACTOR_FLAG_4) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_NEUTRAL | ACTOR_FLAG_4)
#define PART_UPPER_LEFT (1 << 0) #define PART_UPPER_LEFT (1 << 0)
#define PART_LEFT_UPPER (1 << 1) #define PART_LEFT_UPPER (1 << 1)
@ -215,7 +215,7 @@ void EnKanban_Init(Actor* thisx, PlayState* play) {
Actor_SetScale(&this->actor, 0.01f); Actor_SetScale(&this->actor, 0.01f);
if (this->actor.params != ENKANBAN_PIECE) { if (this->actor.params != ENKANBAN_PIECE) {
this->actor.attentionRangeType = ATTENTION_RANGE_0; this->actor.attentionRangeType = ATTENTION_RANGE_0;
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
Collider_InitCylinder(play, &this->collider); Collider_InitCylinder(play, &this->collider);
Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit); Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit);
PRINTF("KANBAN ARG %x\n", this->actor.params); PRINTF("KANBAN ARG %x\n", this->actor.params);
@ -287,7 +287,7 @@ void EnKanban_Update(Actor* thisx, PlayState* play2) {
this->zTargetTimer--; this->zTargetTimer--;
} }
if (this->zTargetTimer == 1) { if (this->zTargetTimer == 1) {
this->actor.flags &= ~ACTOR_FLAG_0; this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} }
if (this->partFlags == 0xFFFF) { if (this->partFlags == 0xFFFF) {
EnKanban_Message(this, play); EnKanban_Message(this, play);
@ -405,7 +405,7 @@ void EnKanban_Update(Actor* thisx, PlayState* play2) {
piece->direction = -1; piece->direction = -1;
} }
piece->airTimer = 100; piece->airTimer = 100;
piece->actor.flags &= ~ACTOR_FLAG_0; piece->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
piece->actor.flags |= ACTOR_FLAG_25; piece->actor.flags |= ACTOR_FLAG_25;
this->cutMarkTimer = 5; this->cutMarkTimer = 5;
Actor_PlaySfx(&this->actor, NA_SE_IT_SWORD_STRIKE); Actor_PlaySfx(&this->actor, NA_SE_IT_SWORD_STRIKE);
@ -417,7 +417,7 @@ void EnKanban_Update(Actor* thisx, PlayState* play2) {
CollisionCheck_SetAC(play, &play->colChkCtx, &this->collider.base); CollisionCheck_SetAC(play, &play->colChkCtx, &this->collider.base);
CollisionCheck_SetOC(play, &play->colChkCtx, &this->collider.base); CollisionCheck_SetOC(play, &play->colChkCtx, &this->collider.base);
if (this->actor.xzDistToPlayer > 500.0f) { if (this->actor.xzDistToPlayer > 500.0f) {
this->actor.flags |= ACTOR_FLAG_0; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->partFlags = 0xFFFF; this->partFlags = 0xFFFF;
} }
if (this->cutMarkTimer != 0) { if (this->cutMarkTimer != 0) {
@ -780,7 +780,7 @@ void EnKanban_Update(Actor* thisx, PlayState* play2) {
((pDiff + yDiff + rDiff + this->spinRot.x + this->spinRot.z) == 0) && (this->floorRot.x == 0.0f) && ((pDiff + yDiff + rDiff + this->spinRot.x + this->spinRot.z) == 0) && (this->floorRot.x == 0.0f) &&
(this->floorRot.z == 0.0f)) { (this->floorRot.z == 0.0f)) {
signpost->partFlags |= this->partFlags; signpost->partFlags |= this->partFlags;
signpost->actor.flags |= ACTOR_FLAG_0; signpost->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
Actor_Kill(&this->actor); Actor_Kill(&this->actor);
} }
} break; } break;

View file

@ -9,7 +9,7 @@
#include "assets/objects/gameplay_keep/gameplay_keep.h" #include "assets/objects/gameplay_keep/gameplay_keep.h"
#include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h" #include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h"
#define FLAGS (ACTOR_FLAG_0 | ACTOR_FLAG_2) #define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE)
void EnKarebaba_Init(Actor* thisx, PlayState* play); void EnKarebaba_Init(Actor* thisx, PlayState* play);
void EnKarebaba_Destroy(Actor* thisx, PlayState* play); void EnKarebaba_Destroy(Actor* thisx, PlayState* play);
@ -328,7 +328,7 @@ void EnKarebaba_Dying(EnKarebaba* this, PlayState* play) {
((this->actor.bgCheckFlags & BGCHECKFLAG_GROUND_TOUCH) || (this->actor.bgCheckFlags & BGCHECKFLAG_WALL))) { ((this->actor.bgCheckFlags & BGCHECKFLAG_GROUND_TOUCH) || (this->actor.bgCheckFlags & BGCHECKFLAG_WALL))) {
this->actor.scale.x = this->actor.scale.y = this->actor.scale.z = 0.0f; this->actor.scale.x = this->actor.scale.y = this->actor.scale.z = 0.0f;
this->actor.speed = 0.0f; this->actor.speed = 0.0f;
this->actor.flags &= ~(ACTOR_FLAG_0 | ACTOR_FLAG_2); this->actor.flags &= ~(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE);
EffectSsHahen_SpawnBurst(play, &this->actor.world.pos, 3.0f, 0, 12, 5, 15, HAHEN_OBJECT_DEFAULT, 10, NULL); EffectSsHahen_SpawnBurst(play, &this->actor.world.pos, 3.0f, 0, 12, 5, 15, HAHEN_OBJECT_DEFAULT, 10, NULL);
} }
@ -400,7 +400,7 @@ void EnKarebaba_Regrow(EnKarebaba* this, PlayState* play) {
if (this->actor.params == 20) { if (this->actor.params == 20) {
this->actor.flags &= ~ACTOR_FLAG_4; this->actor.flags &= ~ACTOR_FLAG_4;
this->actor.flags |= ACTOR_FLAG_0 | ACTOR_FLAG_2; this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE;
Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_ENEMY); Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_ENEMY);
EnKarebaba_SetupIdle(this); EnKarebaba_SetupIdle(this);
} }

Some files were not shown because too many files have changed in this diff Show more