Renaming functions
This commit is contained in:
@@ -20,5 +20,5 @@ void func_8038FCB0(Actor *this){
|
||||
return;
|
||||
this->marker->propPtr->unk8_3 = 1;
|
||||
actor_collisionOff(this);
|
||||
this->initialized = 1;
|
||||
this->initialized = TRUE;
|
||||
}
|
||||
|
@@ -142,8 +142,8 @@ void BGS_func_803888E4(Actor *this, s32 arg1){
|
||||
if(this->state == 2){
|
||||
skeletalAnim_set(this->unk148, ASSET_12B_ANIM_TIPTUP_IDLE, 1.0f, 9.0f);
|
||||
unqPtr->unkC = randf2(5.0f, 15.0f);
|
||||
if(!this->unk138_24){
|
||||
this->unk138_24 = 1;
|
||||
if(!this->is_first_encounter){
|
||||
this->is_first_encounter = TRUE;
|
||||
if(unqPtr->unkA == 0){
|
||||
func_80311480(0xc72, 0xe, this->position, this->marker, func_80388784, 0);
|
||||
}else{
|
||||
|
@@ -48,7 +48,7 @@ void func_80387D18(ActorMarker * arg0, u32 arg1){
|
||||
nextActPtr = spawn_child_actor(0x6A, &this);
|
||||
nextActPtr->state = 2;
|
||||
nextActPtr->unkF4_8 = 0x8C;
|
||||
nextActPtr->unk60 = 3.0f;
|
||||
nextActPtr->lifetime_value = 3.0f;
|
||||
nextActPtr->unk38_31 = arg1;
|
||||
if(arg0);
|
||||
}
|
||||
@@ -134,7 +134,7 @@ void func_80387FD4(Actor *this){
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
}//L80388144
|
||||
func_803289EC(this, 0.0f, 1);
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
return;
|
||||
}//L80388160
|
||||
|
||||
@@ -170,11 +170,11 @@ void func_80387FD4(Actor *this){
|
||||
|
||||
switch(this->state){
|
||||
case 1:// L80388370
|
||||
this->unk60 += time_getDelta();
|
||||
if(0.7 <= this->unk60){
|
||||
this->lifetime_value += time_getDelta();
|
||||
if(0.7 <= this->lifetime_value){
|
||||
subaddie_set_state_with_direction(this, 2, 0.0f, 1);
|
||||
func_80387C90(this);
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
func_80324D54(0.1f, SFX_D0_GRIMLET_SQUEAK, 1.0f, 0x7530, this->position, 0.0f, 1800.0f);
|
||||
}
|
||||
break;
|
||||
@@ -186,11 +186,11 @@ void func_80387FD4(Actor *this){
|
||||
break;
|
||||
|
||||
case 3:// L80388434
|
||||
this->unk60 += time_getDelta();
|
||||
if( this->unk60 >= 0.13 + 0.7/4 * (5 - this->unkF4_8)){
|
||||
this->lifetime_value += time_getDelta();
|
||||
if( this->lifetime_value >= 0.13 + 0.7/4 * (5 - this->unkF4_8)){
|
||||
subaddie_set_state_with_direction(this, 4, 0.62f, 1);
|
||||
func_80387C90(this);
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
func_80324D54(0.3f, 0x406, 1.0f, 0x55f0, this->position, 0.0f, 1800.0f);
|
||||
}
|
||||
break;
|
||||
|
@@ -16,7 +16,7 @@ typedef struct{
|
||||
}ActorLocal_Flibbit;
|
||||
|
||||
|
||||
extern f32 func_80309724(f32 *);
|
||||
extern f32 mapModel_getFloorY(f32 *);
|
||||
extern void func_80256E24(f32 [3], f32, f32, f32, f32, f32);
|
||||
|
||||
void chflibbit_update(Actor *this);
|
||||
@@ -46,7 +46,7 @@ bool BGS_func_803863F0(Actor *this, f32 arg1[3], s32 arg2){
|
||||
local->unk8[1] = arg1[1];
|
||||
local->unk8[2] = arg1[2];
|
||||
|
||||
local->unk8[1] = func_80309724(arg1);
|
||||
local->unk8[1] = mapModel_getFloorY(arg1);
|
||||
skeletalAnim_set(this->unk148, 0xdb, 0.2f,(arg2) ? randf2(0.7f, 0.8f) : randf2(0.75f, 0.85f));
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_2_ONCE);
|
||||
func_80324D54(0.2f, 0x3f2, randf2(0.7f, 1.3f), randi2(0x61A8, 0x6978), this->position, 500.0f, 2500.0f);
|
||||
@@ -211,7 +211,7 @@ void func_80386AEC(Actor *this, s32 next_state) {
|
||||
skeletalAnim_set(this->unk148, ASSET_FA_ANIM_FLIBBIT_IDLE, 0.2f, randf2(1.0f, 2.0f));
|
||||
skeletalAnim_setProgress(this->unk148, randf2(0.0f, 0.9f));
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_1_LOOP);
|
||||
this->position[1] = func_80309724(this->position);
|
||||
this->position[1] = mapModel_getFloorY(this->position);
|
||||
local->unk18 = 1.0f;
|
||||
}
|
||||
|
||||
@@ -219,7 +219,7 @@ void func_80386AEC(Actor *this, s32 next_state) {
|
||||
FUNC_8030E8B4(SFX_8E_GRUNTLING_DAMAGE, 1.5f, 32200, this->position, 500, 2500);
|
||||
skeletalAnim_set(this->unk148, ASSET_288_ANIM_FLIBBIT_OW, 0.1f, 0.65f);
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_2_ONCE);
|
||||
this->position[1] = func_80309724(this->position);
|
||||
this->position[1] = mapModel_getFloorY(this->position);
|
||||
local->unk18 = 1.0f;
|
||||
}
|
||||
|
||||
@@ -333,7 +333,7 @@ void chflibbit_update(Actor *this){
|
||||
local->unkE[1] = (s16) this->position_y;
|
||||
local->unkE[2] = (s16) this->position_z;
|
||||
|
||||
local->unkE[1] = func_80309724(this->position);
|
||||
local->unkE[1] = mapModel_getFloorY(this->position);
|
||||
func_80386AEC(this, 1);
|
||||
}
|
||||
player_getPosition(player_position);
|
||||
@@ -439,8 +439,8 @@ void chflibbit_update(Actor *this){
|
||||
|
||||
this->position_y += local->unk14*spA4;
|
||||
local->unk14 -= 3000.0f*spA4;
|
||||
if(this->position_y < func_80309724(this->position)){
|
||||
this->position_y = func_80309724(this->position);
|
||||
if(this->position_y < mapModel_getFloorY(this->position)){
|
||||
this->position_y = mapModel_getFloorY(this->position);
|
||||
func_80386AEC(this, 7);
|
||||
}
|
||||
}
|
||||
|
@@ -74,7 +74,7 @@ void func_8038FD9C(Actor *this){
|
||||
local->unk60[0] = this->pitch;
|
||||
local->unk60[1] = this->yaw;
|
||||
local->unk60[2] = this->roll;
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
this->velocity_x = 0.0f;
|
||||
this->unk10_12 = 0;
|
||||
}
|
||||
@@ -151,7 +151,7 @@ void func_8038FD9C(Actor *this){
|
||||
local->unk60[0] = this->pitch;
|
||||
local->unk60[1] = this->yaw;
|
||||
local->unk60[2] = this->roll;
|
||||
this->unk60 += time_getDelta();
|
||||
this->lifetime_value += time_getDelta();
|
||||
_player_getPosition(player_position);
|
||||
if( func_80294660() == 0x100
|
||||
&& func_8028F20C()
|
||||
@@ -186,9 +186,9 @@ void func_8038FD9C(Actor *this){
|
||||
}
|
||||
this->marker->unk3E_1 = 0;
|
||||
|
||||
local->unk18[1] = 10 * sinf((((this->unk60 * local->unk6C) / 180.0) * BAD_PI));
|
||||
this->unk1C[0] = 4.5 * cosf((((this->unk60 * local->unk6C) / 180.0) * BAD_PI));
|
||||
this->unk1C[1] = 2*sinf((((this->unk60 * local->unk6C) / 180.0) * BAD_PI));
|
||||
local->unk18[1] = 10 * sinf((((this->lifetime_value * local->unk6C) / 180.0) * BAD_PI));
|
||||
this->unk1C[0] = 4.5 * cosf((((this->lifetime_value * local->unk6C) / 180.0) * BAD_PI));
|
||||
this->unk1C[1] = 2*sinf((((this->lifetime_value * local->unk6C) / 180.0) * BAD_PI));
|
||||
sp64[0] = local->unk3C[0] + local->unk24[0];
|
||||
sp64[1] = local->unk3C[1] + local->unk24[1];
|
||||
sp64[2] = local->unk3C[2] + local->unk24[2];
|
||||
|
@@ -179,7 +179,7 @@ void func_8038BDD4(Actor *this) {
|
||||
: local->unk24;
|
||||
skeletalAnim_setDuration(this->unk148, (200.0f / local->unk24) * 0.5);
|
||||
local->unk28[1] = sp50 * 200.0f;
|
||||
temp_f0_3 = func_80309724(this->position);
|
||||
temp_f0_3 = mapModel_getFloorY(this->position);
|
||||
if (temp_f0_3 > 125.0f) {
|
||||
this->position[1] = 125.0f;
|
||||
} else if (temp_f0_3 > 80.0f) {
|
||||
|
@@ -61,8 +61,8 @@ void func_8038EB4C(ActorMarker *this){
|
||||
Actor *thisActor;
|
||||
|
||||
thisActor = marker_getActor(this);
|
||||
thisActor = func_8032813C(ACTOR_D_WOOD_DEMOLISHED, thisActor->position, NULL);
|
||||
thisActor = func_8032813C(ACTOR_4D_STEAM_2, thisActor->position, NULL);
|
||||
thisActor = spawn_actor_f32(ACTOR_D_WOOD_DEMOLISHED, thisActor->position, NULL);
|
||||
thisActor = spawn_actor_f32(ACTOR_4D_STEAM_2, thisActor->position, NULL);
|
||||
if(this);
|
||||
}
|
||||
|
||||
@@ -75,7 +75,7 @@ void chmudhut_update(Actor *this){
|
||||
if(func_80334904() == 2){
|
||||
if(!this->initialized){
|
||||
this->marker->collidable = 0;
|
||||
this->initialized = 1;
|
||||
this->initialized = TRUE;
|
||||
}
|
||||
|
||||
switch(this->state){
|
||||
|
@@ -101,7 +101,7 @@ void chpinkegg_update(Actor *this){
|
||||
if(!this->initialized){
|
||||
this->marker->propPtr->unk8_3 = 1;
|
||||
marker_setCollisionScripts(this->marker, NULL, NULL, chpinkegg_collision);
|
||||
this->initialized = 1;
|
||||
this->initialized = TRUE;
|
||||
}
|
||||
|
||||
switch(this->state){
|
||||
|
@@ -46,7 +46,7 @@ void func_8038F470(ActorMarker *this, s32 arg1, enum chtanktup_leg_e leg_id){
|
||||
sp18[2] = thisActor->position_z;
|
||||
sp18[1] += 50.0f;
|
||||
|
||||
leg = func_8032813C(leg_id + ACTOR_E9_TANKTUP_LEG_FL, sp18, (s32)thisActor->yaw);
|
||||
leg = spawn_actor_f32(leg_id + ACTOR_E9_TANKTUP_LEG_FL, sp18, (s32)thisActor->yaw);
|
||||
subaddie_set_state_with_direction(leg, arg1 + 1, 0, -1);
|
||||
leg->unk10_12 = leg_id;
|
||||
}
|
||||
@@ -111,8 +111,8 @@ void func_8038F6A4(Actor *this)
|
||||
{
|
||||
nodeprop_getPosition(temp_v0, local->unk18);
|
||||
}
|
||||
this->unk138_24 = 0;
|
||||
this->initialized = 1;
|
||||
this->is_first_encounter = FALSE;
|
||||
this->initialized = TRUE;
|
||||
}
|
||||
if (!this->unk16C_4)
|
||||
{
|
||||
@@ -138,12 +138,12 @@ void func_8038F6A4(Actor *this)
|
||||
case 1:
|
||||
func_8038F610(this);
|
||||
player_getPosition(sp48);
|
||||
if (!this->unk138_24)
|
||||
if (!this->is_first_encounter)
|
||||
{
|
||||
if ((((ml_distance_vec3f(local->unk18, sp48) < 250.0f) && (ml_distance_vec3f(local->unk18, sp48) > 80.0f)) && (!func_8028ECAC())) && (player_getTransformation() == TRANSFORM_1_BANJO))
|
||||
{
|
||||
func_80311480(0xC7E, 0, 0, 0, 0, 0);
|
||||
this->unk138_24 = 1;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
}
|
||||
if (local->unk10)
|
||||
|
@@ -40,8 +40,8 @@ void func_8038D1E0(Actor *this) {
|
||||
particleEmitter_setStartingFrameRange(temp_s0, 0, 7);
|
||||
particleEmitter_setPosition(temp_s0, this->position);
|
||||
particleEmitter_setRGB(temp_s0, D_80390B04);
|
||||
func_802EFB70(temp_s0, 1.0f, 1.5f);
|
||||
func_802EFB84(temp_s0, 2.5f, 3.0f);
|
||||
particleEmitter_setStartingScaleRange(temp_s0, 1.0f, 1.5f);
|
||||
particleEmitter_setFinalScaleRange(temp_s0, 2.5f, 3.0f);
|
||||
particleEmitter_setParticleVelocityRange(temp_s0, -70.0f, 50.0f, -70.0f, 70.0f, 100.0f, 70.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(temp_s0, 3.0f, 4.0f);
|
||||
particleEmitter_emitN(temp_s0, 4);
|
||||
@@ -60,7 +60,7 @@ s32 func_8038D2F4(Actor *this, f32 *arg1, bool arg2) {
|
||||
local->unkA[0] = (s16) arg1[0];
|
||||
local->unkA[1] = (s16) arg1[1];
|
||||
local->unkA[2] = (s16) arg1[2];
|
||||
local->unkA[1] = (s16) (s32) func_80309724(arg1);
|
||||
local->unkA[1] = (s16) (s32) mapModel_getFloorY(arg1);
|
||||
skeletalAnim_set(this->unk148, ASSET_DB_ANIM_FLIBBIT_HOP, 0.2f, (arg2) ? randf2(0.7f, 0.8f) : randf2(0.7f, 0.8f));
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_2_ONCE);
|
||||
func_80324D54(0.2f, SFX_3F2_UNKNOWN, randf2(0.7f, 1.3f), randi2(25000, 27000), this->position, 500.0f, 2500.0f);
|
||||
@@ -235,14 +235,14 @@ void func_8038D9D0(Actor *this, s32 next_state) {
|
||||
skeletalAnim_set(this->unk148, ASSET_FA_ANIM_FLIBBIT_IDLE, 0.2f, randf2(1.0f, 2.0f));
|
||||
skeletalAnim_setProgress(this->unk148, randf2(0.0f, 0.9));
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_1_LOOP);
|
||||
this->position[1] = func_80309724(this->position);
|
||||
this->position[1] = mapModel_getFloorY(this->position);
|
||||
local->unk1C = 1.0f;
|
||||
}
|
||||
if (next_state == 8) {
|
||||
FUNC_8030E8B4(SFX_8E_GRUNTLING_DAMAGE, 1.5f, 32200, this->position, 500, 2500);
|
||||
skeletalAnim_set(this->unk148, ASSET_288_ANIM_FLIBBIT_OW, 0.1f, 0.65f);
|
||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_2_ONCE);
|
||||
this->position[1] = func_80309724(this->position);
|
||||
this->position[1] = mapModel_getFloorY(this->position);
|
||||
local->unk1C = 1.0f;
|
||||
}
|
||||
if (next_state == 9) {
|
||||
@@ -482,8 +482,8 @@ void BGS_func_8038E034(Actor *this) {
|
||||
|
||||
this->position_y += local->unk18*sp9C;
|
||||
local->unk18 -= 3000.0f*sp9C;
|
||||
if(this->position_y < func_80309724(this->position)){
|
||||
this->position_y = func_80309724(this->position);
|
||||
if(this->position_y < mapModel_getFloorY(this->position)){
|
||||
this->position_y = mapModel_getFloorY(this->position);
|
||||
func_8038D9D0(this, 10);
|
||||
}
|
||||
}
|
||||
|
@@ -79,7 +79,7 @@ void BGS_func_8038FB84(ActorMarker *this, ActorMarker *other_marker){
|
||||
|
||||
void func_8038FBF8(Actor *this){
|
||||
if(!this->initialized){
|
||||
this->initialized = 1;
|
||||
this->initialized = TRUE;
|
||||
this->marker->propPtr->unk8_3 = 1;
|
||||
marker_setCollisionScripts(this->marker, NULL, NULL, BGS_func_8038FB84);
|
||||
}
|
||||
|
@@ -89,7 +89,7 @@ void __chgrublinhood_die(ActorMarker* marker, s32 arg1) {
|
||||
__chgrublinhood_emitHat(pCtrl, actor, ASSET_52D_MODEL_GRUBLIN_HOOD_HAT);
|
||||
__spawnQueue_add_4((GenFunction_4)func_802C4140, ACTOR_4C_STEAM, reinterpret_cast(s32,actor->position_x), reinterpret_cast(s32,actor->position_y), reinterpret_cast(s32,actor->position_z));
|
||||
actor_collisionOff(actor);
|
||||
actor->unk138_24 = 1;
|
||||
actor->is_first_encounter = TRUE;
|
||||
}
|
||||
|
||||
Actor *chgrublinhood_draw(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
@@ -109,7 +109,7 @@ Actor *chgrublinhood_draw(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||
func_8033A45C(11, (local->season < AUTUMN) ? 0 : (local->season == AUTUMN) ? 1 : 2);
|
||||
func_8033A45C(12, (local->season == WINTER) ? 2 : 1);
|
||||
func_8033A45C(13, (local->season == WINTER) ? 1 : 0);
|
||||
func_8033A45C(14, (this->unk138_24)? 0 : 1);
|
||||
func_8033A45C(14, (this->is_first_encounter)? FALSE : TRUE);
|
||||
return actor_draw(marker, gfx, mtx, vtx);
|
||||
}
|
||||
|
||||
|
@@ -137,7 +137,7 @@ void chGobiCCW_update(Actor *this) {
|
||||
this->unk16C_4 = TRUE;
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
this->marker->actorFreeFunc = chGobiCCW_free;
|
||||
this->unk138_24 = FALSE;
|
||||
this->is_first_encounter = FALSE;
|
||||
local->unk4 = skeletalAnim_new();
|
||||
local->spit_model = assetcache_get(ASSET_3F3_MODEL_GOBI_SPIT);
|
||||
marker_setCollisionScripts(this->marker, 0, func_8038894C, 0);
|
||||
@@ -159,13 +159,13 @@ void chGobiCCW_update(Actor *this) {
|
||||
return;
|
||||
}
|
||||
if(this->state == 1){
|
||||
if (!this->unk138_24) {
|
||||
if (!this->is_first_encounter) {
|
||||
player_getPosition(sp48);
|
||||
if (ml_distance_vec3f(this->position, sp48) < 600.0f) {
|
||||
if (local->unk0->unk2 != 0) {
|
||||
func_80311480((s32) local->unk0->unk2, 4, NULL, NULL, NULL, NULL);
|
||||
}
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -214,7 +214,7 @@ void CCW_func_80389BFC(Actor *this) {
|
||||
if (!this->unk16C_4) {
|
||||
this->unk16C_4 = TRUE;
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
this->unk138_24 = FALSE;
|
||||
this->is_first_encounter = FALSE;
|
||||
this->position[0] = -4900.0f;
|
||||
this->position[1] = 4619.0f;
|
||||
this->position[2] = 0.0f;
|
||||
@@ -253,12 +253,12 @@ void CCW_func_80389BFC(Actor *this) {
|
||||
}
|
||||
if (this->state == 1) {
|
||||
player_getPosition(sp4C);
|
||||
if( !this->unk138_24
|
||||
if( !this->is_first_encounter
|
||||
&& (local->unkC[2] >= 6500)
|
||||
&& (sp4C[2] < 6500.0f)
|
||||
&& (local->unk0->unk28 != 0)
|
||||
){
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
func_80324E38(0.0f, 3);
|
||||
timed_setStaticCameraToNode(0.0f, local->unk0->unk24);
|
||||
func_80324DBC(0.0f, local->unk0->unk28, 6, NULL, this->marker, func_80389700, NULL);
|
||||
|
@@ -28,7 +28,7 @@ f32 func_8038A190(Actor *this, f32 *arg1) {
|
||||
f32 temp_f0;
|
||||
f32 temp_f2;
|
||||
|
||||
temp_f0 = func_80309724(arg1);
|
||||
temp_f0 = mapModel_getFloorY(arg1);
|
||||
temp_f2 = this->position[1];
|
||||
if (((temp_f2 + 50.0f) < temp_f0) || (temp_f0 < (temp_f2 - 50.0f))) {
|
||||
return temp_f2;
|
||||
|
@@ -61,7 +61,7 @@ void func_8038B19C(Actor *this) {
|
||||
|
||||
if (!this->unk16C_4) {
|
||||
this->unk16C_4 = TRUE;
|
||||
this->unk138_24 = FALSE;
|
||||
this->is_first_encounter = FALSE;
|
||||
func_8038B0F0(this, 1);
|
||||
}
|
||||
|
||||
@@ -88,8 +88,8 @@ void func_8038B19C(Actor *this) {
|
||||
func_8038B0F0(this, 1);
|
||||
}
|
||||
}
|
||||
if (!this->unk138_24 && func_803292E0(this)) {
|
||||
this->unk138_24 = TRUE;
|
||||
if (!this->is_first_encounter && func_803292E0(this)) {
|
||||
this->is_first_encounter = TRUE;
|
||||
func_80311480(0xCC8, 0, NULL, NULL, NULL, NULL);
|
||||
}
|
||||
func_8028E668(this->position, 300.0f, -50.0f, 120.0f);
|
||||
|
@@ -87,11 +87,11 @@ void func_8038B814(Actor *this, s32 next_state) {
|
||||
void func_8038B87C(Actor *this) {
|
||||
if (!this->unk16C_4) {
|
||||
this->unk16C_4 = TRUE;
|
||||
this->unk138_24 = FALSE;
|
||||
this->is_first_encounter = FALSE;
|
||||
func_8038B814(this, 1);
|
||||
}
|
||||
if (!this->unk138_24 && func_803292E0(this)) {
|
||||
this->unk138_24 = TRUE;
|
||||
if (!this->is_first_encounter && func_803292E0(this)) {
|
||||
this->is_first_encounter = TRUE;
|
||||
func_80311480(0xCC9, 0, NULL, NULL, NULL, NULL);
|
||||
}
|
||||
func_8028E668(this->position, 300.0f, -50.0f, 120.0f);
|
||||
|
@@ -121,7 +121,7 @@ void chnabnut_update(Actor *this) {
|
||||
D_8038F350[1] = this->position[1];
|
||||
D_8038F350[2] = this->position[2];
|
||||
if (this->state == 0) {
|
||||
this->unk138_24 = FALSE;
|
||||
this->is_first_encounter = FALSE;
|
||||
local->returned_acorn_count = NULL;
|
||||
}
|
||||
chnabnut_setState(this, 1);
|
||||
@@ -133,15 +133,15 @@ void chnabnut_update(Actor *this) {
|
||||
|
||||
if (this->state == NABNUT_STATE_1_SAD) {
|
||||
player_getPosition(sp30);
|
||||
if (!this->unk138_24 && (ml_distance_vec3f(this->position, sp30) < 400.0f)) {
|
||||
this->unk138_24 = TRUE;
|
||||
if (!this->is_first_encounter && (ml_distance_vec3f(this->position, sp30) < 400.0f)) {
|
||||
this->is_first_encounter = TRUE;
|
||||
func_80311480(0xCCA, 0xE, this->position, NULL, NULL, NULL);
|
||||
}
|
||||
if (item_getCount(ITEM_23_ACORNS) > 0) {
|
||||
func_80258A4C(this->position, this->yaw - 90.0f, sp30, &sp2C, &sp28, &sp24);
|
||||
this->yaw += sp24 * 10.0f;
|
||||
}
|
||||
if (this->unk138_24 && !func_803114B0()) {
|
||||
if (this->is_first_encounter && !func_803114B0()) {
|
||||
func_8028F364(this->position, 500.0f, 200.0f, ACTOR_2A9_ACORN, &this);
|
||||
if ((carriedObj_getActorId() == ACTOR_2A9_ACORN) && (ml_distance_vec3f(this->position, sp30) < 300.0f) && func_8028FC34()) {
|
||||
func_8028FA54(D_8038F350);
|
||||
|
@@ -93,7 +93,7 @@ void func_8038C41C(Actor *this) {
|
||||
if (!this->unk16C_4) {
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
this->unk16C_4 = TRUE;
|
||||
this->unk138_24 = FALSE;
|
||||
this->is_first_encounter = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -114,8 +114,8 @@ void func_8038C41C(Actor *this) {
|
||||
|
||||
if ((this->marker->id == 0x1CB) && (this->state == 2)) {
|
||||
player_getPosition(sp2C);
|
||||
if (!this->unk138_24 && (ml_distance_vec3f(this->position, sp2C) < 400.0f)) {
|
||||
this->unk138_24 = TRUE;
|
||||
if (!this->is_first_encounter && (ml_distance_vec3f(this->position, sp2C) < 400.0f)) {
|
||||
this->is_first_encounter = TRUE;
|
||||
func_80311480(0xCCD, 0, NULL, NULL, NULL, NULL);
|
||||
}
|
||||
}
|
||||
|
@@ -45,8 +45,8 @@ void func_8038CA10(ActorMarker *marker) {
|
||||
if (this->marker->unk14_21) {
|
||||
if (0.65 < (f64) randf()) {
|
||||
pCtrl = func_802EDD8C(local->unk4, 0.0f, this->position[1] + 500.0f);
|
||||
func_802EFB70(pCtrl, 0.04f, 0.05f);
|
||||
func_802EFB84(pCtrl, 0.18f, 0.2f);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 0.04f, 0.05f);
|
||||
particleEmitter_setFinalScaleRange(pCtrl, 0.18f, 0.2f);
|
||||
particleEmitter_setParticleSpawnPositionRange(pCtrl, -10.0f, 0.0f, -10.0f, 10.0f, 20.0f, 10.0f);
|
||||
particleEmitter_setParticleVelocityRange(pCtrl, 0.0f, 31.0f, 0.0f, 0.0f, 37.0f, 0.0f);
|
||||
particleEmitter_emitN(pCtrl, 1);
|
||||
@@ -91,7 +91,7 @@ void func_8038CC4C(Actor *this) {
|
||||
if (!this->unk16C_4) {
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
this->unk16C_4 = TRUE;
|
||||
this->unk138_24 = FALSE;
|
||||
this->is_first_encounter = FALSE;
|
||||
local->unk0 = &D_8038F490[0];
|
||||
while(local->unk0->map_id != 0 && map_get() != local->unk0->map_id){
|
||||
local->unk0++;
|
||||
@@ -113,12 +113,12 @@ void func_8038CC4C(Actor *this) {
|
||||
this->yaw += 30.0f * sp44;
|
||||
}
|
||||
}
|
||||
if (!this->unk138_24) {
|
||||
if (!this->is_first_encounter) {
|
||||
player_getPosition(sp38);
|
||||
if (ml_distance_vec3f(this->position, sp38) < 900.0f) {
|
||||
if (local->unk0->map_id != MAP_46_CCW_WINTER || func_8028F2FC()) {
|
||||
func_80311480(local->unk0->unk4, 4, NULL, NULL, NULL, NULL);
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -82,7 +82,7 @@ void func_8038CFB4(Actor *this) {
|
||||
if (!this->unk16C_4) {
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
this->unk16C_4 = TRUE;
|
||||
this->unk138_24 = FALSE;
|
||||
this->is_first_encounter = FALSE;
|
||||
func_8038CEB0(this, 1);
|
||||
if (jiggyscore_isCollected(JIGGY_4B_CCW_GNAWTY) != 0) {
|
||||
levelSpecificFlags_set(0x25, 1);
|
||||
@@ -114,11 +114,11 @@ void func_8038CFB4(Actor *this) {
|
||||
}
|
||||
|
||||
if (this->state == 1) {
|
||||
if (!this->unk138_24) {
|
||||
if (!this->is_first_encounter) {
|
||||
player_getPosition(sp60);
|
||||
if (ml_distance_vec3f(this->position, sp60) < 900.0f) {
|
||||
func_80311480(0xCCF, 4, NULL, NULL, NULL, NULL);
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
}
|
||||
if (levelSpecificFlags_get(0x25) != 0) {
|
||||
|
@@ -53,7 +53,7 @@ void func_8038D368(Actor *this) {
|
||||
if (!this->unk16C_4) {
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
this->unk16C_4 = TRUE;
|
||||
this->unk138_24 = FALSE;
|
||||
this->is_first_encounter = FALSE;
|
||||
local->unk0 = D_8038F600;
|
||||
while (local->unk0->map != 0 && map_get() != local->unk0->map) {
|
||||
local->unk0++;
|
||||
@@ -66,7 +66,7 @@ void func_8038D368(Actor *this) {
|
||||
return;
|
||||
}
|
||||
|
||||
if(!this->unk138_24){
|
||||
if(!this->is_first_encounter){
|
||||
player_getPosition(plyr_pos);
|
||||
if (ml_distance_vec3f(this->position, plyr_pos) < 600.0f) {
|
||||
if (!jiggyscore_isCollected(JIGGY_4B_CCW_GNAWTY)) {
|
||||
@@ -76,7 +76,7 @@ void func_8038D368(Actor *this) {
|
||||
func_80311480(local->unk0->unk4, 4, NULL, NULL, NULL, NULL);
|
||||
}
|
||||
}
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -30,8 +30,8 @@ void CCW_func_8038D510(Actor *this) {
|
||||
particleEmitter_setFade(pCtrl, 0.01f, 0.5f);
|
||||
particleEmitter_setStartingFrameRange(pCtrl, 0, 7);
|
||||
particleEmitter_setPosition(pCtrl, this->position);
|
||||
func_802EFB70(pCtrl, 1.0f, 2.0f);
|
||||
func_802EFB84(pCtrl, 3.0f, 4.0f);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 1.0f, 2.0f);
|
||||
particleEmitter_setFinalScaleRange(pCtrl, 3.0f, 4.0f);
|
||||
particleEmitter_setPositionAndVelocityRanges(pCtrl, &D_8038F670);
|
||||
particleEmitter_setRGB(pCtrl, D_8038F664);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 3.0f, 4.0f);
|
||||
@@ -52,7 +52,7 @@ void func_8038D5DC(Actor *this) {
|
||||
func_802EFA18(pCtrl, 3);
|
||||
particleEmitter_setModel(pCtrl, 0x896);
|
||||
particleEmitter_setPosition(pCtrl, this->position);
|
||||
func_802EFB70(pCtrl, 0.05f, 0.3f);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 0.05f, 0.3f);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl,
|
||||
-600.0f, -600.0f, -600.0f,
|
||||
600.0f, 600.0f, 600.0f
|
||||
|
@@ -137,7 +137,7 @@ void func_8038794C(Actor *this){
|
||||
switch(this->state){
|
||||
case 1://L80387AB0
|
||||
if(mapSpecificFlags_get(0xb))
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
|
||||
if(mapSpecificFlags_get(0x1)){
|
||||
func_8028F94C(1, this->position);
|
||||
@@ -147,13 +147,13 @@ void func_8038794C(Actor *this){
|
||||
break;
|
||||
}//L80387B38
|
||||
|
||||
if(!this->unk138_24 && func_80329530(this, 0x1f4)){
|
||||
if(!this->is_first_encounter && func_80329530(this, 0x1f4)){
|
||||
if(!func_8028ECAC() || func_8028ECAC() == BSGROUP_8_TROT){
|
||||
if(func_80311480(0xbff, 0x2a, this->position, NULL, NULL, NULL)){
|
||||
for(i = 0; i <5; i++ ){
|
||||
timedFunc_set_1(D_80391BEC[i], (GenFunction_1)func_8038787C, (s32)this->marker);
|
||||
}
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -390,7 +390,7 @@ void func_803895E0(void){
|
||||
f20 = (f32)func_80304DA8(s0);
|
||||
f8 = (f32)func_80304DB8(s0);
|
||||
f22 = f8*0.01;
|
||||
actor = func_8032813C(D_80391DB8[i].actor_id, sp64, (s32)f20);
|
||||
actor = spawn_actor_f32(D_80391DB8[i].actor_id, sp64, (s32)f20);
|
||||
actor->scale = f22;
|
||||
}
|
||||
}
|
||||
|
@@ -69,7 +69,7 @@ void func_80390388(Actor *this){
|
||||
|| jiggyscore_isCollected(JIGGY_2E_FP_PRESENTS)
|
||||
|| func_80390334()
|
||||
){
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
|
||||
if( func_80329530(this, 0xFA)
|
||||
@@ -77,14 +77,14 @@ void func_80390388(Actor *this){
|
||||
){
|
||||
if(0.0f == this->unk1C[0] && func_80390334()){
|
||||
if(func_80311480(0xc1f, 0xb, this->position, NULL, NULL, NULL)){
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
this->unk1C[0] = 1.0f;
|
||||
}
|
||||
}
|
||||
else{
|
||||
if( !this->unk138_24 ){
|
||||
if( !this->is_first_encounter ){
|
||||
if(func_80311480(0xc1e, 0x2b, this->position, NULL, NULL, NULL)){
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -140,7 +140,7 @@ void chScarfSled_update(Actor *this){
|
||||
}
|
||||
|
||||
this->velocity_x = this->position_x;
|
||||
this->velocity_y = func_80309724(this->position);
|
||||
this->velocity_y = mapModel_getFloorY(this->position);
|
||||
this->velocity_z = this->position_z;
|
||||
if(this->state == 2){
|
||||
__chScarfSled_func_80386630(this);
|
||||
|
@@ -71,7 +71,7 @@ Actor *func_8038C0B0(ActorMarker *marker, UNK_TYPE(s32) arg1, f32 arg2, UNK_TYPE
|
||||
sp4C[2] = (f32)marker->propPtr->z;
|
||||
|
||||
sp40[0] = (f32)marker->pitch;
|
||||
sp40[1] = this->unk60;
|
||||
sp40[1] = this->lifetime_value;
|
||||
sp40[2] = (f32)marker->roll;
|
||||
sp3C = this->scale;
|
||||
if(animMtxList_len(marker->unk20)){
|
||||
@@ -100,7 +100,7 @@ void func_8038C260(f32 position[3], s32 count, enum asset_e model_id){
|
||||
400.0f, 400.0f, 400.0f,
|
||||
800.0f, 800.0f, 800.0f
|
||||
);
|
||||
func_802EFB70(pCtrl, 0.1f, 0.2f);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 0.1f, 0.2f);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.02f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 1.5f, 1.5f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.3f);
|
||||
@@ -167,7 +167,7 @@ void func_8038C428(Actor *arg0, f32 arg1[3], f32 arg2)
|
||||
sp5C[0] = arg0->position[0] + var_f22;
|
||||
sp5C[1] = arg0->position[1];
|
||||
sp5C[2] = arg0->position[2] + var_f24;
|
||||
temp_f14 = func_80309724(sp5C);
|
||||
temp_f14 = mapModel_getFloorY(sp5C);
|
||||
if (sp7F) {
|
||||
do {
|
||||
sp78 += 1;
|
||||
@@ -206,7 +206,7 @@ bool func_8038C718(Actor *this, f32 arg1){
|
||||
animctrl_setAnimTimer(this->animctrl, tmp);
|
||||
|
||||
if(arg1 == 0.0f)
|
||||
arg1 = func_80309724(this->position);
|
||||
arg1 = mapModel_getFloorY(this->position);
|
||||
|
||||
if(this->position_y <= arg1){
|
||||
this->position_y = arg1;
|
||||
@@ -233,7 +233,7 @@ void func_8038C8F0(ActorMarker *marker){
|
||||
|
||||
this = marker_getActor(reinterpret_cast(ActorMarker *, marker));
|
||||
other = marker_getActor(this->unk100);
|
||||
muncher = func_8032813C(ACTOR_337_TWINKLY_MUNCHER, D_80392070, 170);
|
||||
muncher = spawn_actor_f32(ACTOR_337_TWINKLY_MUNCHER, D_80392070, 170);
|
||||
muncher->unk100 = other->marker;
|
||||
muncher->unkF4_8 = 1;
|
||||
|
||||
@@ -289,7 +289,7 @@ void func_8038C9A0(Actor *this){
|
||||
if(!func_8038C718(this, 0)){
|
||||
subaddie_set_state_with_direction(this, 2, 0.001f, 1);
|
||||
func_8038C428(this, D_80392088, randf2(20.0f, 24.0f));
|
||||
this->unk60 = this->yaw;
|
||||
this->lifetime_value = this->yaw;
|
||||
}
|
||||
break;
|
||||
|
||||
|
@@ -3,7 +3,7 @@
|
||||
#include "variables.h"
|
||||
|
||||
extern void func_80324CD8(f32);
|
||||
extern Actor *func_8032813C(enum actor_e, f32[3], s32);
|
||||
extern Actor *spawn_actor_f32(enum actor_e, f32[3], s32);
|
||||
|
||||
Actor *FP_func_8038CED0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx);
|
||||
void func_8038D6C8(Actor *this);
|
||||
@@ -209,9 +209,9 @@ void func_8038D41C(ActorMarker *marker){
|
||||
ActorMarker *_marker = reinterpret_cast(ActorMarker *, marker);
|
||||
Actor *actor;
|
||||
|
||||
actor = func_8032813C(ACTOR_337_TWINKLY_MUNCHER, D_80392354, 170);
|
||||
actor = spawn_actor_f32(ACTOR_337_TWINKLY_MUNCHER, D_80392354, 170);
|
||||
actor->unk100 = _marker;
|
||||
actor = func_8032813C(ACTOR_337_TWINKLY_MUNCHER, D_80392360, 170);
|
||||
actor = spawn_actor_f32(ACTOR_337_TWINKLY_MUNCHER, D_80392360, 170);
|
||||
actor->unk100 = _marker;
|
||||
if(pad[0]);
|
||||
}
|
||||
@@ -369,7 +369,7 @@ void func_8038D6C8(Actor *this){
|
||||
this->unk38_31 = 0xA;
|
||||
item_set(ITEM_24_TWINKLY_SCORE, this->unk38_31);
|
||||
__spawnQueue_add_1((GenFunction_1)func_8038D41C, (s32)this->marker);
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
func_80347A14(0);
|
||||
func_802FAD64(ITEM_14_HEALTH);
|
||||
break;
|
||||
@@ -407,12 +407,12 @@ void func_8038D6C8(Actor *this){
|
||||
|
||||
|
||||
if(0.96 < animctrl_getAnimTimer(this->animctrl)){
|
||||
if(this->unk60 <= 0.0){
|
||||
if(this->lifetime_value <= 0.0){
|
||||
__spawnQueue_add_1((GenFunction_1)func_8038D474, (s32)this->marker);
|
||||
this->unk60 = 2.9f;
|
||||
this->lifetime_value = 2.9f;
|
||||
}
|
||||
else{
|
||||
this->unk60 -= sp24;
|
||||
this->lifetime_value -= sp24;
|
||||
}
|
||||
item_set(ITEM_24_TWINKLY_SCORE, this->unk38_31);
|
||||
}
|
||||
|
@@ -107,7 +107,7 @@ void func_8038E094(Actor *this){
|
||||
marker_setCollisionScripts(this->marker, NULL, func_8038DEB8, NULL);
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
animctrl_setAnimTimer(this->animctrl, 0.99999f);
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
if(this->unkF4_8 == 1){
|
||||
func_8038DDC8(this);
|
||||
}
|
||||
@@ -148,18 +148,18 @@ void func_8038E094(Actor *this){
|
||||
case 1: //L8038E2DC
|
||||
this->marker->propPtr->unk8_3 = FALSE;
|
||||
animctrl_setAnimTimer(this->animctrl, 0.99f);
|
||||
if(this->unk60 < 5.0){
|
||||
this->unk60 += sp34;
|
||||
if(this->lifetime_value < 5.0){
|
||||
this->lifetime_value += sp34;
|
||||
}
|
||||
else{
|
||||
if(10.0 <= this->unk60 || randf() < this->unk60/10.0){
|
||||
if(10.0 <= this->lifetime_value || randf() < this->lifetime_value/10.0){
|
||||
if(!func_8038DF34(this)){
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
func_8038DDC8(this);
|
||||
break;
|
||||
}
|
||||
}
|
||||
this->unk60 += sp34;
|
||||
this->lifetime_value += sp34;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -216,7 +216,7 @@ void func_8038E094(Actor *this){
|
||||
if(actor_animationIsAt(this, 0.97f)){
|
||||
subaddie_set_state_with_direction(this, 1, 0.97f, 0);
|
||||
actor_playAnimationOnce(this);
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
}
|
||||
break;
|
||||
|
||||
|
@@ -299,10 +299,10 @@ void FP_func_8038F7AC(Actor *this){
|
||||
break;
|
||||
}
|
||||
|
||||
if(func_80329530(this, 500) && !this->unk138_24){
|
||||
if(func_80329530(this, 500) && !this->is_first_encounter){
|
||||
if(func_80311480(0xc1c, 0xAA, this->position, this->marker, func_8038F330, func_8038F3C4)){
|
||||
timed_setStaticCameraToNode(0.0f, 0x2E);
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
break;
|
||||
}//L8038FD40
|
||||
|
@@ -124,18 +124,18 @@ void chXmasTree_update(Actor *this){
|
||||
if(!mapSpecificFlags_get(2)) break;
|
||||
|
||||
subaddie_set_state(this, 3);
|
||||
this->unk60 = 2.0f;
|
||||
this->lifetime_value = 2.0f;
|
||||
func_8025A6EC(COMUSIC_61_XMAS_TREE_LIGHTS_UP, 28000);
|
||||
func_802BAFE4(0x1A);
|
||||
func_80311480(0xC14, 0, NULL, NULL, NULL, NULL);
|
||||
break;
|
||||
|
||||
case 3: // L803872F0
|
||||
if(0.0 <= this->unk60){
|
||||
if( 1.8 < this->unk60){
|
||||
if(0.0 <= this->lifetime_value){
|
||||
if( 1.8 < this->lifetime_value){
|
||||
__chXmasTree_80386EF4(this, 0);
|
||||
}
|
||||
else if(this->unk60 < 0.2){//L80387340
|
||||
else if(this->lifetime_value < 0.2){//L80387340
|
||||
__chXmasTree_80386EF4(this, 1);
|
||||
}
|
||||
else{
|
||||
@@ -144,7 +144,7 @@ void chXmasTree_update(Actor *this){
|
||||
__chXmasTree_8038709C(this);
|
||||
}
|
||||
}//L803873AC
|
||||
this->unk60 -= sp2C;
|
||||
this->lifetime_value -= sp2C;
|
||||
}
|
||||
else{//L803873BC
|
||||
if(func_802BB270()){
|
||||
@@ -174,12 +174,12 @@ void chXmasTree_update(Actor *this){
|
||||
if(item_empty(ITEM_6_HOURGLASS)){
|
||||
subaddie_set_state(this, 5);
|
||||
mapSpecificFlags_set(2, FALSE);
|
||||
this->unk60 = 0.1f;
|
||||
this->lifetime_value = 0.1f;
|
||||
if(!func_8038BFA0()){
|
||||
if(!mapSpecificFlags_get(9) || mapSpecificFlags_get(1)){
|
||||
func_8025A6EC(COMUSIC_3C_MINIGAME_LOSS, 28000);
|
||||
func_802BAFE4(0x1a);
|
||||
this->unk60 = 2.0f;
|
||||
this->lifetime_value = 2.0f;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -187,11 +187,11 @@ void chXmasTree_update(Actor *this){
|
||||
break;
|
||||
|
||||
case 5: // L803874EC
|
||||
if(0.0 <= this->unk60){
|
||||
if( 1.8 < this->unk60){
|
||||
if(0.0 <= this->lifetime_value){
|
||||
if( 1.8 < this->lifetime_value){
|
||||
__chXmasTree_80386EF4(this, 1);
|
||||
}
|
||||
else if(this->unk60 < 0.2){
|
||||
else if(this->lifetime_value < 0.2){
|
||||
__chXmasTree_80386EF4(this, 0);
|
||||
}
|
||||
else{
|
||||
@@ -200,7 +200,7 @@ void chXmasTree_update(Actor *this){
|
||||
__chXmasTree_8038709C(this);
|
||||
}
|
||||
}
|
||||
this->unk60 -= sp2C;
|
||||
this->lifetime_value -= sp2C;
|
||||
}
|
||||
else{
|
||||
__chXmasTree_80386F84(this);
|
||||
|
@@ -38,9 +38,9 @@ void func_8038EC34(ActorMarker *this_marker, ActorMarker *other_marker){
|
||||
}
|
||||
|
||||
void func_8038EC5C(Actor *this){
|
||||
if(0.0f == this->unk60){
|
||||
if(0.0f == this->lifetime_value){
|
||||
this->unk38_31++;
|
||||
this->unk60 = 0.33f;
|
||||
this->lifetime_value = 0.33f;
|
||||
if(this->unk38_31 < 4){
|
||||
func_8025A6EC(COMUSIC_2B_DING_B, 28000);
|
||||
}
|
||||
@@ -91,11 +91,11 @@ void func_8038ECD8(Actor *this){
|
||||
local->unk1A = TRUE;
|
||||
}//L8038EE98
|
||||
|
||||
if(0.0f != this->unk60){
|
||||
if(time_getDelta() < this->unk60){
|
||||
this->unk60 -= time_getDelta();
|
||||
if(0.0f != this->lifetime_value){
|
||||
if(time_getDelta() < this->lifetime_value){
|
||||
this->lifetime_value -= time_getDelta();
|
||||
}else{
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
}
|
||||
}//L8038EEF0
|
||||
switch(this->state){
|
||||
|
@@ -81,7 +81,7 @@ void func_8038E940(Actor *this){
|
||||
marker_setCollisionScripts(this->marker, NULL, func_8038E7CC, NULL);
|
||||
subaddie_set_state_with_direction(this, 1, 0.05f, 1);
|
||||
this->unk38_31 = 0;
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
}//L8038EA3C
|
||||
|
||||
this->unk58_0 = (this->state == 1) ? FALSE : TRUE;
|
||||
@@ -102,16 +102,16 @@ void func_8038E940(Actor *this){
|
||||
actor_playAnimationOnce(this);
|
||||
FUNC_8030E624(SFX_416, 0.8f, 32000);
|
||||
this->marker->collidable = FALSE;
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
break;
|
||||
case 3: //L8038EB44
|
||||
if(this->unk60 == 0.0f && actor_animationIsAt(this, 0.95f)){
|
||||
this->unk60 = 1.0f;
|
||||
if(this->lifetime_value == 0.0f && actor_animationIsAt(this, 0.95f)){
|
||||
this->lifetime_value = 1.0f;
|
||||
mapSpecificFlags_set(2, TRUE);
|
||||
break;
|
||||
}
|
||||
|
||||
if(this->unk60 != 0.0f && !mapSpecificFlags_get(2)){
|
||||
if(this->lifetime_value != 0.0f && !mapSpecificFlags_get(2)){
|
||||
func_8038E774(this);
|
||||
}
|
||||
break;
|
||||
|
@@ -90,8 +90,8 @@ void func_8038AC90(s32 indx, s32 arg1){
|
||||
Actor *a1;
|
||||
Actor *a2;
|
||||
|
||||
m1 = func_8032813C(0x161, D_80392F70[indx].position, 0)->marker;
|
||||
m2 = func_8032813C(0x162, D_80393280[indx].position, 0)->marker;
|
||||
m1 = spawn_actor_f32(0x161, D_80392F70[indx].position, 0)->marker;
|
||||
m2 = spawn_actor_f32(0x162, D_80393280[indx].position, 0)->marker;
|
||||
a1 = marker_getActor(m1);
|
||||
a2 = marker_getActor(m2);
|
||||
|
||||
@@ -143,23 +143,23 @@ void func_8038AEE0(s32 indx){
|
||||
Actor *sp1C;
|
||||
switch(indx){
|
||||
case 0:// L8038AF0C
|
||||
sp1C = func_8032813C(0x22d, D_80391ED0, D_80391EDC);
|
||||
sp1C = spawn_actor_f32(0x22d, D_80391ED0, D_80391EDC);
|
||||
break;
|
||||
|
||||
case 1:// L8038AF38
|
||||
sp1C = func_8032813C(0x22e, D_80391EE0, D_80391EEC);
|
||||
sp1C = spawn_actor_f32(0x22e, D_80391EE0, D_80391EEC);
|
||||
break;
|
||||
|
||||
case 2:// L8038AF64
|
||||
sp1C = func_8032813C(0x22d, D_80391EF0, FP_D_80391EFC);
|
||||
sp1C = spawn_actor_f32(0x22d, D_80391EF0, FP_D_80391EFC);
|
||||
break;
|
||||
|
||||
case 3:// L8038AF90
|
||||
sp1C = func_8032813C(0x22d, D_80391F00, D_80391F0C);
|
||||
sp1C = spawn_actor_f32(0x22d, D_80391F00, D_80391F0C);
|
||||
break;
|
||||
|
||||
case 4:// L8038AFBC
|
||||
sp1C = func_8032813C(0x22d, D_80391F10, D_80391F1C);
|
||||
sp1C = spawn_actor_f32(0x22d, D_80391F10, D_80391F1C);
|
||||
break;
|
||||
}
|
||||
D_80393590[indx] = sp1C->marker;
|
||||
@@ -191,7 +191,7 @@ void FP_func_8038B0B8(void){
|
||||
}
|
||||
|
||||
void func_8038B0F8(void){
|
||||
Actor *trainers = func_8032813C(ACTOR_2C_TURBO_TALON_TRAINERS, D_80391F20, 100);
|
||||
Actor *trainers = spawn_actor_f32(ACTOR_2C_TURBO_TALON_TRAINERS, D_80391F20, 100);
|
||||
trainers->unk10_1 = FALSE;
|
||||
}
|
||||
|
||||
|
@@ -176,13 +176,13 @@ void chGobi1_update(Actor *this){
|
||||
}
|
||||
|
||||
if(this->state == 1 || this->state == 2){
|
||||
if( !this->unk138_24
|
||||
if( !this->is_first_encounter
|
||||
&& func_80329530(this, 250)
|
||||
&& !func_80329530(this, 80)
|
||||
&& func_8028F2A0()
|
||||
&& func_80311480(0xa73, 0, NULL, NULL, NULL, NULL)
|
||||
){
|
||||
this->unk138_24 = 1;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
}//L803877A4
|
||||
|
||||
|
@@ -200,11 +200,11 @@ void chGobi2_update(Actor *this){
|
||||
}//L80388114
|
||||
|
||||
if(this->state == 2){
|
||||
if(!this->unk138_24){
|
||||
if(!this->is_first_encounter){
|
||||
if(func_80329530(this, 0xFA) && !func_80329530(this, 0x50)){
|
||||
if(func_8028F2A0()){
|
||||
if(func_80311480(ASSET_A75_TEXT_GOBI2_MEET, 0, this->position, NULL, NULL, NULL))
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -119,15 +119,15 @@ void func_8038DBDC(Actor *this){
|
||||
this->unk1C[0] = 0.0f;
|
||||
}//L8038DC90
|
||||
if(func_8038E178() != (s32)this->unk1C[0] || volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE)){
|
||||
if(15.0f <= this->unk60){
|
||||
if(15.0f <= this->lifetime_value){
|
||||
subaddie_set_state_with_direction(this, 2, 0.01f, 1);
|
||||
animctrl_setPlaybackType(this->animctrl, ANIMCTRL_ONCE);
|
||||
animctrl_setDuration(this->animctrl, 2.0f);
|
||||
this->unk1C[0] = (f32)func_8038E178();
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
}
|
||||
else{//L8038DD2C
|
||||
this->unk60 += 1.0f;
|
||||
this->lifetime_value += 1.0f;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@@ -69,13 +69,13 @@ void chTrucker_update(Actor *this){
|
||||
}
|
||||
}//L803891D8
|
||||
if( this->state == 1
|
||||
&& !this->unk138_24
|
||||
&& !this->is_first_encounter
|
||||
&& func_80329530(this, 250)
|
||||
&& !func_80329530(this, 80)
|
||||
&& func_8028F2A0()
|
||||
){
|
||||
func_80311480(ASSET_A71_TEXT_TRUNKER_MEET, 0xe, this->position, NULL, NULL, NULL);
|
||||
this->unk138_24 = 1;
|
||||
this->is_first_encounter = TRUE;
|
||||
}//L80389254
|
||||
|
||||
if(this->state == 1 && mapSpecificFlags_get(0xC)){
|
||||
|
@@ -30,7 +30,7 @@ void func_80389A20(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||
|
||||
void func_80389A60(Actor *this){
|
||||
func_80311480(ASSET_A70_TEXT_CHARMER_HELPED, 4, NULL, this->marker, func_80389A20, NULL);
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
subaddie_set_state(this, 5);
|
||||
}
|
||||
|
||||
@@ -47,8 +47,8 @@ void func_80389ABC(Actor *this){
|
||||
|
||||
void func_80389B1C(Actor *this){
|
||||
if(!this->unk16C_4){
|
||||
this->unk60 = (f32) func_8038E184();
|
||||
this->unk138_24 = jiggyscore_isCollected(JIGGY_43_GV_HISTUP) || mapSpecificFlags_get(0);
|
||||
this->lifetime_value = (f32) func_8038E184();
|
||||
this->is_first_encounter = jiggyscore_isCollected(JIGGY_43_GV_HISTUP) || mapSpecificFlags_get(0);
|
||||
this->unk138_23 = jiggyscore_isCollected(JIGGY_43_GV_HISTUP) || mapSpecificFlags_get(2);
|
||||
this->unk16C_4 = TRUE;
|
||||
}
|
||||
@@ -62,16 +62,16 @@ void func_80389B1C(Actor *this){
|
||||
animctrl_setTransitionDuration(this->animctrl, 0.15f);
|
||||
|
||||
if(this->state == 1 || this->state == 2){
|
||||
if(! this->unk138_24 && func_80329530(this, 250) && !func_80329530(this, 0x50)){
|
||||
if(! this->is_first_encounter && func_80329530(this, 250) && !func_80329530(this, 0x50)){
|
||||
func_80311480(ASSET_A6F_TEXT_CHARMER_MEET, 0xe, this->position, NULL, NULL, NULL);
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
mapSpecificFlags_set(0, TRUE);
|
||||
}
|
||||
}
|
||||
|
||||
switch(this->state){
|
||||
case 1://L80389CC4
|
||||
if(this->unk60 <= (f32)func_8038E178()){
|
||||
if(this->lifetime_value <= (f32)func_8038E178()){
|
||||
func_80389ABC(this);
|
||||
}
|
||||
else if(actor_animationIsAt(this, 0.99f)){
|
||||
@@ -92,7 +92,7 @@ void func_80389B1C(Actor *this){
|
||||
break;
|
||||
|
||||
case 2: //L80389DB0
|
||||
if(this->unk60 <= (f32)func_8038E178()){
|
||||
if(this->lifetime_value <= (f32)func_8038E178()){
|
||||
func_80389ABC(this);
|
||||
}
|
||||
else if(actor_animationIsAt(this, 0.99f)){
|
||||
|
@@ -2,7 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
extern f32 func_80309724(f32[3]);
|
||||
extern f32 mapModel_getFloorY(f32[3]);
|
||||
void func_80329904(ActorMarker *, s32, void *);
|
||||
|
||||
void func_8038A314(Actor *this);
|
||||
@@ -143,7 +143,7 @@ void func_8038A31C(Actor *this){
|
||||
this->pitch = 0.0f;
|
||||
if(this->unk100 && sp24 && this->unk100->id == MARKER_AF_MAGIC_CARPET_SHADOW){
|
||||
sp24->position_x = this->position_x;
|
||||
sp24->position_y = func_80309724(this->position) + 60.0f;
|
||||
sp24->position_y = mapModel_getFloorY(this->position) + 60.0f;
|
||||
sp24->position_z = this->position_z;
|
||||
sp24->unk1C[0] = func_8038A264(sp24, this);
|
||||
sp24->yaw = this->yaw;
|
||||
|
@@ -2,7 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
extern f32 func_80309724(f32[3]);
|
||||
extern f32 mapModel_getFloorY(f32[3]);
|
||||
void func_80329904(ActorMarker *, s32, void *);
|
||||
|
||||
|
||||
@@ -57,7 +57,7 @@ void func_8038A8CC(ActorMarker *this_marker){
|
||||
s32 pad;
|
||||
|
||||
this->unk100 = shadow->marker;
|
||||
shadow->position_y = func_80309724(this->position);
|
||||
shadow->position_y = mapModel_getFloorY(this->position);
|
||||
shadow->unk1C[0] = func_8038A860(shadow, this);
|
||||
shadow->yaw = this->yaw;
|
||||
func_8032AA58(shadow, this->scale);
|
||||
|
@@ -61,8 +61,8 @@ void func_8038ABD8(f32 position[3], s32 cnt){
|
||||
-100.0f, 10.0f, -100.0f,
|
||||
100.0f, 60.0f, 100.0f
|
||||
);
|
||||
func_802EFB70(pCtrl, 0.1f, 0.5f);
|
||||
func_802EFB84(pCtrl, 1.2f, 2.6f);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 0.1f, 0.5f);
|
||||
particleEmitter_setFinalScaleRange(pCtrl, 1.2f, 2.6f);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 0.5f, 1.4f);
|
||||
particleEmitter_emitN(pCtrl, cnt);
|
||||
@@ -79,8 +79,8 @@ void func_8038ACEC(f32 pos[3], s32 cnt){
|
||||
-200.0f, 20.0f, -200.0f,
|
||||
300.0f, 120.0f, 200.0f
|
||||
);
|
||||
func_802EFB70(pCtrl, 1.0f, 2.6f);
|
||||
func_802EFB84(pCtrl, 3.0f, 5.5f);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 1.0f, 2.6f);
|
||||
particleEmitter_setFinalScaleRange(pCtrl, 3.0f, 5.5f);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 1.2f, 3.2f);
|
||||
particleEmitter_emitN(pCtrl, cnt);
|
||||
@@ -94,7 +94,7 @@ void func_8038ADFC(f32 pos[3], s32 cnt){
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, -500.0f, -500.0f, -500.0f, 500.0f, 500.0f, 500.0f);
|
||||
func_802EF9F8(pCtrl, 0.6f);
|
||||
func_802EFA18(pCtrl, 2);
|
||||
func_802EFB70(pCtrl, 1.0f, 1.0f);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 1.0f, 1.0f);
|
||||
particleEmitter_setDrawMode(pCtrl, 2);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 4.0f, 6.0f);
|
||||
@@ -271,19 +271,19 @@ void func_8038B124(Actor *this){
|
||||
if(0.98 < animctrl_getAnimTimer(this->animctrl)){
|
||||
subaddie_set_state_with_direction(this, 6, 0.99f, 0);
|
||||
actor_playAnimationOnce(this);
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
this->unk1C[0] = 1.0f;
|
||||
}
|
||||
break;
|
||||
|
||||
case 6: //L8038B78C
|
||||
if(75.0f <= this->unk60){
|
||||
if(75.0f <= this->lifetime_value){
|
||||
subaddie_set_state_with_direction(this, 7, 0.00001f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
this->unk1C[0] = 1.0f;
|
||||
}
|
||||
else{
|
||||
this->unk60 += 1.0f;
|
||||
this->lifetime_value += 1.0f;
|
||||
}
|
||||
break;
|
||||
|
||||
|
@@ -130,8 +130,8 @@ void func_8038BC7C(f32 position[3], s32 cnt){
|
||||
-250.0f, 10.0f, -250.0f,
|
||||
250.0f, 110.0f, 250.0f
|
||||
);
|
||||
func_802EFB70(pCtrl, 0.1f, 0.5f);
|
||||
func_802EFB84(pCtrl, 2.0f, 2.6f);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 0.1f, 0.5f);
|
||||
particleEmitter_setFinalScaleRange(pCtrl, 2.0f, 2.6f);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 0.5f, 1.4f);
|
||||
particleEmitter_emitN(pCtrl, cnt);
|
||||
@@ -148,8 +148,8 @@ void func_8038BD8C(f32 position[3], s32 cnt){
|
||||
-100.0f, 20.0f, -100.0f,
|
||||
100.0f, 60.0f, 100.0f
|
||||
);
|
||||
func_802EFB70(pCtrl, 0.1f, 0.5f);
|
||||
func_802EFB84(pCtrl, 1.2, 1.6f);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 0.1f, 0.5f);
|
||||
particleEmitter_setFinalScaleRange(pCtrl, 1.2, 1.6f);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 0.5f, 1.4f);
|
||||
particleEmitter_emitN(pCtrl, cnt);
|
||||
@@ -244,9 +244,9 @@ void GV_func_8038BEA0(Actor *this){
|
||||
}
|
||||
}
|
||||
else{
|
||||
if(!this->unk138_24){
|
||||
if(!this->is_first_encounter){
|
||||
if(func_80311480(ASSET_A78_TEXT_GRABBA_MEET, 0, NULL, NULL, NULL, NULL)){
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -35,7 +35,7 @@ void _chchimpystump_80386CA0(Actor *this){
|
||||
void chchimpystump_update(Actor *this){
|
||||
if(!this->initialized){
|
||||
actor_collisionOff(this);
|
||||
this->initialized = 1;
|
||||
this->initialized = TRUE;
|
||||
this->unk28 = this->position_y;
|
||||
this->position_y -= 134.0f;
|
||||
this->marker->propPtr->unk8_3 = 1;
|
||||
|
@@ -222,12 +222,12 @@ void func_803876D0(Actor *this){
|
||||
if(!this->initialized){
|
||||
((ActorLocal_Conga *)&this->local)->unkC = 1;
|
||||
this->unk16C_0 = 1;
|
||||
this->initialized = 1;
|
||||
this->initialized = TRUE;
|
||||
this->velocity_x = 0.0f;
|
||||
this->unk28 = 0.0f;
|
||||
node_prop = func_80304C38(0x150, this);
|
||||
((ActorLocal_Conga *)&this->local)->unk1C = nodeprop_getRadius(node_prop);
|
||||
func_80304D4C(node_prop, &((ActorLocal_Conga *)&this->local)->unk10);
|
||||
nodeprop_getPosition_s32(node_prop, &((ActorLocal_Conga *)&this->local)->unk10);
|
||||
}
|
||||
if(0.0f == this->unk28){
|
||||
this->unk28 = (actorArray_findActorFromMarkerId(MARKER_36_ORANGE_COLLECTIBLE) != NULL)? 2.0f: 1.0f;
|
||||
@@ -259,9 +259,9 @@ void func_803876D0(Actor *this){
|
||||
mapSpecificFlags_set(0xA, 1);
|
||||
}//L803878F8
|
||||
|
||||
if( sp3C && !this->unk138_24){
|
||||
if( sp3C && !this->is_first_encounter){
|
||||
if(func_80311480((player_getTransformation()== TRANSFORM_2_TERMITE) ? ASSET_B3E_TEXT_CONGA_MEET_AS_TERMITE : ASSET_B3C_TEXT_CONGA_MEET, 0, this->position, 0,0,0)){
|
||||
this->unk138_24 = 1;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
} //L80387968
|
||||
|
||||
|
@@ -58,8 +58,8 @@ void func_803869EC(ActorMarker *this){
|
||||
f32 *pos;
|
||||
|
||||
actorPtr = marker_getActor(this);
|
||||
actorPtr = func_8032813C(0x4B, actorPtr->position, 0);
|
||||
func_8032813C(ACTOR_4D_STEAM_2, actorPtr->position, 0);
|
||||
actorPtr = spawn_actor_f32(0x4B, actorPtr->position, 0);
|
||||
spawn_actor_f32(ACTOR_4D_STEAM_2, actorPtr->position, 0);
|
||||
|
||||
if(this);
|
||||
}
|
||||
@@ -74,7 +74,7 @@ void chhut_update(Actor *this){
|
||||
|
||||
if(!this->initialized){
|
||||
this->marker->collidable = 0;
|
||||
this->initialized = 1;
|
||||
this->initialized = TRUE;
|
||||
}
|
||||
switch(this->state){
|
||||
case HUT_STATE_INTACT:
|
||||
|
@@ -70,7 +70,7 @@ void func_803890A0(ActorMarker *marker, s32 arg1){
|
||||
position[1] = actorPtr->position_y;
|
||||
position[2] = actorPtr->position_z;
|
||||
for(i = 0; i < 4; i++){
|
||||
jujuPtr = func_8032813C(ACTOR_59_JUJU, actorPtr->position, actorPtr->yaw);
|
||||
jujuPtr = spawn_actor_f32(ACTOR_59_JUJU, actorPtr->position, actorPtr->yaw);
|
||||
jujuPtr->marker->collidable = 0;
|
||||
actorPtr = marker_getActor(marker);
|
||||
func_80388DE8(actorPtr, i, jujuPtr);
|
||||
|
@@ -120,8 +120,8 @@ void func_80388E20(Actor *this){
|
||||
|
||||
jujuCtlPtr = (ActorLocal_JujuHitbox *)&this->local;
|
||||
if(!this->initialized){
|
||||
this->initialized = 1;
|
||||
this->unk138_24 = 0;
|
||||
this->initialized = TRUE;
|
||||
this->is_first_encounter = FALSE;
|
||||
jujuCtlPtr->unk18 = 0.5f;
|
||||
}
|
||||
if(!this->unk16C_4){
|
||||
@@ -133,9 +133,9 @@ void func_80388E20(Actor *this){
|
||||
&& !func_80329530(this, 0x50)
|
||||
&& !func_8028ECAC()
|
||||
){
|
||||
if( !this->unk138_24 ){
|
||||
if( !this->is_first_encounter ){
|
||||
if(func_80311480(ASSET_B44_TEXT_JUJU_MEET, 0, 0, 0, NULL, NULL)){
|
||||
this->unk138_24 = 1;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -37,7 +37,7 @@ void func_80388300(Actor **arg0){
|
||||
&& func_8028FC34()
|
||||
){
|
||||
func_8028FA34(0xc6, *arg0);
|
||||
(*arg0)->unk138_24 = 1;
|
||||
(*arg0)->is_first_encounter = TRUE;
|
||||
timed_setStaticCameraToNode(1.2f, 0xF);
|
||||
func_80324E38(1.2f, 3);
|
||||
}
|
||||
@@ -101,10 +101,10 @@ void chLMonkey_update(Actor *this){
|
||||
if( func_80329530(this, 345)
|
||||
&& !func_80329530(this, 150)
|
||||
&& !item_getCount(ITEM_19_ORANGE)
|
||||
&& !this->unk138_24
|
||||
&& !this->is_first_encounter
|
||||
){
|
||||
func_80311480(ASSET_B3F_DIALOG_CHIMPY_MEET, 0xe, this->position, NULL, NULL, NULL);
|
||||
this->unk138_24 = 1;
|
||||
this->is_first_encounter = TRUE;
|
||||
}//L80388774
|
||||
actor_loopAnimation(this);
|
||||
subaddie_maybe_set_state_position_direction(this, 2, 0.0f, -1, 0.02f);
|
||||
|
@@ -16,7 +16,7 @@
|
||||
#endif
|
||||
|
||||
/* extern functions */
|
||||
f32 func_80309724(f32*);
|
||||
f32 mapModel_getFloorY(f32*);
|
||||
|
||||
/* public functions */
|
||||
void MM_func_80387FF4(Actor *this);
|
||||
@@ -59,7 +59,7 @@ void MM_func_80387FF4(Actor * this){
|
||||
this->position_y += velocity_y;
|
||||
this->position_z += this->velocity_z;
|
||||
|
||||
ground_position_y = func_80309724(this->position);
|
||||
ground_position_y = mapModel_getFloorY(this->position);
|
||||
|
||||
if(this->position_y < ground_position_y){
|
||||
this->position_y = ground_position_y;
|
||||
@@ -67,16 +67,16 @@ void MM_func_80387FF4(Actor * this){
|
||||
func_8030E6D4(SFX_2F_ORANGE_SPLAT);
|
||||
|
||||
this->unk28 = 1.0f;
|
||||
this->unk60 = 340.0f;
|
||||
this->lifetime_value = 340.0f;
|
||||
this->state = 2;
|
||||
}
|
||||
break;
|
||||
case ORANGE_LANDED_STATE:
|
||||
if(this->unk60 < 324.0){
|
||||
if(this->lifetime_value < 324.0){
|
||||
this->marker->collidable = 0;
|
||||
}
|
||||
this->unk60 -= 4.0;
|
||||
if(this->unk60 < 4.0){
|
||||
this->lifetime_value -= 4.0;
|
||||
if(this->lifetime_value < 4.0){
|
||||
marker_despawn(this->marker);
|
||||
}
|
||||
break;
|
||||
@@ -93,7 +93,7 @@ Actor *func_80388188(ActorMarker *this, Gfx **dl, Mtx **mptr, Vtx **vtx){
|
||||
position[0] = actorPtr->position_x;
|
||||
position[1] = actorPtr->unk1C_y + 3.0f;
|
||||
position[2] = actorPtr->position_z;
|
||||
modelRender_setAlpha( (s32) MIN(255.0f, actorPtr->unk60) );
|
||||
modelRender_setAlpha( (s32) MIN(255.0f, actorPtr->lifetime_value) );
|
||||
modelRender_setDepthMode(MODEL_RENDER_DEPTH_FULL);
|
||||
modelRender_draw(dl, mptr, position, rotation, actorPtr->unk28, sp60, func_8030A428(0x18));
|
||||
actorPtr->position_y -= 1.9;
|
||||
|
@@ -65,8 +65,8 @@ void func_80386444(ActorMarker *marker){
|
||||
p_ctrl = partEmitMgr_newEmitter(30);
|
||||
particleEmitter_setPosition(p_ctrl, closest_orange_pad->position);
|
||||
particleEmitter_setModel(p_ctrl, 0x89f);
|
||||
func_802EFB70(p_ctrl, 0.09f, 0.19f);
|
||||
func_802EFB84(p_ctrl, 0.0f, 0.0f);
|
||||
particleEmitter_setStartingScaleRange(p_ctrl, 0.09f, 0.19f);
|
||||
particleEmitter_setFinalScaleRange(p_ctrl, 0.0f, 0.0f);
|
||||
|
||||
particleEmitter_setParticleVelocityRange(p_ctrl,
|
||||
-200.0f, 500.0f, -200.0f,
|
||||
@@ -104,7 +104,7 @@ void func_80386768(Actor * this){
|
||||
if(!this->initialized){
|
||||
this->marker->propPtr->unk8_3 = 1;
|
||||
actor_collisionOff(this);
|
||||
this->initialized = 1;
|
||||
this->initialized = TRUE;
|
||||
}//L803867B0
|
||||
|
||||
if(!this->unk16C_4){
|
||||
@@ -127,17 +127,17 @@ void func_80386768(Actor * this){
|
||||
}
|
||||
|
||||
if(this->state == 1){
|
||||
if(this->unk60 < 72.0f){
|
||||
if(this->lifetime_value < 72.0f){
|
||||
func_8033E73C(this->marker, 5, func_80329904);
|
||||
func_8033E3F0(9, this->marker->unk14_21);
|
||||
}
|
||||
this->unk60 = MIN(255.0, this->unk60 + 7.0);
|
||||
this->lifetime_value = MIN(255.0, this->lifetime_value + 7.0);
|
||||
|
||||
if(255.0 == this->unk60){
|
||||
if(255.0 == this->lifetime_value){
|
||||
marker_despawn(this->marker);
|
||||
}
|
||||
}else{
|
||||
}//L80386928
|
||||
|
||||
actor_setOpacity(this, 0xFF - (s32)this->unk60);
|
||||
actor_setOpacity(this, 0xFF - (s32)this->lifetime_value);
|
||||
}//*/
|
||||
|
@@ -22,11 +22,11 @@ ActorInfo chLoggo = {
|
||||
|
||||
/* .code */
|
||||
void __chLoggo_flush(ActorMarker* marker) {
|
||||
Actor* sp1C = marker_getActor(marker);
|
||||
Actor* actor = marker_getActor(marker);
|
||||
func_8028F918(2);
|
||||
subaddie_set_state_with_direction(sp1C, 2, 0.01, 1);
|
||||
actor_playAnimationOnce(sp1C);
|
||||
sp1C->unk60 = 3.2f;
|
||||
subaddie_set_state_with_direction(actor, 2, 0.01, 1);
|
||||
actor_playAnimationOnce(actor);
|
||||
actor->lifetime_value = 3.2f;
|
||||
}
|
||||
|
||||
void __chLoggo_textCallback(ActorMarker* caller, enum asset_e text_id, s32 arg3) {
|
||||
@@ -69,7 +69,7 @@ void chLoggo_update(Actor *this){
|
||||
marker_setCollisionScripts(this->marker, __chLoggo_collide, NULL, NULL);
|
||||
subaddie_set_state_with_direction(this, 1, 0.01f, 1);
|
||||
actor_loopAnimation(this);
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
if(!fileProgressFlag_get(FILEPROG_8A_EXITED_LOGGO) && levelSpecificFlags_get(0x33)){
|
||||
if(func_80311480(ASSET_AE0_TEXT_EXIT_LOGGO, 4, NULL, NULL, NULL, NULL)){
|
||||
fileProgressFlag_set(FILEPROG_8A_EXITED_LOGGO, TRUE);
|
||||
@@ -112,8 +112,8 @@ void chLoggo_update(Actor *this){
|
||||
func_8028F6E4(BS_INTR_2F_LOGGO, sp38);
|
||||
}
|
||||
|
||||
if(0.0 < this->unk60){
|
||||
this->unk60 -= sp44;
|
||||
if(0.0 < this->lifetime_value){
|
||||
this->lifetime_value -= sp44;
|
||||
}
|
||||
else{
|
||||
warp_mmmEnterLoggo(0, 0);
|
||||
|
@@ -61,9 +61,9 @@ void __chnapper_setState(Actor *this, s32 next_state){
|
||||
void func_80386ACC(ActorMarker *this_marker, ActorMarker *other_marker){
|
||||
Actor *this = marker_getActor(this_marker);
|
||||
|
||||
if(!this->unk138_24){
|
||||
if(!this->is_first_encounter){
|
||||
if(func_80311480(0xad8, 0, NULL, NULL, NULL, NULL)){
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -196,7 +196,7 @@ f32 MMM_func_80388430(Actor *this, s32 arg1, s32 arg2, f32 arg3) {
|
||||
break;
|
||||
}
|
||||
func_8030E878(SFX_82_METAL_BREAK, randf2(0.93f, 1.07f), 0x7FF8, this->position, 100.0f, 900.0f);
|
||||
this->unk60 = 1.0f;
|
||||
this->lifetime_value = 1.0f;
|
||||
}
|
||||
}
|
||||
arg3 += 4.5;
|
||||
@@ -226,7 +226,7 @@ bool func_80388670(ActorMarker * this_marker, ActorMarker * other_marker){
|
||||
void func_803888B8(Actor *this){
|
||||
func_803300C0(this->marker, func_80388670);
|
||||
func_802D3CE8(this);
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
switch(this->state){
|
||||
case 4:
|
||||
switch(this->marker->id){
|
||||
@@ -255,7 +255,7 @@ Actor *func_80388994(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) {
|
||||
f32 sp6C[3];
|
||||
|
||||
this = actor_drawFullDepth(marker, gfx, mtx, vtx);
|
||||
if (marker->unk14_21 && (this->unk60 != 0.0f)) {
|
||||
if (marker->unk14_21 && (this->lifetime_value != 0.0f)) {
|
||||
func_8034A174((struct5Bs *) marker->unk44, 5, &sp84);
|
||||
func_8034A174((struct5Bs *) marker->unk44, 6, &sp78);
|
||||
for(i = 0; i < 8; i++){
|
||||
@@ -290,13 +290,13 @@ void func_80388BDC(Actor *this) {
|
||||
mapSpecificFlags_set(1, ((this->yaw > 260.0f) && (this->yaw < 330.0f)) ? TRUE : FALSE);
|
||||
if (!this->unk16C_4) {
|
||||
if (this->yaw != 0.0f) {
|
||||
this->unk60 = 0.5f;
|
||||
this->lifetime_value = 0.5f;
|
||||
subaddie_set_state(this, 7);
|
||||
this->unk38_31 = 1;
|
||||
this->yaw = 270.0f;
|
||||
} else {
|
||||
this->unk38_31 = 0;
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
}
|
||||
this->unk16C_4 = TRUE;
|
||||
}
|
||||
@@ -327,13 +327,13 @@ void func_80388BDC(Actor *this) {
|
||||
break;
|
||||
case 7:
|
||||
if (this->unk38_31) {
|
||||
this->unk60 -= time_getDelta();
|
||||
if (this->unk60 < 0.0f) {
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value -= time_getDelta();
|
||||
if (this->lifetime_value < 0.0f) {
|
||||
this->lifetime_value = 0.0f;
|
||||
}
|
||||
}
|
||||
if( (!this->unk38_31 && item_empty(ITEM_0_HOURGLASS_TIMER))
|
||||
|| ((this->unk38_31) && (this->unk60 == 0.0f))
|
||||
|| ((this->unk38_31) && (this->lifetime_value == 0.0f))
|
||||
) {
|
||||
if (!this->unk38_31) {
|
||||
func_802BAFE4(0x22);
|
||||
@@ -357,7 +357,7 @@ void func_80388BDC(Actor *this) {
|
||||
func_8025AE0C(0x7D0, 2.5f);
|
||||
}
|
||||
this->unk38_31 = 0;
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
volatileFlag_setAndTriggerDialog_0(VOLATILE_FLAG_AD_MMM_CHURCH_DOOR_MISSED);
|
||||
}
|
||||
break;
|
||||
|
@@ -78,8 +78,8 @@ void func_8038E998(Actor *this){
|
||||
particleEmitter_setFade(other, 0.0f, 0.1f);
|
||||
particleEmitter_setStartingFrameRange(other, 0, 7);
|
||||
particleEmitter_setPosition(other, this->position);
|
||||
func_802EFB70(other, 0.25f, 0.75f);
|
||||
func_802EFB84(other, 0.75f, 1.75f);
|
||||
particleEmitter_setStartingScaleRange(other, 0.25f, 0.75f);
|
||||
particleEmitter_setFinalScaleRange(other, 0.75f, 1.75f);
|
||||
particleEmitter_setParticleSpawnPositionRange(other, -50.0f, 25.0f, -50.0f, 50.0f, 25.0f, 50.0f);
|
||||
particleEmitter_setParticleVelocityRange(other, -50.0f, 100.0f, -50.0f, 50.0f, 200.0f, 50.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(other, 0.5f, 1.0f);
|
||||
@@ -97,8 +97,8 @@ void func_8038EAB4(Actor *this){
|
||||
particleEmitter_setParticleFramerateRange(other, 4.0f, 4.0f);
|
||||
particleEmitter_setParticleSpawnPositionRange(other, 0.0f, 200.0f, 0.0f, 0.0f, 200.0f, 0.0f);
|
||||
particleEmitter_setPosition(other, this->position);
|
||||
func_802EFB70(other, 3.0f, 3.0f);
|
||||
func_802EFB84(other, 8.0f, 8.0f);
|
||||
particleEmitter_setStartingScaleRange(other, 3.0f, 3.0f);
|
||||
particleEmitter_setFinalScaleRange(other, 8.0f, 8.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(other, 0.5f, 0.5f);
|
||||
particleEmitter_setParticleVelocityRange(other, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f);
|
||||
particleEmitter_emitN(other, 1);
|
||||
@@ -111,8 +111,8 @@ void func_8038EC14(Actor *this){
|
||||
particleEmitter_setFade(other, 0.05f, 0.1f);
|
||||
particleEmitter_setStartingFrameRange(other, 0, 7);
|
||||
particleEmitter_setPosition(other, this->position);
|
||||
func_802EFB70(other, 1.0f, 1.5f);
|
||||
func_802EFB84(other, 2.0f, 3.0f);
|
||||
particleEmitter_setStartingScaleRange(other, 1.0f, 1.5f);
|
||||
particleEmitter_setFinalScaleRange(other, 2.0f, 3.0f);
|
||||
particleEmitter_setParticleSpawnPositionRange(other, -75.0f, 25.0f, -75.0f, 75.0f, 75.0f, 75.0f);
|
||||
particleEmitter_setParticleVelocityRange(other, -70.0f, 50.0f, -70.0f, 70.0f, 100.0f, 70.0f);
|
||||
particleEmitter_setRGB(other, &RBB_D_80390DD0);
|
||||
@@ -127,7 +127,7 @@ void func_8038ED3C(Actor * actor, s32 arg1){
|
||||
func_802EFA18(other, 3);
|
||||
particleEmitter_setModel(other, arg1);
|
||||
particleEmitter_setPosition(other, actor->position);
|
||||
func_802EFB70(other, 0.05f, 0.4f);
|
||||
particleEmitter_setStartingScaleRange(other, 0.05f, 0.4f);
|
||||
particleEmitter_setAngularVelocityRange(other, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setSpawnIntervalRange(other, 0.0f, 0.01f);
|
||||
particleEmitter_setParticleLifeTimeRange(other, 10.0f, 10.0f);
|
||||
@@ -172,7 +172,7 @@ int func_8038EF08(Actor *this, f32 (*position)[3], f32 arg2){
|
||||
local->unk20[1] = sp54[1] + this->position_y;
|
||||
local->unk20[2] = sp54[2] + this->position_z;
|
||||
|
||||
local->unk20[1] = func_80309724(&local->unk20);
|
||||
local->unk20[1] = mapModel_getFloorY(&local->unk20);
|
||||
|
||||
sp40[0] = local->unk20[0];
|
||||
sp40[1] = local->unk20[1] + this->scale*100.0f;
|
||||
@@ -336,7 +336,7 @@ void func_8038F618(Actor *this){
|
||||
local->unk38 = 0;
|
||||
local->unk39 = 0;
|
||||
local->unk0 = &D_80390D80[(this->modelCacheIndex == 0x30d)? 1 : 0];
|
||||
local->unk2C = func_80309724(&this->position);
|
||||
local->unk2C = mapModel_getFloorY(&this->position);
|
||||
local->unk34 = 0;
|
||||
local->unk4 = 0.5f;
|
||||
local->unk30 = 0.0f;
|
||||
|
@@ -104,8 +104,8 @@ void func_8038C39C(Actor *this){
|
||||
particleEmitter_setStartingFrameRange(other, 0, 7);
|
||||
particleEmitter_setDrawMode(other, 4);
|
||||
particleEmitter_setPosition(other, this->position);
|
||||
func_802EFB70(other, local->unk0->unk4*1, local->unk0->unk4*3.0f);
|
||||
func_802EFB84(other, 3.0f*local->unk0->unk4, local->unk0->unk4*7.0f);
|
||||
particleEmitter_setStartingScaleRange(other, local->unk0->unk4*1, local->unk0->unk4*3.0f);
|
||||
particleEmitter_setFinalScaleRange(other, 3.0f*local->unk0->unk4, local->unk0->unk4*7.0f);
|
||||
particleEmitter_setParticleSpawnPositionRange(other,
|
||||
local->unk0->unk4*-200.0f, local->unk0->unk4*100.0f, local->unk0->unk4*-200.0f,
|
||||
local->unk0->unk4*200.0f, local->unk0->unk4*100.0f, local->unk0->unk4*200.0f
|
||||
@@ -126,8 +126,8 @@ void RBB_func_8038C538(Actor *this){
|
||||
particleEmitter_setDrawMode(other, 4);
|
||||
particleEmitter_setStartingFrameRange(other, 0, 7);
|
||||
particleEmitter_setPosition(other, this->position);
|
||||
func_802EFB70(other, local->unk0->unk4*1, local->unk0->unk4*6.0f);
|
||||
func_802EFB84(other, 0.5*local->unk0->unk4, local->unk0->unk4*3.0f);
|
||||
particleEmitter_setStartingScaleRange(other, local->unk0->unk4*1, local->unk0->unk4*6.0f);
|
||||
particleEmitter_setFinalScaleRange(other, 0.5*local->unk0->unk4, local->unk0->unk4*3.0f);
|
||||
particleEmitter_setParticleSpawnPositionRange(other,
|
||||
local->unk0->unk4*-300.0f, local->unk0->unk4*100.0f, local->unk0->unk4*-300.0f,
|
||||
local->unk0->unk4*300.0f, local->unk0->unk4*300.0f, local->unk0->unk4*300.0f
|
||||
@@ -155,7 +155,7 @@ void RBB_func_8038C70C(Actor *this){
|
||||
local->unk0->unk4 * 300.0f, local->unk0->unk4 * 200.0f, local->unk0->unk4 * 300.0f
|
||||
);
|
||||
particleEmitter_setPosition(other, this->position);
|
||||
func_802EFB70(other, local->unk0->unk4*0.3, local->unk0->unk4*0.8);
|
||||
particleEmitter_setStartingScaleRange(other, local->unk0->unk4*0.3, local->unk0->unk4*0.8);
|
||||
particleEmitter_setAngularVelocityRange(other,
|
||||
-600.0f, -600.0f, -600.0f,
|
||||
600.0f, 600.0f, 600.0f
|
||||
@@ -181,8 +181,8 @@ void func_8038C8A8(Actor * this){
|
||||
particleEmitter_setDrawMode(other, 4);
|
||||
particleEmitter_setStartingFrameRange(other, 0, 7);
|
||||
particleEmitter_setPosition(other, sp24);
|
||||
func_802EFB70(other, local->unk0->unk4*1, local->unk0->unk4*3.0f);
|
||||
func_802EFB84(other, local->unk0->unk4*3.0f, local->unk0->unk4*6.0f);
|
||||
particleEmitter_setStartingScaleRange(other, local->unk0->unk4*1, local->unk0->unk4*3.0f);
|
||||
particleEmitter_setFinalScaleRange(other, local->unk0->unk4*3.0f, local->unk0->unk4*6.0f);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(other, &D_80390CA8);
|
||||
particleEmitter_setParticleLifeTimeRange(other, 1.0f, 2.0f);
|
||||
particleEmitter_setRGB(other, &D_80390C9C);
|
||||
|
@@ -54,8 +54,8 @@ void func_8038B900(Actor *this){
|
||||
){//L8038BB24
|
||||
func_8034A174(this->marker->unk44, 5, sp48);
|
||||
other = func_802EDD8C(&sp48, 0.0f, -1300.0f);
|
||||
func_802EFB70(other, 0.04f, 0.04f);
|
||||
func_802EFB84(other, 0.18f, 0.18f);
|
||||
particleEmitter_setStartingScaleRange(other, 0.04f, 0.04f);
|
||||
particleEmitter_setFinalScaleRange(other, 0.18f, 0.18f);
|
||||
particleEmitter_setParticleSpawnPositionRange(other, -10.0f, 0.0f, -10.0f, 10.0f, 20.0f, 10.0f);
|
||||
particleEmitter_setParticleVelocityRange(other, 0.0f, 31.0f, 0.0f, 0.0f, 37.0f, 0.0f);
|
||||
particleEmitter_emitN(other, 1);
|
||||
@@ -85,12 +85,12 @@ void func_8038B900(Actor *this){
|
||||
}
|
||||
|
||||
if(this->state == 1){
|
||||
if( !this->unk138_24
|
||||
if( !this->is_first_encounter
|
||||
&& func_80329530(this, 0x258)
|
||||
&& !func_8028ECAC()
|
||||
){
|
||||
func_80311480(0xb9b, 4, 0, 0, 0, 0);
|
||||
this->unk138_24 = 1;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -131,8 +131,8 @@ void func_80387C5C(void){
|
||||
particleEmitter_setDrawMode(actor, PART_EMIT_NO_LOOP);
|
||||
particleEmitter_setStartingFrameRange(actor, 0, 0);
|
||||
particleEmitter_setParticleFramerateRange(actor, 4.0f, 4.0f);
|
||||
func_802EFB70(actor, 10.0f, 10.0f);
|
||||
func_802EFB84(actor, 15.0f, 20.0f);
|
||||
particleEmitter_setStartingScaleRange(actor, 10.0f, 10.0f);
|
||||
particleEmitter_setFinalScaleRange(actor, 15.0f, 20.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(actor, 4.0f, 4.0f);
|
||||
particleEmitter_setParticleVelocityRange(actor, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f);
|
||||
particleEmitter_emitInVolume(actor, &D_803902D4, &D_803902E0, 1);
|
||||
@@ -152,7 +152,7 @@ void func_80387E20(void){
|
||||
func_802EF9F8(actor, 0.6f);
|
||||
func_802EFA18(actor, 3);
|
||||
particleEmitter_setModel(actor, 0x427);
|
||||
func_802EFB70(actor, 0.05f, 0.4f);
|
||||
particleEmitter_setStartingScaleRange(actor, 0.05f, 0.4f);
|
||||
particleEmitter_setAngularVelocityRange(actor, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setSpawnIntervalRange(actor, 0.0f, 0.01f);
|
||||
particleEmitter_setParticleLifeTimeRange(actor, 10.0f, 10.0f);
|
||||
|
@@ -124,7 +124,7 @@ void chAttackTutorial_update(Actor *this){
|
||||
this->unk1C_z = this->position_z;}
|
||||
}
|
||||
this->unk10_12 = (ability_isUnlocked(ABILITY_C_ROLL))? 2 : (ability_isUnlocked(ABILITY_4_CLAW_SWIPE)? 1:0);
|
||||
this->initialized = 1;
|
||||
this->initialized = TRUE;
|
||||
}
|
||||
|
||||
switch(this->state){
|
||||
|
@@ -5,7 +5,7 @@
|
||||
|
||||
|
||||
//external
|
||||
f32 func_80309724(f32*);
|
||||
f32 mapModel_getFloorY(f32*);
|
||||
void func_802C4218(s32, f32, f32, f32);
|
||||
void func_803252D0(f32, s32);
|
||||
void subaddie_set_state_with_direction(Actor *, s32, f32, s32);
|
||||
@@ -223,7 +223,7 @@ void func_80387DCC(ActorMarker *marker, ActorMarker *other_marker){
|
||||
Actor *func_80387DF4(ActorMarker *marker, Gfx **gdl, Mtx **mptr, Vtx **arg3){
|
||||
Actor *actor = marker_getActor(marker);
|
||||
|
||||
if(actor->unk138_24)
|
||||
if(actor->is_first_encounter)
|
||||
func_8033A470(3, 7);
|
||||
else
|
||||
func_8033A45C(3, 0);
|
||||
@@ -320,10 +320,10 @@ void func_80388080(Actor *this){
|
||||
this->velocity_x = temp_velX;
|
||||
this->velocity_y = (local->unkC == 3) ? 90.0f : 70.0f;
|
||||
this->velocity_z = temp_velZ;
|
||||
this->unk138_24 = 1;
|
||||
this->is_first_encounter = TRUE;
|
||||
this->unk138_23 = 0;
|
||||
this->unk38_0 = 0;
|
||||
this->initialized = 1;
|
||||
this->initialized = TRUE;
|
||||
this->scale = 0.5;
|
||||
}//L80388278
|
||||
switch (this->state)
|
||||
@@ -347,7 +347,7 @@ void func_80388080(Actor *this){
|
||||
this->velocity_y -= 5.0f;
|
||||
this->scale = MIN(this->scale + 0.05, 1.0);
|
||||
if(this->velocity_y < 0.0f && this->position_y < this->unk1C_y){
|
||||
this->position_y = func_80309724(this->position);
|
||||
this->position_y = mapModel_getFloorY(this->position);
|
||||
if(local->unkC == 3)
|
||||
func_80387F00(this);
|
||||
|
||||
@@ -483,7 +483,7 @@ void func_80388080(Actor *this){
|
||||
sp54[2] = this->position_z;
|
||||
if(local->unkC == 1)
|
||||
sp54[1] += 150.0f;
|
||||
this->unk138_24 = 0;
|
||||
this->is_first_encounter = FALSE;
|
||||
func_80387A80(partEmitMgr_newEmitter(3), sp54, 3, (local->unkC == 1)? 0x4f0: 0x4f1);
|
||||
}//L80388CC4
|
||||
|
||||
|
@@ -233,8 +233,8 @@ void func_803892C8(ActorMarker *marker, enum asset_e text_id, s32 arg2){
|
||||
break;
|
||||
|
||||
case ASSET_E1D_TEXT_BOTTLES_TUTORIAL_OFFER_WAIT: /* 2FFC 803893EC 920B0138 */
|
||||
actor->unk138_24 = 0;
|
||||
actor->unk60 = 0.0f;
|
||||
actor->is_first_encounter = FALSE;
|
||||
actor->lifetime_value = 0.0f;
|
||||
break;
|
||||
|
||||
case ASSET_DF6_TEXT_BOTTLES_HIGH_JUMP_LEARN: /* 3014 80389404 0C0A3E46 */
|
||||
@@ -406,7 +406,7 @@ void chsmmole_Update(Actor * this){
|
||||
if(!this->initialized){
|
||||
this->marker->propPtr->unk8_3 = 0;
|
||||
actor_collisionOff(this);
|
||||
this->initialized = 1;
|
||||
this->initialized = TRUE;
|
||||
marker_setFreeMethod(this->marker, func_80389984);
|
||||
if(this->unkF4_8 == 1 || this->unkF4_8 == 8){//L80389A30
|
||||
sp40 = func_80304C38(0x349, this);
|
||||
@@ -557,7 +557,7 @@ void chsmmole_Update(Actor * this){
|
||||
}//L8038A1B8
|
||||
user_input = -1;
|
||||
if(this->unk38_0){
|
||||
this->unk60 += time_getDelta();
|
||||
this->lifetime_value += time_getDelta();
|
||||
if(func_803114C4() != 0xe1d){
|
||||
if(sp50[FACE_BUTTON(BUTTON_A)] == 1)
|
||||
user_input = 1; //A button pressed
|
||||
@@ -572,9 +572,9 @@ void chsmmole_Update(Actor * this){
|
||||
chsmmole_skipIntroTutorial(); //give all SM moves
|
||||
}
|
||||
this->unk38_0 = 0;
|
||||
}else if(!this->unk138_24 && 5.0 < this->unk60){
|
||||
}else if(!this->is_first_encounter && 5.0 < this->lifetime_value){
|
||||
func_80311480(0xe1d, 0x86, this->position, this->marker, func_803892C8, NULL);
|
||||
this->unk138_24 = 1;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@@ -74,7 +74,7 @@ void SM_func_8038A5D8(Actor *this){
|
||||
this->unk1C_y = this->position_y;
|
||||
this->unk1C_z = this->position_z;
|
||||
}//L8038A644
|
||||
this->initialized = 1;
|
||||
this->initialized = TRUE;
|
||||
}//L8038A650
|
||||
|
||||
func_8024E55C(0, sp44);
|
||||
|
@@ -76,8 +76,8 @@ void func_80386B04(ParticleEmitter *p_ctrl, f32 *arg1, s32 arg2, f32 arg3) {
|
||||
particleEmitter_setModel(p_ctrl, 0x42E);
|
||||
particleEmitter_setPosition(p_ctrl, arg1);
|
||||
particleEmitter_setDrawMode(p_ctrl, 2);
|
||||
func_802EFB70(p_ctrl, arg3, arg3);
|
||||
func_802EFB84(p_ctrl, arg3, arg3);
|
||||
particleEmitter_setStartingScaleRange(p_ctrl, arg3, arg3);
|
||||
particleEmitter_setFinalScaleRange(p_ctrl, arg3, arg3);
|
||||
particleEmitter_setAngularVelocityRange(p_ctrl, -100.0f, -100.0f, -100.0f, 100.0f, 100.0f, 100.0f);
|
||||
particleEmitter_setSpawnIntervalRange(p_ctrl, 0.00f, 0.01f);
|
||||
particleEmitter_setParticleLifeTimeRange(p_ctrl, 2.0f, 2.0f);
|
||||
@@ -91,8 +91,8 @@ void func_80386C2C(ParticleEmitter *p_ctrl, f32 *arg1, s32 arg2, f32 arg3) {
|
||||
particleEmitter_setFade(p_ctrl, 0.00f, 0.01f);
|
||||
particleEmitter_setStartingFrameRange(p_ctrl, 0, 7);
|
||||
particleEmitter_setPosition(p_ctrl, arg1);
|
||||
func_802EFB70(p_ctrl, (arg3 * 0.1), (arg3 * 0.5));
|
||||
func_802EFB84(p_ctrl, (arg3 * 1.5), (arg3 * 3.0));
|
||||
particleEmitter_setStartingScaleRange(p_ctrl, (arg3 * 0.1), (arg3 * 0.5));
|
||||
particleEmitter_setFinalScaleRange(p_ctrl, (arg3 * 1.5), (arg3 * 3.0));
|
||||
particleEmitter_setSpawnIntervalRange(p_ctrl, 0.0f, 0.01f);
|
||||
particleEmitter_setParticleLifeTimeRange(p_ctrl, 1.5f, 2.0f);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(p_ctrl, &D_8038AB9C);
|
||||
|
@@ -117,7 +117,7 @@ void func_80387774(Actor **this_ptr){
|
||||
&& func_8028FC34()
|
||||
){
|
||||
func_8028FA34(!mapSpecificFlags_get(0)? 0x149 : 0x14a, *this_ptr);
|
||||
(*this_ptr)->unk138_24 = TRUE;
|
||||
(*this_ptr)->is_first_encounter = TRUE;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -146,11 +146,11 @@ void func_803878CC(Actor * this){
|
||||
}//L80387970
|
||||
|
||||
if(func_80329530(this, 250) && !func_80329530(this, 80)
|
||||
&& !this->unk138_24
|
||||
&& !this->is_first_encounter
|
||||
&& item_getCount(ITEM_18_GOLD_BULLIONS) == 0
|
||||
){
|
||||
func_80311480(0xa0b, 0xe, this->position, this->marker, func_80387520, NULL);
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
subaddie_set_state_forward(this, 3);
|
||||
}
|
||||
|
||||
@@ -161,7 +161,7 @@ void func_803878CC(Actor * this){
|
||||
func_80311480(0xa0c, 4, NULL, NULL, NULL, NULL);
|
||||
|
||||
this->unk138_23 = TRUE;
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
|
||||
}//L80387A54
|
||||
|
||||
|
@@ -160,7 +160,7 @@ void __chClam_emitLargeShellParticles(f32 position[3], s32 count){
|
||||
particleEmitter_setModel(pCtrl, ASSET_37C_MODEL_CLAM_LARGE_SHELL_PIECE);
|
||||
particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C3F4);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
func_802EFB70(pCtrl, 1.0f, 1.0f);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 1.0f, 1.0f);
|
||||
particleEmitter_emitN(pCtrl, count);
|
||||
}
|
||||
|
||||
@@ -176,7 +176,7 @@ void __chClam_emitEyeParticles(f32 position[3], s32 count){
|
||||
particleEmitter_setModel(pCtrl, ASSET_37D_MODEL_CLAM_EYE);
|
||||
particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C424);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, -300.0f, -300.0f, -300.0f, 300.0f, 300.0f, 300.0f);
|
||||
func_802EFB70(pCtrl, 1.0f, 1.0f);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 1.0f, 1.0f);
|
||||
particleEmitter_emitN(pCtrl, count);
|
||||
}
|
||||
|
||||
@@ -192,7 +192,7 @@ void __chClam_emitSmallShellParticles(f32 position[3], s32 count){
|
||||
particleEmitter_setModel(pCtrl, ASSET_37E_MODEL_CLAM_SMALL_SHELL_PIECE);
|
||||
particleEmitter_setVelocityAndAccelerationRanges(pCtrl, &D_8038C454);
|
||||
particleEmitter_setAngularVelocityRange(pCtrl, -800.0f, -800.0f, -800.0f, 800.0f, 800.0f, 800.0f);
|
||||
func_802EFB70(pCtrl, 0.5f, 0.8f);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 0.5f, 0.8f);
|
||||
particleEmitter_emitN(pCtrl, count);
|
||||
}
|
||||
|
||||
@@ -277,7 +277,7 @@ void chClam_update(Actor *this){
|
||||
}
|
||||
|
||||
if(this->state != 3){
|
||||
sp48 = func_80309724(this->position);
|
||||
sp48 = mapModel_getFloorY(this->position);
|
||||
if(sp4C != NULL){
|
||||
sp44 = sp4C->marker->id;
|
||||
}
|
||||
|
@@ -54,12 +54,12 @@ void chLeaky_update(Actor *this) {
|
||||
}
|
||||
}
|
||||
if( this->state == 1
|
||||
&& !this->unk138_24
|
||||
&& !this->is_first_encounter
|
||||
&& func_80329530(this, 250) && !func_80329530(this, 160)
|
||||
&& !func_8028ECAC()
|
||||
&& func_80311480(0xA1A, 0, NULL, NULL, NULL, NULL)
|
||||
){
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
if (func_803114B0() == 0) {
|
||||
if (actor_animationIsAt(this, 0.83f)) {
|
||||
|
@@ -75,7 +75,7 @@ void func_80389600(Actor *this){
|
||||
s32 tmp_v1;
|
||||
int i;
|
||||
|
||||
if( !this->unk138_24
|
||||
if( !this->is_first_encounter
|
||||
&& this->unkF4_8 == 0xA
|
||||
&& !jiggyscore_isCollected(JIGGY_13_TTC_LOCKUP)
|
||||
&& func_80329530(this, 320)
|
||||
@@ -83,7 +83,7 @@ void func_80389600(Actor *this){
|
||||
&& !func_8028ECAC()
|
||||
&& func_80311480(0xA15, 0, NULL, NULL, NULL, NULL)
|
||||
){
|
||||
this->unk138_24 = 1;
|
||||
this->is_first_encounter = TRUE;
|
||||
}//L803896AC
|
||||
|
||||
if(!this->unk16C_4){
|
||||
|
@@ -68,7 +68,7 @@ Actor *func_80387EB0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) {
|
||||
void TTC_func_80387F18(Actor *this) {
|
||||
subaddie_set_state_looped(this, 3);
|
||||
this->unk1C[0] = 0.0f;
|
||||
switch((s32)this->unk60){
|
||||
switch((s32)this->lifetime_value){
|
||||
case 0x78:
|
||||
animctrl_setDuration(this->animctrl, 1.2f);
|
||||
break;
|
||||
@@ -126,7 +126,7 @@ void func_80388178(ActorMarker *this_marker, ActorMarker *other_marker) {
|
||||
this = marker_getActor(this_marker);
|
||||
func_8032B4DC(this, other_marker, 7);
|
||||
|
||||
if (this->unk60 == 40.0f) {
|
||||
if (this->lifetime_value == 40.0f) {
|
||||
subaddie_set_state_with_direction(this, 6, 0.01f, 1);
|
||||
actor_playAnimationOnce(this);
|
||||
for(i = 0; i < 3; i++){
|
||||
@@ -139,14 +139,14 @@ void func_80388178(ActorMarker *this_marker, ActorMarker *other_marker) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (this->unk60 == 80.0f) {
|
||||
if (this->lifetime_value == 80.0f) {
|
||||
TTC_func_80387FF4(this);
|
||||
this->unk60 = 40.0f;
|
||||
this->lifetime_value = 40.0f;
|
||||
return;
|
||||
}
|
||||
|
||||
TTC_func_80387FF4(this);
|
||||
this->unk60 = 80.0f;
|
||||
this->lifetime_value = 80.0f;
|
||||
func_80311480(0xA10, 4, NULL, NULL, NULL, NULL);
|
||||
return;
|
||||
}
|
||||
@@ -167,7 +167,7 @@ void func_80388344(ActorMarker * this_marker, ActorMarker *other_marker){
|
||||
if(other_marker->id == 1){
|
||||
this = marker_getActor(this_marker);
|
||||
if( !mapSpecificFlags_get(7)
|
||||
&& this->unk138_24
|
||||
&& this->is_first_encounter
|
||||
&& func_80311480(0xa0f, 0, NULL, NULL, NULL, NULL)
|
||||
){
|
||||
mapSpecificFlags_set(7, TRUE);
|
||||
@@ -178,7 +178,7 @@ void func_80388344(ActorMarker * this_marker, ActorMarker *other_marker){
|
||||
void func_803883C8(ActorMarker * this_marker, ActorMarker *other_marker){
|
||||
Actor *this = marker_getActor(this_marker);
|
||||
if( !this->unk138_23
|
||||
&& this->unk138_24
|
||||
&& this->is_first_encounter
|
||||
&& func_80311480(0xa11, 0, NULL, NULL, NULL, NULL)
|
||||
){
|
||||
this->unk138_23 = TRUE;
|
||||
@@ -221,7 +221,7 @@ void func_80388434(Actor *this){
|
||||
if(!this->initialized){
|
||||
animctrl_setTransitionDuration(this->animctrl, 0.35f);
|
||||
subaddie_set_state_with_direction(this, 1, 0.01f, 1);
|
||||
this->unk60 = 120.0f;
|
||||
this->lifetime_value = 120.0f;
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
marker_setCollisionScripts(this->marker, func_803883C8, func_80388344, func_80388178);
|
||||
func_803300C0(this->marker, func_803882E4);
|
||||
@@ -229,13 +229,13 @@ void func_80388434(Actor *this){
|
||||
}//L8038860C
|
||||
if(func_8038812C(this)){
|
||||
temp_v0 = func_8028ECAC();
|
||||
if( !this->unk138_24
|
||||
if( !this->is_first_encounter
|
||||
&& temp_v0 != 1
|
||||
&& temp_v0 != 10
|
||||
){
|
||||
subaddie_set_state_with_direction(this, 5, 0.01f, 1);
|
||||
if(func_80311480(0xa0e, 0xf, this->position, this->marker, TTC_func_80387FB0, NULL)){
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
comusic_8025AB44(COMUSIC_12_TTC_NIPPER, 5000, 300);
|
||||
ncStaticCamera_setToNode(11);
|
||||
@@ -262,7 +262,7 @@ void func_80388434(Actor *this){
|
||||
break;
|
||||
}
|
||||
|
||||
if(this->unk60 <= this->unk38_31){
|
||||
if(this->lifetime_value <= this->unk38_31){
|
||||
TTC_func_80387F18(this);
|
||||
break;
|
||||
}
|
||||
|
@@ -34,12 +34,12 @@ void __chtreasure_updatePosition(Actor *this){
|
||||
this->position[1] = this->unk1C[1];\
|
||||
this->position[2] = this->unk1C[2];
|
||||
|
||||
this->position[0] += this->unk5C*cosf(this->unk60);
|
||||
this->position[2] += this->unk5C*sinf(this->unk60);
|
||||
this->unk60 += 2.0*time_getDelta()*this->unk5C/300.0;
|
||||
if(2*M_PI <= this->unk60)
|
||||
this->unk60 -= 2*M_PI;
|
||||
this->yaw = this->unk60*180.0/M_PI;
|
||||
this->position[0] += this->unk5C*cosf(this->lifetime_value);
|
||||
this->position[2] += this->unk5C*sinf(this->lifetime_value);
|
||||
this->lifetime_value += 2.0*time_getDelta()*this->unk5C/300.0;
|
||||
if(2*M_PI <= this->lifetime_value)
|
||||
this->lifetime_value -= 2*M_PI;
|
||||
this->yaw = this->lifetime_value*180.0/M_PI;
|
||||
}
|
||||
|
||||
void chtreasure_update(Actor *this){
|
||||
@@ -54,7 +54,7 @@ void chtreasure_update(Actor *this){
|
||||
}
|
||||
actor_collisionOff(this);
|
||||
this->scale = 0.5f;
|
||||
this->unk60 = M_PI/2;
|
||||
this->lifetime_value = M_PI/2;
|
||||
this->unk5C = 0.0f;
|
||||
this->unk1C[0] = this->position[0];
|
||||
this->unk1C[1] = this->position[1];
|
||||
|
@@ -2,7 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
extern f32 func_80309724(f32[3]);
|
||||
extern f32 mapModel_getFloorY(f32[3]);
|
||||
extern void func_8028F45C(s32, f32[3]);
|
||||
|
||||
typedef struct {
|
||||
@@ -92,11 +92,11 @@ void func_80389A1C(void) {
|
||||
Actor *actor;
|
||||
ActorLocal_TreasureHunt *local;
|
||||
|
||||
actor = func_8032813C(0x55, D_8038C820[D_8037DCB4], 0);
|
||||
actor = spawn_actor_f32(0x55, D_8038C820[D_8037DCB4], 0);
|
||||
local = (ActorLocal_TreasureHunt *)&actor->local;
|
||||
actor->yaw = D_8038C868[D_8037DCB4];
|
||||
local->unk0 = D_8037DCB4;
|
||||
actor->unk60 = 0.0f;
|
||||
actor->lifetime_value = 0.0f;
|
||||
actor->state = 0;
|
||||
}
|
||||
|
||||
@@ -105,11 +105,11 @@ void func_80389A9C(void) {
|
||||
ActorLocal_TreasureHunt *local;
|
||||
s32 actor_id;
|
||||
|
||||
actor = func_8032813C((D_8038C898 - 1)[D_8037DCB4], D_8038C820[D_8037DCB4 - 1], 0);
|
||||
actor = spawn_actor_f32((D_8038C898 - 1)[D_8037DCB4], D_8038C820[D_8037DCB4 - 1], 0);
|
||||
local = (ActorLocal_TreasureHunt *)&actor->local;
|
||||
actor->yaw = D_8038C880[D_8037DCB4 - 1];
|
||||
local->unk0 = D_8037DCB4;
|
||||
actor->unk60 = 0.0f;
|
||||
actor->lifetime_value = 0.0f;
|
||||
actor->state = 0;
|
||||
}
|
||||
|
||||
@@ -156,7 +156,7 @@ void func_80389CC4(s16 arg0[3], s32 arg1){
|
||||
D_8038D708[0] = (f32)arg0[0];
|
||||
D_8038D708[1] = (f32)arg0[1];
|
||||
D_8038D708[2] = (f32)arg0[2];
|
||||
D_8038D708[1] = func_80309724(D_8038D708);
|
||||
D_8038D708[1] = mapModel_getFloorY(D_8038D708);
|
||||
__spawnQueue_add_4((GenFunction_4)func_802C4140, 0xF4, reinterpret_cast(s32, D_8038D708[0]), reinterpret_cast(s32, D_8038D708[1]), reinterpret_cast(s32, D_8038D708[2]));
|
||||
D_8038D700 = partEmitMgr_newEmitter(3);
|
||||
particleEmitter_setRGB(D_8038D700, D_8038C91C);
|
||||
@@ -192,8 +192,8 @@ void TTC_func_80389E90(Actor *this){
|
||||
|
||||
switch(this->state){
|
||||
case 0://L80389F20
|
||||
this->unk60 = MIN(255.0, this->unk60 + tick*150.0);
|
||||
if(255.0 == this->unk60){
|
||||
this->lifetime_value = MIN(255.0, this->lifetime_value + tick*150.0);
|
||||
if(255.0 == this->lifetime_value){
|
||||
this->state = 1;
|
||||
}
|
||||
break;
|
||||
@@ -203,12 +203,12 @@ void TTC_func_80389E90(Actor *this){
|
||||
}
|
||||
break;
|
||||
case 2://L80389FC4
|
||||
this->unk60 = MAX(0.0, this->unk60 - tick*((this->marker->modelId == ASSET_3EA_MODEL_RED_X)? 200.0 : 150.0));
|
||||
if(0.0 == this->unk60)
|
||||
this->lifetime_value = MAX(0.0, this->lifetime_value - tick*((this->marker->modelId == ASSET_3EA_MODEL_RED_X)? 200.0 : 150.0));
|
||||
if(0.0 == this->lifetime_value)
|
||||
marker_despawn(this->marker);
|
||||
break;
|
||||
}//L8038A094
|
||||
actor_setOpacity(this, (s32)this->unk60);
|
||||
actor_setOpacity(this, (s32)this->lifetime_value);
|
||||
this->depth_mode = 2;
|
||||
}
|
||||
|
||||
|
@@ -366,12 +366,12 @@ void func_8025A58C(s32 arg0, s32 arg1){
|
||||
}
|
||||
|
||||
|
||||
void func_8025A5AC(enum comusic_e comusic_id, s32 arg1, s32 arg2){
|
||||
void func_8025A5AC(enum comusic_e comusic_id, s32 volume, s32 arg2){
|
||||
CoMusic *tmp_a2;
|
||||
s32 sp20;
|
||||
|
||||
if(arg1 == -1){
|
||||
arg1 = func_80250034(comusic_id);
|
||||
if(volume == -1){
|
||||
volume = func_80250034(comusic_id);
|
||||
}
|
||||
|
||||
tmp_a2 = __find_track(comusic_id);
|
||||
@@ -393,20 +393,20 @@ void func_8025A5AC(enum comusic_e comusic_id, s32 arg1, s32 arg2){
|
||||
tmp_a2->unk12 = 0;
|
||||
tmp_a2->unk15 = 0;
|
||||
tmp_a2->unk4 = 0.0f;
|
||||
func_80259994(tmp_a2, arg1);
|
||||
func_80259994(tmp_a2, volume);
|
||||
func_8024FC1C(sp20, comusic_id);
|
||||
}
|
||||
func_8024FD28(sp20, (s16) arg1);
|
||||
tmp_a2->unk8 = arg1;
|
||||
func_8024FD28(sp20, (s16) volume);
|
||||
tmp_a2->unk8 = volume;
|
||||
|
||||
}
|
||||
|
||||
void func_8025A6CC(enum comusic_e arg0, s32 arg1){
|
||||
func_8025A5AC(arg0, arg1, 0);
|
||||
void func_8025A6CC(enum comusic_e track_id, s32 volume){
|
||||
func_8025A5AC(track_id, volume, 0);
|
||||
}
|
||||
|
||||
void func_8025A6EC(enum comusic_e track_id, s32 arg1){
|
||||
func_8025A5AC(track_id, arg1, 1);
|
||||
void func_8025A6EC(enum comusic_e track_id, s32 volume){
|
||||
func_8025A5AC(track_id, volume, 1);
|
||||
}
|
||||
|
||||
//comusic_queueTrack
|
||||
|
@@ -159,7 +159,7 @@ void __baMarker_8028B9A8(s32 arg0){
|
||||
s32 ideal_yaw[3];
|
||||
|
||||
tmp_v0 = cubeList_findNodePropByActorId(0x1F6, 0);
|
||||
func_80304D4C(tmp_v0, &ideal_yaw);
|
||||
nodeprop_getPosition_s32(tmp_v0, &ideal_yaw);
|
||||
func_802CA1CC(arg0);
|
||||
func_8032811C(ACTOR_47_EMPTY_HONEYCOMB, &ideal_yaw, 0);
|
||||
func_8025A6EC(COMUSIC_2B_DING_B, 28000);
|
||||
|
@@ -74,8 +74,8 @@ void __bsDroneEnter_initParticleTypes(ParticleEmitter *p_ctrl, enum asset_e spri
|
||||
particleEmitter_manualFree(p_ctrl);
|
||||
particleEmitter_setSprite(p_ctrl, sprite_id);
|
||||
particleEmitter_setFade(p_ctrl, 0.3f, 0.8f);
|
||||
func_802EFB70(p_ctrl, 0.15f, 0.22f);
|
||||
func_802EFB84(p_ctrl, 0.03f, 0.05f);
|
||||
particleEmitter_setStartingScaleRange(p_ctrl, 0.15f, 0.22f);
|
||||
particleEmitter_setFinalScaleRange(p_ctrl, 0.03f, 0.05f);
|
||||
particleEmitter_setAngularVelocityRange(p_ctrl, 0.0f, 0.0f, 300.0f, 0.0f, 0.0f, 300.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(p_ctrl, 0.55f, 0.55f);
|
||||
}
|
||||
|
@@ -60,8 +60,8 @@ void __bsDroneVanish_particleEmitInit(ParticleEmitter *p_ctrl, enum asset_e spri
|
||||
particleEmitter_setSprite(p_ctrl, sprite_id);
|
||||
particleEmitter_setFade(p_ctrl, 0.3f, 0.8f);
|
||||
particleEmitter_setParticleSpawnPositionRange(p_ctrl, -45.0f, 0.0f, -45.0f, 45.0f, 0.0f, 45.0f);
|
||||
func_802EFB70(p_ctrl, 0.15f, 0.22f);
|
||||
func_802EFB84(p_ctrl, 0.03f, 0.05f);
|
||||
particleEmitter_setStartingScaleRange(p_ctrl, 0.15f, 0.22f);
|
||||
particleEmitter_setFinalScaleRange(p_ctrl, 0.03f, 0.05f);
|
||||
particleEmitter_setAngularVelocityRange(p_ctrl, 0.0f, 0.0f, 300.0f, 0.0f, 0.0f, 300.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(p_ctrl, 0.55f, 0.55f);
|
||||
}
|
||||
|
@@ -37,7 +37,7 @@ void func_802AF7A0(ParticleEmitter *arg0, enum asset_e arg1){
|
||||
particleEmitter_setSprite(arg0, arg1);
|
||||
particleEmitter_setParticleAccelerationRange(arg0, 0.0f, -50.0f, 0.0f, 0.0f, -50.0f, 0.0f);
|
||||
particleEmitter_setFade(arg0, 0.4f, 0.8f);
|
||||
func_802EFB84(arg0, 0.03f, 0.03f);
|
||||
particleEmitter_setFinalScaleRange(arg0, 0.03f, 0.03f);
|
||||
particleEmitter_setAngularVelocityRange(arg0, 0.0f, 0.0f, 300.0f, 0.0f, 0.0f, 300.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(arg0, 0.65f, 0.65f);
|
||||
func_802EFF50(arg0, 1.0f);
|
||||
@@ -48,7 +48,7 @@ void func_802AF88C(ParticleEmitter * arg0, f32 arg1, f32 arg2){
|
||||
arg1*30.0f, 10.0f, arg2*30.0f,
|
||||
arg1*30.0f, 10.0f, arg2*30.0f
|
||||
);
|
||||
func_802EFB70(arg0, D_8037D470.unk14, D_8037D470.unk14);
|
||||
particleEmitter_setStartingScaleRange(arg0, D_8037D470.unk14, D_8037D470.unk14);
|
||||
}
|
||||
|
||||
void func_802AF900(void){
|
||||
@@ -148,8 +148,8 @@ void func_802AFBB8(f32 arg0[3]){
|
||||
particleEmitter_setFade(s0, 0.7f, 0.8f);
|
||||
particleEmitter_setParticleFramerateRange(s0, 12.0f, 12.0f);
|
||||
particleEmitter_setPosition(s0, arg0);
|
||||
func_802EFB70(s0, 3.2f, 3.2f);
|
||||
func_802EFB84(s0, 3.2f, 3.2f);
|
||||
particleEmitter_setStartingScaleRange(s0, 3.2f, 3.2f);
|
||||
particleEmitter_setFinalScaleRange(s0, 3.2f, 3.2f);
|
||||
particleEmitter_setParticleLifeTimeRange(s0, 0.8f, 0.8f);
|
||||
particleEmitter_emitN(s0, 1);
|
||||
|
||||
@@ -158,8 +158,8 @@ void func_802AFBB8(f32 arg0[3]){
|
||||
particleEmitter_setFade(s0, 0.1f, 0.8f);
|
||||
particleEmitter_setParticleFramerateRange(s0, 15.0f, 15.0f);
|
||||
particleEmitter_setPosition(s0, arg0);
|
||||
func_802EFB70(s0, 3.0f, 3.0f);
|
||||
func_802EFB84(s0, 3.0f, 3.0f);
|
||||
particleEmitter_setStartingScaleRange(s0, 3.0f, 3.0f);
|
||||
particleEmitter_setFinalScaleRange(s0, 3.0f, 3.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(s0, 0.65f, 0.65f);
|
||||
particleEmitter_emitN(s0, 1);
|
||||
|
||||
@@ -167,8 +167,8 @@ void func_802AFBB8(f32 arg0[3]){
|
||||
particleEmitter_setSprite(s0, ASSET_713_SPRITE_SPARKLE_YELLOW); //sparkle
|
||||
particleEmitter_setVelocityAndAccelerationRanges(s0, &D_80364BB0);
|
||||
particleEmitter_setFade(s0, 0.0f, 0.6f);
|
||||
func_802EFB70(s0, 0.28f, 0.32f);
|
||||
func_802EFB84(s0, 0.03f, 0.03f);
|
||||
particleEmitter_setStartingScaleRange(s0, 0.28f, 0.32f);
|
||||
particleEmitter_setFinalScaleRange(s0, 0.03f, 0.03f);
|
||||
particleEmitter_setAngularVelocityRange(s0, 0.0f, 0.0f, 300.0f, 0.0f, 0.0f, 300.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(s0, 2.0f, 2.0f);
|
||||
func_802EFF50(s0, 1.0f);
|
||||
@@ -187,8 +187,8 @@ void func_802AFBB8(f32 arg0[3]){
|
||||
particleEmitter_setSprite(s0, ASSET_716_SPRITE_SPARKLE_WHITE); //sparkle
|
||||
particleEmitter_setVelocityAndAccelerationRanges(s0, &D_80364C40);
|
||||
particleEmitter_setFade(s0, 0.0f, 0.6f);
|
||||
func_802EFB70(s0, 0.28f, 0.32f);
|
||||
func_802EFB84(s0, 0.03f, 0.03f);
|
||||
particleEmitter_setStartingScaleRange(s0, 0.28f, 0.32f);
|
||||
particleEmitter_setFinalScaleRange(s0, 0.03f, 0.03f);
|
||||
particleEmitter_setAngularVelocityRange(s0, 0.0f, 0.0f, 300.0f, 0.0f, 0.0f, 300.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(s0, 2.0f, 2.0f);
|
||||
func_802EFF50(s0, 1.0f);
|
||||
|
@@ -24,7 +24,7 @@ f32 D_8037DE20[3];
|
||||
void chBadShad_update(Actor *this){
|
||||
s32 iVar1;
|
||||
if(!this->initialized){
|
||||
this->initialized = 1;
|
||||
this->initialized = TRUE;
|
||||
this->marker->collidable = 0;
|
||||
}
|
||||
if(!this->despawn_flag && this->unk1C_x < (f32)(globalTimer_getTime() - 1) ){
|
||||
|
@@ -121,7 +121,7 @@ void func_802C6240(Actor *this){
|
||||
this->marker->dieFunc = func_802C61C0;
|
||||
this->marker->collisionFunc = func_802C60AC;
|
||||
this->marker->collision2Func = func_802C6150;
|
||||
this->unk138_24 = 0;
|
||||
this->is_first_encounter = FALSE;
|
||||
this->unk16C_0 = 1;
|
||||
this->initialized = TRUE;
|
||||
return;
|
||||
@@ -291,14 +291,14 @@ void func_802C6240(Actor *this){
|
||||
actor_playAnimationOnce(this);
|
||||
if(actor_animationIsAt(this, 0.95f)){
|
||||
subaddie_set_state_with_direction(this, 0xe, 0.99f, 1);
|
||||
this->unk60 = 4.0f;
|
||||
this->lifetime_value = 4.0f;
|
||||
}
|
||||
break;
|
||||
|
||||
case 0xe: //L802C6C7C
|
||||
actor_playAnimationOnce(this);
|
||||
this->unk60 -= time_getDelta();
|
||||
if(this->unk60 <= 0.0f){
|
||||
this->lifetime_value -= time_getDelta();
|
||||
if(this->lifetime_value <= 0.0f){
|
||||
this->unk166 = 0x63;
|
||||
subaddie_set_state_forward(this, 0xF);
|
||||
}
|
||||
|
@@ -436,7 +436,7 @@ void chBottlesBonus_startTimer(s32 arg0, s32 arg1, s32 arg2) {
|
||||
|
||||
actor = marker_getActor(chBottlesBonusMarker);
|
||||
actor->state = 4;
|
||||
actor->unk60 = 0.0f;
|
||||
actor->lifetime_value = 0.0f;
|
||||
timedFunc_set_2(0.25f, item_set, ITEM_6_HOURGLASS, TRUE);
|
||||
timedFunc_set_2(0.25f, item_set, ITEM_0_HOURGLASS_TIMER, D_803681A0[chBottleBonusPuzzleIndex + 1].time_seconds * 60 - 1);
|
||||
}
|
||||
@@ -456,7 +456,7 @@ void chBottlesBonus_update(Actor *this) {
|
||||
if (!this->unk16C_4) {
|
||||
this->unk16C_4 = TRUE;
|
||||
actor_collisionOff(this);
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
D_8037DEB4 = D_8037DEB0 = 0;
|
||||
marker_setFreeMethod(this->marker, chBottlesBonus_free);
|
||||
if (chBottleBonusBookselfModelBin == 0) {
|
||||
@@ -502,11 +502,11 @@ void chBottlesBonus_update(Actor *this) {
|
||||
}
|
||||
}
|
||||
}
|
||||
this->unk60 += sp50;
|
||||
this->lifetime_value += sp50;
|
||||
switch(this->state){
|
||||
case 1:
|
||||
if ((this->unk60 > 2.0) && gctransition_done()) {
|
||||
this->unk60 = 0.0f;
|
||||
if ((this->lifetime_value > 2.0) && gctransition_done()) {
|
||||
this->lifetime_value = 0.0f;
|
||||
func_8025A6EC(COMUSIC_98_BBONUS_PIECES_SHUFFLE, -1);
|
||||
comusic_8025AB44(COMUSIC_95_BBONUS_A, 0, 2000);
|
||||
func_8025AABC(COMUSIC_95_BBONUS_A);
|
||||
@@ -532,7 +532,7 @@ void chBottlesBonus_update(Actor *this) {
|
||||
case 3:
|
||||
break;
|
||||
case 4:
|
||||
if (this->unk60 > 2.0) {
|
||||
if (this->lifetime_value > 2.0) {
|
||||
func_8025AEA0(COMUSIC_94_BBONUS, ((item_getCount(ITEM_0_HOURGLASS_TIMER) * 0x201D2) / (s32) ((D_803681A0[chBottleBonusPuzzleIndex + 1].time_seconds * 60) - 1)) + 330000);
|
||||
if ((item_getCount(ITEM_6_HOURGLASS) == 0) && (chBottlesBonusCursor_isPuzzleCompleted() == 0)) {
|
||||
chBottlesBonus_lose(&D_8037DCC9, 0xE26);
|
||||
@@ -547,7 +547,7 @@ void chBottlesBonus_update(Actor *this) {
|
||||
void __chBottlesBonus_spawn(void){
|
||||
Actor *actor;
|
||||
if(chBottlesBonusMarker == NULL){
|
||||
actor = func_8032813C(0x1E0, D_803682C4, 0);
|
||||
actor = spawn_actor_f32(0x1E0, D_803682C4, 0);
|
||||
chBottlesBonusMarker = actor->marker;
|
||||
chBottlesBonusCursor_spawn();
|
||||
func_802DF270();
|
||||
|
@@ -168,7 +168,7 @@ void chBottlesBonusCursor_draw(Gfx **gfx, Mtx **mtx, Vtx **vtx) {
|
||||
}
|
||||
|
||||
ActorMarker *chBottlesBonusCursor_spawn(void){
|
||||
Actor *this = func_8032813C(0x2B4, D_80368400, 0);
|
||||
Actor *this = spawn_actor_f32(0x2B4, D_80368400, 0);
|
||||
chBottlesBonusCursorMarker = this->marker;
|
||||
return chBottlesBonusCursorMarker;
|
||||
}
|
||||
|
@@ -29,8 +29,8 @@ int __chBubble_func_802C5C70(f32 arg0[3], f32 arg1, ActorMarker *marker){
|
||||
this->position_y = arg0[1] - arg1/2;
|
||||
this->position_z = arg0[2];
|
||||
func_8032AA58(this, arg1/200.0);
|
||||
this->unk60 -= time_getDelta();
|
||||
if(this->unk60 < 0.0f){
|
||||
this->lifetime_value -= time_getDelta();
|
||||
if(this->lifetime_value < 0.0f){
|
||||
sp1C = 1;
|
||||
}
|
||||
if(sp1C)
|
||||
@@ -56,6 +56,6 @@ void chBubble_update(Actor *this){
|
||||
marker_setCollisionScripts(this->marker, __chBubble_collisionCallback, NULL, NULL);
|
||||
marker_setFreeMethod(this->marker, __chBubble_freeCallback);
|
||||
func_802F32C4(func_8032994C(), this->position, 200.0f, this->marker, __chBubble_func_802C5C70);
|
||||
this->unk60 = 10.0f;
|
||||
this->lifetime_value = 10.0f;
|
||||
}
|
||||
}
|
||||
|
@@ -88,7 +88,7 @@ bool chCollectible_collectItem(Actor* actor, enum file_progress_e arg1, enum ass
|
||||
if(!actor || !actor->unk38_0)
|
||||
return TRUE;
|
||||
|
||||
actor->unk60 = arg5;
|
||||
actor->lifetime_value = arg5;
|
||||
chCollectible_setState(actor, 1);
|
||||
return FALSE;
|
||||
}
|
||||
@@ -160,8 +160,8 @@ void chCollectible_update(Actor *this) {
|
||||
|
||||
switch (this->state) {
|
||||
case 1:
|
||||
if (this->unk60 > 0.0) {
|
||||
this->unk60 -= time_getDelta();
|
||||
if (this->lifetime_value > 0.0) {
|
||||
this->lifetime_value -= time_getDelta();
|
||||
} else {
|
||||
chCollectible_setState(this, 2);
|
||||
}
|
||||
|
@@ -78,7 +78,7 @@ void __chCrab_ow(ActorMarker *marker, ActorMarker *other) {
|
||||
Actor *this;
|
||||
|
||||
this = marker_getActor(marker);
|
||||
this->unk60 = 3.0f;
|
||||
this->lifetime_value = 3.0f;
|
||||
subaddie_set_state(this, 6);
|
||||
actor_playAnimationOnce(this);
|
||||
if (marker->id == MARKER_13_SNIPPET) {
|
||||
@@ -108,7 +108,7 @@ void __chCrab_emitClawPiece(ParticleEmitter *p_ctrl, f32 position[3], enum asset
|
||||
__chCrab_particleEmitterSetup(p_ctrl, position);
|
||||
particleEmitter_setParticleAccelerationRange(p_ctrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setModel(p_ctrl, model_id);
|
||||
func_802EFB70(p_ctrl, 0.5f, 0.8f);
|
||||
particleEmitter_setStartingScaleRange(p_ctrl, 0.5f, 0.8f);
|
||||
particleEmitter_setAngularVelocityRange(p_ctrl, -800.0f, -800.0f, -800.0f, 800.0f, 800.0f, 800.0f);
|
||||
particleEmitter_setParticleVelocityRange(p_ctrl, -200.0f, 850.0f, -200.0f, 400.0f, 1000.0f, 400.0f);
|
||||
particleEmitter_emitN(p_ctrl, 2);
|
||||
@@ -118,7 +118,7 @@ void __chCrab_emitLegPiece(ParticleEmitter *p_ctrl, f32 position[3], enum asset_
|
||||
__chCrab_particleEmitterSetup(p_ctrl, position);
|
||||
particleEmitter_setParticleAccelerationRange(p_ctrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setModel(p_ctrl, model_id);
|
||||
func_802EFB70(p_ctrl, 0.5f, 0.8f);
|
||||
particleEmitter_setStartingScaleRange(p_ctrl, 0.5f, 0.8f);
|
||||
particleEmitter_setAngularVelocityRange(p_ctrl, -800.0f, -800.0f, -800.0f, 800.0f, 800.0f, 800.0f);
|
||||
particleEmitter_setParticleVelocityRange(p_ctrl, -200.0f, 850.0f, -200.0f, 400.0f, 1000.0f, 400.0f);
|
||||
particleEmitter_emitN(p_ctrl, 6);
|
||||
@@ -128,7 +128,7 @@ void __chCrab_emitHeadPiece(ParticleEmitter *p_ctrl, f32 position[3], enum asset
|
||||
__chCrab_particleEmitterSetup(p_ctrl, position);
|
||||
particleEmitter_setParticleAccelerationRange(p_ctrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f);
|
||||
particleEmitter_setModel(p_ctrl, model_id);
|
||||
func_802EFB70(p_ctrl, 1.0f, 1.0f);
|
||||
particleEmitter_setStartingScaleRange(p_ctrl, 1.0f, 1.0f);
|
||||
particleEmitter_setAngularVelocityRange(p_ctrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setParticleVelocityRange(p_ctrl, -50.0f, 750.0f, -50.0f, 120.0f, 900.0f, 120.0f);
|
||||
particleEmitter_emitN(p_ctrl, 1);
|
||||
@@ -180,7 +180,7 @@ void __chCrab_die(ActorMarker *marker, ActorMarker *other){
|
||||
FUNC_8030E8B4(SFX_79_TICKER_DEATH, 1.0f, 32750, this->position, 950, 1900);
|
||||
FUNC_8030E8B4(SFX_79_TICKER_DEATH, 1.0f, 28000, this->position, 950, 1900);
|
||||
__spawnQueue_add_4((GenFunction_4)func_802C4140, ACTOR_4C_STEAM, reinterpret_cast(s32, this->position[0]), reinterpret_cast(s32, this->position[1]), reinterpret_cast(s32, this->position[2]));
|
||||
this->unk60 = 5.0f;
|
||||
this->lifetime_value = 5.0f;
|
||||
marker->collidable = FALSE;
|
||||
this->unk138_27 = 1;
|
||||
marker_despawn(marker);
|
||||
@@ -239,7 +239,7 @@ void chCrab_update(Actor *this) {
|
||||
marker_setCollisionScripts(this->marker, __chCrab_touch, __chCrab_ow, __chCrab_die);
|
||||
func_803300C0(this->marker, &__chCrab_802CB76C);
|
||||
this->unk124_0 = this->unk138_31 = FALSE;
|
||||
this->unk138_24 = FALSE;
|
||||
this->is_first_encounter = FALSE;
|
||||
this->unk16C_4 = TRUE;
|
||||
animctrl_setTransitionDuration(this->animctrl, 0.25f);
|
||||
if (map_get() == MAP_A_TTC_SANDCASTLE) {
|
||||
@@ -273,7 +273,7 @@ void chCrab_update(Actor *this) {
|
||||
func_80311480(ASSET_D32_DIALOG_MUTANT_CRAB_MEET, 0xF, this->position, NULL, __chCrab_mutantTextCallback, NULL);
|
||||
mapSpecificFlags_set(0, TRUE);
|
||||
levelSpecificFlags_set(0xE, TRUE);
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
}
|
||||
if (map_get() == MAP_A_TTC_SANDCASTLE) {
|
||||
@@ -292,8 +292,8 @@ void chCrab_update(Actor *this) {
|
||||
}
|
||||
if (levelSpecificFlags_get(0xE)) {
|
||||
if ((this->state != 8) && (this->state != 9)) {
|
||||
subaddie_set_state_with_direction(this, (this->unk138_24) ? 8 : 9, 0.0f, 1);
|
||||
this->unk138_24 = FALSE;
|
||||
subaddie_set_state_with_direction(this, (this->is_first_encounter) ? 8 : 9, 0.0f, 1);
|
||||
this->is_first_encounter = FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -353,8 +353,8 @@ void chCrab_update(Actor *this) {
|
||||
break;
|
||||
|
||||
case 5: //L802CC0AC
|
||||
this->unk60 = MAX(0.0, this->unk60 - sp30);
|
||||
if (this->unk60 == 0.0f) {
|
||||
this->lifetime_value = MAX(0.0, this->lifetime_value - sp30);
|
||||
if (this->lifetime_value == 0.0f) {
|
||||
subaddie_set_state(this, 7);
|
||||
actor_playAnimationOnce(this);
|
||||
if (this->marker->id == 0x16B) {
|
||||
@@ -368,7 +368,7 @@ void chCrab_update(Actor *this) {
|
||||
|
||||
case 6: //L802CC18C
|
||||
if (animctrl_isStopped(this->animctrl)) {
|
||||
if (this->unk60 == 0.0f) {
|
||||
if (this->lifetime_value == 0.0f) {
|
||||
func_80326310(this);
|
||||
} else {
|
||||
subaddie_set_state(this, 5);
|
||||
|
@@ -41,8 +41,8 @@ void func_80359A40(f32 position[3], struct_core2_D2AB0 *arg1, s32 cnt){
|
||||
particleEmitter_setDrawMode(pCtrl, PART_EMIT_ROTATABLE);
|
||||
particleEmitter_setRGB(pCtrl, D_80372AE4);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
func_802EFB70(pCtrl, 0.1f, 0.1f);
|
||||
func_802EFB84(pCtrl, 1.0f, 1.4f);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 0.1f, 0.1f);
|
||||
particleEmitter_setFinalScaleRange(pCtrl, 1.0f, 1.4f);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, arg1->unk0, arg1->unk4);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, arg1->unk8, arg1->unkC);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.5f);
|
||||
@@ -72,9 +72,9 @@ void chdrips_update(Actor *this){
|
||||
if(!this->unk16C_4){
|
||||
this->unk16C_4 = TRUE;
|
||||
actor_collisionOff(this);
|
||||
this->unk60 = this->yaw/360.0;
|
||||
this->lifetime_value = this->yaw/360.0;
|
||||
}
|
||||
if(__chdrips_playerWithinDist(this, 5000) && randf() < this->unk60){
|
||||
if(__chdrips_playerWithinDist(this, 5000) && randf() < this->lifetime_value){
|
||||
pCtrl = partEmitMgr_newEmitter(1);
|
||||
particleEmitter_setModel(pCtrl, ASSET_8A0_SPRITE_WATER_DROP);
|
||||
particleEmitter_setPosition(pCtrl, this->position);
|
||||
@@ -83,8 +83,8 @@ void chdrips_update(Actor *this){
|
||||
particleEmitter_setParticleCallback(pCtrl, __chdrips_particleCallback);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 7.0f, 7.0f);
|
||||
func_802EFB70(pCtrl, 0.1f, 0.1f);
|
||||
func_802EFB84(pCtrl, 0.1f, 0.1f);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 0.1f, 0.1f);
|
||||
particleEmitter_setFinalScaleRange(pCtrl, 0.1f, 0.1f);
|
||||
particleEmitter_emitN(pCtrl, 1);
|
||||
}
|
||||
}
|
||||
|
@@ -25,8 +25,8 @@ void __chfirefx_spawnSmoke(f32 position[3], f32 scale){
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setParticleSpawnPositionRange(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);
|
||||
func_802EFB70(pCtrl, 2.6*scale, 3.2*scale);
|
||||
func_802EFB84(pCtrl, 5.0*scale, 6.0*scale);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, 2.6*scale, 3.2*scale);
|
||||
particleEmitter_setFinalScaleRange(pCtrl, 5.0*scale, 6.0*scale);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 4.0f, 7.0f);
|
||||
particleEmitter_setFade(pCtrl, 0.3f, 0.7f);
|
||||
@@ -44,8 +44,8 @@ void __chfirefx_spawnSpark(f32 position[3], f32 scale){
|
||||
particleEmitter_setParticleSpawnPositionRange(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);
|
||||
func_802EFB70(pCtrl, 0.1*scale, 0.2*scale);
|
||||
func_802EFB84(pCtrl, 0.2*scale, 0.4*scale);
|
||||
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);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 0.9f, 1.3f);
|
||||
particleEmitter_setFade(pCtrl, 0.3f, 0.7f);
|
||||
|
@@ -2,7 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
extern f32 func_80309724(f32[3]);
|
||||
extern f32 mapModel_getFloorY(f32[3]);
|
||||
|
||||
typedef struct {
|
||||
f32 unk0;
|
||||
@@ -261,7 +261,7 @@ void func_8035C8F4(Actor *this){
|
||||
this->marker->unk14_21 = FALSE;
|
||||
this->marker->actorFreeFunc = func_8035C8C8;
|
||||
marker_setCollisionScripts(this->marker, func_8035C6C4, func_8035C6C4, func_8035C6F0);
|
||||
local->unk4 = func_80309724(this->position);
|
||||
local->unk4 = mapModel_getFloorY(this->position);
|
||||
local->pCtrl_8 = NULL;
|
||||
local->unk34[0] = this->yaw;
|
||||
local->unk34[2] = local->unk34[1] = local->unk34[0];
|
||||
|
@@ -287,7 +287,7 @@ void func_802C4BB4(ActorMarker *marker){
|
||||
sp20 = marker->id - 0xe4;
|
||||
this = marker_getActor(marker);
|
||||
sp18 = this->scale;
|
||||
other = func_8032813C(sp20 + 0x198, this->position, (s32)this->yaw);
|
||||
other = spawn_actor_f32(sp20 + 0x198, this->position, (s32)this->yaw);
|
||||
other->scale = sp18;
|
||||
}
|
||||
|
||||
|
@@ -60,8 +60,8 @@ void func_8035AFE0(f32 scale, f32 pos[3], s32 cnt, enum asset_e sprite_id, s32 a
|
||||
-100.0f*scale, -20.0f*scale, -100.0f*scale,
|
||||
100.0f*scale, 100.0f*scale, 100.0f*scale
|
||||
);
|
||||
func_802EFB70(pCtrl, scale*0.4, scale*0.6);
|
||||
func_802EFB84(pCtrl, scale*1.0, scale*1.4);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, scale*0.4, scale*0.6);
|
||||
particleEmitter_setFinalScaleRange(pCtrl, scale*1.0, scale*1.4);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 1.0f, 1.4f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.01f);
|
||||
@@ -96,7 +96,7 @@ void func_8035B2C4(ActorMarker *this_marker, ActorMarker *other_marker){
|
||||
|
||||
void func_8035B3B4(ActorMarker *this_marker, ActorMarker *other_marker){
|
||||
Actor *this = marker_getActor(this_marker);
|
||||
this->unk60 = 1.0f;
|
||||
this->lifetime_value = 1.0f;
|
||||
}
|
||||
|
||||
int func_8035B3E4(Actor *this){
|
||||
@@ -208,7 +208,7 @@ void func_8035B900(Actor *this){
|
||||
this->marker->propPtr->unk8_3 = FALSE;
|
||||
actor_collisionOn(this);
|
||||
this->velocity_z = 0.0f;
|
||||
this->unk60 = 0.0f;
|
||||
this->lifetime_value = 0.0f;
|
||||
this->unk1C[0] = this->position_y + this->scale*100.0f;
|
||||
this->velocity_y = this->scale*2.0;
|
||||
this->velocity_x = this->unk1C[0];
|
||||
@@ -216,8 +216,8 @@ void func_8035B900(Actor *this){
|
||||
animctrl_setTransitionDuration(this->animctrl, 0.8f);
|
||||
}//L8035B9D4
|
||||
|
||||
if(0.0 < this->unk60 - sp2C){
|
||||
this->unk60 -= sp2C;
|
||||
if(0.0 < this->lifetime_value - sp2C){
|
||||
this->lifetime_value -= sp2C;
|
||||
}
|
||||
else{//L8035BA08
|
||||
switch(this->state){
|
||||
|
@@ -38,7 +38,7 @@ void chgloop_spawnBubble(s32 arg0, s32 arg1, s32 arg2, s32 arg3){
|
||||
sp1C[0] = reinterpret_cast(f32, arg0);
|
||||
sp1C[1] = reinterpret_cast(f32, arg1);
|
||||
sp1C[2] = reinterpret_cast(f32, arg2);
|
||||
func_8032813C(ACTOR_E7_GLOOP_BUBBLE, sp1C, (s32)reinterpret_cast(f32, arg3));
|
||||
spawn_actor_f32(ACTOR_E7_GLOOP_BUBBLE, sp1C, (s32)reinterpret_cast(f32, arg3));
|
||||
}
|
||||
|
||||
void chgloop_update(Actor *this){
|
||||
|
@@ -114,7 +114,7 @@ void func_8035A04C(f32 position[3], s32 cnt, enum asset_e model_id, f32 scale){
|
||||
particleEmitter_setParticleAccelerationRange(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);
|
||||
func_802EFB70(pCtrl, scale*0.2, scale*0.4);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, scale*0.2, scale*0.4);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.02f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 2.2f, 2.2f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.3f);
|
||||
@@ -130,8 +130,8 @@ void func_8035A228(f32 position[3], s32 cnt, enum asset_e sprite_id, f32 scale){
|
||||
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_setParticleVelocityRange(pCtrl, -280.0f*scale, 0.0f, -280.0f*scale, 280.0f*scale, 280.0f*scale, 280.0f*scale);
|
||||
func_802EFB70(pCtrl, scale*0.6, scale*0.8);
|
||||
func_802EFB84(pCtrl, scale*1.0, scale*1.4);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, scale*0.6, scale*0.8);
|
||||
particleEmitter_setFinalScaleRange(pCtrl, scale*1.0, scale*1.4);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 1.2f, 1.8f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.01f);
|
||||
@@ -146,8 +146,8 @@ void func_8035A3F8(f32 position[3], s32 cnt, enum asset_e sprite_id, f32 scale){
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setParticleAccelerationRange(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);
|
||||
func_802EFB70(pCtrl, scale*0.4, scale*0.6);
|
||||
func_802EFB84(pCtrl, scale*0.8, scale*1.2);
|
||||
particleEmitter_setStartingScaleRange(pCtrl, scale*0.4, scale*0.6);
|
||||
particleEmitter_setFinalScaleRange(pCtrl, scale*0.8, scale*1.2);
|
||||
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
|
||||
particleEmitter_setParticleLifeTimeRange(pCtrl, 0.5f, 0.7f);
|
||||
particleEmitter_setFade(pCtrl, 0.0f, 0.3f);
|
||||
@@ -276,11 +276,11 @@ void chicecube_update(Actor *this){
|
||||
this->alpha_124_19 = 0x50;
|
||||
actor_setOpacity(this, this->alpha_124_19);
|
||||
this->unk38_31 = 0;
|
||||
this->unk60 = 1.0f;
|
||||
this->lifetime_value = 1.0f;
|
||||
}//L8035ABC0
|
||||
if(this->unk60 <= 0.0){
|
||||
if(-99999.0 != this->unk60){
|
||||
this->unk60 = -99999.0f;
|
||||
if(this->lifetime_value <= 0.0){
|
||||
if(-99999.0 != this->lifetime_value){
|
||||
this->lifetime_value = -99999.0f;
|
||||
actor_collisionOn(this);
|
||||
this->unk1C[0] =this->position[0];
|
||||
this->unk1C[1] =this->position[1];
|
||||
@@ -289,7 +289,7 @@ void chicecube_update(Actor *this){
|
||||
}
|
||||
}
|
||||
else{//L8035AC3C
|
||||
this->unk60 -= sp3C;
|
||||
this->lifetime_value -= sp3C;
|
||||
}
|
||||
|
||||
if(0.0 >= this->velocity[1]){
|
||||
|
@@ -30,7 +30,7 @@ Actor *__chJigsawDance_draw(ActorMarker *this, Gfx **gdl, Mtx **mptr, Vtx **arg3
|
||||
Actor *thisActor = marker_getActor(this);
|
||||
|
||||
if(!thisActor->initialized){
|
||||
thisActor->initialized = 1;
|
||||
thisActor->initialized = TRUE;
|
||||
return thisActor;
|
||||
}
|
||||
else{
|
||||
|
@@ -104,7 +104,7 @@ void chJinjo_update(Actor * this){
|
||||
|
||||
local = &this->jinjo;
|
||||
if(!this->initialized){
|
||||
this->initialized = 1;
|
||||
this->initialized = TRUE;
|
||||
local->unk0 = 1;
|
||||
local->unk4 = 0;
|
||||
local->unk8 = (this->position_y < func_80309B24(this->position));
|
||||
|
@@ -163,9 +163,9 @@ void chmole_healthRefill(ActorMarker *marker, enum asset_e arg1, s32 arg2){
|
||||
func_80311480(chmole_learnedAllGameAbilities()? 0xa87 : chmole_learnedAllLevelAbilitiesDialog(), 7, 0, actor->marker, chmole_healthRefill, NULL);
|
||||
}
|
||||
else{//L802D97BC
|
||||
if(actor->unk138_24){
|
||||
if(actor->is_first_encounter){
|
||||
func_80347A14(1);
|
||||
actor->unk138_24 = FALSE;
|
||||
actor->is_first_encounter = FALSE;
|
||||
}
|
||||
timed_exitStaticCamera(0.0f);
|
||||
if(actor->state == 5){
|
||||
@@ -229,7 +229,7 @@ int chmole_learnAbility(Actor *this){
|
||||
// New Ability: Learn Dialog & Misc Actions
|
||||
else{
|
||||
func_80347A14(0);
|
||||
this->unk138_24 = 1;
|
||||
this->is_first_encounter = TRUE;
|
||||
sp2C = moleTable[this->unkF4_8-9].learn_text;
|
||||
ability_unlock(moleTable[this->unkF4_8-9].ability);
|
||||
switch(moleTable[this->unkF4_8-9].ability){
|
||||
|
@@ -34,7 +34,7 @@ void chOverlayCopyright_update(Actor *this){
|
||||
void __chOverlayCopyright_spawn(void) {
|
||||
Actor *actor;
|
||||
if (chOverlayCopyrightMarker == 0) {
|
||||
actor = func_8032813C(ACTOR_1DD_COPYRIGHT_OVERLAY, D_803680D0, 0);
|
||||
actor = spawn_actor_f32(ACTOR_1DD_COPYRIGHT_OVERLAY, D_803680D0, 0);
|
||||
chOverlayCopyrightMarker = actor->marker;
|
||||
}
|
||||
}
|
||||
|
@@ -2,7 +2,7 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
extern Actor *func_8032813C(enum actor_e, f32[3], s32);
|
||||
extern Actor *spawn_actor_f32(enum actor_e, f32[3], s32);
|
||||
extern void actor_postdrawMethod(ActorMarker *marker);
|
||||
|
||||
Actor *chOverlayNoController_draw(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx);
|
||||
@@ -73,7 +73,7 @@ void chOverlayNoController_update(Actor *this) {
|
||||
|
||||
void __chOverlayNoController_spawn(void){
|
||||
if(chOverlayNoController_marker == NULL){
|
||||
chOverlayNoController_marker = func_8032813C(ACTOR_1DF_NO_CONTROLLER_OVERLAY, D_80368168, 0)->marker;
|
||||
chOverlayNoController_marker = spawn_actor_f32(ACTOR_1DF_NO_CONTROLLER_OVERLAY, D_80368168, 0)->marker;
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -5,7 +5,7 @@
|
||||
extern void subaddie_set_state_with_direction(Actor *, s32, f32, s32);
|
||||
extern void actor_predrawMethod(Actor *);
|
||||
extern void actor_postdrawMethod(ActorMarker *);
|
||||
extern Actor *func_8032813C(enum actor_e id, f32[3], s32);
|
||||
extern Actor *spawn_actor_f32(enum actor_e id, f32[3], s32);
|
||||
|
||||
|
||||
Actor *chOverlayPressStart_draw(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx);
|
||||
@@ -69,7 +69,7 @@ void chOverlayPressStart_func_802DCC78(ActorMarker *this){
|
||||
|
||||
void chOverlayPressStart_update(Actor *this){
|
||||
if(!this->initialized){
|
||||
this->initialized = 1;
|
||||
this->initialized = TRUE;
|
||||
this->depth_mode = MODEL_RENDER_DEPTH_NONE;
|
||||
actor_collisionOff(this);
|
||||
subaddie_set_state_with_direction(this, 1, 0.0f, 1);
|
||||
@@ -85,7 +85,7 @@ void chOverlayPressStart_update(Actor *this){
|
||||
|
||||
void __chOverlayPressStart_spawn(void){
|
||||
if(D_8037DE80 == NULL){
|
||||
D_8037DE80 = func_8032813C(ACTOR_1DE_PRESS_START_OVERLAY, D_80368118, 0)->marker;
|
||||
D_8037DE80 = spawn_actor_f32(ACTOR_1DE_PRESS_START_OVERLAY, D_80368118, 0)->marker;
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -50,7 +50,7 @@ void chShrapnel_func_802D0AB8(Actor *this) {
|
||||
|
||||
void chShrapnel_spawnExplodeActor(s32 arg0){
|
||||
Actor *this = reinterpret_cast(Actor *, arg0);
|
||||
func_8032813C(0xF3, this->unk1C, 0);
|
||||
spawn_actor_f32(0xF3, this->unk1C, 0);
|
||||
}
|
||||
|
||||
void chShrapnel_emitExplosion(Actor *this) {
|
||||
@@ -65,8 +65,8 @@ void chShrapnel_emitExplosion(Actor *this) {
|
||||
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_setPosition(temp_v0, this->position);
|
||||
func_802EFB70(temp_v0, 3.0f, 3.0f);
|
||||
func_802EFB84(temp_v0, 8.0f, 8.0f);
|
||||
particleEmitter_setStartingScaleRange(temp_v0, 3.0f, 3.0f);
|
||||
particleEmitter_setFinalScaleRange(temp_v0, 8.0f, 8.0f);
|
||||
particleEmitter_setParticleLifeTimeRange(temp_v0, 0.5f, 0.5f);
|
||||
particleEmitter_setParticleVelocityRange(temp_v0, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f);
|
||||
particleEmitter_emitN(temp_v0, 1);
|
||||
@@ -81,8 +81,8 @@ void chShrapnel_emitSmoke(Actor *this) {
|
||||
particleEmitter_setFade(temp_v0, 0.05f, 0.1f);
|
||||
particleEmitter_setStartingFrameRange(temp_v0, 0, 7);
|
||||
particleEmitter_setPosition(temp_v0, this->position);
|
||||
func_802EFB70(temp_v0, 1.0f, 1.5f);
|
||||
func_802EFB84(temp_v0, 2.0f, 3.0f);
|
||||
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_setParticleVelocityRange(temp_v0, -70.0f, 50.0f, -70.0f, 70.0f, 100.0f, 70.0f);
|
||||
particleEmitter_setRGB(temp_v0, D_803673F8);
|
||||
@@ -99,7 +99,7 @@ void chShrapnel_emitBodyParts(Actor *this, enum asset_e model_id, s32 n) {
|
||||
func_802EFA18(temp_v0, 1);
|
||||
particleEmitter_setModel(temp_v0, model_id);
|
||||
particleEmitter_setPosition(temp_v0, this->position);
|
||||
func_802EFB70(temp_v0, 0.05f, 2.0f);
|
||||
particleEmitter_setStartingScaleRange(temp_v0, 0.05f, 2.0f);
|
||||
particleEmitter_setAngularVelocityRange(temp_v0, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
|
||||
particleEmitter_setSpawnIntervalRange(temp_v0, 0.0f, 0.01f);
|
||||
particleEmitter_setParticleLifeTimeRange(temp_v0, 10.0f, 10.0f);
|
||||
@@ -147,15 +147,15 @@ void chshrapnel_update(Actor *this) {
|
||||
this->unk4C = 0.0f;
|
||||
}
|
||||
chShrapnel_func_802D0FC8(this);
|
||||
this->unk60 += tick;
|
||||
if (M_PI <= this->unk60) {
|
||||
this->unk60 -= M_PI;
|
||||
this->lifetime_value += tick;
|
||||
if (M_PI <= this->lifetime_value) {
|
||||
this->lifetime_value -= M_PI;
|
||||
}
|
||||
this->unk1C[0] = this->position[0];
|
||||
this->unk1C[1] = this->position[1];
|
||||
this->unk1C[2] = this->position[2];
|
||||
this->unk1C[1] = func_80309B24(this->position) - 15.0f;
|
||||
this->position[1] = this->unk1C[1] - (sinf(this->unk60 * 4.0f) * 10.0f);
|
||||
this->position[1] = this->unk1C[1] - (sinf(this->lifetime_value * 4.0f) * 10.0f);
|
||||
_player_getPosition(player_position);
|
||||
switch (this->state) {
|
||||
case 1:
|
||||
|
@@ -79,12 +79,12 @@ static void __chsnacker_start_dialog(Actor *this) {
|
||||
this->unk28 = 0.0f;
|
||||
if (level_get() == LEVEL_2_TREASURE_TROVE_COVE) {
|
||||
text_index = mapSpecificFlags_getN(8, 3);
|
||||
if( !this->unk138_24 ) {
|
||||
if( !this->is_first_encounter ) {
|
||||
if(text_index < 4) {
|
||||
if(func_80311480(0xA1B + text_index, 0, NULL, NULL, NULL, NULL)){
|
||||
text_index++;
|
||||
mapSpecificFlags_setN(8, text_index, 3);
|
||||
this->unk138_24 = TRUE;
|
||||
this->is_first_encounter = TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -99,7 +99,7 @@ bool func_802E0DC0(f32 snacker_position[3]){
|
||||
|
||||
player_getPosition(player_position);
|
||||
return (4000000.0f < ml_distanceSquared_vec3f(player_position, snacker_position))
|
||||
|| ( (snacker_position[1] - func_80309724(snacker_position) < 70.0f) && (func_80309B24(snacker_position) - snacker_position[1] < 70.0f));
|
||||
|| ( (snacker_position[1] - mapModel_getFloorY(snacker_position) < 70.0f) && (func_80309B24(snacker_position) - snacker_position[1] < 70.0f));
|
||||
}
|
||||
|
||||
void func_802E0E88(Actor *this){
|
||||
@@ -359,7 +359,7 @@ void chSnacker_spawn(void) {
|
||||
}
|
||||
}
|
||||
|
||||
snacker = func_8032813C(ACTOR_68_SNACKER, spawn_position, 0);
|
||||
snacker = spawn_actor_f32(ACTOR_68_SNACKER, spawn_position, 0);
|
||||
s_chSnacker_marker = snacker->marker;
|
||||
|
||||
local = (ChSnackerLocal *)&snacker->local;
|
||||
|
@@ -122,7 +122,7 @@ void chSnowball_update(Actor *this) {
|
||||
this->velocity[1] = (sp58[1] - this->position[1])/32 - -32.0f;
|
||||
this->velocity[2] = (sp58[2] - this->position[2])/32;
|
||||
local->unk4 = 0;
|
||||
this->unk60 = 6.0f;
|
||||
this->lifetime_value = 6.0f;
|
||||
}
|
||||
switch (this->state) {
|
||||
case 1:
|
||||
@@ -150,8 +150,8 @@ void chSnowball_update(Actor *this) {
|
||||
}
|
||||
}
|
||||
local->unk4++;
|
||||
if (this->unk60 > 0.0) {
|
||||
this->unk60 -= time_getDelta();
|
||||
if (this->lifetime_value > 0.0) {
|
||||
this->lifetime_value -= time_getDelta();
|
||||
} else {
|
||||
marker_despawn(this->marker);
|
||||
}
|
||||
|
@@ -26,7 +26,7 @@ void chSnowmanHat_update(Actor *this){
|
||||
if( 360.0f <= this->pitch)
|
||||
this->pitch -= 360.0f;
|
||||
|
||||
if(this->position_y <= func_80309724(this->position)){
|
||||
if(this->position_y <= mapModel_getFloorY(this->position)){
|
||||
subaddie_set_state(this, 2);
|
||||
FUNC_8030E8B4(SFX_1D_HITTING_AN_ENEMY_1, 1.0f, 32750, this->position, 2250, 4500);
|
||||
}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user