document: Treasurehunt from TTC
This commit is contained in:
@@ -3998,6 +3998,8 @@ enum asset_e
|
|||||||
ASSET_A15_TEXT_TTC_LOCKUP_SPAWNED = 0xA15,
|
ASSET_A15_TEXT_TTC_LOCKUP_SPAWNED = 0xA15,
|
||||||
|
|
||||||
ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED = 0xa17,
|
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_A1F_DIALOG_SHOCKJUMP_LEARN = VER_SELECT(0xa1f, 0x91f, 0, 0),
|
||||||
ASSET_A20_DIALOG_FLY_LEARN,
|
ASSET_A20_DIALOG_FLY_LEARN,
|
||||||
|
@@ -25,7 +25,7 @@ ActorInfo TTC_NIPPER_ACTOR = {
|
|||||||
0, 0x299, 10.0f, 0
|
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_1_UNKNOWN = 1, // L80388578
|
||||||
TTC_NIPPER_STATE_2_UNKNOWN = 2, // L8038872C
|
TTC_NIPPER_STATE_2_UNKNOWN = 2, // L8038872C
|
||||||
TTC_NIPPER_STATE_3_UNKNOWN = 3, // L803887B4
|
TTC_NIPPER_STATE_3_UNKNOWN = 3, // L803887B4
|
||||||
|
@@ -9,13 +9,13 @@ typedef struct {
|
|||||||
s32 unk0;
|
s32 unk0;
|
||||||
}ActorLocal_TreasureHunt;
|
}ActorLocal_TreasureHunt;
|
||||||
|
|
||||||
void TTC_func_80389E90(Actor *this);
|
void TTC_Treasurehunt_updateFunc(Actor *this);
|
||||||
Actor *func_8038A0D0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx);
|
Actor *TTC_Treasurehunt_animFunc(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx);
|
||||||
|
|
||||||
extern u32 D_8037DCB4;
|
extern u32 TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP;
|
||||||
|
|
||||||
/* .data */
|
/* .data */
|
||||||
f32 D_8038C820[6][3] = {
|
f32 TTC_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,40 +24,41 @@ f32 D_8038C820[6][3] = {
|
|||||||
{7667.0f, 717.0f, 1676.0f}
|
{7667.0f, 717.0f, 1676.0f}
|
||||||
};
|
};
|
||||||
|
|
||||||
f32 D_8038C868[6] = { 300.0f, 180.0f, 220.0f, 270.0f, 330.0f, 255.0f};
|
f32 TTC_TREASUREHUNT_STEP_RED_X_YAWS[6] = { 300.0f, 180.0f, 220.0f, 270.0f, 330.0f, 255.0f };
|
||||||
s32 D_8038C880[6] = {0x6E, 0xD2, 0x10E, 0x145, 0x14A, 0};
|
s32 TTC_TREASUREHUNT_STEP_YAWS[6] = { 0x6E, 0xD2, 0x10E, 0x145, 0x14A, 0 };
|
||||||
s32 D_8038C898[6] = {
|
s32 TTC_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,
|
||||||
ACTOR_53_RED_ARROW,
|
ACTOR_53_RED_ARROW,
|
||||||
ACTOR_54_RED_QUESTION_MARK,
|
ACTOR_54_RED_QUESTION_MARK,
|
||||||
0x46
|
ACTOR_46_JIGGY
|
||||||
}; //enum actor_e
|
};
|
||||||
|
|
||||||
ActorInfo D_8038C8B0 = {
|
ActorInfo TTC_TREASUREHUNT_ACTOR_RED_ARROW = {
|
||||||
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_func_80389E90, func_80326224, func_8038A0D0,
|
TTC_Treasurehunt_updateFunc, func_80326224, TTC_Treasurehunt_animFunc,
|
||||||
0, 0x400, 0.0f, 0
|
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,
|
MARKER_63_RED_QUESTION_MARK, ACTOR_54_RED_QUESTION_MARK, ASSET_3EB_MODEL_RED_QUESTION_MARK,
|
||||||
0, NULL,
|
0, NULL,
|
||||||
TTC_func_80389E90, func_80326224, func_8038A0D0,
|
TTC_Treasurehunt_updateFunc, func_80326224, TTC_Treasurehunt_animFunc,
|
||||||
0, 0x400, 0.0f, 0
|
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,
|
MARKER_64_RED_X, ACTOR_55_RED_X, ASSET_3EA_MODEL_RED_X,
|
||||||
0, NULL,
|
0, NULL,
|
||||||
TTC_func_80389E90, func_80326224, func_8038A0D0,
|
TTC_Treasurehunt_updateFunc, func_80326224, TTC_Treasurehunt_animFunc,
|
||||||
0, 0x400, 0.0f, 0
|
0, 0x400, 0.0f, 0
|
||||||
};
|
};
|
||||||
|
|
||||||
s32 D_8038C91C[3] = {160, 120, 20};
|
s32 TTC_TREASUREHUNT_PARTICLE_RGB[3] = {160, 120, 20};
|
||||||
ParticleScaleAndLifetimeRanges D_8038C928 = {
|
|
||||||
|
ParticleScaleAndLifetimeRanges TTC_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},
|
||||||
@@ -65,121 +66,120 @@ ParticleScaleAndLifetimeRanges D_8038C928 = {
|
|||||||
0.0f, 0.01f
|
0.0f, 0.01f
|
||||||
};
|
};
|
||||||
|
|
||||||
struct42s D_8038C950 = {
|
struct42s TTC_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_func_803899C0(void) {
|
bool TTC_Treasurehunt_isActiveHitboxBeakBusterHitbox(void) {
|
||||||
enum comusic_e phi_a0;
|
enum comusic_e comusic_id;
|
||||||
s32 phi_a1;
|
s32 music_volume;
|
||||||
|
|
||||||
if (player_getActiveHitbox(0) == HITBOX_1_BEAK_BUSTER) {
|
if (player_getActiveHitbox(0) == HITBOX_1_BEAK_BUSTER) {
|
||||||
phi_a0 = COMUSIC_2B_DING_B;
|
comusic_id = COMUSIC_2B_DING_B;
|
||||||
phi_a1 = 28000;
|
music_volume = 28000;
|
||||||
if (D_8037DCB4 == 5) {
|
if (TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP == 5) {
|
||||||
phi_a0 = COMUSIC_2D_PUZZLE_SOLVED_FANFARE;
|
comusic_id = COMUSIC_2D_PUZZLE_SOLVED_FANFARE;
|
||||||
phi_a1 = 0x7FFF;
|
music_volume = 0x7FFF;
|
||||||
}
|
}
|
||||||
func_8025A6EC(phi_a0, phi_a1);
|
func_8025A6EC(comusic_id, music_volume);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80389A1C(void) {
|
void TTC_Treasurehunt_spawnRedXForNextStep(void) {
|
||||||
Actor *actor;
|
Actor *actor;
|
||||||
ActorLocal_TreasureHunt *local;
|
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;
|
local = (ActorLocal_TreasureHunt *)&actor->local;
|
||||||
actor->yaw = D_8038C868[D_8037DCB4];
|
actor->yaw = TTC_TREASUREHUNT_STEP_RED_X_YAWS[TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP];
|
||||||
local->unk0 = D_8037DCB4;
|
local->unk0 = TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP;
|
||||||
actor->lifetime_value = 0.0f;
|
actor->lifetime_value = 0.0f;
|
||||||
actor->state = 0;
|
actor->state = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80389A9C(void) {
|
void TTC_Treasurehunt_spawnActorForNextStep(void) {
|
||||||
Actor *actor;
|
Actor *actor;
|
||||||
ActorLocal_TreasureHunt *local;
|
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;
|
local = (ActorLocal_TreasureHunt *)&actor->local;
|
||||||
actor->yaw = D_8038C880[D_8037DCB4 - 1];
|
actor->yaw = TTC_TREASUREHUNT_STEP_YAWS[TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP - 1];
|
||||||
local->unk0 = D_8037DCB4;
|
local->unk0 = TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP;
|
||||||
actor->lifetime_value = 0.0f;
|
actor->lifetime_value = 0.0f;
|
||||||
actor->state = 0;
|
actor->state = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80389B38(s32 arg0){
|
void TTC_Treasurehunt_checkStepProgress(s32 currentStep){
|
||||||
if(D_8037DCB4 == arg0 && TTC_func_803899C0()){
|
if(TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP == currentStep && TTC_Treasurehunt_isActiveHitboxBeakBusterHitbox()){
|
||||||
if(arg0 == 0 && !jiggyscore_isCollected(JIGGY_11_TTC_RED_X)){
|
if(currentStep == 0 && !jiggyscore_isCollected(JIGGY_11_TTC_RED_X)){
|
||||||
gcdialog_showText(0xA18, 4, NULL, NULL, NULL, NULL);
|
gcdialog_showText(ASSET_A18_TEXT_TREASUREHUNT_FOLLOW_CLUES, 4, NULL, NULL, NULL, NULL);
|
||||||
}
|
}
|
||||||
else if(arg0 == 4){
|
else if(currentStep == 4){
|
||||||
gcdialog_showText(0xA19, 4, NULL, NULL, NULL, NULL);
|
gcdialog_showText(ASSET_A19_TEXT_TREASUREHUNT_SECOND_STEP, 4, NULL, NULL, NULL, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
D_8037DCB4++;
|
TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP++;
|
||||||
__spawnQueue_add_0(func_80389A9C);
|
__spawnQueue_add_0(TTC_Treasurehunt_spawnActorForNextStep);
|
||||||
__spawnQueue_add_0(func_80389A1C);
|
__spawnQueue_add_0(TTC_Treasurehunt_spawnRedXForNextStep);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void TTC_func_80389BFC(ActorMarker *this, ActorMarker *arg1){\
|
void TTC_Treasurehunt_checkStepProgress0(ActorMarker *this, ActorMarker *arg1){\
|
||||||
func_80389B38(0);
|
TTC_Treasurehunt_checkStepProgress(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80389C24(ActorMarker *this, ActorMarker *arg1){\
|
void TTC_Treasurehunt_checkStepProgress1(ActorMarker *this, ActorMarker *arg1){\
|
||||||
func_80389B38(1);
|
TTC_Treasurehunt_checkStepProgress(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80389C4C(ActorMarker *this, ActorMarker *arg1){\
|
void TTC_Treasurehunt_checkStepProgress2(ActorMarker *this, ActorMarker *arg1){\
|
||||||
func_80389B38(2);
|
TTC_Treasurehunt_checkStepProgress(2);
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80389C74(ActorMarker *this, ActorMarker *arg1){\
|
void TTC_Treasurehunt_checkStepProgress3(ActorMarker *this, ActorMarker *arg1){\
|
||||||
func_80389B38(3);
|
TTC_Treasurehunt_checkStepProgress(3);
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80389C9C(ActorMarker *this, ActorMarker *arg1){\
|
void TTC_Treasurehunt_checkStepProgress4(ActorMarker *this, ActorMarker *arg1){\
|
||||||
func_80389B38(4);
|
TTC_Treasurehunt_checkStepProgress(4);
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80389CC4(s16 arg0[3], s32 arg1){
|
void TTC_Treasurehunt_checkStepProgress5(s16 arg0[3], s32 arg1){
|
||||||
static ParticleEmitter *D_8038D700;
|
static ParticleEmitter *particleEmitter;
|
||||||
static f32 D_8038D708[3];
|
static f32 particleTargetPosition[3];
|
||||||
|
|
||||||
if(D_8037DCB4 == 5 && TTC_func_803899C0()){
|
if(TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP == 5 && TTC_Treasurehunt_isActiveHitboxBeakBusterHitbox()){
|
||||||
D_8038D708[0] = (f32)arg0[0];
|
particleTargetPosition[0] = (f32)arg0[0];
|
||||||
D_8038D708[1] = (f32)arg0[1];
|
particleTargetPosition[1] = (f32)arg0[1];
|
||||||
D_8038D708[2] = (f32)arg0[2];
|
particleTargetPosition[2] = (f32)arg0[2];
|
||||||
D_8038D708[1] = mapModel_getFloorY(D_8038D708);
|
particleTargetPosition[1] = mapModel_getFloorY(particleTargetPosition);
|
||||||
__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]));
|
__spawnQueue_add_4((GenFunction_4)spawnQueue_actor_f32, 0xF4, reinterpret_cast(s32, particleTargetPosition[0]), reinterpret_cast(s32, particleTargetPosition[1]), reinterpret_cast(s32, particleTargetPosition[2]));
|
||||||
D_8038D700 = partEmitMgr_newEmitter(3);
|
particleEmitter = partEmitMgr_newEmitter(3);
|
||||||
particleEmitter_setRGB(D_8038D700, D_8038C91C);
|
particleEmitter_setRGB(particleEmitter, TTC_TREASUREHUNT_PARTICLE_RGB);
|
||||||
particleEmitter_setSprite(D_8038D700, ASSET_700_SPRITE_DUST);
|
particleEmitter_setSprite(particleEmitter, ASSET_700_SPRITE_DUST);
|
||||||
particleEmitter_setStartingFrameRange(D_8038D700, 0, 7);
|
particleEmitter_setStartingFrameRange(particleEmitter, 0, 7);
|
||||||
particleEmitter_setPosition(D_8038D700, D_8038D708);
|
particleEmitter_setPosition(particleEmitter, particleTargetPosition);
|
||||||
particleEmitter_setPositionAndVelocityRanges(D_8038D700, &D_8038C950);
|
particleEmitter_setPositionAndVelocityRanges(particleEmitter, &TTC_TREASUREHUNT_VELOCITY_RANGES);
|
||||||
particleEmitter_setScaleAndLifetimeRanges(D_8038D700, &D_8038C928);
|
particleEmitter_setScaleAndLifetimeRanges(particleEmitter, &TTC_TREASUREHUNT_PARTICLE_SCALE_AND_LIFETIME_RANGES);
|
||||||
particleEmitter_emitN(D_8038D700, 5);
|
particleEmitter_emitN(particleEmitter, 5);
|
||||||
D_8038D708[2] += 300.0f;
|
particleTargetPosition[2] += 300.0f;
|
||||||
gcpausemenu_80314AC8(0);
|
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);
|
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);
|
||||||
D_8037DCB4++;
|
TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP++;
|
||||||
}//L80389E70
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void ttc_resetTresureHunt(void){
|
void TTC_Treasurehunt_resetProgress(void){
|
||||||
D_8037DCB4 = 0;
|
TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void TTC_func_80389E90(Actor *this){
|
void TTC_Treasurehunt_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;
|
||||||
@@ -191,28 +191,28 @@ void TTC_func_80389E90(Actor *this){
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch(this->state){
|
switch(this->state){
|
||||||
case 0://L80389F20
|
case 0:
|
||||||
this->lifetime_value = MIN(255.0, this->lifetime_value + tick*150.0);
|
this->lifetime_value = MIN(255.0, this->lifetime_value + tick*150.0);
|
||||||
if(255.0 == this->lifetime_value){
|
if(255.0 == this->lifetime_value){
|
||||||
this->state = 1;
|
this->state = 1;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 1://L80389F94
|
case 1:
|
||||||
if(local->unk0 < D_8037DCB4){
|
if(local->unk0 < TTC_TREASUREHUNT_PUZZLE_CURRENT_STEP){
|
||||||
this->state = 2;
|
this->state = 2;
|
||||||
}
|
}
|
||||||
break;
|
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));
|
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)
|
if(0.0 == this->lifetime_value)
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
break;
|
break;
|
||||||
}//L8038A094
|
}
|
||||||
actor_setOpacity(this, (s32)this->lifetime_value);
|
actor_setOpacity(this, (s32)this->lifetime_value);
|
||||||
this->depth_mode = 2;
|
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 sp4C[3];
|
||||||
f32 sp40[3];
|
f32 sp40[3];
|
||||||
f32 sp3C;
|
f32 sp3C;
|
||||||
@@ -221,19 +221,19 @@ Actor *func_8038A0D0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
|||||||
|
|
||||||
actor = marker_getActorAndRotation(marker, sp4C);
|
actor = marker_getActorAndRotation(marker, sp4C);
|
||||||
switch(marker->modelId){
|
switch(marker->modelId){
|
||||||
case ASSET_3E9_MODEL_RED_ARROW://L8038A12C
|
case ASSET_3E9_MODEL_RED_ARROW:
|
||||||
sp3C = 1.0f;
|
sp3C = 1.0f;
|
||||||
sp38 = 8.0f;
|
sp38 = 8.0f;
|
||||||
break;
|
break;
|
||||||
case ASSET_3EB_MODEL_RED_QUESTION_MARK: //L8038A14C
|
case ASSET_3EB_MODEL_RED_QUESTION_MARK:
|
||||||
sp3C = 1.0f;
|
sp3C = 1.0f;
|
||||||
sp38 = 8.0f;
|
sp38 = 8.0f;
|
||||||
break;
|
break;
|
||||||
case ASSET_3EA_MODEL_RED_X://L8038A164
|
case ASSET_3EA_MODEL_RED_X:
|
||||||
sp3C = (((ActorLocal_TreasureHunt *)&actor->local)->unk0 == 5)? 0.8f : 0.4f;
|
sp3C = (((ActorLocal_TreasureHunt *)&actor->local)->unk0 == 5) ? 0.8f : 0.4f;
|
||||||
sp38 = 4.0f;
|
sp38 = 4.0f;
|
||||||
break;
|
break;
|
||||||
}//L8038A1A0
|
}
|
||||||
sp40[0] = actor->position[0];
|
sp40[0] = actor->position[0];
|
||||||
sp40[1] = actor->position[1] + sp38;
|
sp40[1] = actor->position[1] + sp38;
|
||||||
sp40[2] = actor->position[2];
|
sp40[2] = actor->position[2];
|
||||||
|
@@ -20,9 +20,9 @@ extern ActorInfo D_8038C718;
|
|||||||
extern ActorInfo TTC_LOCKUP_ACTOR_SLOW;
|
extern ActorInfo TTC_LOCKUP_ACTOR_SLOW;
|
||||||
extern ActorInfo TTC_LOCKUP_ACTOR_MEDIUM;
|
extern ActorInfo TTC_LOCKUP_ACTOR_MEDIUM;
|
||||||
extern ActorInfo TTC_LOCKUP_ACTOR_FAST;
|
extern ActorInfo TTC_LOCKUP_ACTOR_FAST;
|
||||||
extern ActorInfo D_8038C8B0;
|
extern ActorInfo TTC_TREASUREHUNT_ACTOR_RED_ARROW;
|
||||||
extern ActorInfo D_8038C8D4;
|
extern ActorInfo TTC_TREASUREHUNT_ACTOR_RED_QUESTION_MARK;
|
||||||
extern ActorInfo D_8038C8F8;
|
extern ActorInfo TTC_TREASUREHUNT_ACTOR_RED_X;
|
||||||
extern ActorInfo gChTreasureInfo;
|
extern ActorInfo gChTreasureInfo;
|
||||||
|
|
||||||
void TTC_func_80388C78(Actor *this);
|
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_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_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_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(&TTC_TREASUREHUNT_ACTOR_RED_ARROW, actor_new, ACTOR_FLAG_UNKNOWN_10);
|
||||||
spawnableActorList_add(&D_8038C8D4, actor_new, ACTOR_FLAG_UNKNOWN_10);
|
spawnableActorList_add(&TTC_TREASUREHUNT_ACTOR_RED_QUESTION_MARK, actor_new, ACTOR_FLAG_UNKNOWN_10);
|
||||||
spawnableActorList_add(&D_8038C8F8, 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(&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);
|
||||||
|
@@ -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 D_8037DCB4;
|
u32 TTC_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];
|
||||||
|
@@ -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_resetTresureHunt();
|
TTC_Treasurehunt_resetProgress();
|
||||||
break;
|
break;
|
||||||
case MAP_1B_MMM_MAD_MONSTER_MANSION:
|
case MAP_1B_MMM_MAD_MONSTER_MANSION:
|
||||||
mmm_resetFlowerPots();
|
mmm_resetFlowerPots();
|
||||||
|
@@ -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_func_80389BFC(s32, s32);
|
extern void TTC_Treasurehunt_checkStepProgress0(s32, s32);
|
||||||
extern void func_80389C24(s32, s32);
|
extern void TTC_Treasurehunt_checkStepProgress1(s32, s32);
|
||||||
extern void func_80389C4C(s32, s32);
|
extern void TTC_Treasurehunt_checkStepProgress2(s32, s32);
|
||||||
extern void func_80389C74(s32, s32);
|
extern void TTC_Treasurehunt_checkStepProgress3(s32, s32);
|
||||||
extern void func_80389C9C(s32, s32);
|
extern void TTC_Treasurehunt_checkStepProgress4(s32, s32);
|
||||||
extern void func_80389CC4(s32, s32);
|
extern void TTC_Treasurehunt_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_func_80389BFC, func_80389C24, func_80389C4C,
|
func_8033443C, TTC_Treasurehunt_checkStepProgress0, TTC_Treasurehunt_checkStepProgress1, TTC_Treasurehunt_checkStepProgress2,
|
||||||
func_80389C74, func_80389C9C, func_80389CC4, chMumbo_detransformWarn,
|
TTC_Treasurehunt_checkStepProgress3, TTC_Treasurehunt_checkStepProgress4, TTC_Treasurehunt_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,
|
||||||
|
Reference in New Issue
Block a user