Merge branch 'master' of https://gitlab.com/banjo.decomp/banjo-kazooie into document/sandcastle
This commit is contained in:
@@ -14,7 +14,7 @@ void func_802D729C(Actor *actor, f32 arg1);
|
||||
ActorInfo chBadShad = {
|
||||
0x9B, 0x108, 0x3BF,
|
||||
0x1, NULL,
|
||||
chBadShad_update, func_80326224, chBadShad_draw,
|
||||
chBadShad_update, actor_update_func_80326224, chBadShad_draw,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
|
@@ -40,7 +40,7 @@ ActorAnimationInfo sChBatAnimations[] = {
|
||||
ActorInfo gChBat = {
|
||||
MARKER_127_BAT, ACTOR_163_BAT, ASSET_3CA_MODEL_BAT,
|
||||
CH_BAT_STATE_ROOSTING, sChBatAnimations,
|
||||
chbat_update, func_80326224, actor_draw,
|
||||
chbat_update, actor_update_func_80326224, actor_draw,
|
||||
2500, 0, 0.9f, 0
|
||||
};
|
||||
|
||||
|
@@ -19,7 +19,7 @@ ActorAnimationInfo chBeehiveAnimations[] ={
|
||||
|
||||
ActorInfo chBeehive = {MARKER_50_BEEHIVE, ACTOR_12_BEEHIVE, ASSET_364_MODEL_BEEHIVE,
|
||||
1, chBeehiveAnimations,
|
||||
chBeehive_update, func_80326224, actor_draw,
|
||||
chBeehive_update, actor_update_func_80326224, actor_draw,
|
||||
0, 0x333, 0.0f, 0
|
||||
};
|
||||
|
||||
|
@@ -28,13 +28,13 @@ ActorAnimationInfo D_80366010[] ={
|
||||
|
||||
ActorInfo D_80366090 = {0x3, ACTOR_4_BIGBUTT, ASSET_353_MODEL_BIGBUTT,
|
||||
1, D_80366010,
|
||||
func_802C6240, func_80326224, func_802C6E84,
|
||||
func_802C6240, actor_update_func_80326224, func_802C6E84,
|
||||
3200, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
ActorInfo D_803660B4 = {0x9, ACTOR_E_BULL_INTRO, ASSET_354_MODEL_BULL_INTRO,
|
||||
1, D_80366010,
|
||||
func_802C6240, func_80326224, func_802C6E84,
|
||||
func_802C6240, actor_update_func_80326224, func_802C6E84,
|
||||
3200, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
|
@@ -94,7 +94,7 @@ f32 D_803682C4[3] = {0.0f, 0.0f, 0.0f};
|
||||
ActorInfo chBottlesBonusDescription = {
|
||||
0x179, 0x1E0, 0x46C,
|
||||
0x1, chBottlesBonusAnimations,
|
||||
chBottlesBonus_update, func_80326224, chBottlesBonus_draw,
|
||||
chBottlesBonus_update, actor_update_func_80326224, chBottlesBonus_draw,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
|
@@ -57,7 +57,7 @@ f32 D_8036840C[3] = {-11.28f, 3.92f, -52.96f};
|
||||
ActorInfo D_80368418 = {
|
||||
0x17A, 0x2B4, 0x565,
|
||||
0x1, D_803683B0,
|
||||
chBottlesBonusCursor_update, func_80326224, func_80325340,
|
||||
chBottlesBonusCursor_update, actor_update_func_80326224, func_80325340,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
|
@@ -12,7 +12,7 @@ extern void func_802F32C4(s32, f32[3], f32, ActorMarker *, s32(*)(f32[3], f32, A
|
||||
/* .data */
|
||||
ActorInfo chBubble = {
|
||||
MARKER_6B_GLOOPBUBBLE, ACTOR_E7_GLOOP_BUBBLE, ASSET_704_SPRITE_BUBBLE,
|
||||
0, NULL, chBubble_update, func_80326224, func_80325340,
|
||||
0, NULL, chBubble_update, actor_update_func_80326224, func_80325340,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
|
@@ -5,7 +5,7 @@
|
||||
|
||||
void func_802D77D4(Actor *this);
|
||||
extern void player_setClimbParams(f32[3], f32[3], f32, u32);
|
||||
extern f32 func_80258640(f32[3], f32[3]);
|
||||
extern f32 ml_vec3f_horizontal_distance_zero_likely(f32[3], f32[3]);
|
||||
|
||||
typedef struct {
|
||||
f32 unk0[3];
|
||||
@@ -16,7 +16,7 @@ typedef struct {
|
||||
ActorInfo D_80367B20 = {
|
||||
0x35, 0x26, 0x0,
|
||||
0x1, NULL,
|
||||
func_802D77D4, func_80326224, func_80325340,
|
||||
func_802D77D4, actor_update_func_80326224, func_80325340,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
@@ -40,8 +40,8 @@ s32 func_802D76E0(Actor *this, f32 *arg1) {
|
||||
return FALSE;
|
||||
}
|
||||
if (sp28 && temp_v0) {
|
||||
sp30 = func_80258640(this->position, sp40);
|
||||
if (func_80258640(this->position, sp34) < sp30) {
|
||||
sp30 = ml_vec3f_horizontal_distance_zero_likely(this->position, sp40);
|
||||
if (ml_vec3f_horizontal_distance_zero_likely(this->position, sp34) < sp30) {
|
||||
sp28 = 0;
|
||||
}
|
||||
}
|
||||
|
@@ -90,10 +90,10 @@ void func_80357264(Actor *this, s32 next_state){
|
||||
}
|
||||
|
||||
if(next_state == 5){
|
||||
if(!levelSpecificFlags_get(0x14)
|
||||
if(!levelSpecificFlags_get(LEVEL_FLAG_14_TTC_UNKNOWN)
|
||||
&& !( actorArray_findClosestActorFromActorId(this->position, 0x318, -1, &sp38) && ( sp38 < 250.0f))
|
||||
){
|
||||
levelSpecificFlags_set(0x14, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_14_TTC_UNKNOWN, TRUE);
|
||||
func_80324E38(0.0f, 3);
|
||||
__clucker_setDeathCutsceneCamera(this);
|
||||
timed_exitStaticCamera(2.0f);
|
||||
|
@@ -14,21 +14,21 @@ void chCollectible_update(Actor *this);
|
||||
extern ActorInfo D_80367D00 = {
|
||||
MARKER_60_BLUE_EGG_COLLECTIBLE, ACTOR_52_BLUE_EGG, ASSET_36D_SPRITE_BLUE_EGG,
|
||||
0, NULL,
|
||||
chCollectible_update, func_80326224, chCollectible_draw,
|
||||
chCollectible_update, actor_update_func_80326224, chCollectible_draw,
|
||||
0, 0, 0.7f, 0
|
||||
};
|
||||
|
||||
extern ActorInfo D_80367D24 = {
|
||||
MARKER_B5_RED_FEATHER_COLLECTIBLE, ACTOR_129_RED_FEATHER, ASSET_580_SPRITE_RED_FEATHER,
|
||||
0, NULL,
|
||||
chCollectible_update, func_80326224, chCollectible_draw,
|
||||
chCollectible_update, actor_update_func_80326224, chCollectible_draw,
|
||||
0, 0, 0.5f, 0
|
||||
};
|
||||
|
||||
extern ActorInfo D_80367D48 = {
|
||||
MARKER_1E5_GOLD_FEATHER_COLLECTIBLE, ACTOR_370_GOLD_FEATHER, ASSET_6D1_SPRITE_GOLDFEATHTER,
|
||||
0, NULL,
|
||||
chCollectible_update, func_80326224, chCollectible_draw,
|
||||
chCollectible_update, actor_update_func_80326224, chCollectible_draw,
|
||||
0, 0, 0.5f, 0
|
||||
};
|
||||
|
||||
|
@@ -94,8 +94,8 @@ void __chCrab_ow(ActorMarker *marker, ActorMarker *other) {
|
||||
void __chCrab_particleEmitterSetup(ParticleEmitter *p_ctrl, f32 position[3]) {
|
||||
particleEmitter_setPosition(p_ctrl, position);
|
||||
particleEmitter_setDrawMode(p_ctrl, 2);
|
||||
func_802EF9F8(p_ctrl, 0.7f);
|
||||
func_802EFA18(p_ctrl, 5);
|
||||
particleEmitter_func_802EF9F8(p_ctrl, 0.7f);
|
||||
particleEmitter_func_802EFA18(p_ctrl, 5);
|
||||
func_802EFA20(p_ctrl, 0.8f, 1.0f);
|
||||
particleEmitter_setSfx(p_ctrl, SFX_1F_HITTING_AN_ENEMY_3, 10000);
|
||||
particleEmitter_setSpawnIntervalRange(p_ctrl, 0.0f, 0.01f);
|
||||
@@ -106,7 +106,7 @@ void __chCrab_particleEmitterSetup(ParticleEmitter *p_ctrl, f32 position[3]) {
|
||||
|
||||
void __chCrab_emitClawPiece(ParticleEmitter *p_ctrl, f32 position[3], enum asset_e model_id) {
|
||||
__chCrab_particleEmitterSetup(p_ctrl, position);
|
||||
particleEmitter_setParticleAccelerationRange(p_ctrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setAccelerationRange(p_ctrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setModel(p_ctrl, model_id);
|
||||
particleEmitter_setStartingScaleRange(p_ctrl, 0.5f, 0.8f);
|
||||
particleEmitter_setAngularVelocityRange(p_ctrl, -800.0f, -800.0f, -800.0f, 800.0f, 800.0f, 800.0f);
|
||||
@@ -116,7 +116,7 @@ void __chCrab_emitClawPiece(ParticleEmitter *p_ctrl, f32 position[3], enum asset
|
||||
|
||||
void __chCrab_emitLegPiece(ParticleEmitter *p_ctrl, f32 position[3], enum asset_e model_id) {
|
||||
__chCrab_particleEmitterSetup(p_ctrl, position);
|
||||
particleEmitter_setParticleAccelerationRange(p_ctrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setAccelerationRange(p_ctrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setModel(p_ctrl, model_id);
|
||||
particleEmitter_setStartingScaleRange(p_ctrl, 0.5f, 0.8f);
|
||||
particleEmitter_setAngularVelocityRange(p_ctrl, -800.0f, -800.0f, -800.0f, 800.0f, 800.0f, 800.0f);
|
||||
@@ -126,7 +126,7 @@ void __chCrab_emitLegPiece(ParticleEmitter *p_ctrl, f32 position[3], enum asset_
|
||||
|
||||
void __chCrab_emitHeadPiece(ParticleEmitter *p_ctrl, f32 position[3], enum asset_e model_id) {
|
||||
__chCrab_particleEmitterSetup(p_ctrl, position);
|
||||
particleEmitter_setParticleAccelerationRange(p_ctrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setAccelerationRange(p_ctrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setModel(p_ctrl, model_id);
|
||||
particleEmitter_setStartingScaleRange(p_ctrl, 1.0f, 1.0f);
|
||||
particleEmitter_setAngularVelocityRange(p_ctrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
@@ -152,7 +152,7 @@ void __chCrab_mutantTextCallback(ActorMarker *caller, enum asset_e text_id, s32
|
||||
func_80324E38(3.0f, 0);
|
||||
return;
|
||||
}
|
||||
levelSpecificFlags_set(0xE, FALSE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_E_CC_UNKNOWN, FALSE);
|
||||
}
|
||||
|
||||
bool __chCrab_802CB76C(ActorMarker *marker, ActorMarker *other) {
|
||||
@@ -272,13 +272,13 @@ void chCrab_update(Actor *this) {
|
||||
if ((this->state != 6) && (this->state != 5)) {
|
||||
gcdialog_showText(ASSET_D32_DIALOG_MUTANT_CRAB_MEET, 0xF, this->position, NULL, __chCrab_mutantTextCallback, NULL);
|
||||
mapSpecificFlags_set(0, TRUE);
|
||||
levelSpecificFlags_set(0xE, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_E_CC_UNKNOWN, TRUE);
|
||||
this->has_met_before = TRUE;
|
||||
}
|
||||
}
|
||||
if (map_get() == MAP_A_TTC_SANDCASTLE) {
|
||||
if( !mapSpecificFlags_get(0)
|
||||
&& levelSpecificFlags_get(2)
|
||||
&& levelSpecificFlags_get(LEVEL_FLAG_2_TTC_UNKNOWN)
|
||||
&& !volatileFlag_get(VOLATILE_FLAG_2_FF_IN_MINIGAME)
|
||||
&& !jiggyscore_isCollected(JIGGY_10_TTC_SANDCASTLE)
|
||||
&& func_80329530(this, 1600)
|
||||
@@ -290,7 +290,7 @@ void chCrab_update(Actor *this) {
|
||||
mapSpecificFlags_set(1, FALSE);
|
||||
}
|
||||
}
|
||||
if (levelSpecificFlags_get(0xE)) {
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_E_CC_UNKNOWN)) {
|
||||
if ((this->state != 8) && (this->state != 9)) {
|
||||
subaddie_set_state_with_direction(this, (this->has_met_before) ? 8 : 9, 0.0f, 1);
|
||||
this->has_met_before = FALSE;
|
||||
@@ -306,7 +306,7 @@ void chCrab_update(Actor *this) {
|
||||
break;
|
||||
|
||||
case 9: //L802CBE6C
|
||||
if (!levelSpecificFlags_get(0xE)) {
|
||||
if (!levelSpecificFlags_get(LEVEL_FLAG_E_CC_UNKNOWN)) {
|
||||
subaddie_set_state_with_direction(this, 3, 0.0f, 1);
|
||||
}
|
||||
break;
|
||||
@@ -337,7 +337,7 @@ void chCrab_update(Actor *this) {
|
||||
if (func_80329480(this)) {
|
||||
subaddie_set_state(this, 9);
|
||||
this->actor_specific_1_f = 12.0f;
|
||||
} else if (!levelSpecificFlags_get(0xE)) {
|
||||
} else if (!levelSpecificFlags_get(LEVEL_FLAG_E_CC_UNKNOWN)) {
|
||||
subaddie_set_state_with_direction(this, 3, 0.0f, 1);
|
||||
}
|
||||
break;
|
||||
@@ -399,6 +399,6 @@ void chCrab_update(Actor *this) {
|
||||
}
|
||||
|
||||
/* .data */
|
||||
ActorInfo D_803670B8 = { MARKER_13_SNIPPET, ACTOR_67_SNIPPET, ASSET_358_SNIPPET, 0x1, chCrabAnimations, chCrab_update, func_80326224, actor_draw, 1900, 0, 0.8f, 0};
|
||||
ActorInfo D_803670DC = { MARKER_DD_BLACK_SNIPPET, ACTOR_F2_BLACK_SNIPPET, ASSET_566_MODEL_BLACK_SNIPPET, 0x1, chCrabAnimations, chCrab_update, func_80326224, actor_draw, 1900, 0, 0.8f, 0};
|
||||
ActorInfo D_80367100 = { MARKER_13_SNIPPET, ACTOR_F5_MUTIE_SNIPPET, ASSET_38F_MODEL_MUTIE_SNIPPET, 0x1, chCrabMutantAnimations, chCrab_update, func_80326224, actor_draw, 1900, 0, 0.8f, 0};
|
||||
ActorInfo D_803670B8 = { MARKER_13_SNIPPET, ACTOR_67_SNIPPET, ASSET_358_SNIPPET, 0x1, chCrabAnimations, chCrab_update, actor_update_func_80326224, actor_draw, 1900, 0, 0.8f, 0};
|
||||
ActorInfo D_803670DC = { MARKER_DD_BLACK_SNIPPET, ACTOR_F2_BLACK_SNIPPET, ASSET_566_MODEL_BLACK_SNIPPET, 0x1, chCrabAnimations, chCrab_update, actor_update_func_80326224, actor_draw, 1900, 0, 0.8f, 0};
|
||||
ActorInfo D_80367100 = { MARKER_13_SNIPPET, ACTOR_F5_MUTIE_SNIPPET, ASSET_38F_MODEL_MUTIE_SNIPPET, 0x1, chCrabMutantAnimations, chCrab_update, actor_update_func_80326224, actor_draw, 1900, 0, 0.8f, 0};
|
||||
|
@@ -19,7 +19,7 @@ void chdrips_update(Actor *this);
|
||||
ActorInfo gChDripsInfo = {
|
||||
0x246, ACTOR_354_DRIPS, 0,
|
||||
0, NULL,
|
||||
chdrips_update, func_80326224, func_80325340,
|
||||
chdrips_update, actor_update_func_80326224, func_80325340,
|
||||
5000, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
@@ -27,7 +27,7 @@ s32 D_80372AE4[3] = {0xff, 0xff, 0xfe};
|
||||
|
||||
struct_core2_D2AB0 D_80372AF0 = {0.0f, 0.0f, 1.0f, 1.4f};
|
||||
|
||||
struct43s D_80372B00 = {
|
||||
ParticleSettingsVelocityAccelerationPosition D_80372B00 = {
|
||||
{{0.0f, 0.0f, 0.0f}, {0.0f, 0.0f, 0.0f}},
|
||||
{{0.0f, -650.0f, 0.0f}, {0.0f, -650.0f, 0.0f}},
|
||||
{{-400.0f, 0.0f, -400.0f}, {400.0f, 0.0f, 400.0f}}
|
||||
@@ -78,8 +78,8 @@ void chdrips_update(Actor *this){
|
||||
pCtrl = partEmitMgr_newEmitter(1);
|
||||
particleEmitter_setModel(pCtrl, ASSET_8A0_SPRITE_WATER_DROP);
|
||||
particleEmitter_setPosition(pCtrl, this->position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_80372B00);
|
||||
func_802EFA18(pCtrl, 1);
|
||||
particleEmitter_setVelocityAccelerationAndPositionRanges(pCtrl, &D_80372B00);
|
||||
particleEmitter_func_802EFA18(pCtrl, 1);
|
||||
particleEmitter_setParticleCallback(pCtrl, __chdrips_particleCallback);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 7.0f, 7.0f);
|
||||
|
@@ -10,7 +10,7 @@ void chfirefx_update(Actor *this);
|
||||
ActorInfo gChFireFxInfo = {
|
||||
MARKER_256_FIRE_FX, ACTOR_383_FIRE_FX, ASSET_526_SPRITE_FIRE,
|
||||
0, NULL,
|
||||
chfirefx_update, func_80326224, actor_draw,
|
||||
chfirefx_update, actor_update_func_80326224, actor_draw,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
@@ -23,7 +23,7 @@ void __chfirefx_spawnSmoke(f32 position[3], f32 scale){
|
||||
particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
|
||||
particleEmitter_setAlpha(pCtrl, 0x23);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl, 0.0f, 110.0f*scale, 0.0f, 0.0f, 110.0f*scale, 0.0f);
|
||||
particleEmitter_setSpawnPositionRange(pCtrl, 0.0f, 110.0f*scale, 0.0f, 0.0f, 110.0f*scale, 0.0f);
|
||||
particleEmitter_setParticleVelocityRange(pCtrl, 0.0f, 40.0f*scale, 0.0f, 0.0f, 90.0f*scale, 0.0f);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 2.6*scale, 3.2*scale);
|
||||
particleEmitter_setFinalScaleRange(pCtrl, 5.0*scale, 6.0*scale);
|
||||
@@ -41,9 +41,9 @@ void __chfirefx_spawnSpark(f32 position[3], f32 scale){
|
||||
particleEmitter_setSprite(pCtrl, ASSET_713_SPRITE_SPARKLE_YELLOW);
|
||||
particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl, 0.0f, 20.0f*scale, 0.0f, 0.0f, 20.0f*scale, 0.0f);
|
||||
particleEmitter_setSpawnPositionRange(pCtrl, 0.0f, 20.0f*scale, 0.0f, 0.0f, 20.0f*scale, 0.0f);
|
||||
particleEmitter_setParticleVelocityRange(pCtrl, -30.0f*scale, 120.0f*scale, -30.0f*scale, 60.0f*scale, 360.0f*scale, 60.0f*scale);
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -50.0f, 0.0f, 0.0f, -90.0f, 0.0f);
|
||||
particleEmitter_setAccelerationRange(pCtrl, 0.0f, -50.0f, 0.0f, 0.0f, -90.0f, 0.0f);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 0.1*scale, 0.2*scale);
|
||||
particleEmitter_setFinalScaleRange(pCtrl, 0.2*scale, 0.4*scale);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
|
@@ -37,7 +37,7 @@ ParticleScaleAndLifetimeRanges D_80372CA4 = {
|
||||
0.1f, 0.5f
|
||||
};
|
||||
|
||||
struct43s D_80372CCC = {
|
||||
ParticleSettingsVelocityAccelerationPosition D_80372CCC = {
|
||||
{{-5.0f, 10.0f, -5.0f}, {5.0f, 50.0f, 5.0f}},
|
||||
{{0.0f, 200.0f, 0.0f}, {0.0f, 1000.0f, 0.0f}},
|
||||
{{-20.0f, -20.0f, -20.0f}, {20.0f, 20.0f, 20.0f}}
|
||||
@@ -182,7 +182,7 @@ void func_8035C080(Actor *this, s32 next_state){
|
||||
particleEmitter_setSprite(local->pCtrl_8, ASSET_70E_SPRITE_SMOKE_2);
|
||||
particleEmitter_setStartingFrameRange(local->pCtrl_8, 0, 7);
|
||||
particleEmitter_setPosition(local->pCtrl_8, this->position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(local->pCtrl_8, &D_80372CCC);
|
||||
particleEmitter_setVelocityAccelerationAndPositionRanges(local->pCtrl_8, &D_80372CCC);
|
||||
particleEmitter_setScaleAndLifetimeRanges(local->pCtrl_8, &D_80372CA4);
|
||||
particleEmitter_setSpawnInterval(local->pCtrl_8, 4);
|
||||
}//L8035C698
|
||||
|
@@ -26,7 +26,7 @@ extern void warp_smExitBanjosHouse(s32, s32);
|
||||
extern void func_80335110(s32);
|
||||
|
||||
extern void func_8024E60C(s32, s32[3]);
|
||||
extern void func_8024E71C(s32, f32*);
|
||||
extern void controller_getJoystick(s32, f32*);
|
||||
|
||||
extern char *gcpausemenu_TimeToA(int);
|
||||
extern struct5Bs *func_803097A0(void);
|
||||
@@ -55,7 +55,7 @@ ActorAnimationInfo D_80365E28[] = {
|
||||
{0x24F, 0.6f},
|
||||
{0x24D, 2.0f}
|
||||
};
|
||||
ActorInfo D_80365E58 = { 0xE4, 0x195, 0x532, 0x1, D_80365E28, func_802C5740, func_80326224, func_802C4464, 0, 0, 0.0f, 0};
|
||||
ActorInfo D_80365E58 = { 0xE4, 0x195, 0x532, 0x1, D_80365E28, func_802C5740, actor_update_func_80326224, func_802C4464, 0, 0, 0.0f, 0};
|
||||
|
||||
ActorAnimationInfo D_80365E7C[] = {
|
||||
{0x000, 0.0f},
|
||||
@@ -65,7 +65,7 @@ ActorAnimationInfo D_80365E7C[] = {
|
||||
{0x252, 0.67f},
|
||||
{0x250, 4.5f},
|
||||
};
|
||||
ActorInfo D_80365EAC = { 0xE5, 0x196, 0x532, 0x1, D_80365E7C, func_802C4C14, func_80326224, func_802C4360, 0, 0, 0.0f, 0};
|
||||
ActorInfo D_80365EAC = { 0xE5, 0x196, 0x532, 0x1, D_80365E7C, func_802C4C14, actor_update_func_80326224, func_802C4360, 0, 0, 0.0f, 0};
|
||||
|
||||
ActorAnimationInfo D_80365ED0[] = {
|
||||
{0x000, 0.0f},
|
||||
@@ -75,7 +75,7 @@ ActorAnimationInfo D_80365ED0[] = {
|
||||
{0x24C, 1.0f},
|
||||
{0x24A, 1.0f}
|
||||
};
|
||||
ActorInfo D_80365F00 = { 0xE6, 0x197, 0x532, 0x1, D_80365ED0, func_802C4C14, func_80326224, func_802C4360, 0, 0, 0.0f, 0};
|
||||
ActorInfo D_80365F00 = { 0xE6, 0x197, 0x532, 0x1, D_80365ED0, func_802C4C14, actor_update_func_80326224, func_802C4360, 0, 0, 0.0f, 0};
|
||||
|
||||
|
||||
/* .bss */
|
||||
@@ -178,8 +178,8 @@ void *func_802C44EC(f32 arg0[3], f32 arg1[3], f32 arg2) {
|
||||
|
||||
void func_802C4768(s32 gamenum){
|
||||
u8 * sp20[2];
|
||||
static u8 D_8037DD48[0x20];
|
||||
static u8 D_8037DD68[0x20];
|
||||
static u8 upperTextLine[0x20];
|
||||
static u8 lowerTextLine[0x20];
|
||||
|
||||
func_8031FBF8();
|
||||
D_80365E00 = gamenum;
|
||||
@@ -188,59 +188,59 @@ void func_802C4768(s32 gamenum){
|
||||
gameFile_load(gamenum);
|
||||
D_8037DCCE[gamenum] = (itemscore_timeScores_get(LEVEL_6_LAIR)) ? 1 : 0;
|
||||
|
||||
strcpy(D_8037DD48, "");
|
||||
strcat(D_8037DD48, "GAME ");
|
||||
strcpy(upperTextLine, "");
|
||||
strcat(upperTextLine, "GAME ");
|
||||
switch(gamenum){
|
||||
case 0: //L802C4820
|
||||
strIToA(D_8037DD48, 1);
|
||||
strIToA(upperTextLine, 1);
|
||||
break;
|
||||
case 1: //L802C4838
|
||||
strIToA(D_8037DD48, 3);
|
||||
strIToA(upperTextLine, 3);
|
||||
break;
|
||||
case 2: //L802C484C
|
||||
strIToA(D_8037DD48, 2);
|
||||
strIToA(upperTextLine, 2);
|
||||
break;
|
||||
}//L802C4858
|
||||
strcat(D_8037DD48, ": TIME ");
|
||||
strcat(D_8037DD48, gcpausemenu_TimeToA(itemscore_timeScores_getTotal()));
|
||||
strcat(D_8037DD48, ",");
|
||||
strcat(D_8037DD48, "");
|
||||
strcat(upperTextLine, ": TIME ");
|
||||
strcat(upperTextLine, gcpausemenu_TimeToA(itemscore_timeScores_getTotal()));
|
||||
strcat(upperTextLine, ",");
|
||||
strcat(upperTextLine, "");
|
||||
|
||||
strcpy(D_8037DD68, "");
|
||||
strIToA(D_8037DD68, jiggyscore_total());
|
||||
strcat(D_8037DD68, " JIGSAW");
|
||||
strcpy(lowerTextLine, "");
|
||||
strIToA(lowerTextLine, jiggyscore_total());
|
||||
strcat(lowerTextLine, " JIGSAW");
|
||||
if(jiggyscore_total() != 1){
|
||||
strcat(D_8037DD68, "S");
|
||||
strcat(lowerTextLine, "S");
|
||||
}
|
||||
strcat(D_8037DD68, ", ");
|
||||
strIToA(D_8037DD68, itemscore_noteScores_getTotal());
|
||||
strcat(D_8037DD68, " NOTE");
|
||||
strcat(lowerTextLine, ", ");
|
||||
strIToA(lowerTextLine, itemscore_noteScores_getTotal());
|
||||
strcat(lowerTextLine, " NOTE");
|
||||
if(itemscore_noteScores_getTotal() != 1){
|
||||
strcat(D_8037DD68, "S");
|
||||
strcat(lowerTextLine, "S");
|
||||
}
|
||||
strcat(D_8037DD68, ".");
|
||||
strcat(D_8037DD68, "");
|
||||
strcat(lowerTextLine, ".");
|
||||
strcat(lowerTextLine, "");
|
||||
}//L802C49AC
|
||||
else{
|
||||
D_8037DCCE[gamenum] = 0;
|
||||
strcpy(D_8037DD48, "");
|
||||
strcat(D_8037DD48, "GAME ");
|
||||
strcpy(upperTextLine, "");
|
||||
strcat(upperTextLine, "GAME ");
|
||||
switch (gamenum){
|
||||
case 0:
|
||||
strIToA(D_8037DD48, 1);
|
||||
strIToA(upperTextLine, 1);
|
||||
break;
|
||||
case 1:
|
||||
strIToA(D_8037DD48, 3);
|
||||
strIToA(upperTextLine, 3);
|
||||
break;
|
||||
case 2:
|
||||
strIToA(D_8037DD48, 2);
|
||||
strIToA(upperTextLine, 2);
|
||||
break;
|
||||
}//L802C4A40
|
||||
strcat(D_8037DD48, ": EMPTY");
|
||||
strcpy(D_8037DD68, "");
|
||||
strcat(upperTextLine, ": EMPTY");
|
||||
strcpy(lowerTextLine, "");
|
||||
}//L802C4A68
|
||||
sp20[0] = D_8037DD48;\
|
||||
sp20[1] = D_8037DD68;
|
||||
sp20[0] = upperTextLine;\
|
||||
sp20[1] = lowerTextLine;
|
||||
func_8031877C(chGameSelectBottomZoombox);
|
||||
gczoombox_setStrings(chGameSelectBottomZoombox, 2, sp20);
|
||||
gczoombox_maximize(chGameSelectBottomZoombox);
|
||||
@@ -334,7 +334,7 @@ void func_802C4C14(Actor *this){
|
||||
else{//L802C4D24
|
||||
func_8024E60C(0, sp74);
|
||||
func_8024E55C(0, sp5C);
|
||||
func_8024E71C(0, &sp54);
|
||||
controller_getJoystick(0, &sp54);
|
||||
switch(this->state){
|
||||
case 2:
|
||||
case 5:
|
||||
|
@@ -26,7 +26,7 @@ ActorAnimationInfo D_80372BE0[] ={
|
||||
ActorInfo D_80372C18 = { //TEEHEE
|
||||
MARKER_99_TEEHEE, ACTOR_CA_TEEHEE, ASSET_3CB_MODEL_TEEHEE,
|
||||
0x1, D_80372BE0,
|
||||
func_8035B900, func_80326224, actor_draw,
|
||||
func_8035B900, actor_update_func_80326224, actor_draw,
|
||||
6500, 0, 0.9f, 0
|
||||
};
|
||||
|
||||
@@ -48,11 +48,11 @@ void func_8035AFE0(f32 scale, f32 pos[3], s32 cnt, enum asset_e sprite_id, s32 a
|
||||
particleEmitter_setSprite(pCtrl, sprite_id);
|
||||
particleEmitter_setRGB(pCtrl, arg4);
|
||||
particleEmitter_setPosition(pCtrl, pos);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl,
|
||||
particleEmitter_setSpawnPositionRange(pCtrl,
|
||||
-100.0f*scale, 20.0f*scale, -100.0f*scale,
|
||||
100.0f*scale, 200.0f*scale, 100.0f*scale
|
||||
);
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl,
|
||||
particleEmitter_setAccelerationRange(pCtrl,
|
||||
0.0f, -10.0f*scale, 0.0f,
|
||||
0.0f, -10.0f*scale, 0.0f
|
||||
);
|
||||
|
@@ -50,7 +50,7 @@ void chgloop_update(Actor *this){
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
}
|
||||
|
||||
func_80326224(this);
|
||||
actor_update_func_80326224(this);
|
||||
|
||||
switch(this->state){
|
||||
case 2://L802D14DC
|
||||
|
@@ -28,14 +28,14 @@ ActorAnimationInfo D_80372F80[] = {
|
||||
ActorInfo D_80372FC0 = {
|
||||
MARKER_96_GRAVESTONE, ACTOR_C7_GRAVESTONE, ASSET_3C9_MODEL_GRAVESTONE,
|
||||
0x1, D_80372F80,
|
||||
func_8035F138, func_80326224, func_8035ECA0,
|
||||
func_8035F138, actor_update_func_80326224, func_8035ECA0,
|
||||
3500, 0, 1.2f, 0
|
||||
};
|
||||
|
||||
ActorInfo D_80372FE4 = {
|
||||
MARKER_297_GIANT_GRAVESTONE, ACTOR_3C2_GIANT_GRAVESTONE, ASSET_3C9_MODEL_GRAVESTONE,
|
||||
0x1, D_80372F80,
|
||||
func_8035F138, func_80326224, func_8035ECA0,
|
||||
func_8035F138, actor_update_func_80326224, func_8035ECA0,
|
||||
14000, 0, 3.2f, 0
|
||||
};
|
||||
|
||||
@@ -71,7 +71,7 @@ bool func_8035ED60(Actor *this) {
|
||||
void func_8035EDB0(f32 position[3], s32 count, enum asset_e sprite) {
|
||||
static s32 D_80373014[3] = {0xAA, 0xAA, 0xAA};
|
||||
static ParticleScaleAndLifetimeRanges D_80373020 = {{0.4f, 0.8f}, {1.4f, 2.0f}, {0.0f, 0.01f}, {1.2f, 1.8f}, 0.0f, 0.01};
|
||||
static struct43s D_80373048 = {
|
||||
static ParticleSettingsVelocityAccelerationPosition D_80373048 = {
|
||||
{{-200.0f, -200.0f, -200.0f}, { 200.0f, 200.0f, 200.0f}},
|
||||
{{ 0.0f, -10.0f, 0.0f}, { 0.0f, -10.0f, 0.0f}},
|
||||
{{ -50.0f, 0.0f, -50.0f}, { 50.0f, 200.0f, 50.0f}}
|
||||
@@ -82,7 +82,7 @@ void func_8035EDB0(f32 position[3], s32 count, enum asset_e sprite) {
|
||||
particleEmitter_setRGB(p_ctrl, D_80373014);
|
||||
particleEmitter_setSprite(p_ctrl, sprite);
|
||||
particleEmitter_setPosition(p_ctrl, position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(p_ctrl, &D_80373048);
|
||||
particleEmitter_setVelocityAccelerationAndPositionRanges(p_ctrl, &D_80373048);
|
||||
particleEmitter_setScaleAndLifetimeRanges(p_ctrl, &D_80373020);
|
||||
particleEmitter_setDrawMode(p_ctrl, PART_EMIT_NO_DEPTH);
|
||||
particleEmitter_emitN(p_ctrl, count);
|
||||
|
@@ -24,14 +24,14 @@ ActorAnimationInfo D_80372B50[] = {
|
||||
ActorInfo D_80372B80 = {
|
||||
MARKER_250_ICECUBE_A, ACTOR_37D_ICECUBE_A, ASSET_504_MODEL_ICECUBE,
|
||||
1, D_80372B50,
|
||||
chicecube_update, func_80326224, chicecube_draw,
|
||||
chicecube_update, actor_update_func_80326224, chicecube_draw,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
ActorInfo D_80372BA4 = {
|
||||
MARKER_25F_ICECUBE_B, ACTOR_3A0_ICECUBE_B, ASSET_504_MODEL_ICECUBE,
|
||||
1, D_80372B50,
|
||||
chicecube_update, func_80326224, chicecube_draw,
|
||||
chicecube_update, actor_update_func_80326224, chicecube_draw,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
@@ -110,8 +110,8 @@ void func_8035A04C(f32 position[3], s32 cnt, enum asset_e model_id, f32 scale){
|
||||
|
||||
particleEmitter_setModel(pCtrl, model_id);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl, -100.0f*scale, 0.0f, -100.0f*scale, 100.0f*scale, 200.0f*scale, 100.0f*scale);
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -1000.0f, 0.0f, 0.0f, -1000.0f, 0.0f);
|
||||
particleEmitter_setSpawnPositionRange(pCtrl, -100.0f*scale, 0.0f, -100.0f*scale, 100.0f*scale, 200.0f*scale, 100.0f*scale);
|
||||
particleEmitter_setAccelerationRange(pCtrl, 0.0f, -1000.0f, 0.0f, 0.0f, -1000.0f, 0.0f);
|
||||
particleEmitter_setParticleVelocityRange(pCtrl, -400.0f*scale, 450.0f*scale, -400.0f*scale, 400.0f*scale, 600.0f*scale, 400.0f*scale);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, 100.0f*scale, 100.0f*scale, 100.0f*scale, 250.0f*scale, 250.0f*scale, 250.0f*scale);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, scale*0.2, scale*0.4);
|
||||
@@ -127,8 +127,8 @@ void func_8035A228(f32 position[3], s32 cnt, enum asset_e sprite_id, f32 scale){
|
||||
particleEmitter_setRGB(pCtrl, D_80372BC8);
|
||||
particleEmitter_setSprite(pCtrl, sprite_id);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl, -50.0f*scale, 0.0f, -50.0f*scale, 50.0f*scale, 200.0f*scale, 50.0f*scale);
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -10.0f, 0.0f, 0.0f, -10.0f, 0.0f);
|
||||
particleEmitter_setSpawnPositionRange(pCtrl, -50.0f*scale, 0.0f, -50.0f*scale, 50.0f*scale, 200.0f*scale, 50.0f*scale);
|
||||
particleEmitter_setAccelerationRange(pCtrl, 0.0f, -10.0f, 0.0f, 0.0f, -10.0f, 0.0f);
|
||||
particleEmitter_setParticleVelocityRange(pCtrl, -280.0f*scale, 0.0f, -280.0f*scale, 280.0f*scale, 280.0f*scale, 280.0f*scale);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, scale*0.6, scale*0.8);
|
||||
particleEmitter_setFinalScaleRange(pCtrl, scale*1.0, scale*1.4);
|
||||
@@ -144,7 +144,7 @@ void func_8035A3F8(f32 position[3], s32 cnt, enum asset_e sprite_id, f32 scale){
|
||||
particleEmitter_setRGB(pCtrl, D_80372BD4);
|
||||
particleEmitter_setSprite(pCtrl, sprite_id);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -10.0f, 0.0f, 0.0f, -10.0f, 0.0f);
|
||||
particleEmitter_setAccelerationRange(pCtrl, 0.0f, -10.0f, 0.0f, 0.0f, -10.0f, 0.0f);
|
||||
particleEmitter_setParticleVelocityRange(pCtrl, -60.0f*scale, 0.0f, -60.0f*scale, 60.0f*scale, 60.0f*scale, 60.0f*scale);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, scale*0.4, scale*0.6);
|
||||
particleEmitter_setFinalScaleRange(pCtrl, scale*0.8, scale*1.2);
|
||||
@@ -202,7 +202,7 @@ void __chicecube_spawnHalfCubes(ActorMarker *marker){
|
||||
sp54[1] += 100.0f;
|
||||
for(i = 0; i < 2; i++){//L8035A7FC
|
||||
bundle_setYaw((i & 1)? actor->yaw : actor->yaw + 180.0f);
|
||||
other = bundle_spawn_f32(0x21, sp54);
|
||||
other = bundle_spawn_f32(BUNDLE_21__ICECUBE_B, sp54);
|
||||
other->unkF4_8 = 1; //don't spawn more
|
||||
other->scale = randf2(0.5f, 0.6f)*actor->scale;
|
||||
actor->yaw = randi2(0, 359);
|
||||
|
@@ -181,10 +181,12 @@ void chjiggy_update(Actor *this){
|
||||
func_802C7B8C(this, 0xd, 0xc, 0x1e, 9, 0xb, VOLATILE_FLAG_AF_BGS_MAZE_JIGGY_MISSED);
|
||||
break;
|
||||
case JIGGY_2F_FP_XMAS_TREE://L802C8048
|
||||
if(levelSpecificFlags_get(0x29))
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_29_FP_UNKNOWN)) {
|
||||
actor_collisionOn(this);
|
||||
else
|
||||
}
|
||||
else {
|
||||
actor_collisionOff(this);
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@@ -20,7 +20,7 @@ ActorAnimationInfo chJigsawDanceAnimations[] = {
|
||||
|
||||
ActorInfo chJigsawDance = {MARKER_68_JIGSAW_DANCE, ACTOR_5A_JIGSAW_DANCE, ASSET_35E_MODEL_JIGSAW_DANCE,
|
||||
1, chJigsawDanceAnimations,
|
||||
__chJigsawDance_update, func_80326224, __chJigsawDance_draw,
|
||||
__chJigsawDance_update, actor_update_func_80326224, __chJigsawDance_draw,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
|
@@ -23,11 +23,11 @@ ActorAnimationInfo chJinjoAnimations[] = {
|
||||
{ASSET_31_ANIM_JINJO_JUMP, 0.75f}
|
||||
};
|
||||
|
||||
ActorInfo chJinjoBlue = { MARKER_5A_JINJO_BLUE, ACTOR_60_JINJO_BLUE, ASSET_3C0_MODEL_JINJO_BLUE, 0x1, chJinjoAnimations, chJinjo_update, func_80326224, actor_draw, 0, 0, 0.0f, 0};
|
||||
ActorInfo chJinjoGreen = { MARKER_5B_JINJO_GREEN, ACTOR_62_JINJO_GREEN, ASSET_3C2_MODEL_JINJO_GREEN, 0x1, chJinjoAnimations, chJinjo_update, func_80326224, actor_draw, 0, 0, 0.0f, 0};
|
||||
ActorInfo chJinjoYellow = { MARKER_5E_JINJO_YELLOW, ACTOR_5E_JINJO_YELLOW, ASSET_3BB_MODEL_JINJO_YELLOW, 0x1, chJinjoAnimations, chJinjo_update, func_80326224, actor_draw, 0, 0, 0.0f, 0};
|
||||
ActorInfo chJinjoPink = { MARKER_5D_JINJO_PINK, ACTOR_61_JINJO_PINK, ASSET_3C1_MODEL_JINJO_PINK, 0x1, chJinjoAnimations, chJinjo_update, func_80326224, actor_draw, 0, 0, 0.0f, 0};
|
||||
ActorInfo chJinjoOrange = { MARKER_5C_JINJO_ORANGE, ACTOR_5F_JINJO_ORANGE, ASSET_3BC_MODEL_JINJO_ORANGE, 0x1, chJinjoAnimations, chJinjo_update, func_80326224, actor_draw, 0, 0, 0.0f, 0};
|
||||
ActorInfo chJinjoBlue = { MARKER_5A_JINJO_BLUE, ACTOR_60_JINJO_BLUE, ASSET_3C0_MODEL_JINJO_BLUE, 0x1, chJinjoAnimations, chJinjo_update, actor_update_func_80326224, actor_draw, 0, 0, 0.0f, 0};
|
||||
ActorInfo chJinjoGreen = { MARKER_5B_JINJO_GREEN, ACTOR_62_JINJO_GREEN, ASSET_3C2_MODEL_JINJO_GREEN, 0x1, chJinjoAnimations, chJinjo_update, actor_update_func_80326224, actor_draw, 0, 0, 0.0f, 0};
|
||||
ActorInfo chJinjoYellow = { MARKER_5E_JINJO_YELLOW, ACTOR_5E_JINJO_YELLOW, ASSET_3BB_MODEL_JINJO_YELLOW, 0x1, chJinjoAnimations, chJinjo_update, actor_update_func_80326224, actor_draw, 0, 0, 0.0f, 0};
|
||||
ActorInfo chJinjoPink = { MARKER_5D_JINJO_PINK, ACTOR_61_JINJO_PINK, ASSET_3C1_MODEL_JINJO_PINK, 0x1, chJinjoAnimations, chJinjo_update, actor_update_func_80326224, actor_draw, 0, 0, 0.0f, 0};
|
||||
ActorInfo chJinjoOrange = { MARKER_5C_JINJO_ORANGE, ACTOR_5F_JINJO_ORANGE, ASSET_3BC_MODEL_JINJO_ORANGE, 0x1, chJinjoAnimations, chJinjo_update, actor_update_func_80326224, actor_draw, 0, 0, 0.0f, 0};
|
||||
|
||||
enum asset_e __chJinjo_getMeetDialogId(enum marker_e marker_id){
|
||||
switch(marker_id){
|
||||
|
@@ -26,7 +26,7 @@ ActorAnimationInfo moleAnimations[]= {
|
||||
ActorInfo gChMole = {
|
||||
0x1DF, ACTOR_37A_BOTTLES, ASSET_387_MODEL_BOTTLES,
|
||||
1, moleAnimations,
|
||||
chmole_update, func_80326224, func_802D94B4,
|
||||
chmole_update, actor_update_func_80326224, func_802D94B4,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
@@ -185,18 +185,18 @@ void chmole_additionalAbilityLearnActions(ActorMarker *marker, enum asset_e arg1
|
||||
switch(arg2){
|
||||
case 1: // Stilt Stride
|
||||
timed_setStaticCameraToNode(0.0f, 0x11);
|
||||
levelSpecificFlags_set(0x1A, 1);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_1A_UNKNOWN, TRUE);
|
||||
break;
|
||||
case 2:
|
||||
levelSpecificFlags_set(0x1A, 0);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_1A_UNKNOWN, FALSE);
|
||||
chmole_setStaticCamera(actor);
|
||||
break;
|
||||
case 3: // Turbo Talon Trainer
|
||||
timed_setStaticCameraToNode(0.0f, 0x29);
|
||||
levelSpecificFlags_set(0x1A, 1);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_1A_UNKNOWN, TRUE);
|
||||
break;
|
||||
case 4:
|
||||
levelSpecificFlags_set(0x1A, 0);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_1A_UNKNOWN, FALSE);
|
||||
chmole_setStaticCamera(actor);
|
||||
break;
|
||||
case 5: // Egg Firing
|
||||
|
@@ -24,7 +24,7 @@ ActorAnimationInfo D_80367E00[] = {
|
||||
ActorInfo D_80367E20= {
|
||||
0xB8, ACTOR_12C_MOLEHILL, ASSET_388_MODEL_MOLEHILL,
|
||||
0, D_80367E00,
|
||||
func_802DA740, func_80326224, func_802DA560,
|
||||
func_802DA740, actor_update_func_80326224, func_802DA560,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
@@ -54,14 +54,14 @@ Actor *func_802DA560(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
}
|
||||
|
||||
void func_802DA634(ParticleEmitter *pCtrl, f32 arg1[3], s32 cnt){
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -600.0f, 0.0f, 0.0f, -600.0f, 0.0f);
|
||||
particleEmitter_setAccelerationRange(pCtrl, 0.0f, -600.0f, 0.0f, 0.0f, -600.0f, 0.0f);
|
||||
particleEmitter_setModel(pCtrl, 0x344);
|
||||
particleEmitter_setPosition(pCtrl, arg1);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setParticleVelocityRange(pCtrl, -150.0f, 150.0f, -150.0f, 150.0f, 360.0f, 150.0f);
|
||||
particleEmitter_setScaleAndLifetimeRanges(pCtrl, &D_80367E44);
|
||||
func_802EF9F8(pCtrl, 0.01f);
|
||||
func_802EFA18(pCtrl, 3);
|
||||
particleEmitter_func_802EF9F8(pCtrl, 0.01f);
|
||||
particleEmitter_func_802EFA18(pCtrl, 3);
|
||||
particleEmitter_emitN(pCtrl, cnt);
|
||||
}
|
||||
|
||||
|
@@ -7,7 +7,7 @@ void func_802C9C30(Actor* this);
|
||||
/* .data */
|
||||
ActorInfo D_80366C50 = {
|
||||
MARKER_5F_MUSIC_NOTE, ACTOR_51_MUSIC_NOTE, ASSET_6D6_MODEL_MUSIC_NOTE, 0, NULL,
|
||||
func_802C9C30, func_80326224, func_80325934,
|
||||
func_802C9C30, actor_update_func_80326224, func_80325934,
|
||||
0, 0, 0.6f, 0
|
||||
};
|
||||
|
||||
|
@@ -9,7 +9,7 @@ f32 D_803680D0[3] = {0.0f, 0.0f, 0.0f};
|
||||
ActorInfo chOverlayCopyrightDescription = {
|
||||
MARKER_176_COPYRIGHT_OVERLAY, ACTOR_1DD_COPYRIGHT_OVERLAY, ASSET_54E_MODEL_COPYRIGHT_OVERLAY,
|
||||
0x1, NULL,
|
||||
chOverlayCopyright_update, func_80326224, func_802DC7E0,
|
||||
chOverlayCopyright_update, actor_update_func_80326224, func_802DC7E0,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
|
@@ -21,7 +21,7 @@ f32 D_80368168[3] = {0.0f, 0.0f, 0.0f};
|
||||
ActorInfo D_80368174 = {
|
||||
MARKER_178_NO_CONTROLLER_OVERLAY, ACTOR_1DF_NO_CONTROLLER_OVERLAY, ASSET_55D_MODEL_NO_CONTROLLER_OVERLAY,
|
||||
0x0, D_80368150,
|
||||
chOverlayNoController_update, func_80326224, chOverlayNoController_draw,
|
||||
chOverlayNoController_update, actor_update_func_80326224, chOverlayNoController_draw,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
|
@@ -27,7 +27,7 @@ f32 D_80368118[3] = {0.0f, 0.0f, 0.0f};
|
||||
ActorInfo D_80368124 = {
|
||||
MARKER_177_PRESS_START_OVERLAY, ACTOR_1DE_PRESS_START_OVERLAY, ASSET_55C_MODEL_PRESS_START_OVERLAY,
|
||||
0x0, D_80368100,
|
||||
chOverlayPressStart_update, func_80326224, chOverlayPressStart_draw,
|
||||
chOverlayPressStart_update, actor_update_func_80326224, chOverlayPressStart_draw,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
|
@@ -63,7 +63,7 @@ void chShrapnel_emitExplosion(Actor *this) {
|
||||
particleEmitter_setDrawMode(temp_v0, PART_EMIT_NO_LOOP);
|
||||
particleEmitter_setStartingFrameRange(temp_v0, 0, 0);
|
||||
particleEmitter_setParticleFramerateRange(temp_v0, 4.0f, 4.0f);
|
||||
particleEmitter_setParticleSpawnPositionRange(temp_v0, 0.0f, 200.0f, 0.0f, 0.0f, 200.0f, 0.0f);
|
||||
particleEmitter_setSpawnPositionRange(temp_v0, 0.0f, 200.0f, 0.0f, 0.0f, 200.0f, 0.0f);
|
||||
particleEmitter_setPosition(temp_v0, this->position);
|
||||
particleEmitter_setStartingScaleRange(temp_v0, 3.0f, 3.0f);
|
||||
particleEmitter_setFinalScaleRange(temp_v0, 8.0f, 8.0f);
|
||||
@@ -83,7 +83,7 @@ void chShrapnel_emitSmoke(Actor *this) {
|
||||
particleEmitter_setPosition(temp_v0, this->position);
|
||||
particleEmitter_setStartingScaleRange(temp_v0, 1.0f, 1.5f);
|
||||
particleEmitter_setFinalScaleRange(temp_v0, 2.0f, 3.0f);
|
||||
particleEmitter_setParticleSpawnPositionRange(temp_v0, -75.0f, 25.0f, -75.0f, 75.0f, 75.0f, 75.0f);
|
||||
particleEmitter_setSpawnPositionRange(temp_v0, -75.0f, 25.0f, -75.0f, 75.0f, 75.0f, 75.0f);
|
||||
particleEmitter_setParticleVelocityRange(temp_v0, -70.0f, 50.0f, -70.0f, 70.0f, 100.0f, 70.0f);
|
||||
particleEmitter_setRGB(temp_v0, D_803673F8);
|
||||
particleEmitter_setParticleLifeTimeRange(temp_v0, 3.0f, 4.0f);
|
||||
@@ -94,9 +94,9 @@ void chShrapnel_emitBodyParts(Actor *this, enum asset_e model_id, s32 n) {
|
||||
ParticleEmitter *temp_v0;
|
||||
|
||||
temp_v0 = partEmitMgr_newEmitter(n);
|
||||
particleEmitter_setParticleAccelerationRange(temp_v0, 0.0f, -800.0f, 0.0f, 0.0f, -800.0f, 0.0f);
|
||||
func_802EF9F8(temp_v0, 0.6f);
|
||||
func_802EFA18(temp_v0, 1);
|
||||
particleEmitter_setAccelerationRange(temp_v0, 0.0f, -800.0f, 0.0f, 0.0f, -800.0f, 0.0f);
|
||||
particleEmitter_func_802EF9F8(temp_v0, 0.6f);
|
||||
particleEmitter_func_802EFA18(temp_v0, 1);
|
||||
particleEmitter_setModel(temp_v0, model_id);
|
||||
particleEmitter_setPosition(temp_v0, this->position);
|
||||
particleEmitter_setStartingScaleRange(temp_v0, 0.05f, 2.0f);
|
||||
@@ -194,6 +194,6 @@ void chshrapnel_update(Actor *this) {
|
||||
ActorInfo chShrapnelDescription = {
|
||||
MARKER_65_SHRAPNEL, ACTOR_56_SHRAPNEL, ASSET_3EC_MODEL_SHRAPNEL,
|
||||
0x1, chShrapnelAnimations,
|
||||
chshrapnel_update, func_80326224, actor_draw,
|
||||
chshrapnel_update, actor_update_func_80326224, actor_draw,
|
||||
2500, 0x333, 0.0f, 0
|
||||
};
|
||||
|
@@ -52,7 +52,7 @@ ActorAnimationInfo sChSnackerAnimations[] ={
|
||||
ActorInfo gChSnacker = {
|
||||
MARKER_14_SNACKER, ACTOR_68_SNACKER, ASSET_3B0_SNACKER,
|
||||
0x1, sChSnackerAnimations,
|
||||
chsnacker_update, func_80326224, actor_draw,
|
||||
chsnacker_update, actor_update_func_80326224, actor_draw,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
|
@@ -19,7 +19,7 @@ void chSnowball_update(Actor *this);
|
||||
ActorInfo chSnowball = {
|
||||
MARKER_B2_SNOWBALL, ACTOR_125_SNOWBALL, ASSET_378_MODEL_SNOWBALL,
|
||||
0x1, NULL,
|
||||
chSnowball_update, func_80326224, chSnowball_draw,
|
||||
chSnowball_update, actor_update_func_80326224, chSnowball_draw,
|
||||
0, 0x800, 0.8f, 0
|
||||
};
|
||||
|
||||
@@ -40,7 +40,7 @@ Actor *chSnowball_draw(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) {
|
||||
|
||||
void __chSnowball_spawnPieces(f32 position[3]) {
|
||||
static ParticleScaleAndLifetimeRanges D_80368734 = {{0.65f, 1.1}, {0.0f, 0.0f}, {0.0f, 0.01f}, {0.8f, 0.8f}, 0.0f, 0.5f};
|
||||
static struct43s D_8036875C = {
|
||||
static ParticleSettingsVelocityAccelerationPosition D_8036875C = {
|
||||
{{-220.0f, 210.0f, -220.0f}, {280.0f, 460.0f, 280.0f}},
|
||||
{{ 0.0f, -800.0f, 0.0f}, { 0.0f, -800.0f, 0.0f}},
|
||||
{{ -20.0f, -20.0f, -20.0f}, { 20.0f, 20.0f, 20.0f}}
|
||||
@@ -51,7 +51,7 @@ void __chSnowball_spawnPieces(f32 position[3]) {
|
||||
pCtrl = partEmitMgr_newEmitter(8);
|
||||
particleEmitter_setModel(pCtrl, ASSET_37A_MODEL_TINY_SNOWBALL);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_8036875C);
|
||||
particleEmitter_setVelocityAccelerationAndPositionRanges(pCtrl, &D_8036875C);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, -300.0f, -300.0f, -300.0f, 300.0f, 300.0f, 300.0f);
|
||||
particleEmitter_setScaleAndLifetimeRanges(pCtrl, &D_80368734);
|
||||
particleEmitter_emitN(pCtrl, 8);
|
||||
|
@@ -38,7 +38,7 @@ enum chsnowman_state_e{
|
||||
ActorInfo chSnowman = {
|
||||
MARKER_B1_SIR_SLUSH, ACTOR_124_SIR_SLUSH, ASSET_377_MODEL_SIR_SLUSH,
|
||||
CHSNOWMAN_STATE_1_IDLE, chSnowmanAnimations,
|
||||
chSnowman_update, func_80326224, chSnowman_draw,
|
||||
chSnowman_update, actor_update_func_80326224, chSnowman_draw,
|
||||
0, 0x199, 0.0f, 0
|
||||
};
|
||||
|
||||
@@ -111,7 +111,7 @@ void __chSnowman_spawnSnowballParticles(f32 position[3], s32 count){
|
||||
{4.0f, 4.0f},
|
||||
0.0f, 0.3f
|
||||
};
|
||||
static struct43s D_803686BC = {
|
||||
static ParticleSettingsVelocityAccelerationPosition D_803686BC = {
|
||||
{{-250.0f, 600.0f, -250.0f}, {350.0f, 960.0f, 350.0f}},
|
||||
{{0.0f, -1200.0f, 0.0f}, {0.0f, -1200.0f, 0.0f}},
|
||||
{{-80.0f, 0.0f, -80.0f}, {80.0f, 200.0f, 80.0f}}
|
||||
@@ -121,10 +121,10 @@ void __chSnowman_spawnSnowballParticles(f32 position[3], s32 count){
|
||||
|
||||
particleEmitter_setModel(particleSpawner, ASSET_378_MODEL_SNOWBALL);
|
||||
particleEmitter_setPosition(particleSpawner, position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(particleSpawner, &D_803686BC);
|
||||
particleEmitter_setVelocityAccelerationAndPositionRanges(particleSpawner, &D_803686BC);
|
||||
particleEmitter_setAngularVelocityRange(particleSpawner, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
func_802EF9F8(particleSpawner, 0.01f);
|
||||
func_802EFA18(particleSpawner, 3);
|
||||
particleEmitter_func_802EF9F8(particleSpawner, 0.01f);
|
||||
particleEmitter_func_802EFA18(particleSpawner, 3);
|
||||
func_802EFA20(particleSpawner, 1.0f, 1.3f);
|
||||
particleEmitter_setSfx(particleSpawner, SFX_2F_ORANGE_SPLAT, 16000);
|
||||
particleEmitter_setScaleAndLifetimeRanges(particleSpawner, &D_80368694);
|
||||
@@ -257,7 +257,7 @@ void chSnowman_update(Actor *this){
|
||||
else if(
|
||||
map_get() != MAP_27_FP_FREEZEEZY_PEAK
|
||||
|| func_8038DD34(local->unk0) == 0
|
||||
|| fileProgressFlag_get(0x13)
|
||||
|| fileProgressFlag_get(FILEPROG_13_COMPLETED_TWINKLIES_MINIGAME)
|
||||
){//L802E2318
|
||||
if(0.0 < local->unk4){
|
||||
if( (globalTimer_getTime() & 1)
|
||||
|
@@ -8,7 +8,7 @@ void chSnowmanHat_update(Actor *this);
|
||||
ActorInfo chSnowmanHat = {
|
||||
MARKER_B3_SIR_SLUSH_HAT, ACTOR_126_SIR_SLUSH_HAT, ASSET_379_MODEL_SIRSLUSH_HAT,
|
||||
0x1, NULL,
|
||||
chSnowmanHat_update, func_80326224, actor_draw,
|
||||
chSnowmanHat_update, actor_update_func_80326224, actor_draw,
|
||||
4500, 0, 1.0f, 0
|
||||
};
|
||||
|
||||
|
@@ -73,8 +73,8 @@ void __chTermite_updateWalkSFX(Actor *this) {
|
||||
void __chTermite_setupParticleEmitter(ParticleEmitter *pCtrl, f32 position[3]){
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setDrawMode(pCtrl, 2);
|
||||
func_802EF9F8(pCtrl, 0.7f);
|
||||
func_802EFA18(pCtrl, 5);
|
||||
particleEmitter_func_802EF9F8(pCtrl, 0.7f);
|
||||
particleEmitter_func_802EFA18(pCtrl, 5);
|
||||
func_802EFA20(pCtrl, 0.8f, 1.0f);
|
||||
particleEmitter_setSfx(pCtrl, SFX_1F_HITTING_AN_ENEMY_3, 10000);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
@@ -84,7 +84,7 @@ void __chTermite_setupParticleEmitter(ParticleEmitter *pCtrl, f32 position[3]){
|
||||
|
||||
void __chTermite_emitLegs(ParticleEmitter *pCtrl, f32 position[3]){
|
||||
__chTermite_setupParticleEmitter(pCtrl, position);
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setAccelerationRange(pCtrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setModel(pCtrl, ASSET_393_MODEL_TERMITE_LEG);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 0.5f, 0.8f);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, -800.0f, -800.0f, -800.0f, 800.0f, 800.0f, 800.0f);
|
||||
@@ -94,7 +94,7 @@ void __chTermite_emitLegs(ParticleEmitter *pCtrl, f32 position[3]){
|
||||
|
||||
void __chTermite_emitHead(ParticleEmitter *pCtrl, f32 position[3]){
|
||||
__chTermite_setupParticleEmitter(pCtrl, position);
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setAccelerationRange(pCtrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setModel(pCtrl, ASSET_394_MODEL_TERMITE_HEAD);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 1.0f, 1.0f);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
@@ -104,7 +104,7 @@ void __chTermite_emitHead(ParticleEmitter *pCtrl, f32 position[3]){
|
||||
|
||||
void __chTermite_emitBody(ParticleEmitter *pCtrl, f32 position[3]){
|
||||
__chTermite_setupParticleEmitter(pCtrl, position);
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setAccelerationRange(pCtrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setModel(pCtrl, ASSET_395_MODEL_TERMITE_BODY);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 1.0f, 1.0f);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
@@ -114,7 +114,7 @@ void __chTermite_emitBody(ParticleEmitter *pCtrl, f32 position[3]){
|
||||
|
||||
void __chTermite_emitEyes(ParticleEmitter *pCtrl, f32 position[3]){
|
||||
__chTermite_setupParticleEmitter(pCtrl, position);
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -1400.0f, 0.0f, 0.0f, -1400.0f, 0.0f);
|
||||
particleEmitter_setAccelerationRange(pCtrl, 0.0f, -1400.0f, 0.0f, 0.0f, -1400.0f, 0.0f);
|
||||
particleEmitter_setModel(pCtrl, ASSET_396_MODEL_TERMITE_EYES);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 1.0f, 1.0f);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, -300.0f, -300.0f, -300.0f, 300.0f, 300.0f, 300.0f);
|
||||
@@ -142,12 +142,13 @@ void __chTermite_die(ActorMarker *marker, ActorMarker *other_marker){
|
||||
FUNC_8030E624(SFX_D1_SNORKEL_WAH, 1.4f, 32750);
|
||||
marker_despawn(marker);
|
||||
}
|
||||
void __chTermite_testCallback(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||
|
||||
void __chTermite_testCallback(ActorMarker *caller, enum asset_e text_id, s32 arg2) {
|
||||
Actor *this;
|
||||
|
||||
this = marker_getActor(caller);
|
||||
this->has_met_before = FALSE;
|
||||
levelSpecificFlags_set(0xd, FALSE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_D_MM_UNKNOWN, FALSE);
|
||||
}
|
||||
|
||||
void chTermite_update(Actor *this) {
|
||||
@@ -172,7 +173,7 @@ void chTermite_update(Actor *this) {
|
||||
) {
|
||||
gcdialog_showText(ASSET_B43_DIALOG_TERMITE_MEET_AS_BEAR, 7, this->position, this->marker, __chTermite_testCallback, NULL);
|
||||
mapSpecificFlags_set(0, TRUE);
|
||||
levelSpecificFlags_set(0xD, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_D_MM_UNKNOWN, TRUE);
|
||||
this->has_met_before = TRUE;
|
||||
}
|
||||
|
||||
@@ -181,13 +182,14 @@ void chTermite_update(Actor *this) {
|
||||
&& func_8028ECAC() == 0
|
||||
&& player_getTransformation() == TRANSFORM_2_TERMITE
|
||||
) {
|
||||
if (!levelSpecificFlags_get(0xB)) {
|
||||
if (!levelSpecificFlags_get(LEVEL_FLAG_B_MM_UNKNOWN)) {
|
||||
if (gcdialog_showText(ASSET_B41_DIALOG_TERMITE_COOL_SHORTS, 0, NULL, NULL, NULL, NULL)) {
|
||||
levelSpecificFlags_set(0xB, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_B_MM_UNKNOWN, TRUE);
|
||||
this->unk138_23 = TRUE;
|
||||
}
|
||||
} else if (!levelSpecificFlags_get(0xC) && !this->unk138_23 && (gcdialog_showText(ASSET_B42_DIALOG_TERMITE_COOL_BACKPACK, 0, NULL, NULL, NULL, NULL))) {
|
||||
levelSpecificFlags_set(0xC, TRUE);
|
||||
}
|
||||
else if (!levelSpecificFlags_get(LEVEL_FLAG_C_MM_UNKNOWN) && !this->unk138_23 && (gcdialog_showText(ASSET_B42_DIALOG_TERMITE_COOL_BACKPACK, 0, NULL, NULL, NULL, NULL))) {
|
||||
levelSpecificFlags_set(LEVEL_FLAG_C_MM_UNKNOWN, TRUE);
|
||||
}
|
||||
}
|
||||
switch (this->state) {
|
||||
@@ -242,6 +244,6 @@ void chTermite_update(Actor *this) {
|
||||
ActorInfo chTermite = {
|
||||
MARKER_4_TERMITE, ACTOR_5_TERMITE, ASSET_350_MODEL_TERMITE,
|
||||
0x1, chTermiteAnimations,
|
||||
chTermite_update, func_80326224, actor_draw,
|
||||
chTermite_update, actor_update_func_80326224, actor_draw,
|
||||
2000, 0, 0.0f, 0
|
||||
};
|
||||
|
@@ -19,7 +19,7 @@ ActorAnimationInfo chTrainersAnimations[] = {
|
||||
ActorInfo chTrainers = {
|
||||
MARKER_38_TURBO_TALON_TRAINERS, ACTOR_2C_TURBO_TALON_TRAINERS, ASSET_367_MODEL_TURBO_TALON_TRAINERS,
|
||||
0x0, chTrainersAnimations,
|
||||
chtrainers_update, func_80326224, chtrainers_draw,
|
||||
chtrainers_update, actor_update_func_80326224, chtrainers_draw,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
@@ -56,8 +56,9 @@ void _chtrainers_802CA378(Actor *this, bool arg1){
|
||||
}
|
||||
|
||||
void chtrainers_update(Actor *this){
|
||||
s32 sp2C = levelSpecificFlags_get(0x1a);
|
||||
if(sp2C && this->unkF4_8 != 1){
|
||||
s32 sp2C = levelSpecificFlags_get(LEVEL_FLAG_1A_UNKNOWN);
|
||||
|
||||
if (sp2C && this->unkF4_8 != 1) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@@ -19,7 +19,7 @@ ActorAnimationInfo D_80367A00[] = {
|
||||
ActorInfo D_80367A20 = {
|
||||
MARKER_11_WADING_BOOTS, ACTOR_65_WADING_BOOTS, ASSET_366_MODEL_WADING_BOOTS,
|
||||
0x0, D_80367A00,
|
||||
chwadingboots_update, func_80326224, chwadingboots_draw,
|
||||
chwadingboots_update, actor_update_func_80326224, chwadingboots_draw,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
@@ -33,8 +33,9 @@ Actor *chwadingboots_draw(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
}
|
||||
|
||||
void chwadingboots_update(Actor *this){
|
||||
s32 sp2C = levelSpecificFlags_get(0x1a);
|
||||
if(sp2C && this->unkF4_8 != 1){
|
||||
s32 sp2C = levelSpecificFlags_get(LEVEL_FLAG_1A_UNKNOWN);
|
||||
|
||||
if (sp2C && this->unkF4_8 != 1) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@@ -18,16 +18,16 @@ s32 D_80373124[3] = {0xA0, 0x6B, 0x23};
|
||||
void __chwhipcrack_spawnPieces(Actor *this, enum asset_e model_id, s32 cnt){
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
|
||||
|
||||
particleEmitter_setParticleAccelerationRange(pCtrl,
|
||||
particleEmitter_setAccelerationRange(pCtrl,
|
||||
0.0f, -1000.0f, 0.0f,
|
||||
0.0f, -1000.0f, 0.0f
|
||||
);
|
||||
func_802EF9F8(pCtrl, 0.7f);
|
||||
func_802EFA18(pCtrl, 3);
|
||||
particleEmitter_func_802EF9F8(pCtrl, 0.7f);
|
||||
particleEmitter_func_802EFA18(pCtrl, 3);
|
||||
func_802EFA20(pCtrl, 0.5f, 1.0f);
|
||||
particleEmitter_setSfx(pCtrl, SFX_1F_HITTING_AN_ENEMY_3, 10000);
|
||||
particleEmitter_setModel(pCtrl, model_id);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl,
|
||||
particleEmitter_setSpawnPositionRange(pCtrl,
|
||||
-120.0f, 50.0f, -120.0f,
|
||||
120.0f, 300.0f, 120.0f
|
||||
);
|
||||
@@ -54,7 +54,7 @@ void __chwhipcrack_spawnSmoke(Actor *this, s32 cnt){
|
||||
particleEmitter_setPosition(pCtrl, this->position);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 3.0f, 3.5f);
|
||||
particleEmitter_setFinalScaleRange(pCtrl, 4.5f, 5.5f);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl,
|
||||
particleEmitter_setSpawnPositionRange(pCtrl,
|
||||
-50.0f, 50.0f, -50.0f,
|
||||
50.0f, 200.0f, 50.0f
|
||||
);
|
||||
|
Reference in New Issue
Block a user