From ed18ce257068804cb119f990230f0d66b15eece2 Mon Sep 17 00:00:00 2001 From: Rainchus Date: Fri, 29 Nov 2024 13:21:31 -0600 Subject: [PATCH] implement some enums related to eEC_BUSH_HAPPA --- include/ef_effect_control.h | 5 +++++ src/actor/ac_effectbg.c | 14 +++++++------- src/effect/ef_young_tree.c | 24 ++++++++++-------------- 3 files changed, 22 insertions(+), 21 deletions(-) diff --git a/include/ef_effect_control.h b/include/ef_effect_control.h index 97160b35..4d851886 100644 --- a/include/ef_effect_control.h +++ b/include/ef_effect_control.h @@ -20,6 +20,11 @@ extern "C" { #define eEC_DEFAULT_DEATH_DIST (800.0f) #define eEC_IGNORE_DEATH_DIST (-1000.203064f) // ignore death range check when set to this +#define eEC_BUSH_HAPPA_TREE (0 << 13) +#define eEC_BUSH_HAPPA_PALM (1 << 13) +#define eEC_BUSH_HAPPA_CEDAR (2 << 13) +#define eEC_BUSH_HAPPA_GOLD (3 << 13) + enum effect_type { eEC_EFFECT_SHOCK, eEC_EFFECT_DUST, diff --git a/src/actor/ac_effectbg.c b/src/actor/ac_effectbg.c index db80bed0..a2706b44 100644 --- a/src/actor/ac_effectbg.c +++ b/src/actor/ac_effectbg.c @@ -646,17 +646,17 @@ static void EffectBG_Make_Leafs(EffectBg_c* efbg, GAME* game, xyz_t pos, s16 cou } } else if (type == EffectBG_EFFECT_CUT_RIGHT_PALM) { bush_yuki_type = 0; - bush_happa_type = 0x2000 | 4; + bush_happa_type = eEC_BUSH_HAPPA_PALM | 4; } else if (type == EffectBG_EFFECT_CUT_RIGHT_CEDAR) { bush_yuki_type = 0; - bush_happa_type = 0x4000 | 4; + bush_happa_type = eEC_BUSH_HAPPA_CEDAR | 4; } else if (type == EffectBG_EFFECT_CUT_RIGHT_GOLD) { bush_yuki_type = 0; if (Common_Get(time).term_idx == mTM_TERM_4) { - bush_happa_type = 0x4000 | 0x2000 | 6; + bush_happa_type = eEC_BUSH_HAPPA_CEDAR | eEC_BUSH_HAPPA_PALM | 6; } else { - bush_happa_type = 0x4000 | 0x2000 | 4; + bush_happa_type = eEC_BUSH_HAPPA_CEDAR | eEC_BUSH_HAPPA_PALM | 4; } } else { if (Common_Get(time).term_idx == 4) { @@ -669,11 +669,11 @@ static void EffectBG_Make_Leafs(EffectBg_c* efbg, GAME* game, xyz_t pos, s16 cou } if ((efbg->status & EffectBg_STATUS_GOLD) != 0 || efbg->variant == EffectBG_VARIANT_GOLD_SMALL) { - bush_happa_type |= 0x4000 | 0x2000; + bush_happa_type |= eEC_BUSH_HAPPA_CEDAR | eEC_BUSH_HAPPA_PALM; } else if ((efbg->status & EffectBg_STATUS_PALM) != 0 || efbg->variant == EffectBG_VARIANT_PALM_SMALL) { - bush_happa_type |= 0x2000; + bush_happa_type |= eEC_BUSH_HAPPA_PALM; } else if ((efbg->status & EffectBg_STATUS_CEDAR) != 0 || efbg->variant == EffectBG_VARIANT_CEDAR_SMALL) { - bush_happa_type |= 0x4000; + bush_happa_type |= eEC_BUSH_HAPPA_CEDAR; } while (count-- != 0) { diff --git a/src/effect/ef_young_tree.c b/src/effect/ef_young_tree.c index 023c661c..4e795775 100644 --- a/src/effect/ef_young_tree.c +++ b/src/effect/ef_young_tree.c @@ -84,30 +84,26 @@ static void eYoung_Tree_mv(eEC_Effect_c* effect, GAME* game) { } else { uVar2 = 4; } - + if (effect->arg1 == 1) { - uVar2 |= 0x2000; + uVar2 |= eEC_BUSH_HAPPA_PALM; } else if (effect->arg1 == 2) { - uVar2 |= 0x4000; + uVar2 |= eEC_BUSH_HAPPA_CEDAR; } else if (effect->arg1 == 3) { - uVar2 |= 0x6000; + uVar2 |= eEC_BUSH_HAPPA_PALM | eEC_BUSH_HAPPA_CEDAR; } - + effPos.x = effPos.x + fqrand2() * 30.0f; effPos.y = effPos.y + fqrand() * 30.0f; uVar2 |= 0x8000; - - (*Common_Get(clip.effect_clip)->effect_make_proc)( - 0x33, effPos, 2, 0, game, 0xFFFF, 0, uVar2 - ); - + + eEC_CLIP->effect_make_proc(eEC_EFFECT_BUSH_HAPPA, effPos, 2, 0, game, 0xFFFF, 0, uVar2); + if (effect->effect_specific[0] == 3) { effPos2 = effect->position; effPos2.x = effPos2.x + fqrand2() * 30.0f; effPos2.y = effPos2.y + fqrand() * 30.0f; - (*Common_Get(clip.effect_clip)->effect_make_proc)( - 0x34, effPos2, 2, 0, game, 0xFFFF, 0, 0 - ); + eEC_CLIP->effect_make_proc(eEC_EFFECT_BUSH_YUKI, effPos2, 2, 0, game, 0xFFFF, 0, 0); } } } @@ -176,7 +172,7 @@ static void eYoung_Tree_dw(eEC_Effect_c* effect, GAME* game) { } else if (effect->arg1 == 2) { if (effect->effect_specific[0] == 3) { gSPDisplayList(NEXT_POLY_XLU_DISP, &ef_w_young_cedar_modelT); - } else{ + } else { gSPDisplayList(NEXT_POLY_XLU_DISP, &ef_s_young_cedar_modelT); } } else if (effect->effect_specific[0] == 3) {