From 1506d57893fb00fbdd6b93f2a58a604e172258c3 Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Sat, 28 Sep 2024 22:32:03 +0200 Subject: [PATCH 01/19] document: Blubber actor from TTC --- include/enums.h | 14 +++-- include/functions.h | 2 +- include/prop.h | 2 +- manual_syms.pal.txt | 2 +- src/BGS/ch/tanktup.c | 2 +- src/FP/code_ABD0.c | 2 +- src/MM/ch/conga.c | 2 +- src/SM/code_2990.c | 2 +- src/SM/code_44D0.c | 2 +- src/TTC/ch/blubber.c | 128 +++++++++++++++++++++----------------- src/TTC/code_26D0.c | 4 +- src/core2/ba/carriedobj.c | 2 +- src/core2/ch/mole.c | 4 +- src/core2/code_47BD0.c | 4 +- src/core2/code_599E0.c | 4 +- src/core2/code_7AF80.c | 2 +- src/core2/code_85800.c | 10 +-- src/core2/code_9E370.c | 2 +- src/lair/ch/cauldron.c | 2 +- src/lair/code_0.c | 2 +- src/lair/code_C6C0.c | 2 +- 21 files changed, 107 insertions(+), 89 deletions(-) diff --git a/include/enums.h b/include/enums.h index 543185ca..88800112 100644 --- a/include/enums.h +++ b/include/enums.h @@ -828,7 +828,7 @@ enum sfx_e SFX_24_KONGA_NOISE_3, // might be part of Clankers Bolt SFX_25_METAL_SLIDING_OVER_SMTH, - SFX_26_BANJO_LANDING_09, + SFX_26_BANJO_LANDING_09 = 0x26, SFX_27_JINJO_HI, SFX_28_RUSTLING_NOISE, SFX_29_GRUBLIN_NYAHAHA, @@ -1859,6 +1859,10 @@ enum actor_e ACTOR_146_GV_KAZOOIE_TARGET, ACTOR_147_ANCIENT_ONE, + ACTOR_149_TTC_BLUBBER_UNKNOWN = 0x149, + ACTOR_14A_TTC_BLUBBER_UNKNOWN = 0x14a, + ACTOR_14B_TTC_BLUBBER_UNKNOWN = 0x14b, + ACTOR_14E_BGS_ELEVATED_WALKWAY_SWITCH = 0x14E, ACTOR_14F_DESTROYED_JIGGY, @@ -3983,9 +3987,9 @@ enum asset_e ASSET_8A0_SPRITE_WATER_DROP = 0x8a0, - ASSET_A0B_TEXT_UNKNOWN = 0xA0B, - ASSET_A0C_TEXT_UNKNOWN = 0xA0C, - ASSET_A0D_TEXT_UNKNOWN = 0xA0D, + ASSET_A0B_FIRST_MEET_BLUBBER = 0xA0B, + ASSET_A0C_BLUBBER_HALF_GOLD = 0xA0C, + ASSET_A0D_BLUBBER_COMPLETE = 0xA0D, ASSET_A14_TEXT_UNKNOWN = 0xA14, @@ -4002,7 +4006,7 @@ enum asset_e ASSET_A27_TEXT_BOTTLES_ALL_TTC_MOVES_LEARNED, ASSET_A28_TEXT_LEAKY_DONE, - ASSET_A2A_TEXT_UNKNOWN = 0xA2A, + ASSET_A2A_BLUBBER_COMPLETE_JIGGY_COLLECTED = 0xA2A, ASSET_A6F_TEXT_CHARMER_MEET = 0xA6F, ASSET_A70_TEXT_CHARMER_HELPED, diff --git a/include/functions.h b/include/functions.h index 244ecfcf..2d3424a0 100644 --- a/include/functions.h +++ b/include/functions.h @@ -475,7 +475,7 @@ void func_80352CF4(f32 *, f32 *, f32, f32); AnimCtrl *baanim_getAnimCtrlPtr(void); void player_setYPosition(f32); -NodeProp *func_80304C38(enum actor_e arg0, Actor *arg1); +NodeProp *nodeprop_findByActorIdAndActorPosition(enum actor_e arg0, Actor *arg1); NodeProp *func_80304CAC(s32 arg0, f32 position[3]); Actor *actorArray_findClosestActorFromActorId(f32 position[3], enum actor_e actor_id, s32 arg2, f32 *min_distance_ptr); Actor *subaddie_getLinkedActor(Actor *); diff --git a/include/prop.h b/include/prop.h index a147b9be..01b29b20 100644 --- a/include/prop.h +++ b/include/prop.h @@ -165,7 +165,7 @@ typedef struct actor_s{ u32 is_bundle:1; AnimCtrl *animctrl; ActorAnimationInfo *unk18; - TUPLE(f32, unk1C); + TUPLE(f32, unk1C); // actor position? f32 actor_specific_1_f; //used in cheggs TUPLE(f32, velocity); u32 unk38_31:10; diff --git a/manual_syms.pal.txt b/manual_syms.pal.txt index 09228322..d19c2e88 100644 --- a/manual_syms.pal.txt +++ b/manual_syms.pal.txt @@ -201,7 +201,7 @@ func_802F9FD0 = 0x802fa1b0; func_802FA060 = 0x802fa240; func_802FADD4 = 0x802fafb4; cubeList_findNodePropByActorId = 0x80304b6c; -func_80304C38 = 0x80304dd8; +nodeprop_findByActorIdAndActorPosition = 0x80304dd8; nodeprop_getPosition_s32 = 0x80304eec; nodeprop_getPosition = 0x80304f08; func_80309B48 = 0x80309ce8; diff --git a/src/BGS/ch/tanktup.c b/src/BGS/ch/tanktup.c index 25c51d87..df66dbf8 100644 --- a/src/BGS/ch/tanktup.c +++ b/src/BGS/ch/tanktup.c @@ -100,7 +100,7 @@ void func_8038F6A4(Actor *this) NodeProp *temp_v0; if (!this->initialized) { - temp_v0 = func_80304C38(ACTOR_32B_UNKNOWN, this); + temp_v0 = nodeprop_findByActorIdAndActorPosition(ACTOR_32B_UNKNOWN, this); if (temp_v0 == 0) { local->unk18[0] = 3672.0f; diff --git a/src/FP/code_ABD0.c b/src/FP/code_ABD0.c index 1dfee22f..bfe33b33 100644 --- a/src/FP/code_ABD0.c +++ b/src/FP/code_ABD0.c @@ -211,7 +211,7 @@ void func_80391744(Actor *this, Actor* other){ void *sp24; f32 tmp_f0; - sp24 = func_80304C38(0x22A, this); + sp24 = nodeprop_findByActorIdAndActorPosition(0x22A, this); tmp_f0 = (f32)func_80304DA8(sp24); other->yaw = tmp_f0; this->yaw = tmp_f0; diff --git a/src/MM/ch/conga.c b/src/MM/ch/conga.c index 78f748fa..93a4f665 100644 --- a/src/MM/ch/conga.c +++ b/src/MM/ch/conga.c @@ -221,7 +221,7 @@ void func_803876D0(Actor *this){ this->initialized = TRUE; this->velocity_x = 0.0f; this->actor_specific_1_f = 0.0f; - node_prop = func_80304C38(0x150, this); + node_prop = nodeprop_findByActorIdAndActorPosition(0x150, this); ((ActorLocal_Conga *)&this->local)->unk1C = nodeprop_getRadius(node_prop); nodeprop_getPosition_s32(node_prop, &((ActorLocal_Conga *)&this->local)->unk10); } diff --git a/src/SM/code_2990.c b/src/SM/code_2990.c index c9ad4143..826d8e4f 100644 --- a/src/SM/code_2990.c +++ b/src/SM/code_2990.c @@ -409,7 +409,7 @@ void chsmmole_Update(Actor * this){ this->initialized = TRUE; marker_setFreeMethod(this->marker, func_80389984); if(this->unkF4_8 == 1 || this->unkF4_8 == 8){//L80389A30 - sp40 = func_80304C38(0x349, this); + sp40 = nodeprop_findByActorIdAndActorPosition(0x349, this); if(!sp40){ this->unk1C_x = this->position_x; this->unk1C_y = this->position_y; diff --git a/src/SM/code_44D0.c b/src/SM/code_44D0.c index 0cb02104..966c9834 100644 --- a/src/SM/code_44D0.c +++ b/src/SM/code_44D0.c @@ -28,7 +28,7 @@ void func_8038A8F8(Actor *this){ NodeProp *other; if(!this->volatile_initialized){ - other = func_80304C38(0x3be, this); + other = nodeprop_findByActorIdAndActorPosition(0x3be, this); if(!other){ this->unk1C_x = this->position_x; this->unk1C_y = this->position_y; diff --git a/src/TTC/ch/blubber.c b/src/TTC/ch/blubber.c index 60b05ed8..0aeb7c01 100644 --- a/src/TTC/ch/blubber.c +++ b/src/TTC/ch/blubber.c @@ -11,16 +11,31 @@ typedef struct { s16 unkE; f32 throw_target_position[3]; s32 throw_target_radius; - NodeProp* unk20; - s32 unk24; + NodeProp* gold_bullion_throw_target_node_prop; + s32 unk24; // bullions left to collect ? (changes from 4 to 0) }ActorLocal_Blubber; -void func_803878CC(Actor *this); -void TTC_func_80387CF4(Actor *this); -Actor *func_80387D6C(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); +void TTC_Blubber_updateFunc(Actor *this); +void TTC_Blubber_update2Func(Actor *this); +Actor *TTC_Blubber_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); + +enum ttc_blubber_map_flags_e { + TTC_BLUBBER_MAP_FLAG_0_UNKNOWN = 0, + TTC_BLUBBER_MAP_FLAG_1_UNKNOWN = 1, // If this is not set some things will not run like showing the jiggy collected text + TTC_BLUBBER_MAP_FLAG_2_JIGGY_SPAWNED_TEXT_SHOWN = 2, // Jiggy collected text shown + TTC_BLUBBER_MAP_FLAG_3_SHOW_JIGGY_SPAWNED_TEXT_FLAG = 3 +}; + +enum ttc_blubber_states_e { + TTC_BLUBBER_STATE_1_UNKNOWN = 1, // initial state (80387A84) + TTC_BLUBBER_STATE_2_UNKNOWN = 2, // 80387B10 + TTC_BLUBBER_STATE_3_UNKNOWN = 3, + TTC_BLUBBER_STATE_4_UNKNOWN = 4, // 80387C04 + TTC_BLUBBER_STATE_5_UNKNOWN = 5 // 80387CD4 +}; /* .data */ -ActorAnimationInfo D_8038C4E0[] = { +ActorAnimationInfo TTC_BLUBBER_ACTOR_ANIMATIONS[6] = { {0x00, 0.0f}, {ASSET_B5_ANIM_BLUBBER_WALK, 2.0f}, {ASSET_B6_ANIM_BLUBBER_CRY, 2.0f}, @@ -29,75 +44,74 @@ ActorAnimationInfo D_8038C4E0[] = { {ASSET_B8_ANIM_BLUBBER_RUN, 0.8f} }; -ActorInfo TTC_D_8038C510 = { +ActorInfo TTC_BLUBBER_ACTOR_INFO = { MARKER_A3_BLUBBER, ACTOR_115_BLUBBER, ASSET_370_MODEL_BLUBBER, - 0x1, D_8038C4E0, - func_803878CC, TTC_func_80387CF4, func_80387D6C, + 0x1, TTC_BLUBBER_ACTOR_ANIMATIONS, + TTC_Blubber_updateFunc, TTC_Blubber_update2Func, TTC_Blubber_drawFunc, 0, 0x399, 1.8f, 0 }; /* .code */ -void func_80387490(Actor *this){ +void TTC_Blubber_initiliaze(Actor *this){ ActorLocal_Blubber *local = (ActorLocal_Blubber *)&this->local; animctrl_setTransitionDuration(this->animctrl, 0.2f); this->initialized = TRUE; - local->unk20 = func_80304C38(ACTOR_2B_GOLD_BULLION_THROW_TARGET, this); - if(local->unk20){ - - nodeprop_getPosition(local->unk20, local->throw_target_position); - local->throw_target_radius = nodeprop_getRadius(local->unk20); + local->gold_bullion_throw_target_node_prop = nodeprop_findByActorIdAndActorPosition(ACTOR_2B_GOLD_BULLION_THROW_TARGET, this); + if(local->gold_bullion_throw_target_node_prop){ + nodeprop_getPosition(local->gold_bullion_throw_target_node_prop, local->throw_target_position); + local->throw_target_radius = nodeprop_getRadius(local->gold_bullion_throw_target_node_prop); } local->unk24 = 4; func_8032A82C(this, 0x14C); } -void func_80387520(ActorMarker *caller, enum asset_e text_id, s32 arg1){ +void TTC_Blubber_showTextCallback(ActorMarker *caller, enum asset_e text_id, s32 arg1){ Actor *this = marker_getActor(caller); ActorLocal_Blubber *local = (ActorLocal_Blubber*)&this->local; - if(text_id == 0xa0d || text_id == 0xa2a){ + if(text_id == ASSET_A0D_BLUBBER_COMPLETE || text_id == ASSET_A2A_BLUBBER_COMPLETE_JIGGY_COLLECTED){ local->unk24 = 0; } else{ - subaddie_set_state_with_direction(this, 2, 0, 1); + subaddie_set_state_with_direction(this, TTC_BLUBBER_STATE_2_UNKNOWN, 0, 1); } } -void func_80387574(ActorMarker *caller, enum asset_e text_id, s32 arg1){ +void TTC_Blubber_showTextCallback2(ActorMarker *caller, enum asset_e text_id, s32 arg1){ f32 sp24[3]; - if(nodeProp_findPositionFromActorId(0x14b, sp24)){ + if(nodeProp_findPositionFromActorId(ACTOR_14B_TTC_BLUBBER_UNKNOWN, sp24)){ jiggy_spawn(JIGGY_14_TTC_BLUBBER, sp24); __spawnQueue_add_4((GenFunction_4)spawnQueue_actor_f32, ACTOR_4C_STEAM, reinterpret_cast(s32, sp24[0]), reinterpret_cast(s32, sp24[1]), reinterpret_cast(s32, sp24[2])); } } -void func_803875D4(ActorMarker *marker){ +void TTC_Blubber_showJiggySpawnedText(ActorMarker *marker){ Actor *this = marker_getActor(reinterpret_cast(ActorMarker *, marker)); enum asset_e text_id; - subaddie_set_state(this, 4); + subaddie_set_state(this, TTC_BLUBBER_STATE_4_UNKNOWN); actor_loopAnimation(this); this->actor_specific_1_f = 0.0f; - if(!mapSpecificFlags_get(2)) { - text_id = jiggyscore_isCollected(JIGGY_14_TTC_BLUBBER) ? ASSET_A2A_TEXT_UNKNOWN : ASSET_A0D_TEXT_UNKNOWN; - gcdialog_showText(text_id, 0xf, this->position, this->marker, func_80387520, func_80387574); - mapSpecificFlags_set(2, TRUE); + if(!mapSpecificFlags_get(TTC_BLUBBER_MAP_FLAG_2_JIGGY_SPAWNED_TEXT_SHOWN)) { + text_id = jiggyscore_isCollected(JIGGY_14_TTC_BLUBBER) ? ASSET_A2A_BLUBBER_COMPLETE_JIGGY_COLLECTED : ASSET_A0D_BLUBBER_COMPLETE; + gcdialog_showText(text_id, 0xf, this->position, this->marker, TTC_Blubber_showTextCallback, TTC_Blubber_showTextCallback2); + mapSpecificFlags_set(TTC_BLUBBER_MAP_FLAG_2_JIGGY_SPAWNED_TEXT_SHOWN, TRUE); } } -void func_80387678(Actor *this){ - if( !mapSpecificFlags_get(1) ) return; - if( mapSpecificFlags_get(3) ) return; +void TTC_Blubber_checkJiggySpawnedTextAndAdvanceState(Actor *this){ + if( !mapSpecificFlags_get(TTC_BLUBBER_MAP_FLAG_1_UNKNOWN) ) return; + if( mapSpecificFlags_get(TTC_BLUBBER_MAP_FLAG_3_SHOW_JIGGY_SPAWNED_TEXT_FLAG) ) return; this->yaw_ideal = (f32) func_80329784(this); - mapSpecificFlags_set(3, TRUE); + mapSpecificFlags_set(TTC_BLUBBER_MAP_FLAG_3_SHOW_JIGGY_SPAWNED_TEXT_FLAG, TRUE); func_8028F918(2); timed_setStaticCameraToNode(0.0f, 4); - timedFunc_set_1(1.0f, (GenFunction_1)func_803875D4, (s32)this->marker); - subaddie_set_state_with_direction(this, 1, 0.0f, 1); + timedFunc_set_1(1.0f, (GenFunction_1)TTC_Blubber_showJiggySpawnedText, (s32)this->marker); + subaddie_set_state_with_direction(this, TTC_BLUBBER_STATE_1_UNKNOWN, 0.0f, 1); } void func_8038771C(Actor *this){ @@ -108,6 +122,7 @@ void func_8038771C(Actor *this){ } } +// probably something related to blubber throwing the bullions void func_80387774(Actor **this_ptr){ ActorLocal_Blubber *local = (ActorLocal_Blubber *)&(*this_ptr)->local; @@ -115,8 +130,8 @@ void func_80387774(Actor **this_ptr){ if( func_80329530(*this_ptr, 200) && bacarry_get_markerId() == MARKER_37_GOLD_BULLION && player_throwCarriedObject() - ){ - func_8028FA34(!mapSpecificFlags_get(0)? 0x149 : 0x14a, *this_ptr); + ) { + func_8028FA34(!mapSpecificFlags_get(TTC_BLUBBER_MAP_FLAG_0_UNKNOWN) ? ACTOR_149_TTC_BLUBBER_UNKNOWN : ACTOR_14A_TTC_BLUBBER_UNKNOWN, *this_ptr); (*this_ptr)->has_met_before = TRUE; } @@ -126,21 +141,21 @@ void func_80387830(Actor *this , f32 arg1, f32 arg2){ if( actor_animationIsAt(this, arg1) || actor_animationIsAt(this, arg2) ){ - this->unk10_12 = func_802E0970(0x26, 0.75f, 0.85f, 0.05f, 11000, this->unk10_12, this->position); + this->unk10_12 = func_802E0970(SFX_26_BANJO_LANDING_09, 0.75f, 0.85f, 0.05f, 11000, this->unk10_12, this->position); } } -void func_803878CC(Actor * this){ +void TTC_Blubber_updateFunc(Actor * this){ ActorLocal_Blubber *local; this->marker->propPtr->unk8_3 = TRUE; func_8028E668(this->position, 90.0f, -10.0f, 110.0f); - if(!mapSpecificFlags_get(1) && !func_80329530(this, 2500)) + if(!mapSpecificFlags_get(TTC_BLUBBER_MAP_FLAG_1_UNKNOWN) && !func_80329530(this, 2500)) return; if(!this->volatile_initialized){ - if(this->state == 3){ - subaddie_set_state_with_direction(this, 2, 0.0f, 1); + if(this->state == TTC_BLUBBER_STATE_3_UNKNOWN){ + subaddie_set_state_with_direction(this, TTC_BLUBBER_STATE_2_UNKNOWN, 0.0f, 1); } this->volatile_initialized = TRUE; }//L80387970 @@ -149,44 +164,43 @@ void func_803878CC(Actor * this){ && !this->has_met_before && item_getCount(ITEM_18_GOLD_BULLIONS) == 0 ){ - gcdialog_showText(ASSET_A0B_TEXT_UNKNOWN, 0xe, this->position, this->marker, func_80387520, NULL); + gcdialog_showText(ASSET_A0B_FIRST_MEET_BLUBBER, 0xe, this->position, this->marker, TTC_Blubber_showTextCallback, NULL); this->has_met_before = TRUE; - subaddie_set_state_forward(this, 3); + subaddie_set_state_forward(this, TTC_BLUBBER_STATE_3_UNKNOWN); } - if( mapSpecificFlags_get(0) + if( mapSpecificFlags_get(TTC_BLUBBER_MAP_FLAG_0_UNKNOWN) && !this->unk138_23 ){ if (item_getCount(ITEM_18_GOLD_BULLIONS) == 0) { - gcdialog_showText(ASSET_A0C_TEXT_UNKNOWN, 4, NULL, NULL, NULL, NULL); + gcdialog_showText(ASSET_A0C_BLUBBER_HALF_GOLD, 4, NULL, NULL, NULL, NULL); } this->unk138_23 = TRUE; this->has_met_before = TRUE; - }//L80387A54 switch(this->state){//D_8038CD40 - case 1:// 80387A84 + case TTC_BLUBBER_STATE_1_UNKNOWN: if(!this->initialized){ actor_collisionOff(this); - func_80387490(this); + TTC_Blubber_initiliaze(this); } func_80387774(&this); - if(subaddie_maybe_set_state_position_direction(this, 2, 0.0f, 1, 0.007f)) + if(subaddie_maybe_set_state_position_direction(this, TTC_BLUBBER_STATE_2_UNKNOWN, 0.0f, 1, 0.007f)) break; func_80328FB0(this, 3.0f); func_8038771C(this); func_80387830(this, 0.14f, 0.68f); - func_80387678(this); + TTC_Blubber_checkJiggySpawnedTextAndAdvanceState(this); break; - case 2:// 80387B10 + case TTC_BLUBBER_STATE_2_UNKNOWN: func_80387774(&this); if( actor_animationIsAt(this, 0.99f) - && subaddie_maybe_set_state_position_direction(this, 1, 0.0f, 1, 0.78f) + && subaddie_maybe_set_state_position_direction(this, TTC_BLUBBER_STATE_1_UNKNOWN, 0.0f, 1, 0.78f) ){ this->actor_specific_1_f = 4.0f; break; @@ -204,18 +218,18 @@ void func_803878CC(Actor * this){ FUNC_8030E8B4(SFX_83_BLUBBER_CRYING, 0.91f, 17000, this->position, 1250, 2500); } - func_80387678(this); + TTC_Blubber_checkJiggySpawnedTextAndAdvanceState(this); break; - case 3: + case TTC_BLUBBER_STATE_3_UNKNOWN: break; - case 4:// 80387C04 + case TTC_BLUBBER_STATE_4_UNKNOWN: { func_80328FB0(this, 3.0f); local = (ActorLocal_Blubber*)&this->local; if(actor_animationIsAt(this, 0.99f) && !local->unk24){ - subaddie_set_state(this, 5); + subaddie_set_state(this, TTC_BLUBBER_STATE_5_UNKNOWN); this->actor_specific_1_f = 8.0f; } } @@ -231,14 +245,14 @@ void func_803878CC(Actor * this){ } break; - case 5:// 80387CD4 + case TTC_BLUBBER_STATE_5_UNKNOWN: local = (ActorLocal_Blubber*)&this->local; func_8032A95C(this, local->unkE, 0x21c); break; } } -void TTC_func_80387CF4(Actor *this){ +void TTC_Blubber_update2Func(Actor *this){ func_80343DEC(this); if(0.99 <= this->unk48){ func_8028F918(0); @@ -248,7 +262,7 @@ void TTC_func_80387CF4(Actor *this){ func_80387830(this, 0.5f, 0.97f); } -Actor *func_80387D6C(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ +Actor *TTC_Blubber_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ func_8033A45C(4, 0); return actor_draw(marker, gfx, mtx, vtx); } diff --git a/src/TTC/code_26D0.c b/src/TTC/code_26D0.c index 9f8ab9ba..020e2199 100644 --- a/src/TTC/code_26D0.c +++ b/src/TTC/code_26D0.c @@ -6,7 +6,7 @@ #include "actor.h" extern ActorInfo chClam; -extern ActorInfo TTC_D_8038C510; +extern ActorInfo TTC_BLUBBER_ACTOR_INFO; extern ActorInfo D_8038C580; extern ActorInfo D_8038C5E0; extern ActorInfo D_8038C604; @@ -94,7 +94,7 @@ void TTC_func_80388AC0(void) spawnableActorList_add(&D_8038C5E0, actor_new, ACTOR_FLAG_NONE); spawnableActorList_add(&D_8038C604, actor_new, ACTOR_FLAG_NONE); spawnableActorList_add(&D_8038C580, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_20 | ACTOR_FLAG_UNKNOWN_26); - spawnableActorList_add(&TTC_D_8038C510, actor_new, ACTOR_FLAG_UNKNOWN_0 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_26); + spawnableActorList_add(&TTC_BLUBBER_ACTOR_INFO, actor_new, ACTOR_FLAG_UNKNOWN_0 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_26); spawnableActorList_add(&D_8038C718, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_8); spawnableActorList_add(&D_8038C790, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); spawnableActorList_add(&D_8038C7B4, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); diff --git a/src/core2/ba/carriedobj.c b/src/core2/ba/carriedobj.c index 94ed884f..80c7a81e 100644 --- a/src/core2/ba/carriedobj.c +++ b/src/core2/ba/carriedobj.c @@ -56,7 +56,7 @@ void bacarriedobj_spawn(enum actor_e actor_id){ void func_8028DEEC(enum actor_e actor_id, Actor *actor){ f32 sp1C[3]; - nodeprop_getPosition(func_80304C38(actor_id, actor), sp1C); + nodeprop_getPosition(nodeprop_findByActorIdAndActorPosition(actor_id, actor), sp1C); set_throw_target_position(sp1C); } diff --git a/src/core2/ch/mole.c b/src/core2/ch/mole.c index 50f4f2f3..63af4bdf 100644 --- a/src/core2/ch/mole.c +++ b/src/core2/ch/mole.c @@ -349,7 +349,7 @@ void chmole_update(Actor *this){ if(!this->initialized){ // Checks if player is within radius of a specific actor exists within the same cube // If actor exists and player is within radius, force trigger conversation - node_prop = func_80304C38(0x372, this); + node_prop = nodeprop_findByActorIdAndActorPosition(0x372, this); if(node_prop == NULL){ this->unk38_0 = FALSE; } @@ -363,7 +363,7 @@ void chmole_update(Actor *this){ this->marker->collidable = FALSE; this->initialized = TRUE; if(this->unkF4_8 == 0x12){ - node_prop = func_80304C38(0x349, this); + node_prop = nodeprop_findByActorIdAndActorPosition(0x349, this); if(node_prop == NULL){ this->velocity[0] = this->position[0]; this->velocity[1] = this->position[1]; diff --git a/src/core2/code_47BD0.c b/src/core2/code_47BD0.c index 06bed9a5..dba28ccc 100644 --- a/src/core2/code_47BD0.c +++ b/src/core2/code_47BD0.c @@ -142,7 +142,7 @@ void func_802CEEA4(Actor *this, Struct_core2_47BD0_0 *arg1) { } -void func_802CEF54(Actor *this, f32 arg1[3], f32 arg2){ +void func_802CEF54(Actor *this, f32 arg1[3], f32 distance){ f32 sp34[3]; s32 phi_v1; s32 phi_v0; @@ -153,7 +153,7 @@ void func_802CEF54(Actor *this, f32 arg1[3], f32 arg2){ phi_v1 = (this->state == 5) ? 200 : 50; phi_v0 = (this->state == 5) ? 200 : 100; - func_802CEDE4(sp34, this->unk1C, arg2, &this->actor_specific_1_f, (f32) phi_v1, (f32) phi_v0); + func_802CEDE4(sp34, this->unk1C, distance, &this->actor_specific_1_f, (f32) phi_v1, (f32) phi_v0); this->unk1C[0] = this->unk1C[0] + arg1[0]; this->unk1C[1] = this->unk1C[1] + arg1[1]; this->unk1C[2] = this->unk1C[2] + arg1[2]; diff --git a/src/core2/code_599E0.c b/src/core2/code_599E0.c index 4859fe94..c70bb9b8 100644 --- a/src/core2/code_599E0.c +++ b/src/core2/code_599E0.c @@ -2,13 +2,13 @@ #include "functions.h" #include "variables.h" -s32 func_802E0970(s32 arg0, f32 arg1, f32 arg2, f32 arg3, s32 arg4, bool arg5, f32 arg6[3]) { +s32 func_802E0970(enum sfx_e sfxId, f32 arg1, f32 arg2, f32 arg3, s32 sampleRate, bool arg5, f32 position[3]) { f32 temp_f0; f32 phi_f2; phi_f2 = (arg5) ? arg1 : arg2; temp_f0 = arg3 * 0.5; - func_8030E878(arg0, randf2(phi_f2 - temp_f0, phi_f2 + temp_f0), arg4, arg6, 1000.0f, 2300.0f); + func_8030E878(sfxId, randf2(phi_f2 - temp_f0, phi_f2 + temp_f0), sampleRate, position, 1000.0f, 2300.0f); return NOT(arg5); } diff --git a/src/core2/code_7AF80.c b/src/core2/code_7AF80.c index 0c524242..b5fe619a 100644 --- a/src/core2/code_7AF80.c +++ b/src/core2/code_7AF80.c @@ -995,7 +995,7 @@ NodeProp *cubeList_findNodePropByActorId(enum actor_e actor_id, s32 position[3]) return NULL; } -NodeProp *func_80304C38(enum actor_e actor_id, Actor *actor){ +NodeProp *nodeprop_findByActorIdAndActorPosition(enum actor_e actor_id, Actor *actor){ s32 tmp_position[3]; s32 *position; diff --git a/src/core2/code_85800.c b/src/core2/code_85800.c index e9f3eea6..21784de7 100644 --- a/src/core2/code_85800.c +++ b/src/core2/code_85800.c @@ -39,7 +39,7 @@ typedef struct { u8 unk40; u8 unk41; u8 busy; - u8 unk43_7:3; + u8 unk43_7:3; // value is set to 1, 2 or 3 u8 unk43_4:3; u8 unk43_1:2; }SfxSource; @@ -420,11 +420,11 @@ void func_8030D644(void){ } } -void func_8030D6C4(enum sfx_e uid, f32 arg1, s32 arg2, s32 arg3, s32 arg4){ +void func_8030D6C4(enum sfx_e uid, f32 arg1, s32 sampleRate, s32 arg3, s32 arg4){ u8 indx = sfxsource_createSfxsourceAndReturnIndex(); if(indx){ sfxsource_setSfxId(indx, uid); - sfxsource_setSampleRate(indx, arg2); + sfxsource_setSampleRate(indx, sampleRate); sfxsource_playSfxAtVolume(indx, arg1); func_8030DCCC(indx, arg3); func_8030DD14(indx, 1); @@ -850,8 +850,8 @@ void func_8030E4E4(enum sfx_e uid){ func_8030D6C4(uid, 1.0f, 22000, 0, 0); } -void sfxsource_play(enum sfx_e uid, s32 sample_rate){ - func_8030D6C4(uid, 1.0f, sample_rate, 0, 2); +void sfxsource_play(enum sfx_e uid, s32 sampleRate){ + func_8030D6C4(uid, 1.0f, sampleRate, 0, 2); } void func_8030E540(enum sfx_e uid){ diff --git a/src/core2/code_9E370.c b/src/core2/code_9E370.c index 97643bbf..d79c4bd7 100644 --- a/src/core2/code_9E370.c +++ b/src/core2/code_9E370.c @@ -1932,7 +1932,7 @@ void func_8032A82C(Actor *arg0, s32 arg1) { Actorlocal_Core2_9E370 *sp1C; sp1C = &arg0->local; - sp24 = func_80304C38(arg1, arg0); + sp24 = nodeprop_findByActorIdAndActorPosition(arg1, arg0); if (sp24 != NULL) { sp1C->unkC = func_80304DA8(sp24); nodeprop_getPosition(sp24, sp1C->unk0); diff --git a/src/lair/ch/cauldron.c b/src/lair/ch/cauldron.c index bfe7a2b8..4aed22da 100644 --- a/src/lair/ch/cauldron.c +++ b/src/lair/ch/cauldron.c @@ -357,7 +357,7 @@ void chWarpCauldron_update(Actor *this) { volatileFlag_set(VOLATILE_FLAG_1E, 0); func_802D677C(0); func_8028FCAC(); - nodeprop_getPosition(func_80304C38(D_80393620[this->unkF4_8 - 1].unk6, this), sp54); + nodeprop_getPosition(nodeprop_findByActorIdAndActorPosition(D_80393620[this->unkF4_8 - 1].unk6, this), sp54); if (this->unkF4_8 == 7) { func_8028F66C(BS_INTR_36_DINGPOT); func_802BAFE4(0x82); diff --git a/src/lair/code_0.c b/src/lair/code_0.c index 4901b5b3..909097c0 100644 --- a/src/lair/code_0.c +++ b/src/lair/code_0.c @@ -978,7 +978,7 @@ void func_80388450(Actor *actor1, Actor *actor2) { f32 vec1[3]; f32 vec2[3]; - void *actor3 = func_80304C38(0x22A, actor1); + void *actor3 = nodeprop_findByActorIdAndActorPosition(0x22A, actor1); s32 val = func_80304DA8(actor3); actor2->yaw = val; diff --git a/src/lair/code_C6C0.c b/src/lair/code_C6C0.c index d54dc109..1c447534 100644 --- a/src/lair/code_C6C0.c +++ b/src/lair/code_C6C0.c @@ -35,7 +35,7 @@ void func_80392B6C(Actor *this) { marker_despawn(this->marker); return; } - phi_a0 = func_80304C38(0x3BE, this); + phi_a0 = nodeprop_findByActorIdAndActorPosition(0x3BE, this); if (this == NULL) { this->unk1C[0] = -1300.0f; this->unk1C[1] = 250.0f; From ae0e7f6cafc61ddec740f95744353d66bb02243f Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Sat, 28 Sep 2024 23:16:52 +0200 Subject: [PATCH 02/19] document: Lockup from TTC --- include/enums.h | 1 + src/TTC/ch/lockup.c | 98 ++++++++++++++++++++++++--------------------- src/TTC/code_26D0.c | 12 +++--- 3 files changed, 59 insertions(+), 52 deletions(-) diff --git a/include/enums.h b/include/enums.h index 88800112..9d144a0b 100644 --- a/include/enums.h +++ b/include/enums.h @@ -3992,6 +3992,7 @@ enum asset_e ASSET_A0D_BLUBBER_COMPLETE = 0xA0D, ASSET_A14_TEXT_UNKNOWN = 0xA14, + ASSET_A15_TEXT_TTC_LOCKUP_SPAWNED = 0xA15, ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED = 0xa17, diff --git a/src/TTC/ch/lockup.c b/src/TTC/ch/lockup.c index ae66bdde..0b39655c 100644 --- a/src/TTC/ch/lockup.c +++ b/src/TTC/ch/lockup.c @@ -5,15 +5,15 @@ extern void func_802EE6CC(f32[3], s32[4], s32[4], s32, f32, f32, s32, s32, s32); typedef struct { - s32 unk0; - s32 unk4; -}ActorLocal_Lockup; + s32 closed_ticks_counter; + s32 open_ticks_counter; +} ActorLocal_Lockup; -Actor *func_803894C0(ActorMarker *this, Gfx **gfx, Mtx **mtx, Vtx **vtx); -void func_80389600(Actor *this); +Actor *TTC_Lockup_drawFunc(ActorMarker *this, Gfx **gfx, Mtx **mtx, Vtx **vtx); +void TTC_Lockup_updateFunc(Actor *this); /* .data */ -ActorAnimationInfo D_8038C760[] ={ +ActorAnimationInfo TTC_LOCKUP_ANIMATIONS[6] ={ {0, 0.0f}, {ASSET_BC_ANIM_LOCKUP, 8000000.0f}, {ASSET_BC_ANIM_LOCKUP, 4.0f}, @@ -22,55 +22,61 @@ ActorAnimationInfo D_8038C760[] ={ {ASSET_BC_ANIM_LOCKUP, 8000000.0f} }; -ActorInfo D_8038C790 = { +ActorInfo TTC_LOCKUP_ACTOR_LOCKUP_SLOW = { MARKER_A4_LOCKUP_SLOW, ACTOR_151_LOCKUP_SLOW, ASSET_3D4_MODEL_LOCKUP, - 1, D_8038C760, - func_80389600, func_80326224, func_803894C0, + 1, TTC_LOCKUP_ANIMATIONS, + TTC_Lockup_updateFunc, func_80326224, TTC_Lockup_drawFunc, 2500, 0x366, 0.0f, 0 }; -ActorInfo D_8038C7B4 = { +ActorInfo TTC_LOCKUP_ACTOR_LOCKUP_MEDIUM = { MARKER_F6_LOCKUP_MEDIUM, ACTOR_152_LOCKUP_MEDIUM, ASSET_3D4_MODEL_LOCKUP, - 1, D_8038C760, - func_80389600, func_80326224, func_803894C0, + 1, TTC_LOCKUP_ANIMATIONS, + TTC_Lockup_updateFunc, func_80326224, TTC_Lockup_drawFunc, 2500, 0x366, 0.0f, 0 }; -ActorInfo D_8038C7D8 = { +ActorInfo TTC_LOCKUP_ACTOR_LOCKUP_FAST = { MARKER_F7_LOCKUP_FAST, ACTOR_153_LOCKUP_FAST, ASSET_3D4_MODEL_LOCKUP, - 1, D_8038C760, - func_80389600, func_80326224, func_803894C0, + 1, TTC_LOCKUP_ANIMATIONS, + TTC_Lockup_updateFunc, func_80326224, TTC_Lockup_drawFunc, 2500, 0x366, 0.0f, 0 }; -s32 D_8038C7FC[4] = {120, 120, 120, 120}; -s32 D_8038C80C[4] = {0,0,0,0}; +s32 TTC_LOCKUP_CLOSE_COLOR[4] = {120, 120, 120, 120}; +s32 TTC_LOCKUP_CLOSE_VELOCITY[3] = {0,0,0}; + +enum ttc_lockup_states_e { + TTC_LOCKUP_STATE_CLOSED = 1, // lockup closed (L803896F0) + TTC_LOCKUP_STATE_OPENING = 2, // lockup opened (L803897DC) + TTC_LOCKUP_STATE_OPEN = 3, // L80389864 + TTC_LOCKUP_STATE_CLOSING = 4, // L803898F4 + TTC_LOCKUP_STATE_CLOSING2 = 5 // L803898F4 +}; /* .code */ -Actor *func_803894C0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ +Actor *TTC_Lockup_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ Actor * actor = marker_getActor(marker); func_8033A45C(3, actor->unk38_31); func_8033A45C(4, actor->unk38_31); actor_draw(marker, gfx, mtx, vtx); - } -void TTC_func_80389530(Actor *this){ - subaddie_set_state_with_direction(this, 1, 0.2f, 1); +void TTC_Lockup_close(Actor *this){ + subaddie_set_state_with_direction(this, TTC_LOCKUP_STATE_CLOSED, 0.2f, 1); this->marker->collidable = FALSE; this->unk38_31 = 0; FUNC_8030E8B4(SFX_6C_LOCKUP_CLOSING, 1.0f, 32000, this->position, 1250, 2500); - } -void func_8038959C(Actor *this){ +void TTC_Lockup_open(Actor *this){ func_80389468(); - subaddie_set_state_with_direction(this, 2, 0.2f, 1); + subaddie_set_state_with_direction(this, TTC_LOCKUP_STATE_OPENING, 0.2f, 1); this->unk38_31 = 1; FUNC_8030E8B4(SFX_6B_LOCKUP_OPENING, 1.0f, 32000, this->position, 1250, 2500); } -void func_80389600(Actor *this){ +void TTC_Lockup_updateFunc(Actor *this){ ActorLocal_Lockup *local = (ActorLocal_Lockup *)&this->local; s32 tmp_v1; int i; @@ -81,25 +87,25 @@ void func_80389600(Actor *this){ && func_80329530(this, 320) && !func_80329530(this, 160) && !func_8028ECAC() - && gcdialog_showText(0xA15, 0, NULL, NULL, NULL, NULL) + && gcdialog_showText(ASSET_A15_TEXT_TTC_LOCKUP_SPAWNED, 0, NULL, NULL, NULL, NULL) ){ this->has_met_before = TRUE; - }//L803896AC + } if(!this->volatile_initialized){ this->volatile_initialized = TRUE; } switch(this->state){ - case 1: //L803896F0 + case TTC_LOCKUP_STATE_CLOSED: if(!this->initialized){ this->marker->propPtr->unk8_3 = TRUE; - subaddie_set_state_with_direction(this, 1, 0.2f, 1); + subaddie_set_state_with_direction(this, TTC_LOCKUP_STATE_CLOSED, 0.2f, 1); this->marker->collidable = FALSE; this->unk38_31 = 0; this->initialized = TRUE; - }//L80389758 - local->unk0++; + } + local->closed_ticks_counter++; tmp_v1 = (this->modelCacheIndex == ACTOR_151_LOCKUP_SLOW) ? 0x1E : (this->modelCacheIndex == ACTOR_152_LOCKUP_MEDIUM) ? 0x14 : @@ -107,47 +113,47 @@ void func_80389600(Actor *this){ 10000; - if(!(local->unk0 < tmp_v1)){ - local->unk0 = 0; - func_8038959C(this); + if(!(local->closed_ticks_counter < tmp_v1)){ + local->closed_ticks_counter = 0; + TTC_Lockup_open(this); } break; - case 2: //L803897DC + case TTC_LOCKUP_STATE_OPENING: if(subaddie_playerIsWithinSphere(this, 400) && func_8028FB48(0x8000000)){ func_8028F428(0xA, this->marker); } if(actor_animationIsAt(this, 0.5f)){ - subaddie_set_state_with_direction(this, 3, 0.5f, 1); + subaddie_set_state_with_direction(this, TTC_LOCKUP_STATE_OPEN, 0.5f, 1); } if(0.15 < animctrl_getAnimTimer(this->animctrl)){ this->marker->collidable = TRUE; } break; - case 3: //L80389864 - local->unk4++; + case TTC_LOCKUP_STATE_OPEN: + local->open_ticks_counter++; tmp_v1 = (this->modelCacheIndex == ACTOR_151_LOCKUP_SLOW) ? 0x1E : (this->modelCacheIndex == ACTOR_152_LOCKUP_MEDIUM) ? 0x14 : (this->modelCacheIndex == ACTOR_153_LOCKUP_FAST) ? 0xA : 10000; - if(!(local->unk4 < tmp_v1)){ - local->unk4 = 0; - subaddie_set_state_with_direction(this, 4, 0.5f, 1); + if(!(local->open_ticks_counter < tmp_v1)){ + local->open_ticks_counter = 0; + subaddie_set_state_with_direction(this, TTC_LOCKUP_STATE_CLOSING, 0.5f, 1); } break; - case 4: //L803898F4 - case 5: //L803898F4 + case TTC_LOCKUP_STATE_CLOSING: + case TTC_LOCKUP_STATE_CLOSING2: if(this->marker->unk14_21 && actor_animationIsAt(this, 0.99f)){ - TTC_func_80389530(this); + TTC_Lockup_close(this); for(i = 5; i < 0xe; i++){ func_8034A174(this->marker->unk44, i, this->unk1C); - func_802EE6CC(this->unk1C, D_8038C80C, D_8038C7FC, 1, 0.4f, 50.0f, 0xb4, 0xa0, 0); + func_802EE6CC(this->unk1C, TTC_LOCKUP_CLOSE_VELOCITY, TTC_LOCKUP_CLOSE_COLOR, 1, 0.4f, 50.0f, 0xb4, 0xa0, 0); } } break; - }//L8038999C + } } diff --git a/src/TTC/code_26D0.c b/src/TTC/code_26D0.c index 020e2199..5f535acd 100644 --- a/src/TTC/code_26D0.c +++ b/src/TTC/code_26D0.c @@ -17,9 +17,9 @@ extern ActorInfo D_8038C694; extern ActorInfo D_8038C6B8; extern ActorInfo D_8038C6DC; extern ActorInfo D_8038C718; -extern ActorInfo D_8038C790; -extern ActorInfo D_8038C7B4; -extern ActorInfo D_8038C7D8; +extern ActorInfo TTC_LOCKUP_ACTOR_LOCKUP_SLOW; +extern ActorInfo TTC_LOCKUP_ACTOR_LOCKUP_MEDIUM; +extern ActorInfo TTC_LOCKUP_ACTOR_LOCKUP_FAST; extern ActorInfo D_8038C8B0; extern ActorInfo D_8038C8D4; extern ActorInfo D_8038C8F8; @@ -96,9 +96,9 @@ void TTC_func_80388AC0(void) spawnableActorList_add(&D_8038C580, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_20 | ACTOR_FLAG_UNKNOWN_26); spawnableActorList_add(&TTC_BLUBBER_ACTOR_INFO, actor_new, ACTOR_FLAG_UNKNOWN_0 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_26); spawnableActorList_add(&D_8038C718, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_8); - spawnableActorList_add(&D_8038C790, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); - spawnableActorList_add(&D_8038C7B4, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); - spawnableActorList_add(&D_8038C7D8, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); + spawnableActorList_add(&TTC_LOCKUP_ACTOR_LOCKUP_SLOW, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); + spawnableActorList_add(&TTC_LOCKUP_ACTOR_LOCKUP_MEDIUM, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); + spawnableActorList_add(&TTC_LOCKUP_ACTOR_LOCKUP_FAST, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); spawnableActorList_add(&D_8038C8B0, actor_new, ACTOR_FLAG_UNKNOWN_10); spawnableActorList_add(&D_8038C8D4, actor_new, ACTOR_FLAG_UNKNOWN_10); spawnableActorList_add(&D_8038C8F8, actor_new, ACTOR_FLAG_UNKNOWN_10); From bedd22fc408c880e8877c839a068367e11a06623 Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Sun, 29 Sep 2024 00:27:02 +0200 Subject: [PATCH 03/19] document: Nipper from TTC --- include/enums.h | 3 + src/TTC/ch/blubber.c | 2 +- src/TTC/ch/lockup.c | 6 +- src/TTC/ch/nipper.c | 149 +++++++++++++++++++++++-------------------- src/TTC/code_26D0.c | 20 +++--- 5 files changed, 96 insertions(+), 84 deletions(-) diff --git a/include/enums.h b/include/enums.h index 9d144a0b..d1233827 100644 --- a/include/enums.h +++ b/include/enums.h @@ -3990,6 +3990,9 @@ enum asset_e ASSET_A0B_FIRST_MEET_BLUBBER = 0xA0B, ASSET_A0C_BLUBBER_HALF_GOLD = 0xA0C, ASSET_A0D_BLUBBER_COMPLETE = 0xA0D, + ASSET_A0E_NIPPER_SPAWNED = 0xA0E, + + ASSET_A10_TEXT_TTC_NIPPER_HURT = 0xA10, ASSET_A14_TEXT_UNKNOWN = 0xA14, ASSET_A15_TEXT_TTC_LOCKUP_SPAWNED = 0xA15, diff --git a/src/TTC/ch/blubber.c b/src/TTC/ch/blubber.c index 0aeb7c01..06f534b3 100644 --- a/src/TTC/ch/blubber.c +++ b/src/TTC/ch/blubber.c @@ -44,7 +44,7 @@ ActorAnimationInfo TTC_BLUBBER_ACTOR_ANIMATIONS[6] = { {ASSET_B8_ANIM_BLUBBER_RUN, 0.8f} }; -ActorInfo TTC_BLUBBER_ACTOR_INFO = { +ActorInfo TTC_BLUBBER_ACTOR = { MARKER_A3_BLUBBER, ACTOR_115_BLUBBER, ASSET_370_MODEL_BLUBBER, 0x1, TTC_BLUBBER_ACTOR_ANIMATIONS, TTC_Blubber_updateFunc, TTC_Blubber_update2Func, TTC_Blubber_drawFunc, diff --git a/src/TTC/ch/lockup.c b/src/TTC/ch/lockup.c index 0b39655c..2f097e25 100644 --- a/src/TTC/ch/lockup.c +++ b/src/TTC/ch/lockup.c @@ -22,21 +22,21 @@ ActorAnimationInfo TTC_LOCKUP_ANIMATIONS[6] ={ {ASSET_BC_ANIM_LOCKUP, 8000000.0f} }; -ActorInfo TTC_LOCKUP_ACTOR_LOCKUP_SLOW = { +ActorInfo TTC_LOCKUP_ACTOR_SLOW = { MARKER_A4_LOCKUP_SLOW, ACTOR_151_LOCKUP_SLOW, ASSET_3D4_MODEL_LOCKUP, 1, TTC_LOCKUP_ANIMATIONS, TTC_Lockup_updateFunc, func_80326224, TTC_Lockup_drawFunc, 2500, 0x366, 0.0f, 0 }; -ActorInfo TTC_LOCKUP_ACTOR_LOCKUP_MEDIUM = { +ActorInfo TTC_LOCKUP_ACTOR_MEDIUM = { MARKER_F6_LOCKUP_MEDIUM, ACTOR_152_LOCKUP_MEDIUM, ASSET_3D4_MODEL_LOCKUP, 1, TTC_LOCKUP_ANIMATIONS, TTC_Lockup_updateFunc, func_80326224, TTC_Lockup_drawFunc, 2500, 0x366, 0.0f, 0 }; -ActorInfo TTC_LOCKUP_ACTOR_LOCKUP_FAST = { +ActorInfo TTC_LOCKUP_ACTOR_FAST = { MARKER_F7_LOCKUP_FAST, ACTOR_153_LOCKUP_FAST, ASSET_3D4_MODEL_LOCKUP, 1, TTC_LOCKUP_ANIMATIONS, TTC_Lockup_updateFunc, func_80326224, TTC_Lockup_drawFunc, diff --git a/src/TTC/ch/nipper.c b/src/TTC/ch/nipper.c index 279c44c9..8351d1a9 100644 --- a/src/TTC/ch/nipper.c +++ b/src/TTC/ch/nipper.c @@ -2,12 +2,12 @@ #include "functions.h" #include "variables.h" -void func_80388434(Actor *this); -Actor *func_80387EB0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); +void TTC_Nipper_updateFunc(Actor *this); +Actor *TTC_Nipper_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); /* .data */ -ActorAnimationInfo D_8038C540[] = { +ActorAnimationInfo TTC_NIPPER_ANIMATIONS[8] = { {0x00, 0.0f}, {ASSET_C0_ANIM_NIPPER_IDLE, 2.0f}, {ASSET_BD_ANIM_NIPPER_VULNERABLE, 1.5f}, @@ -18,17 +18,25 @@ ActorAnimationInfo D_8038C540[] = { {0x00, 0.0f} }; -ActorInfo D_8038C580 = { +ActorInfo TTC_NIPPER_ACTOR = { MARKER_A5_NIPPER, ACTOR_117_NIPPER, ASSET_3D5_MODEL_NIPPER, - 0x1, D_8038C540, - func_80388434, func_80326224, func_80387EB0, + 0x1, TTC_NIPPER_ANIMATIONS, + TTC_Nipper_updateFunc, func_80326224, TTC_Nipper_animFunc, 0, 0x299, 10.0f, 0 }; - +enum ttc_lockup_states_e { + TTC_NIPPER_STATE_1_UNKNOWN = 1, // L80388578 + TTC_NIPPER_STATE_2_UNKNOWN = 2, // L8038872C + TTC_NIPPER_STATE_3_UNKNOWN = 3, // L803887B4 + TTC_NIPPER_STATE_DIEING = 4, // L80388910 + TTC_NIPPER_STATE_SPAWNED = 5, // L80388938 + TTC_NIPPER_STATE_DEAD = 6, // L803889A8 + TTC_NIPPER_STATE_7_UNKNOWN = 7 // already dead? L80388A20 +}; /* .code */ -void func_80387DC0(f32 *position, s32 count) { +void TTC_Nipper_drawParticlesAtPosition(f32 *position, s32 count) { static s32 D_8038C5A4[3] = {180, 180, 180}; static ParticleScaleAndLifetimeRanges D_8038C5B0 = { {0.1f, 0.5f}, @@ -57,7 +65,7 @@ void func_80387DC0(f32 *position, s32 count) { particleEmitter_emitN(pCtrl, count); } -Actor *func_80387EB0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) { +Actor *TTC_Nipper_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) { Actor *this; this = marker_getActor(marker); @@ -65,42 +73,44 @@ Actor *func_80387EB0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) { return actor_draw(marker, gfx, mtx, vtx); } -void TTC_func_80387F18(Actor *this) { - subaddie_set_state_looped(this, 3); +void TTC_Nipper_setAnimationDuration(Actor *this) { + subaddie_set_state_looped(this, TTC_NIPPER_STATE_3_UNKNOWN); this->unk1C[0] = 0.0f; switch((s32)this->lifetime_value){ - case 0x78: + case 120: animctrl_setDuration(this->animctrl, 1.2f); break; - case 0x50: + case 80: animctrl_setDuration(this->animctrl, 1.05f); break; - case 0x28: + case 40: animctrl_setDuration(this->animctrl, 0.9f); break; } } -void TTC_func_80387FB0(ActorMarker *caller, enum asset_e text_id, s32 arg2){ +void TTC_Nipper_spawnedShowTextCallback(ActorMarker *caller, enum asset_e text_id, s32 arg2){ Actor *this; this = marker_getActor(caller); - TTC_func_80387F18(this); + TTC_Nipper_setAnimationDuration(this); ncStaticCamera_exit(); comusic_8025AB44(COMUSIC_12_TTC_NIPPER, -1, 300); } -void TTC_func_80387FF4(Actor *this) { +void TTC_Nipper_playDeathAnimation(Actor *this) { s32 i; - subaddie_set_state_with_direction(this, 4, 0.01f, 1); + subaddie_set_state_with_direction(this, TTC_NIPPER_STATE_DIEING, 0.01f, 1); actor_playAnimationOnce(this); for(i = 0; i < 3; i ++){ FUNC_8030E8B4(SFX_79_TICKER_DEATH, 0.5f, 17000, this->position, 1500, 3000); }; } +// if player too far away -> false +// otherwise return whether sp2C is within -35 and 35? bool func_80388088(Actor *this){ f32 sp2C; f32 sp20[3]; @@ -115,11 +125,11 @@ bool func_80388088(Actor *this){ return BOOL(-35.0f < sp2C && sp2C < 35.0f); } -bool func_8038812C(Actor *this){ +bool TTC_Nipper_shouldShowActor(Actor *this){ return BOOL(func_80329530(this, 1300) && func_80388088(this)); } -void func_80388178(ActorMarker *this_marker, ActorMarker *other_marker) { +void TTC_Nipper_dieFunc(ActorMarker *this_marker, ActorMarker *other_marker) { Actor *this; s32 i; @@ -127,31 +137,31 @@ void func_80388178(ActorMarker *this_marker, ActorMarker *other_marker) { func_8032B4DC(this, other_marker, 7); if (this->lifetime_value == 40.0f) { - subaddie_set_state_with_direction(this, 6, 0.01f, 1); + subaddie_set_state_with_direction(this, TTC_NIPPER_STATE_DEAD, 0.01f, 1); actor_playAnimationOnce(this); for(i = 0; i < 3; i++){ FUNC_8030E8B4(SFX_78_EAGLECRY, 0.7f, 20000, this->position, 1500, 3000); }; comusic_8025AB44(COMUSIC_12_TTC_NIPPER, 0, 300); - func_8025AABC(0x12); + func_8025AABC(COMUSIC_12_TTC_NIPPER); func_8032BB88(this, -1, 300); func_802BAFE4(0x1C); return; } if (this->lifetime_value == 80.0f) { - TTC_func_80387FF4(this); + TTC_Nipper_playDeathAnimation(this); this->lifetime_value = 40.0f; return; } - TTC_func_80387FF4(this); + TTC_Nipper_playDeathAnimation(this); this->lifetime_value = 80.0f; - gcdialog_showText(0xA10, 4, NULL, NULL, NULL, NULL); + gcdialog_showText(ASSET_A10_TEXT_TTC_NIPPER_HURT, 4, NULL, NULL, NULL, NULL); return; } -bool func_803882E4(ActorMarker * this_marker, ActorMarker * other_marker){ +bool TTC_Nipper_determineMarkeId(ActorMarker * this_marker, ActorMarker * other_marker){ if(this_marker->unk40_31 == 1){ this_marker->id = 0x16C; } @@ -161,7 +171,7 @@ bool func_803882E4(ActorMarker * this_marker, ActorMarker * other_marker){ return TRUE; } -void func_80388344(ActorMarker * this_marker, ActorMarker *other_marker){ +void TTC_Nipper_ow2Func(ActorMarker * this_marker, ActorMarker *other_marker){ Actor *this; if(other_marker->id == 1){ @@ -175,7 +185,7 @@ void func_80388344(ActorMarker * this_marker, ActorMarker *other_marker){ } } -void func_803883C8(ActorMarker * this_marker, ActorMarker *other_marker){ +void TTC_Nipper_owFunc(ActorMarker * this_marker, ActorMarker *other_marker){ Actor *this = marker_getActor(this_marker); if( !this->unk138_23 && this->has_met_before @@ -185,68 +195,67 @@ void func_803883C8(ActorMarker * this_marker, ActorMarker *other_marker){ } } -void func_80388434(Actor *this){ - f32 sp4C[3]; +void TTC_Nipper_updateFunc(Actor *this){ + f32 particlePosition[3]; s32 sp48; - s32 sp44; - f32 sp38[3]; + s32 xVelocity; + f32 playerPosition[3]; s32 temp_v0; - player_getPosition(sp38); - sp44 = func_80309D58(sp38, 1); + player_getPosition(playerPosition); + xVelocity = func_80309D58(playerPosition, 1); if(!this->volatile_initialized){ this->volatile_initialized = TRUE; - this->velocity_x = sp44; + this->velocity_x = xVelocity; func_8032BC18(this); } - if(this->state != 7){ - // sp30 = sp44; - if(0.0f == this->velocity_x && sp44){ + if(this->state != TTC_NIPPER_STATE_7_UNKNOWN){ + if(0.0f == this->velocity_x && xVelocity){ comusic_8025AB44(COMUSIC_12_TTC_NIPPER, -1, 5000); func_8032BB88(this, 0, 4000); func_8024BD08(0); } - else if(!sp44 && 0.0f != this->velocity_x){ + else if(!xVelocity && 0.0f != this->velocity_x){ comusic_8025AB44(COMUSIC_12_TTC_NIPPER, 0, 300); func_8025AABC(COMUSIC_12_TTC_NIPPER); func_8032BB88(this, -1, 300); func_8024BD08(1); } - this->velocity_x = sp44; - }//L80388554 + this->velocity_x = xVelocity; + } switch(this->state){ - case 1:// L80388578 + case TTC_NIPPER_STATE_1_UNKNOWN: if(!this->initialized){ animctrl_setTransitionDuration(this->animctrl, 0.35f); - subaddie_set_state_with_direction(this, 1, 0.01f, 1); + subaddie_set_state_with_direction(this, TTC_NIPPER_STATE_1_UNKNOWN, 0.01f, 1); this->lifetime_value = 120.0f; this->marker->propPtr->unk8_3 = TRUE; - marker_setCollisionScripts(this->marker, func_803883C8, func_80388344, func_80388178); - func_803300C0(this->marker, func_803882E4); + marker_setCollisionScripts(this->marker, TTC_Nipper_owFunc, TTC_Nipper_ow2Func, TTC_Nipper_dieFunc); + func_803300C0(this->marker, TTC_Nipper_determineMarkeId); this->initialized = TRUE; - }//L8038860C - if(func_8038812C(this)){ + } + + if(TTC_Nipper_shouldShowActor(this)){ temp_v0 = func_8028ECAC(); if( !this->has_met_before && temp_v0 != 1 && temp_v0 != 10 ){ - subaddie_set_state_with_direction(this, 5, 0.01f, 1); - if(gcdialog_showText(0xa0e, 0xf, this->position, this->marker, TTC_func_80387FB0, NULL)){ + subaddie_set_state_with_direction(this, TTC_NIPPER_STATE_SPAWNED, 0.01f, 1); + if(gcdialog_showText(ASSET_A0E_NIPPER_SPAWNED, 0xf, this->position, this->marker, TTC_Nipper_spawnedShowTextCallback, NULL)){ this->has_met_before = TRUE; } comusic_8025AB44(COMUSIC_12_TTC_NIPPER, 5000, 300); ncStaticCamera_setToNode(11); } - else{//L803886B0 - TTC_func_80387F18(this); + else{ + TTC_Nipper_setAnimationDuration(this); } break; } - //L803886C0 if( actor_animationIsAt(this, 0.2f) || actor_animationIsAt(this, 0.2f) || actor_animationIsAt(this, 0.6f) @@ -256,35 +265,35 @@ void func_80388434(Actor *this){ } break; - case 2:// L8038872C - if(!func_8038812C(this)){ - subaddie_set_state_looped(this, 1); + case TTC_NIPPER_STATE_2_UNKNOWN: + if(!TTC_Nipper_shouldShowActor(this)){ + subaddie_set_state_looped(this, TTC_NIPPER_STATE_1_UNKNOWN); break; } if(this->lifetime_value <= this->unk38_31){ - TTC_func_80387F18(this); + TTC_Nipper_setAnimationDuration(this); break; } this->unk38_31++; break; - case 3:// L803887B4 + case TTC_NIPPER_STATE_3_UNKNOWN: if(actor_animationIsAt(this, 0.5f) && this->marker->unk14_21){ - func_8034A174(this->marker->unk44, 6, sp4C); - func_80387DC0(sp4C, 2); + func_8034A174(this->marker->unk44, 6, particlePosition); + TTC_Nipper_drawParticlesAtPosition(particlePosition, 2); } else if(actor_animationIsAt(this, 0.95f) && this->marker->unk14_21){//L80388800 - func_8034A174(this->marker->unk44, 5, sp4C); - func_80387DC0(sp4C, 2); - }//L80388848 + func_8034A174(this->marker->unk44, 5, particlePosition); + TTC_Nipper_drawParticlesAtPosition(particlePosition, 2); + } if(actor_animationIsAt(this, 0.99f)){ this->unk1C[0] += 1.0f; } if(2.0f <= this->unk1C[0]){ - subaddie_set_state_looped(this, 2); + subaddie_set_state_looped(this, TTC_NIPPER_STATE_2_UNKNOWN); this->unk38_31 = 0; break; } @@ -298,13 +307,13 @@ void func_80388434(Actor *this){ } break; - case 4:// L80388910 + case TTC_NIPPER_STATE_DIEING: if(actor_animationIsAt(this, 0.99f)){ - TTC_func_80387F18(this); + TTC_Nipper_setAnimationDuration(this); } break; - case 5:// L80388938 + case TTC_NIPPER_STATE_SPAWNED: if( actor_animationIsAt(this, 0.2f) || actor_animationIsAt(this, 0.2f) || actor_animationIsAt(this, 0.6f) @@ -314,7 +323,7 @@ void func_80388434(Actor *this){ } break; - case 6:// L803889A8 + case TTC_NIPPER_STATE_DEAD: this->marker->collidable = FALSE; if(actor_animationIsAt(this, 0.6f)){ FUNC_8030E8B4(SFX_7C_CHEBOOF, 0.9f, 20000, this->position, 1500, 3000); @@ -322,11 +331,11 @@ void func_80388434(Actor *this){ } if(actor_animationIsAt(this, 0.99f)){ - subaddie_set_state_with_direction(this, 7, 0.01f, 1); + subaddie_set_state_with_direction(this, TTC_NIPPER_STATE_7_UNKNOWN, 0.01f, 1); } break; - case 7:// L80388A20 + case TTC_NIPPER_STATE_7_UNKNOWN: this->marker->collidable = FALSE; break; @@ -342,5 +351,5 @@ bool func_80388A44(s16 arg0[3]){ sp1C[2] = (f32) arg0[2]; nipper = actorArray_findClosestActorFromActorId(sp1C, ACTOR_117_NIPPER, -1, NULL); - return nipper->state == 7; + return nipper->state == TTC_NIPPER_STATE_7_UNKNOWN; } diff --git a/src/TTC/code_26D0.c b/src/TTC/code_26D0.c index 5f535acd..4e625588 100644 --- a/src/TTC/code_26D0.c +++ b/src/TTC/code_26D0.c @@ -6,8 +6,8 @@ #include "actor.h" extern ActorInfo chClam; -extern ActorInfo TTC_BLUBBER_ACTOR_INFO; -extern ActorInfo D_8038C580; +extern ActorInfo TTC_BLUBBER_ACTOR; +extern ActorInfo TTC_NIPPER_ACTOR; extern ActorInfo D_8038C5E0; extern ActorInfo D_8038C604; extern ActorInfo D_8038C628; @@ -17,9 +17,9 @@ extern ActorInfo D_8038C694; extern ActorInfo D_8038C6B8; extern ActorInfo D_8038C6DC; extern ActorInfo D_8038C718; -extern ActorInfo TTC_LOCKUP_ACTOR_LOCKUP_SLOW; -extern ActorInfo TTC_LOCKUP_ACTOR_LOCKUP_MEDIUM; -extern ActorInfo TTC_LOCKUP_ACTOR_LOCKUP_FAST; +extern ActorInfo TTC_LOCKUP_ACTOR_SLOW; +extern ActorInfo TTC_LOCKUP_ACTOR_MEDIUM; +extern ActorInfo TTC_LOCKUP_ACTOR_FAST; extern ActorInfo D_8038C8B0; extern ActorInfo D_8038C8D4; extern ActorInfo D_8038C8F8; @@ -93,12 +93,12 @@ void TTC_func_80388AC0(void) { spawnableActorList_add(&D_8038C5E0, actor_new, ACTOR_FLAG_NONE); spawnableActorList_add(&D_8038C604, actor_new, ACTOR_FLAG_NONE); - spawnableActorList_add(&D_8038C580, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_20 | ACTOR_FLAG_UNKNOWN_26); - spawnableActorList_add(&TTC_BLUBBER_ACTOR_INFO, actor_new, ACTOR_FLAG_UNKNOWN_0 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_26); + spawnableActorList_add(&TTC_NIPPER_ACTOR, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_20 | ACTOR_FLAG_UNKNOWN_26); + spawnableActorList_add(&TTC_BLUBBER_ACTOR, actor_new, ACTOR_FLAG_UNKNOWN_0 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_26); spawnableActorList_add(&D_8038C718, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_8); - spawnableActorList_add(&TTC_LOCKUP_ACTOR_LOCKUP_SLOW, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); - spawnableActorList_add(&TTC_LOCKUP_ACTOR_LOCKUP_MEDIUM, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); - spawnableActorList_add(&TTC_LOCKUP_ACTOR_LOCKUP_FAST, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); + spawnableActorList_add(&TTC_LOCKUP_ACTOR_SLOW, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); + spawnableActorList_add(&TTC_LOCKUP_ACTOR_MEDIUM, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); + spawnableActorList_add(&TTC_LOCKUP_ACTOR_FAST, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); spawnableActorList_add(&D_8038C8B0, actor_new, ACTOR_FLAG_UNKNOWN_10); spawnableActorList_add(&D_8038C8D4, actor_new, ACTOR_FLAG_UNKNOWN_10); spawnableActorList_add(&D_8038C8F8, actor_new, ACTOR_FLAG_UNKNOWN_10); From 41f5312d9c627b512456dde5099659fb72fb24d3 Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Sun, 29 Sep 2024 01:13:07 +0200 Subject: [PATCH 04/19] document: Treasurehunt from TTC --- include/enums.h | 2 + src/TTC/ch/nipper.c | 2 +- src/TTC/ch/treasurehunt.c | 180 +++++++++++++++++++------------------- src/TTC/code_26D0.c | 12 +-- src/core2/ch/gameSelect.c | 2 +- src/core2/code_9A740.c | 2 +- src/core2/code_AD110.c | 16 ++-- 7 files changed, 109 insertions(+), 107 deletions(-) diff --git a/include/enums.h b/include/enums.h index d1233827..efff476c 100644 --- a/include/enums.h +++ b/include/enums.h @@ -3998,6 +3998,8 @@ enum asset_e ASSET_A15_TEXT_TTC_LOCKUP_SPAWNED = 0xA15, ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED = 0xa17, + ASSET_A18_TEXT_TREASUREHUNT_FOLLOW_CLUES = 0xa18, + ASSET_A19_TEXT_TREASUREHUNT_SECOND_STEP = 0xa19, ASSET_A1F_DIALOG_SHOCKJUMP_LEARN = VER_SELECT(0xa1f, 0x91f, 0, 0), ASSET_A20_DIALOG_FLY_LEARN, diff --git a/src/TTC/ch/nipper.c b/src/TTC/ch/nipper.c index 8351d1a9..1d1fcc58 100644 --- a/src/TTC/ch/nipper.c +++ b/src/TTC/ch/nipper.c @@ -25,7 +25,7 @@ ActorInfo TTC_NIPPER_ACTOR = { 0, 0x299, 10.0f, 0 }; -enum ttc_lockup_states_e { +enum ttc_nipper_states_e { TTC_NIPPER_STATE_1_UNKNOWN = 1, // L80388578 TTC_NIPPER_STATE_2_UNKNOWN = 2, // L8038872C TTC_NIPPER_STATE_3_UNKNOWN = 3, // L803887B4 diff --git a/src/TTC/ch/treasurehunt.c b/src/TTC/ch/treasurehunt.c index a8d7490f..b10792df 100644 --- a/src/TTC/ch/treasurehunt.c +++ b/src/TTC/ch/treasurehunt.c @@ -9,13 +9,13 @@ typedef struct { s32 unk0; }ActorLocal_TreasureHunt; -void TTC_func_80389E90(Actor *this); -Actor *func_8038A0D0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); +void TTC_Treasurehunt_updateFunc(Actor *this); +Actor *TTC_Treasurehunt_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); -extern u32 D_8037DCB4; +extern u32 TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP; /* .data */ -f32 D_8038C820[6][3] = { +f32 TTC_TREASUREHUNT_STEP_POSITIONS[6][3] = { {2904.0f, 2458.0f, -7351.0f}, {-7007.0f, 2013.0f, 401.0f}, {-3388.0f, 1519.0f, 5939.0f}, @@ -24,40 +24,41 @@ f32 D_8038C820[6][3] = { {7667.0f, 717.0f, 1676.0f} }; -f32 D_8038C868[6] = { 300.0f, 180.0f, 220.0f, 270.0f, 330.0f, 255.0f}; -s32 D_8038C880[6] = {0x6E, 0xD2, 0x10E, 0x145, 0x14A, 0}; -s32 D_8038C898[6] = { +f32 TTC_TREASUREHUNT_STEP_RED_X_YAWS[6] = { 300.0f, 180.0f, 220.0f, 270.0f, 330.0f, 255.0f }; +s32 TTC_TREASUREHUNT_STEP_YAWS[6] = { 0x6E, 0xD2, 0x10E, 0x145, 0x14A, 0 }; +s32 TTC_TREASUREHUNT_STEP_ACTORS[6] = { ACTOR_53_RED_ARROW, ACTOR_53_RED_ARROW, ACTOR_53_RED_ARROW, ACTOR_53_RED_ARROW, ACTOR_54_RED_QUESTION_MARK, - 0x46 -}; //enum actor_e + ACTOR_46_JIGGY +}; -ActorInfo D_8038C8B0 = { +ActorInfo TTC_TREASUREHUNT_ACTOR_RED_ARROW = { MARKER_62_RED_ARROW, ACTOR_53_RED_ARROW, ASSET_3E9_MODEL_RED_ARROW, 0, NULL, - TTC_func_80389E90, func_80326224, func_8038A0D0, + TTC_Treasurehunt_updateFunc, func_80326224, TTC_Treasurehunt_animFunc, 0, 0x400, 0.0f, 0 }; -ActorInfo D_8038C8D4 = { +ActorInfo TTC_TREASUREHUNT_ACTOR_RED_QUESTION_MARK = { MARKER_63_RED_QUESTION_MARK, ACTOR_54_RED_QUESTION_MARK, ASSET_3EB_MODEL_RED_QUESTION_MARK, 0, NULL, - TTC_func_80389E90, func_80326224, func_8038A0D0, + TTC_Treasurehunt_updateFunc, func_80326224, TTC_Treasurehunt_animFunc, 0, 0x400, 0.0f, 0 }; -ActorInfo D_8038C8F8 = { +ActorInfo TTC_TREASUREHUNT_ACTOR_RED_X = { MARKER_64_RED_X, ACTOR_55_RED_X, ASSET_3EA_MODEL_RED_X, 0, NULL, - TTC_func_80389E90, func_80326224, func_8038A0D0, + TTC_Treasurehunt_updateFunc, func_80326224, TTC_Treasurehunt_animFunc, 0, 0x400, 0.0f, 0 }; -s32 D_8038C91C[3] = {160, 120, 20}; -ParticleScaleAndLifetimeRanges D_8038C928 = { +s32 TTC_TREASUREHUNT_PARTICLE_RGB[3] = {160, 120, 20}; + +ParticleScaleAndLifetimeRanges TTC_TREASUREHUNT_PARTICLE_SCALE_AND_LIFETIME_RANGES = { {1.1f, 1.5f}, {4.0f, 4.6f}, {0.0f, 0.01f}, @@ -65,121 +66,120 @@ ParticleScaleAndLifetimeRanges D_8038C928 = { 0.0f, 0.01f }; -struct42s D_8038C950 = { +struct42s TTC_TREASUREHUNT_VELOCITY_RANGES = { {{-230.0f, 30.0f, -230.0f}, {230.0f, 110.0f, 230.0f}}, {{-60.0f, 0.0f, -60.0f}, {60.0f, 30.0f, 60.0f}}, }; /* .code */ -bool TTC_func_803899C0(void) { - enum comusic_e phi_a0; - s32 phi_a1; +bool TTC_Treasurehunt_isActiveHitboxBeakBusterHitbox(void) { + enum comusic_e comusic_id; + s32 music_volume; if (player_getActiveHitbox(0) == HITBOX_1_BEAK_BUSTER) { - phi_a0 = COMUSIC_2B_DING_B; - phi_a1 = 28000; - if (D_8037DCB4 == 5) { - phi_a0 = COMUSIC_2D_PUZZLE_SOLVED_FANFARE; - phi_a1 = 0x7FFF; + comusic_id = COMUSIC_2B_DING_B; + music_volume = 28000; + if (TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP == 5) { + comusic_id = COMUSIC_2D_PUZZLE_SOLVED_FANFARE; + music_volume = 0x7FFF; } - func_8025A6EC(phi_a0, phi_a1); + func_8025A6EC(comusic_id, music_volume); return TRUE; } return FALSE; } -void func_80389A1C(void) { +void TTC_Treasurehunt_spawnRedXForNextStep(void) { Actor *actor; ActorLocal_TreasureHunt *local; - actor = actor_spawnWithYaw_f32(0x55, D_8038C820[D_8037DCB4], 0); + actor = actor_spawnWithYaw_f32(ACTOR_55_RED_X, TTC_TREASUREHUNT_STEP_POSITIONS[TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP], 0); local = (ActorLocal_TreasureHunt *)&actor->local; - actor->yaw = D_8038C868[D_8037DCB4]; - local->unk0 = D_8037DCB4; + actor->yaw = TTC_TREASUREHUNT_STEP_RED_X_YAWS[TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP]; + local->unk0 = TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP; actor->lifetime_value = 0.0f; actor->state = 0; } -void func_80389A9C(void) { +void TTC_Treasurehunt_spawnActorForNextStep(void) { Actor *actor; ActorLocal_TreasureHunt *local; - s32 actor_id; - actor = actor_spawnWithYaw_f32((D_8038C898 - 1)[D_8037DCB4], D_8038C820[D_8037DCB4 - 1], 0); + actor = actor_spawnWithYaw_f32((TTC_TREASUREHUNT_STEP_ACTORS - 1)[TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP], TTC_TREASUREHUNT_STEP_POSITIONS[TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP - 1], 0); local = (ActorLocal_TreasureHunt *)&actor->local; - actor->yaw = D_8038C880[D_8037DCB4 - 1]; - local->unk0 = D_8037DCB4; + actor->yaw = TTC_TREASUREHUNT_STEP_YAWS[TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP - 1]; + local->unk0 = TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP; actor->lifetime_value = 0.0f; actor->state = 0; } -void func_80389B38(s32 arg0){ - if(D_8037DCB4 == arg0 && TTC_func_803899C0()){ - if(arg0 == 0 && !jiggyscore_isCollected(JIGGY_11_TTC_RED_X)){ - gcdialog_showText(0xA18, 4, NULL, NULL, NULL, NULL); +void TTC_Treasurehunt_checkStepProgress(s32 currentStep){ + if(TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP == currentStep && TTC_Treasurehunt_isActiveHitboxBeakBusterHitbox()){ + if(currentStep == 0 && !jiggyscore_isCollected(JIGGY_11_TTC_RED_X)){ + gcdialog_showText(ASSET_A18_TEXT_TREASUREHUNT_FOLLOW_CLUES, 4, NULL, NULL, NULL, NULL); } - else if(arg0 == 4){ - gcdialog_showText(0xA19, 4, NULL, NULL, NULL, NULL); + else if(currentStep == 4){ + gcdialog_showText(ASSET_A19_TEXT_TREASUREHUNT_SECOND_STEP, 4, NULL, NULL, NULL, NULL); } - D_8037DCB4++; - __spawnQueue_add_0(func_80389A9C); - __spawnQueue_add_0(func_80389A1C); + TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP++; + __spawnQueue_add_0(TTC_Treasurehunt_spawnActorForNextStep); + __spawnQueue_add_0(TTC_Treasurehunt_spawnRedXForNextStep); } } -void TTC_func_80389BFC(ActorMarker *this, ActorMarker *arg1){\ - func_80389B38(0); +void TTC_Treasurehunt_checkStepProgress0(ActorMarker *this, ActorMarker *arg1){\ + TTC_Treasurehunt_checkStepProgress(0); } -void func_80389C24(ActorMarker *this, ActorMarker *arg1){\ - func_80389B38(1); +void TTC_Treasurehunt_checkStepProgress1(ActorMarker *this, ActorMarker *arg1){\ + TTC_Treasurehunt_checkStepProgress(1); } -void func_80389C4C(ActorMarker *this, ActorMarker *arg1){\ - func_80389B38(2); +void TTC_Treasurehunt_checkStepProgress2(ActorMarker *this, ActorMarker *arg1){\ + TTC_Treasurehunt_checkStepProgress(2); } -void func_80389C74(ActorMarker *this, ActorMarker *arg1){\ - func_80389B38(3); +void TTC_Treasurehunt_checkStepProgress3(ActorMarker *this, ActorMarker *arg1){\ + TTC_Treasurehunt_checkStepProgress(3); } -void func_80389C9C(ActorMarker *this, ActorMarker *arg1){\ - func_80389B38(4); +void TTC_Treasurehunt_checkStepProgress4(ActorMarker *this, ActorMarker *arg1){\ + TTC_Treasurehunt_checkStepProgress(4); } -void func_80389CC4(s16 arg0[3], s32 arg1){ - static ParticleEmitter *D_8038D700; - static f32 D_8038D708[3]; +void TTC_Treasurehunt_checkStepProgress5(s16 arg0[3], s32 arg1){ + static ParticleEmitter *particleEmitter; + static f32 particleTargetPosition[3]; - if(D_8037DCB4 == 5 && TTC_func_803899C0()){ - D_8038D708[0] = (f32)arg0[0]; - D_8038D708[1] = (f32)arg0[1]; - D_8038D708[2] = (f32)arg0[2]; - D_8038D708[1] = mapModel_getFloorY(D_8038D708); - __spawnQueue_add_4((GenFunction_4)spawnQueue_actor_f32, 0xF4, reinterpret_cast(s32, D_8038D708[0]), reinterpret_cast(s32, D_8038D708[1]), reinterpret_cast(s32, D_8038D708[2])); - D_8038D700 = partEmitMgr_newEmitter(3); - particleEmitter_setRGB(D_8038D700, D_8038C91C); - particleEmitter_setSprite(D_8038D700, ASSET_700_SPRITE_DUST); - particleEmitter_setStartingFrameRange(D_8038D700, 0, 7); - particleEmitter_setPosition(D_8038D700, D_8038D708); - particleEmitter_setPositionAndVelocityRanges(D_8038D700, &D_8038C950); - particleEmitter_setScaleAndLifetimeRanges(D_8038D700, &D_8038C928); - particleEmitter_emitN(D_8038D700, 5); - D_8038D708[2] += 300.0f; + if(TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP == 5 && TTC_Treasurehunt_isActiveHitboxBeakBusterHitbox()){ + particleTargetPosition[0] = (f32)arg0[0]; + particleTargetPosition[1] = (f32)arg0[1]; + particleTargetPosition[2] = (f32)arg0[2]; + particleTargetPosition[1] = mapModel_getFloorY(particleTargetPosition); + __spawnQueue_add_4((GenFunction_4)spawnQueue_actor_f32, 0xF4, reinterpret_cast(s32, particleTargetPosition[0]), reinterpret_cast(s32, particleTargetPosition[1]), reinterpret_cast(s32, particleTargetPosition[2])); + particleEmitter = partEmitMgr_newEmitter(3); + particleEmitter_setRGB(particleEmitter, TTC_TREASUREHUNT_PARTICLE_RGB); + particleEmitter_setSprite(particleEmitter, ASSET_700_SPRITE_DUST); + particleEmitter_setStartingFrameRange(particleEmitter, 0, 7); + particleEmitter_setPosition(particleEmitter, particleTargetPosition); + particleEmitter_setPositionAndVelocityRanges(particleEmitter, &TTC_TREASUREHUNT_VELOCITY_RANGES); + particleEmitter_setScaleAndLifetimeRanges(particleEmitter, &TTC_TREASUREHUNT_PARTICLE_SCALE_AND_LIFETIME_RANGES); + particleEmitter_emitN(particleEmitter, 5); + particleTargetPosition[2] += 300.0f; gcpausemenu_80314AC8(0); - timedFunc_set_2(0.1f, (GenFunction_2) func_8028F45C, 9, (s32)&D_8038D708); + timedFunc_set_2(0.1f, (GenFunction_2) func_8028F45C, 9, (s32)&particleTargetPosition); timedFunc_set_1(0.1f, (GenFunction_1) gcpausemenu_80314AC8, 1); gcdialog_showText(ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED, 4, NULL, NULL, NULL, NULL); - D_8037DCB4++; - }//L80389E70 + TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP++; + } } -void ttc_resetTresureHunt(void){ - D_8037DCB4 = 0; +void TTC_Treasurehunt_resetProgress(void){ + TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP = 0; } -void TTC_func_80389E90(Actor *this){ +void TTC_Treasurehunt_updateFunc(Actor *this){ f32 tick = time_getDelta(); ActorLocal_TreasureHunt *local = (ActorLocal_TreasureHunt*)&this->local; f64 tmp_f12; @@ -191,28 +191,28 @@ void TTC_func_80389E90(Actor *this){ } switch(this->state){ - case 0://L80389F20 + case 0: this->lifetime_value = MIN(255.0, this->lifetime_value + tick*150.0); if(255.0 == this->lifetime_value){ this->state = 1; } break; - case 1://L80389F94 - if(local->unk0 < D_8037DCB4){ + case 1: + if(local->unk0 < TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP){ this->state = 2; } break; - case 2://L80389FC4 + case 2: this->lifetime_value = MAX(0.0, this->lifetime_value - tick*((this->marker->modelId == ASSET_3EA_MODEL_RED_X)? 200.0 : 150.0)); if(0.0 == this->lifetime_value) marker_despawn(this->marker); break; - }//L8038A094 + } actor_setOpacity(this, (s32)this->lifetime_value); this->depth_mode = 2; } -Actor *func_8038A0D0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ +Actor *TTC_Treasurehunt_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ f32 sp4C[3]; f32 sp40[3]; f32 sp3C; @@ -221,19 +221,19 @@ Actor *func_8038A0D0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ actor = marker_getActorAndRotation(marker, sp4C); switch(marker->modelId){ - case ASSET_3E9_MODEL_RED_ARROW://L8038A12C + case ASSET_3E9_MODEL_RED_ARROW: sp3C = 1.0f; sp38 = 8.0f; break; - case ASSET_3EB_MODEL_RED_QUESTION_MARK: //L8038A14C + case ASSET_3EB_MODEL_RED_QUESTION_MARK: sp3C = 1.0f; sp38 = 8.0f; break; - case ASSET_3EA_MODEL_RED_X://L8038A164 - sp3C = (((ActorLocal_TreasureHunt *)&actor->local)->unk0 == 5)? 0.8f : 0.4f; + case ASSET_3EA_MODEL_RED_X: + sp3C = (((ActorLocal_TreasureHunt *)&actor->local)->unk0 == 5) ? 0.8f : 0.4f; sp38 = 4.0f; break; - }//L8038A1A0 + } sp40[0] = actor->position[0]; sp40[1] = actor->position[1] + sp38; sp40[2] = actor->position[2]; diff --git a/src/TTC/code_26D0.c b/src/TTC/code_26D0.c index 4e625588..f7d945dd 100644 --- a/src/TTC/code_26D0.c +++ b/src/TTC/code_26D0.c @@ -20,9 +20,9 @@ extern ActorInfo D_8038C718; extern ActorInfo TTC_LOCKUP_ACTOR_SLOW; extern ActorInfo TTC_LOCKUP_ACTOR_MEDIUM; extern ActorInfo TTC_LOCKUP_ACTOR_FAST; -extern ActorInfo D_8038C8B0; -extern ActorInfo D_8038C8D4; -extern ActorInfo D_8038C8F8; +extern ActorInfo TTC_TREASUREHUNT_ACTOR_RED_ARROW; +extern ActorInfo TTC_TREASUREHUNT_ACTOR_RED_QUESTION_MARK; +extern ActorInfo TTC_TREASUREHUNT_ACTOR_RED_X; extern ActorInfo gChTreasureInfo; void TTC_func_80388C78(Actor *this); @@ -99,9 +99,9 @@ void TTC_func_80388AC0(void) spawnableActorList_add(&TTC_LOCKUP_ACTOR_SLOW, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); spawnableActorList_add(&TTC_LOCKUP_ACTOR_MEDIUM, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); spawnableActorList_add(&TTC_LOCKUP_ACTOR_FAST, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); - spawnableActorList_add(&D_8038C8B0, actor_new, ACTOR_FLAG_UNKNOWN_10); - spawnableActorList_add(&D_8038C8D4, actor_new, ACTOR_FLAG_UNKNOWN_10); - spawnableActorList_add(&D_8038C8F8, actor_new, ACTOR_FLAG_UNKNOWN_10); + spawnableActorList_add(&TTC_TREASUREHUNT_ACTOR_RED_ARROW, actor_new, ACTOR_FLAG_UNKNOWN_10); + spawnableActorList_add(&TTC_TREASUREHUNT_ACTOR_RED_QUESTION_MARK, actor_new, ACTOR_FLAG_UNKNOWN_10); + spawnableActorList_add(&TTC_TREASUREHUNT_ACTOR_RED_X, actor_new, ACTOR_FLAG_UNKNOWN_10); spawnableActorList_add(&gChTreasureInfo, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_25); spawnableActorList_add(&D_8038C628, actor_new, ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_9 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_15); spawnableActorList_add(&D_8038C64C, actor_new, ACTOR_FLAG_UNKNOWN_10); diff --git a/src/core2/ch/gameSelect.c b/src/core2/ch/gameSelect.c index 570c89cb..ef261c86 100644 --- a/src/core2/ch/gameSelect.c +++ b/src/core2/ch/gameSelect.c @@ -80,7 +80,7 @@ ActorInfo D_80365F00 = { 0xE6, 0x197, 0x532, 0x1, D_80365ED0, func_802C4C14, fun /* .bss */ s32 mm_hut_smash_count; -u32 D_8037DCB4; +u32 TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP; struct FF_StorageStruct* D_8037DCB8; s32 D_8037DCBC; u8 D_8037DCC0[7]; diff --git a/src/core2/code_9A740.c b/src/core2/code_9A740.c index 9fb56644..bd4cff13 100644 --- a/src/core2/code_9A740.c +++ b/src/core2/code_9A740.c @@ -54,7 +54,7 @@ void func_803216D0(enum map_e map){ mm_resetHuts(); break; case MAP_7_TTC_TREASURE_TROVE_COVE: - ttc_resetTresureHunt(); + TTC_Treasurehunt_resetProgress(); break; case MAP_1B_MMM_MAD_MONSTER_MANSION: mmm_resetFlowerPots(); diff --git a/src/core2/code_AD110.c b/src/core2/code_AD110.c index 78b689b1..18bbdb5e 100644 --- a/src/core2/code_AD110.c +++ b/src/core2/code_AD110.c @@ -291,12 +291,12 @@ extern void warp_lairEnterLairFromSMLevel(s32, s32); extern void func_802C1674(s32, s32); extern void func_802C169C(s32, s32); -extern void TTC_func_80389BFC(s32, s32); -extern void func_80389C24(s32, s32); -extern void func_80389C4C(s32, s32); -extern void func_80389C74(s32, s32); -extern void func_80389C9C(s32, s32); -extern void func_80389CC4(s32, s32); +extern void TTC_Treasurehunt_checkStepProgress0(s32, s32); +extern void TTC_Treasurehunt_checkStepProgress1(s32, s32); +extern void TTC_Treasurehunt_checkStepProgress2(s32, s32); +extern void TTC_Treasurehunt_checkStepProgress3(s32, s32); +extern void TTC_Treasurehunt_checkStepProgress4(s32, s32); +extern void TTC_Treasurehunt_checkStepProgress5(s32, s32); extern void chMumbo_detransformWarn(s32, s32); extern void chMumbo_detransformTrigger(s32, s32); extern void func_8033443C(s32, s32); @@ -413,8 +413,8 @@ Method_core2_AD110 D_8036FE5C[] ={ func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, - func_8033443C, TTC_func_80389BFC, func_80389C24, func_80389C4C, - func_80389C74, func_80389C9C, func_80389CC4, chMumbo_detransformWarn, + func_8033443C, TTC_Treasurehunt_checkStepProgress0, TTC_Treasurehunt_checkStepProgress1, TTC_Treasurehunt_checkStepProgress2, + TTC_Treasurehunt_checkStepProgress3, TTC_Treasurehunt_checkStepProgress4, TTC_Treasurehunt_checkStepProgress5, chMumbo_detransformWarn, chMumbo_detransformTrigger, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, From 97d2062611b086c8ed46467773982b6531dba566 Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Sun, 29 Sep 2024 01:40:44 +0200 Subject: [PATCH 05/19] Document: Clam from TTC --- include/enums.h | 2 +- src/TTC/ch/clam.c | 93 +++++++++++++++++++++--------------------- src/TTC/code_26D0.c | 4 +- src/core2/code_85800.c | 16 ++++---- 4 files changed, 58 insertions(+), 57 deletions(-) diff --git a/include/enums.h b/include/enums.h index efff476c..b607bee1 100644 --- a/include/enums.h +++ b/include/enums.h @@ -3994,7 +3994,7 @@ enum asset_e ASSET_A10_TEXT_TTC_NIPPER_HURT = 0xA10, - ASSET_A14_TEXT_UNKNOWN = 0xA14, + ASSET_A14_TEXT_CLAM_TAUNT = 0xA14, ASSET_A15_TEXT_TTC_LOCKUP_SPAWNED = 0xA15, ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED = 0xa17, diff --git a/src/TTC/ch/clam.c b/src/TTC/ch/clam.c index c3459864..e3ba44d0 100644 --- a/src/TTC/ch/clam.c +++ b/src/TTC/ch/clam.c @@ -6,41 +6,42 @@ extern void spawnQueue_bundle_f32(s32, s32, s32, s32); extern f32 func_80257204(f32, f32, f32, f32); extern ActorProp * func_80320EB0(ActorMarker *, f32, s32); -void chClam_update(Actor *this); +void TTC_Clam_updateFunc(Actor *this); /* .data */ -ActorAnimationInfo chClamAnimations[] = { +ActorAnimationInfo TTC_CLAM_ANIMATIONS[4] = { {0x00, 0.0f}, {ASSET_AA_ANIM_CLAM_IDLE, 2.0f}, {ASSET_24_ANIM_CLAM_HOP, 1.0f}, {ASSET_AB_ANIM_CLAM_EAT, 0.6f} }; -ActorInfo chClam = { +ActorInfo TTC_CLAM_ACTOR = { MARKER_15_CLAM, ACTOR_69_CLAM, ASSET_351_MODEL_CLAM, - 0x1, chClamAnimations, - chClam_update, func_80326224, actor_draw, + 0x1, TTC_CLAM_ANIMATIONS, + TTC_Clam_updateFunc, func_80326224, actor_draw, 4500, 0x366, 1.6f, 0 }; /* .code */ -void __chClam_func_803863F0(enum sfx_e sfx_id, f32 arg1, s32 arg2, f32 position[3], f32 arg4, f32 arg5){ +void TTC_Clam_playSfx(enum sfx_e sfx_id, f32 volume, s32 sampleRate, f32 position[3], f32 minFadeDistance, f32 maxFadeDistance){ if(func_803114B0()){ - arg2 -= 10000; - if(arg2 < 0) - arg2 = 0; + sampleRate -= 10000; + if(sampleRate < 0) + sampleRate = 0; } - func_8030E878(sfx_id, arg1, arg2, position, arg4, arg5); + + func_8030E878(sfx_id, volume, sampleRate, position, minFadeDistance, maxFadeDistance); } -void __chClam_func_80386454(Actor *this){ +void TTC_Clam_func_80386454(Actor *this){ subaddie_set_state_with_direction(this, 1, 0.01f, 1); actor_loopAnimation(this); animctrl_setDuration(this->animctrl, randf2(1.9f, 2.1f)); } -bool __chClam_updateTarget(Actor *this, f32 arg1) { +bool TTC_Clam_updateFuncTarget(Actor *this, f32 arg1) { f32 egg_dist; f32 red_feather_dist; f32 pad; @@ -88,13 +89,13 @@ bool __chClam_updateTarget(Actor *this, f32 arg1) { if ((volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) ? 0 : 0x11) < this->actor_specific_1_f) { this->actor_specific_1_f = (volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) != 0) ? 0.0f : 17.0f; } else if (sp38 == 0) { - __chClam_func_803863F0(SFX_AE_YUMYUM_TALKING, randf2(0.9f, 1.0f), 22000, this->position, 500.0f, 2000.0f); + TTC_Clam_playSfx(SFX_AE_YUMYUM_TALKING, randf2(0.9f, 1.0f), 22000, this->position, 500.0f, 2000.0f); } return TRUE; } -bool __chClam_rotateTowardTarget(Actor *this, s32 arg1) { +bool TTC_Clam_rotateTowardTarget(Actor *this, s32 arg1) { f32 temp_f0_2; s32 position; s32 sp2C; @@ -104,7 +105,7 @@ bool __chClam_rotateTowardTarget(Actor *this, s32 arg1) { animctrl_setDuration(this->animctrl, 1.0f); sp2C = (s32) ((f64) (60.0f / (f32) func_8033DD90()) * 0.5); - if ((this->unk1C[0] != 0.0f) || !__chClam_updateTarget(this, sp2C)) { + if ((this->unk1C[0] != 0.0f) || !__TTC_Clam_updateFuncTarget(this, sp2C)) { if (((f64) animctrl_getAnimTimer(this->animctrl) < 0.1) && ((f64) randf() < 0.5)) { if (this->unk1C[0] != 0.0f) { arg1 *= 2; @@ -136,7 +137,7 @@ bool __chClam_rotateTowardTarget(Actor *this, s32 arg1) { } -void __chClam_particalEmitterInit(ParticleEmitter *pCtrl, f32 position[3]){ +void TTC_Clam_particalEmitterInit(ParticleEmitter *pCtrl, f32 position[3]){ particleEmitter_setPosition(pCtrl, position); func_802EF9F8(pCtrl, 0.7f); func_802EFA18(pCtrl, 3); @@ -156,7 +157,7 @@ void __chClam_emitLargeShellParticles(f32 position[3], s32 count){ ParticleEmitter *pCtrl; pCtrl = partEmitMgr_newEmitter(count); - __chClam_particalEmitterInit(pCtrl, position); + TTC_Clam_particalEmitterInit(pCtrl, position); particleEmitter_setModel(pCtrl, ASSET_37C_MODEL_CLAM_LARGE_SHELL_PIECE); particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C3F4); particleEmitter_setAngularVelocityRange(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f); @@ -164,7 +165,7 @@ void __chClam_emitLargeShellParticles(f32 position[3], s32 count){ particleEmitter_emitN(pCtrl, count); } -void __chClam_emitEyeParticles(f32 position[3], s32 count){ +void TTC_Clam_emitEyeParticles(f32 position[3], s32 count){ static struct41s D_8038C424 = { {{-80.0f, 400.0f, -80.0f}, {160.0f, 860.0f, 160.0f}}, {{ 0.0f, -1400.0f, 0.0f}, { 0.0f, -1400.0f, 0.0f}} @@ -172,7 +173,7 @@ void __chClam_emitEyeParticles(f32 position[3], s32 count){ ParticleEmitter *pCtrl; pCtrl = partEmitMgr_newEmitter(count); - __chClam_particalEmitterInit(pCtrl, position); + TTC_Clam_particalEmitterInit(pCtrl, position); particleEmitter_setModel(pCtrl, ASSET_37D_MODEL_CLAM_EYE); particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C424); particleEmitter_setAngularVelocityRange(pCtrl, -300.0f, -300.0f, -300.0f, 300.0f, 300.0f, 300.0f); @@ -180,7 +181,7 @@ void __chClam_emitEyeParticles(f32 position[3], s32 count){ particleEmitter_emitN(pCtrl, count); } -void __chClam_emitSmallShellParticles(f32 position[3], s32 count){ +void TTC_Clam_emitSmallShellParticles(f32 position[3], s32 count){ static struct41s D_8038C454 = { {{-200.0f, 850.0f, -200.0f}, {400.0f, 1000.0f, 400.0f}}, {{ 0.0f, -1800.0f, 0.0f}, { 0.0f, -1800.0f, 0.0f}} @@ -188,7 +189,7 @@ void __chClam_emitSmallShellParticles(f32 position[3], s32 count){ ParticleEmitter *pCtrl; pCtrl = partEmitMgr_newEmitter(count); - __chClam_particalEmitterInit(pCtrl, position); + TTC_Clam_particalEmitterInit(pCtrl, position); particleEmitter_setModel(pCtrl, ASSET_37E_MODEL_CLAM_SMALL_SHELL_PIECE); particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C454); particleEmitter_setAngularVelocityRange(pCtrl, -800.0f, -800.0f, -800.0f, 800.0f, 800.0f, 800.0f); @@ -196,7 +197,7 @@ void __chClam_emitSmallShellParticles(f32 position[3], s32 count){ particleEmitter_emitN(pCtrl, count); } -void __chClam_emitEatencollectibleParticles(f32 position[3], enum asset_e sprite_id, s32 count){ +void TTC_Clam_emitEatencollectibleParticles(f32 position[3], enum asset_e sprite_id, s32 count){ static ParticleScaleAndLifetimeRanges D_8038C484 = { {0.2f, 0.35f}, {0.0f, 0.0f}, @@ -221,22 +222,22 @@ void __chClam_emitEatencollectibleParticles(f32 position[3], enum asset_e sprite particleEmitter_emitN(pCtrl, count); } -void __chClam_takeDamage(ActorMarker *this_marker, ActorMarker *other_marker){ +void TTC_Clam_takeDamage(ActorMarker *this_marker, ActorMarker *other_marker){ Actor *this; this = marker_getActor(this_marker); this->marker->collidable = FALSE; this->unk138_27 = TRUE; - __chClam_func_803863F0(SFX_1D_HITTING_AN_ENEMY_1, 1.0f, 26000, this->position, 1500.0f, 2000.0f); - __chClam_func_803863F0(SFX_115_BUZZBOMB_DEATH, 1.2f, 26000, this->position, 1500.0f, 2000.0f); - __chClam_emitLargeShellParticles(this->position, 2); - __chClam_emitEyeParticles(this->position, 2); - __chClam_emitSmallShellParticles(this->position, 0xC); + TTC_Clam_playSfx(SFX_1D_HITTING_AN_ENEMY_1, 1.0f, 26000, this->position, 1500.0f, 2000.0f); + TTC_Clam_playSfx(SFX_115_BUZZBOMB_DEATH, 1.2f, 26000, this->position, 1500.0f, 2000.0f); + TTC_Clam_emitLargeShellParticles(this->position, 2); + TTC_Clam_emitEyeParticles(this->position, 2); + TTC_Clam_emitSmallShellParticles(this->position, 0xC); func_803115C4(0xa14); marker_despawn(this->marker); } -void __chClam_playerDropsItem(s32 index, enum item_e item_id){ +void TTC_Clam_playerDropsItem(s32 index, enum item_e item_id){ f32 position[3]; player_getPosition(position); @@ -245,22 +246,22 @@ void __chClam_playerDropsItem(s32 index, enum item_e item_id){ item_dec(item_id); } -void __chClam_attackOther(ActorMarker *this_marker, ActorMarker *other_marker){ +void TTC_Clam_attackOther(ActorMarker *this_marker, ActorMarker *other_marker){ if(func_80297C6C() == 3) return; - if( !mapSpecificFlags_get(5) && gcdialog_showText(ASSET_A14_TEXT_UNKNOWN, 0, NULL, NULL, NULL, NULL)){ + if( !mapSpecificFlags_get(5) && gcdialog_showText(ASSET_A14_TEXT_CLAM_TAUNT, 0, NULL, NULL, NULL, NULL)){ mapSpecificFlags_set(5, TRUE); } if(item_getCount(ITEM_D_EGGS) != 0) - __chClam_playerDropsItem(0xe, ITEM_D_EGGS); + TTC_Clam_playerDropsItem(0xe, ITEM_D_EGGS); if(item_getCount(ITEM_F_RED_FEATHER) != 0) - __chClam_playerDropsItem(0xf, ITEM_F_RED_FEATHER); + TTC_Clam_playerDropsItem(0xf, ITEM_F_RED_FEATHER); } -void chClam_update(Actor *this){ +void TTC_Clam_updateFunc(Actor *this){ ActorProp *sp4C = func_80320EB0(this->marker, 30.0f, 1); f32 sp48; s32 sp44; @@ -273,7 +274,7 @@ void chClam_update(Actor *this){ if(!this->volatile_initialized){ this->volatile_initialized = TRUE; - marker_setCollisionScripts(this->marker, NULL, __chClam_attackOther, __chClam_takeDamage); + marker_setCollisionScripts(this->marker, NULL, TTC_Clam_attackOther, TTC_Clam_takeDamage); } if(this->state != 3){ @@ -292,16 +293,16 @@ void chClam_update(Actor *this){ animctrl_setDuration(this->animctrl, 0.6f); marker_despawn(sp4C->marker); } - }//L80387140 - }//L80387144 + } + } switch(this->state){ case 1://L80387170 - if(__chClam_rotateTowardTarget(this, 140)){ + if(__TTC_Clam_rotateTowardTarget(this, 140)){ subaddie_set_state_with_direction(this, 2, 0.01f, 1); actor_playAnimationOnce(this); animctrl_setDuration(this->animctrl, 1.0f); - __chClam_func_803863F0(SFX_3F2_UNKNOWN, randf2(1.0f, 1.1f), 22000, this->position, 1500.0f, 2000.0f); + TTC_Clam_playSfx(SFX_3F2_UNKNOWN, randf2(1.0f, 1.1f), 22000, this->position, 1500.0f, 2000.0f); } else{ animctrl_setDuration(this->animctrl, 2.0f); @@ -312,13 +313,13 @@ void chClam_update(Actor *this){ this->position_y += this->velocity_y; this->velocity_y += -5.0f; if(actor_animationIsAt(this, 0.63f)){ - __chClam_func_803863F0(SFX_80_YUMYUM_CLACK, 1.0f, 20000, this->position, 1500.0f, 2000.0f); + TTC_Clam_playSfx(SFX_80_YUMYUM_CLACK, 1.0f, 20000, this->position, 1500.0f, 2000.0f); } if(this->position_y <= sp48){ this->position_y = sp48; if(actor_animationIsAt(this, 0.99f) || 0.98 < animctrl_getAnimTimer(this->animctrl)){ - __chClam_func_80386454(this); + TTC_Clam_func_80386454(this); } } else{//L803872D4 @@ -334,12 +335,12 @@ void chClam_update(Actor *this){ } if(3.0f <= this->velocity_x){ - __chClam_func_80386454(this); + TTC_Clam_func_80386454(this); break; } if(actor_animationIsAt(this, 0.8f) && 2.0f == this->velocity_x){ - __chClam_func_803863F0(SFX_4B_GULPING, randf2(0.8f, 0.9f), 22000, this->position, 700.0f, 2000.0f); + TTC_Clam_playSfx(SFX_4B_GULPING, randf2(0.8f, 0.9f), 22000, this->position, 700.0f, 2000.0f); break; }//L803873C4 @@ -347,15 +348,15 @@ void chClam_update(Actor *this){ if(!this->marker->unk14_21) break; - __chClam_func_803863F0(SFX_4C_LIP_SMACK, 1.0f, 20000, this->position, 500.0f, 2000.0f); + TTC_Clam_playSfx(SFX_4C_LIP_SMACK, 1.0f, 20000, this->position, 500.0f, 2000.0f); func_8034A174(this->marker->unk44, 5, sp38); switch(this->unk38_31){ case MARKER_60_BLUE_EGG_COLLECTIBLE: - __chClam_emitEatencollectibleParticles(sp38, ASSET_718_SPRITE_SPARKLE_WHITE_2, 8); + TTC_Clam_emitEatencollectibleParticles(sp38, ASSET_718_SPRITE_SPARKLE_WHITE_2, 8); break; case MARKER_B5_RED_FEATHER_COLLECTIBLE: - __chClam_emitEatencollectibleParticles(sp38, ASSET_715_SPRITE_SPARKLE_RED, 8); + TTC_Clam_emitEatencollectibleParticles(sp38, ASSET_715_SPRITE_SPARKLE_RED, 8); break; } break; diff --git a/src/TTC/code_26D0.c b/src/TTC/code_26D0.c index f7d945dd..ac7a3872 100644 --- a/src/TTC/code_26D0.c +++ b/src/TTC/code_26D0.c @@ -5,7 +5,7 @@ #include "SnS.h" #include "actor.h" -extern ActorInfo chClam; +extern ActorInfo TTC_CLAM_ACTOR; extern ActorInfo TTC_BLUBBER_ACTOR; extern ActorInfo TTC_NIPPER_ACTOR; extern ActorInfo D_8038C5E0; @@ -109,7 +109,7 @@ void TTC_func_80388AC0(void) spawnableActorList_add(&D_8038C694, actor_new, ACTOR_FLAG_UNKNOWN_10); spawnableActorList_add(&D_8038C6B8, actor_new, ACTOR_FLAG_UNKNOWN_10); spawnableActorList_add(&D_8038C6DC, actor_new, ACTOR_FLAG_UNKNOWN_10); - spawnableActorList_add(&chClam, actor_new, ACTOR_FLAG_UNKNOWN_0 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_25); + spawnableActorList_add(&TTC_CLAM_ACTOR, actor_new, ACTOR_FLAG_UNKNOWN_0 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_25); } void TTC_func_80388C78(Actor *this){ diff --git a/src/core2/code_85800.c b/src/core2/code_85800.c index 21784de7..efb92208 100644 --- a/src/core2/code_85800.c +++ b/src/core2/code_85800.c @@ -899,7 +899,7 @@ void func_8030E760(enum sfx_e uid, f32 arg1, s32 arg2){ func_8030D6C4(uid, arg1, arg2, 0, 0); } -void sfx_play(enum sfx_e uid, f32 arg1, u32 sampleRate, f32 position[3], f32 minFadeDistance, f32 maxFadeDistance, s32 arg6){ +void sfx_play(enum sfx_e uid, f32 volume, u32 sampleRate, f32 position[3], f32 minFadeDistance, f32 maxFadeDistance, s32 arg6){ u8 sfxsource; f32 player_position[3]; @@ -913,7 +913,7 @@ void sfx_play(enum sfx_e uid, f32 arg1, u32 sampleRate, f32 position[3], f32 min func_8030DD90(sfxsource, arg6); // priority ? sfxsource_setSfxId(sfxsource, uid); sfxsource_setSampleRate(sfxsource, sampleRate); - sfxsource_playSfxAtVolume(sfxsource, arg1); // volume ? + sfxsource_playSfxAtVolume(sfxsource, volume); sfxsource_set_fade_distances(sfxsource, minFadeDistance, maxFadeDistance); sfxsource_set_position(sfxsource, position); func_8030DD14(sfxsource, 1); @@ -922,8 +922,8 @@ void sfx_play(enum sfx_e uid, f32 arg1, u32 sampleRate, f32 position[3], f32 min } } -void func_8030E878(enum sfx_e id, f32 arg1, u32 sampleRate, f32 position[3], f32 minFadeDistance, f32 maxFadeDistance){ - sfx_play(id, arg1, sampleRate, position, minFadeDistance, maxFadeDistance, 2); +void func_8030E878(enum sfx_e id, f32 volume, u32 sampleRate, f32 position[3], f32 minFadeDistance, f32 maxFadeDistance){ + sfx_play(id, volume, sampleRate, position, minFadeDistance, maxFadeDistance, 2); } // fadeDistance is a 32-bit value where the lower 16 bits represent minFadeDistance and the upper 16 bits represent maxFadeDistance. @@ -935,12 +935,12 @@ void func_8030E8B4(u32 arg0, f32 position[3], u32 fadeDistance){ ); } -void func_8030E988(enum sfx_e uid, f32 arg1, u32 sampleRate, f32 position[3], f32 minFadeDistance, f32 maxFadeDistance){ - sfx_play(uid, arg1, sampleRate, position, minFadeDistance, maxFadeDistance, 1); +void func_8030E988(enum sfx_e uid, f32 volume, u32 sampleRate, f32 position[3], f32 minFadeDistance, f32 maxFadeDistance){ + sfx_play(uid, volume, sampleRate, position, minFadeDistance, maxFadeDistance, 1); } -void func_8030E9C4(enum sfx_e uid, f32 arg1, u32 sampleRate, f32 position[3], f32 minFadeDistance, f32 maxFadeDistance){ - sfx_play(uid, arg1, sampleRate, position, minFadeDistance, maxFadeDistance, 0); +void func_8030E9C4(enum sfx_e uid, f32 volume, u32 sampleRate, f32 position[3], f32 minFadeDistance, f32 maxFadeDistance){ + sfx_play(uid, volume, sampleRate, position, minFadeDistance, maxFadeDistance, 0); } void func_8030E9FC(enum sfx_e uid, f32 arg1, f32 arg2, u32 sampleRate, f32 position[3], f32 minFadeDistance, f32 maxFadeDistance){ From 86a25f1345db25ca75066d74edbe8eccc0fa59e8 Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Sun, 29 Sep 2024 02:09:44 +0200 Subject: [PATCH 06/19] refac: rename TTC_ prefixed functions to chXXX to conform to naming scheme --- src/TTC/ch/blubber.c | 110 ++++++++++++++++++------------------ src/TTC/ch/clam.c | 81 +++++++++++++------------- src/TTC/ch/lockup.c | 78 ++++++++++++------------- src/TTC/ch/nipper.c | 116 +++++++++++++++++++------------------- src/TTC/ch/treasurehunt.c | 106 +++++++++++++++++----------------- src/TTC/code_26D0.c | 36 ++++++------ src/core2/ch/gameSelect.c | 2 +- src/core2/code_9A740.c | 2 +- src/core2/code_AD110.c | 16 +++--- 9 files changed, 272 insertions(+), 275 deletions(-) diff --git a/src/TTC/ch/blubber.c b/src/TTC/ch/blubber.c index 06f534b3..e3d004bf 100644 --- a/src/TTC/ch/blubber.c +++ b/src/TTC/ch/blubber.c @@ -13,29 +13,29 @@ typedef struct { s32 throw_target_radius; NodeProp* gold_bullion_throw_target_node_prop; s32 unk24; // bullions left to collect ? (changes from 4 to 0) -}ActorLocal_Blubber; +} ActorLocal_Blubber; -void TTC_Blubber_updateFunc(Actor *this); -void TTC_Blubber_update2Func(Actor *this); -Actor *TTC_Blubber_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); +void chBlubber_updateFunc(Actor *this); +void chBlubber_update2Func(Actor *this); +Actor *chBlubber_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); -enum ttc_blubber_map_flags_e { - TTC_BLUBBER_MAP_FLAG_0_UNKNOWN = 0, - TTC_BLUBBER_MAP_FLAG_1_UNKNOWN = 1, // If this is not set some things will not run like showing the jiggy collected text - TTC_BLUBBER_MAP_FLAG_2_JIGGY_SPAWNED_TEXT_SHOWN = 2, // Jiggy collected text shown - TTC_BLUBBER_MAP_FLAG_3_SHOW_JIGGY_SPAWNED_TEXT_FLAG = 3 +enum ch_blubber_map_flags_e { + CH_BLUBBER_MAP_FLAG_0_UNKNOWN = 0, + CH_BLUBBER_MAP_FLAG_1_UNKNOWN = 1, // If this is not set some things will not run like showing the jiggy collected text + CH_BLUBBER_MAP_FLAG_2_JIGGY_SPAWNED_TEXT_SHOWN = 2, // Jiggy collected text shown + CH_BLUBBER_MAP_FLAG_3_SHOW_JIGGY_SPAWNED_TEXT_FLAG = 3 }; -enum ttc_blubber_states_e { - TTC_BLUBBER_STATE_1_UNKNOWN = 1, // initial state (80387A84) - TTC_BLUBBER_STATE_2_UNKNOWN = 2, // 80387B10 - TTC_BLUBBER_STATE_3_UNKNOWN = 3, - TTC_BLUBBER_STATE_4_UNKNOWN = 4, // 80387C04 - TTC_BLUBBER_STATE_5_UNKNOWN = 5 // 80387CD4 +enum ch_blubber_states_e { + CH_BLUBBER_STATE_1_UNKNOWN = 1, // initial state (80387A84) + CH_BLUBBER_STATE_2_UNKNOWN = 2, // 80387B10 + CH_BLUBBER_STATE_3_UNKNOWN = 3, + CH_BLUBBER_STATE_4_UNKNOWN = 4, // 80387C04 + CH_BLUBBER_STATE_5_UNKNOWN = 5 // 80387CD4 }; /* .data */ -ActorAnimationInfo TTC_BLUBBER_ACTOR_ANIMATIONS[6] = { +ActorAnimationInfo gChBlubberAnimations[6] = { {0x00, 0.0f}, {ASSET_B5_ANIM_BLUBBER_WALK, 2.0f}, {ASSET_B6_ANIM_BLUBBER_CRY, 2.0f}, @@ -44,15 +44,15 @@ ActorAnimationInfo TTC_BLUBBER_ACTOR_ANIMATIONS[6] = { {ASSET_B8_ANIM_BLUBBER_RUN, 0.8f} }; -ActorInfo TTC_BLUBBER_ACTOR = { +ActorInfo gChBlubber = { MARKER_A3_BLUBBER, ACTOR_115_BLUBBER, ASSET_370_MODEL_BLUBBER, - 0x1, TTC_BLUBBER_ACTOR_ANIMATIONS, - TTC_Blubber_updateFunc, TTC_Blubber_update2Func, TTC_Blubber_drawFunc, + 0x1, gChBlubberAnimations, + chBlubber_updateFunc, chBlubber_update2Func, chBlubber_drawFunc, 0, 0x399, 1.8f, 0 }; /* .code */ -void TTC_Blubber_initiliaze(Actor *this){ +void chBlubber_initiliaze(Actor *this){ ActorLocal_Blubber *local = (ActorLocal_Blubber *)&this->local; animctrl_setTransitionDuration(this->animctrl, 0.2f); @@ -66,7 +66,7 @@ void TTC_Blubber_initiliaze(Actor *this){ func_8032A82C(this, 0x14C); } -void TTC_Blubber_showTextCallback(ActorMarker *caller, enum asset_e text_id, s32 arg1){ +void chBlubber_showTextCallback(ActorMarker *caller, enum asset_e text_id, s32 arg1){ Actor *this = marker_getActor(caller); ActorLocal_Blubber *local = (ActorLocal_Blubber*)&this->local; @@ -74,11 +74,11 @@ void TTC_Blubber_showTextCallback(ActorMarker *caller, enum asset_e text_id, s32 local->unk24 = 0; } else{ - subaddie_set_state_with_direction(this, TTC_BLUBBER_STATE_2_UNKNOWN, 0, 1); + subaddie_set_state_with_direction(this, CH_BLUBBER_STATE_2_UNKNOWN, 0, 1); } } -void TTC_Blubber_showTextCallback2(ActorMarker *caller, enum asset_e text_id, s32 arg1){ +void chBlubber_showTextCallback2(ActorMarker *caller, enum asset_e text_id, s32 arg1){ f32 sp24[3]; if(nodeProp_findPositionFromActorId(ACTOR_14B_TTC_BLUBBER_UNKNOWN, sp24)){ @@ -87,31 +87,31 @@ void TTC_Blubber_showTextCallback2(ActorMarker *caller, enum asset_e text_id, s3 } } -void TTC_Blubber_showJiggySpawnedText(ActorMarker *marker){ +void chBlubber_showJiggySpawnedText(ActorMarker *marker){ Actor *this = marker_getActor(reinterpret_cast(ActorMarker *, marker)); enum asset_e text_id; - subaddie_set_state(this, TTC_BLUBBER_STATE_4_UNKNOWN); + subaddie_set_state(this, CH_BLUBBER_STATE_4_UNKNOWN); actor_loopAnimation(this); this->actor_specific_1_f = 0.0f; - if(!mapSpecificFlags_get(TTC_BLUBBER_MAP_FLAG_2_JIGGY_SPAWNED_TEXT_SHOWN)) { + if(!mapSpecificFlags_get(CH_BLUBBER_MAP_FLAG_2_JIGGY_SPAWNED_TEXT_SHOWN)) { text_id = jiggyscore_isCollected(JIGGY_14_TTC_BLUBBER) ? ASSET_A2A_BLUBBER_COMPLETE_JIGGY_COLLECTED : ASSET_A0D_BLUBBER_COMPLETE; - gcdialog_showText(text_id, 0xf, this->position, this->marker, TTC_Blubber_showTextCallback, TTC_Blubber_showTextCallback2); - mapSpecificFlags_set(TTC_BLUBBER_MAP_FLAG_2_JIGGY_SPAWNED_TEXT_SHOWN, TRUE); + gcdialog_showText(text_id, 0xf, this->position, this->marker, chBlubber_showTextCallback, chBlubber_showTextCallback2); + mapSpecificFlags_set(CH_BLUBBER_MAP_FLAG_2_JIGGY_SPAWNED_TEXT_SHOWN, TRUE); } } -void TTC_Blubber_checkJiggySpawnedTextAndAdvanceState(Actor *this){ - if( !mapSpecificFlags_get(TTC_BLUBBER_MAP_FLAG_1_UNKNOWN) ) return; - if( mapSpecificFlags_get(TTC_BLUBBER_MAP_FLAG_3_SHOW_JIGGY_SPAWNED_TEXT_FLAG) ) return; +void chBlubber_checkJiggySpawnedTextAndAdvanceState(Actor *this){ + if( !mapSpecificFlags_get(CH_BLUBBER_MAP_FLAG_1_UNKNOWN) ) return; + if( mapSpecificFlags_get(CH_BLUBBER_MAP_FLAG_3_SHOW_JIGGY_SPAWNED_TEXT_FLAG) ) return; this->yaw_ideal = (f32) func_80329784(this); - mapSpecificFlags_set(TTC_BLUBBER_MAP_FLAG_3_SHOW_JIGGY_SPAWNED_TEXT_FLAG, TRUE); + mapSpecificFlags_set(CH_BLUBBER_MAP_FLAG_3_SHOW_JIGGY_SPAWNED_TEXT_FLAG, TRUE); func_8028F918(2); timed_setStaticCameraToNode(0.0f, 4); - timedFunc_set_1(1.0f, (GenFunction_1)TTC_Blubber_showJiggySpawnedText, (s32)this->marker); - subaddie_set_state_with_direction(this, TTC_BLUBBER_STATE_1_UNKNOWN, 0.0f, 1); + timedFunc_set_1(1.0f, (GenFunction_1)chBlubber_showJiggySpawnedText, (s32)this->marker); + subaddie_set_state_with_direction(this, CH_BLUBBER_STATE_1_UNKNOWN, 0.0f, 1); } void func_8038771C(Actor *this){ @@ -131,7 +131,7 @@ void func_80387774(Actor **this_ptr){ && bacarry_get_markerId() == MARKER_37_GOLD_BULLION && player_throwCarriedObject() ) { - func_8028FA34(!mapSpecificFlags_get(TTC_BLUBBER_MAP_FLAG_0_UNKNOWN) ? ACTOR_149_TTC_BLUBBER_UNKNOWN : ACTOR_14A_TTC_BLUBBER_UNKNOWN, *this_ptr); + func_8028FA34(!mapSpecificFlags_get(CH_BLUBBER_MAP_FLAG_0_UNKNOWN) ? ACTOR_149_TTC_BLUBBER_UNKNOWN : ACTOR_14A_TTC_BLUBBER_UNKNOWN, *this_ptr); (*this_ptr)->has_met_before = TRUE; } @@ -145,17 +145,17 @@ void func_80387830(Actor *this , f32 arg1, f32 arg2){ } } -void TTC_Blubber_updateFunc(Actor * this){ +void chBlubber_updateFunc(Actor * this){ ActorLocal_Blubber *local; this->marker->propPtr->unk8_3 = TRUE; func_8028E668(this->position, 90.0f, -10.0f, 110.0f); - if(!mapSpecificFlags_get(TTC_BLUBBER_MAP_FLAG_1_UNKNOWN) && !func_80329530(this, 2500)) + if(!mapSpecificFlags_get(CH_BLUBBER_MAP_FLAG_1_UNKNOWN) && !func_80329530(this, 2500)) return; if(!this->volatile_initialized){ - if(this->state == TTC_BLUBBER_STATE_3_UNKNOWN){ - subaddie_set_state_with_direction(this, TTC_BLUBBER_STATE_2_UNKNOWN, 0.0f, 1); + if(this->state == CH_BLUBBER_STATE_3_UNKNOWN){ + subaddie_set_state_with_direction(this, CH_BLUBBER_STATE_2_UNKNOWN, 0.0f, 1); } this->volatile_initialized = TRUE; }//L80387970 @@ -164,12 +164,12 @@ void TTC_Blubber_updateFunc(Actor * this){ && !this->has_met_before && item_getCount(ITEM_18_GOLD_BULLIONS) == 0 ){ - gcdialog_showText(ASSET_A0B_FIRST_MEET_BLUBBER, 0xe, this->position, this->marker, TTC_Blubber_showTextCallback, NULL); + gcdialog_showText(ASSET_A0B_FIRST_MEET_BLUBBER, 0xe, this->position, this->marker, chBlubber_showTextCallback, NULL); this->has_met_before = TRUE; - subaddie_set_state_forward(this, TTC_BLUBBER_STATE_3_UNKNOWN); + subaddie_set_state_forward(this, CH_BLUBBER_STATE_3_UNKNOWN); } - if( mapSpecificFlags_get(TTC_BLUBBER_MAP_FLAG_0_UNKNOWN) + if( mapSpecificFlags_get(CH_BLUBBER_MAP_FLAG_0_UNKNOWN) && !this->unk138_23 ){ if (item_getCount(ITEM_18_GOLD_BULLIONS) == 0) { @@ -181,26 +181,26 @@ void TTC_Blubber_updateFunc(Actor * this){ }//L80387A54 switch(this->state){//D_8038CD40 - case TTC_BLUBBER_STATE_1_UNKNOWN: + case CH_BLUBBER_STATE_1_UNKNOWN: if(!this->initialized){ actor_collisionOff(this); - TTC_Blubber_initiliaze(this); + chBlubber_initiliaze(this); } func_80387774(&this); - if(subaddie_maybe_set_state_position_direction(this, TTC_BLUBBER_STATE_2_UNKNOWN, 0.0f, 1, 0.007f)) + if(subaddie_maybe_set_state_position_direction(this, CH_BLUBBER_STATE_2_UNKNOWN, 0.0f, 1, 0.007f)) break; func_80328FB0(this, 3.0f); func_8038771C(this); func_80387830(this, 0.14f, 0.68f); - TTC_Blubber_checkJiggySpawnedTextAndAdvanceState(this); + chBlubber_checkJiggySpawnedTextAndAdvanceState(this); break; - case TTC_BLUBBER_STATE_2_UNKNOWN: + case CH_BLUBBER_STATE_2_UNKNOWN: func_80387774(&this); if( actor_animationIsAt(this, 0.99f) - && subaddie_maybe_set_state_position_direction(this, TTC_BLUBBER_STATE_1_UNKNOWN, 0.0f, 1, 0.78f) + && subaddie_maybe_set_state_position_direction(this, CH_BLUBBER_STATE_1_UNKNOWN, 0.0f, 1, 0.78f) ){ this->actor_specific_1_f = 4.0f; break; @@ -218,18 +218,18 @@ void TTC_Blubber_updateFunc(Actor * this){ FUNC_8030E8B4(SFX_83_BLUBBER_CRYING, 0.91f, 17000, this->position, 1250, 2500); } - TTC_Blubber_checkJiggySpawnedTextAndAdvanceState(this); + chBlubber_checkJiggySpawnedTextAndAdvanceState(this); break; - case TTC_BLUBBER_STATE_3_UNKNOWN: + case CH_BLUBBER_STATE_3_UNKNOWN: break; - case TTC_BLUBBER_STATE_4_UNKNOWN: + case CH_BLUBBER_STATE_4_UNKNOWN: { func_80328FB0(this, 3.0f); local = (ActorLocal_Blubber*)&this->local; if(actor_animationIsAt(this, 0.99f) && !local->unk24){ - subaddie_set_state(this, TTC_BLUBBER_STATE_5_UNKNOWN); + subaddie_set_state(this, CH_BLUBBER_STATE_5_UNKNOWN); this->actor_specific_1_f = 8.0f; } } @@ -245,14 +245,14 @@ void TTC_Blubber_updateFunc(Actor * this){ } break; - case TTC_BLUBBER_STATE_5_UNKNOWN: + case CH_BLUBBER_STATE_5_UNKNOWN: local = (ActorLocal_Blubber*)&this->local; func_8032A95C(this, local->unkE, 0x21c); break; } } -void TTC_Blubber_update2Func(Actor *this){ +void chBlubber_update2Func(Actor *this){ func_80343DEC(this); if(0.99 <= this->unk48){ func_8028F918(0); @@ -262,7 +262,7 @@ void TTC_Blubber_update2Func(Actor *this){ func_80387830(this, 0.5f, 0.97f); } -Actor *TTC_Blubber_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ +Actor *chBlubber_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ func_8033A45C(4, 0); return actor_draw(marker, gfx, mtx, vtx); } diff --git a/src/TTC/ch/clam.c b/src/TTC/ch/clam.c index e3ba44d0..a9b7e96b 100644 --- a/src/TTC/ch/clam.c +++ b/src/TTC/ch/clam.c @@ -6,26 +6,25 @@ extern void spawnQueue_bundle_f32(s32, s32, s32, s32); extern f32 func_80257204(f32, f32, f32, f32); extern ActorProp * func_80320EB0(ActorMarker *, f32, s32); -void TTC_Clam_updateFunc(Actor *this); +void chClam_updateFunc(Actor *this); /* .data */ -ActorAnimationInfo TTC_CLAM_ANIMATIONS[4] = { +ActorAnimationInfo gChClamAnimations[4] = { {0x00, 0.0f}, {ASSET_AA_ANIM_CLAM_IDLE, 2.0f}, {ASSET_24_ANIM_CLAM_HOP, 1.0f}, {ASSET_AB_ANIM_CLAM_EAT, 0.6f} }; -ActorInfo TTC_CLAM_ACTOR = { +ActorInfo gChClam = { MARKER_15_CLAM, ACTOR_69_CLAM, ASSET_351_MODEL_CLAM, - 0x1, TTC_CLAM_ANIMATIONS, - TTC_Clam_updateFunc, func_80326224, actor_draw, + 0x1, gChClamAnimations, + chClam_updateFunc, func_80326224, actor_draw, 4500, 0x366, 1.6f, 0 }; - /* .code */ -void TTC_Clam_playSfx(enum sfx_e sfx_id, f32 volume, s32 sampleRate, f32 position[3], f32 minFadeDistance, f32 maxFadeDistance){ +void chClam_playSfx(enum sfx_e sfx_id, f32 volume, s32 sampleRate, f32 position[3], f32 minFadeDistance, f32 maxFadeDistance){ if(func_803114B0()){ sampleRate -= 10000; if(sampleRate < 0) @@ -35,13 +34,13 @@ void TTC_Clam_playSfx(enum sfx_e sfx_id, f32 volume, s32 sampleRate, f32 positio func_8030E878(sfx_id, volume, sampleRate, position, minFadeDistance, maxFadeDistance); } -void TTC_Clam_func_80386454(Actor *this){ +void chClam_func_80386454(Actor *this){ subaddie_set_state_with_direction(this, 1, 0.01f, 1); actor_loopAnimation(this); animctrl_setDuration(this->animctrl, randf2(1.9f, 2.1f)); } -bool TTC_Clam_updateFuncTarget(Actor *this, f32 arg1) { +bool chClam_updateFuncTarget(Actor *this, f32 arg1) { f32 egg_dist; f32 red_feather_dist; f32 pad; @@ -89,13 +88,13 @@ bool TTC_Clam_updateFuncTarget(Actor *this, f32 arg1) { if ((volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) ? 0 : 0x11) < this->actor_specific_1_f) { this->actor_specific_1_f = (volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) != 0) ? 0.0f : 17.0f; } else if (sp38 == 0) { - TTC_Clam_playSfx(SFX_AE_YUMYUM_TALKING, randf2(0.9f, 1.0f), 22000, this->position, 500.0f, 2000.0f); + chClam_playSfx(SFX_AE_YUMYUM_TALKING, randf2(0.9f, 1.0f), 22000, this->position, 500.0f, 2000.0f); } return TRUE; } -bool TTC_Clam_rotateTowardTarget(Actor *this, s32 arg1) { +bool chClam_rotateTowardTarget(Actor *this, s32 arg1) { f32 temp_f0_2; s32 position; s32 sp2C; @@ -105,7 +104,7 @@ bool TTC_Clam_rotateTowardTarget(Actor *this, s32 arg1) { animctrl_setDuration(this->animctrl, 1.0f); sp2C = (s32) ((f64) (60.0f / (f32) func_8033DD90()) * 0.5); - if ((this->unk1C[0] != 0.0f) || !__TTC_Clam_updateFuncTarget(this, sp2C)) { + if ((this->unk1C[0] != 0.0f) || !chClam_updateFuncTarget(this, sp2C)) { if (((f64) animctrl_getAnimTimer(this->animctrl) < 0.1) && ((f64) randf() < 0.5)) { if (this->unk1C[0] != 0.0f) { arg1 *= 2; @@ -137,7 +136,7 @@ bool TTC_Clam_rotateTowardTarget(Actor *this, s32 arg1) { } -void TTC_Clam_particalEmitterInit(ParticleEmitter *pCtrl, f32 position[3]){ +void chClam_particalEmitterInit(ParticleEmitter *pCtrl, f32 position[3]){ particleEmitter_setPosition(pCtrl, position); func_802EF9F8(pCtrl, 0.7f); func_802EFA18(pCtrl, 3); @@ -149,7 +148,7 @@ void TTC_Clam_particalEmitterInit(ParticleEmitter *pCtrl, f32 position[3]){ particleEmitter_setDrawMode(pCtrl, 2); } -void __chClam_emitLargeShellParticles(f32 position[3], s32 count){ +void chClam_emitLargeShellParticles(f32 position[3], s32 count){ static struct41s D_8038C3F4 = { {{-50.0f, 750.0f, -50.0f}, {120.0f, 900.0f, 120.0f}}, {{ 0.0f, -1800.0f, 0.0f}, { 0.0f, -1800.0f, 0.0f}} @@ -157,7 +156,7 @@ void __chClam_emitLargeShellParticles(f32 position[3], s32 count){ ParticleEmitter *pCtrl; pCtrl = partEmitMgr_newEmitter(count); - TTC_Clam_particalEmitterInit(pCtrl, position); + chClam_particalEmitterInit(pCtrl, position); particleEmitter_setModel(pCtrl, ASSET_37C_MODEL_CLAM_LARGE_SHELL_PIECE); particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C3F4); particleEmitter_setAngularVelocityRange(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f); @@ -165,7 +164,7 @@ void __chClam_emitLargeShellParticles(f32 position[3], s32 count){ particleEmitter_emitN(pCtrl, count); } -void TTC_Clam_emitEyeParticles(f32 position[3], s32 count){ +void chClam_emitEyeParticles(f32 position[3], s32 count){ static struct41s D_8038C424 = { {{-80.0f, 400.0f, -80.0f}, {160.0f, 860.0f, 160.0f}}, {{ 0.0f, -1400.0f, 0.0f}, { 0.0f, -1400.0f, 0.0f}} @@ -173,7 +172,7 @@ void TTC_Clam_emitEyeParticles(f32 position[3], s32 count){ ParticleEmitter *pCtrl; pCtrl = partEmitMgr_newEmitter(count); - TTC_Clam_particalEmitterInit(pCtrl, position); + chClam_particalEmitterInit(pCtrl, position); particleEmitter_setModel(pCtrl, ASSET_37D_MODEL_CLAM_EYE); particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C424); particleEmitter_setAngularVelocityRange(pCtrl, -300.0f, -300.0f, -300.0f, 300.0f, 300.0f, 300.0f); @@ -181,7 +180,7 @@ void TTC_Clam_emitEyeParticles(f32 position[3], s32 count){ particleEmitter_emitN(pCtrl, count); } -void TTC_Clam_emitSmallShellParticles(f32 position[3], s32 count){ +void chClam_emitSmallShellParticles(f32 position[3], s32 count){ static struct41s D_8038C454 = { {{-200.0f, 850.0f, -200.0f}, {400.0f, 1000.0f, 400.0f}}, {{ 0.0f, -1800.0f, 0.0f}, { 0.0f, -1800.0f, 0.0f}} @@ -189,7 +188,7 @@ void TTC_Clam_emitSmallShellParticles(f32 position[3], s32 count){ ParticleEmitter *pCtrl; pCtrl = partEmitMgr_newEmitter(count); - TTC_Clam_particalEmitterInit(pCtrl, position); + chClam_particalEmitterInit(pCtrl, position); particleEmitter_setModel(pCtrl, ASSET_37E_MODEL_CLAM_SMALL_SHELL_PIECE); particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C454); particleEmitter_setAngularVelocityRange(pCtrl, -800.0f, -800.0f, -800.0f, 800.0f, 800.0f, 800.0f); @@ -197,7 +196,7 @@ void TTC_Clam_emitSmallShellParticles(f32 position[3], s32 count){ particleEmitter_emitN(pCtrl, count); } -void TTC_Clam_emitEatencollectibleParticles(f32 position[3], enum asset_e sprite_id, s32 count){ +void chClam_emitEatencollectibleParticles(f32 position[3], enum asset_e sprite_id, s32 count){ static ParticleScaleAndLifetimeRanges D_8038C484 = { {0.2f, 0.35f}, {0.0f, 0.0f}, @@ -222,22 +221,22 @@ void TTC_Clam_emitEatencollectibleParticles(f32 position[3], enum asset_e sprite particleEmitter_emitN(pCtrl, count); } -void TTC_Clam_takeDamage(ActorMarker *this_marker, ActorMarker *other_marker){ +void chClam_takeDamage(ActorMarker *this_marker, ActorMarker *other_marker){ Actor *this; this = marker_getActor(this_marker); this->marker->collidable = FALSE; this->unk138_27 = TRUE; - TTC_Clam_playSfx(SFX_1D_HITTING_AN_ENEMY_1, 1.0f, 26000, this->position, 1500.0f, 2000.0f); - TTC_Clam_playSfx(SFX_115_BUZZBOMB_DEATH, 1.2f, 26000, this->position, 1500.0f, 2000.0f); - TTC_Clam_emitLargeShellParticles(this->position, 2); - TTC_Clam_emitEyeParticles(this->position, 2); - TTC_Clam_emitSmallShellParticles(this->position, 0xC); + chClam_playSfx(SFX_1D_HITTING_AN_ENEMY_1, 1.0f, 26000, this->position, 1500.0f, 2000.0f); + chClam_playSfx(SFX_115_BUZZBOMB_DEATH, 1.2f, 26000, this->position, 1500.0f, 2000.0f); + chClam_emitLargeShellParticles(this->position, 2); + chClam_emitEyeParticles(this->position, 2); + chClam_emitSmallShellParticles(this->position, 0xC); func_803115C4(0xa14); marker_despawn(this->marker); } -void TTC_Clam_playerDropsItem(s32 index, enum item_e item_id){ +void chClam_playerDropsItem(s32 index, enum item_e item_id){ f32 position[3]; player_getPosition(position); @@ -246,7 +245,7 @@ void TTC_Clam_playerDropsItem(s32 index, enum item_e item_id){ item_dec(item_id); } -void TTC_Clam_attackOther(ActorMarker *this_marker, ActorMarker *other_marker){ +void chClam_attackOther(ActorMarker *this_marker, ActorMarker *other_marker){ if(func_80297C6C() == 3) return; @@ -255,13 +254,13 @@ void TTC_Clam_attackOther(ActorMarker *this_marker, ActorMarker *other_marker){ } if(item_getCount(ITEM_D_EGGS) != 0) - TTC_Clam_playerDropsItem(0xe, ITEM_D_EGGS); + chClam_playerDropsItem(0xe, ITEM_D_EGGS); if(item_getCount(ITEM_F_RED_FEATHER) != 0) - TTC_Clam_playerDropsItem(0xf, ITEM_F_RED_FEATHER); + chClam_playerDropsItem(0xf, ITEM_F_RED_FEATHER); } -void TTC_Clam_updateFunc(Actor *this){ +void chClam_updateFunc(Actor *this){ ActorProp *sp4C = func_80320EB0(this->marker, 30.0f, 1); f32 sp48; s32 sp44; @@ -274,7 +273,7 @@ void TTC_Clam_updateFunc(Actor *this){ if(!this->volatile_initialized){ this->volatile_initialized = TRUE; - marker_setCollisionScripts(this->marker, NULL, TTC_Clam_attackOther, TTC_Clam_takeDamage); + marker_setCollisionScripts(this->marker, NULL, chClam_attackOther, chClam_takeDamage); } if(this->state != 3){ @@ -298,11 +297,11 @@ void TTC_Clam_updateFunc(Actor *this){ switch(this->state){ case 1://L80387170 - if(__TTC_Clam_rotateTowardTarget(this, 140)){ + if(chClam_rotateTowardTarget(this, 140)){ subaddie_set_state_with_direction(this, 2, 0.01f, 1); actor_playAnimationOnce(this); animctrl_setDuration(this->animctrl, 1.0f); - TTC_Clam_playSfx(SFX_3F2_UNKNOWN, randf2(1.0f, 1.1f), 22000, this->position, 1500.0f, 2000.0f); + chClam_playSfx(SFX_3F2_UNKNOWN, randf2(1.0f, 1.1f), 22000, this->position, 1500.0f, 2000.0f); } else{ animctrl_setDuration(this->animctrl, 2.0f); @@ -313,13 +312,13 @@ void TTC_Clam_updateFunc(Actor *this){ this->position_y += this->velocity_y; this->velocity_y += -5.0f; if(actor_animationIsAt(this, 0.63f)){ - TTC_Clam_playSfx(SFX_80_YUMYUM_CLACK, 1.0f, 20000, this->position, 1500.0f, 2000.0f); + chClam_playSfx(SFX_80_YUMYUM_CLACK, 1.0f, 20000, this->position, 1500.0f, 2000.0f); } if(this->position_y <= sp48){ this->position_y = sp48; if(actor_animationIsAt(this, 0.99f) || 0.98 < animctrl_getAnimTimer(this->animctrl)){ - TTC_Clam_func_80386454(this); + chClam_func_80386454(this); } } else{//L803872D4 @@ -335,12 +334,12 @@ void TTC_Clam_updateFunc(Actor *this){ } if(3.0f <= this->velocity_x){ - TTC_Clam_func_80386454(this); + chClam_func_80386454(this); break; } if(actor_animationIsAt(this, 0.8f) && 2.0f == this->velocity_x){ - TTC_Clam_playSfx(SFX_4B_GULPING, randf2(0.8f, 0.9f), 22000, this->position, 700.0f, 2000.0f); + chClam_playSfx(SFX_4B_GULPING, randf2(0.8f, 0.9f), 22000, this->position, 700.0f, 2000.0f); break; }//L803873C4 @@ -348,15 +347,15 @@ void TTC_Clam_updateFunc(Actor *this){ if(!this->marker->unk14_21) break; - TTC_Clam_playSfx(SFX_4C_LIP_SMACK, 1.0f, 20000, this->position, 500.0f, 2000.0f); + chClam_playSfx(SFX_4C_LIP_SMACK, 1.0f, 20000, this->position, 500.0f, 2000.0f); func_8034A174(this->marker->unk44, 5, sp38); switch(this->unk38_31){ case MARKER_60_BLUE_EGG_COLLECTIBLE: - TTC_Clam_emitEatencollectibleParticles(sp38, ASSET_718_SPRITE_SPARKLE_WHITE_2, 8); + chClam_emitEatencollectibleParticles(sp38, ASSET_718_SPRITE_SPARKLE_WHITE_2, 8); break; case MARKER_B5_RED_FEATHER_COLLECTIBLE: - TTC_Clam_emitEatencollectibleParticles(sp38, ASSET_715_SPRITE_SPARKLE_RED, 8); + chClam_emitEatencollectibleParticles(sp38, ASSET_715_SPRITE_SPARKLE_RED, 8); break; } break; diff --git a/src/TTC/ch/lockup.c b/src/TTC/ch/lockup.c index 2f097e25..dbf2557a 100644 --- a/src/TTC/ch/lockup.c +++ b/src/TTC/ch/lockup.c @@ -9,11 +9,19 @@ typedef struct { s32 open_ticks_counter; } ActorLocal_Lockup; -Actor *TTC_Lockup_drawFunc(ActorMarker *this, Gfx **gfx, Mtx **mtx, Vtx **vtx); -void TTC_Lockup_updateFunc(Actor *this); +Actor *chLockup_drawFunc(ActorMarker *this, Gfx **gfx, Mtx **mtx, Vtx **vtx); +void chLock_updateFunc(Actor *this); + +enum ch_lockup_states_e { + CH_LOCKUP_STATE_CLOSED = 1, // L803896F0 + CH_LOCKUP_STATE_OPENING = 2, // L803897DC + CH_LOCKUP_STATE_OPEN = 3, // L80389864 + CH_LOCKUP_STATE_CLOSING = 4, // L803898F4 + CH_LOCKUP_STATE_CLOSING2 = 5 // L803898F4 +}; /* .data */ -ActorAnimationInfo TTC_LOCKUP_ANIMATIONS[6] ={ +ActorAnimationInfo gChLockupAnimations[6] ={ {0, 0.0f}, {ASSET_BC_ANIM_LOCKUP, 8000000.0f}, {ASSET_BC_ANIM_LOCKUP, 4.0f}, @@ -22,61 +30,53 @@ ActorAnimationInfo TTC_LOCKUP_ANIMATIONS[6] ={ {ASSET_BC_ANIM_LOCKUP, 8000000.0f} }; -ActorInfo TTC_LOCKUP_ACTOR_SLOW = { +ActorInfo gChLockupSlow = { MARKER_A4_LOCKUP_SLOW, ACTOR_151_LOCKUP_SLOW, ASSET_3D4_MODEL_LOCKUP, - 1, TTC_LOCKUP_ANIMATIONS, - TTC_Lockup_updateFunc, func_80326224, TTC_Lockup_drawFunc, + 1, gChLockupAnimations, + chLock_updateFunc, func_80326224, chLockup_drawFunc, 2500, 0x366, 0.0f, 0 }; -ActorInfo TTC_LOCKUP_ACTOR_MEDIUM = { +ActorInfo gChLockupMedium = { MARKER_F6_LOCKUP_MEDIUM, ACTOR_152_LOCKUP_MEDIUM, ASSET_3D4_MODEL_LOCKUP, - 1, TTC_LOCKUP_ANIMATIONS, - TTC_Lockup_updateFunc, func_80326224, TTC_Lockup_drawFunc, + 1, gChLockupAnimations, + chLock_updateFunc, func_80326224, chLockup_drawFunc, 2500, 0x366, 0.0f, 0 }; -ActorInfo TTC_LOCKUP_ACTOR_FAST = { +ActorInfo gChLockupFast = { MARKER_F7_LOCKUP_FAST, ACTOR_153_LOCKUP_FAST, ASSET_3D4_MODEL_LOCKUP, - 1, TTC_LOCKUP_ANIMATIONS, - TTC_Lockup_updateFunc, func_80326224, TTC_Lockup_drawFunc, + 1, gChLockupAnimations, + chLock_updateFunc, func_80326224, chLockup_drawFunc, 2500, 0x366, 0.0f, 0 }; -s32 TTC_LOCKUP_CLOSE_COLOR[4] = {120, 120, 120, 120}; -s32 TTC_LOCKUP_CLOSE_VELOCITY[3] = {0,0,0}; - -enum ttc_lockup_states_e { - TTC_LOCKUP_STATE_CLOSED = 1, // lockup closed (L803896F0) - TTC_LOCKUP_STATE_OPENING = 2, // lockup opened (L803897DC) - TTC_LOCKUP_STATE_OPEN = 3, // L80389864 - TTC_LOCKUP_STATE_CLOSING = 4, // L803898F4 - TTC_LOCKUP_STATE_CLOSING2 = 5 // L803898F4 -}; +s32 CH_LOCKUP_CLOSE_COLOR[4] = {120, 120, 120, 120}; +s32 CH_LOCKUP_CLOSE_VELOCITY[3] = {0,0,0}; /* .code */ -Actor *TTC_Lockup_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ +Actor *chLockup_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ Actor * actor = marker_getActor(marker); func_8033A45C(3, actor->unk38_31); func_8033A45C(4, actor->unk38_31); actor_draw(marker, gfx, mtx, vtx); } -void TTC_Lockup_close(Actor *this){ - subaddie_set_state_with_direction(this, TTC_LOCKUP_STATE_CLOSED, 0.2f, 1); +void chLockup_close(Actor *this){ + subaddie_set_state_with_direction(this, CH_LOCKUP_STATE_CLOSED, 0.2f, 1); this->marker->collidable = FALSE; this->unk38_31 = 0; FUNC_8030E8B4(SFX_6C_LOCKUP_CLOSING, 1.0f, 32000, this->position, 1250, 2500); } -void TTC_Lockup_open(Actor *this){ +void chLockup_open(Actor *this){ func_80389468(); - subaddie_set_state_with_direction(this, TTC_LOCKUP_STATE_OPENING, 0.2f, 1); + subaddie_set_state_with_direction(this, CH_LOCKUP_STATE_OPENING, 0.2f, 1); this->unk38_31 = 1; FUNC_8030E8B4(SFX_6B_LOCKUP_OPENING, 1.0f, 32000, this->position, 1250, 2500); } -void TTC_Lockup_updateFunc(Actor *this){ +void chLock_updateFunc(Actor *this){ ActorLocal_Lockup *local = (ActorLocal_Lockup *)&this->local; s32 tmp_v1; int i; @@ -97,10 +97,10 @@ void TTC_Lockup_updateFunc(Actor *this){ } switch(this->state){ - case TTC_LOCKUP_STATE_CLOSED: + case CH_LOCKUP_STATE_CLOSED: if(!this->initialized){ this->marker->propPtr->unk8_3 = TRUE; - subaddie_set_state_with_direction(this, TTC_LOCKUP_STATE_CLOSED, 0.2f, 1); + subaddie_set_state_with_direction(this, CH_LOCKUP_STATE_CLOSED, 0.2f, 1); this->marker->collidable = FALSE; this->unk38_31 = 0; this->initialized = TRUE; @@ -115,24 +115,24 @@ void TTC_Lockup_updateFunc(Actor *this){ if(!(local->closed_ticks_counter < tmp_v1)){ local->closed_ticks_counter = 0; - TTC_Lockup_open(this); + chLockup_open(this); } break; - case TTC_LOCKUP_STATE_OPENING: + case CH_LOCKUP_STATE_OPENING: if(subaddie_playerIsWithinSphere(this, 400) && func_8028FB48(0x8000000)){ func_8028F428(0xA, this->marker); } if(actor_animationIsAt(this, 0.5f)){ - subaddie_set_state_with_direction(this, TTC_LOCKUP_STATE_OPEN, 0.5f, 1); + subaddie_set_state_with_direction(this, CH_LOCKUP_STATE_OPEN, 0.5f, 1); } if(0.15 < animctrl_getAnimTimer(this->animctrl)){ this->marker->collidable = TRUE; } break; - case TTC_LOCKUP_STATE_OPEN: + case CH_LOCKUP_STATE_OPEN: local->open_ticks_counter++; tmp_v1 = (this->modelCacheIndex == ACTOR_151_LOCKUP_SLOW) ? 0x1E : (this->modelCacheIndex == ACTOR_152_LOCKUP_MEDIUM) ? 0x14 : @@ -141,17 +141,17 @@ void TTC_Lockup_updateFunc(Actor *this){ if(!(local->open_ticks_counter < tmp_v1)){ local->open_ticks_counter = 0; - subaddie_set_state_with_direction(this, TTC_LOCKUP_STATE_CLOSING, 0.5f, 1); + subaddie_set_state_with_direction(this, CH_LOCKUP_STATE_CLOSING, 0.5f, 1); } break; - case TTC_LOCKUP_STATE_CLOSING: - case TTC_LOCKUP_STATE_CLOSING2: + case CH_LOCKUP_STATE_CLOSING: + case CH_LOCKUP_STATE_CLOSING2: if(this->marker->unk14_21 && actor_animationIsAt(this, 0.99f)){ - TTC_Lockup_close(this); + chLockup_close(this); for(i = 5; i < 0xe; i++){ func_8034A174(this->marker->unk44, i, this->unk1C); - func_802EE6CC(this->unk1C, TTC_LOCKUP_CLOSE_VELOCITY, TTC_LOCKUP_CLOSE_COLOR, 1, 0.4f, 50.0f, 0xb4, 0xa0, 0); + func_802EE6CC(this->unk1C, CH_LOCKUP_CLOSE_VELOCITY, CH_LOCKUP_CLOSE_COLOR, 1, 0.4f, 50.0f, 0xb4, 0xa0, 0); } } break; diff --git a/src/TTC/ch/nipper.c b/src/TTC/ch/nipper.c index 1d1fcc58..7a04a969 100644 --- a/src/TTC/ch/nipper.c +++ b/src/TTC/ch/nipper.c @@ -2,12 +2,21 @@ #include "functions.h" #include "variables.h" -void TTC_Nipper_updateFunc(Actor *this); -Actor *TTC_Nipper_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); +void chNipper_updateFunc(Actor *this); +Actor *chNipper_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); +enum ch_nipper_states_e { + CH_NIPPER_STATE_1_UNKNOWN = 1, // L80388578 + CH_NIPPER_STATE_2_UNKNOWN = 2, // L8038872C + CH_NIPPER_STATE_3_UNKNOWN = 3, // L803887B4 + CH_NIPPER_STATE_DIEING = 4, // L80388910 + CH_NIPPER_STATE_SPAWNED = 5, // L80388938 + CH_NIPPER_STATE_DEAD = 6, // L803889A8 + CH_NIPPER_STATE_7_UNKNOWN = 7 // already dead? L80388A20 +}; /* .data */ -ActorAnimationInfo TTC_NIPPER_ANIMATIONS[8] = { +ActorAnimationInfo gChNipperAnimations[8] = { {0x00, 0.0f}, {ASSET_C0_ANIM_NIPPER_IDLE, 2.0f}, {ASSET_BD_ANIM_NIPPER_VULNERABLE, 1.5f}, @@ -18,25 +27,15 @@ ActorAnimationInfo TTC_NIPPER_ANIMATIONS[8] = { {0x00, 0.0f} }; -ActorInfo TTC_NIPPER_ACTOR = { +ActorInfo gChNipper = { MARKER_A5_NIPPER, ACTOR_117_NIPPER, ASSET_3D5_MODEL_NIPPER, - 0x1, TTC_NIPPER_ANIMATIONS, - TTC_Nipper_updateFunc, func_80326224, TTC_Nipper_animFunc, + 0x1, gChNipperAnimations, + chNipper_updateFunc, func_80326224, chNipper_animFunc, 0, 0x299, 10.0f, 0 }; -enum ttc_nipper_states_e { - TTC_NIPPER_STATE_1_UNKNOWN = 1, // L80388578 - TTC_NIPPER_STATE_2_UNKNOWN = 2, // L8038872C - TTC_NIPPER_STATE_3_UNKNOWN = 3, // L803887B4 - TTC_NIPPER_STATE_DIEING = 4, // L80388910 - TTC_NIPPER_STATE_SPAWNED = 5, // L80388938 - TTC_NIPPER_STATE_DEAD = 6, // L803889A8 - TTC_NIPPER_STATE_7_UNKNOWN = 7 // already dead? L80388A20 -}; - /* .code */ -void TTC_Nipper_drawParticlesAtPosition(f32 *position, s32 count) { +void chNipper_drawParticlesAtPosition(f32 *position, s32 count) { static s32 D_8038C5A4[3] = {180, 180, 180}; static ParticleScaleAndLifetimeRanges D_8038C5B0 = { {0.1f, 0.5f}, @@ -65,7 +64,7 @@ void TTC_Nipper_drawParticlesAtPosition(f32 *position, s32 count) { particleEmitter_emitN(pCtrl, count); } -Actor *TTC_Nipper_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) { +Actor *chNipper_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) { Actor *this; this = marker_getActor(marker); @@ -73,8 +72,8 @@ Actor *TTC_Nipper_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) return actor_draw(marker, gfx, mtx, vtx); } -void TTC_Nipper_setAnimationDuration(Actor *this) { - subaddie_set_state_looped(this, TTC_NIPPER_STATE_3_UNKNOWN); +void chNipper_setAnimationDuration(Actor *this) { + subaddie_set_state_looped(this, CH_NIPPER_STATE_3_UNKNOWN); this->unk1C[0] = 0.0f; switch((s32)this->lifetime_value){ case 120: @@ -91,18 +90,18 @@ void TTC_Nipper_setAnimationDuration(Actor *this) { } } -void TTC_Nipper_spawnedShowTextCallback(ActorMarker *caller, enum asset_e text_id, s32 arg2){ +void chNipper_spawnedShowTextCallback(ActorMarker *caller, enum asset_e text_id, s32 arg2){ Actor *this; this = marker_getActor(caller); - TTC_Nipper_setAnimationDuration(this); + chNipper_setAnimationDuration(this); ncStaticCamera_exit(); comusic_8025AB44(COMUSIC_12_TTC_NIPPER, -1, 300); } -void TTC_Nipper_playDeathAnimation(Actor *this) { +void chNipper_playDeathAnimation(Actor *this) { s32 i; - subaddie_set_state_with_direction(this, TTC_NIPPER_STATE_DIEING, 0.01f, 1); + subaddie_set_state_with_direction(this, CH_NIPPER_STATE_DIEING, 0.01f, 1); actor_playAnimationOnce(this); for(i = 0; i < 3; i ++){ FUNC_8030E8B4(SFX_79_TICKER_DEATH, 0.5f, 17000, this->position, 1500, 3000); @@ -125,11 +124,11 @@ bool func_80388088(Actor *this){ return BOOL(-35.0f < sp2C && sp2C < 35.0f); } -bool TTC_Nipper_shouldShowActor(Actor *this){ +bool chNipper_shouldShowActor(Actor *this){ return BOOL(func_80329530(this, 1300) && func_80388088(this)); } -void TTC_Nipper_dieFunc(ActorMarker *this_marker, ActorMarker *other_marker) { +void chNipper_dieFunc(ActorMarker *this_marker, ActorMarker *other_marker) { Actor *this; s32 i; @@ -137,7 +136,7 @@ void TTC_Nipper_dieFunc(ActorMarker *this_marker, ActorMarker *other_marker) { func_8032B4DC(this, other_marker, 7); if (this->lifetime_value == 40.0f) { - subaddie_set_state_with_direction(this, TTC_NIPPER_STATE_DEAD, 0.01f, 1); + subaddie_set_state_with_direction(this, CH_NIPPER_STATE_DEAD, 0.01f, 1); actor_playAnimationOnce(this); for(i = 0; i < 3; i++){ FUNC_8030E8B4(SFX_78_EAGLECRY, 0.7f, 20000, this->position, 1500, 3000); @@ -150,18 +149,18 @@ void TTC_Nipper_dieFunc(ActorMarker *this_marker, ActorMarker *other_marker) { } if (this->lifetime_value == 80.0f) { - TTC_Nipper_playDeathAnimation(this); + chNipper_playDeathAnimation(this); this->lifetime_value = 40.0f; return; } - TTC_Nipper_playDeathAnimation(this); + chNipper_playDeathAnimation(this); this->lifetime_value = 80.0f; gcdialog_showText(ASSET_A10_TEXT_TTC_NIPPER_HURT, 4, NULL, NULL, NULL, NULL); return; } -bool TTC_Nipper_determineMarkeId(ActorMarker * this_marker, ActorMarker * other_marker){ +bool chNipper_determineMarkeId(ActorMarker * this_marker, ActorMarker * other_marker){ if(this_marker->unk40_31 == 1){ this_marker->id = 0x16C; } @@ -171,7 +170,7 @@ bool TTC_Nipper_determineMarkeId(ActorMarker * this_marker, ActorMarker * other_ return TRUE; } -void TTC_Nipper_ow2Func(ActorMarker * this_marker, ActorMarker *other_marker){ +void chNipper_ow2Func(ActorMarker * this_marker, ActorMarker *other_marker){ Actor *this; if(other_marker->id == 1){ @@ -185,7 +184,7 @@ void TTC_Nipper_ow2Func(ActorMarker * this_marker, ActorMarker *other_marker){ } } -void TTC_Nipper_owFunc(ActorMarker * this_marker, ActorMarker *other_marker){ +void chNipper_owFunc(ActorMarker * this_marker, ActorMarker *other_marker){ Actor *this = marker_getActor(this_marker); if( !this->unk138_23 && this->has_met_before @@ -195,7 +194,7 @@ void TTC_Nipper_owFunc(ActorMarker * this_marker, ActorMarker *other_marker){ } } -void TTC_Nipper_updateFunc(Actor *this){ +void chNipper_updateFunc(Actor *this){ f32 particlePosition[3]; s32 sp48; s32 xVelocity; @@ -210,7 +209,7 @@ void TTC_Nipper_updateFunc(Actor *this){ func_8032BC18(this); } - if(this->state != TTC_NIPPER_STATE_7_UNKNOWN){ + if(this->state != CH_NIPPER_STATE_7_UNKNOWN){ if(0.0f == this->velocity_x && xVelocity){ comusic_8025AB44(COMUSIC_12_TTC_NIPPER, -1, 5000); func_8032BB88(this, 0, 4000); @@ -226,32 +225,32 @@ void TTC_Nipper_updateFunc(Actor *this){ } switch(this->state){ - case TTC_NIPPER_STATE_1_UNKNOWN: + case CH_NIPPER_STATE_1_UNKNOWN: if(!this->initialized){ animctrl_setTransitionDuration(this->animctrl, 0.35f); - subaddie_set_state_with_direction(this, TTC_NIPPER_STATE_1_UNKNOWN, 0.01f, 1); + subaddie_set_state_with_direction(this, CH_NIPPER_STATE_1_UNKNOWN, 0.01f, 1); this->lifetime_value = 120.0f; this->marker->propPtr->unk8_3 = TRUE; - marker_setCollisionScripts(this->marker, TTC_Nipper_owFunc, TTC_Nipper_ow2Func, TTC_Nipper_dieFunc); - func_803300C0(this->marker, TTC_Nipper_determineMarkeId); + marker_setCollisionScripts(this->marker, chNipper_owFunc, chNipper_ow2Func, chNipper_dieFunc); + func_803300C0(this->marker, chNipper_determineMarkeId); this->initialized = TRUE; } - if(TTC_Nipper_shouldShowActor(this)){ + if(chNipper_shouldShowActor(this)){ temp_v0 = func_8028ECAC(); if( !this->has_met_before && temp_v0 != 1 && temp_v0 != 10 ){ - subaddie_set_state_with_direction(this, TTC_NIPPER_STATE_SPAWNED, 0.01f, 1); - if(gcdialog_showText(ASSET_A0E_NIPPER_SPAWNED, 0xf, this->position, this->marker, TTC_Nipper_spawnedShowTextCallback, NULL)){ + subaddie_set_state_with_direction(this, CH_NIPPER_STATE_SPAWNED, 0.01f, 1); + if(gcdialog_showText(ASSET_A0E_NIPPER_SPAWNED, 0xf, this->position, this->marker, chNipper_spawnedShowTextCallback, NULL)){ this->has_met_before = TRUE; } comusic_8025AB44(COMUSIC_12_TTC_NIPPER, 5000, 300); ncStaticCamera_setToNode(11); } else{ - TTC_Nipper_setAnimationDuration(this); + chNipper_setAnimationDuration(this); } break; } @@ -265,27 +264,27 @@ void TTC_Nipper_updateFunc(Actor *this){ } break; - case TTC_NIPPER_STATE_2_UNKNOWN: - if(!TTC_Nipper_shouldShowActor(this)){ - subaddie_set_state_looped(this, TTC_NIPPER_STATE_1_UNKNOWN); + case CH_NIPPER_STATE_2_UNKNOWN: + if(!chNipper_shouldShowActor(this)){ + subaddie_set_state_looped(this, CH_NIPPER_STATE_1_UNKNOWN); break; } if(this->lifetime_value <= this->unk38_31){ - TTC_Nipper_setAnimationDuration(this); + chNipper_setAnimationDuration(this); break; } this->unk38_31++; break; - case TTC_NIPPER_STATE_3_UNKNOWN: + case CH_NIPPER_STATE_3_UNKNOWN: if(actor_animationIsAt(this, 0.5f) && this->marker->unk14_21){ func_8034A174(this->marker->unk44, 6, particlePosition); - TTC_Nipper_drawParticlesAtPosition(particlePosition, 2); + chNipper_drawParticlesAtPosition(particlePosition, 2); } else if(actor_animationIsAt(this, 0.95f) && this->marker->unk14_21){//L80388800 func_8034A174(this->marker->unk44, 5, particlePosition); - TTC_Nipper_drawParticlesAtPosition(particlePosition, 2); + chNipper_drawParticlesAtPosition(particlePosition, 2); } if(actor_animationIsAt(this, 0.99f)){ @@ -293,7 +292,7 @@ void TTC_Nipper_updateFunc(Actor *this){ } if(2.0f <= this->unk1C[0]){ - subaddie_set_state_looped(this, TTC_NIPPER_STATE_2_UNKNOWN); + subaddie_set_state_looped(this, CH_NIPPER_STATE_2_UNKNOWN); this->unk38_31 = 0; break; } @@ -307,13 +306,13 @@ void TTC_Nipper_updateFunc(Actor *this){ } break; - case TTC_NIPPER_STATE_DIEING: + case CH_NIPPER_STATE_DIEING: if(actor_animationIsAt(this, 0.99f)){ - TTC_Nipper_setAnimationDuration(this); + chNipper_setAnimationDuration(this); } break; - case TTC_NIPPER_STATE_SPAWNED: + case CH_NIPPER_STATE_SPAWNED: if( actor_animationIsAt(this, 0.2f) || actor_animationIsAt(this, 0.2f) || actor_animationIsAt(this, 0.6f) @@ -323,7 +322,7 @@ void TTC_Nipper_updateFunc(Actor *this){ } break; - case TTC_NIPPER_STATE_DEAD: + case CH_NIPPER_STATE_DEAD: this->marker->collidable = FALSE; if(actor_animationIsAt(this, 0.6f)){ FUNC_8030E8B4(SFX_7C_CHEBOOF, 0.9f, 20000, this->position, 1500, 3000); @@ -331,15 +330,14 @@ void TTC_Nipper_updateFunc(Actor *this){ } if(actor_animationIsAt(this, 0.99f)){ - subaddie_set_state_with_direction(this, TTC_NIPPER_STATE_7_UNKNOWN, 0.01f, 1); + subaddie_set_state_with_direction(this, CH_NIPPER_STATE_7_UNKNOWN, 0.01f, 1); } break; - case TTC_NIPPER_STATE_7_UNKNOWN: + case CH_NIPPER_STATE_7_UNKNOWN: this->marker->collidable = FALSE; break; - - }//L80388A30 + } } bool func_80388A44(s16 arg0[3]){ @@ -351,5 +349,5 @@ bool func_80388A44(s16 arg0[3]){ sp1C[2] = (f32) arg0[2]; nipper = actorArray_findClosestActorFromActorId(sp1C, ACTOR_117_NIPPER, -1, NULL); - return nipper->state == TTC_NIPPER_STATE_7_UNKNOWN; + return nipper->state == CH_NIPPER_STATE_7_UNKNOWN; } diff --git a/src/TTC/ch/treasurehunt.c b/src/TTC/ch/treasurehunt.c index b10792df..4a9486c3 100644 --- a/src/TTC/ch/treasurehunt.c +++ b/src/TTC/ch/treasurehunt.c @@ -7,15 +7,15 @@ extern void func_8028F45C(s32, f32[3]); typedef struct { s32 unk0; -}ActorLocal_TreasureHunt; +} ActorLocal_TreasureHunt; -void TTC_Treasurehunt_updateFunc(Actor *this); -Actor *TTC_Treasurehunt_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); +void chTreasurehunt_updateFunc(Actor *this); +Actor *chTreasurehunt_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); -extern u32 TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP; +extern u32 CH_TREASUREHUNT_PUZZLE_CURRENT_STEP; /* .data */ -f32 TTC_TREASUREHUNT_STEP_POSITIONS[6][3] = { +f32 CH_TREASUREHUNT_STEP_POSITIONS[6][3] = { {2904.0f, 2458.0f, -7351.0f}, {-7007.0f, 2013.0f, 401.0f}, {-3388.0f, 1519.0f, 5939.0f}, @@ -24,9 +24,9 @@ f32 TTC_TREASUREHUNT_STEP_POSITIONS[6][3] = { {7667.0f, 717.0f, 1676.0f} }; -f32 TTC_TREASUREHUNT_STEP_RED_X_YAWS[6] = { 300.0f, 180.0f, 220.0f, 270.0f, 330.0f, 255.0f }; -s32 TTC_TREASUREHUNT_STEP_YAWS[6] = { 0x6E, 0xD2, 0x10E, 0x145, 0x14A, 0 }; -s32 TTC_TREASUREHUNT_STEP_ACTORS[6] = { +f32 CH_TREASUREHUNT_STEP_RED_X_YAWS[6] = { 300.0f, 180.0f, 220.0f, 270.0f, 330.0f, 255.0f }; +s32 CH_TREASUREHUNT_STEP_YAWS[6] = { 0x6E, 0xD2, 0x10E, 0x145, 0x14A, 0 }; +s32 CH_TREASUREHUNT_STEP_ACTORS[6] = { ACTOR_53_RED_ARROW, ACTOR_53_RED_ARROW, ACTOR_53_RED_ARROW, @@ -35,30 +35,30 @@ s32 TTC_TREASUREHUNT_STEP_ACTORS[6] = { ACTOR_46_JIGGY }; -ActorInfo TTC_TREASUREHUNT_ACTOR_RED_ARROW = { +ActorInfo gChTreasurehuntRedArrow = { MARKER_62_RED_ARROW, ACTOR_53_RED_ARROW, ASSET_3E9_MODEL_RED_ARROW, 0, NULL, - TTC_Treasurehunt_updateFunc, func_80326224, TTC_Treasurehunt_animFunc, + chTreasurehunt_updateFunc, func_80326224, chTreasurehunt_animFunc, 0, 0x400, 0.0f, 0 }; -ActorInfo TTC_TREASUREHUNT_ACTOR_RED_QUESTION_MARK = { +ActorInfo gChTreasurehuntRedQuestionMark = { MARKER_63_RED_QUESTION_MARK, ACTOR_54_RED_QUESTION_MARK, ASSET_3EB_MODEL_RED_QUESTION_MARK, 0, NULL, - TTC_Treasurehunt_updateFunc, func_80326224, TTC_Treasurehunt_animFunc, + chTreasurehunt_updateFunc, func_80326224, chTreasurehunt_animFunc, 0, 0x400, 0.0f, 0 }; -ActorInfo TTC_TREASUREHUNT_ACTOR_RED_X = { +ActorInfo gChTreasurehuntRedX = { MARKER_64_RED_X, ACTOR_55_RED_X, ASSET_3EA_MODEL_RED_X, 0, NULL, - TTC_Treasurehunt_updateFunc, func_80326224, TTC_Treasurehunt_animFunc, + chTreasurehunt_updateFunc, func_80326224, chTreasurehunt_animFunc, 0, 0x400, 0.0f, 0 }; -s32 TTC_TREASUREHUNT_PARTICLE_RGB[3] = {160, 120, 20}; +s32 CH_TREASUREHUNT_PARTICLE_RGB[3] = {160, 120, 20}; -ParticleScaleAndLifetimeRanges TTC_TREASUREHUNT_PARTICLE_SCALE_AND_LIFETIME_RANGES = { +ParticleScaleAndLifetimeRanges CH_TREASUREHUNT_PARTICLE_SCALE_AND_LIFETIME_RANGES = { {1.1f, 1.5f}, {4.0f, 4.6f}, {0.0f, 0.01f}, @@ -66,20 +66,20 @@ ParticleScaleAndLifetimeRanges TTC_TREASUREHUNT_PARTICLE_SCALE_AND_LIFETIME_RANG 0.0f, 0.01f }; -struct42s TTC_TREASUREHUNT_VELOCITY_RANGES = { +struct42s CH_TREASUREHUNT_VELOCITY_RANGES = { {{-230.0f, 30.0f, -230.0f}, {230.0f, 110.0f, 230.0f}}, {{-60.0f, 0.0f, -60.0f}, {60.0f, 30.0f, 60.0f}}, }; /* .code */ -bool TTC_Treasurehunt_isActiveHitboxBeakBusterHitbox(void) { +bool chTreasurehunt_isActiveHitboxBeakBusterHitbox(void) { enum comusic_e comusic_id; s32 music_volume; if (player_getActiveHitbox(0) == HITBOX_1_BEAK_BUSTER) { comusic_id = COMUSIC_2B_DING_B; music_volume = 28000; - if (TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP == 5) { + if (CH_TREASUREHUNT_PUZZLE_CURRENT_STEP == 5) { comusic_id = COMUSIC_2D_PUZZLE_SOLVED_FANFARE; music_volume = 0x7FFF; } @@ -89,32 +89,32 @@ bool TTC_Treasurehunt_isActiveHitboxBeakBusterHitbox(void) { return FALSE; } -void TTC_Treasurehunt_spawnRedXForNextStep(void) { +void chTreasurehunt_spawnRedXForNextStep(void) { Actor *actor; ActorLocal_TreasureHunt *local; - actor = actor_spawnWithYaw_f32(ACTOR_55_RED_X, TTC_TREASUREHUNT_STEP_POSITIONS[TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP], 0); + actor = actor_spawnWithYaw_f32(ACTOR_55_RED_X, CH_TREASUREHUNT_STEP_POSITIONS[CH_TREASUREHUNT_PUZZLE_CURRENT_STEP], 0); local = (ActorLocal_TreasureHunt *)&actor->local; - actor->yaw = TTC_TREASUREHUNT_STEP_RED_X_YAWS[TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP]; - local->unk0 = TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP; + actor->yaw = CH_TREASUREHUNT_STEP_RED_X_YAWS[CH_TREASUREHUNT_PUZZLE_CURRENT_STEP]; + local->unk0 = CH_TREASUREHUNT_PUZZLE_CURRENT_STEP; actor->lifetime_value = 0.0f; actor->state = 0; } -void TTC_Treasurehunt_spawnActorForNextStep(void) { +void chTreasurehunt_spawnActorForNextStep(void) { Actor *actor; ActorLocal_TreasureHunt *local; - actor = actor_spawnWithYaw_f32((TTC_TREASUREHUNT_STEP_ACTORS - 1)[TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP], TTC_TREASUREHUNT_STEP_POSITIONS[TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP - 1], 0); + actor = actor_spawnWithYaw_f32((CH_TREASUREHUNT_STEP_ACTORS - 1)[CH_TREASUREHUNT_PUZZLE_CURRENT_STEP], CH_TREASUREHUNT_STEP_POSITIONS[CH_TREASUREHUNT_PUZZLE_CURRENT_STEP - 1], 0); local = (ActorLocal_TreasureHunt *)&actor->local; - actor->yaw = TTC_TREASUREHUNT_STEP_YAWS[TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP - 1]; - local->unk0 = TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP; + actor->yaw = CH_TREASUREHUNT_STEP_YAWS[CH_TREASUREHUNT_PUZZLE_CURRENT_STEP - 1]; + local->unk0 = CH_TREASUREHUNT_PUZZLE_CURRENT_STEP; actor->lifetime_value = 0.0f; actor->state = 0; } -void TTC_Treasurehunt_checkStepProgress(s32 currentStep){ - if(TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP == currentStep && TTC_Treasurehunt_isActiveHitboxBeakBusterHitbox()){ +void chTreasurehunt_checkStepProgress(s32 currentStep){ + if(CH_TREASUREHUNT_PUZZLE_CURRENT_STEP == currentStep && chTreasurehunt_isActiveHitboxBeakBusterHitbox()){ if(currentStep == 0 && !jiggyscore_isCollected(JIGGY_11_TTC_RED_X)){ gcdialog_showText(ASSET_A18_TEXT_TREASUREHUNT_FOLLOW_CLUES, 4, NULL, NULL, NULL, NULL); } @@ -122,64 +122,64 @@ void TTC_Treasurehunt_checkStepProgress(s32 currentStep){ gcdialog_showText(ASSET_A19_TEXT_TREASUREHUNT_SECOND_STEP, 4, NULL, NULL, NULL, NULL); } - TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP++; - __spawnQueue_add_0(TTC_Treasurehunt_spawnActorForNextStep); - __spawnQueue_add_0(TTC_Treasurehunt_spawnRedXForNextStep); + CH_TREASUREHUNT_PUZZLE_CURRENT_STEP++; + __spawnQueue_add_0(chTreasurehunt_spawnActorForNextStep); + __spawnQueue_add_0(chTreasurehunt_spawnRedXForNextStep); } } -void TTC_Treasurehunt_checkStepProgress0(ActorMarker *this, ActorMarker *arg1){\ - TTC_Treasurehunt_checkStepProgress(0); +void chTreasurehunt_checkStepProgress0(ActorMarker *this, ActorMarker *arg1){\ + chTreasurehunt_checkStepProgress(0); } -void TTC_Treasurehunt_checkStepProgress1(ActorMarker *this, ActorMarker *arg1){\ - TTC_Treasurehunt_checkStepProgress(1); +void chTreasurehunt_checkStepProgress1(ActorMarker *this, ActorMarker *arg1){\ + chTreasurehunt_checkStepProgress(1); } -void TTC_Treasurehunt_checkStepProgress2(ActorMarker *this, ActorMarker *arg1){\ - TTC_Treasurehunt_checkStepProgress(2); +void chTreasurehunt_checkStepProgress2(ActorMarker *this, ActorMarker *arg1){\ + chTreasurehunt_checkStepProgress(2); } -void TTC_Treasurehunt_checkStepProgress3(ActorMarker *this, ActorMarker *arg1){\ - TTC_Treasurehunt_checkStepProgress(3); +void chTreasurehunt_checkStepProgress3(ActorMarker *this, ActorMarker *arg1){\ + chTreasurehunt_checkStepProgress(3); } -void TTC_Treasurehunt_checkStepProgress4(ActorMarker *this, ActorMarker *arg1){\ - TTC_Treasurehunt_checkStepProgress(4); +void chTreasurehunt_checkStepProgress4(ActorMarker *this, ActorMarker *arg1){\ + chTreasurehunt_checkStepProgress(4); } -void TTC_Treasurehunt_checkStepProgress5(s16 arg0[3], s32 arg1){ +void chTreasurehunt_checkStepProgress5(s16 arg0[3], s32 arg1){ static ParticleEmitter *particleEmitter; static f32 particleTargetPosition[3]; - if(TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP == 5 && TTC_Treasurehunt_isActiveHitboxBeakBusterHitbox()){ + if(CH_TREASUREHUNT_PUZZLE_CURRENT_STEP == 5 && chTreasurehunt_isActiveHitboxBeakBusterHitbox()){ particleTargetPosition[0] = (f32)arg0[0]; particleTargetPosition[1] = (f32)arg0[1]; particleTargetPosition[2] = (f32)arg0[2]; particleTargetPosition[1] = mapModel_getFloorY(particleTargetPosition); __spawnQueue_add_4((GenFunction_4)spawnQueue_actor_f32, 0xF4, reinterpret_cast(s32, particleTargetPosition[0]), reinterpret_cast(s32, particleTargetPosition[1]), reinterpret_cast(s32, particleTargetPosition[2])); particleEmitter = partEmitMgr_newEmitter(3); - particleEmitter_setRGB(particleEmitter, TTC_TREASUREHUNT_PARTICLE_RGB); + particleEmitter_setRGB(particleEmitter, CH_TREASUREHUNT_PARTICLE_RGB); particleEmitter_setSprite(particleEmitter, ASSET_700_SPRITE_DUST); particleEmitter_setStartingFrameRange(particleEmitter, 0, 7); particleEmitter_setPosition(particleEmitter, particleTargetPosition); - particleEmitter_setPositionAndVelocityRanges(particleEmitter, &TTC_TREASUREHUNT_VELOCITY_RANGES); - particleEmitter_setScaleAndLifetimeRanges(particleEmitter, &TTC_TREASUREHUNT_PARTICLE_SCALE_AND_LIFETIME_RANGES); + particleEmitter_setPositionAndVelocityRanges(particleEmitter, &CH_TREASUREHUNT_VELOCITY_RANGES); + particleEmitter_setScaleAndLifetimeRanges(particleEmitter, &CH_TREASUREHUNT_PARTICLE_SCALE_AND_LIFETIME_RANGES); particleEmitter_emitN(particleEmitter, 5); particleTargetPosition[2] += 300.0f; gcpausemenu_80314AC8(0); timedFunc_set_2(0.1f, (GenFunction_2) func_8028F45C, 9, (s32)&particleTargetPosition); timedFunc_set_1(0.1f, (GenFunction_1) gcpausemenu_80314AC8, 1); gcdialog_showText(ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED, 4, NULL, NULL, NULL, NULL); - TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP++; + CH_TREASUREHUNT_PUZZLE_CURRENT_STEP++; } } -void TTC_Treasurehunt_resetProgress(void){ - TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP = 0; +void chTreasurehunt_resetProgress(void){ + CH_TREASUREHUNT_PUZZLE_CURRENT_STEP = 0; } -void TTC_Treasurehunt_updateFunc(Actor *this){ +void chTreasurehunt_updateFunc(Actor *this){ f32 tick = time_getDelta(); ActorLocal_TreasureHunt *local = (ActorLocal_TreasureHunt*)&this->local; f64 tmp_f12; @@ -198,7 +198,7 @@ void TTC_Treasurehunt_updateFunc(Actor *this){ } break; case 1: - if(local->unk0 < TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP){ + if(local->unk0 < CH_TREASUREHUNT_PUZZLE_CURRENT_STEP){ this->state = 2; } break; @@ -212,7 +212,7 @@ void TTC_Treasurehunt_updateFunc(Actor *this){ this->depth_mode = 2; } -Actor *TTC_Treasurehunt_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ +Actor *chTreasurehunt_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ f32 sp4C[3]; f32 sp40[3]; f32 sp3C; diff --git a/src/TTC/code_26D0.c b/src/TTC/code_26D0.c index ac7a3872..c0d5d50d 100644 --- a/src/TTC/code_26D0.c +++ b/src/TTC/code_26D0.c @@ -5,9 +5,9 @@ #include "SnS.h" #include "actor.h" -extern ActorInfo TTC_CLAM_ACTOR; -extern ActorInfo TTC_BLUBBER_ACTOR; -extern ActorInfo TTC_NIPPER_ACTOR; +extern ActorInfo gChClam; +extern ActorInfo gChBlubber; +extern ActorInfo gChNipper; extern ActorInfo D_8038C5E0; extern ActorInfo D_8038C604; extern ActorInfo D_8038C628; @@ -17,12 +17,12 @@ extern ActorInfo D_8038C694; extern ActorInfo D_8038C6B8; extern ActorInfo D_8038C6DC; extern ActorInfo D_8038C718; -extern ActorInfo TTC_LOCKUP_ACTOR_SLOW; -extern ActorInfo TTC_LOCKUP_ACTOR_MEDIUM; -extern ActorInfo TTC_LOCKUP_ACTOR_FAST; -extern ActorInfo TTC_TREASUREHUNT_ACTOR_RED_ARROW; -extern ActorInfo TTC_TREASUREHUNT_ACTOR_RED_QUESTION_MARK; -extern ActorInfo TTC_TREASUREHUNT_ACTOR_RED_X; +extern ActorInfo gChLockupSlow; +extern ActorInfo gChLockupMedium; +extern ActorInfo gChLockupFast; +extern ActorInfo gChTreasurehuntRedArrow; +extern ActorInfo gChTreasurehuntRedQuestionMark; +extern ActorInfo gChTreasurehuntRedX; extern ActorInfo gChTreasureInfo; void TTC_func_80388C78(Actor *this); @@ -93,15 +93,15 @@ void TTC_func_80388AC0(void) { spawnableActorList_add(&D_8038C5E0, actor_new, ACTOR_FLAG_NONE); spawnableActorList_add(&D_8038C604, actor_new, ACTOR_FLAG_NONE); - spawnableActorList_add(&TTC_NIPPER_ACTOR, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_20 | ACTOR_FLAG_UNKNOWN_26); - spawnableActorList_add(&TTC_BLUBBER_ACTOR, actor_new, ACTOR_FLAG_UNKNOWN_0 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_26); + spawnableActorList_add(&gChNipper, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_20 | ACTOR_FLAG_UNKNOWN_26); + spawnableActorList_add(&gChBlubber, actor_new, ACTOR_FLAG_UNKNOWN_0 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_26); spawnableActorList_add(&D_8038C718, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_8); - spawnableActorList_add(&TTC_LOCKUP_ACTOR_SLOW, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); - spawnableActorList_add(&TTC_LOCKUP_ACTOR_MEDIUM, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); - spawnableActorList_add(&TTC_LOCKUP_ACTOR_FAST, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); - spawnableActorList_add(&TTC_TREASUREHUNT_ACTOR_RED_ARROW, actor_new, ACTOR_FLAG_UNKNOWN_10); - spawnableActorList_add(&TTC_TREASUREHUNT_ACTOR_RED_QUESTION_MARK, actor_new, ACTOR_FLAG_UNKNOWN_10); - spawnableActorList_add(&TTC_TREASUREHUNT_ACTOR_RED_X, actor_new, ACTOR_FLAG_UNKNOWN_10); + spawnableActorList_add(&gChLockupSlow, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); + spawnableActorList_add(&gChLockupMedium, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); + spawnableActorList_add(&gChLockupFast, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); + spawnableActorList_add(&gChTreasurehuntRedArrow, actor_new, ACTOR_FLAG_UNKNOWN_10); + spawnableActorList_add(&gChTreasurehuntRedQuestionMark, actor_new, ACTOR_FLAG_UNKNOWN_10); + spawnableActorList_add(&gChTreasurehuntRedX, actor_new, ACTOR_FLAG_UNKNOWN_10); spawnableActorList_add(&gChTreasureInfo, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_25); spawnableActorList_add(&D_8038C628, actor_new, ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_9 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_15); spawnableActorList_add(&D_8038C64C, actor_new, ACTOR_FLAG_UNKNOWN_10); @@ -109,7 +109,7 @@ void TTC_func_80388AC0(void) spawnableActorList_add(&D_8038C694, actor_new, ACTOR_FLAG_UNKNOWN_10); spawnableActorList_add(&D_8038C6B8, actor_new, ACTOR_FLAG_UNKNOWN_10); spawnableActorList_add(&D_8038C6DC, actor_new, ACTOR_FLAG_UNKNOWN_10); - spawnableActorList_add(&TTC_CLAM_ACTOR, actor_new, ACTOR_FLAG_UNKNOWN_0 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_25); + spawnableActorList_add(&gChClam, actor_new, ACTOR_FLAG_UNKNOWN_0 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_25); } void TTC_func_80388C78(Actor *this){ diff --git a/src/core2/ch/gameSelect.c b/src/core2/ch/gameSelect.c index ef261c86..ed243191 100644 --- a/src/core2/ch/gameSelect.c +++ b/src/core2/ch/gameSelect.c @@ -80,7 +80,7 @@ ActorInfo D_80365F00 = { 0xE6, 0x197, 0x532, 0x1, D_80365ED0, func_802C4C14, fun /* .bss */ s32 mm_hut_smash_count; -u32 TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP; +u32 CH_TREASUREHUNT_PUZZLE_CURRENT_STEP; struct FF_StorageStruct* D_8037DCB8; s32 D_8037DCBC; u8 D_8037DCC0[7]; diff --git a/src/core2/code_9A740.c b/src/core2/code_9A740.c index bd4cff13..204277af 100644 --- a/src/core2/code_9A740.c +++ b/src/core2/code_9A740.c @@ -54,7 +54,7 @@ void func_803216D0(enum map_e map){ mm_resetHuts(); break; case MAP_7_TTC_TREASURE_TROVE_COVE: - TTC_Treasurehunt_resetProgress(); + chTreasurehunt_resetProgress(); break; case MAP_1B_MMM_MAD_MONSTER_MANSION: mmm_resetFlowerPots(); diff --git a/src/core2/code_AD110.c b/src/core2/code_AD110.c index 18bbdb5e..c45c3ffa 100644 --- a/src/core2/code_AD110.c +++ b/src/core2/code_AD110.c @@ -291,12 +291,12 @@ extern void warp_lairEnterLairFromSMLevel(s32, s32); extern void func_802C1674(s32, s32); extern void func_802C169C(s32, s32); -extern void TTC_Treasurehunt_checkStepProgress0(s32, s32); -extern void TTC_Treasurehunt_checkStepProgress1(s32, s32); -extern void TTC_Treasurehunt_checkStepProgress2(s32, s32); -extern void TTC_Treasurehunt_checkStepProgress3(s32, s32); -extern void TTC_Treasurehunt_checkStepProgress4(s32, s32); -extern void TTC_Treasurehunt_checkStepProgress5(s32, s32); +extern void chTreasurehunt_checkStepProgress0(s32, s32); +extern void chTreasurehunt_checkStepProgress1(s32, s32); +extern void chTreasurehunt_checkStepProgress2(s32, s32); +extern void chTreasurehunt_checkStepProgress3(s32, s32); +extern void chTreasurehunt_checkStepProgress4(s32, s32); +extern void chTreasurehunt_checkStepProgress5(s32, s32); extern void chMumbo_detransformWarn(s32, s32); extern void chMumbo_detransformTrigger(s32, s32); extern void func_8033443C(s32, s32); @@ -413,8 +413,8 @@ Method_core2_AD110 D_8036FE5C[] ={ func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, - func_8033443C, TTC_Treasurehunt_checkStepProgress0, TTC_Treasurehunt_checkStepProgress1, TTC_Treasurehunt_checkStepProgress2, - TTC_Treasurehunt_checkStepProgress3, TTC_Treasurehunt_checkStepProgress4, TTC_Treasurehunt_checkStepProgress5, chMumbo_detransformWarn, + func_8033443C, chTreasurehunt_checkStepProgress0, chTreasurehunt_checkStepProgress1, chTreasurehunt_checkStepProgress2, + chTreasurehunt_checkStepProgress3, chTreasurehunt_checkStepProgress4, chTreasurehunt_checkStepProgress5, chMumbo_detransformWarn, chMumbo_detransformTrigger, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, From 41cfc6aeac131a36a163b9f7645d86e80216bc67 Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Sun, 29 Sep 2024 02:27:48 +0200 Subject: [PATCH 07/19] document: Leaky from TTC --- include/enums.h | 17 +++++++++-------- src/TTC/ch/blubber.c | 8 ++++---- src/TTC/ch/leaky.c | 34 ++++++++++++++++++---------------- src/TTC/ch/nipper.c | 2 +- src/TTC/code_26D0.c | 4 ++-- 5 files changed, 34 insertions(+), 31 deletions(-) diff --git a/include/enums.h b/include/enums.h index b607bee1..9313e022 100644 --- a/include/enums.h +++ b/include/enums.h @@ -2761,7 +2761,7 @@ enum asset_e ASSET_236_ANIM_BSPUMPKIN_REBOUND = 0x236, ASSET_238_ANIM_LOGGO_IDLE = 0x238, - + ASSET_239_ANIM_LEAKY_IDLE = 0x239, ASSET_240_ANIM_LOGGO_FLUSH = 0x240, ASSET_242_ANIM_GOBI_RELAXING = 0x242, @@ -3987,19 +3987,20 @@ enum asset_e ASSET_8A0_SPRITE_WATER_DROP = 0x8a0, - ASSET_A0B_FIRST_MEET_BLUBBER = 0xA0B, - ASSET_A0C_BLUBBER_HALF_GOLD = 0xA0C, - ASSET_A0D_BLUBBER_COMPLETE = 0xA0D, - ASSET_A0E_NIPPER_SPAWNED = 0xA0E, + ASSET_A0B_TEXT_BLUBBER_FIRST_MEET = 0xa0b, + ASSET_A0C_TEXT_BLUBBER_HALF_GOLD = 0xa0c, + ASSET_A0D_TEXT_BLUBBER_COMPLETE = 0xa0d, + ASSET_A0E_TEXT_NIPPER_SPAWNED = 0xa0e, - ASSET_A10_TEXT_TTC_NIPPER_HURT = 0xA10, + ASSET_A10_TEXT_TTC_NIPPER_HURT = 0xa10, - ASSET_A14_TEXT_CLAM_TAUNT = 0xA14, - ASSET_A15_TEXT_TTC_LOCKUP_SPAWNED = 0xA15, + ASSET_A14_TEXT_CLAM_TAUNT = 0xa14, + ASSET_A15_TEXT_TTC_LOCKUP_SPAWNED = 0xa15, ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED = 0xa17, ASSET_A18_TEXT_TREASUREHUNT_FOLLOW_CLUES = 0xa18, ASSET_A19_TEXT_TREASUREHUNT_SECOND_STEP = 0xa19, + ASSET_A1A_TEXT_LEAKY_FIRST_MEET = 0xa1a, ASSET_A1F_DIALOG_SHOCKJUMP_LEARN = VER_SELECT(0xa1f, 0x91f, 0, 0), ASSET_A20_DIALOG_FLY_LEARN, diff --git a/src/TTC/ch/blubber.c b/src/TTC/ch/blubber.c index e3d004bf..9d7b1640 100644 --- a/src/TTC/ch/blubber.c +++ b/src/TTC/ch/blubber.c @@ -70,7 +70,7 @@ void chBlubber_showTextCallback(ActorMarker *caller, enum asset_e text_id, s32 a Actor *this = marker_getActor(caller); ActorLocal_Blubber *local = (ActorLocal_Blubber*)&this->local; - if(text_id == ASSET_A0D_BLUBBER_COMPLETE || text_id == ASSET_A2A_BLUBBER_COMPLETE_JIGGY_COLLECTED){ + if(text_id == ASSET_A0D_TEXT_BLUBBER_COMPLETE || text_id == ASSET_A2A_BLUBBER_COMPLETE_JIGGY_COLLECTED){ local->unk24 = 0; } else{ @@ -96,7 +96,7 @@ void chBlubber_showJiggySpawnedText(ActorMarker *marker){ this->actor_specific_1_f = 0.0f; if(!mapSpecificFlags_get(CH_BLUBBER_MAP_FLAG_2_JIGGY_SPAWNED_TEXT_SHOWN)) { - text_id = jiggyscore_isCollected(JIGGY_14_TTC_BLUBBER) ? ASSET_A2A_BLUBBER_COMPLETE_JIGGY_COLLECTED : ASSET_A0D_BLUBBER_COMPLETE; + text_id = jiggyscore_isCollected(JIGGY_14_TTC_BLUBBER) ? ASSET_A2A_BLUBBER_COMPLETE_JIGGY_COLLECTED : ASSET_A0D_TEXT_BLUBBER_COMPLETE; gcdialog_showText(text_id, 0xf, this->position, this->marker, chBlubber_showTextCallback, chBlubber_showTextCallback2); mapSpecificFlags_set(CH_BLUBBER_MAP_FLAG_2_JIGGY_SPAWNED_TEXT_SHOWN, TRUE); } @@ -164,7 +164,7 @@ void chBlubber_updateFunc(Actor * this){ && !this->has_met_before && item_getCount(ITEM_18_GOLD_BULLIONS) == 0 ){ - gcdialog_showText(ASSET_A0B_FIRST_MEET_BLUBBER, 0xe, this->position, this->marker, chBlubber_showTextCallback, NULL); + gcdialog_showText(ASSET_A0B_TEXT_BLUBBER_FIRST_MEET, 0xe, this->position, this->marker, chBlubber_showTextCallback, NULL); this->has_met_before = TRUE; subaddie_set_state_forward(this, CH_BLUBBER_STATE_3_UNKNOWN); } @@ -173,7 +173,7 @@ void chBlubber_updateFunc(Actor * this){ && !this->unk138_23 ){ if (item_getCount(ITEM_18_GOLD_BULLIONS) == 0) { - gcdialog_showText(ASSET_A0C_BLUBBER_HALF_GOLD, 4, NULL, NULL, NULL, NULL); + gcdialog_showText(ASSET_A0C_TEXT_BLUBBER_HALF_GOLD, 4, NULL, NULL, NULL, NULL); } this->unk138_23 = TRUE; diff --git a/src/TTC/ch/leaky.c b/src/TTC/ch/leaky.c index e8c715c3..153cdd42 100644 --- a/src/TTC/ch/leaky.c +++ b/src/TTC/ch/leaky.c @@ -6,33 +6,33 @@ extern void func_8028E668(f32 [3], f32, f32, f32); extern void func_8028F9DC(s32); extern void func_803272D0(f32 arg0[3], f32 arg1, s32 arg2, int (*arg3)(Actor *)); -void chLeaky_update(Actor *this); +void chLeaky_updateFunc(Actor *this); /* .data */ -ActorAnimationInfo D_8038C700[] = { +ActorAnimationInfo gChLeakyAnimations[3] = { {0x000, 0.0f}, - {0x239, 2.5f}, - {0x239, 2.5f} + {ASSET_239_ANIM_LEAKY_IDLE, 2.5f}, + {ASSET_239_ANIM_LEAKY_IDLE, 2.5f} }; -ActorInfo D_8038C718 = { +ActorInfo gChLeaky = { MARKER_33_LEAKY, ACTOR_1E_LEAKY, ASSET_51A_MODEL_LEAKY, - 0x1, D_8038C700, - chLeaky_update, func_80326224, actor_draw, + 0x1, gChLeakyAnimations, + chLeaky_updateFunc, func_80326224, actor_draw, 0, 0, 0.0f, 0 }; /* .code */ -bool TTC_func_80388F70(Actor *this){ +bool chLeaky_isCurrentModelShrapnel(Actor *this){ return this->modelCacheIndex == ACTOR_56_SHRAPNEL; } void func_80388F88(void){ static f32 D_8038C73C[3] = {2500.0f, 250.0f, 4600.0f}; - func_803272D0(D_8038C73C, 2000.0f, 2, TTC_func_80388F70); + func_803272D0(D_8038C73C, 2000.0f, 2, chLeaky_isCurrentModelShrapnel); } -void chLeaky_update(Actor *this) { +void chLeaky_updateFunc(Actor *this) { void *temp_v0_2; func_8028E668(this->position, 100.0f, -20.0f, 100.0f); @@ -53,21 +53,23 @@ void chLeaky_update(Actor *this) { this->state = 1; } } + if( this->state == 1 && !this->has_met_before && func_80329530(this, 250) && !func_80329530(this, 160) && !func_8028ECAC() - && gcdialog_showText(0xA1A, 0, NULL, NULL, NULL, NULL) + && gcdialog_showText(ASSET_A1A_TEXT_LEAKY_FIRST_MEET, 0, NULL, NULL, NULL, NULL) ){ this->has_met_before = TRUE; } + if (func_803114B0() == 0) { if (actor_animationIsAt(this, 0.83f)) { - func_8030E878(0x109, randf2(0.775f, 0.825f), 22000, this->position, 400.0f, 1000.0f); + func_8030E878(SFX_109_LOGGO_LID_CLAP, randf2(0.775f, 0.825f), 22000, this->position, 400.0f, 1000.0f); return; } if (actor_animationIsAt(this, 0.01f)) { - func_8030E878(0x109, randf2(1.025f, 1.075f), 18000, this->position, 400.0f, 1000.0f); + func_8030E878(SFX_109_LOGGO_LID_CLAP, randf2(1.025f, 1.075f), 18000, this->position, 400.0f, 1000.0f); return; } if( actor_animationIsAt(this, 0.15f) @@ -75,12 +77,12 @@ void chLeaky_update(Actor *this) { || actor_animationIsAt(this, 0.53f) || actor_animationIsAt(this, 0.66f) ){ - func_8030E878(0x109, randf2(1.225f, 1.275f), 14000, this->position, 400.0f, 1000.0f); + func_8030E878(SFX_109_LOGGO_LID_CLAP, randf2(1.225f, 1.275f), 14000, this->position, 400.0f, 1000.0f); } } } -void __chLeaky_startCutscene(ActorMarker *caller, enum asset_e text_id, s32 arg2){ +void chLeaky_showDoneText(ActorMarker *caller, enum asset_e text_id, s32 arg2){ Actor *this = marker_getActor(caller); Struct73s *temp_v0; subaddie_set_state(this, 2); @@ -111,6 +113,6 @@ bool chLeaky_eggCollision(ActorMarker *marker){ levelSpecificFlags_set(2, TRUE); levelSpecificFlags_set(5, TRUE); - gcdialog_showText(ASSET_A28_TEXT_LEAKY_DONE, 0x2a, this->position, this->marker, __chLeaky_startCutscene, NULL); + gcdialog_showText(ASSET_A28_TEXT_LEAKY_DONE, 0x2a, this->position, this->marker, chLeaky_showDoneText, NULL); return TRUE; } diff --git a/src/TTC/ch/nipper.c b/src/TTC/ch/nipper.c index 7a04a969..62b1fdb0 100644 --- a/src/TTC/ch/nipper.c +++ b/src/TTC/ch/nipper.c @@ -243,7 +243,7 @@ void chNipper_updateFunc(Actor *this){ && temp_v0 != 10 ){ subaddie_set_state_with_direction(this, CH_NIPPER_STATE_SPAWNED, 0.01f, 1); - if(gcdialog_showText(ASSET_A0E_NIPPER_SPAWNED, 0xf, this->position, this->marker, chNipper_spawnedShowTextCallback, NULL)){ + if(gcdialog_showText(ASSET_A0E_TEXT_NIPPER_SPAWNED, 0xf, this->position, this->marker, chNipper_spawnedShowTextCallback, NULL)){ this->has_met_before = TRUE; } comusic_8025AB44(COMUSIC_12_TTC_NIPPER, 5000, 300); diff --git a/src/TTC/code_26D0.c b/src/TTC/code_26D0.c index c0d5d50d..93e87b70 100644 --- a/src/TTC/code_26D0.c +++ b/src/TTC/code_26D0.c @@ -16,7 +16,7 @@ extern ActorInfo D_8038C670; extern ActorInfo D_8038C694; extern ActorInfo D_8038C6B8; extern ActorInfo D_8038C6DC; -extern ActorInfo D_8038C718; +extern ActorInfo gChLeaky; extern ActorInfo gChLockupSlow; extern ActorInfo gChLockupMedium; extern ActorInfo gChLockupFast; @@ -95,7 +95,7 @@ void TTC_func_80388AC0(void) spawnableActorList_add(&D_8038C604, actor_new, ACTOR_FLAG_NONE); spawnableActorList_add(&gChNipper, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_20 | ACTOR_FLAG_UNKNOWN_26); spawnableActorList_add(&gChBlubber, actor_new, ACTOR_FLAG_UNKNOWN_0 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_26); - spawnableActorList_add(&D_8038C718, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_8); + spawnableActorList_add(&gChLeaky, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_8); spawnableActorList_add(&gChLockupSlow, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); spawnableActorList_add(&gChLockupMedium, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); spawnableActorList_add(&gChLockupFast, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8); From 664885663ef95292a31f457ba6688ca55c5accb4 Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Sun, 29 Sep 2024 02:31:54 +0200 Subject: [PATCH 08/19] document: Treasure from TTC --- src/TTC/ch/treasure.c | 22 +++++++++++----------- src/TTC/code_26D0.c | 4 ++-- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/TTC/ch/treasure.c b/src/TTC/ch/treasure.c index 7c51dd5b..79727e68 100644 --- a/src/TTC/ch/treasure.c +++ b/src/TTC/ch/treasure.c @@ -2,25 +2,25 @@ #include "functions.h" #include "variables.h" -void chtreasure_update(Actor *this); +void chTreasure_updateFunc(Actor *this); /* .data */ -ActorAnimationInfo gChTreasureAnim[]={ +ActorAnimationInfo gChTreasureAnimations[4] = { {0, 0.0f}, {ASSET_153_ANIM_BURIED_TREASURE_APPEAR, 2.0f}, {ASSET_166_ANIM_BURIED_TREASURE_BOUNCE, 0.33f}, {0, 0.0} }; -ActorInfo gChTreasureInfo = { +ActorInfo gChTreasure = { MARKER_DB_BURIED_TREASURE, ACTOR_F4_BURIED_TREASURE, ASSET_42C_MODEL_BURIED_TREASURE, - 1, gChTreasureAnim, - chtreasure_update, func_80326224, actor_draw, + 1, gChTreasureAnimations, + chTreasure_updateFunc, func_80326224, actor_draw, 0, 0, 1.7f, 0 }; /* .code */ -void __chtreasure_die(ActorMarker *marker, ActorMarker *otherMarker){ +void chTreasure_die(ActorMarker *marker, ActorMarker *otherMarker){ Actor *this = marker_getActor(marker); __spawnQueue_add_4((GenFunction_4) spawnQueue_actor_f32, 0x4C, reinterpret_cast(s32, this->position[0]), reinterpret_cast(s32, this->position[1]), reinterpret_cast(s32, this->position[2])); func_802EE278(this, 3, 0xf, 0x3C, 0.2f, 1.2f); @@ -29,7 +29,7 @@ void __chtreasure_die(ActorMarker *marker, ActorMarker *otherMarker){ marker_despawn(marker); } -void __chtreasure_updatePosition(Actor *this){ +void chTreasure_updateFuncPosition(Actor *this){ this->position[0] = this->unk1C[0];\ this->position[1] = this->unk1C[1];\ this->position[2] = this->unk1C[2]; @@ -42,7 +42,7 @@ void __chtreasure_updatePosition(Actor *this){ this->yaw = this->lifetime_value*180.0/M_PI; } -void chtreasure_update(Actor *this){ +void chTreasure_updateFunc(Actor *this){ f32 sp3C[3]; s16 sp34[3]; @@ -61,9 +61,9 @@ void chtreasure_update(Actor *this){ this->unk1C[2] = this->position[2]; actor_playAnimationOnce(this); - marker_setCollisionScripts(this->marker, NULL, NULL, __chtreasure_die); - }//L8038C214 - __chtreasure_updatePosition(this); + marker_setCollisionScripts(this->marker, NULL, NULL, chTreasure_die); + } + chTreasure_updateFuncPosition(this); func_8034A174(this->marker->unk44, 5, sp3C); sp34[0] = (s16)sp3C[0]; sp34[1] = (s16)sp3C[1]; diff --git a/src/TTC/code_26D0.c b/src/TTC/code_26D0.c index 93e87b70..f6812396 100644 --- a/src/TTC/code_26D0.c +++ b/src/TTC/code_26D0.c @@ -23,7 +23,7 @@ extern ActorInfo gChLockupFast; extern ActorInfo gChTreasurehuntRedArrow; extern ActorInfo gChTreasurehuntRedQuestionMark; extern ActorInfo gChTreasurehuntRedX; -extern ActorInfo gChTreasureInfo; +extern ActorInfo gChTreasure; void TTC_func_80388C78(Actor *this); void func_80388CB8(Actor *this); @@ -102,7 +102,7 @@ void TTC_func_80388AC0(void) spawnableActorList_add(&gChTreasurehuntRedArrow, actor_new, ACTOR_FLAG_UNKNOWN_10); spawnableActorList_add(&gChTreasurehuntRedQuestionMark, actor_new, ACTOR_FLAG_UNKNOWN_10); spawnableActorList_add(&gChTreasurehuntRedX, actor_new, ACTOR_FLAG_UNKNOWN_10); - spawnableActorList_add(&gChTreasureInfo, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_25); + spawnableActorList_add(&gChTreasure, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_25); spawnableActorList_add(&D_8038C628, actor_new, ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_9 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_15); spawnableActorList_add(&D_8038C64C, actor_new, ACTOR_FLAG_UNKNOWN_10); spawnableActorList_add(&D_8038C670, actor_new, ACTOR_FLAG_UNKNOWN_2 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_17); From 9b427eb379445ca98e22caf18016210e013f4d3b Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Sun, 29 Sep 2024 03:06:42 +0200 Subject: [PATCH 09/19] document: code26D0 --- include/enums.h | 24 +++++++-- level_symbols.us.v10.txt | 2 +- src/TTC/code_26D0.c | 108 +++++++++++++++++++-------------------- src/core2/code_956B0.c | 20 ++++---- src/core2/spawnqueue.c | 2 +- 5 files changed, 85 insertions(+), 71 deletions(-) diff --git a/include/enums.h b/include/enums.h index 9313e022..0ac4fe4a 100644 --- a/include/enums.h +++ b/include/enums.h @@ -1681,6 +1681,8 @@ enum actor_e ACTOR_E_BULL_INTRO, ACTOR_F_CHIMPY = 0xF, + ACTOR_10E_BLUBBER_SHIP_TOP_HATCH = 0x10e, + ACTOR_11_JUJU_CTRL = 0x11, ACTOR_12_BEEHIVE, //ACTOR_13_SINKING_BOBBER @@ -2019,7 +2021,12 @@ enum actor_e ACTOR_2A9_ACORN, ACTOR_2DB_DINGPOT = 0x2DB, + ACTOR_2DF_LIGHTHOUSE_B = 0x2df, + ACTOR_2E0_TTC_STAIRS_1 = 0x2e0, + ACTOR_2E1_TTC_STAIRS_2 = 0x2e1, + ACTOR_2E2_LIGHTHOUSE_A = 0x2e2, + ACTOR_2E5_DOOR_OF_GRUNTY = 0x2e5, ACTOR_30D_BOOM_BOX_FAST = 0x30D, @@ -3015,15 +3022,15 @@ enum asset_e // 3b3 Mumbo's Hut // Unused // Unused - // 3b6 TTC Stairs 1 - // 3b7 TTC Stairs 2 + ASSET_3B6_MODEL_TTC_STAIRS_1 = 0x3b6, + ASSET_3B7_MODEL_TTC_STAIRS_1 = 0x3b7, // Unused // Unused // Unused ASSET_3BB_MODEL_JINJO_YELLOW = 0x3BB, ASSET_3BC_MODEL_JINJO_ORANGE, - // 3bd TTC Lighthouse A - // 3be TTC Lighthouse B + ASSET_3BD_MODEL_LIGHTHOUSE_A = 0x3bd, + ASSET_3BE_MODEL_LIGHTHOUSE_B = 0x3be, ASSET_3BF_MODEL_PLAYER_SHADOW = 0x3BF, ASSET_3C0_MODEL_JINJO_BLUE, ASSET_3C1_MODEL_JINJO_PINK, @@ -3043,7 +3050,7 @@ enum asset_e // 3cf MMM Cellar Hatch // 3d0 MMM Locked Gate (Lock On Left) // 3d1 MMM Locked Gate (Lock On Right) 1 - // 3d2 TTC Blubber's Ship Top Hatch + ASSET_3D2_MODEL_BLUBBER_SHIP_TOP_HATCH = 0x3d2, // 3d3 MMM Church Door // 3d4 Lockup ASSET_3D4_MODEL_LOCKUP = 0x3d4, @@ -4536,6 +4543,8 @@ enum marker_e{ MARKER_99_TEEHEE = 0x99, + MARKER_A1_BLUBBER_SHIP_TOP_HATCH = 0xa1, + MARKER_A3_BLUBBER = 0xA3, MARKER_A4_LOCKUP_SLOW, MARKER_A5_NIPPER, @@ -4773,6 +4782,11 @@ enum marker_e{ MARKER_261_FIGHT_FLIGHT_PAD = 0x261, + MARKER_267_LIGHTHOUSE_A = 0x267, + MARKER_268_STAIRS_1 = 0x268, + MARKER_269_STAIRS_2 = 0x269, + MARKER_26A_LIGHTHOUSE_B = 0x26a, + MARKER_276_STONE_JINJO = 0x276, MARKER_27A_JINJO_STATUE_BASE = 0x27A, diff --git a/level_symbols.us.v10.txt b/level_symbols.us.v10.txt index 644876c1..aabae6b5 100644 --- a/level_symbols.us.v10.txt +++ b/level_symbols.us.v10.txt @@ -1,6 +1,6 @@ sm_func_80386810 = 0x80386810; mm_func_803888B0 = 0x803888B0; -ttc_func_80388AC0 = 0x80388AC0; +TTC_resetSpawnableActors = 0x80388AC0; ttc_func_8038BF8C = 0x8038BF8C; cc_func_803870E0 = 0x803870E0; cc_func_80387DA0 = 0x80387DA0; diff --git a/src/TTC/code_26D0.c b/src/TTC/code_26D0.c index f6812396..95e0a70f 100644 --- a/src/TTC/code_26D0.c +++ b/src/TTC/code_26D0.c @@ -8,14 +8,14 @@ extern ActorInfo gChClam; extern ActorInfo gChBlubber; extern ActorInfo gChNipper; -extern ActorInfo D_8038C5E0; -extern ActorInfo D_8038C604; -extern ActorInfo D_8038C628; -extern ActorInfo D_8038C64C; -extern ActorInfo D_8038C670; -extern ActorInfo D_8038C694; -extern ActorInfo D_8038C6B8; -extern ActorInfo D_8038C6DC; +extern ActorInfo gBlubberShipTopHatch; +extern ActorInfo gLighthouseDoor; +extern ActorInfo gSharkfoodIsland; +extern ActorInfo gLighthouseA; +extern ActorInfo gLighthouseB; +extern ActorInfo gStairs1; +extern ActorInfo gStairs2; +extern ActorInfo gPalmTree; extern ActorInfo gChLeaky; extern ActorInfo gChLockupSlow; extern ActorInfo gChLockupMedium; @@ -25,74 +25,74 @@ extern ActorInfo gChTreasurehuntRedQuestionMark; extern ActorInfo gChTreasurehuntRedX; extern ActorInfo gChTreasure; -void TTC_func_80388C78(Actor *this); -void func_80388CB8(Actor *this); -void func_80388D34(Actor *this); +void code26D0_genericUpdateFunc(Actor *this); +void code26D0_palmTreeUpdateFunc(Actor *this); +void code26D0_lighthouseAUpdateFunc(Actor *this); void func_802D3D54(Actor *this); -void func_80388D8C(Actor *this); +void code26D0_sharkfoodIslandUpdateFunc(Actor *this); /* .data */ -ActorInfo D_8038C5E0 = { - 0xA1, 0x10E, 0x3D2, +ActorInfo gBlubberShipTopHatch = { + MARKER_A1_BLUBBER_SHIP_TOP_HATCH, ACTOR_10E_BLUBBER_SHIP_TOP_HATCH, ASSET_3D2_MODEL_BLUBBER_SHIP_TOP_HATCH, 0x1, NULL, func_802D3D54, func_80326224, actor_drawFullDepth, 0, 0, 0.0f, 0 }; -ActorInfo D_8038C604 = { +ActorInfo gLighthouseDoor = { MARKER_EA_LIGHTHOUSE_DOOR, ACTOR_13E_LIGHTHOUSE_DOOR, ASSET_3D6_MODEL_LIGHTHOUSE_DOOR, 0x1, NULL, func_802D3D54, func_80326224, actor_drawFullDepth, 0, 0, 0.0f, 0 }; -ActorInfo D_8038C628 = { +ActorInfo gSharkfoodIsland = { MARKER_167_SHARKFOOD_ISLAND, ACTOR_25C_SHARKFOOD_ISLAND, ASSET_50A_MODEL_SHARKFOOD_ISLAND, 0x1, NULL, - func_80388D8C, func_80326224, actor_drawFullDepth, + code26D0_sharkfoodIslandUpdateFunc, func_80326224, actor_drawFullDepth, 0, 0, 0.0f, 0 }; -ActorInfo D_8038C64C = { - 0x267, 0x2E2, 0x3BD, +ActorInfo gLighthouseA = { + MARKER_267_LIGHTHOUSE_A, ACTOR_2E2_LIGHTHOUSE_A, ASSET_3BD_MODEL_LIGHTHOUSE_A, 0x1, NULL, - func_80388D34, func_80326224, actor_drawFullDepth, + code26D0_lighthouseAUpdateFunc, func_80326224, actor_drawFullDepth, 0, 0, 0.0f, 0 }; -ActorInfo D_8038C670 = { - 0x26A, 0x2DF, 0x3BE, +ActorInfo gLighthouseB = { + MARKER_26A_LIGHTHOUSE_B, ACTOR_2DF_LIGHTHOUSE_B, ASSET_3BE_MODEL_LIGHTHOUSE_B, 0x1, NULL, - TTC_func_80388C78, func_80326224, actor_drawFullDepth, + code26D0_genericUpdateFunc, func_80326224, actor_drawFullDepth, 0, 0, 0.0f, 0 }; -ActorInfo D_8038C694 = { - 0x268, 0x2E0, 0x3B6, +ActorInfo gStairs1 = { + MARKER_268_STAIRS_1, ACTOR_2E0_TTC_STAIRS_1, ASSET_3B6_MODEL_TTC_STAIRS_1, 0x1, NULL, - TTC_func_80388C78, func_80326224, actor_drawFullDepth, + code26D0_genericUpdateFunc, func_80326224, actor_drawFullDepth, 0, 0, 0.0f, 0 }; -ActorInfo D_8038C6B8 = { - 0x269, 0x2E1, 0x3B7, +ActorInfo gStairs2 = { + MARKER_269_STAIRS_2, ACTOR_2E1_TTC_STAIRS_2, ASSET_3B7_MODEL_TTC_STAIRS_1, 0x1, NULL, - TTC_func_80388C78, func_80326224, actor_drawFullDepth, + code26D0_genericUpdateFunc, func_80326224, actor_drawFullDepth, 0, 0, 0.0f, 0 }; -ActorInfo D_8038C6DC = { +ActorInfo gPalmTree = { MARKER_1D5_PALM_TREE, ACTOR_31E_PALM_TREE, ASSET_3A9_MODEL_PALM_TREE, 0x1, NULL, - func_80388CB8, func_80326224, actor_drawFullDepth, + code26D0_palmTreeUpdateFunc, func_80326224, actor_drawFullDepth, 0, 0, 0.0f, 0 }; /* .code */ -void TTC_func_80388AC0(void) +void TTC_resetSpawnableActors(void) { - spawnableActorList_add(&D_8038C5E0, actor_new, ACTOR_FLAG_NONE); - spawnableActorList_add(&D_8038C604, actor_new, ACTOR_FLAG_NONE); + spawnableActorList_add(&gBlubberShipTopHatch, actor_new, ACTOR_FLAG_NONE); + spawnableActorList_add(&gLighthouseDoor, actor_new, ACTOR_FLAG_NONE); spawnableActorList_add(&gChNipper, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_20 | ACTOR_FLAG_UNKNOWN_26); spawnableActorList_add(&gChBlubber, actor_new, ACTOR_FLAG_UNKNOWN_0 | ACTOR_FLAG_UNKNOWN_8 | ACTOR_FLAG_UNKNOWN_26); spawnableActorList_add(&gChLeaky, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_8); @@ -103,23 +103,23 @@ void TTC_func_80388AC0(void) spawnableActorList_add(&gChTreasurehuntRedQuestionMark, actor_new, ACTOR_FLAG_UNKNOWN_10); spawnableActorList_add(&gChTreasurehuntRedX, actor_new, ACTOR_FLAG_UNKNOWN_10); spawnableActorList_add(&gChTreasure, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_25); - spawnableActorList_add(&D_8038C628, actor_new, ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_9 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_15); - spawnableActorList_add(&D_8038C64C, actor_new, ACTOR_FLAG_UNKNOWN_10); - spawnableActorList_add(&D_8038C670, actor_new, ACTOR_FLAG_UNKNOWN_2 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_17); - spawnableActorList_add(&D_8038C694, actor_new, ACTOR_FLAG_UNKNOWN_10); - spawnableActorList_add(&D_8038C6B8, actor_new, ACTOR_FLAG_UNKNOWN_10); - spawnableActorList_add(&D_8038C6DC, actor_new, ACTOR_FLAG_UNKNOWN_10); + spawnableActorList_add(&gSharkfoodIsland, actor_new, ACTOR_FLAG_UNKNOWN_7 | ACTOR_FLAG_UNKNOWN_9 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_15); + spawnableActorList_add(&gLighthouseA, actor_new, ACTOR_FLAG_UNKNOWN_10); + spawnableActorList_add(&gLighthouseB, actor_new, ACTOR_FLAG_UNKNOWN_2 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_17); + spawnableActorList_add(&gStairs1, actor_new, ACTOR_FLAG_UNKNOWN_10); + spawnableActorList_add(&gStairs2, actor_new, ACTOR_FLAG_UNKNOWN_10); + spawnableActorList_add(&gPalmTree, actor_new, ACTOR_FLAG_UNKNOWN_10); spawnableActorList_add(&gChClam, actor_new, ACTOR_FLAG_UNKNOWN_0 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_25); } -void TTC_func_80388C78(Actor *this){ +void code26D0_genericUpdateFunc(Actor *this){ if(!this->initialized){ func_802D3D74(this); this->initialized = TRUE; } } -void func_80388CB8(Actor *this){ +void code26D0_palmTreeUpdateFunc(Actor *this){ if(!this->initialized){ func_802D3D74(this); this->initialized = TRUE; @@ -127,22 +127,22 @@ void func_80388CB8(Actor *this){ } } -void func_80388D04(s32 arg0){ +void code26D0_spawnLighthouseB(s32 arg0){ ActorMarker *marker = reinterpret_cast(ActorMarker *, arg0); Actor *this = marker_getActor(marker); - spawn_child_actor(0x2df, &this); + spawn_child_actor(ACTOR_2DF_LIGHTHOUSE_B, &this); } -void func_80388D34(Actor *this){ - TTC_func_80388C78(this); +void code26D0_lighthouseAUpdateFunc(Actor *this){ + code26D0_genericUpdateFunc(this); if(!this->volatile_initialized){ - __spawnQueue_add_1((GenFunction_1)func_80388D04, (s32)this->marker); + __spawnQueue_add_1((GenFunction_1)code26D0_spawnLighthouseB, (s32)this->marker); this->volatile_initialized = TRUE; } } -void func_80388D8C(Actor *this){ - f32 sp1C[3]; +void code26D0_sharkfoodIslandUpdateFunc(Actor *this){ + f32 player_position[3]; if(!this->initialized){ func_802D3CE8(this); @@ -163,12 +163,12 @@ void func_80388D8C(Actor *this){ }//L80388E7C if(this->position_y == 700.0f){ - player_getPosition(sp1C); - if( 695.0f <= sp1C[1] && sp1C[1] < 1000.0f - && (sp1C[0] - 5542.0f)*(sp1C[0] - 5542.0f) + (sp1C[2] - 8687.0f)*(sp1C[2] - 8687.0f) < 96100.0f - && (sp1C[0] - 6837.0f)*(sp1C[0] - 6837.0f) + (sp1C[2] - 12714.0f)*(sp1C[2] - 12714.0f) < 17640000.0f + player_getPosition(player_position); + if( 695.0f <= player_position[1] && player_position[1] < 1000.0f + && (player_position[0] - 5542.0f)*(player_position[0] - 5542.0f) + (player_position[2] - 8687.0f)*(player_position[2] - 8687.0f) < 96100.0f + && (player_position[0] - 6837.0f)*(player_position[0] - 6837.0f) + (player_position[2] - 12714.0f)*(player_position[2] - 12714.0f) < 17640000.0f ){ - func_8031D04C(0x8f, 1); + func_8031D04C(MAP_8F_TTC_SHARKFOOD_ISLAND, 1); } } } diff --git a/src/core2/code_956B0.c b/src/core2/code_956B0.c index 35b85a1c..9c631bd3 100644 --- a/src/core2/code_956B0.c +++ b/src/core2/code_956B0.c @@ -4,14 +4,14 @@ extern void func_8028F3D8(f32 *, f32, void(*)(ActorMarker *), ActorMarker *); extern void func_8028F760(s32, f32, f32); -extern void func_8031CE70(f32 *arg0, s32 arg1, s32 arg2); +extern void func_8031CE70(f32 *arg0, enum map_e arg1, s32 arg2); extern s32 fileProgressFlag_get(s32); extern s32 fileProgressFlag_getN(s32 offset, s32 numBits); extern void func_8031FFAC(void); extern void fileProgressFlag_set(s32 index, s32 set); extern void ml_vec3h_to_vec3f(f32 *, s32); extern NodeProp *func_80304ED0(void*, f32 *); -extern void func_8031CD44(s32, s32, f32, f32, s32); +extern void func_8031CD44(enum map_e, s32, f32, f32, s32); extern void func_80256E24(f32 *, f32, f32, f32, f32, f32); extern void mapSpecificFlags_set(s32, s32); @@ -170,7 +170,7 @@ void func_8031CD20(s32 arg0, s32 arg1, s32 arg2) { func_8031CC8C(arg0, (arg1 << 8) + arg2); } -void func_8031CD44(s32 arg0, s32 arg1, f32 arg2, f32 arg3, s32 arg4) { +void func_8031CD44(enum map_e arg0, s32 arg1, f32 arg2, f32 arg3, s32 arg4) { f32 sp3C[3]; f32 sp30[3]; f32 sp24[3]; @@ -195,7 +195,7 @@ void func_8031CE28(s32 arg0, s32 arg1, f32 arg2) { func_8031CD44(arg0, arg1, vec[1], arg2, 0x25); } -void func_8031CE70(f32 *arg0, s32 arg1, s32 arg2) { +void func_8031CE70(f32 *arg0, enum map_e arg1, s32 arg2) { f32 playerPos[3]; f32 sp38[3]; NodeProp *phi_s0; @@ -231,12 +231,12 @@ void func_8031CE70(f32 *arg0, s32 arg1, s32 arg2) { } } -void func_8031D04C(s32 arg0, s32 arg1) { +void func_8031D04C(enum map_e arg0, s32 arg1) { func_8031CB50(arg0, arg1, 0); } -void func_8031D06C(s32 arg0, s32 arg1) { - func_8031CB50(0x20, 0, 0); +void func_8031D06C(enum map_e arg0, s32 arg1) { + func_8031CB50(MAP_20_CS_END_NOT_100, 0, 0); } void func_8031D09C(s32 arg0, s32 arg1) { @@ -402,7 +402,7 @@ void func_8031D628(s32 arg0, s32 arg1) { if (actor) { marker_despawn(actor->marker); } - func_8031CB50(7, 0xC, 0); + func_8031CB50(MAP_7_TTC_TREASURE_TROVE_COVE, 0xC, 0); } void warp_mmmEnterDiningRoomDoor(s32 arg0, s32 arg1) { @@ -527,7 +527,7 @@ void warp_mmmEnterChurchSecretRoom(s32 arg0, s32 arg1) { func_8031CC8C(arg0, 0x2B01); } -void func_8031DAA8(s32 arg0, s32 arg1) { +void func_8031DAA8(enum map_e arg0, s32 arg1) { func_8028F918(0); func_8031CB50(arg0, arg1, 0); } @@ -560,7 +560,7 @@ void warp_mmmEnterRainBarrel(s32 arg0, s32 arg1) { } void func_8031DBE8(void) { - func_8031CB50(0x2F, 1, 1); + func_8031CB50(MAP_2F_MMM_WATERDRAIN_BARREL, 1, 1); } void func_8031DC10(s32 arg0, s32 arg1) { diff --git a/src/core2/spawnqueue.c b/src/core2/spawnqueue.c index 5adf6112..d225d6bc 100644 --- a/src/core2/spawnqueue.c +++ b/src/core2/spawnqueue.c @@ -374,7 +374,7 @@ void spawnQueue_reset(void){ GV_func_8038F154(); break; case OVERLAY_5_BEACH: - TTC_func_80388AC0(); + TTC_resetSpawnableActors(); break; case OVERLAY_6_JUNGLE: MM_func_803888B0(); From 2ff64a65bd4378ed1cc604937a041c850a0d78fc Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Fri, 4 Oct 2024 17:45:08 +0200 Subject: [PATCH 10/19] refac: move map flags into enums.h, mark functions static for blubber where applicable --- include/enums.h | 12 +++++++ src/TTC/ch/blubber.c | 83 ++++++++++++++++++++------------------------ src/TTC/ch/clam.c | 4 +-- src/TTC/ch/nipper.c | 4 +-- src/TTC/code_3E30.c | 4 +-- 5 files changed, 56 insertions(+), 51 deletions(-) diff --git a/include/enums.h b/include/enums.h index 0ac4fe4a..d110ca66 100644 --- a/include/enums.h +++ b/include/enums.h @@ -2316,6 +2316,18 @@ enum mm_specific_flags { MM_SPECIFIC_FLAG_A_UNKNOWN }; + +enum ttc_specific_flags { + TTC_SPECIFIC_FLAG_0_BLUBBER_UNKNOWN, + TTC_SPECIFIC_FLAG_1_UNKNOWN, // something related to the sand castle + TTC_SPECIFIC_FLAG_2_BLUBBER_JIGGY_SPAWNED_TEXT_SHOWN, + TTC_SPECIFIC_FLAG_3_BLUBBER_SHOW_JIGGY_SPAWNED_TEXT_FLAG, + // unused + TTC_SPECIFIC_FLAG_5_CLAM_FIRST_MEET_TEXT_SHOWN = 0x5, + // unused + TTC_SPECIFIC_FLAG_7_NIPPER_FIRST_MEET_TEXT_SHOWN = 0x7 +}; + enum item_e { ITEM_0_HOURGLASS_TIMER = 0x0, diff --git a/src/TTC/ch/blubber.c b/src/TTC/ch/blubber.c index f412a7cd..d73a1b50 100644 --- a/src/TTC/ch/blubber.c +++ b/src/TTC/ch/blubber.c @@ -2,29 +2,22 @@ #include "functions.h" #include "variables.h" -extern void func_8028E668(f32[3], f32, f32, f32); +extern void func_8028E668(f32 arg0[3], f32 arg1, f32 arg2, f32 arg3); extern void func_8028FA34(s32, Actor*); extern s32 func_802E0970(s32, f32, f32, f32, s32, s32, f32[3]); typedef struct { - u8 unk0[0xE]; - s16 unkE; + u8 unk0[0xE]; // unused? + s16 unkE; // some sort of index f32 throw_target_position[3]; s32 throw_target_radius; NodeProp* gold_bullion_throw_target_node_prop; s32 unk24; // bullions left to collect ? (changes from 4 to 0) } ActorLocal_Blubber; -void chBlubber_updateFunc(Actor *this); -void chBlubber_update2Func(Actor *this); -Actor *chBlubber_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); - -enum ch_blubber_map_flags_e { - CH_BLUBBER_MAP_FLAG_0_UNKNOWN = 0, - CH_BLUBBER_MAP_FLAG_1_UNKNOWN = 1, // If this is not set some things will not run like showing the jiggy collected text - CH_BLUBBER_MAP_FLAG_2_JIGGY_SPAWNED_TEXT_SHOWN = 2, // Jiggy collected text shown - CH_BLUBBER_MAP_FLAG_3_SHOW_JIGGY_SPAWNED_TEXT_FLAG = 3 -}; +static void __chBlubber_updateFunc(Actor *this); +static void __chBlubber_update2Func(Actor *this); +static Actor *__chBlubber_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); enum ch_blubber_states_e { CH_BLUBBER_STATE_1_UNKNOWN = 1, // initial state (80387A84) @@ -36,7 +29,7 @@ enum ch_blubber_states_e { /* .data */ ActorAnimationInfo gChBlubberAnimations[6] = { - {0x00, 0.0f}, + {NULL, NULL}, {ASSET_B5_ANIM_BLUBBER_WALK, 2.0f}, {ASSET_B6_ANIM_BLUBBER_CRY, 2.0f}, {ASSET_B6_ANIM_BLUBBER_CRY, 2.0f}, @@ -47,12 +40,12 @@ ActorAnimationInfo gChBlubberAnimations[6] = { ActorInfo gChBlubber = { MARKER_A3_BLUBBER, ACTOR_115_BLUBBER, ASSET_370_MODEL_BLUBBER, 0x1, gChBlubberAnimations, - chBlubber_updateFunc, chBlubber_update2Func, chBlubber_drawFunc, + __chBlubber_updateFunc, __chBlubber_update2Func, __chBlubber_drawFunc, 0, 0x399, 1.8f, 0 }; /* .code */ -void chBlubber_initiliaze(Actor *this){ +static void __chBlubber_initiliaze(Actor *this){ ActorLocal_Blubber *local = (ActorLocal_Blubber *)&this->local; animctrl_setTransitionDuration(this->animctrl, 0.2f); @@ -66,7 +59,7 @@ void chBlubber_initiliaze(Actor *this){ func_8032A82C(this, 0x14C); } -void chBlubber_showTextCallback(ActorMarker *caller, enum asset_e text_id, s32 arg1){ +static void __chBlubber_showTextCallback(ActorMarker *caller, enum asset_e text_id, s32 arg1){ Actor *this = marker_getActor(caller); ActorLocal_Blubber *local = (ActorLocal_Blubber*)&this->local; @@ -78,7 +71,7 @@ void chBlubber_showTextCallback(ActorMarker *caller, enum asset_e text_id, s32 a } } -void chBlubber_showTextCallback2(ActorMarker *caller, enum asset_e text_id, s32 arg1){ +static void __chBlubber_showTextCallback2(ActorMarker *caller, enum asset_e text_id, s32 arg1){ f32 sp24[3]; if(nodeProp_findPositionFromActorId(ACTOR_14B_TTC_BLUBBER_UNKNOWN, sp24)){ @@ -87,7 +80,7 @@ void chBlubber_showTextCallback2(ActorMarker *caller, enum asset_e text_id, s32 } } -void chBlubber_showJiggySpawnedText(ActorMarker *marker){ +static void __chBlubber_showJiggySpawnedText(ActorMarker *marker){ Actor *this = marker_getActor(reinterpret_cast(ActorMarker *, marker)); enum asset_e text_id; @@ -95,26 +88,26 @@ void chBlubber_showJiggySpawnedText(ActorMarker *marker){ actor_loopAnimation(this); this->actor_specific_1_f = 0.0f; - if(!mapSpecificFlags_get(CH_BLUBBER_MAP_FLAG_2_JIGGY_SPAWNED_TEXT_SHOWN)) { + if(!mapSpecificFlags_get(TTC_SPECIFIC_FLAG_2_BLUBBER_JIGGY_SPAWNED_TEXT_SHOWN)) { text_id = jiggyscore_isCollected(JIGGY_14_TTC_BLUBBER) ? ASSET_A2A_BLUBBER_COMPLETE_JIGGY_COLLECTED : ASSET_A0D_TEXT_BLUBBER_COMPLETE; - gcdialog_showText(text_id, 0xf, this->position, this->marker, chBlubber_showTextCallback, chBlubber_showTextCallback2); - mapSpecificFlags_set(CH_BLUBBER_MAP_FLAG_2_JIGGY_SPAWNED_TEXT_SHOWN, TRUE); + gcdialog_showText(text_id, 0xf, this->position, this->marker, __chBlubber_showTextCallback, __chBlubber_showTextCallback2); + mapSpecificFlags_set(TTC_SPECIFIC_FLAG_2_BLUBBER_JIGGY_SPAWNED_TEXT_SHOWN, TRUE); } } -void chBlubber_checkJiggySpawnedTextAndAdvanceState(Actor *this){ - if( !mapSpecificFlags_get(CH_BLUBBER_MAP_FLAG_1_UNKNOWN) ) return; - if( mapSpecificFlags_get(CH_BLUBBER_MAP_FLAG_3_SHOW_JIGGY_SPAWNED_TEXT_FLAG) ) return; +static void __chBlubber_checkJiggySpawnedTextAndAdvanceState(Actor *this){ + if( !mapSpecificFlags_get(TTC_SPECIFIC_FLAG_1_UNKNOWN) ) return; + if( mapSpecificFlags_get(TTC_SPECIFIC_FLAG_3_BLUBBER_SHOW_JIGGY_SPAWNED_TEXT_FLAG) ) return; this->yaw_ideal = (f32) func_80329784(this); - mapSpecificFlags_set(CH_BLUBBER_MAP_FLAG_3_SHOW_JIGGY_SPAWNED_TEXT_FLAG, TRUE); + mapSpecificFlags_set(TTC_SPECIFIC_FLAG_3_BLUBBER_SHOW_JIGGY_SPAWNED_TEXT_FLAG, TRUE); func_8028F918(2); timed_setStaticCameraToNode(0.0f, 4); - timedFunc_set_1(1.0f, (GenFunction_1)chBlubber_showJiggySpawnedText, (s32)this->marker); + timedFunc_set_1(1.0f, (GenFunction_1)__chBlubber_showJiggySpawnedText, (s32)this->marker); subaddie_set_state_with_direction(this, CH_BLUBBER_STATE_1_UNKNOWN, 0.0f, 1); } -void func_8038771C(Actor *this){ +static void __func_8038771C(Actor *this){ if( !func_80329030(this, 0) && func_80329480(this) ){ @@ -123,7 +116,7 @@ void func_8038771C(Actor *this){ } // probably something related to blubber throwing the bullions -void func_80387774(Actor **this_ptr){ +static void __func_80387774(Actor **this_ptr){ ActorLocal_Blubber *local = (ActorLocal_Blubber *)&(*this_ptr)->local; player_setCarryObjectPoseInCylinder(local->throw_target_position, local->throw_target_radius, 100.0f, ACTOR_2A_GOLD_BULLION, this_ptr); @@ -131,13 +124,13 @@ void func_80387774(Actor **this_ptr){ && bacarry_get_markerId() == MARKER_37_GOLD_BULLION && player_throwCarriedObject() ) { - func_8028FA34(!mapSpecificFlags_get(CH_BLUBBER_MAP_FLAG_0_UNKNOWN) ? ACTOR_149_TTC_BLUBBER_UNKNOWN : ACTOR_14A_TTC_BLUBBER_UNKNOWN, *this_ptr); + func_8028FA34(!mapSpecificFlags_get(TTC_SPECIFIC_FLAG_0_BLUBBER_UNKNOWN) ? ACTOR_149_TTC_BLUBBER_UNKNOWN : ACTOR_14A_TTC_BLUBBER_UNKNOWN, *this_ptr); (*this_ptr)->has_met_before = TRUE; } } -void func_80387830(Actor *this , f32 arg1, f32 arg2){ +static void __func_80387830(Actor *this , f32 arg1, f32 arg2){ if( actor_animationIsAt(this, arg1) || actor_animationIsAt(this, arg2) ){ @@ -145,12 +138,12 @@ void func_80387830(Actor *this , f32 arg1, f32 arg2){ } } -void chBlubber_updateFunc(Actor * this){ +static void __chBlubber_updateFunc(Actor *this){ ActorLocal_Blubber *local; this->marker->propPtr->unk8_3 = TRUE; func_8028E668(this->position, 90.0f, -10.0f, 110.0f); - if(!mapSpecificFlags_get(CH_BLUBBER_MAP_FLAG_1_UNKNOWN) && !func_80329530(this, 2500)) + if(!mapSpecificFlags_get(TTC_SPECIFIC_FLAG_1_UNKNOWN) && !func_80329530(this, 2500)) return; if(!this->volatile_initialized){ @@ -164,12 +157,12 @@ void chBlubber_updateFunc(Actor * this){ && !this->has_met_before && item_getCount(ITEM_18_GOLD_BULLIONS) == 0 ){ - gcdialog_showText(ASSET_A0B_TEXT_BLUBBER_FIRST_MEET, 0xe, this->position, this->marker, chBlubber_showTextCallback, NULL); + gcdialog_showText(ASSET_A0B_TEXT_BLUBBER_FIRST_MEET, 0xe, this->position, this->marker, __chBlubber_showTextCallback, NULL); this->has_met_before = TRUE; subaddie_set_state_forward(this, CH_BLUBBER_STATE_3_UNKNOWN); } - if( mapSpecificFlags_get(CH_BLUBBER_MAP_FLAG_0_UNKNOWN) + if( mapSpecificFlags_get(TTC_SPECIFIC_FLAG_0_BLUBBER_UNKNOWN) && !this->unk138_23 ){ if (item_getCount(ITEM_18_GOLD_BULLIONS) == 0) { @@ -184,21 +177,21 @@ void chBlubber_updateFunc(Actor * this){ case CH_BLUBBER_STATE_1_UNKNOWN: if(!this->initialized){ actor_collisionOff(this); - chBlubber_initiliaze(this); + __chBlubber_initiliaze(this); } - func_80387774(&this); + __func_80387774(&this); if(subaddie_maybe_set_state_position_direction(this, CH_BLUBBER_STATE_2_UNKNOWN, 0.0f, 1, 0.007f)) break; func_80328FB0(this, 3.0f); - func_8038771C(this); - func_80387830(this, 0.14f, 0.68f); - chBlubber_checkJiggySpawnedTextAndAdvanceState(this); + __func_8038771C(this); + __func_80387830(this, 0.14f, 0.68f); + __chBlubber_checkJiggySpawnedTextAndAdvanceState(this); break; case CH_BLUBBER_STATE_2_UNKNOWN: - func_80387774(&this); + __func_80387774(&this); if( actor_animationIsAt(this, 0.99f) && subaddie_maybe_set_state_position_direction(this, CH_BLUBBER_STATE_1_UNKNOWN, 0.0f, 1, 0.78f) ){ @@ -218,7 +211,7 @@ void chBlubber_updateFunc(Actor * this){ FUNC_8030E8B4(SFX_83_BLUBBER_CRYING, 0.91f, 17000, this->position, 1250, 2500); } - chBlubber_checkJiggySpawnedTextAndAdvanceState(this); + __chBlubber_checkJiggySpawnedTextAndAdvanceState(this); break; case CH_BLUBBER_STATE_3_UNKNOWN: @@ -252,17 +245,17 @@ void chBlubber_updateFunc(Actor * this){ } } -void chBlubber_update2Func(Actor *this){ +static void __chBlubber_update2Func(Actor *this){ func_80343DEC(this); if(0.99 <= this->unk48){ func_8028F918(0); timed_exitStaticCamera(0.0f); marker_despawn(this->marker); } - func_80387830(this, 0.5f, 0.97f); + __func_80387830(this, 0.5f, 0.97f); } -Actor *chBlubber_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ +static Actor *__chBlubber_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ func_8033A45C(4, 0); return actor_draw(marker, gfx, mtx, vtx); } diff --git a/src/TTC/ch/clam.c b/src/TTC/ch/clam.c index 1225fef1..4f3ae213 100644 --- a/src/TTC/ch/clam.c +++ b/src/TTC/ch/clam.c @@ -245,8 +245,8 @@ void chClam_attackOther(ActorMarker *this_marker, ActorMarker *other_marker){ if(func_80297C6C() == 3) return; - if( !mapSpecificFlags_get(5) && gcdialog_showText(ASSET_A14_TEXT_CLAM_TAUNT, 0, NULL, NULL, NULL, NULL)){ - mapSpecificFlags_set(5, TRUE); + if( !mapSpecificFlags_get(TTC_SPECIFIC_FLAG_5_CLAM_FIRST_MEET_TEXT_SHOWN) && gcdialog_showText(ASSET_A14_TEXT_CLAM_TAUNT, 0, NULL, NULL, NULL, NULL)){ + mapSpecificFlags_set(TTC_SPECIFIC_FLAG_5_CLAM_FIRST_MEET_TEXT_SHOWN, TRUE); } if(item_getCount(ITEM_D_EGGS) != 0) diff --git a/src/TTC/ch/nipper.c b/src/TTC/ch/nipper.c index 62b1fdb0..c47494c8 100644 --- a/src/TTC/ch/nipper.c +++ b/src/TTC/ch/nipper.c @@ -175,11 +175,11 @@ void chNipper_ow2Func(ActorMarker * this_marker, ActorMarker *other_marker){ if(other_marker->id == 1){ this = marker_getActor(this_marker); - if( !mapSpecificFlags_get(7) + if( !mapSpecificFlags_get(TTC_SPECIFIC_FLAG_7_NIPPER_FIRST_MEET_TEXT_SHOWN) && this->has_met_before && gcdialog_showText(0xa0f, 0, NULL, NULL, NULL, NULL) ){ - mapSpecificFlags_set(7, TRUE); + mapSpecificFlags_set(TTC_SPECIFIC_FLAG_7_NIPPER_FIRST_MEET_TEXT_SHOWN, TRUE); } } } diff --git a/src/TTC/code_3E30.c b/src/TTC/code_3E30.c index 97e2cf1e..6b679ffc 100644 --- a/src/TTC/code_3E30.c +++ b/src/TTC/code_3E30.c @@ -147,7 +147,7 @@ void func_8038A328(void) { i_ptr->unk3 = 2; i_ptr->unk4 = 0.0f; } - mapSpecificFlags_set(1, FALSE); + mapSpecificFlags_set(TTC_SPECIFIC_FLAG_1_UNKNOWN, FALSE); } void func_8038A37C(s32 arg0, BKVtxRef *ref, Vtx *dst, s32 arg3) { @@ -318,7 +318,7 @@ void func_8038AC48(LetterFloorTile *arg0) { if (var_v0 & 1) { D_8038D720.unk8 = 2U; D_8038D720.unkC = 0.0f; - mapSpecificFlags_set(1, TRUE); + mapSpecificFlags_set(TTC_SPECIFIC_FLAG_1_UNKNOWN, TRUE); fileProgressFlag_set(0xFA, TRUE); func_8030E2C4(D_8038D720.sfxsourceIdx); func_8038A258(2); From 581b467d2f0a0a4dc4e129cdbf476bbc8279c333 Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Fri, 4 Oct 2024 17:48:02 +0200 Subject: [PATCH 11/19] refac: make clam functions static where applicable --- src/TTC/ch/clam.c | 76 +++++++++++++++++++++++------------------------ 1 file changed, 38 insertions(+), 38 deletions(-) diff --git a/src/TTC/ch/clam.c b/src/TTC/ch/clam.c index 4f3ae213..37358b5d 100644 --- a/src/TTC/ch/clam.c +++ b/src/TTC/ch/clam.c @@ -6,11 +6,11 @@ extern void spawnQueue_bundle_f32(s32, s32, s32, s32); extern f32 func_80257204(f32, f32, f32, f32); extern ActorProp * func_80320EB0(ActorMarker *, f32, s32); -void chClam_updateFunc(Actor *this); +static void __chClam_updateFunc(Actor *this); /* .data */ ActorAnimationInfo gChClamAnimations[4] = { - {0x00, 0.0f}, + {NULL, NULL}, {ASSET_AA_ANIM_CLAM_IDLE, 2.0f}, {ASSET_24_ANIM_CLAM_HOP, 1.0f}, {ASSET_AB_ANIM_CLAM_EAT, 0.6f} @@ -19,12 +19,12 @@ ActorAnimationInfo gChClamAnimations[4] = { ActorInfo gChClam = { MARKER_15_CLAM, ACTOR_69_CLAM, ASSET_351_MODEL_CLAM, 0x1, gChClamAnimations, - chClam_updateFunc, func_80326224, actor_draw, + __chClam_updateFunc, func_80326224, actor_draw, 4500, 0x366, 1.6f, 0 }; /* .code */ -void chClam_playSfx(enum sfx_e sfx_id, f32 volume, s32 sampleRate, f32 position[3], f32 minFadeDistance, f32 maxFadeDistance){ +static void __chClam_playSfx(enum sfx_e sfx_id, f32 volume, s32 sampleRate, f32 position[3], f32 minFadeDistance, f32 maxFadeDistance){ if(func_803114B0()){ sampleRate -= 10000; if(sampleRate < 0) @@ -34,13 +34,13 @@ void chClam_playSfx(enum sfx_e sfx_id, f32 volume, s32 sampleRate, f32 position[ func_8030E878(sfx_id, volume, sampleRate, position, minFadeDistance, maxFadeDistance); } -void chClam_func_80386454(Actor *this){ +static void __chClam_func_80386454(Actor *this){ subaddie_set_state_with_direction(this, 1, 0.01f, 1); actor_loopAnimation(this); animctrl_setDuration(this->animctrl, randf2(1.9f, 2.1f)); } -bool chClam_updateFuncTarget(Actor *this, f32 arg1) { +static bool __chClam_updateFuncTarget(Actor *this, f32 arg1) { f32 egg_dist; f32 red_feather_dist; f32 pad; @@ -84,13 +84,13 @@ bool chClam_updateFuncTarget(Actor *this, f32 arg1) { if ((volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) ? 0 : 0x11) < this->actor_specific_1_f) { this->actor_specific_1_f = (volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) != 0) ? 0.0f : 17.0f; } else if (sp38 == 0) { - chClam_playSfx(SFX_AE_YUMYUM_TALKING, randf2(0.9f, 1.0f), 22000, this->position, 500.0f, 2000.0f); + __chClam_playSfx(SFX_AE_YUMYUM_TALKING, randf2(0.9f, 1.0f), 22000, this->position, 500.0f, 2000.0f); } return TRUE; } -bool chClam_rotateTowardTarget(Actor *this, s32 arg1) { +static bool __chClam_rotateTowardTarget(Actor *this, s32 arg1) { f32 temp_f0_2; s32 position; s32 sp2C; @@ -100,7 +100,7 @@ bool chClam_rotateTowardTarget(Actor *this, s32 arg1) { animctrl_setDuration(this->animctrl, 1.0f); sp2C = (s32) ((f64) (60.0f / (f32) func_8033DD90()) * 0.5); - if ((this->unk1C[0] != 0.0f) || !chClam_updateFuncTarget(this, sp2C)) { + if ((this->unk1C[0] != 0.0f) || !__chClam_updateFuncTarget(this, sp2C)) { if (((f64) animctrl_getAnimTimer(this->animctrl) < 0.1) && ((f64) randf() < 0.5)) { if (this->unk1C[0] != 0.0f) { arg1 *= 2; @@ -132,7 +132,7 @@ bool chClam_rotateTowardTarget(Actor *this, s32 arg1) { } -void chClam_particalEmitterInit(ParticleEmitter *pCtrl, f32 position[3]){ +static void __chClam_particalEmitterInit(ParticleEmitter *pCtrl, f32 position[3]){ particleEmitter_setPosition(pCtrl, position); func_802EF9F8(pCtrl, 0.7f); func_802EFA18(pCtrl, 3); @@ -144,7 +144,7 @@ void chClam_particalEmitterInit(ParticleEmitter *pCtrl, f32 position[3]){ particleEmitter_setDrawMode(pCtrl, 2); } -void chClam_emitLargeShellParticles(f32 position[3], s32 count){ +static void __chClam_emitLargeShellParticles(f32 position[3], s32 count){ static struct41s D_8038C3F4 = { {{-50.0f, 750.0f, -50.0f}, {120.0f, 900.0f, 120.0f}}, {{ 0.0f, -1800.0f, 0.0f}, { 0.0f, -1800.0f, 0.0f}} @@ -152,7 +152,7 @@ void chClam_emitLargeShellParticles(f32 position[3], s32 count){ ParticleEmitter *pCtrl; pCtrl = partEmitMgr_newEmitter(count); - chClam_particalEmitterInit(pCtrl, position); + __chClam_particalEmitterInit(pCtrl, position); particleEmitter_setModel(pCtrl, ASSET_37C_MODEL_CLAM_LARGE_SHELL_PIECE); particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C3F4); particleEmitter_setAngularVelocityRange(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f); @@ -160,7 +160,7 @@ void chClam_emitLargeShellParticles(f32 position[3], s32 count){ particleEmitter_emitN(pCtrl, count); } -void chClam_emitEyeParticles(f32 position[3], s32 count){ +static void __chClam_emitEyeParticles(f32 position[3], s32 count){ static struct41s D_8038C424 = { {{-80.0f, 400.0f, -80.0f}, {160.0f, 860.0f, 160.0f}}, {{ 0.0f, -1400.0f, 0.0f}, { 0.0f, -1400.0f, 0.0f}} @@ -168,7 +168,7 @@ void chClam_emitEyeParticles(f32 position[3], s32 count){ ParticleEmitter *pCtrl; pCtrl = partEmitMgr_newEmitter(count); - chClam_particalEmitterInit(pCtrl, position); + __chClam_particalEmitterInit(pCtrl, position); particleEmitter_setModel(pCtrl, ASSET_37D_MODEL_CLAM_EYE); particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C424); particleEmitter_setAngularVelocityRange(pCtrl, -300.0f, -300.0f, -300.0f, 300.0f, 300.0f, 300.0f); @@ -176,7 +176,7 @@ void chClam_emitEyeParticles(f32 position[3], s32 count){ particleEmitter_emitN(pCtrl, count); } -void chClam_emitSmallShellParticles(f32 position[3], s32 count){ +static void __chClam_emitSmallShellParticles(f32 position[3], s32 count){ static struct41s D_8038C454 = { {{-200.0f, 850.0f, -200.0f}, {400.0f, 1000.0f, 400.0f}}, {{ 0.0f, -1800.0f, 0.0f}, { 0.0f, -1800.0f, 0.0f}} @@ -184,7 +184,7 @@ void chClam_emitSmallShellParticles(f32 position[3], s32 count){ ParticleEmitter *pCtrl; pCtrl = partEmitMgr_newEmitter(count); - chClam_particalEmitterInit(pCtrl, position); + __chClam_particalEmitterInit(pCtrl, position); particleEmitter_setModel(pCtrl, ASSET_37E_MODEL_CLAM_SMALL_SHELL_PIECE); particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C454); particleEmitter_setAngularVelocityRange(pCtrl, -800.0f, -800.0f, -800.0f, 800.0f, 800.0f, 800.0f); @@ -192,7 +192,7 @@ void chClam_emitSmallShellParticles(f32 position[3], s32 count){ particleEmitter_emitN(pCtrl, count); } -void chClam_emitEatencollectibleParticles(f32 position[3], enum asset_e sprite_id, s32 count){ +static void __chClam_emitEatencollectibleParticles(f32 position[3], enum asset_e sprite_id, s32 count){ static ParticleScaleAndLifetimeRanges D_8038C484 = { {0.2f, 0.35f}, {0.0f, 0.0f}, @@ -217,22 +217,22 @@ void chClam_emitEatencollectibleParticles(f32 position[3], enum asset_e sprite_i particleEmitter_emitN(pCtrl, count); } -void chClam_takeDamage(ActorMarker *this_marker, ActorMarker *other_marker){ +static void __chClam_takeDamage(ActorMarker *this_marker, ActorMarker *other_marker){ Actor *this; this = marker_getActor(this_marker); this->marker->collidable = FALSE; this->unk138_27 = TRUE; - chClam_playSfx(SFX_1D_HITTING_AN_ENEMY_1, 1.0f, 26000, this->position, 1500.0f, 2000.0f); - chClam_playSfx(SFX_115_BUZZBOMB_DEATH, 1.2f, 26000, this->position, 1500.0f, 2000.0f); - chClam_emitLargeShellParticles(this->position, 2); - chClam_emitEyeParticles(this->position, 2); - chClam_emitSmallShellParticles(this->position, 0xC); + __chClam_playSfx(SFX_1D_HITTING_AN_ENEMY_1, 1.0f, 26000, this->position, 1500.0f, 2000.0f); + __chClam_playSfx(SFX_115_BUZZBOMB_DEATH, 1.2f, 26000, this->position, 1500.0f, 2000.0f); + __chClam_emitLargeShellParticles(this->position, 2); + __chClam_emitEyeParticles(this->position, 2); + __chClam_emitSmallShellParticles(this->position, 0xC); func_803115C4(0xa14); marker_despawn(this->marker); } -void chClam_playerDropsItem(s32 index, enum item_e item_id){ +static void __chClam_playerDropsItem(s32 index, enum item_e item_id){ f32 position[3]; player_getPosition(position); @@ -241,7 +241,7 @@ void chClam_playerDropsItem(s32 index, enum item_e item_id){ item_dec(item_id); } -void chClam_attackOther(ActorMarker *this_marker, ActorMarker *other_marker){ +static void __chClam_attackOther(ActorMarker *this_marker, ActorMarker *other_marker){ if(func_80297C6C() == 3) return; @@ -250,13 +250,13 @@ void chClam_attackOther(ActorMarker *this_marker, ActorMarker *other_marker){ } if(item_getCount(ITEM_D_EGGS) != 0) - chClam_playerDropsItem(0xe, ITEM_D_EGGS); + __chClam_playerDropsItem(0xe, ITEM_D_EGGS); if(item_getCount(ITEM_F_RED_FEATHER) != 0) - chClam_playerDropsItem(0xf, ITEM_F_RED_FEATHER); + __chClam_playerDropsItem(0xf, ITEM_F_RED_FEATHER); } -void chClam_updateFunc(Actor *this){ +static void __chClam_updateFunc(Actor *this){ ActorProp *sp4C = func_80320EB0(this->marker, 30.0f, 1); f32 sp48; s32 sp44; @@ -269,7 +269,7 @@ void chClam_updateFunc(Actor *this){ if(!this->volatile_initialized){ this->volatile_initialized = TRUE; - marker_setCollisionScripts(this->marker, NULL, chClam_attackOther, chClam_takeDamage); + marker_setCollisionScripts(this->marker, NULL, __chClam_attackOther, __chClam_takeDamage); } if(this->state != 3){ @@ -293,11 +293,11 @@ void chClam_updateFunc(Actor *this){ switch(this->state){ case 1://L80387170 - if(chClam_rotateTowardTarget(this, 140)){ + if(__chClam_rotateTowardTarget(this, 140)){ subaddie_set_state_with_direction(this, 2, 0.01f, 1); actor_playAnimationOnce(this); animctrl_setDuration(this->animctrl, 1.0f); - chClam_playSfx(SFX_3F2_UNKNOWN, randf2(1.0f, 1.1f), 22000, this->position, 1500.0f, 2000.0f); + __chClam_playSfx(SFX_3F2_UNKNOWN, randf2(1.0f, 1.1f), 22000, this->position, 1500.0f, 2000.0f); } else{ animctrl_setDuration(this->animctrl, 2.0f); @@ -308,13 +308,13 @@ void chClam_updateFunc(Actor *this){ this->position_y += this->velocity_y; this->velocity_y += -5.0f; if(actor_animationIsAt(this, 0.63f)){ - chClam_playSfx(SFX_80_YUMYUM_CLACK, 1.0f, 20000, this->position, 1500.0f, 2000.0f); + __chClam_playSfx(SFX_80_YUMYUM_CLACK, 1.0f, 20000, this->position, 1500.0f, 2000.0f); } if(this->position_y <= sp48){ this->position_y = sp48; if(actor_animationIsAt(this, 0.99f) || 0.98 < animctrl_getAnimTimer(this->animctrl)){ - chClam_func_80386454(this); + __chClam_func_80386454(this); } } else{//L803872D4 @@ -330,12 +330,12 @@ void chClam_updateFunc(Actor *this){ } if(3.0f <= this->velocity_x){ - chClam_func_80386454(this); + __chClam_func_80386454(this); break; } if(actor_animationIsAt(this, 0.8f) && 2.0f == this->velocity_x){ - chClam_playSfx(SFX_4B_GULPING, randf2(0.8f, 0.9f), 22000, this->position, 700.0f, 2000.0f); + __chClam_playSfx(SFX_4B_GULPING, randf2(0.8f, 0.9f), 22000, this->position, 700.0f, 2000.0f); break; }//L803873C4 @@ -343,15 +343,15 @@ void chClam_updateFunc(Actor *this){ if(!this->marker->unk14_21) break; - chClam_playSfx(SFX_4C_LIP_SMACK, 1.0f, 20000, this->position, 500.0f, 2000.0f); + __chClam_playSfx(SFX_4C_LIP_SMACK, 1.0f, 20000, this->position, 500.0f, 2000.0f); func_8034A174(this->marker->unk44, 5, sp38); switch(this->unk38_31){ case MARKER_60_BLUE_EGG_COLLECTIBLE: - chClam_emitEatencollectibleParticles(sp38, ASSET_718_SPRITE_SPARKLE_WHITE_2, 8); + __chClam_emitEatencollectibleParticles(sp38, ASSET_718_SPRITE_SPARKLE_WHITE_2, 8); break; case MARKER_B5_RED_FEATHER_COLLECTIBLE: - chClam_emitEatencollectibleParticles(sp38, ASSET_715_SPRITE_SPARKLE_RED, 8); + __chClam_emitEatencollectibleParticles(sp38, ASSET_715_SPRITE_SPARKLE_RED, 8); break; } break; From 3ef65d7f0ef96f84bf5bf3e1b5dbfa06fb7bb0f5 Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Fri, 4 Oct 2024 17:54:05 +0200 Subject: [PATCH 12/19] refac: make leaky functions static where applicable --- src/TTC/ch/leaky.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/TTC/ch/leaky.c b/src/TTC/ch/leaky.c index 153cdd42..0228eac4 100644 --- a/src/TTC/ch/leaky.c +++ b/src/TTC/ch/leaky.c @@ -6,11 +6,11 @@ extern void func_8028E668(f32 [3], f32, f32, f32); extern void func_8028F9DC(s32); extern void func_803272D0(f32 arg0[3], f32 arg1, s32 arg2, int (*arg3)(Actor *)); -void chLeaky_updateFunc(Actor *this); +static void __chLeaky_updateFunc(Actor *this); /* .data */ ActorAnimationInfo gChLeakyAnimations[3] = { - {0x000, 0.0f}, + {NULL, NULL}, {ASSET_239_ANIM_LEAKY_IDLE, 2.5f}, {ASSET_239_ANIM_LEAKY_IDLE, 2.5f} }; @@ -18,21 +18,21 @@ ActorAnimationInfo gChLeakyAnimations[3] = { ActorInfo gChLeaky = { MARKER_33_LEAKY, ACTOR_1E_LEAKY, ASSET_51A_MODEL_LEAKY, 0x1, gChLeakyAnimations, - chLeaky_updateFunc, func_80326224, actor_draw, + __chLeaky_updateFunc, func_80326224, actor_draw, 0, 0, 0.0f, 0 }; /* .code */ -bool chLeaky_isCurrentModelShrapnel(Actor *this){ +static bool __chLeaky_isCurrentModelShrapnel(Actor *this){ return this->modelCacheIndex == ACTOR_56_SHRAPNEL; } -void func_80388F88(void){ +static void __func_80388F88(void){ static f32 D_8038C73C[3] = {2500.0f, 250.0f, 4600.0f}; - func_803272D0(D_8038C73C, 2000.0f, 2, chLeaky_isCurrentModelShrapnel); + func_803272D0(D_8038C73C, 2000.0f, 2, __chLeaky_isCurrentModelShrapnel); } -void chLeaky_updateFunc(Actor *this) { +static void __chLeaky_updateFunc(Actor *this) { void *temp_v0_2; func_8028E668(this->position, 100.0f, -20.0f, 100.0f); @@ -82,7 +82,7 @@ void chLeaky_updateFunc(Actor *this) { } } -void chLeaky_showDoneText(ActorMarker *caller, enum asset_e text_id, s32 arg2){ +static void __chLeaky_showDoneText(ActorMarker *caller, enum asset_e text_id, s32 arg2){ Actor *this = marker_getActor(caller); Struct73s *temp_v0; subaddie_set_state(this, 2); @@ -93,7 +93,7 @@ void chLeaky_showDoneText(ActorMarker *caller, enum asset_e text_id, s32 arg2){ func_80324E38(0.0f, 3); timed_setStaticCameraToNode(0.5f, 7); - timedFunc_set_0(1.0f, func_80388F88); + timedFunc_set_0(1.0f, __func_80388F88); func_80324E38(2.5f, 0); timedFunc_set_1(2.5f, func_8028F9DC, 2); timedFunc_set_3(2.5f, (GenFunction_3)func_802E4078, MAP_A_TTC_SANDCASTLE, 0, 0); @@ -113,6 +113,6 @@ bool chLeaky_eggCollision(ActorMarker *marker){ levelSpecificFlags_set(2, TRUE); levelSpecificFlags_set(5, TRUE); - gcdialog_showText(ASSET_A28_TEXT_LEAKY_DONE, 0x2a, this->position, this->marker, chLeaky_showDoneText, NULL); + gcdialog_showText(ASSET_A28_TEXT_LEAKY_DONE, 0x2a, this->position, this->marker, __chLeaky_showDoneText, NULL); return TRUE; } From 87942a08b0d2ce95a1ea1f8459e98309bd19467b Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Fri, 4 Oct 2024 17:56:48 +0200 Subject: [PATCH 13/19] refac: make lockup functions static where applicable --- src/TTC/ch/lockup.c | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/src/TTC/ch/lockup.c b/src/TTC/ch/lockup.c index dbf2557a..f22f1c00 100644 --- a/src/TTC/ch/lockup.c +++ b/src/TTC/ch/lockup.c @@ -9,8 +9,8 @@ typedef struct { s32 open_ticks_counter; } ActorLocal_Lockup; -Actor *chLockup_drawFunc(ActorMarker *this, Gfx **gfx, Mtx **mtx, Vtx **vtx); -void chLock_updateFunc(Actor *this); +static Actor *__chLockup_drawFunc(ActorMarker *this, Gfx **gfx, Mtx **mtx, Vtx **vtx); +static void __chLockup_updateFunc(Actor *this); enum ch_lockup_states_e { CH_LOCKUP_STATE_CLOSED = 1, // L803896F0 @@ -22,7 +22,7 @@ enum ch_lockup_states_e { /* .data */ ActorAnimationInfo gChLockupAnimations[6] ={ - {0, 0.0f}, + {NULL, NULL}, {ASSET_BC_ANIM_LOCKUP, 8000000.0f}, {ASSET_BC_ANIM_LOCKUP, 4.0f}, {ASSET_BC_ANIM_LOCKUP, 8000000.0f}, @@ -33,50 +33,50 @@ ActorAnimationInfo gChLockupAnimations[6] ={ ActorInfo gChLockupSlow = { MARKER_A4_LOCKUP_SLOW, ACTOR_151_LOCKUP_SLOW, ASSET_3D4_MODEL_LOCKUP, 1, gChLockupAnimations, - chLock_updateFunc, func_80326224, chLockup_drawFunc, + __chLockup_updateFunc, func_80326224, __chLockup_drawFunc, 2500, 0x366, 0.0f, 0 }; ActorInfo gChLockupMedium = { MARKER_F6_LOCKUP_MEDIUM, ACTOR_152_LOCKUP_MEDIUM, ASSET_3D4_MODEL_LOCKUP, 1, gChLockupAnimations, - chLock_updateFunc, func_80326224, chLockup_drawFunc, + __chLockup_updateFunc, func_80326224, __chLockup_drawFunc, 2500, 0x366, 0.0f, 0 }; ActorInfo gChLockupFast = { MARKER_F7_LOCKUP_FAST, ACTOR_153_LOCKUP_FAST, ASSET_3D4_MODEL_LOCKUP, 1, gChLockupAnimations, - chLock_updateFunc, func_80326224, chLockup_drawFunc, + __chLockup_updateFunc, func_80326224, __chLockup_drawFunc, 2500, 0x366, 0.0f, 0 }; -s32 CH_LOCKUP_CLOSE_COLOR[4] = {120, 120, 120, 120}; -s32 CH_LOCKUP_CLOSE_VELOCITY[3] = {0,0,0}; +static s32 sLockupCloseColor[4] = {120, 120, 120, 120}; +static s32 sLockupCloseVelocity[3] = {0,0,0}; /* .code */ -Actor *chLockup_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ +static Actor *__chLockup_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ Actor * actor = marker_getActor(marker); func_8033A45C(3, actor->unk38_31); func_8033A45C(4, actor->unk38_31); actor_draw(marker, gfx, mtx, vtx); } -void chLockup_close(Actor *this){ +static void __chLockup_close(Actor *this){ subaddie_set_state_with_direction(this, CH_LOCKUP_STATE_CLOSED, 0.2f, 1); this->marker->collidable = FALSE; this->unk38_31 = 0; FUNC_8030E8B4(SFX_6C_LOCKUP_CLOSING, 1.0f, 32000, this->position, 1250, 2500); } -void chLockup_open(Actor *this){ +static void __chLockup_open(Actor *this){ func_80389468(); subaddie_set_state_with_direction(this, CH_LOCKUP_STATE_OPENING, 0.2f, 1); this->unk38_31 = 1; FUNC_8030E8B4(SFX_6B_LOCKUP_OPENING, 1.0f, 32000, this->position, 1250, 2500); } -void chLock_updateFunc(Actor *this){ +static void __chLockup_updateFunc(Actor *this){ ActorLocal_Lockup *local = (ActorLocal_Lockup *)&this->local; s32 tmp_v1; int i; @@ -115,7 +115,7 @@ void chLock_updateFunc(Actor *this){ if(!(local->closed_ticks_counter < tmp_v1)){ local->closed_ticks_counter = 0; - chLockup_open(this); + __chLockup_open(this); } break; @@ -148,10 +148,10 @@ void chLock_updateFunc(Actor *this){ case CH_LOCKUP_STATE_CLOSING: case CH_LOCKUP_STATE_CLOSING2: if(this->marker->unk14_21 && actor_animationIsAt(this, 0.99f)){ - chLockup_close(this); + __chLockup_close(this); for(i = 5; i < 0xe; i++){ func_8034A174(this->marker->unk44, i, this->unk1C); - func_802EE6CC(this->unk1C, CH_LOCKUP_CLOSE_VELOCITY, CH_LOCKUP_CLOSE_COLOR, 1, 0.4f, 50.0f, 0xb4, 0xa0, 0); + func_802EE6CC(this->unk1C, sLockupCloseVelocity, sLockupCloseColor, 1, 0.4f, 50.0f, 0xb4, 0xa0, 0); } } break; From bd78c628f5e9fcb365f7c12aaf2ebe95987d7c84 Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Fri, 4 Oct 2024 18:01:54 +0200 Subject: [PATCH 14/19] refac: make nipper functions static where applicable --- include/enums.h | 1 + src/TTC/ch/nipper.c | 90 +++++++++++++++++++++--------------------- src/core2/code_956B0.c | 2 +- 3 files changed, 47 insertions(+), 46 deletions(-) diff --git a/include/enums.h b/include/enums.h index d110ca66..e20c1d34 100644 --- a/include/enums.h +++ b/include/enums.h @@ -4662,6 +4662,7 @@ enum marker_e{ MARKER_169_SNS_EGG, MARKER_16B_SNIPPET_UPSIDEDOWN = 0x16B, + MARKER_16C_NIPPER, MARKER_173_CHUMP_FISH_2 = 0x173, MARKER_174_GAME_OVER = 0x174, diff --git a/src/TTC/ch/nipper.c b/src/TTC/ch/nipper.c index c47494c8..97d1f2d0 100644 --- a/src/TTC/ch/nipper.c +++ b/src/TTC/ch/nipper.c @@ -2,40 +2,40 @@ #include "functions.h" #include "variables.h" -void chNipper_updateFunc(Actor *this); -Actor *chNipper_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); +static void __chNipper_updateFunc(Actor *this); +static Actor *__chNipper_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); enum ch_nipper_states_e { CH_NIPPER_STATE_1_UNKNOWN = 1, // L80388578 - CH_NIPPER_STATE_2_UNKNOWN = 2, // L8038872C - CH_NIPPER_STATE_3_UNKNOWN = 3, // L803887B4 - CH_NIPPER_STATE_DIEING = 4, // L80388910 - CH_NIPPER_STATE_SPAWNED = 5, // L80388938 - CH_NIPPER_STATE_DEAD = 6, // L803889A8 - CH_NIPPER_STATE_7_UNKNOWN = 7 // already dead? L80388A20 + CH_NIPPER_STATE_2_UNKNOWN, // L8038872C + CH_NIPPER_STATE_3_UNKNOWN, // L803887B4 + CH_NIPPER_STATE_4_DIEING, // L80388910 + CH_NIPPER_STATE_5_SPAWNED, // L80388938 + CH_NIPPER_STATE_6_DEAD, // L803889A8 + CH_NIPPER_STATE_7_UNKNOWN // already dead? L80388A20 }; /* .data */ ActorAnimationInfo gChNipperAnimations[8] = { - {0x00, 0.0f}, + {NULL, NULL}, {ASSET_C0_ANIM_NIPPER_IDLE, 2.0f}, {ASSET_BD_ANIM_NIPPER_VULNERABLE, 1.5f}, {ASSET_BF_ANIM_NIPPER_ATTACK, 1.2f}, {ASSET_BE_ANIM_NIPPER_OW, 1.3f}, {ASSET_C0_ANIM_NIPPER_IDLE, 2.0f}, {ASSET_133_ANIM_NIPPER_DIE, 3.0f}, - {0x00, 0.0f} + {NULL, NULL} }; ActorInfo gChNipper = { MARKER_A5_NIPPER, ACTOR_117_NIPPER, ASSET_3D5_MODEL_NIPPER, 0x1, gChNipperAnimations, - chNipper_updateFunc, func_80326224, chNipper_animFunc, + __chNipper_updateFunc, func_80326224, __chNipper_animFunc, 0, 0x299, 10.0f, 0 }; /* .code */ -void chNipper_drawParticlesAtPosition(f32 *position, s32 count) { +static void __chNipper_drawParticlesAtPosition(f32 *position, s32 count) { static s32 D_8038C5A4[3] = {180, 180, 180}; static ParticleScaleAndLifetimeRanges D_8038C5B0 = { {0.1f, 0.5f}, @@ -64,7 +64,7 @@ void chNipper_drawParticlesAtPosition(f32 *position, s32 count) { particleEmitter_emitN(pCtrl, count); } -Actor *chNipper_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) { +static Actor *__chNipper_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) { Actor *this; this = marker_getActor(marker); @@ -72,7 +72,7 @@ Actor *chNipper_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) { return actor_draw(marker, gfx, mtx, vtx); } -void chNipper_setAnimationDuration(Actor *this) { +static void __chNipper_setAnimationDuration(Actor *this) { subaddie_set_state_looped(this, CH_NIPPER_STATE_3_UNKNOWN); this->unk1C[0] = 0.0f; switch((s32)this->lifetime_value){ @@ -90,18 +90,18 @@ void chNipper_setAnimationDuration(Actor *this) { } } -void chNipper_spawnedShowTextCallback(ActorMarker *caller, enum asset_e text_id, s32 arg2){ +static void __chNipper_spawnedShowTextCallback(ActorMarker *caller, enum asset_e text_id, s32 arg2){ Actor *this; this = marker_getActor(caller); - chNipper_setAnimationDuration(this); + __chNipper_setAnimationDuration(this); ncStaticCamera_exit(); comusic_8025AB44(COMUSIC_12_TTC_NIPPER, -1, 300); } -void chNipper_playDeathAnimation(Actor *this) { +static void __chNipper_playDeathAnimation(Actor *this) { s32 i; - subaddie_set_state_with_direction(this, CH_NIPPER_STATE_DIEING, 0.01f, 1); + subaddie_set_state_with_direction(this, CH_NIPPER_STATE_4_DIEING, 0.01f, 1); actor_playAnimationOnce(this); for(i = 0; i < 3; i ++){ FUNC_8030E8B4(SFX_79_TICKER_DEATH, 0.5f, 17000, this->position, 1500, 3000); @@ -110,7 +110,7 @@ void chNipper_playDeathAnimation(Actor *this) { // if player too far away -> false // otherwise return whether sp2C is within -35 and 35? -bool func_80388088(Actor *this){ +static bool __func_80388088(Actor *this){ f32 sp2C; f32 sp20[3]; bool out; @@ -124,11 +124,11 @@ bool func_80388088(Actor *this){ return BOOL(-35.0f < sp2C && sp2C < 35.0f); } -bool chNipper_shouldShowActor(Actor *this){ - return BOOL(func_80329530(this, 1300) && func_80388088(this)); +static bool __chNipper_shouldShowActor(Actor *this){ + return BOOL(func_80329530(this, 1300) && __func_80388088(this)); } -void chNipper_dieFunc(ActorMarker *this_marker, ActorMarker *other_marker) { +static void __chNipper_dieFunc(ActorMarker *this_marker, ActorMarker *other_marker) { Actor *this; s32 i; @@ -136,7 +136,7 @@ void chNipper_dieFunc(ActorMarker *this_marker, ActorMarker *other_marker) { func_8032B4DC(this, other_marker, 7); if (this->lifetime_value == 40.0f) { - subaddie_set_state_with_direction(this, CH_NIPPER_STATE_DEAD, 0.01f, 1); + subaddie_set_state_with_direction(this, CH_NIPPER_STATE_6_DEAD, 0.01f, 1); actor_playAnimationOnce(this); for(i = 0; i < 3; i++){ FUNC_8030E8B4(SFX_78_EAGLECRY, 0.7f, 20000, this->position, 1500, 3000); @@ -149,20 +149,20 @@ void chNipper_dieFunc(ActorMarker *this_marker, ActorMarker *other_marker) { } if (this->lifetime_value == 80.0f) { - chNipper_playDeathAnimation(this); + __chNipper_playDeathAnimation(this); this->lifetime_value = 40.0f; return; } - chNipper_playDeathAnimation(this); + __chNipper_playDeathAnimation(this); this->lifetime_value = 80.0f; gcdialog_showText(ASSET_A10_TEXT_TTC_NIPPER_HURT, 4, NULL, NULL, NULL, NULL); return; } -bool chNipper_determineMarkeId(ActorMarker * this_marker, ActorMarker * other_marker){ +static bool __chNipper_determineMarkerId(ActorMarker * this_marker, ActorMarker * other_marker){ if(this_marker->unk40_31 == 1){ - this_marker->id = 0x16C; + this_marker->id = MARKER_16C_NIPPER; } else{ this_marker->id = MARKER_A5_NIPPER; @@ -170,7 +170,7 @@ bool chNipper_determineMarkeId(ActorMarker * this_marker, ActorMarker * other_ma return TRUE; } -void chNipper_ow2Func(ActorMarker * this_marker, ActorMarker *other_marker){ +static void __chNipper_ow2Func(ActorMarker * this_marker, ActorMarker *other_marker){ Actor *this; if(other_marker->id == 1){ @@ -184,7 +184,7 @@ void chNipper_ow2Func(ActorMarker * this_marker, ActorMarker *other_marker){ } } -void chNipper_owFunc(ActorMarker * this_marker, ActorMarker *other_marker){ +static void __chNipper_owFunc(ActorMarker * this_marker, ActorMarker *other_marker){ Actor *this = marker_getActor(this_marker); if( !this->unk138_23 && this->has_met_before @@ -194,7 +194,7 @@ void chNipper_owFunc(ActorMarker * this_marker, ActorMarker *other_marker){ } } -void chNipper_updateFunc(Actor *this){ +static void __chNipper_updateFunc(Actor *this){ f32 particlePosition[3]; s32 sp48; s32 xVelocity; @@ -231,26 +231,26 @@ void chNipper_updateFunc(Actor *this){ subaddie_set_state_with_direction(this, CH_NIPPER_STATE_1_UNKNOWN, 0.01f, 1); this->lifetime_value = 120.0f; this->marker->propPtr->unk8_3 = TRUE; - marker_setCollisionScripts(this->marker, chNipper_owFunc, chNipper_ow2Func, chNipper_dieFunc); - func_803300C0(this->marker, chNipper_determineMarkeId); + marker_setCollisionScripts(this->marker, __chNipper_owFunc, __chNipper_ow2Func, __chNipper_dieFunc); + func_803300C0(this->marker, __chNipper_determineMarkerId); this->initialized = TRUE; } - if(chNipper_shouldShowActor(this)){ + if(__chNipper_shouldShowActor(this)){ temp_v0 = func_8028ECAC(); if( !this->has_met_before && temp_v0 != 1 && temp_v0 != 10 ){ - subaddie_set_state_with_direction(this, CH_NIPPER_STATE_SPAWNED, 0.01f, 1); - if(gcdialog_showText(ASSET_A0E_TEXT_NIPPER_SPAWNED, 0xf, this->position, this->marker, chNipper_spawnedShowTextCallback, NULL)){ + subaddie_set_state_with_direction(this, CH_NIPPER_STATE_5_SPAWNED, 0.01f, 1); + if(gcdialog_showText(ASSET_A0E_TEXT_NIPPER_SPAWNED, 0xf, this->position, this->marker, __chNipper_spawnedShowTextCallback, NULL)){ this->has_met_before = TRUE; } comusic_8025AB44(COMUSIC_12_TTC_NIPPER, 5000, 300); ncStaticCamera_setToNode(11); } else{ - chNipper_setAnimationDuration(this); + __chNipper_setAnimationDuration(this); } break; } @@ -265,13 +265,13 @@ void chNipper_updateFunc(Actor *this){ break; case CH_NIPPER_STATE_2_UNKNOWN: - if(!chNipper_shouldShowActor(this)){ + if(!__chNipper_shouldShowActor(this)){ subaddie_set_state_looped(this, CH_NIPPER_STATE_1_UNKNOWN); break; } if(this->lifetime_value <= this->unk38_31){ - chNipper_setAnimationDuration(this); + __chNipper_setAnimationDuration(this); break; } this->unk38_31++; @@ -280,11 +280,11 @@ void chNipper_updateFunc(Actor *this){ case CH_NIPPER_STATE_3_UNKNOWN: if(actor_animationIsAt(this, 0.5f) && this->marker->unk14_21){ func_8034A174(this->marker->unk44, 6, particlePosition); - chNipper_drawParticlesAtPosition(particlePosition, 2); + __chNipper_drawParticlesAtPosition(particlePosition, 2); } else if(actor_animationIsAt(this, 0.95f) && this->marker->unk14_21){//L80388800 func_8034A174(this->marker->unk44, 5, particlePosition); - chNipper_drawParticlesAtPosition(particlePosition, 2); + __chNipper_drawParticlesAtPosition(particlePosition, 2); } if(actor_animationIsAt(this, 0.99f)){ @@ -306,13 +306,13 @@ void chNipper_updateFunc(Actor *this){ } break; - case CH_NIPPER_STATE_DIEING: + case CH_NIPPER_STATE_4_DIEING: if(actor_animationIsAt(this, 0.99f)){ - chNipper_setAnimationDuration(this); + __chNipper_setAnimationDuration(this); } break; - case CH_NIPPER_STATE_SPAWNED: + case CH_NIPPER_STATE_5_SPAWNED: if( actor_animationIsAt(this, 0.2f) || actor_animationIsAt(this, 0.2f) || actor_animationIsAt(this, 0.6f) @@ -322,7 +322,7 @@ void chNipper_updateFunc(Actor *this){ } break; - case CH_NIPPER_STATE_DEAD: + case CH_NIPPER_STATE_6_DEAD: this->marker->collidable = FALSE; if(actor_animationIsAt(this, 0.6f)){ FUNC_8030E8B4(SFX_7C_CHEBOOF, 0.9f, 20000, this->position, 1500, 3000); @@ -340,7 +340,7 @@ void chNipper_updateFunc(Actor *this){ } } -bool func_80388A44(s16 arg0[3]){ +bool chNipper_isInState7(s16 arg0[3]){ f32 sp1C[3]; Actor *nipper; diff --git a/src/core2/code_956B0.c b/src/core2/code_956B0.c index 9c631bd3..b4b663c8 100644 --- a/src/core2/code_956B0.c +++ b/src/core2/code_956B0.c @@ -598,7 +598,7 @@ void warp_bgsEnterTanktupConditional(s32 arg0, s32 arg1) { } void warp_ttcEnterNippersShell(s32 arg0, s32 arg1) { - if (func_80388A44() != 0) { + if (chNipper_isInState7() != 0) { func_8031CC8C(arg0, 0x601); } } From 2fcf8440d4a96d2624cd392bee8fe845ad730aa6 Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Fri, 4 Oct 2024 18:02:48 +0200 Subject: [PATCH 15/19] refac: make treasure functions static where applicable --- src/TTC/ch/treasure.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/TTC/ch/treasure.c b/src/TTC/ch/treasure.c index 79727e68..ea4a18d7 100644 --- a/src/TTC/ch/treasure.c +++ b/src/TTC/ch/treasure.c @@ -2,25 +2,25 @@ #include "functions.h" #include "variables.h" -void chTreasure_updateFunc(Actor *this); +static void __chTreasure_updateFunc(Actor *this); /* .data */ ActorAnimationInfo gChTreasureAnimations[4] = { - {0, 0.0f}, + {NULL, NULL}, {ASSET_153_ANIM_BURIED_TREASURE_APPEAR, 2.0f}, {ASSET_166_ANIM_BURIED_TREASURE_BOUNCE, 0.33f}, - {0, 0.0} + {NULL, NULL} }; ActorInfo gChTreasure = { MARKER_DB_BURIED_TREASURE, ACTOR_F4_BURIED_TREASURE, ASSET_42C_MODEL_BURIED_TREASURE, 1, gChTreasureAnimations, - chTreasure_updateFunc, func_80326224, actor_draw, + __chTreasure_updateFunc, func_80326224, actor_draw, 0, 0, 1.7f, 0 }; /* .code */ -void chTreasure_die(ActorMarker *marker, ActorMarker *otherMarker){ +static void __chTreasure_die(ActorMarker *marker, ActorMarker *otherMarker){ Actor *this = marker_getActor(marker); __spawnQueue_add_4((GenFunction_4) spawnQueue_actor_f32, 0x4C, reinterpret_cast(s32, this->position[0]), reinterpret_cast(s32, this->position[1]), reinterpret_cast(s32, this->position[2])); func_802EE278(this, 3, 0xf, 0x3C, 0.2f, 1.2f); @@ -29,7 +29,7 @@ void chTreasure_die(ActorMarker *marker, ActorMarker *otherMarker){ marker_despawn(marker); } -void chTreasure_updateFuncPosition(Actor *this){ +static void __chTreasure_updateFuncPosition(Actor *this){ this->position[0] = this->unk1C[0];\ this->position[1] = this->unk1C[1];\ this->position[2] = this->unk1C[2]; @@ -42,7 +42,7 @@ void chTreasure_updateFuncPosition(Actor *this){ this->yaw = this->lifetime_value*180.0/M_PI; } -void chTreasure_updateFunc(Actor *this){ +static void __chTreasure_updateFunc(Actor *this){ f32 sp3C[3]; s16 sp34[3]; @@ -61,9 +61,9 @@ void chTreasure_updateFunc(Actor *this){ this->unk1C[2] = this->position[2]; actor_playAnimationOnce(this); - marker_setCollisionScripts(this->marker, NULL, NULL, chTreasure_die); + marker_setCollisionScripts(this->marker, NULL, NULL, __chTreasure_die); } - chTreasure_updateFuncPosition(this); + __chTreasure_updateFuncPosition(this); func_8034A174(this->marker->unk44, 5, sp3C); sp34[0] = (s16)sp3C[0]; sp34[1] = (s16)sp3C[1]; From 38cf7394310aaa7eb6a402275863a8ec81eb413c Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Fri, 4 Oct 2024 18:12:30 +0200 Subject: [PATCH 16/19] refac: make treasurehunt functions static where applicable --- src/TTC/ch/lockup.c | 6 ++-- src/TTC/ch/treasurehunt.c | 60 +++++++++++++++++++-------------------- 2 files changed, 33 insertions(+), 33 deletions(-) diff --git a/src/TTC/ch/lockup.c b/src/TTC/ch/lockup.c index f22f1c00..006a135f 100644 --- a/src/TTC/ch/lockup.c +++ b/src/TTC/ch/lockup.c @@ -51,8 +51,8 @@ ActorInfo gChLockupFast = { 2500, 0x366, 0.0f, 0 }; -static s32 sLockupCloseColor[4] = {120, 120, 120, 120}; -static s32 sLockupCloseVelocity[3] = {0,0,0}; +static s32 sLockup_CloseColor[4] = {120, 120, 120, 120}; +static s32 sLockup_CloseVelocity[3] = {0,0,0}; /* .code */ static Actor *__chLockup_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ @@ -151,7 +151,7 @@ static void __chLockup_updateFunc(Actor *this){ __chLockup_close(this); for(i = 5; i < 0xe; i++){ func_8034A174(this->marker->unk44, i, this->unk1C); - func_802EE6CC(this->unk1C, sLockupCloseVelocity, sLockupCloseColor, 1, 0.4f, 50.0f, 0xb4, 0xa0, 0); + func_802EE6CC(this->unk1C, sLockup_CloseVelocity, sLockup_CloseColor, 1, 0.4f, 50.0f, 0xb4, 0xa0, 0); } } break; diff --git a/src/TTC/ch/treasurehunt.c b/src/TTC/ch/treasurehunt.c index 4a9486c3..120d4d30 100644 --- a/src/TTC/ch/treasurehunt.c +++ b/src/TTC/ch/treasurehunt.c @@ -9,13 +9,13 @@ typedef struct { s32 unk0; } ActorLocal_TreasureHunt; -void chTreasurehunt_updateFunc(Actor *this); -Actor *chTreasurehunt_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); +static void __chTreasurehunt_updateFunc(Actor *this); +static Actor *__chTreasurehunt_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); extern u32 CH_TREASUREHUNT_PUZZLE_CURRENT_STEP; /* .data */ -f32 CH_TREASUREHUNT_STEP_POSITIONS[6][3] = { +static f32 sChTreasurehunt_stepPositions[6][3] = { {2904.0f, 2458.0f, -7351.0f}, {-7007.0f, 2013.0f, 401.0f}, {-3388.0f, 1519.0f, 5939.0f}, @@ -24,9 +24,9 @@ f32 CH_TREASUREHUNT_STEP_POSITIONS[6][3] = { {7667.0f, 717.0f, 1676.0f} }; -f32 CH_TREASUREHUNT_STEP_RED_X_YAWS[6] = { 300.0f, 180.0f, 220.0f, 270.0f, 330.0f, 255.0f }; -s32 CH_TREASUREHUNT_STEP_YAWS[6] = { 0x6E, 0xD2, 0x10E, 0x145, 0x14A, 0 }; -s32 CH_TREASUREHUNT_STEP_ACTORS[6] = { +static f32 sChTreasurehunt_StepRedXYaws[6] = { 300.0f, 180.0f, 220.0f, 270.0f, 330.0f, 255.0f }; +static s32 sChTreasurehunt_StepYaws[6] = { 0x6E, 0xD2, 0x10E, 0x145, 0x14A, 0 }; +static s32 sChTreasurehunt_StepActors[6] = { ACTOR_53_RED_ARROW, ACTOR_53_RED_ARROW, ACTOR_53_RED_ARROW, @@ -38,25 +38,25 @@ s32 CH_TREASUREHUNT_STEP_ACTORS[6] = { ActorInfo gChTreasurehuntRedArrow = { MARKER_62_RED_ARROW, ACTOR_53_RED_ARROW, ASSET_3E9_MODEL_RED_ARROW, 0, NULL, - chTreasurehunt_updateFunc, func_80326224, chTreasurehunt_animFunc, + __chTreasurehunt_updateFunc, func_80326224, __chTreasurehunt_animFunc, 0, 0x400, 0.0f, 0 }; ActorInfo gChTreasurehuntRedQuestionMark = { MARKER_63_RED_QUESTION_MARK, ACTOR_54_RED_QUESTION_MARK, ASSET_3EB_MODEL_RED_QUESTION_MARK, 0, NULL, - chTreasurehunt_updateFunc, func_80326224, chTreasurehunt_animFunc, + __chTreasurehunt_updateFunc, func_80326224, __chTreasurehunt_animFunc, 0, 0x400, 0.0f, 0 }; ActorInfo gChTreasurehuntRedX = { MARKER_64_RED_X, ACTOR_55_RED_X, ASSET_3EA_MODEL_RED_X, 0, NULL, - chTreasurehunt_updateFunc, func_80326224, chTreasurehunt_animFunc, + __chTreasurehunt_updateFunc, func_80326224, __chTreasurehunt_animFunc, 0, 0x400, 0.0f, 0 }; -s32 CH_TREASUREHUNT_PARTICLE_RGB[3] = {160, 120, 20}; +static s32 sChTreasurehuntParticleRGB[3] = {160, 120, 20}; ParticleScaleAndLifetimeRanges CH_TREASUREHUNT_PARTICLE_SCALE_AND_LIFETIME_RANGES = { {1.1f, 1.5f}, @@ -72,7 +72,7 @@ struct42s CH_TREASUREHUNT_VELOCITY_RANGES = { }; /* .code */ -bool chTreasurehunt_isActiveHitboxBeakBusterHitbox(void) { +static bool __chTreasurehunt_isActiveHitboxBeakBusterHitbox(void) { enum comusic_e comusic_id; s32 music_volume; @@ -89,32 +89,32 @@ bool chTreasurehunt_isActiveHitboxBeakBusterHitbox(void) { return FALSE; } -void chTreasurehunt_spawnRedXForNextStep(void) { +static void __chTreasurehunt_spawnRedXForNextStep(void) { Actor *actor; ActorLocal_TreasureHunt *local; - actor = actor_spawnWithYaw_f32(ACTOR_55_RED_X, CH_TREASUREHUNT_STEP_POSITIONS[CH_TREASUREHUNT_PUZZLE_CURRENT_STEP], 0); + actor = actor_spawnWithYaw_f32(ACTOR_55_RED_X, sChTreasurehunt_stepPositions[CH_TREASUREHUNT_PUZZLE_CURRENT_STEP], 0); local = (ActorLocal_TreasureHunt *)&actor->local; - actor->yaw = CH_TREASUREHUNT_STEP_RED_X_YAWS[CH_TREASUREHUNT_PUZZLE_CURRENT_STEP]; + actor->yaw = sChTreasurehunt_StepRedXYaws[CH_TREASUREHUNT_PUZZLE_CURRENT_STEP]; local->unk0 = CH_TREASUREHUNT_PUZZLE_CURRENT_STEP; actor->lifetime_value = 0.0f; actor->state = 0; } -void chTreasurehunt_spawnActorForNextStep(void) { +static void __chTreasurehunt_spawnActorForNextStep(void) { Actor *actor; ActorLocal_TreasureHunt *local; - actor = actor_spawnWithYaw_f32((CH_TREASUREHUNT_STEP_ACTORS - 1)[CH_TREASUREHUNT_PUZZLE_CURRENT_STEP], CH_TREASUREHUNT_STEP_POSITIONS[CH_TREASUREHUNT_PUZZLE_CURRENT_STEP - 1], 0); + actor = actor_spawnWithYaw_f32((sChTreasurehunt_StepActors - 1)[CH_TREASUREHUNT_PUZZLE_CURRENT_STEP], sChTreasurehunt_stepPositions[CH_TREASUREHUNT_PUZZLE_CURRENT_STEP - 1], 0); local = (ActorLocal_TreasureHunt *)&actor->local; - actor->yaw = CH_TREASUREHUNT_STEP_YAWS[CH_TREASUREHUNT_PUZZLE_CURRENT_STEP - 1]; + actor->yaw = sChTreasurehunt_StepYaws[CH_TREASUREHUNT_PUZZLE_CURRENT_STEP - 1]; local->unk0 = CH_TREASUREHUNT_PUZZLE_CURRENT_STEP; actor->lifetime_value = 0.0f; actor->state = 0; } -void chTreasurehunt_checkStepProgress(s32 currentStep){ - if(CH_TREASUREHUNT_PUZZLE_CURRENT_STEP == currentStep && chTreasurehunt_isActiveHitboxBeakBusterHitbox()){ +static void __chTreasurehunt_checkStepProgress(s32 currentStep){ + if(CH_TREASUREHUNT_PUZZLE_CURRENT_STEP == currentStep && __chTreasurehunt_isActiveHitboxBeakBusterHitbox()){ if(currentStep == 0 && !jiggyscore_isCollected(JIGGY_11_TTC_RED_X)){ gcdialog_showText(ASSET_A18_TEXT_TREASUREHUNT_FOLLOW_CLUES, 4, NULL, NULL, NULL, NULL); } @@ -123,43 +123,43 @@ void chTreasurehunt_checkStepProgress(s32 currentStep){ } CH_TREASUREHUNT_PUZZLE_CURRENT_STEP++; - __spawnQueue_add_0(chTreasurehunt_spawnActorForNextStep); - __spawnQueue_add_0(chTreasurehunt_spawnRedXForNextStep); + __spawnQueue_add_0(__chTreasurehunt_spawnActorForNextStep); + __spawnQueue_add_0(__chTreasurehunt_spawnRedXForNextStep); } } void chTreasurehunt_checkStepProgress0(ActorMarker *this, ActorMarker *arg1){\ - chTreasurehunt_checkStepProgress(0); + __chTreasurehunt_checkStepProgress(0); } void chTreasurehunt_checkStepProgress1(ActorMarker *this, ActorMarker *arg1){\ - chTreasurehunt_checkStepProgress(1); + __chTreasurehunt_checkStepProgress(1); } void chTreasurehunt_checkStepProgress2(ActorMarker *this, ActorMarker *arg1){\ - chTreasurehunt_checkStepProgress(2); + __chTreasurehunt_checkStepProgress(2); } void chTreasurehunt_checkStepProgress3(ActorMarker *this, ActorMarker *arg1){\ - chTreasurehunt_checkStepProgress(3); + __chTreasurehunt_checkStepProgress(3); } void chTreasurehunt_checkStepProgress4(ActorMarker *this, ActorMarker *arg1){\ - chTreasurehunt_checkStepProgress(4); + __chTreasurehunt_checkStepProgress(4); } void chTreasurehunt_checkStepProgress5(s16 arg0[3], s32 arg1){ static ParticleEmitter *particleEmitter; static f32 particleTargetPosition[3]; - if(CH_TREASUREHUNT_PUZZLE_CURRENT_STEP == 5 && chTreasurehunt_isActiveHitboxBeakBusterHitbox()){ + if(CH_TREASUREHUNT_PUZZLE_CURRENT_STEP == 5 && __chTreasurehunt_isActiveHitboxBeakBusterHitbox()){ particleTargetPosition[0] = (f32)arg0[0]; particleTargetPosition[1] = (f32)arg0[1]; particleTargetPosition[2] = (f32)arg0[2]; particleTargetPosition[1] = mapModel_getFloorY(particleTargetPosition); __spawnQueue_add_4((GenFunction_4)spawnQueue_actor_f32, 0xF4, reinterpret_cast(s32, particleTargetPosition[0]), reinterpret_cast(s32, particleTargetPosition[1]), reinterpret_cast(s32, particleTargetPosition[2])); particleEmitter = partEmitMgr_newEmitter(3); - particleEmitter_setRGB(particleEmitter, CH_TREASUREHUNT_PARTICLE_RGB); + particleEmitter_setRGB(particleEmitter, sChTreasurehuntParticleRGB); particleEmitter_setSprite(particleEmitter, ASSET_700_SPRITE_DUST); particleEmitter_setStartingFrameRange(particleEmitter, 0, 7); particleEmitter_setPosition(particleEmitter, particleTargetPosition); @@ -179,7 +179,7 @@ void chTreasurehunt_resetProgress(void){ CH_TREASUREHUNT_PUZZLE_CURRENT_STEP = 0; } -void chTreasurehunt_updateFunc(Actor *this){ +static void __chTreasurehunt_updateFunc(Actor *this){ f32 tick = time_getDelta(); ActorLocal_TreasureHunt *local = (ActorLocal_TreasureHunt*)&this->local; f64 tmp_f12; @@ -212,7 +212,7 @@ void chTreasurehunt_updateFunc(Actor *this){ this->depth_mode = 2; } -Actor *chTreasurehunt_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ +static Actor *__chTreasurehunt_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ f32 sp4C[3]; f32 sp40[3]; f32 sp3C; From 93d06ec6b9e033c35ffefdb93af257e46286027f Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Fri, 4 Oct 2024 18:16:52 +0200 Subject: [PATCH 17/19] refac: remove unnecessary value declarations for enums --- include/enums.h | 58 ++++++++++++++++++++++++------------------------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/include/enums.h b/include/enums.h index e20c1d34..d850f504 100644 --- a/include/enums.h +++ b/include/enums.h @@ -828,7 +828,7 @@ enum sfx_e SFX_24_KONGA_NOISE_3, // might be part of Clankers Bolt SFX_25_METAL_SLIDING_OVER_SMTH, - SFX_26_BANJO_LANDING_09 = 0x26, + SFX_26_BANJO_LANDING_09, SFX_27_JINJO_HI, SFX_28_RUSTLING_NOISE, SFX_29_GRUBLIN_NYAHAHA, @@ -1862,8 +1862,8 @@ enum actor_e ACTOR_147_ANCIENT_ONE, ACTOR_149_TTC_BLUBBER_UNKNOWN = 0x149, - ACTOR_14A_TTC_BLUBBER_UNKNOWN = 0x14a, - ACTOR_14B_TTC_BLUBBER_UNKNOWN = 0x14b, + ACTOR_14A_TTC_BLUBBER_UNKNOWN, + ACTOR_14B_TTC_BLUBBER_UNKNOWN, ACTOR_14E_BGS_ELEVATED_WALKWAY_SWITCH = 0x14E, ACTOR_14F_DESTROYED_JIGGY, @@ -2021,11 +2021,11 @@ enum actor_e ACTOR_2A9_ACORN, ACTOR_2DB_DINGPOT = 0x2DB, - ACTOR_2DF_LIGHTHOUSE_B = 0x2df, - ACTOR_2E0_TTC_STAIRS_1 = 0x2e0, - ACTOR_2E1_TTC_STAIRS_2 = 0x2e1, - ACTOR_2E2_LIGHTHOUSE_A = 0x2e2, + ACTOR_2DF_LIGHTHOUSE_B = 0x2DF, + ACTOR_2E0_TTC_STAIRS_1, + ACTOR_2E1_TTC_STAIRS_2, + ACTOR_2E2_LIGHTHOUSE_A, ACTOR_2E5_DOOR_OF_GRUNTY = 0x2e5, @@ -3034,16 +3034,16 @@ enum asset_e // 3b3 Mumbo's Hut // Unused // Unused - ASSET_3B6_MODEL_TTC_STAIRS_1 = 0x3b6, - ASSET_3B7_MODEL_TTC_STAIRS_1 = 0x3b7, + ASSET_3B6_MODEL_TTC_STAIRS_1 = 0x3Bb6, + ASSET_3B7_MODEL_TTC_STAIRS_1, // Unused // Unused // Unused ASSET_3BB_MODEL_JINJO_YELLOW = 0x3BB, ASSET_3BC_MODEL_JINJO_ORANGE, - ASSET_3BD_MODEL_LIGHTHOUSE_A = 0x3bd, - ASSET_3BE_MODEL_LIGHTHOUSE_B = 0x3be, - ASSET_3BF_MODEL_PLAYER_SHADOW = 0x3BF, + ASSET_3BD_MODEL_LIGHTHOUSE_A, + ASSET_3BE_MODEL_LIGHTHOUSE_B, + ASSET_3BF_MODEL_PLAYER_SHADOW, ASSET_3C0_MODEL_JINJO_BLUE, ASSET_3C1_MODEL_JINJO_PINK, ASSET_3C2_MODEL_JINJO_GREEN, @@ -4002,24 +4002,24 @@ enum asset_e ASSET_896_MODEL_GOLD_ROCK = 0x896, - ASSET_89D_ZOOMBOX_SPRITE = 0x89d, + ASSET_89D_ZOOMBOX_SPRITE = 0x89D, - ASSET_8A0_SPRITE_WATER_DROP = 0x8a0, + ASSET_8A0_SPRITE_WATER_DROP = 0x8A0, - ASSET_A0B_TEXT_BLUBBER_FIRST_MEET = 0xa0b, - ASSET_A0C_TEXT_BLUBBER_HALF_GOLD = 0xa0c, - ASSET_A0D_TEXT_BLUBBER_COMPLETE = 0xa0d, - ASSET_A0E_TEXT_NIPPER_SPAWNED = 0xa0e, + ASSET_A0B_TEXT_BLUBBER_FIRST_MEET = 0xA0B, + ASSET_A0C_TEXT_BLUBBER_HALF_GOLD, + ASSET_A0D_TEXT_BLUBBER_COMPLETE, + ASSET_A0E_TEXT_NIPPER_SPAWNED, - ASSET_A10_TEXT_TTC_NIPPER_HURT = 0xa10, + ASSET_A10_TEXT_TTC_NIPPER_HURT = 0xA10, - ASSET_A14_TEXT_CLAM_TAUNT = 0xa14, - ASSET_A15_TEXT_TTC_LOCKUP_SPAWNED = 0xa15, + ASSET_A14_TEXT_CLAM_TAUNT = 0xA14, + ASSET_A15_TEXT_TTC_LOCKUP_SPAWNED, - ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED = 0xa17, - ASSET_A18_TEXT_TREASUREHUNT_FOLLOW_CLUES = 0xa18, - ASSET_A19_TEXT_TREASUREHUNT_SECOND_STEP = 0xa19, - ASSET_A1A_TEXT_LEAKY_FIRST_MEET = 0xa1a, + ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED = 0xA17, + ASSET_A18_TEXT_TREASUREHUNT_FOLLOW_CLUES, + ASSET_A19_TEXT_TREASUREHUNT_SECOND_STEP, + ASSET_A1A_TEXT_LEAKY_FIRST_MEET, ASSET_A1F_DIALOG_SHOCKJUMP_LEARN = VER_SELECT(0xa1f, 0x91f, 0, 0), ASSET_A20_DIALOG_FLY_LEARN, @@ -4643,7 +4643,7 @@ enum marker_e{ MARKER_121_GLASS_EYE = 0x121, - MARKER_124_BOGGY_1 = 0x124, + MARKER_124_BOGGY_1 = 0x124, MARKER_127_BAT = 0x127, MARKER_128_COLLYWOBBLE_A, @@ -4796,9 +4796,9 @@ enum marker_e{ MARKER_261_FIGHT_FLIGHT_PAD = 0x261, MARKER_267_LIGHTHOUSE_A = 0x267, - MARKER_268_STAIRS_1 = 0x268, - MARKER_269_STAIRS_2 = 0x269, - MARKER_26A_LIGHTHOUSE_B = 0x26a, + MARKER_268_STAIRS_1, + MARKER_269_STAIRS_2, + MARKER_26A_LIGHTHOUSE_B, MARKER_276_STONE_JINJO = 0x276, From 9d31df335a90cf317dbe466fa707747015b309cf Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Fri, 4 Oct 2024 18:27:50 +0200 Subject: [PATCH 18/19] Revert "refac: remove unnecessary value declarations for enums" This reverts commit 93d06ec6b9e033c35ffefdb93af257e46286027f. --- include/enums.h | 58 ++++++++++++++++++++++++------------------------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/include/enums.h b/include/enums.h index d850f504..e20c1d34 100644 --- a/include/enums.h +++ b/include/enums.h @@ -828,7 +828,7 @@ enum sfx_e SFX_24_KONGA_NOISE_3, // might be part of Clankers Bolt SFX_25_METAL_SLIDING_OVER_SMTH, - SFX_26_BANJO_LANDING_09, + SFX_26_BANJO_LANDING_09 = 0x26, SFX_27_JINJO_HI, SFX_28_RUSTLING_NOISE, SFX_29_GRUBLIN_NYAHAHA, @@ -1862,8 +1862,8 @@ enum actor_e ACTOR_147_ANCIENT_ONE, ACTOR_149_TTC_BLUBBER_UNKNOWN = 0x149, - ACTOR_14A_TTC_BLUBBER_UNKNOWN, - ACTOR_14B_TTC_BLUBBER_UNKNOWN, + ACTOR_14A_TTC_BLUBBER_UNKNOWN = 0x14a, + ACTOR_14B_TTC_BLUBBER_UNKNOWN = 0x14b, ACTOR_14E_BGS_ELEVATED_WALKWAY_SWITCH = 0x14E, ACTOR_14F_DESTROYED_JIGGY, @@ -2021,11 +2021,11 @@ enum actor_e ACTOR_2A9_ACORN, ACTOR_2DB_DINGPOT = 0x2DB, + ACTOR_2DF_LIGHTHOUSE_B = 0x2df, - ACTOR_2DF_LIGHTHOUSE_B = 0x2DF, - ACTOR_2E0_TTC_STAIRS_1, - ACTOR_2E1_TTC_STAIRS_2, - ACTOR_2E2_LIGHTHOUSE_A, + ACTOR_2E0_TTC_STAIRS_1 = 0x2e0, + ACTOR_2E1_TTC_STAIRS_2 = 0x2e1, + ACTOR_2E2_LIGHTHOUSE_A = 0x2e2, ACTOR_2E5_DOOR_OF_GRUNTY = 0x2e5, @@ -3034,16 +3034,16 @@ enum asset_e // 3b3 Mumbo's Hut // Unused // Unused - ASSET_3B6_MODEL_TTC_STAIRS_1 = 0x3Bb6, - ASSET_3B7_MODEL_TTC_STAIRS_1, + ASSET_3B6_MODEL_TTC_STAIRS_1 = 0x3b6, + ASSET_3B7_MODEL_TTC_STAIRS_1 = 0x3b7, // Unused // Unused // Unused ASSET_3BB_MODEL_JINJO_YELLOW = 0x3BB, ASSET_3BC_MODEL_JINJO_ORANGE, - ASSET_3BD_MODEL_LIGHTHOUSE_A, - ASSET_3BE_MODEL_LIGHTHOUSE_B, - ASSET_3BF_MODEL_PLAYER_SHADOW, + ASSET_3BD_MODEL_LIGHTHOUSE_A = 0x3bd, + ASSET_3BE_MODEL_LIGHTHOUSE_B = 0x3be, + ASSET_3BF_MODEL_PLAYER_SHADOW = 0x3BF, ASSET_3C0_MODEL_JINJO_BLUE, ASSET_3C1_MODEL_JINJO_PINK, ASSET_3C2_MODEL_JINJO_GREEN, @@ -4002,24 +4002,24 @@ enum asset_e ASSET_896_MODEL_GOLD_ROCK = 0x896, - ASSET_89D_ZOOMBOX_SPRITE = 0x89D, + ASSET_89D_ZOOMBOX_SPRITE = 0x89d, - ASSET_8A0_SPRITE_WATER_DROP = 0x8A0, + ASSET_8A0_SPRITE_WATER_DROP = 0x8a0, - ASSET_A0B_TEXT_BLUBBER_FIRST_MEET = 0xA0B, - ASSET_A0C_TEXT_BLUBBER_HALF_GOLD, - ASSET_A0D_TEXT_BLUBBER_COMPLETE, - ASSET_A0E_TEXT_NIPPER_SPAWNED, + ASSET_A0B_TEXT_BLUBBER_FIRST_MEET = 0xa0b, + ASSET_A0C_TEXT_BLUBBER_HALF_GOLD = 0xa0c, + ASSET_A0D_TEXT_BLUBBER_COMPLETE = 0xa0d, + ASSET_A0E_TEXT_NIPPER_SPAWNED = 0xa0e, - ASSET_A10_TEXT_TTC_NIPPER_HURT = 0xA10, + ASSET_A10_TEXT_TTC_NIPPER_HURT = 0xa10, - ASSET_A14_TEXT_CLAM_TAUNT = 0xA14, - ASSET_A15_TEXT_TTC_LOCKUP_SPAWNED, + ASSET_A14_TEXT_CLAM_TAUNT = 0xa14, + ASSET_A15_TEXT_TTC_LOCKUP_SPAWNED = 0xa15, - ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED = 0xA17, - ASSET_A18_TEXT_TREASUREHUNT_FOLLOW_CLUES, - ASSET_A19_TEXT_TREASUREHUNT_SECOND_STEP, - ASSET_A1A_TEXT_LEAKY_FIRST_MEET, + ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED = 0xa17, + ASSET_A18_TEXT_TREASUREHUNT_FOLLOW_CLUES = 0xa18, + ASSET_A19_TEXT_TREASUREHUNT_SECOND_STEP = 0xa19, + ASSET_A1A_TEXT_LEAKY_FIRST_MEET = 0xa1a, ASSET_A1F_DIALOG_SHOCKJUMP_LEARN = VER_SELECT(0xa1f, 0x91f, 0, 0), ASSET_A20_DIALOG_FLY_LEARN, @@ -4643,7 +4643,7 @@ enum marker_e{ MARKER_121_GLASS_EYE = 0x121, - MARKER_124_BOGGY_1 = 0x124, + MARKER_124_BOGGY_1 = 0x124, MARKER_127_BAT = 0x127, MARKER_128_COLLYWOBBLE_A, @@ -4796,9 +4796,9 @@ enum marker_e{ MARKER_261_FIGHT_FLIGHT_PAD = 0x261, MARKER_267_LIGHTHOUSE_A = 0x267, - MARKER_268_STAIRS_1, - MARKER_269_STAIRS_2, - MARKER_26A_LIGHTHOUSE_B, + MARKER_268_STAIRS_1 = 0x268, + MARKER_269_STAIRS_2 = 0x269, + MARKER_26A_LIGHTHOUSE_B = 0x26a, MARKER_276_STONE_JINJO = 0x276, From 7f41a49ef8bb35707a5f7d36b0a84b66aa46a680 Mon Sep 17 00:00:00 2001 From: Bl00D4NGEL Date: Fri, 4 Oct 2024 18:35:40 +0200 Subject: [PATCH 19/19] refac: remove unnecessary value declarations for enums --- include/enums.h | 50 ++++++++++++++++++++++++------------------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/include/enums.h b/include/enums.h index e20c1d34..da212652 100644 --- a/include/enums.h +++ b/include/enums.h @@ -828,7 +828,7 @@ enum sfx_e SFX_24_KONGA_NOISE_3, // might be part of Clankers Bolt SFX_25_METAL_SLIDING_OVER_SMTH, - SFX_26_BANJO_LANDING_09 = 0x26, + SFX_26_BANJO_LANDING_09, SFX_27_JINJO_HI, SFX_28_RUSTLING_NOISE, SFX_29_GRUBLIN_NYAHAHA, @@ -2021,11 +2021,11 @@ enum actor_e ACTOR_2A9_ACORN, ACTOR_2DB_DINGPOT = 0x2DB, - ACTOR_2DF_LIGHTHOUSE_B = 0x2df, - ACTOR_2E0_TTC_STAIRS_1 = 0x2e0, - ACTOR_2E1_TTC_STAIRS_2 = 0x2e1, - ACTOR_2E2_LIGHTHOUSE_A = 0x2e2, + ACTOR_2DF_LIGHTHOUSE_B = 0x2DF, + ACTOR_2E0_TTC_STAIRS_1, + ACTOR_2E1_TTC_STAIRS_2, + ACTOR_2E2_LIGHTHOUSE_A, ACTOR_2E5_DOOR_OF_GRUNTY = 0x2e5, @@ -3034,16 +3034,16 @@ enum asset_e // 3b3 Mumbo's Hut // Unused // Unused - ASSET_3B6_MODEL_TTC_STAIRS_1 = 0x3b6, - ASSET_3B7_MODEL_TTC_STAIRS_1 = 0x3b7, + ASSET_3B6_MODEL_TTC_STAIRS_1 = 0x3B6, + ASSET_3B7_MODEL_TTC_STAIRS_1, // Unused // Unused // Unused ASSET_3BB_MODEL_JINJO_YELLOW = 0x3BB, ASSET_3BC_MODEL_JINJO_ORANGE, - ASSET_3BD_MODEL_LIGHTHOUSE_A = 0x3bd, - ASSET_3BE_MODEL_LIGHTHOUSE_B = 0x3be, - ASSET_3BF_MODEL_PLAYER_SHADOW = 0x3BF, + ASSET_3BD_MODEL_LIGHTHOUSE_A, + ASSET_3BE_MODEL_LIGHTHOUSE_B, + ASSET_3BF_MODEL_PLAYER_SHADOW, ASSET_3C0_MODEL_JINJO_BLUE, ASSET_3C1_MODEL_JINJO_PINK, ASSET_3C2_MODEL_JINJO_GREEN, @@ -4002,24 +4002,24 @@ enum asset_e ASSET_896_MODEL_GOLD_ROCK = 0x896, - ASSET_89D_ZOOMBOX_SPRITE = 0x89d, + ASSET_89D_ZOOMBOX_SPRITE = 0x89D, - ASSET_8A0_SPRITE_WATER_DROP = 0x8a0, + ASSET_8A0_SPRITE_WATER_DROP = 0x8A0, - ASSET_A0B_TEXT_BLUBBER_FIRST_MEET = 0xa0b, - ASSET_A0C_TEXT_BLUBBER_HALF_GOLD = 0xa0c, - ASSET_A0D_TEXT_BLUBBER_COMPLETE = 0xa0d, - ASSET_A0E_TEXT_NIPPER_SPAWNED = 0xa0e, + ASSET_A0B_TEXT_BLUBBER_FIRST_MEET = 0xA0B, + ASSET_A0C_TEXT_BLUBBER_HALF_GOLD, + ASSET_A0D_TEXT_BLUBBER_COMPLETE, + ASSET_A0E_TEXT_NIPPER_SPAWNED, ASSET_A10_TEXT_TTC_NIPPER_HURT = 0xa10, - ASSET_A14_TEXT_CLAM_TAUNT = 0xa14, - ASSET_A15_TEXT_TTC_LOCKUP_SPAWNED = 0xa15, + ASSET_A14_TEXT_CLAM_TAUNT = 0xA14, + ASSET_A15_TEXT_TTC_LOCKUP_SPAWNED, - ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED = 0xa17, - ASSET_A18_TEXT_TREASUREHUNT_FOLLOW_CLUES = 0xa18, - ASSET_A19_TEXT_TREASUREHUNT_SECOND_STEP = 0xa19, - ASSET_A1A_TEXT_LEAKY_FIRST_MEET = 0xa1a, + ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED = 0xA17, + ASSET_A18_TEXT_TREASUREHUNT_FOLLOW_CLUES, + ASSET_A19_TEXT_TREASUREHUNT_SECOND_STEP, + ASSET_A1A_TEXT_LEAKY_FIRST_MEET, ASSET_A1F_DIALOG_SHOCKJUMP_LEARN = VER_SELECT(0xa1f, 0x91f, 0, 0), ASSET_A20_DIALOG_FLY_LEARN, @@ -4796,9 +4796,9 @@ enum marker_e{ MARKER_261_FIGHT_FLIGHT_PAD = 0x261, MARKER_267_LIGHTHOUSE_A = 0x267, - MARKER_268_STAIRS_1 = 0x268, - MARKER_269_STAIRS_2 = 0x269, - MARKER_26A_LIGHTHOUSE_B = 0x26a, + MARKER_268_STAIRS_1, + MARKER_269_STAIRS_2, + MARKER_26A_LIGHTHOUSE_B, MARKER_276_STONE_JINJO = 0x276,