ClearTag Params Cleanup (#1308)

* clearTag params

* header ordering

* brackets

* cleanup

* add note
This commit is contained in:
engineer124 2023-07-15 04:56:08 +10:00 committed by GitHub
parent 2aa028c20f
commit 6d94e0ce9b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
50 changed files with 163 additions and 104 deletions

View File

@ -538,16 +538,6 @@ typedef enum {
#define COLORFILTER_BUFFLAG_XLU 0x2000
#define COLORFILTER_BUFFLAG_OPA 0x0000
typedef enum {
/* 0x00 */ CLEAR_TAG_SMALL_EXPLOSION,
/* 0x01 */ CLEAR_TAG_LARGE_EXPLOSION,
/* 0x02 */ CLEAR_TAG_POP,
/* 0x03 */ CLEAR_TAG_SMALL_LIGHT_RAYS,
/* 0x04 */ CLEAR_TAG_LARGE_LIGHT_RAYS,
/* 0x23 */ CLEAR_TAG_SPLASH = 35,
/* 0xC8 */ CLEAR_TAG_SMOKE = 200
} ClearTagType;
typedef enum {
/* 0x00 */ TATL_HINT_ID_DEFAULT,
/* 0x01 */ TATL_HINT_ID_SNAPPER,

View File

@ -6,6 +6,7 @@
#include "z_boss_04.h"
#include "z64shrink_window.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_10 | ACTOR_FLAG_20)
@ -330,7 +331,7 @@ void func_809EC568(Boss04* this, PlayState* play) {
this->unk_704 = 0;
this->unk_2DA = 10;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->actor.world.pos.x, this->actor.world.pos.y,
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_SPLASH);
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_PARAMS(CLEAR_TAG_SPLASH));
Actor_PlaySfx(&this->actor, NA_SE_EN_KONB_JUMP_LEV_OLD - SFX_FLAG);
this->subCamAtOscillator = 20;
}
@ -550,7 +551,7 @@ void func_809ED2A0(Boss04* this, PlayState* play) {
if ((this->unk_1F8 == 2) || (this->unk_1F8 == 5)) {
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->actor.world.pos.x, this->actor.world.pos.y,
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_LARGE_EXPLOSION);
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_EXPLOSION));
SoundSource_PlaySfxAtFixedWorldPos(play, &this->actor.world.pos, 40, NA_SE_IT_BIG_BOMB_EXPLOSION);
}

View File

@ -7,6 +7,7 @@
#include "z_en_am.h"
#include "overlays/actors/ovl_En_Bom/z_en_bom.h"
#include "overlays/actors/ovl_En_Bombf/z_en_bombf.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#define FLAGS (ACTOR_FLAG_400 | ACTOR_FLAG_4 | ACTOR_FLAG_1)
@ -484,7 +485,7 @@ s32 EnAm_UpdateDamage(EnAm* this, PlayState* play) {
this->drawDmgEffAlpha = 4.0f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->enemyCollider.info.bumper.hitPos.x,
this->enemyCollider.info.bumper.hitPos.y, this->enemyCollider.info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_LARGE_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
EnAm_TakeDamage(this, play);
return true;

View File

@ -5,6 +5,7 @@
*/
#include "z_en_baguo.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4)
@ -347,7 +348,7 @@ void EnBaguo_CheckForDetonation(EnBaguo* this, PlayState* play) {
}
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->actor.world.pos.x, this->actor.world.pos.y,
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_POP);
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_PARAMS(CLEAR_TAG_POP));
Actor_PlaySfx(&this->actor, NA_SE_IT_BOMB_EXPLOSION);
Actor_PlaySfx(&this->actor, NA_SE_EN_BAKUO_DEAD);

View File

@ -5,6 +5,7 @@
*/
#include "z_en_bat.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/object_bat/object_bat.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_IGNORE_QUAKE | ACTOR_FLAG_4000)
@ -332,7 +333,7 @@ void EnBat_SetupDie(EnBat* this, PlayState* play) {
this->drawDmgEffScale = 0.45f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->collider.info.bumper.hitPos.x,
this->collider.info.bumper.hitPos.y, this->collider.info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_SMALL_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_SMALL_LIGHT_RAYS));
} else if (this->actor.colChkInfo.damageEffect == BAD_BAT_DMGEFF_FIRE) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_FIRE;
this->drawDmgEffAlpha = 4.0f;

View File

@ -5,6 +5,7 @@
*/
#include "z_en_bb.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_200)
@ -550,7 +551,7 @@ void EnBb_UpdateDamage(EnBb* this, PlayState* play) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->collider.info.bumper.hitPos.x,
this->collider.info.bumper.hitPos.y, this->collider.info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_SMALL_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_SMALL_LIGHT_RAYS));
}
}
} else {

View File

@ -5,6 +5,7 @@
*/
#include "z_en_bbfall.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_10 | ACTOR_FLAG_200)
@ -571,7 +572,8 @@ void EnBbfall_UpdateDamage(EnBbfall* this, PlayState* play) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->collider.elements[0].info.bumper.hitPos.x,
this->collider.elements[0].info.bumper.hitPos.y,
this->collider.elements[0].info.bumper.hitPos.z, 0, 0, 0, CLEAR_TAG_SMALL_LIGHT_RAYS);
this->collider.elements[0].info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_PARAMS(CLEAR_TAG_SMALL_LIGHT_RAYS));
}
}
} else {

View File

@ -5,6 +5,7 @@
*/
#include "z_en_bigokuta.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4)
@ -501,7 +502,7 @@ void EnBigokuta_CheckOneHitKill(EnBigokuta* this, PlayState* play) {
this->drawDmgEffAlpha = 4.0f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->bodyCollider.info.bumper.hitPos.x,
this->bodyCollider.info.bumper.hitPos.y, this->bodyCollider.info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_LARGE_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
}

View File

@ -5,6 +5,7 @@
*/
#include "z_en_bigpo.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/object_bigpo/object_bigpo.h"
#include "objects/gameplay_keep/gameplay_keep.h"
@ -1136,7 +1137,7 @@ s32 EnBigpo_ApplyDamage(EnBigpo* this, PlayState* play) {
this->drawDmgEffScale = 1.0f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->collider.info.bumper.hitPos.x,
this->collider.info.bumper.hitPos.y, this->collider.info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_LARGE_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
EnBigpo_HitStun(this);
return true;

View File

@ -7,6 +7,7 @@
#include "z_en_bigslime.h"
#include "z64quake.h"
#include "z64rumble.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h"
#include "objects/object_bigslime/object_bigslime.h"
#include "objects/gameplay_keep/gameplay_keep.h"
@ -2635,10 +2636,10 @@ void EnBigslime_ApplyDamageEffectGekko(EnBigslime* this, PlayState* play) {
this->gekkoDrawDmgEffType = ACTOR_DRAW_DMGEFF_FIRE;
} else {
this->gekkoDrawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG,
this->gekkoCollider.info.bumper.hitPos.x,
this->gekkoCollider.info.bumper.hitPos.y,
this->gekkoCollider.info.bumper.hitPos.z, 0, 0, 0, CLEAR_TAG_LARGE_LIGHT_RAYS);
Actor_Spawn(
&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->gekkoCollider.info.bumper.hitPos.x,
this->gekkoCollider.info.bumper.hitPos.y, this->gekkoCollider.info.bumper.hitPos.z, 0,
0, 0, CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
} else if (this->actor.colChkInfo.damageEffect == BIGSLIME_DMGEFF_ICE) {
EnBigslime_GekkoFreeze(this);
@ -2670,10 +2671,10 @@ void EnBigslime_ApplyDamageEffectGekko(EnBigslime* this, PlayState* play) {
this->gekkoDrawDmgEffType = ACTOR_DRAW_DMGEFF_FIRE;
} else {
this->gekkoDrawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG,
this->gekkoCollider.info.bumper.hitPos.x,
this->gekkoCollider.info.bumper.hitPos.y,
this->gekkoCollider.info.bumper.hitPos.z, 0, 0, 0, CLEAR_TAG_LARGE_LIGHT_RAYS);
Actor_Spawn(
&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->gekkoCollider.info.bumper.hitPos.x,
this->gekkoCollider.info.bumper.hitPos.y, this->gekkoCollider.info.bumper.hitPos.z, 0,
0, 0, CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
}
EnBigslime_SetupDamageGekko(this, true);

View File

@ -6,6 +6,7 @@
#include "z_en_bom.h"
#include "z64rumble.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#define FLAGS (ACTOR_FLAG_10 | ACTOR_FLAG_20)
@ -543,8 +544,10 @@ void EnBom_Update(Actor* thisx, PlayState* play) {
if (Actor_HasParent(thisx, play)) {
effPos.y += 30.0f;
}
//! @note Assumes `isPowderKeg` values aligns with clearTag params.
//! Here, 0/1 are small/large explosions respectively.
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, effPos.x, effPos.y - 10.0f, effPos.z, 0, 0, 0,
this->isPowderKeg);
CLEAR_TAG_PARAMS(this->isPowderKeg));
Actor_RequestQuakeAndRumble(thisx, play, sQuakeY[this->isPowderKeg],
sQuakeDurations[this->isPowderKeg]);
play->envCtx.lightSettings.diffuseColor1[0] = play->envCtx.lightSettings.diffuseColor1[1] =
@ -579,16 +582,17 @@ void EnBom_Update(Actor* thisx, PlayState* play) {
if ((enBomScales[this->isPowderKeg] <= thisx->scale.x) && (thisx->params != BOMB_TYPE_EXPLOSION)) {
if (thisx->depthInWater >= 20.0f) {
Vec3f sp54;
Vec3f effPos;
sp54.x = thisx->world.pos.x;
sp54.y = thisx->world.pos.y + thisx->depthInWater;
sp54.z = thisx->world.pos.z;
EffectSsGRipple_Spawn(play, &sp54, 70, 500, 0);
EffectSsGRipple_Spawn(play, &sp54, 70, 500, 10);
sp54.y += 10.0f;
EffectSsGSplash_Spawn(play, &sp54, NULL, NULL, 1, 500);
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, sp54.x, sp54.y, sp54.z, 0, 0, 1, 200);
effPos.x = thisx->world.pos.x;
effPos.y = thisx->world.pos.y + thisx->depthInWater;
effPos.z = thisx->world.pos.z;
EffectSsGRipple_Spawn(play, &effPos, 70, 500, 0);
EffectSsGRipple_Spawn(play, &effPos, 70, 500, 10);
effPos.y += 10.0f;
EffectSsGSplash_Spawn(play, &effPos, NULL, NULL, 1, 500);
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, effPos.x, effPos.y, effPos.z, 0, 0, 1,
CLEAR_TAG_PARAMS(CLEAR_TAG_SMOKE));
SoundSource_PlaySfxAtFixedWorldPos(play, &thisx->world.pos, 30, NA_SE_IT_BOMB_UNEXPLOSION);
this->unk_1F4 = 0.0f;
thisx->velocity.y = (KREG(83) * 0.1f) + -2.0f;

View File

@ -5,6 +5,7 @@
*/
#include "z_en_bombal.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "assets/objects/object_fusen/object_fusen.h"
#include "objects/gameplay_keep/gameplay_keep.h"
@ -105,7 +106,7 @@ void func_80C05B3C(EnBombal* this, PlayState* play) {
void func_80C05C44(EnBombal* this, PlayState* play) {
s32 phi_s0 = false;
s32 i;
Vec3f pos;
Vec3f effPos;
if (!CHECK_WEEKEVENTREG(WEEKEVENTREG_75_40) && !CHECK_WEEKEVENTREG(WEEKEVENTREG_73_10) &&
!CHECK_WEEKEVENTREG(WEEKEVENTREG_85_02)) {
@ -126,13 +127,13 @@ void func_80C05C44(EnBombal* this, PlayState* play) {
}
if (phi_s0) {
Math_Vec3f_Copy(&pos, &this->actor.world.pos);
pos.y += 60.0f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, pos.x, pos.y, pos.z, 255, 255, 200,
CLEAR_TAG_LARGE_EXPLOSION);
Math_Vec3f_Copy(&effPos, &this->actor.world.pos);
effPos.y += 60.0f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, effPos.x, effPos.y, effPos.z, 255, 255, 200,
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_EXPLOSION));
for (i = 0; i < 100; i++) {
EnBombal_InitEffects(this, &pos, 10);
EnBombal_InitEffects(this, &effPos, 10);
}
SET_WEEKEVENTREG(WEEKEVENTREG_83_04);

View File

@ -6,6 +6,7 @@
#include "z_en_bombf.h"
#include "z64rumble.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/object_bombf/object_bombf.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_10)
@ -313,7 +314,7 @@ void EnBombf_Update(Actor* thisx, PlayState* play) {
Vec3f sp8C = { 0.0f, 0.0f, 0.0f };
Vec3f sp80 = { 0.0f, 0.1f, 0.0f };
Vec3f sp74 = { 0.0f, 0.0f, 0.0f };
Vec3f sp68;
Vec3f effPos;
Vec3f sp5C = { 0.0f, 0.6f, 0.0f };
Color_RGBA8 sp58 = { 255, 255, 255, 255 };
EnBombf* this = THIS;
@ -375,16 +376,16 @@ void EnBombf_Update(Actor* thisx, PlayState* play) {
if (this->unk_1F8 != 0) {
sp5C.y = 0.2f;
sp68 = this->actor.world.pos;
sp68.y += 25.0f;
effPos = this->actor.world.pos;
effPos.y += 25.0f;
if (this->timer < 127) {
if ((play->gameplayFrames % 2) == 0) {
EffectSsGSpk_SpawnFuse(play, &this->actor, &sp68, &sp8C, &sp74);
EffectSsGSpk_SpawnFuse(play, &this->actor, &effPos, &sp8C, &sp74);
}
Actor_PlaySfx(&this->actor, NA_SE_IT_BOMB_IGNIT - SFX_FLAG);
sp68.y += 3.0f;
func_800B0DE0(play, &sp68, &sp8C, &sp5C, &sp58, &sp58, 0x32, 5);
effPos.y += 3.0f;
func_800B0DE0(play, &effPos, &sp8C, &sp5C, &sp58, &sp58, 0x32, 5);
}
if ((this->timer == 3) || (this->timer == 30) || (this->timer == 50) || (this->timer == 70)) {
@ -402,15 +403,15 @@ void EnBombf_Update(Actor* thisx, PlayState* play) {
}
if (this->timer == 0) {
sp68 = this->actor.world.pos;
sp68.y += 10.0f;
effPos = this->actor.world.pos;
effPos.y += 10.0f;
if (Actor_HasParent(&this->actor, play)) {
sp68.y += 30.0f;
effPos.y += 30.0f;
}
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, sp68.x, sp68.y, sp68.z, 0, 0, 0,
CLEAR_TAG_SMALL_EXPLOSION);
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, effPos.x, effPos.y, effPos.z, 0, 0, 0,
CLEAR_TAG_PARAMS(CLEAR_TAG_SMALL_EXPLOSION));
Actor_PlaySfx(&this->actor, NA_SE_IT_BOMB_EXPLOSION);
play->envCtx.lightSettings.diffuseColor1[0] = play->envCtx.lightSettings.diffuseColor1[1] =

View File

@ -435,7 +435,7 @@ void EnClearTag_Init(Actor* thisx, PlayState* play) {
if (thisx->params != CLEAR_TAG_SPLASH) {
// Initialize isolated light ray effect
if (thisx->params == CLEAR_TAG_SMALL_LIGHT_RAYS || thisx->params == CLEAR_TAG_LARGE_LIGHT_RAYS) {
if ((thisx->params == CLEAR_TAG_SMALL_LIGHT_RAYS) || (thisx->params == CLEAR_TAG_LARGE_LIGHT_RAYS)) {
for (i = 0; i < 54; i++) {
lightRayMaxScale =
sLightRayMaxScale[thisx->params] + Rand_ZeroFloat(sLightRayMaxScale[thisx->params]);

View File

@ -5,6 +5,18 @@
struct EnClearTag;
#define CLEAR_TAG_PARAMS(type) (type)
typedef enum {
/* 0x00 */ CLEAR_TAG_SMALL_EXPLOSION,
/* 0x01 */ CLEAR_TAG_LARGE_EXPLOSION,
/* 0x02 */ CLEAR_TAG_POP,
/* 0x03 */ CLEAR_TAG_SMALL_LIGHT_RAYS,
/* 0x04 */ CLEAR_TAG_LARGE_LIGHT_RAYS,
/* 0x23 */ CLEAR_TAG_SPLASH = 35,
/* 0xC8 */ CLEAR_TAG_SMOKE = 200
} ClearTagType;
typedef struct EnClearTagEffect {
/* 0x00 */ u8 type;
/* 0x01 */ u8 actionTimer;

View File

@ -6,6 +6,7 @@
#include "z_en_col_man.h"
#include "overlays/actors/ovl_En_Bom/z_en_bom.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#define FLAGS (ACTOR_FLAG_100000)
@ -200,7 +201,7 @@ void func_80AFE25C(EnColMan* this, PlayState* play) {
if (this->actor.params == EN_COL_MAN_CUTSCENE_BOMB) {
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->actor.parent->world.pos.x,
this->actor.parent->world.pos.y, this->actor.parent->world.pos.z, 0, 0, 0,
CLEAR_TAG_SMALL_EXPLOSION);
CLEAR_TAG_PARAMS(CLEAR_TAG_SMALL_EXPLOSION));
} else {
EnBom* bomb = (EnBom*)Actor_Spawn(&play->actorCtx, play, ACTOR_EN_BOM, this->actor.world.pos.x,
this->actor.world.pos.y, this->actor.world.pos.z,

View File

@ -5,6 +5,7 @@
*/
#include "z_en_crow.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_IGNORE_QUAKE | ACTOR_FLAG_4000)
@ -317,7 +318,7 @@ void EnCrow_SetupDamaged(EnCrow* this, PlayState* play) {
this->drawDmgEffFrozenSteamScale = 0.5f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->collider.elements->info.bumper.hitPos.x,
this->collider.elements->info.bumper.hitPos.y, this->collider.elements->info.bumper.hitPos.z, 0, 0,
0, CLEAR_TAG_SMALL_LIGHT_RAYS);
0, CLEAR_TAG_PARAMS(CLEAR_TAG_SMALL_LIGHT_RAYS));
} else if (this->actor.colChkInfo.damageEffect == GUAY_DMGEFF_FIRE) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_FIRE;
this->drawDmgEffAlpha = 4.0f;

View File

@ -5,6 +5,7 @@
*/
#include "z_en_dekubaba.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h"
#include "objects/gameplay_keep/gameplay_keep.h"
@ -280,7 +281,7 @@ void EnDekubaba_SetFireLightEffects(EnDekubaba* this, PlayState* play, s32 index
sphElement = &this->collider.elements[index];
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, sphElement->info.bumper.hitPos.x,
sphElement->info.bumper.hitPos.y, sphElement->info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_SMALL_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_SMALL_LIGHT_RAYS));
}
}

View File

@ -5,6 +5,7 @@
*/
#include "z_en_dekunuts.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "overlays/actors/ovl_Obj_Etcetera/z_obj_etcetera.h"
#include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h"
@ -610,7 +611,7 @@ void func_808BE73C(EnDekunuts* this, PlayState* play) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->collider.info.bumper.hitPos.x,
this->collider.info.bumper.hitPos.y, this->collider.info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_SMALL_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_SMALL_LIGHT_RAYS));
} else if (this->actor.colChkInfo.damageEffect == 5) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_ELECTRIC_SPARKS_LARGE;
this->drawDmgEffAlpha = 4.0f;

View File

@ -5,6 +5,7 @@
*/
#include "z_en_dinofos.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/object_dinofos/object_dinofos.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_10 | ACTOR_FLAG_20 | ACTOR_FLAG_400)
@ -1332,7 +1333,8 @@ s32 func_8089D60C(EnDinofos* this, PlayState* play) {
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG,
this->colliderJntSph.elements[i].info.bumper.hitPos.x,
this->colliderJntSph.elements[i].info.bumper.hitPos.y,
this->colliderJntSph.elements[i].info.bumper.hitPos.z, 0, 0, 0, CLEAR_TAG_LARGE_LIGHT_RAYS);
this->colliderJntSph.elements[i].info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
func_8089C87C(this, i);
return true;

View File

@ -7,6 +7,7 @@
#include "z_en_dodongo.h"
#include "overlays/actors/ovl_En_Bom/z_en_bom.h"
#include "overlays/actors/ovl_En_Bombf/z_en_bombf.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/object_dodongo/object_dodongo.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_400)
@ -408,7 +409,8 @@ void func_80876BD0(EnDodongo* this, PlayState* play, s32 arg2) {
this->drawDmgEffAlpha = 4.0f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->collider1.elements[arg2].info.bumper.hitPos.x,
this->collider1.elements[arg2].info.bumper.hitPos.y,
this->collider1.elements[arg2].info.bumper.hitPos.z, 0, 0, 0, CLEAR_TAG_LARGE_LIGHT_RAYS);
this->collider1.elements[arg2].info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
}

View File

@ -7,8 +7,9 @@
#include "z_en_egol.h"
#include "objects/object_eg/object_eg.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#include "overlays/actors/ovl_En_Estone/z_en_estone.h"
#include "overlays/actors/ovl_En_Arrow/z_en_arrow.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "overlays/actors/ovl_En_Estone/z_en_estone.h"
#include "overlays/effects/ovl_Effect_Ss_Hitmark/z_eff_ss_hitmark.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_10 | ACTOR_FLAG_20 | ACTOR_FLAG_80000000)
@ -1085,7 +1086,7 @@ void EnEgol_Death(EnEgol* this, PlayState* play) {
s32 i;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->actor.world.pos.x, this->actor.world.pos.y,
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_SMALL_EXPLOSION);
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_PARAMS(CLEAR_TAG_SMALL_EXPLOSION));
this->waitTimer = 30;
Actor_PlaySfx(&this->actor, NA_SE_IT_BOMB_EXPLOSION);
this->action = EYEGORE_ACTION_DEAD;
@ -1128,7 +1129,7 @@ void EnEgol_CollisionCheck(EnEgol* this, PlayState* play) {
if ((this->action == EYEGORE_ACTION_STUNNED) || (this->action == EYEGORE_ACTION_SLAM_WAIT)) {
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->actor.focus.pos.x,
this->actor.focus.pos.y, this->actor.focus.pos.z, 0, 0, 0,
CLEAR_TAG_LARGE_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
this->dmgEffectTimer = 20;
reaction = EYEGORE_HIT_DAMAGE;
} else if ((this->action >= EYEGORE_ACTION_WALK) && (this->action <= EYEGORE_ACTION_STUN_END) &&

View File

@ -5,6 +5,7 @@
*/
#include "z_en_encount2.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/object_fusen/object_fusen.h"
#include "objects/gameplay_keep/gameplay_keep.h"
@ -160,15 +161,15 @@ void EnEncount2_Idle(EnEncount2* this, PlayState* play) {
void EnEncount2_Popped(EnEncount2* this, PlayState* play) {
s32 i;
Vec3f curPos;
Vec3f effPos;
Math_Vec3f_Copy(&curPos, &this->dyna.actor.world.pos);
curPos.y += 60.0f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, curPos.x, curPos.y, curPos.z, 255, 255, 200,
CLEAR_TAG_LARGE_EXPLOSION);
Math_Vec3f_Copy(&effPos, &this->dyna.actor.world.pos);
effPos.y += 60.0f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, effPos.x, effPos.y, effPos.z, 255, 255, 200,
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_EXPLOSION));
for (i = 0; i < ARRAY_COUNT(this->effects) / 2; ++i) {
EnEncount2_InitEffects(this, &curPos, 10);
EnEncount2_InitEffects(this, &effPos, 10);
}
Actor_PlaySfx(&this->dyna.actor, NA_SE_EV_MUJURA_BALLOON_BROKEN);

View File

@ -16,6 +16,7 @@
*/
#include "z_en_fall.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/object_fall/object_fall.h"
#include "objects/object_fall2/object_fall2.h"
#include "objects/object_lodmoon/object_lodmoon.h"
@ -524,7 +525,7 @@ void EnFall_MoonsTear_Fall(EnFall* this, PlayState* play) {
Actor_SpawnAsChild(&play->actorCtx, &this->actor, play, ACTOR_EN_TEST, this->actor.world.pos.x,
this->actor.world.pos.y, this->actor.world.pos.z, 0, 0, 0, -2);
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->actor.world.pos.x, this->actor.world.pos.y,
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_LARGE_EXPLOSION);
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_EXPLOSION));
this->actor.draw = NULL;
this->actionFunc = EnFall_MoonsTear_DoNothing;
} else {

View File

@ -5,6 +5,7 @@
*/
#include "z_en_firefly.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_IGNORE_QUAKE | ACTOR_FLAG_4000)
@ -360,7 +361,7 @@ void EnFirefly_SetupFall(EnFirefly* this, PlayState* play) {
this->drawDmgEffScale = 0.55f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->collider.info.bumper.hitPos.x,
this->collider.info.bumper.hitPos.y, this->collider.info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_SMALL_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_SMALL_LIGHT_RAYS));
} else if (this->actor.colChkInfo.damageEffect == KEESE_DMGEFF_FIRE) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_FIRE;
this->drawDmgEffAlpha = 4.0f;

View File

@ -5,6 +5,7 @@
*/
#include "z_en_floormas.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_400)
@ -1072,8 +1073,8 @@ void func_808D2E34(EnFloormas* this, PlayState* play) {
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->collider.info.bumper.hitPos.x,
this->collider.info.bumper.hitPos.y, this->collider.info.bumper.hitPos.z, 0, 0,
0,
(this->actor.scale.x > 0.009f) ? CLEAR_TAG_LARGE_LIGHT_RAYS
: CLEAR_TAG_SMALL_LIGHT_RAYS);
(this->actor.scale.x > 0.009f) ? CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS)
: CLEAR_TAG_PARAMS(CLEAR_TAG_SMALL_LIGHT_RAYS));
}
func_808D2B18(this);
}

View File

@ -5,6 +5,7 @@
*/
#include "z_en_grasshopper.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_10)
@ -879,7 +880,7 @@ void EnGrasshopper_UpdateDamage(EnGrasshopper* this, PlayState* play) {
this->drawDmgEffTimer = 20;
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->actor.focus.pos.x, this->actor.focus.pos.y,
this->actor.focus.pos.z, 0, 0, 0, CLEAR_TAG_LARGE_LIGHT_RAYS);
this->actor.focus.pos.z, 0, 0, 0, CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
attackDealsDamage = true;
}
}

View File

@ -6,6 +6,7 @@
#include "z_en_ik.h"
#include "z64rumble.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_400)
@ -317,7 +318,7 @@ void EnIk_HitArmor(EnIk* this, PlayState* play) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->colliderCylinder.info.bumper.hitPos.x,
this->colliderCylinder.info.bumper.hitPos.y, this->colliderCylinder.info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_LARGE_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
s32 EnIk_IsChangingAction(EnIk* this, PlayState* play) {

View File

@ -5,6 +5,7 @@
*/
#include "z_en_kaizoku.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_10 | ACTOR_FLAG_100000)
@ -1908,7 +1909,7 @@ void func_80B89A08(EnKaizoku* this, PlayState* play) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->picto.actor.focus.pos.x,
this->picto.actor.focus.pos.y, this->picto.actor.focus.pos.z, 0, 0, 0,
CLEAR_TAG_LARGE_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
sp64 = 1;
}
break;

View File

@ -5,6 +5,7 @@
*/
#include "z_en_kame.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/object_tl/object_tl.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_400)
@ -673,7 +674,7 @@ void func_80AD84C0(EnKame* this, PlayState* play) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->collider.info.bumper.hitPos.x,
this->collider.info.bumper.hitPos.y, this->collider.info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_LARGE_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
if (!Actor_ApplyDamage(&this->actor)) {

View File

@ -5,6 +5,7 @@
*/
#include "z_en_karebaba.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h"
#include "objects/gameplay_keep/gameplay_keep.h"
@ -203,7 +204,7 @@ void EnKarebaba_SetDamageEffects(EnKarebaba* this, PlayState* play) {
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->hurtCollider.info.bumper.hitPos.x,
this->hurtCollider.info.bumper.hitPos.y, this->hurtCollider.info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_SMALL_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_SMALL_LIGHT_RAYS));
} else if (this->actor.colChkInfo.damageEffect == KAREBABA_DMGEFF_ICE) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_FROZEN_NO_SFX;
this->drawDmgEffScale = 0.75f;

View File

@ -8,6 +8,7 @@
#include "z64quake.h"
#include "z64rumble.h"
#include "overlays/actors/ovl_En_Bigpamet/z_en_bigpamet.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_10 | ACTOR_FLAG_20)
@ -394,7 +395,7 @@ void EnPametfrog_ApplyMagicArrowEffects(EnPametfrog* this, PlayState* play) {
this->drawDmgEffAlpha = 3.0f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->collider.elements[0].info.bumper.hitPos.x,
this->collider.elements[0].info.bumper.hitPos.y, this->collider.elements[0].info.bumper.hitPos.z, 0,
0, 0, CLEAR_TAG_LARGE_LIGHT_RAYS);
0, 0, CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
} else if (this->actor.colChkInfo.damageEffect == GEKKO_DMGEFF_ICE) {
EnPametfrog_Freeze(this);
}
@ -1299,10 +1300,11 @@ void EnPametfrog_ApplyDamageEffect(EnPametfrog* this, PlayState* play) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
this->drawDmgEffScale = 0.75f;
this->drawDmgEffAlpha = 4.0f;
Actor_Spawn(
&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->collider.elements[0].info.bumper.hitPos.x,
this->collider.elements[0].info.bumper.hitPos.y,
this->collider.elements[0].info.bumper.hitPos.z, 0, 0, 0, CLEAR_TAG_LARGE_LIGHT_RAYS);
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG,
this->collider.elements[0].info.bumper.hitPos.x,
this->collider.elements[0].info.bumper.hitPos.y,
this->collider.elements[0].info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
EnPametfrog_SetupDamage(this);
}

View File

@ -6,6 +6,7 @@
#include "z_en_peehat.h"
#include "overlays/actors/ovl_En_Bom/z_en_bom.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h"
#include "objects/object_ph/object_ph.h"
@ -727,7 +728,7 @@ void func_8089874C(EnPeehat* this, PlayState* play) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->colliderSphere.info.bumper.hitPos.x,
this->colliderSphere.info.bumper.hitPos.y, this->colliderSphere.info.bumper.hitPos.z, 0,
0, 0, CLEAR_TAG_LARGE_LIGHT_RAYS);
0, 0, CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
func_800BE568(&this->actor, &this->colliderSphere);
func_808984E0(this);

View File

@ -5,6 +5,7 @@
*/
#include "z_en_po_fusen.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "overlays/actors/ovl_En_Ma4/z_en_ma4.h"
#define FLAGS (ACTOR_FLAG_10 | ACTOR_FLAG_20 | ACTOR_FLAG_100000 | ACTOR_FLAG_80000000)
@ -239,7 +240,7 @@ void EnPoFusen_IncrementRomaniPop(EnPoFusen* this) {
void EnPoFusen_Pop(EnPoFusen* this, PlayState* play) {
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->actor.world.pos.x, this->actor.world.pos.y + 20.0f,
this->actor.world.pos.z, 255, 255, 200, CLEAR_TAG_POP);
this->actor.world.pos.z, 255, 255, 200, CLEAR_TAG_PARAMS(CLEAR_TAG_POP));
Actor_PlaySfx(&this->actor, NA_SE_IT_BOMB_EXPLOSION);
Actor_Kill(&this->actor);
}

View File

@ -5,6 +5,7 @@
*/
#include "z_en_po_sisters.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_10 | ACTOR_FLAG_IGNORE_QUAKE | ACTOR_FLAG_4000)
@ -946,7 +947,7 @@ void EnPoSisters_CheckCollision(EnPoSisters* this, PlayState* play) {
this->drawDmgEffScale = 0.5f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->collider.info.bumper.hitPos.x,
this->collider.info.bumper.hitPos.y, this->collider.info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_LARGE_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
EnPoSisters_SetupDamageFlinch(this);
}

View File

@ -6,6 +6,7 @@
#include "prevent_bss_reordering.h"
#include "z_en_poh.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/object_po/object_po.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_200 | ACTOR_FLAG_IGNORE_QUAKE)
@ -711,7 +712,8 @@ void func_80B2E438(EnPoh* this, PlayState* play) {
this->drawDmgEffScale = 0.45f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->colliderCylinder.info.bumper.hitPos.x,
this->colliderCylinder.info.bumper.hitPos.y,
this->colliderCylinder.info.bumper.hitPos.z, 0, 0, 0, CLEAR_TAG_LARGE_LIGHT_RAYS);
this->colliderCylinder.info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
func_80B2CFF8(this);
}

View File

@ -5,6 +5,7 @@
*/
#include "z_en_pp.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4)
@ -1320,7 +1321,7 @@ void EnPp_UpdateDamage(EnPp* this, PlayState* play) {
(this->drawDmgEffTimer == 0))) {
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->actor.focus.pos.x,
this->actor.focus.pos.y, this->actor.focus.pos.z, 0, 0, 0,
CLEAR_TAG_LARGE_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_GRAY, 255, COLORFILTER_BUFFLAG_OPA,
25);
this->drawDmgEffTimer = 20;

View File

@ -5,6 +5,7 @@
*/
#include "z_en_pr.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "overlays/actors/ovl_En_Prz/z_en_prz.h"
#include "objects/object_pr/object_pr.h"
@ -466,7 +467,7 @@ void func_80A33098(EnPr* this, PlayState* play) {
this->drawDmgEffAlpha = 40;
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->actor.focus.pos.x, this->actor.focus.pos.y,
this->actor.focus.pos.z, 0, 0, 0, CLEAR_TAG_LARGE_LIGHT_RAYS);
this->actor.focus.pos.z, 0, 0, 0, CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
if ((player->stateFlags1 & PLAYER_STATE1_8000000) && (this->actor.colChkInfo.damageEffect == 5)) {

View File

@ -5,6 +5,7 @@
*/
#include "z_en_raf.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#define FLAGS (ACTOR_FLAG_CANT_LOCK_ON)
@ -511,7 +512,7 @@ void EnRaf_Explode(EnRaf* this, PlayState* play) {
Math_Vec3f_Copy(&explosionPos, &this->dyna.actor.world.pos);
explosionPos.y += 10.0f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, explosionPos.x, explosionPos.y, explosionPos.z, 0, 0, 0,
CLEAR_TAG_SMALL_EXPLOSION);
CLEAR_TAG_PARAMS(CLEAR_TAG_SMALL_EXPLOSION));
Actor_PlaySfx(&this->dyna.actor, NA_SE_IT_BOMB_EXPLOSION);
Actor_PlaySfx(&this->dyna.actor, NA_SE_EN_SUISEN_DEAD);
if (this->switchFlag >= 0) {

View File

@ -6,6 +6,7 @@
#include "z_en_rr.h"
#include "z64rumble.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/object_rr/object_rr.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_400)
@ -180,7 +181,7 @@ void func_808FA01C(EnRr* this, PlayState* play, ColliderCylinder* collider) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, collider->info.bumper.hitPos.x,
collider->info.bumper.hitPos.y, collider->info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_LARGE_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
} else if (this->actor.colChkInfo.damageEffect == 5) {
this->drawDmgEffScale = 0.85f;
this->drawDmgEffAlpha = 4.0f;

View File

@ -5,6 +5,7 @@
*/
#include "z_en_slime.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_10 | ACTOR_FLAG_200)
@ -1090,7 +1091,7 @@ void EnSlime_UpdateDamage(EnSlime* this, PlayState* play) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->collider.info.bumper.hitPos.x,
this->collider.info.bumper.hitPos.y, this->collider.info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_LARGE_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
} else if (this->actor.colChkInfo.damageEffect == EN_SLIME_DMGEFF_ELECTRIC) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_ELECTRIC_SPARKS_LARGE;
this->drawDmgEffAlpha = 4.0f;

View File

@ -5,6 +5,7 @@
*/
#include "z_en_snowman.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4)
@ -1009,7 +1010,7 @@ void EnSnowman_UpdateDamage(EnSnowman* this, PlayState* play) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->collider.info.bumper.hitPos.x,
this->collider.info.bumper.hitPos.y, this->collider.info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_LARGE_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
}
}

View File

@ -5,6 +5,7 @@
*/
#include "z_en_st.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/object_st/object_st.h"
#include "objects/gameplay_keep/gameplay_keep.h"
@ -565,7 +566,7 @@ s32 func_808A6580(EnSt* this, PlayState* play) {
if (this->actor.colChkInfo.damageEffect == 4) {
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->actor.world.pos.x, this->actor.world.pos.y,
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_LARGE_LIGHT_RAYS);
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
this->collider3.base.acFlags &= ~AC_HIT;
}
@ -575,7 +576,7 @@ s32 func_808A6580(EnSt* this, PlayState* play) {
this->collider4.base.acFlags &= ~AC_HIT;
if (this->actor.colChkInfo.damageEffect == 4) {
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->actor.world.pos.x, this->actor.world.pos.y,
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_LARGE_LIGHT_RAYS);
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
if (this->drawDmgEffType == ACTOR_DRAW_DMGEFF_FROZEN_NO_SFX) {

View File

@ -5,8 +5,9 @@
*/
#include "z_en_suttari.h"
#include "overlays/actors/ovl_En_Elf/z_en_elf.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "overlays/actors/ovl_En_Door/z_en_door.h"
#include "overlays/actors/ovl_En_Elf/z_en_elf.h"
#include "overlays/effects/ovl_Effect_Ss_Solder_Srch_Ball/z_eff_ss_solder_srch_ball.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_8 | ACTOR_FLAG_10)
@ -1272,7 +1273,7 @@ void func_80BAD380(EnSuttari* this, PlayState* play) {
this->flags2 |= 4;
this->actor.speed = 0.0f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->actor.world.pos.x, this->actor.world.pos.y,
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_SMALL_EXPLOSION);
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_PARAMS(CLEAR_TAG_SMALL_EXPLOSION));
SoundSource_PlaySfxAtFixedWorldPos(play, &this->actor.world.pos, 30, NA_SE_IT_BOMB_EXPLOSION);
Actor_Kill(&this->actor);
return;

View File

@ -5,6 +5,7 @@
*/
#include "z_en_sw.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/object_st/object_st.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4)
@ -661,7 +662,7 @@ s32 func_808DA08C(EnSw* this, PlayState* play) {
if (this->actor.colChkInfo.damageEffect == 4) {
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->actor.world.pos.x, this->actor.world.pos.y,
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_LARGE_LIGHT_RAYS);
this->actor.world.pos.z, 0, 0, 0, CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
if (this->drawDmgEffType == ACTOR_DRAW_DMGEFF_FROZEN_NO_SFX) {

View File

@ -6,6 +6,7 @@
#include "prevent_bss_reordering.h"
#include "z_en_thiefbird.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_200 | ACTOR_FLAG_IGNORE_QUAKE | ACTOR_FLAG_80000000)
@ -949,7 +950,8 @@ void func_80C12B1C(EnThiefbird* this, PlayState* play) {
if (i != ARRAY_COUNT(this->colliderElements)) {
sph = &this->collider.elements[i];
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, sph->info.bumper.hitPos.x,
sph->info.bumper.hitPos.y, sph->info.bumper.hitPos.z, 0, 0, 0, CLEAR_TAG_LARGE_LIGHT_RAYS);
sph->info.bumper.hitPos.y, sph->info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
} else if (this->actor.colChkInfo.damageEffect == 2) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_FIRE;

View File

@ -5,6 +5,7 @@
*/
#include "z_en_tite.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "objects/object_tite/object_tite.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_200)
@ -999,7 +1000,7 @@ void func_80895FF8(EnTite* this, PlayState* play) {
this->drawDmgEffScale = 0.5f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->collider.info.bumper.hitPos.x,
this->collider.info.bumper.hitPos.y, this->collider.info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_LARGE_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_RED, 255, COLORFILTER_BUFFLAG_OPA, 8);

View File

@ -5,6 +5,7 @@
*/
#include "z_en_wallmas.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "overlays/actors/ovl_En_Encount1/z_en_encount1.h"
#include "objects/gameplay_keep/gameplay_keep.h"
@ -611,7 +612,7 @@ void EnWallmas_UpdateDamage(EnWallmas* this, PlayState* play) {
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->collider.info.bumper.hitPos.x,
this->collider.info.bumper.hitPos.y, this->collider.info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_LARGE_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
EnWallmas_SetupDamage(this, true);

View File

@ -6,6 +6,7 @@
#include "z_en_wf.h"
#include "overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "overlays/actors/ovl_Obj_Ice_Poly/z_obj_ice_poly.h"
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_10 | ACTOR_FLAG_400)
@ -1456,7 +1457,7 @@ void func_8099386C(EnWf* this, PlayState* play) {
this->drawDmgEffAlpha = 4.0f;
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, collider->info.bumper.hitPos.x,
collider->info.bumper.hitPos.y, collider->info.bumper.hitPos.z, 0, 0, 0,
CLEAR_TAG_LARGE_LIGHT_RAYS);
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
}
Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_RED, 255, COLORFILTER_BUFFLAG_OPA, 8);

View File

@ -6,6 +6,7 @@
#include "z_en_wiz.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
#include "overlays/actors/ovl_En_Wiz_Brock/z_en_wiz_brock.h"
#define FLAGS \
@ -1250,7 +1251,8 @@ void EnWiz_UpdateDamage(EnWiz* this, PlayState* play) {
(this->drawDmgEffType != ACTOR_DRAW_DMGEFF_FROZEN_NO_SFX)) ||
(this->drawDmgEffTimer == 0)) {
Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG, this->actor.focus.pos.x,
this->actor.focus.pos.y, this->actor.focus.pos.z, 0, 0, 0, CLEAR_TAG_LARGE_LIGHT_RAYS);
this->actor.focus.pos.y, this->actor.focus.pos.z, 0, 0, 0,
CLEAR_TAG_PARAMS(CLEAR_TAG_LARGE_LIGHT_RAYS));
this->drawDmgEffTimer = 40;
this->drawDmgEffType = ACTOR_DRAW_DMGEFF_LIGHT_ORBS;
attackDealsDamage = true;