refac: rename TTC_ prefixed functions to chXXX to conform to naming scheme

This commit is contained in:
Bl00D4NGEL
2024-09-29 02:09:44 +02:00
parent 97d2062611
commit 86a25f1345
9 changed files with 272 additions and 275 deletions

View File

@@ -15,27 +15,27 @@ typedef struct {
s32 unk24; // bullions left to collect ? (changes from 4 to 0) s32 unk24; // bullions left to collect ? (changes from 4 to 0)
} ActorLocal_Blubber; } ActorLocal_Blubber;
void TTC_Blubber_updateFunc(Actor *this); void chBlubber_updateFunc(Actor *this);
void TTC_Blubber_update2Func(Actor *this); void chBlubber_update2Func(Actor *this);
Actor *TTC_Blubber_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); Actor *chBlubber_drawFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx);
enum ttc_blubber_map_flags_e { enum ch_blubber_map_flags_e {
TTC_BLUBBER_MAP_FLAG_0_UNKNOWN = 0, CH_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 CH_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 CH_BLUBBER_MAP_FLAG_2_JIGGY_SPAWNED_TEXT_SHOWN = 2, // Jiggy collected text shown
TTC_BLUBBER_MAP_FLAG_3_SHOW_JIGGY_SPAWNED_TEXT_FLAG = 3 CH_BLUBBER_MAP_FLAG_3_SHOW_JIGGY_SPAWNED_TEXT_FLAG = 3
}; };
enum ttc_blubber_states_e { enum ch_blubber_states_e {
TTC_BLUBBER_STATE_1_UNKNOWN = 1, // initial state (80387A84) CH_BLUBBER_STATE_1_UNKNOWN = 1, // initial state (80387A84)
TTC_BLUBBER_STATE_2_UNKNOWN = 2, // 80387B10 CH_BLUBBER_STATE_2_UNKNOWN = 2, // 80387B10
TTC_BLUBBER_STATE_3_UNKNOWN = 3, CH_BLUBBER_STATE_3_UNKNOWN = 3,
TTC_BLUBBER_STATE_4_UNKNOWN = 4, // 80387C04 CH_BLUBBER_STATE_4_UNKNOWN = 4, // 80387C04
TTC_BLUBBER_STATE_5_UNKNOWN = 5 // 80387CD4 CH_BLUBBER_STATE_5_UNKNOWN = 5 // 80387CD4
}; };
/* .data */ /* .data */
ActorAnimationInfo TTC_BLUBBER_ACTOR_ANIMATIONS[6] = { ActorAnimationInfo gChBlubberAnimations[6] = {
{0x00, 0.0f}, {0x00, 0.0f},
{ASSET_B5_ANIM_BLUBBER_WALK, 2.0f}, {ASSET_B5_ANIM_BLUBBER_WALK, 2.0f},
{ASSET_B6_ANIM_BLUBBER_CRY, 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} {ASSET_B8_ANIM_BLUBBER_RUN, 0.8f}
}; };
ActorInfo TTC_BLUBBER_ACTOR = { ActorInfo gChBlubber = {
MARKER_A3_BLUBBER, ACTOR_115_BLUBBER, ASSET_370_MODEL_BLUBBER, MARKER_A3_BLUBBER, ACTOR_115_BLUBBER, ASSET_370_MODEL_BLUBBER,
0x1, TTC_BLUBBER_ACTOR_ANIMATIONS, 0x1, gChBlubberAnimations,
TTC_Blubber_updateFunc, TTC_Blubber_update2Func, TTC_Blubber_drawFunc, chBlubber_updateFunc, chBlubber_update2Func, chBlubber_drawFunc,
0, 0x399, 1.8f, 0 0, 0x399, 1.8f, 0
}; };
/* .code */ /* .code */
void TTC_Blubber_initiliaze(Actor *this){ void chBlubber_initiliaze(Actor *this){
ActorLocal_Blubber *local = (ActorLocal_Blubber *)&this->local; ActorLocal_Blubber *local = (ActorLocal_Blubber *)&this->local;
animctrl_setTransitionDuration(this->animctrl, 0.2f); animctrl_setTransitionDuration(this->animctrl, 0.2f);
@@ -66,7 +66,7 @@ void TTC_Blubber_initiliaze(Actor *this){
func_8032A82C(this, 0x14C); 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); Actor *this = marker_getActor(caller);
ActorLocal_Blubber *local = (ActorLocal_Blubber*)&this->local; 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; local->unk24 = 0;
} }
else{ 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]; f32 sp24[3];
if(nodeProp_findPositionFromActorId(ACTOR_14B_TTC_BLUBBER_UNKNOWN, sp24)){ 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)); Actor *this = marker_getActor(reinterpret_cast(ActorMarker *, marker));
enum asset_e text_id; 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); actor_loopAnimation(this);
this->actor_specific_1_f = 0.0f; 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; 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); gcdialog_showText(text_id, 0xf, this->position, this->marker, chBlubber_showTextCallback, chBlubber_showTextCallback2);
mapSpecificFlags_set(TTC_BLUBBER_MAP_FLAG_2_JIGGY_SPAWNED_TEXT_SHOWN, TRUE); mapSpecificFlags_set(CH_BLUBBER_MAP_FLAG_2_JIGGY_SPAWNED_TEXT_SHOWN, TRUE);
} }
} }
void TTC_Blubber_checkJiggySpawnedTextAndAdvanceState(Actor *this){ void chBlubber_checkJiggySpawnedTextAndAdvanceState(Actor *this){
if( !mapSpecificFlags_get(TTC_BLUBBER_MAP_FLAG_1_UNKNOWN) ) return; if( !mapSpecificFlags_get(CH_BLUBBER_MAP_FLAG_1_UNKNOWN) ) return;
if( mapSpecificFlags_get(TTC_BLUBBER_MAP_FLAG_3_SHOW_JIGGY_SPAWNED_TEXT_FLAG) ) return; if( mapSpecificFlags_get(CH_BLUBBER_MAP_FLAG_3_SHOW_JIGGY_SPAWNED_TEXT_FLAG) ) return;
this->yaw_ideal = (f32) func_80329784(this); 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); func_8028F918(2);
timed_setStaticCameraToNode(0.0f, 4); timed_setStaticCameraToNode(0.0f, 4);
timedFunc_set_1(1.0f, (GenFunction_1)TTC_Blubber_showJiggySpawnedText, (s32)this->marker); timedFunc_set_1(1.0f, (GenFunction_1)chBlubber_showJiggySpawnedText, (s32)this->marker);
subaddie_set_state_with_direction(this, TTC_BLUBBER_STATE_1_UNKNOWN, 0.0f, 1); subaddie_set_state_with_direction(this, CH_BLUBBER_STATE_1_UNKNOWN, 0.0f, 1);
} }
void func_8038771C(Actor *this){ void func_8038771C(Actor *this){
@@ -131,7 +131,7 @@ void func_80387774(Actor **this_ptr){
&& bacarry_get_markerId() == MARKER_37_GOLD_BULLION && bacarry_get_markerId() == MARKER_37_GOLD_BULLION
&& player_throwCarriedObject() && 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; (*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; ActorLocal_Blubber *local;
this->marker->propPtr->unk8_3 = TRUE; this->marker->propPtr->unk8_3 = TRUE;
func_8028E668(this->position, 90.0f, -10.0f, 110.0f); 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; return;
if(!this->volatile_initialized){ if(!this->volatile_initialized){
if(this->state == TTC_BLUBBER_STATE_3_UNKNOWN){ if(this->state == CH_BLUBBER_STATE_3_UNKNOWN){
subaddie_set_state_with_direction(this, TTC_BLUBBER_STATE_2_UNKNOWN, 0.0f, 1); subaddie_set_state_with_direction(this, CH_BLUBBER_STATE_2_UNKNOWN, 0.0f, 1);
} }
this->volatile_initialized = TRUE; this->volatile_initialized = TRUE;
}//L80387970 }//L80387970
@@ -164,12 +164,12 @@ void TTC_Blubber_updateFunc(Actor * this){
&& !this->has_met_before && !this->has_met_before
&& item_getCount(ITEM_18_GOLD_BULLIONS) == 0 && 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; 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 && !this->unk138_23
){ ){
if (item_getCount(ITEM_18_GOLD_BULLIONS) == 0) { if (item_getCount(ITEM_18_GOLD_BULLIONS) == 0) {
@@ -181,26 +181,26 @@ void TTC_Blubber_updateFunc(Actor * this){
}//L80387A54 }//L80387A54
switch(this->state){//D_8038CD40 switch(this->state){//D_8038CD40
case TTC_BLUBBER_STATE_1_UNKNOWN: case CH_BLUBBER_STATE_1_UNKNOWN:
if(!this->initialized){ if(!this->initialized){
actor_collisionOff(this); actor_collisionOff(this);
TTC_Blubber_initiliaze(this); chBlubber_initiliaze(this);
} }
func_80387774(&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; break;
func_80328FB0(this, 3.0f); func_80328FB0(this, 3.0f);
func_8038771C(this); func_8038771C(this);
func_80387830(this, 0.14f, 0.68f); func_80387830(this, 0.14f, 0.68f);
TTC_Blubber_checkJiggySpawnedTextAndAdvanceState(this); chBlubber_checkJiggySpawnedTextAndAdvanceState(this);
break; break;
case TTC_BLUBBER_STATE_2_UNKNOWN: case CH_BLUBBER_STATE_2_UNKNOWN:
func_80387774(&this); func_80387774(&this);
if( actor_animationIsAt(this, 0.99f) 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; this->actor_specific_1_f = 4.0f;
break; break;
@@ -218,18 +218,18 @@ void TTC_Blubber_updateFunc(Actor * this){
FUNC_8030E8B4(SFX_83_BLUBBER_CRYING, 0.91f, 17000, this->position, 1250, 2500); FUNC_8030E8B4(SFX_83_BLUBBER_CRYING, 0.91f, 17000, this->position, 1250, 2500);
} }
TTC_Blubber_checkJiggySpawnedTextAndAdvanceState(this); chBlubber_checkJiggySpawnedTextAndAdvanceState(this);
break; break;
case TTC_BLUBBER_STATE_3_UNKNOWN: case CH_BLUBBER_STATE_3_UNKNOWN:
break; break;
case TTC_BLUBBER_STATE_4_UNKNOWN: case CH_BLUBBER_STATE_4_UNKNOWN:
{ {
func_80328FB0(this, 3.0f); func_80328FB0(this, 3.0f);
local = (ActorLocal_Blubber*)&this->local; local = (ActorLocal_Blubber*)&this->local;
if(actor_animationIsAt(this, 0.99f) && !local->unk24){ 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; this->actor_specific_1_f = 8.0f;
} }
} }
@@ -245,14 +245,14 @@ void TTC_Blubber_updateFunc(Actor * this){
} }
break; break;
case TTC_BLUBBER_STATE_5_UNKNOWN: case CH_BLUBBER_STATE_5_UNKNOWN:
local = (ActorLocal_Blubber*)&this->local; local = (ActorLocal_Blubber*)&this->local;
func_8032A95C(this, local->unkE, 0x21c); func_8032A95C(this, local->unkE, 0x21c);
break; break;
} }
} }
void TTC_Blubber_update2Func(Actor *this){ void chBlubber_update2Func(Actor *this){
func_80343DEC(this); func_80343DEC(this);
if(0.99 <= this->unk48){ if(0.99 <= this->unk48){
func_8028F918(0); func_8028F918(0);
@@ -262,7 +262,7 @@ void TTC_Blubber_update2Func(Actor *this){
func_80387830(this, 0.5f, 0.97f); 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); func_8033A45C(4, 0);
return actor_draw(marker, gfx, mtx, vtx); return actor_draw(marker, gfx, mtx, vtx);
} }

View File

@@ -6,26 +6,25 @@ extern void spawnQueue_bundle_f32(s32, s32, s32, s32);
extern f32 func_80257204(f32, f32, f32, f32); extern f32 func_80257204(f32, f32, f32, f32);
extern ActorProp * func_80320EB0(ActorMarker *, f32, s32); extern ActorProp * func_80320EB0(ActorMarker *, f32, s32);
void TTC_Clam_updateFunc(Actor *this); void chClam_updateFunc(Actor *this);
/* .data */ /* .data */
ActorAnimationInfo TTC_CLAM_ANIMATIONS[4] = { ActorAnimationInfo gChClamAnimations[4] = {
{0x00, 0.0f}, {0x00, 0.0f},
{ASSET_AA_ANIM_CLAM_IDLE, 2.0f}, {ASSET_AA_ANIM_CLAM_IDLE, 2.0f},
{ASSET_24_ANIM_CLAM_HOP, 1.0f}, {ASSET_24_ANIM_CLAM_HOP, 1.0f},
{ASSET_AB_ANIM_CLAM_EAT, 0.6f} {ASSET_AB_ANIM_CLAM_EAT, 0.6f}
}; };
ActorInfo TTC_CLAM_ACTOR = { ActorInfo gChClam = {
MARKER_15_CLAM, ACTOR_69_CLAM, ASSET_351_MODEL_CLAM, MARKER_15_CLAM, ACTOR_69_CLAM, ASSET_351_MODEL_CLAM,
0x1, TTC_CLAM_ANIMATIONS, 0x1, gChClamAnimations,
TTC_Clam_updateFunc, func_80326224, actor_draw, chClam_updateFunc, func_80326224, actor_draw,
4500, 0x366, 1.6f, 0 4500, 0x366, 1.6f, 0
}; };
/* .code */ /* .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()){ if(func_803114B0()){
sampleRate -= 10000; sampleRate -= 10000;
if(sampleRate < 0) 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); 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); subaddie_set_state_with_direction(this, 1, 0.01f, 1);
actor_loopAnimation(this); actor_loopAnimation(this);
animctrl_setDuration(this->animctrl, randf2(1.9f, 2.1f)); 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 egg_dist;
f32 red_feather_dist; f32 red_feather_dist;
f32 pad; 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) { 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; this->actor_specific_1_f = (volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) != 0) ? 0.0f : 17.0f;
} else if (sp38 == 0) { } 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; return TRUE;
} }
bool TTC_Clam_rotateTowardTarget(Actor *this, s32 arg1) { bool chClam_rotateTowardTarget(Actor *this, s32 arg1) {
f32 temp_f0_2; f32 temp_f0_2;
s32 position; s32 position;
s32 sp2C; s32 sp2C;
@@ -105,7 +104,7 @@ bool TTC_Clam_rotateTowardTarget(Actor *this, s32 arg1) {
animctrl_setDuration(this->animctrl, 1.0f); animctrl_setDuration(this->animctrl, 1.0f);
sp2C = (s32) ((f64) (60.0f / (f32) func_8033DD90()) * 0.5); 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 (((f64) animctrl_getAnimTimer(this->animctrl) < 0.1) && ((f64) randf() < 0.5)) {
if (this->unk1C[0] != 0.0f) { if (this->unk1C[0] != 0.0f) {
arg1 *= 2; 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); particleEmitter_setPosition(pCtrl, position);
func_802EF9F8(pCtrl, 0.7f); func_802EF9F8(pCtrl, 0.7f);
func_802EFA18(pCtrl, 3); func_802EFA18(pCtrl, 3);
@@ -149,7 +148,7 @@ void TTC_Clam_particalEmitterInit(ParticleEmitter *pCtrl, f32 position[3]){
particleEmitter_setDrawMode(pCtrl, 2); particleEmitter_setDrawMode(pCtrl, 2);
} }
void __chClam_emitLargeShellParticles(f32 position[3], s32 count){ void chClam_emitLargeShellParticles(f32 position[3], s32 count){
static struct41s D_8038C3F4 = { static struct41s D_8038C3F4 = {
{{-50.0f, 750.0f, -50.0f}, {120.0f, 900.0f, 120.0f}}, {{-50.0f, 750.0f, -50.0f}, {120.0f, 900.0f, 120.0f}},
{{ 0.0f, -1800.0f, 0.0f}, { 0.0f, -1800.0f, 0.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; ParticleEmitter *pCtrl;
pCtrl = partEmitMgr_newEmitter(count); pCtrl = partEmitMgr_newEmitter(count);
TTC_Clam_particalEmitterInit(pCtrl, position); chClam_particalEmitterInit(pCtrl, position);
particleEmitter_setModel(pCtrl, ASSET_37C_MODEL_CLAM_LARGE_SHELL_PIECE); particleEmitter_setModel(pCtrl, ASSET_37C_MODEL_CLAM_LARGE_SHELL_PIECE);
particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C3F4); particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C3F4);
particleEmitter_setAngularVelocityRange(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f); 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); 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 = { static struct41s D_8038C424 = {
{{-80.0f, 400.0f, -80.0f}, {160.0f, 860.0f, 160.0f}}, {{-80.0f, 400.0f, -80.0f}, {160.0f, 860.0f, 160.0f}},
{{ 0.0f, -1400.0f, 0.0f}, { 0.0f, -1400.0f, 0.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; ParticleEmitter *pCtrl;
pCtrl = partEmitMgr_newEmitter(count); pCtrl = partEmitMgr_newEmitter(count);
TTC_Clam_particalEmitterInit(pCtrl, position); chClam_particalEmitterInit(pCtrl, position);
particleEmitter_setModel(pCtrl, ASSET_37D_MODEL_CLAM_EYE); particleEmitter_setModel(pCtrl, ASSET_37D_MODEL_CLAM_EYE);
particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C424); particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C424);
particleEmitter_setAngularVelocityRange(pCtrl, -300.0f, -300.0f, -300.0f, 300.0f, 300.0f, 300.0f); 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); 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 = { static struct41s D_8038C454 = {
{{-200.0f, 850.0f, -200.0f}, {400.0f, 1000.0f, 400.0f}}, {{-200.0f, 850.0f, -200.0f}, {400.0f, 1000.0f, 400.0f}},
{{ 0.0f, -1800.0f, 0.0f}, { 0.0f, -1800.0f, 0.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; ParticleEmitter *pCtrl;
pCtrl = partEmitMgr_newEmitter(count); pCtrl = partEmitMgr_newEmitter(count);
TTC_Clam_particalEmitterInit(pCtrl, position); chClam_particalEmitterInit(pCtrl, position);
particleEmitter_setModel(pCtrl, ASSET_37E_MODEL_CLAM_SMALL_SHELL_PIECE); particleEmitter_setModel(pCtrl, ASSET_37E_MODEL_CLAM_SMALL_SHELL_PIECE);
particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C454); particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C454);
particleEmitter_setAngularVelocityRange(pCtrl, -800.0f, -800.0f, -800.0f, 800.0f, 800.0f, 800.0f); 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); 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 = { static ParticleScaleAndLifetimeRanges D_8038C484 = {
{0.2f, 0.35f}, {0.2f, 0.35f},
{0.0f, 0.0f}, {0.0f, 0.0f},
@@ -222,22 +221,22 @@ void TTC_Clam_emitEatencollectibleParticles(f32 position[3], enum asset_e sprite
particleEmitter_emitN(pCtrl, count); 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; Actor *this;
this = marker_getActor(this_marker); this = marker_getActor(this_marker);
this->marker->collidable = FALSE; this->marker->collidable = FALSE;
this->unk138_27 = TRUE; this->unk138_27 = TRUE;
TTC_Clam_playSfx(SFX_1D_HITTING_AN_ENEMY_1, 1.0f, 26000, this->position, 1500.0f, 2000.0f); chClam_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); chClam_playSfx(SFX_115_BUZZBOMB_DEATH, 1.2f, 26000, this->position, 1500.0f, 2000.0f);
TTC_Clam_emitLargeShellParticles(this->position, 2); chClam_emitLargeShellParticles(this->position, 2);
TTC_Clam_emitEyeParticles(this->position, 2); chClam_emitEyeParticles(this->position, 2);
TTC_Clam_emitSmallShellParticles(this->position, 0xC); chClam_emitSmallShellParticles(this->position, 0xC);
func_803115C4(0xa14); func_803115C4(0xa14);
marker_despawn(this->marker); 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]; f32 position[3];
player_getPosition(position); player_getPosition(position);
@@ -246,7 +245,7 @@ void TTC_Clam_playerDropsItem(s32 index, enum item_e item_id){
item_dec(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; 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) 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) 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); ActorProp *sp4C = func_80320EB0(this->marker, 30.0f, 1);
f32 sp48; f32 sp48;
s32 sp44; s32 sp44;
@@ -274,7 +273,7 @@ void TTC_Clam_updateFunc(Actor *this){
if(!this->volatile_initialized){ if(!this->volatile_initialized){
this->volatile_initialized = TRUE; 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){ if(this->state != 3){
@@ -298,11 +297,11 @@ void TTC_Clam_updateFunc(Actor *this){
switch(this->state){ switch(this->state){
case 1://L80387170 case 1://L80387170
if(__TTC_Clam_rotateTowardTarget(this, 140)){ if(chClam_rotateTowardTarget(this, 140)){
subaddie_set_state_with_direction(this, 2, 0.01f, 1); subaddie_set_state_with_direction(this, 2, 0.01f, 1);
actor_playAnimationOnce(this); actor_playAnimationOnce(this);
animctrl_setDuration(this->animctrl, 1.0f); 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{ else{
animctrl_setDuration(this->animctrl, 2.0f); animctrl_setDuration(this->animctrl, 2.0f);
@@ -313,13 +312,13 @@ void TTC_Clam_updateFunc(Actor *this){
this->position_y += this->velocity_y; this->position_y += this->velocity_y;
this->velocity_y += -5.0f; this->velocity_y += -5.0f;
if(actor_animationIsAt(this, 0.63f)){ 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){ if(this->position_y <= sp48){
this->position_y = sp48; this->position_y = sp48;
if(actor_animationIsAt(this, 0.99f) || 0.98 < animctrl_getAnimTimer(this->animctrl)){ if(actor_animationIsAt(this, 0.99f) || 0.98 < animctrl_getAnimTimer(this->animctrl)){
TTC_Clam_func_80386454(this); chClam_func_80386454(this);
} }
} }
else{//L803872D4 else{//L803872D4
@@ -335,12 +334,12 @@ void TTC_Clam_updateFunc(Actor *this){
} }
if(3.0f <= this->velocity_x){ if(3.0f <= this->velocity_x){
TTC_Clam_func_80386454(this); chClam_func_80386454(this);
break; break;
} }
if(actor_animationIsAt(this, 0.8f) && 2.0f == this->velocity_x){ 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; break;
}//L803873C4 }//L803873C4
@@ -348,15 +347,15 @@ void TTC_Clam_updateFunc(Actor *this){
if(!this->marker->unk14_21) break; 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); func_8034A174(this->marker->unk44, 5, sp38);
switch(this->unk38_31){ switch(this->unk38_31){
case MARKER_60_BLUE_EGG_COLLECTIBLE: 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; break;
case MARKER_B5_RED_FEATHER_COLLECTIBLE: 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;
} }
break; break;

View File

@@ -9,11 +9,19 @@ typedef struct {
s32 open_ticks_counter; s32 open_ticks_counter;
} ActorLocal_Lockup; } ActorLocal_Lockup;
Actor *TTC_Lockup_drawFunc(ActorMarker *this, Gfx **gfx, Mtx **mtx, Vtx **vtx); Actor *chLockup_drawFunc(ActorMarker *this, Gfx **gfx, Mtx **mtx, Vtx **vtx);
void TTC_Lockup_updateFunc(Actor *this); 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 */ /* .data */
ActorAnimationInfo TTC_LOCKUP_ANIMATIONS[6] ={ ActorAnimationInfo gChLockupAnimations[6] ={
{0, 0.0f}, {0, 0.0f},
{ASSET_BC_ANIM_LOCKUP, 8000000.0f}, {ASSET_BC_ANIM_LOCKUP, 8000000.0f},
{ASSET_BC_ANIM_LOCKUP, 4.0f}, {ASSET_BC_ANIM_LOCKUP, 4.0f},
@@ -22,61 +30,53 @@ ActorAnimationInfo TTC_LOCKUP_ANIMATIONS[6] ={
{ASSET_BC_ANIM_LOCKUP, 8000000.0f} {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, MARKER_A4_LOCKUP_SLOW, ACTOR_151_LOCKUP_SLOW, ASSET_3D4_MODEL_LOCKUP,
1, TTC_LOCKUP_ANIMATIONS, 1, gChLockupAnimations,
TTC_Lockup_updateFunc, func_80326224, TTC_Lockup_drawFunc, chLock_updateFunc, func_80326224, chLockup_drawFunc,
2500, 0x366, 0.0f, 0 2500, 0x366, 0.0f, 0
}; };
ActorInfo TTC_LOCKUP_ACTOR_MEDIUM = { ActorInfo gChLockupMedium = {
MARKER_F6_LOCKUP_MEDIUM, ACTOR_152_LOCKUP_MEDIUM, ASSET_3D4_MODEL_LOCKUP, MARKER_F6_LOCKUP_MEDIUM, ACTOR_152_LOCKUP_MEDIUM, ASSET_3D4_MODEL_LOCKUP,
1, TTC_LOCKUP_ANIMATIONS, 1, gChLockupAnimations,
TTC_Lockup_updateFunc, func_80326224, TTC_Lockup_drawFunc, chLock_updateFunc, func_80326224, chLockup_drawFunc,
2500, 0x366, 0.0f, 0 2500, 0x366, 0.0f, 0
}; };
ActorInfo TTC_LOCKUP_ACTOR_FAST = { ActorInfo gChLockupFast = {
MARKER_F7_LOCKUP_FAST, ACTOR_153_LOCKUP_FAST, ASSET_3D4_MODEL_LOCKUP, MARKER_F7_LOCKUP_FAST, ACTOR_153_LOCKUP_FAST, ASSET_3D4_MODEL_LOCKUP,
1, TTC_LOCKUP_ANIMATIONS, 1, gChLockupAnimations,
TTC_Lockup_updateFunc, func_80326224, TTC_Lockup_drawFunc, chLock_updateFunc, func_80326224, chLockup_drawFunc,
2500, 0x366, 0.0f, 0 2500, 0x366, 0.0f, 0
}; };
s32 TTC_LOCKUP_CLOSE_COLOR[4] = {120, 120, 120, 120}; s32 CH_LOCKUP_CLOSE_COLOR[4] = {120, 120, 120, 120};
s32 TTC_LOCKUP_CLOSE_VELOCITY[3] = {0,0,0}; s32 CH_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 */ /* .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); Actor * actor = marker_getActor(marker);
func_8033A45C(3, actor->unk38_31); func_8033A45C(3, actor->unk38_31);
func_8033A45C(4, actor->unk38_31); func_8033A45C(4, actor->unk38_31);
actor_draw(marker, gfx, mtx, vtx); actor_draw(marker, gfx, mtx, vtx);
} }
void TTC_Lockup_close(Actor *this){ void chLockup_close(Actor *this){
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->marker->collidable = FALSE;
this->unk38_31 = 0; this->unk38_31 = 0;
FUNC_8030E8B4(SFX_6C_LOCKUP_CLOSING, 1.0f, 32000, this->position, 1250, 2500); 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(); 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; this->unk38_31 = 1;
FUNC_8030E8B4(SFX_6B_LOCKUP_OPENING, 1.0f, 32000, this->position, 1250, 2500); 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; ActorLocal_Lockup *local = (ActorLocal_Lockup *)&this->local;
s32 tmp_v1; s32 tmp_v1;
int i; int i;
@@ -97,10 +97,10 @@ void TTC_Lockup_updateFunc(Actor *this){
} }
switch(this->state){ switch(this->state){
case TTC_LOCKUP_STATE_CLOSED: case CH_LOCKUP_STATE_CLOSED:
if(!this->initialized){ if(!this->initialized){
this->marker->propPtr->unk8_3 = TRUE; 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->marker->collidable = FALSE;
this->unk38_31 = 0; this->unk38_31 = 0;
this->initialized = TRUE; this->initialized = TRUE;
@@ -115,24 +115,24 @@ void TTC_Lockup_updateFunc(Actor *this){
if(!(local->closed_ticks_counter < tmp_v1)){ if(!(local->closed_ticks_counter < tmp_v1)){
local->closed_ticks_counter = 0; local->closed_ticks_counter = 0;
TTC_Lockup_open(this); chLockup_open(this);
} }
break; break;
case TTC_LOCKUP_STATE_OPENING: case CH_LOCKUP_STATE_OPENING:
if(subaddie_playerIsWithinSphere(this, 400) && func_8028FB48(0x8000000)){ if(subaddie_playerIsWithinSphere(this, 400) && func_8028FB48(0x8000000)){
func_8028F428(0xA, this->marker); func_8028F428(0xA, this->marker);
} }
if(actor_animationIsAt(this, 0.5f)){ 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)){ if(0.15 < animctrl_getAnimTimer(this->animctrl)){
this->marker->collidable = TRUE; this->marker->collidable = TRUE;
} }
break; break;
case TTC_LOCKUP_STATE_OPEN: case CH_LOCKUP_STATE_OPEN:
local->open_ticks_counter++; local->open_ticks_counter++;
tmp_v1 = (this->modelCacheIndex == ACTOR_151_LOCKUP_SLOW) ? 0x1E : tmp_v1 = (this->modelCacheIndex == ACTOR_151_LOCKUP_SLOW) ? 0x1E :
(this->modelCacheIndex == ACTOR_152_LOCKUP_MEDIUM) ? 0x14 : (this->modelCacheIndex == ACTOR_152_LOCKUP_MEDIUM) ? 0x14 :
@@ -141,17 +141,17 @@ void TTC_Lockup_updateFunc(Actor *this){
if(!(local->open_ticks_counter < tmp_v1)){ if(!(local->open_ticks_counter < tmp_v1)){
local->open_ticks_counter = 0; 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; break;
case TTC_LOCKUP_STATE_CLOSING: case CH_LOCKUP_STATE_CLOSING:
case TTC_LOCKUP_STATE_CLOSING2: case CH_LOCKUP_STATE_CLOSING2:
if(this->marker->unk14_21 && actor_animationIsAt(this, 0.99f)){ if(this->marker->unk14_21 && actor_animationIsAt(this, 0.99f)){
TTC_Lockup_close(this); chLockup_close(this);
for(i = 5; i < 0xe; i++){ for(i = 5; i < 0xe; i++){
func_8034A174(this->marker->unk44, i, this->unk1C); 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; break;

View File

@@ -2,12 +2,21 @@
#include "functions.h" #include "functions.h"
#include "variables.h" #include "variables.h"
void TTC_Nipper_updateFunc(Actor *this); void chNipper_updateFunc(Actor *this);
Actor *TTC_Nipper_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); 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 */ /* .data */
ActorAnimationInfo TTC_NIPPER_ANIMATIONS[8] = { ActorAnimationInfo gChNipperAnimations[8] = {
{0x00, 0.0f}, {0x00, 0.0f},
{ASSET_C0_ANIM_NIPPER_IDLE, 2.0f}, {ASSET_C0_ANIM_NIPPER_IDLE, 2.0f},
{ASSET_BD_ANIM_NIPPER_VULNERABLE, 1.5f}, {ASSET_BD_ANIM_NIPPER_VULNERABLE, 1.5f},
@@ -18,25 +27,15 @@ ActorAnimationInfo TTC_NIPPER_ANIMATIONS[8] = {
{0x00, 0.0f} {0x00, 0.0f}
}; };
ActorInfo TTC_NIPPER_ACTOR = { ActorInfo gChNipper = {
MARKER_A5_NIPPER, ACTOR_117_NIPPER, ASSET_3D5_MODEL_NIPPER, MARKER_A5_NIPPER, ACTOR_117_NIPPER, ASSET_3D5_MODEL_NIPPER,
0x1, TTC_NIPPER_ANIMATIONS, 0x1, gChNipperAnimations,
TTC_Nipper_updateFunc, func_80326224, TTC_Nipper_animFunc, chNipper_updateFunc, func_80326224, chNipper_animFunc,
0, 0x299, 10.0f, 0 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 */ /* .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 s32 D_8038C5A4[3] = {180, 180, 180};
static ParticleScaleAndLifetimeRanges D_8038C5B0 = { static ParticleScaleAndLifetimeRanges D_8038C5B0 = {
{0.1f, 0.5f}, {0.1f, 0.5f},
@@ -65,7 +64,7 @@ void TTC_Nipper_drawParticlesAtPosition(f32 *position, s32 count) {
particleEmitter_emitN(pCtrl, 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; Actor *this;
this = marker_getActor(marker); 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); return actor_draw(marker, gfx, mtx, vtx);
} }
void TTC_Nipper_setAnimationDuration(Actor *this) { void chNipper_setAnimationDuration(Actor *this) {
subaddie_set_state_looped(this, TTC_NIPPER_STATE_3_UNKNOWN); subaddie_set_state_looped(this, CH_NIPPER_STATE_3_UNKNOWN);
this->unk1C[0] = 0.0f; this->unk1C[0] = 0.0f;
switch((s32)this->lifetime_value){ switch((s32)this->lifetime_value){
case 120: 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; Actor *this;
this = marker_getActor(caller); this = marker_getActor(caller);
TTC_Nipper_setAnimationDuration(this); chNipper_setAnimationDuration(this);
ncStaticCamera_exit(); ncStaticCamera_exit();
comusic_8025AB44(COMUSIC_12_TTC_NIPPER, -1, 300); comusic_8025AB44(COMUSIC_12_TTC_NIPPER, -1, 300);
} }
void TTC_Nipper_playDeathAnimation(Actor *this) { void chNipper_playDeathAnimation(Actor *this) {
s32 i; 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); actor_playAnimationOnce(this);
for(i = 0; i < 3; i ++){ for(i = 0; i < 3; i ++){
FUNC_8030E8B4(SFX_79_TICKER_DEATH, 0.5f, 17000, this->position, 1500, 3000); 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); 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)); 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; Actor *this;
s32 i; s32 i;
@@ -137,7 +136,7 @@ void TTC_Nipper_dieFunc(ActorMarker *this_marker, ActorMarker *other_marker) {
func_8032B4DC(this, other_marker, 7); func_8032B4DC(this, other_marker, 7);
if (this->lifetime_value == 40.0f) { 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); actor_playAnimationOnce(this);
for(i = 0; i < 3; i++){ for(i = 0; i < 3; i++){
FUNC_8030E8B4(SFX_78_EAGLECRY, 0.7f, 20000, this->position, 1500, 3000); 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) { if (this->lifetime_value == 80.0f) {
TTC_Nipper_playDeathAnimation(this); chNipper_playDeathAnimation(this);
this->lifetime_value = 40.0f; this->lifetime_value = 40.0f;
return; return;
} }
TTC_Nipper_playDeathAnimation(this); chNipper_playDeathAnimation(this);
this->lifetime_value = 80.0f; this->lifetime_value = 80.0f;
gcdialog_showText(ASSET_A10_TEXT_TTC_NIPPER_HURT, 4, NULL, NULL, NULL, NULL); gcdialog_showText(ASSET_A10_TEXT_TTC_NIPPER_HURT, 4, NULL, NULL, NULL, NULL);
return; 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){ if(this_marker->unk40_31 == 1){
this_marker->id = 0x16C; this_marker->id = 0x16C;
} }
@@ -171,7 +170,7 @@ bool TTC_Nipper_determineMarkeId(ActorMarker * this_marker, ActorMarker * other_
return TRUE; return TRUE;
} }
void TTC_Nipper_ow2Func(ActorMarker * this_marker, ActorMarker *other_marker){ void chNipper_ow2Func(ActorMarker * this_marker, ActorMarker *other_marker){
Actor *this; Actor *this;
if(other_marker->id == 1){ 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); Actor *this = marker_getActor(this_marker);
if( !this->unk138_23 if( !this->unk138_23
&& this->has_met_before && 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]; f32 particlePosition[3];
s32 sp48; s32 sp48;
s32 xVelocity; s32 xVelocity;
@@ -210,7 +209,7 @@ void TTC_Nipper_updateFunc(Actor *this){
func_8032BC18(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){ if(0.0f == this->velocity_x && xVelocity){
comusic_8025AB44(COMUSIC_12_TTC_NIPPER, -1, 5000); comusic_8025AB44(COMUSIC_12_TTC_NIPPER, -1, 5000);
func_8032BB88(this, 0, 4000); func_8032BB88(this, 0, 4000);
@@ -226,32 +225,32 @@ void TTC_Nipper_updateFunc(Actor *this){
} }
switch(this->state){ switch(this->state){
case TTC_NIPPER_STATE_1_UNKNOWN: case CH_NIPPER_STATE_1_UNKNOWN:
if(!this->initialized){ if(!this->initialized){
animctrl_setTransitionDuration(this->animctrl, 0.35f); 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->lifetime_value = 120.0f;
this->marker->propPtr->unk8_3 = TRUE; this->marker->propPtr->unk8_3 = TRUE;
marker_setCollisionScripts(this->marker, TTC_Nipper_owFunc, TTC_Nipper_ow2Func, TTC_Nipper_dieFunc); marker_setCollisionScripts(this->marker, chNipper_owFunc, chNipper_ow2Func, chNipper_dieFunc);
func_803300C0(this->marker, TTC_Nipper_determineMarkeId); func_803300C0(this->marker, chNipper_determineMarkeId);
this->initialized = TRUE; this->initialized = TRUE;
} }
if(TTC_Nipper_shouldShowActor(this)){ if(chNipper_shouldShowActor(this)){
temp_v0 = func_8028ECAC(); temp_v0 = func_8028ECAC();
if( !this->has_met_before if( !this->has_met_before
&& temp_v0 != 1 && temp_v0 != 1
&& temp_v0 != 10 && temp_v0 != 10
){ ){
subaddie_set_state_with_direction(this, TTC_NIPPER_STATE_SPAWNED, 0.01f, 1); 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, TTC_Nipper_spawnedShowTextCallback, NULL)){ if(gcdialog_showText(ASSET_A0E_NIPPER_SPAWNED, 0xf, this->position, this->marker, chNipper_spawnedShowTextCallback, NULL)){
this->has_met_before = TRUE; this->has_met_before = TRUE;
} }
comusic_8025AB44(COMUSIC_12_TTC_NIPPER, 5000, 300); comusic_8025AB44(COMUSIC_12_TTC_NIPPER, 5000, 300);
ncStaticCamera_setToNode(11); ncStaticCamera_setToNode(11);
} }
else{ else{
TTC_Nipper_setAnimationDuration(this); chNipper_setAnimationDuration(this);
} }
break; break;
} }
@@ -265,27 +264,27 @@ void TTC_Nipper_updateFunc(Actor *this){
} }
break; break;
case TTC_NIPPER_STATE_2_UNKNOWN: case CH_NIPPER_STATE_2_UNKNOWN:
if(!TTC_Nipper_shouldShowActor(this)){ if(!chNipper_shouldShowActor(this)){
subaddie_set_state_looped(this, TTC_NIPPER_STATE_1_UNKNOWN); subaddie_set_state_looped(this, CH_NIPPER_STATE_1_UNKNOWN);
break; break;
} }
if(this->lifetime_value <= this->unk38_31){ if(this->lifetime_value <= this->unk38_31){
TTC_Nipper_setAnimationDuration(this); chNipper_setAnimationDuration(this);
break; break;
} }
this->unk38_31++; this->unk38_31++;
break; break;
case TTC_NIPPER_STATE_3_UNKNOWN: case CH_NIPPER_STATE_3_UNKNOWN:
if(actor_animationIsAt(this, 0.5f) && this->marker->unk14_21){ if(actor_animationIsAt(this, 0.5f) && this->marker->unk14_21){
func_8034A174(this->marker->unk44, 6, particlePosition); 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 else if(actor_animationIsAt(this, 0.95f) && this->marker->unk14_21){//L80388800
func_8034A174(this->marker->unk44, 5, particlePosition); func_8034A174(this->marker->unk44, 5, particlePosition);
TTC_Nipper_drawParticlesAtPosition(particlePosition, 2); chNipper_drawParticlesAtPosition(particlePosition, 2);
} }
if(actor_animationIsAt(this, 0.99f)){ if(actor_animationIsAt(this, 0.99f)){
@@ -293,7 +292,7 @@ void TTC_Nipper_updateFunc(Actor *this){
} }
if(2.0f <= this->unk1C[0]){ 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; this->unk38_31 = 0;
break; break;
} }
@@ -307,13 +306,13 @@ void TTC_Nipper_updateFunc(Actor *this){
} }
break; break;
case TTC_NIPPER_STATE_DIEING: case CH_NIPPER_STATE_DIEING:
if(actor_animationIsAt(this, 0.99f)){ if(actor_animationIsAt(this, 0.99f)){
TTC_Nipper_setAnimationDuration(this); chNipper_setAnimationDuration(this);
} }
break; break;
case TTC_NIPPER_STATE_SPAWNED: case CH_NIPPER_STATE_SPAWNED:
if( actor_animationIsAt(this, 0.2f) if( actor_animationIsAt(this, 0.2f)
|| actor_animationIsAt(this, 0.2f) || actor_animationIsAt(this, 0.2f)
|| actor_animationIsAt(this, 0.6f) || actor_animationIsAt(this, 0.6f)
@@ -323,7 +322,7 @@ void TTC_Nipper_updateFunc(Actor *this){
} }
break; break;
case TTC_NIPPER_STATE_DEAD: case CH_NIPPER_STATE_DEAD:
this->marker->collidable = FALSE; this->marker->collidable = FALSE;
if(actor_animationIsAt(this, 0.6f)){ if(actor_animationIsAt(this, 0.6f)){
FUNC_8030E8B4(SFX_7C_CHEBOOF, 0.9f, 20000, this->position, 1500, 3000); 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)){ 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; break;
case TTC_NIPPER_STATE_7_UNKNOWN: case CH_NIPPER_STATE_7_UNKNOWN:
this->marker->collidable = FALSE; this->marker->collidable = FALSE;
break; break;
}
}//L80388A30
} }
bool func_80388A44(s16 arg0[3]){ bool func_80388A44(s16 arg0[3]){
@@ -351,5 +349,5 @@ bool func_80388A44(s16 arg0[3]){
sp1C[2] = (f32) arg0[2]; sp1C[2] = (f32) arg0[2];
nipper = actorArray_findClosestActorFromActorId(sp1C, ACTOR_117_NIPPER, -1, NULL); 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;
} }

View File

@@ -9,13 +9,13 @@ typedef struct {
s32 unk0; s32 unk0;
} ActorLocal_TreasureHunt; } ActorLocal_TreasureHunt;
void TTC_Treasurehunt_updateFunc(Actor *this); void chTreasurehunt_updateFunc(Actor *this);
Actor *TTC_Treasurehunt_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); 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 */ /* .data */
f32 TTC_TREASUREHUNT_STEP_POSITIONS[6][3] = { f32 CH_TREASUREHUNT_STEP_POSITIONS[6][3] = {
{2904.0f, 2458.0f, -7351.0f}, {2904.0f, 2458.0f, -7351.0f},
{-7007.0f, 2013.0f, 401.0f}, {-7007.0f, 2013.0f, 401.0f},
{-3388.0f, 1519.0f, 5939.0f}, {-3388.0f, 1519.0f, 5939.0f},
@@ -24,9 +24,9 @@ f32 TTC_TREASUREHUNT_STEP_POSITIONS[6][3] = {
{7667.0f, 717.0f, 1676.0f} {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 }; f32 CH_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 CH_TREASUREHUNT_STEP_YAWS[6] = { 0x6E, 0xD2, 0x10E, 0x145, 0x14A, 0 };
s32 TTC_TREASUREHUNT_STEP_ACTORS[6] = { s32 CH_TREASUREHUNT_STEP_ACTORS[6] = {
ACTOR_53_RED_ARROW, ACTOR_53_RED_ARROW,
ACTOR_53_RED_ARROW, 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 ACTOR_46_JIGGY
}; };
ActorInfo TTC_TREASUREHUNT_ACTOR_RED_ARROW = { ActorInfo gChTreasurehuntRedArrow = {
MARKER_62_RED_ARROW, ACTOR_53_RED_ARROW, ASSET_3E9_MODEL_RED_ARROW, MARKER_62_RED_ARROW, ACTOR_53_RED_ARROW, ASSET_3E9_MODEL_RED_ARROW,
0, NULL, 0, NULL,
TTC_Treasurehunt_updateFunc, func_80326224, TTC_Treasurehunt_animFunc, chTreasurehunt_updateFunc, func_80326224, chTreasurehunt_animFunc,
0, 0x400, 0.0f, 0 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, MARKER_63_RED_QUESTION_MARK, ACTOR_54_RED_QUESTION_MARK, ASSET_3EB_MODEL_RED_QUESTION_MARK,
0, NULL, 0, NULL,
TTC_Treasurehunt_updateFunc, func_80326224, TTC_Treasurehunt_animFunc, chTreasurehunt_updateFunc, func_80326224, chTreasurehunt_animFunc,
0, 0x400, 0.0f, 0 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, MARKER_64_RED_X, ACTOR_55_RED_X, ASSET_3EA_MODEL_RED_X,
0, NULL, 0, NULL,
TTC_Treasurehunt_updateFunc, func_80326224, TTC_Treasurehunt_animFunc, chTreasurehunt_updateFunc, func_80326224, chTreasurehunt_animFunc,
0, 0x400, 0.0f, 0 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}, {1.1f, 1.5f},
{4.0f, 4.6f}, {4.0f, 4.6f},
{0.0f, 0.01f}, {0.0f, 0.01f},
@@ -66,20 +66,20 @@ ParticleScaleAndLifetimeRanges TTC_TREASUREHUNT_PARTICLE_SCALE_AND_LIFETIME_RANG
0.0f, 0.01f 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}}, {{-230.0f, 30.0f, -230.0f}, {230.0f, 110.0f, 230.0f}},
{{-60.0f, 0.0f, -60.0f}, {60.0f, 30.0f, 60.0f}}, {{-60.0f, 0.0f, -60.0f}, {60.0f, 30.0f, 60.0f}},
}; };
/* .code */ /* .code */
bool TTC_Treasurehunt_isActiveHitboxBeakBusterHitbox(void) { bool chTreasurehunt_isActiveHitboxBeakBusterHitbox(void) {
enum comusic_e comusic_id; enum comusic_e comusic_id;
s32 music_volume; s32 music_volume;
if (player_getActiveHitbox(0) == HITBOX_1_BEAK_BUSTER) { if (player_getActiveHitbox(0) == HITBOX_1_BEAK_BUSTER) {
comusic_id = COMUSIC_2B_DING_B; comusic_id = COMUSIC_2B_DING_B;
music_volume = 28000; music_volume = 28000;
if (TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP == 5) { if (CH_TREASUREHUNT_PUZZLE_CURRENT_STEP == 5) {
comusic_id = COMUSIC_2D_PUZZLE_SOLVED_FANFARE; comusic_id = COMUSIC_2D_PUZZLE_SOLVED_FANFARE;
music_volume = 0x7FFF; music_volume = 0x7FFF;
} }
@@ -89,32 +89,32 @@ bool TTC_Treasurehunt_isActiveHitboxBeakBusterHitbox(void) {
return FALSE; return FALSE;
} }
void TTC_Treasurehunt_spawnRedXForNextStep(void) { void chTreasurehunt_spawnRedXForNextStep(void) {
Actor *actor; Actor *actor;
ActorLocal_TreasureHunt *local; 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; local = (ActorLocal_TreasureHunt *)&actor->local;
actor->yaw = TTC_TREASUREHUNT_STEP_RED_X_YAWS[TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP]; actor->yaw = CH_TREASUREHUNT_STEP_RED_X_YAWS[CH_TREASUREHUNT_PUZZLE_CURRENT_STEP];
local->unk0 = TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP; local->unk0 = CH_TREASUREHUNT_PUZZLE_CURRENT_STEP;
actor->lifetime_value = 0.0f; actor->lifetime_value = 0.0f;
actor->state = 0; actor->state = 0;
} }
void TTC_Treasurehunt_spawnActorForNextStep(void) { void chTreasurehunt_spawnActorForNextStep(void) {
Actor *actor; Actor *actor;
ActorLocal_TreasureHunt *local; 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; local = (ActorLocal_TreasureHunt *)&actor->local;
actor->yaw = TTC_TREASUREHUNT_STEP_YAWS[TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP - 1]; actor->yaw = CH_TREASUREHUNT_STEP_YAWS[CH_TREASUREHUNT_PUZZLE_CURRENT_STEP - 1];
local->unk0 = TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP; local->unk0 = CH_TREASUREHUNT_PUZZLE_CURRENT_STEP;
actor->lifetime_value = 0.0f; actor->lifetime_value = 0.0f;
actor->state = 0; actor->state = 0;
} }
void TTC_Treasurehunt_checkStepProgress(s32 currentStep){ void chTreasurehunt_checkStepProgress(s32 currentStep){
if(TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP == currentStep && TTC_Treasurehunt_isActiveHitboxBeakBusterHitbox()){ if(CH_TREASUREHUNT_PUZZLE_CURRENT_STEP == currentStep && chTreasurehunt_isActiveHitboxBeakBusterHitbox()){
if(currentStep == 0 && !jiggyscore_isCollected(JIGGY_11_TTC_RED_X)){ if(currentStep == 0 && !jiggyscore_isCollected(JIGGY_11_TTC_RED_X)){
gcdialog_showText(ASSET_A18_TEXT_TREASUREHUNT_FOLLOW_CLUES, 4, NULL, NULL, NULL, NULL); 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); gcdialog_showText(ASSET_A19_TEXT_TREASUREHUNT_SECOND_STEP, 4, NULL, NULL, NULL, NULL);
} }
TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP++; CH_TREASUREHUNT_PUZZLE_CURRENT_STEP++;
__spawnQueue_add_0(TTC_Treasurehunt_spawnActorForNextStep); __spawnQueue_add_0(chTreasurehunt_spawnActorForNextStep);
__spawnQueue_add_0(TTC_Treasurehunt_spawnRedXForNextStep); __spawnQueue_add_0(chTreasurehunt_spawnRedXForNextStep);
} }
} }
void TTC_Treasurehunt_checkStepProgress0(ActorMarker *this, ActorMarker *arg1){\ void chTreasurehunt_checkStepProgress0(ActorMarker *this, ActorMarker *arg1){\
TTC_Treasurehunt_checkStepProgress(0); chTreasurehunt_checkStepProgress(0);
} }
void TTC_Treasurehunt_checkStepProgress1(ActorMarker *this, ActorMarker *arg1){\ void chTreasurehunt_checkStepProgress1(ActorMarker *this, ActorMarker *arg1){\
TTC_Treasurehunt_checkStepProgress(1); chTreasurehunt_checkStepProgress(1);
} }
void TTC_Treasurehunt_checkStepProgress2(ActorMarker *this, ActorMarker *arg1){\ void chTreasurehunt_checkStepProgress2(ActorMarker *this, ActorMarker *arg1){\
TTC_Treasurehunt_checkStepProgress(2); chTreasurehunt_checkStepProgress(2);
} }
void TTC_Treasurehunt_checkStepProgress3(ActorMarker *this, ActorMarker *arg1){\ void chTreasurehunt_checkStepProgress3(ActorMarker *this, ActorMarker *arg1){\
TTC_Treasurehunt_checkStepProgress(3); chTreasurehunt_checkStepProgress(3);
} }
void TTC_Treasurehunt_checkStepProgress4(ActorMarker *this, ActorMarker *arg1){\ void chTreasurehunt_checkStepProgress4(ActorMarker *this, ActorMarker *arg1){\
TTC_Treasurehunt_checkStepProgress(4); chTreasurehunt_checkStepProgress(4);
} }
void TTC_Treasurehunt_checkStepProgress5(s16 arg0[3], s32 arg1){ void chTreasurehunt_checkStepProgress5(s16 arg0[3], s32 arg1){
static ParticleEmitter *particleEmitter; static ParticleEmitter *particleEmitter;
static f32 particleTargetPosition[3]; 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[0] = (f32)arg0[0];
particleTargetPosition[1] = (f32)arg0[1]; particleTargetPosition[1] = (f32)arg0[1];
particleTargetPosition[2] = (f32)arg0[2]; particleTargetPosition[2] = (f32)arg0[2];
particleTargetPosition[1] = mapModel_getFloorY(particleTargetPosition); 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])); __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 = 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_setSprite(particleEmitter, ASSET_700_SPRITE_DUST);
particleEmitter_setStartingFrameRange(particleEmitter, 0, 7); particleEmitter_setStartingFrameRange(particleEmitter, 0, 7);
particleEmitter_setPosition(particleEmitter, particleTargetPosition); particleEmitter_setPosition(particleEmitter, particleTargetPosition);
particleEmitter_setPositionAndVelocityRanges(particleEmitter, &TTC_TREASUREHUNT_VELOCITY_RANGES); particleEmitter_setPositionAndVelocityRanges(particleEmitter, &CH_TREASUREHUNT_VELOCITY_RANGES);
particleEmitter_setScaleAndLifetimeRanges(particleEmitter, &TTC_TREASUREHUNT_PARTICLE_SCALE_AND_LIFETIME_RANGES); particleEmitter_setScaleAndLifetimeRanges(particleEmitter, &CH_TREASUREHUNT_PARTICLE_SCALE_AND_LIFETIME_RANGES);
particleEmitter_emitN(particleEmitter, 5); particleEmitter_emitN(particleEmitter, 5);
particleTargetPosition[2] += 300.0f; particleTargetPosition[2] += 300.0f;
gcpausemenu_80314AC8(0); gcpausemenu_80314AC8(0);
timedFunc_set_2(0.1f, (GenFunction_2) func_8028F45C, 9, (s32)&particleTargetPosition); timedFunc_set_2(0.1f, (GenFunction_2) func_8028F45C, 9, (s32)&particleTargetPosition);
timedFunc_set_1(0.1f, (GenFunction_1) gcpausemenu_80314AC8, 1); timedFunc_set_1(0.1f, (GenFunction_1) gcpausemenu_80314AC8, 1);
gcdialog_showText(ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED, 4, NULL, NULL, NULL, NULL); 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){ void chTreasurehunt_resetProgress(void){
TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP = 0; CH_TREASUREHUNT_PUZZLE_CURRENT_STEP = 0;
} }
void TTC_Treasurehunt_updateFunc(Actor *this){ void chTreasurehunt_updateFunc(Actor *this){
f32 tick = time_getDelta(); f32 tick = time_getDelta();
ActorLocal_TreasureHunt *local = (ActorLocal_TreasureHunt*)&this->local; ActorLocal_TreasureHunt *local = (ActorLocal_TreasureHunt*)&this->local;
f64 tmp_f12; f64 tmp_f12;
@@ -198,7 +198,7 @@ void TTC_Treasurehunt_updateFunc(Actor *this){
} }
break; break;
case 1: case 1:
if(local->unk0 < TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP){ if(local->unk0 < CH_TREASUREHUNT_PUZZLE_CURRENT_STEP){
this->state = 2; this->state = 2;
} }
break; break;
@@ -212,7 +212,7 @@ void TTC_Treasurehunt_updateFunc(Actor *this){
this->depth_mode = 2; 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 sp4C[3];
f32 sp40[3]; f32 sp40[3];
f32 sp3C; f32 sp3C;

View File

@@ -5,9 +5,9 @@
#include "SnS.h" #include "SnS.h"
#include "actor.h" #include "actor.h"
extern ActorInfo TTC_CLAM_ACTOR; extern ActorInfo gChClam;
extern ActorInfo TTC_BLUBBER_ACTOR; extern ActorInfo gChBlubber;
extern ActorInfo TTC_NIPPER_ACTOR; extern ActorInfo gChNipper;
extern ActorInfo D_8038C5E0; extern ActorInfo D_8038C5E0;
extern ActorInfo D_8038C604; extern ActorInfo D_8038C604;
extern ActorInfo D_8038C628; extern ActorInfo D_8038C628;
@@ -17,12 +17,12 @@ extern ActorInfo D_8038C694;
extern ActorInfo D_8038C6B8; extern ActorInfo D_8038C6B8;
extern ActorInfo D_8038C6DC; extern ActorInfo D_8038C6DC;
extern ActorInfo D_8038C718; extern ActorInfo D_8038C718;
extern ActorInfo TTC_LOCKUP_ACTOR_SLOW; extern ActorInfo gChLockupSlow;
extern ActorInfo TTC_LOCKUP_ACTOR_MEDIUM; extern ActorInfo gChLockupMedium;
extern ActorInfo TTC_LOCKUP_ACTOR_FAST; extern ActorInfo gChLockupFast;
extern ActorInfo TTC_TREASUREHUNT_ACTOR_RED_ARROW; extern ActorInfo gChTreasurehuntRedArrow;
extern ActorInfo TTC_TREASUREHUNT_ACTOR_RED_QUESTION_MARK; extern ActorInfo gChTreasurehuntRedQuestionMark;
extern ActorInfo TTC_TREASUREHUNT_ACTOR_RED_X; extern ActorInfo gChTreasurehuntRedX;
extern ActorInfo gChTreasureInfo; extern ActorInfo gChTreasureInfo;
void TTC_func_80388C78(Actor *this); 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_8038C5E0, actor_new, ACTOR_FLAG_NONE);
spawnableActorList_add(&D_8038C604, 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(&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(&TTC_BLUBBER_ACTOR, actor_new, ACTOR_FLAG_UNKNOWN_0 | ACTOR_FLAG_UNKNOWN_8 | 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(&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(&gChLockupSlow, 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(&gChLockupMedium, 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(&gChLockupFast, 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(&gChTreasurehuntRedArrow, actor_new, ACTOR_FLAG_UNKNOWN_10);
spawnableActorList_add(&TTC_TREASUREHUNT_ACTOR_RED_QUESTION_MARK, actor_new, ACTOR_FLAG_UNKNOWN_10); spawnableActorList_add(&gChTreasurehuntRedQuestionMark, actor_new, ACTOR_FLAG_UNKNOWN_10);
spawnableActorList_add(&TTC_TREASUREHUNT_ACTOR_RED_X, 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(&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_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_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_8038C694, actor_new, ACTOR_FLAG_UNKNOWN_10);
spawnableActorList_add(&D_8038C6B8, 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(&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){ void TTC_func_80388C78(Actor *this){

View File

@@ -80,7 +80,7 @@ ActorInfo D_80365F00 = { 0xE6, 0x197, 0x532, 0x1, D_80365ED0, func_802C4C14, fun
/* .bss */ /* .bss */
s32 mm_hut_smash_count; s32 mm_hut_smash_count;
u32 TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP; u32 CH_TREASUREHUNT_PUZZLE_CURRENT_STEP;
struct FF_StorageStruct* D_8037DCB8; struct FF_StorageStruct* D_8037DCB8;
s32 D_8037DCBC; s32 D_8037DCBC;
u8 D_8037DCC0[7]; u8 D_8037DCC0[7];

View File

@@ -54,7 +54,7 @@ void func_803216D0(enum map_e map){
mm_resetHuts(); mm_resetHuts();
break; break;
case MAP_7_TTC_TREASURE_TROVE_COVE: case MAP_7_TTC_TREASURE_TROVE_COVE:
TTC_Treasurehunt_resetProgress(); chTreasurehunt_resetProgress();
break; break;
case MAP_1B_MMM_MAD_MONSTER_MANSION: case MAP_1B_MMM_MAD_MONSTER_MANSION:
mmm_resetFlowerPots(); mmm_resetFlowerPots();

View File

@@ -291,12 +291,12 @@ extern void warp_lairEnterLairFromSMLevel(s32, s32);
extern void func_802C1674(s32, s32); extern void func_802C1674(s32, s32);
extern void func_802C169C(s32, s32); extern void func_802C169C(s32, s32);
extern void TTC_Treasurehunt_checkStepProgress0(s32, s32); extern void chTreasurehunt_checkStepProgress0(s32, s32);
extern void TTC_Treasurehunt_checkStepProgress1(s32, s32); extern void chTreasurehunt_checkStepProgress1(s32, s32);
extern void TTC_Treasurehunt_checkStepProgress2(s32, s32); extern void chTreasurehunt_checkStepProgress2(s32, s32);
extern void TTC_Treasurehunt_checkStepProgress3(s32, s32); extern void chTreasurehunt_checkStepProgress3(s32, s32);
extern void TTC_Treasurehunt_checkStepProgress4(s32, s32); extern void chTreasurehunt_checkStepProgress4(s32, s32);
extern void TTC_Treasurehunt_checkStepProgress5(s32, s32); extern void chTreasurehunt_checkStepProgress5(s32, s32);
extern void chMumbo_detransformWarn(s32, s32); extern void chMumbo_detransformWarn(s32, s32);
extern void chMumbo_detransformTrigger(s32, s32); extern void chMumbo_detransformTrigger(s32, s32);
extern void func_8033443C(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, 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, func_8033443C, chTreasurehunt_checkStepProgress0, chTreasurehunt_checkStepProgress1, chTreasurehunt_checkStepProgress2,
TTC_Treasurehunt_checkStepProgress3, TTC_Treasurehunt_checkStepProgress4, TTC_Treasurehunt_checkStepProgress5, chMumbo_detransformWarn, chTreasurehunt_checkStepProgress3, chTreasurehunt_checkStepProgress4, chTreasurehunt_checkStepProgress5, chMumbo_detransformWarn,
chMumbo_detransformTrigger, func_8033443C, func_8033443C, func_8033443C, chMumbo_detransformTrigger, 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, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C,