misc documentation

This commit is contained in:
Banjo Kazooie
2023-01-30 00:02:44 -06:00
parent da9a0109b5
commit cd146f444f
258 changed files with 2526 additions and 3594 deletions

View File

@@ -37,7 +37,7 @@ void func_803567EC(Actor *this){
}
player_getPosition(plyr_pos);
plyr_dist = ml_vec3f_distance(plyr_pos, this->position);
plyr_dist = ml_distance_vec3f(plyr_pos, this->position);
if(this->state == 1){
if(plyr_dist < 700.0f)
func_80356770(this, 2);

View File

@@ -148,7 +148,7 @@ void func_8035765C(Actor *this){
}//L803576EC
player_getPosition(sp5C);
sp58 = ml_vec3f_distance(this->position, sp5C);
sp58 = ml_distance_vec3f(this->position, sp5C);
if(this->state == 1){
if(sp58 < this->scale*800.0f){
func_80357264(this, 2);
@@ -168,7 +168,7 @@ void func_8035765C(Actor *this){
}//L80357808
if(this->state == 3){
if(func_8025773C(&local->unk4, sp50)){
if(ml_timer_update(&local->unk4, sp50)){
func_80357264(this, 4);
}
}

View File

@@ -96,7 +96,7 @@ void func_80356CCC(Actor *this){
func_803569F0(this, (this->state < 5)? 1 : 6);
}//L80356D48
player_getPosition(sp5C);
sp58 = ml_vec3f_distance(this->position, sp5C);
sp58 = ml_distance_vec3f(this->position, sp5C);
if( this->state == 1){
if( sp58 < this->scale*400.0f
&& (map_get() != MAP_3C_RBB_KITCHEN || this->position_z < sp5C[2])
@@ -116,7 +116,7 @@ void func_80356CCC(Actor *this){
}
}//L80356E88
if(this->state == 3){
if(func_8025773C(&this->local, sp50)){
if(ml_timer_update(&this->local, sp50)){
func_803569F0(this, 4);
}
}//L80356EAC

View File

@@ -1,6 +1,7 @@
#include <ultra64.h>
#include "functions.h"
#include "variables.h"
#include "core2/particle.h"
#define _HorzDist3v(v1, v2) ((v1[0]-v2[0])*(v1[0]-v2[0]) + (v1[2]-v2[2])*(v1[2]-v2[2]))
extern int func_8024549C(f32[3], f32);
@@ -35,16 +36,16 @@ struct43s D_80372B00 = {
/* .code */
void func_80359A40(f32 position[3], struct_core2_D2AB0 *arg1, s32 cnt){
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
particleEmitter_setSprite(pCtrl, ASSET_70C_SPRITE_RIPPLE);
func_802EFA70(pCtrl, 1);
func_802EFFA8(pCtrl, D_80372AE4);
particleEmitter_setDrawMode(pCtrl, PART_EMIT_3D_ROTATE);
particleEmitter_setRGB(pCtrl, D_80372AE4);
particleEmitter_setPosition(pCtrl, position);
func_802EFB70(pCtrl, 0.1f, 0.1f);
func_802EFB84(pCtrl, 1.0f, 1.4f);
particleEmitter_setSpawnIntervalRange(pCtrl, arg1->unk0, arg1->unk4);
func_802EFEC0(pCtrl, arg1->unk8, arg1->unkC);
func_802EFA5C(pCtrl, 0.0f, 0.5f);
particleEmitter_setParticleLifeTimeRange(pCtrl, arg1->unk8, arg1->unkC);
particleEmitter_setFade(pCtrl, 0.0f, 0.5f);
particleEmitter_emitN(pCtrl, cnt);
}
@@ -74,14 +75,14 @@ void chdrips_update(Actor *this){
this->unk60 = this->yaw/360.0;
}
if(__chdrips_playerWithinDist(this, 5000) && randf() < this->unk60){
pCtrl = partEmitList_pushNew(1);
pCtrl = partEmitMgr_newEmitter(1);
particleEmitter_setModel(pCtrl, ASSET_8A0_SPRITE_WATER_DROP);
particleEmitter_setPosition(pCtrl, this->position);
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_80372B00);
func_802EFA18(pCtrl, 1);
particleEmitter_setParticleCallback(pCtrl, __chdrips_particleCallback);
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
func_802EFEC0(pCtrl, 7.0f, 7.0f);
particleEmitter_setParticleLifeTimeRange(pCtrl, 7.0f, 7.0f);
func_802EFB70(pCtrl, 0.1f, 0.1f);
func_802EFB84(pCtrl, 0.1f, 0.1f);
particleEmitter_emitN(pCtrl, 1);

View File

@@ -18,26 +18,26 @@ ActorInfo gChFireFxInfo = {
void __chfirefx_spawnSmoke(f32 position[3], f32 scale){
ParticleEmitter *pCtrl;
pCtrl = partEmitList_pushNew(1);
pCtrl = partEmitMgr_newEmitter(1);
particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
func_802EF9E4(pCtrl, 0x23);
particleEmitter_setAlpha(pCtrl, 0x23);
particleEmitter_setPosition(pCtrl, position);
particleEmitter_setParticleSpawnPositionRange(pCtrl, 0.0f, 110.0f*scale, 0.0f, 0.0f, 110.0f*scale, 0.0f);
particleEmitter_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_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
func_802EFEC0(pCtrl, 4.0f, 7.0f);
func_802EFA5C(pCtrl, 0.3f, 0.7f);
func_802EFA70(pCtrl, 4);
particleEmitter_setParticleLifeTimeRange(pCtrl, 4.0f, 7.0f);
particleEmitter_setFade(pCtrl, 0.3f, 0.7f);
particleEmitter_setDrawMode(pCtrl, 4);
particleEmitter_emitN(pCtrl, 1);
}
void __chfirefx_spawnSpark(f32 position[3], f32 scale){
ParticleEmitter *pCtrl;
pCtrl = partEmitList_pushNew(1);
pCtrl = partEmitMgr_newEmitter(1);
particleEmitter_setSprite(pCtrl, ASSET_713_SPRITE_SPARKLE_YELLOW);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
particleEmitter_setPosition(pCtrl, position);
@@ -47,9 +47,9 @@ void __chfirefx_spawnSpark(f32 position[3], f32 scale){
func_802EFB70(pCtrl, 0.1*scale, 0.2*scale);
func_802EFB84(pCtrl, 0.2*scale, 0.4*scale);
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
func_802EFEC0(pCtrl, 0.9f, 1.3f);
func_802EFA5C(pCtrl, 0.3f, 0.7f);
func_802EFA70(pCtrl, 4);
particleEmitter_setParticleLifeTimeRange(pCtrl, 0.9f, 1.3f);
particleEmitter_setFade(pCtrl, 0.3f, 0.7f);
particleEmitter_setDrawMode(pCtrl, 4);
particleEmitter_emitN(pCtrl, 1);
}

View File

@@ -146,7 +146,7 @@ void func_8035C080(Actor *this, s32 next_state){
}
}
else if(next_state == 3){//L8035C4C0
if(ml_vec3f_distance(local->unk28, this->position) < 10.0f){
if(ml_distance_vec3f(local->unk28, this->position) < 10.0f){
func_8035C080(this, 1);
return;
}
@@ -237,7 +237,7 @@ Actor* func_8035C71C(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
if(local->pCtrl_8 && this->marker->unk14_21){
func_8034A174(func_80329934(), 5, sp28);
particleEmitter_setPosition(local->pCtrl_8, sp28);
func_802EF3A8(local->pCtrl_8, gfx, mtx, vtx);
particleEmitter_draw(local->pCtrl_8, gfx, mtx, vtx);
}
return this;
}
@@ -246,7 +246,7 @@ void func_8035C8C8(Actor *this){
ActorLocal_Core2_D50F0 *local = (ActorLocal_Core2_D50F0 *)&this->local;
if(local->pCtrl_8)
func_802EF684(local->pCtrl_8);
particleEmitter_free(local->pCtrl_8);
}
void func_8035C8F4(Actor *this){
@@ -293,11 +293,11 @@ void func_8035C8F4(Actor *this){
local->unk0 += 1.9047619047619049*sp34;
if(1.0f <= local->unk0)
local->unk0 = 1.0f;
func_80255FE4(this->position, local->unk10, local->unk1C, local->unk0);
ml_interpolate_vec3f(this->position, local->unk10, local->unk1C, local->unk0);
this->position_y += 100.0f*sinf(local->unk0*3.141592654);
this->yaw = local->unk0*(local->unk34[2] - local->unk34[1]) + local->unk34[1];
if(func_80335794(this->unk148) > 0){
if(ml_vec3f_distance(this->position, local->unk28) < 10.0f){
if(ml_distance_vec3f(this->position, local->unk28) < 10.0f){
func_8035C080(this, 1);
}
else if(local->unkC > 0){//L8035CB8C

View File

@@ -1,6 +1,8 @@
#include <ultra64.h>
#include "functions.h"
#include "variables.h"
#include "core2/particle.h"
typedef struct {
f32 unk0;
@@ -41,10 +43,10 @@ s32 D_80372C6C[3] = {0xFE, 0x46, 0xFE};
/* .code */
void func_8035AFE0(f32 scale, f32 pos[3], s32 cnt, enum asset_e sprite_id, s32 arg4[3]){
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
particleEmitter_setSprite(pCtrl, sprite_id);
func_802EFFA8(pCtrl, arg4);
particleEmitter_setRGB(pCtrl, arg4);
particleEmitter_setPosition(pCtrl, pos);
particleEmitter_setParticleSpawnPositionRange(pCtrl,
-100.0f*scale, 20.0f*scale, -100.0f*scale,
@@ -61,9 +63,9 @@ void func_8035AFE0(f32 scale, f32 pos[3], s32 cnt, enum asset_e sprite_id, s32 a
func_802EFB70(pCtrl, scale*0.4, scale*0.6);
func_802EFB84(pCtrl, scale*1.0, scale*1.4);
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
func_802EFEC0(pCtrl, 1.0f, 1.4f);
func_802EFA5C(pCtrl, 0.0f, 0.01f);
func_802EFA70(pCtrl, 0x10);
particleEmitter_setParticleLifeTimeRange(pCtrl, 1.0f, 1.4f);
particleEmitter_setFade(pCtrl, 0.0f, 0.01f);
particleEmitter_setDrawMode(pCtrl, PART_EMIT_NO_DEPTH);
particleEmitter_emitN(pCtrl, cnt);
}

View File

@@ -106,25 +106,25 @@ int func_80359FEC(f32 arg0[3], f32 arg1[3], s32 arg2){
}
void func_8035A04C(f32 position[3], s32 cnt, enum asset_e model_id, f32 scale){
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
particleEmitter_setModel(pCtrl, model_id);
particleEmitter_setPosition(pCtrl, position);
particleEmitter_setParticleSpawnPositionRange(pCtrl, -100.0f*scale, 0.0f, -100.0f*scale, 100.0f*scale, 200.0f*scale, 100.0f*scale);
particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -1000.0f, 0.0f, 0.0f, -1000.0f, 0.0f);
particleEmitter_setParticleVelocityRange(pCtrl, -400.0f*scale, 450.0f*scale, -400.0f*scale, 400.0f*scale, 600.0f*scale, 400.0f*scale);
func_802EFE24(pCtrl, 100.0f*scale, 100.0f*scale, 100.0f*scale, 250.0f*scale, 250.0f*scale, 250.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_setSpawnIntervalRange(pCtrl, 0.0f, 0.02f);
func_802EFEC0(pCtrl, 2.2f, 2.2f);
func_802EFA5C(pCtrl, 0.0f, 0.3f);
particleEmitter_setParticleLifeTimeRange(pCtrl, 2.2f, 2.2f);
particleEmitter_setFade(pCtrl, 0.0f, 0.3f);
particleEmitter_emitN(pCtrl, cnt);
}
void func_8035A228(f32 position[3], s32 cnt, enum asset_e sprite_id, f32 scale){
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
func_802EFFA8(pCtrl, D_80372BC8);
particleEmitter_setRGB(pCtrl, D_80372BC8);
particleEmitter_setSprite(pCtrl, sprite_id);
particleEmitter_setPosition(pCtrl, position);
particleEmitter_setParticleSpawnPositionRange(pCtrl, -50.0f*scale, 0.0f, -50.0f*scale, 50.0f*scale, 200.0f*scale, 50.0f*scale);
@@ -133,15 +133,15 @@ void func_8035A228(f32 position[3], s32 cnt, enum asset_e sprite_id, f32 scale){
func_802EFB70(pCtrl, scale*0.6, scale*0.8);
func_802EFB84(pCtrl, scale*1.0, scale*1.4);
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
func_802EFEC0(pCtrl, 1.2f, 1.8f);
func_802EFA5C(pCtrl, 0.0f, 0.01f);
particleEmitter_setParticleLifeTimeRange(pCtrl, 1.2f, 1.8f);
particleEmitter_setFade(pCtrl, 0.0f, 0.01f);
particleEmitter_emitN(pCtrl, cnt);
}
void func_8035A3F8(f32 position[3], s32 cnt, enum asset_e sprite_id, f32 scale){
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
func_802EFFA8(pCtrl, D_80372BD4);
particleEmitter_setRGB(pCtrl, D_80372BD4);
particleEmitter_setSprite(pCtrl, sprite_id);
particleEmitter_setPosition(pCtrl, position);
particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -10.0f, 0.0f, 0.0f, -10.0f, 0.0f);
@@ -149,9 +149,9 @@ void func_8035A3F8(f32 position[3], s32 cnt, enum asset_e sprite_id, f32 scale){
func_802EFB70(pCtrl, scale*0.4, scale*0.6);
func_802EFB84(pCtrl, scale*0.8, scale*1.2);
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
func_802EFEC0(pCtrl, 0.5f, 0.7f);
func_802EFA5C(pCtrl, 0.0f, 0.3f);
func_802EFA70(pCtrl, 4);
particleEmitter_setParticleLifeTimeRange(pCtrl, 0.5f, 0.7f);
particleEmitter_setFade(pCtrl, 0.0f, 0.3f);
particleEmitter_setDrawMode(pCtrl, 4);
particleEmitter_emitN(pCtrl, cnt);
}

View File

@@ -354,7 +354,7 @@ void func_802D9D60(Actor *this){
&& (func_8028ECAC() == 0 || func_8028ECAC() == BSGROUP_8_TROT)
){
player_getPosition(sp34);
if(ml_vec3f_distance(sp34, this->velocity) < this->unk28){
if(ml_distance_vec3f(sp34, this->velocity) < this->unk28){
func_802D9CBC(this);
}
}

View File

@@ -57,7 +57,7 @@ void func_802DA634(ParticleEmitter *pCtrl, f32 arg1[3], s32 cnt){
particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -600.0f, 0.0f, 0.0f, -600.0f, 0.0f);
particleEmitter_setModel(pCtrl, 0x344);
particleEmitter_setPosition(pCtrl, arg1);
func_802EFE24(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
particleEmitter_setAngularVelocityRange(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
particleEmitter_setParticleVelocityRange(pCtrl, -150.0f, 150.0f, -150.0f, 150.0f, 360.0f, 150.0f);
func_802EFB98(pCtrl, &D_80367E44);
func_802EF9F8(pCtrl, 0.01f);
@@ -83,7 +83,7 @@ void func_802DA740(Actor *this){
}
else{
if(local->unk0 && actor_animationIsAt(this, 0.05f)){
func_802DA634(partEmitList_pushNew(6), this->velocity, 6);
func_802DA634(partEmitMgr_newEmitter(6), this->velocity, 6);
}
}
break;
@@ -93,19 +93,19 @@ void func_802DA740(Actor *this){
}
else if(local->unk0){
if(actor_animationIsAt(this, 0.3f)){
func_802DA634(partEmitList_pushNew(6), this->velocity, 6);
func_802DA634(partEmitMgr_newEmitter(6), this->velocity, 6);
}
else if(actor_animationIsAt(this, 0.4f)){
func_802DA634(partEmitList_pushNew(4), this->unk1C, 4);
func_802DA634(partEmitMgr_newEmitter(4), this->unk1C, 4);
}
else if(actor_animationIsAt(this, 0.45f)){
func_802DA634(partEmitList_pushNew(4), local->unk4, 4);
func_802DA634(partEmitMgr_newEmitter(4), local->unk4, 4);
}
else if(actor_animationIsAt(this, 0.5f)){
func_802DA634(partEmitList_pushNew(4), local->unk10, 4);
func_802DA634(partEmitMgr_newEmitter(4), local->unk10, 4);
}
else if(actor_animationIsAt(this, 0.55f)){
func_802DA634(partEmitList_pushNew(4), local->unk1C, 4);
func_802DA634(partEmitMgr_newEmitter(4), local->unk1C, 4);
}
}
break;

View File

@@ -47,11 +47,11 @@ void __chSnowball_spawnPieces(f32 position[3]) {
ParticleEmitter *pCtrl;
pCtrl = partEmitList_pushNew(8);
pCtrl = partEmitMgr_newEmitter(8);
particleEmitter_setModel(pCtrl, ASSET_37A_MODEL_TINY_SNOWBALL);
particleEmitter_setPosition(pCtrl, position);
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_8036875C);
func_802EFE24(pCtrl, -300.0f, -300.0f, -300.0f, 300.0f, 300.0f, 300.0f);
particleEmitter_setAngularVelocityRange(pCtrl, -300.0f, -300.0f, -300.0f, 300.0f, 300.0f, 300.0f);
func_802EFB98(pCtrl, &D_80368734);
particleEmitter_emitN(pCtrl, 8);
}

View File

@@ -117,16 +117,16 @@ void __chSnowman_spawnSnowballParticles(f32 position[3], s32 count){
{{-80.0f, 0.0f, -80.0f}, {80.0f, 200.0f, 80.0f}}
};
ParticleEmitter *particleSpawner = partEmitList_pushNew(count);
ParticleEmitter *particleSpawner = partEmitMgr_newEmitter(count);
particleEmitter_setModel(particleSpawner, ASSET_378_MODEL_SNOWBALL);
particleEmitter_setPosition(particleSpawner, position);
particleEmitter_setPositionVelocityAndAccelerationRanges(particleSpawner, &D_803686BC);
func_802EFE24(particleSpawner, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
particleEmitter_setAngularVelocityRange(particleSpawner, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
func_802EF9F8(particleSpawner, 0.01f);
func_802EFA18(particleSpawner, 3);
func_802EFA20(particleSpawner, 1.0f, 1.3f);
func_802EF9EC(particleSpawner, 0x2f, 16000);
particleEmitter_setSfx(particleSpawner, SFX_2F_ORANGE_SPLAT, 16000);
func_802EFB98(particleSpawner, &D_80368694);
particleEmitter_emitN(particleSpawner, count);
}

View File

@@ -84,7 +84,7 @@ void func_802D07C8(Actor *this){
func_802D05A0(this, 1);
}
player_getPosition(sp2C);
sp28 = ml_vec3f_distance(sp2C, this->position);
sp28 = ml_distance_vec3f(sp2C, this->position);
if( this->state == 1){
if(sp28 < D_80367340[(s32)this->yaw].unk6*this->scale){
func_802D05A0(this, 2);

View File

@@ -16,7 +16,7 @@ s32 D_80373124[3] = {0xA0, 0x6B, 0x23};
/* .code */
void __chwhipcrack_spawnPieces(Actor *this, enum asset_e model_id, s32 cnt){
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
particleEmitter_setParticleAccelerationRange(pCtrl,
0.0f, -1000.0f, 0.0f,
@@ -25,7 +25,7 @@ void __chwhipcrack_spawnPieces(Actor *this, enum asset_e model_id, s32 cnt){
func_802EF9F8(pCtrl, 0.7f);
func_802EFA18(pCtrl, 3);
func_802EFA20(pCtrl, 0.5f, 1.0f);
func_802EF9EC(pCtrl, 0x1f, 10000);
particleEmitter_setSfx(pCtrl, SFX_1F_HITTING_AN_ENEMY_3, 10000);
particleEmitter_setModel(pCtrl, model_id);
particleEmitter_setParticleSpawnPositionRange(pCtrl,
-120.0f, 50.0f, -120.0f,
@@ -33,12 +33,12 @@ void __chwhipcrack_spawnPieces(Actor *this, enum asset_e model_id, s32 cnt){
);
particleEmitter_setPosition(pCtrl, this->position);
func_802EFB70(pCtrl, 0.5f, 1.0f);
func_802EFE24(pCtrl,
particleEmitter_setAngularVelocityRange(pCtrl,
-500.0f, -500.0f, -500.0f,
500.0f, 500.0f, 500.0f
);
particleEmitter_setSpawnIntervalRange(pCtrl, 0.0f, 0.01f);
func_802EFEC0(pCtrl, 4.0f, 4.0f);
particleEmitter_setParticleLifeTimeRange(pCtrl, 4.0f, 4.0f);
particleEmitter_setParticleVelocityRange(pCtrl,
-300.0f, 250.0f, -300.0f,
300.0f, 400.0f, 300.0f
@@ -47,9 +47,9 @@ void __chwhipcrack_spawnPieces(Actor *this, enum asset_e model_id, s32 cnt){
}
void __chwhipcrack_spawnSmoke(Actor *this, s32 cnt){
ParticleEmitter *pCtrl = partEmitList_pushNew(cnt);
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(cnt);
particleEmitter_setSprite(pCtrl, ASSET_70E_SPRITE_SMOKE_2);
func_802EFA5C(pCtrl, 0.05f, 0.1f);
particleEmitter_setFade(pCtrl, 0.05f, 0.1f);
particleEmitter_setStartingFrameRange(pCtrl, 0, 7);
particleEmitter_setPosition(pCtrl, this->position);
func_802EFB70(pCtrl, 3.0f, 3.5f);
@@ -62,8 +62,8 @@ void __chwhipcrack_spawnSmoke(Actor *this, s32 cnt){
-30.0f, 150.0f, -30.0f,
30.0f, 300.0f, 30.0f
);
func_802EFFA8(pCtrl, D_80373124);
func_802EFEC0(pCtrl, 3.0f, 4.0f);
particleEmitter_setRGB(pCtrl, D_80373124);
particleEmitter_setParticleLifeTimeRange(pCtrl, 3.0f, 4.0f);
particleEmitter_emitN(pCtrl, cnt);
}
@@ -105,7 +105,7 @@ void chwhipcrack_update(Actor *this){
__chwhipcrack_setState(this, 1);
}
player_getPosition(plyr_pos);
plyr_dist = ml_vec3f_distance(plyr_pos, this->position);
plyr_dist = ml_distance_vec3f(plyr_pos, this->position);
if(this->state == 1){
if(plyr_dist < 700.0f){
__chwhipcrack_setState(this, 2);