mirror of https://github.com/zeldaret/mm.git
ClearTag Params Cleanup (#1308)
* clearTag params * header ordering * brackets * cleanup * add note
This commit is contained in:
parent
2aa028c20f
commit
6d94e0ce9b
|
@ -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,
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -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));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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] =
|
||||
|
|
|
@ -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]);
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -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) &&
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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)) {
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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)) {
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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;
|
||||
|
|
Loading…
Reference in New Issue