Merge branch 'mr-origin-93'

This commit is contained in:
banjo.decomp
2024-10-19 23:04:50 -05:00
63 changed files with 190 additions and 184 deletions

View File

@@ -1964,8 +1964,11 @@ enum actor_e
ACTOR_151_LOCKUP_SLOW = 0x151, ACTOR_151_LOCKUP_SLOW = 0x151,
ACTOR_152_LOCKUP_MEDIUM, ACTOR_152_LOCKUP_MEDIUM,
ACTOR_153_LOCKUP_FAST, ACTOR_153_LOCKUP_FAST,
ACTOR_154_UNKNOWN,
ACTOR_158_UNKNOWN = 0x158, ACTOR_155_UNKNOWN,
ACTOR_156_UNKNOWN,
ACTOR_157_UNKNOWN,
ACTOR_158_UNKNOWN,
ACTOR_15A_UNKNOWN = 0x15A, ACTOR_15A_UNKNOWN = 0x15A,
@@ -2134,6 +2137,9 @@ enum actor_e
ACTOR_32B_UNKNOWN = 0x32B, //something with Tanktup ACTOR_32B_UNKNOWN = 0x32B, //something with Tanktup
ACTOR_32F_UNKNOWN = 0x32F,
ACTOR_330_UNKNOWN,
ACTOR_332_TWINKLY_BLUE = 0x332, ACTOR_332_TWINKLY_BLUE = 0x332,
ACTOR_333_TWINKLY_GREEN, ACTOR_333_TWINKLY_GREEN,
ACTOR_334_TWINKLY_ORANGE, ACTOR_334_TWINKLY_ORANGE,
@@ -2226,7 +2232,8 @@ enum actor_e
ACTOR_3C7_FF_PRIZE_GRUNTY_DOLL = 0x3C7, ACTOR_3C7_FF_PRIZE_GRUNTY_DOLL = 0x3C7,
ACTOR_3C8_FF_PRIZE_TOOTY = 0x3C8, ACTOR_3C8_FF_PRIZE_TOOTY = 0x3C8,
ACTOR_3CA_ROCK_TRAPPING_GRUNTY = 0x3CA ACTOR_3CA_ROCK_TRAPPING_GRUNTY = 0x3CA,
ACTOR_3CB_UNKNOWN
}; };
enum bundle_e { enum bundle_e {
@@ -3334,7 +3341,7 @@ enum asset_e
// 427 (Wooden Plank) // 427 (Wooden Plank)
ASSET_428_MODEL_BOSS_BOOM_BOX = 0x428, ASSET_428_MODEL_BOSS_BOOM_BOX = 0x428,
ASSET_429_MODEL_CC_KEY, ASSET_429_MODEL_CC_KEY,
// 42a (Smoke 2D?) ASSET_42A_UNKNOWN, // 42a (Smoke 2D?)
// 42b (Orange Triangle?) // 42b (Orange Triangle?)
ASSET_42C_MODEL_BURIED_TREASURE = 0x42C, ASSET_42C_MODEL_BURIED_TREASURE = 0x42C,
ASSET_42D_MODEL_QUARRIE = 0x42D, ASSET_42D_MODEL_QUARRIE = 0x42D,
@@ -3411,14 +3418,14 @@ enum asset_e
// 472 Blank Picture // 472 Blank Picture
// 473 Mumbo The BBQ King! He Bares Coconuts! // 473 Mumbo The BBQ King! He Bares Coconuts!
// 474 Roysten The Grill Master! // 474 Roysten The Grill Master!
// 475 (Heart 2D?) ASSET_475_UNKNOWN = 0x475,// 475 (Heart 2D?)
ASSET_476_SPRITE_BLUE_GLOW = 0x476, ASSET_476_SPRITE_BLUE_GLOW,
ASSET_477_SPRITE_YELLOW_GLOW, ASSET_477_SPRITE_YELLOW_GLOW,
// 478 (Yellow Glow?) // 478 (Yellow Glow?)
// 479 Bikini Girl // 479 Bikini Girl
// 47a (Brown Ball?) // 47a (Brown Ball?)
ASSET_47B_MODEL_ROCK = 0x47b, ASSET_47B_MODEL_ROCK = 0x47b,
// 47c (Snoring Z 2D?) ASSET_47C_UNKNOWN,// 47c (Snoring Z 2D?)
// Unused // Unused
// Unused // Unused
ASSET_47F_MODEL_XMAS_GIFT_BLUE = 0x47F, ASSET_47F_MODEL_XMAS_GIFT_BLUE = 0x47F,
@@ -3811,7 +3818,7 @@ enum asset_e
// Unused // Unused
// 606 Red Mushroom // 606 Red Mushroom
// 607 Green Mushroom // 607 Green Mushroom
// 608 White Circle ASSET_608_UNKNOWN = 0x608, // 608 White Circle
// 609 Mushroom (2D) // 609 Mushroom (2D)
// Unused // Unused
// Unused // Unused
@@ -4014,6 +4021,7 @@ enum asset_e
ASSET_6DA_SPRITE_HOURGLASS, ASSET_6DA_SPRITE_HOURGLASS,
ASSET_6DB_SPRITE_SKULL_HOURGLASS, ASSET_6DB_SPRITE_SKULL_HOURGLASS,
ASSET_6DC_SPRITE_XMAS_TREE_TIMER, ASSET_6DC_SPRITE_XMAS_TREE_TIMER,
ASSET_6DD_UNKNOWN,
SPRITE_DIALOG_FONT_ALPHAMASK = 0x6eb, SPRITE_DIALOG_FONT_ALPHAMASK = 0x6eb,
SPRITE_BOLD_FONT_LETTERS_ALPHAMASK, SPRITE_BOLD_FONT_LETTERS_ALPHAMASK,
@@ -4037,8 +4045,8 @@ enum asset_e
ASSET_711_SPRITE_SPARKLE_DARK_BLUE, ASSET_711_SPRITE_SPARKLE_DARK_BLUE,
ASSET_712_SPRITE_SPARKLE_GREEN, ASSET_712_SPRITE_SPARKLE_GREEN,
ASSET_713_SPRITE_SPARKLE_YELLOW, ASSET_713_SPRITE_SPARKLE_YELLOW,
ASSET_714_SPRITE_UNKNOWN,
ASSET_715_SPRITE_SPARKLE_RED = 0x715, ASSET_715_SPRITE_SPARKLE_RED,
ASSET_716_SPRITE_SPARKLE_WHITE, ASSET_716_SPRITE_SPARKLE_WHITE,
ASSET_717_SPRITE_SPARKLE_YELLOW_2, ASSET_717_SPRITE_SPARKLE_YELLOW_2,
ASSET_718_SPRITE_SPARKLE_WHITE_2, ASSET_718_SPRITE_SPARKLE_WHITE_2,

View File

@@ -198,7 +198,7 @@ ParticleEmitter *partEmitMgr_newEmitter(u32);
void func_802BB3DC(s32, f32, f32); void func_802BB3DC(s32, f32, f32);
void __spawnQueue_add_4(GenFunction_4, s32, s32, s32, s32); void __spawnQueue_add_4(GenFunction_4, s32, s32, s32, s32);
Actor *spawnQueue_actor_f32(enum actor_e actor_id, s32 x, s32 y, s32 z); Actor *spawnQueue_actor_f32(enum actor_e actor_id, s32 x, s32 y, s32 z);
void func_8030DA44(u8); void sfxsource_freeSfxsourceByIndex(u8);
void particleEmitter_emitInVolume(ParticleEmitter *, f32[3], f32[3], s32); void particleEmitter_emitInVolume(ParticleEmitter *, f32[3], f32[3], s32);
@@ -450,8 +450,8 @@ void func_80352CF4(f32 *, f32 *, f32, f32);
AnimCtrl *baanim_getAnimCtrlPtr(void); AnimCtrl *baanim_getAnimCtrlPtr(void);
void player_setYPosition(f32); void player_setYPosition(f32);
NodeProp *nodeprop_findByActorIdAndActorPosition(enum actor_e arg0, Actor *arg1); NodeProp *nodeprop_findByActorIdAndActorPosition(enum actor_e actor_id, Actor *actor_ptr);
NodeProp *func_80304CAC(s32 arg0, f32 position[3]); NodeProp *nodeprop_findByActorIdAndPosition_f32(enum actor_e actor_id, f32 position[3]);
Actor *actorArray_findClosestActorFromActorId(f32 position[3], enum actor_e actor_id, s32 arg2, f32 *min_distance_ptr); Actor *actorArray_findClosestActorFromActorId(f32 position[3], enum actor_e actor_id, s32 arg2, f32 *min_distance_ptr);
Actor *subaddie_getLinkedActor(Actor *); Actor *subaddie_getLinkedActor(Actor *);

View File

@@ -259,9 +259,9 @@ func_802F9F80 = 0x802fa160;
func_802F9FD0 = 0x802fa1b0; func_802F9FD0 = 0x802fa1b0;
func_802FA060 = 0x802fa240; func_802FA060 = 0x802fa240;
func_802FADD4 = 0x802fafb4; func_802FADD4 = 0x802fafb4;
cubeList_findNodePropByActorId = 0x80304b6c; cubeList_findNodePropByActorIdAndPosition_s32 = 0x80304b6c;
nodeprop_findByActorIdAndActorPosition = 0x80304dd8; nodeprop_findByActorIdAndActorPosition = 0x80304dd8;
func_80304CAC = 0x80304e4c; nodeprop_findByActorIdAndPosition_f32 = 0x80304e4c;
nodeprop_getPosition_s32 = 0x80304eec; nodeprop_getPosition_s32 = 0x80304eec;
nodeprop_getPosition = 0x80304f08; nodeprop_getPosition = 0x80304f08;
_nodeProp_findPositionFromActorId = 0x80304f70; _nodeProp_findPositionFromActorId = 0x80304f70;
@@ -278,7 +278,7 @@ func_8030C704 = 0x8030c8a4;
scissorBox_setSmall = 0x8030c8b0; scissorBox_setSmall = 0x8030c8b0;
func_8030C77C = 0x8030c91c; func_8030C77C = 0x8030c91c;
sfxsource_createSfxsourceAndReturnIndex = 0x8030daac; sfxsource_createSfxsourceAndReturnIndex = 0x8030daac;
func_8030DA44 = 0x8030dbe4; sfxsource_freeSfxsourceByIndex = 0x8030dbe4;
sfxsource_setSfxId = 0x8030dc20; sfxsource_setSfxId = 0x8030dc20;
sfxsource_setSampleRate = 0x8030dc5c; sfxsource_setSampleRate = 0x8030dc5c;
sfxsource_playSfxAtVolume = 0x8030dd54; sfxsource_playSfxAtVolume = 0x8030dd54;

View File

@@ -249,7 +249,7 @@ int CC_func_80388CA0(void){
void func_80388CB4(void){ void func_80388CB4(void){
if(D_80389FA0.unk21){ if(D_80389FA0.unk21){
skeletalAnim_free(D_80389FA0.unk0); skeletalAnim_free(D_80389FA0.unk0);
func_8030DA44(D_80389FA0.sfxsourceIdx); sfxsource_freeSfxsourceByIndex(D_80389FA0.sfxsourceIdx);
func_80340690(D_80389FA0.unk18); func_80340690(D_80389FA0.unk18);
func_8034A2A8(D_80389FA0.unk34); func_8034A2A8(D_80389FA0.unk34);
if(model_getVtxList(D_80389FA0.unk24) != D_80389FA0.unk40) if(model_getVtxList(D_80389FA0.unk24) != D_80389FA0.unk40)

View File

@@ -77,7 +77,7 @@ void func_80386AD0(ActorMarker *arg0, s32 arg1) {
void func_80386AF8(Actor *arg0) { void func_80386AF8(Actor *arg0) {
ActorLocal_CC_530 *local = (ActorLocal_CC_530 *)&arg0->local; ActorLocal_CC_530 *local = (ActorLocal_CC_530 *)&arg0->local;
CC_func_80386920(arg0, 0); CC_func_80386920(arg0, 0);
func_8030DA44(local->sfxsourceIdx); sfxsource_freeSfxsourceByIndex(local->sfxsourceIdx);
} }
void func_80386B28(Actor *this){ void func_80386B28(Actor *this){

View File

@@ -55,7 +55,7 @@ void func_803878A0(Actor *this, s32 next_state) {
void CCW_func_80387A20(Actor *this){ void CCW_func_80387A20(Actor *this){
ActorLocal_CCW_14B0 *local = (ActorLocal_CCW_14B0 *)&this->local; ActorLocal_CCW_14B0 *local = (ActorLocal_CCW_14B0 *)&this->local;
func_8030DA44(local->sfxsourceIdx); sfxsource_freeSfxsourceByIndex(local->sfxsourceIdx);
} }
void CCW_func_80387A40(Actor *this) { void CCW_func_80387A40(Actor *this) {

View File

@@ -118,7 +118,7 @@ void func_803891B0(void* marker) {
void func_8038921C(void* marker) { void func_8038921C(void* marker) {
Actor* actor = marker_getActor(reinterpret_cast(ActorMarker*, marker)); Actor* actor = marker_getActor(reinterpret_cast(ActorMarker*, marker));
func_8030E394(actor->unk44_31); func_8030E394(actor->unk44_31);
func_8030DA44(actor->unk44_31); sfxsource_freeSfxsourceByIndex(actor->unk44_31);
actor->unk44_31 = 0U; actor->unk44_31 = 0U;
FUNC_8030E624(SFX_6C_LOCKUP_CLOSING, 1.0f, 25000); FUNC_8030E624(SFX_6C_LOCKUP_CLOSING, 1.0f, 25000);
} }

View File

@@ -91,7 +91,7 @@ void func_8038717C(Actor *this){
ActorLocal_CCW_950 *local; ActorLocal_CCW_950 *local;
local = (ActorLocal_CCW_950 *)&this->local; local = (ActorLocal_CCW_950 *)&this->local;
func_8030DA44(local->sfxsourceIdx); sfxsource_freeSfxsourceByIndex(local->sfxsourceIdx);
} }
void chwasp_update(Actor *this) { void chwasp_update(Actor *this) {

View File

@@ -4,7 +4,7 @@
extern void func_8028E668(f32[3], f32, f32, f32); extern void func_8028E668(f32[3], f32, f32, f32);
extern Actor *func_80328230(enum actor_e id, f32 pos[3], f32 rot[3]); extern Actor *func_80328230(enum actor_e id, f32 pos[3], f32 rot[3]);
extern NodeProp *cubeList_findNodePropByActorId(enum actor_e, s32[3]); extern NodeProp *cubeList_findNodePropByActorIdAndPosition_s32(enum actor_e, s32[3]);
extern f32 func_8038BE20(f32 arg0[3]); extern f32 func_8038BE20(f32 arg0[3]);
typedef struct { typedef struct {
@@ -383,8 +383,8 @@ void func_803895E0(void){
for (i = 0; i< 7; i++){ for (i = 0; i< 7; i++){
s0 = (i < 3) s0 = (i < 3)
? cubeList_findNodePropByActorId(D_80391DB8[i].unk0, D_80391DA0) ? cubeList_findNodePropByActorIdAndPosition_s32(D_80391DB8[i].unk0, D_80391DA0)
: cubeList_findNodePropByActorId(D_80391DB8[i].unk0, D_80391DAC); : cubeList_findNodePropByActorIdAndPosition_s32(D_80391DB8[i].unk0, D_80391DAC);
nodeprop_getPosition(s0, sp64); nodeprop_getPosition(s0, sp64);
f20 = (f32)func_80304DA8(s0); f20 = (f32)func_80304DA8(s0);

View File

@@ -28,7 +28,7 @@ void __chXmasTree_free(Actor *this){
item_set(ITEM_6_HOURGLASS, FALSE); item_set(ITEM_6_HOURGLASS, FALSE);
tmp_a0 = this->unk44_31; tmp_a0 = this->unk44_31;
if(tmp_a0){ if(tmp_a0){
func_8030DA44(tmp_a0); sfxsource_freeSfxsourceByIndex(tmp_a0);
this->unk44_31 = 0; this->unk44_31 = 0;
} }
} }
@@ -165,7 +165,7 @@ void chXmasTree_update(Actor *this){
item_set(ITEM_6_HOURGLASS, FALSE); item_set(ITEM_6_HOURGLASS, FALSE);
tmp_a0 = this->unk44_31; tmp_a0 = this->unk44_31;
if(tmp_a0){ if(tmp_a0){
func_8030DA44(tmp_a0); sfxsource_freeSfxsourceByIndex(tmp_a0);
this->unk44_31 = 0; this->unk44_31 = 0;
} }
func_80324E38(0.0f, 3); func_80324E38(0.0f, 3);

View File

@@ -27,7 +27,7 @@ void func_803918C0(void){
void func_8039195C(void){ void func_8039195C(void){
if(D_803935E0.sfxsourceIdx){ if(D_803935E0.sfxsourceIdx){
func_8030DA44(D_803935E0.sfxsourceIdx); sfxsource_freeSfxsourceByIndex(D_803935E0.sfxsourceIdx);
D_803935E0.sfxsourceIdx = 0; D_803935E0.sfxsourceIdx = 0;
} }
} }

View File

@@ -89,8 +89,8 @@ s32 func_80387360(void){
void func_8038736C(Actor *this){ void func_8038736C(Actor *this){
ActorLocal_chGobi1 *local = (ActorLocal_chGobi1 *)&this->local; ActorLocal_chGobi1 *local = (ActorLocal_chGobi1 *)&this->local;
chGobi1_setState(this, 0); chGobi1_setState(this, 0);
func_8030DA44(local->unk0[0]); sfxsource_freeSfxsourceByIndex(local->unk0[0]);
func_8030DA44(local->unk0[1]); sfxsource_freeSfxsourceByIndex(local->unk0[1]);
} }
void func_803873B0(ActorMarker *this_marker, ActorMarker *other_marker){ void func_803873B0(ActorMarker *this_marker, ActorMarker *other_marker){

View File

@@ -98,7 +98,7 @@ void func_8038DB88(Actor *this){
if(func_8030E3FC(tmp)){ if(func_8030E3FC(tmp)){
func_8030E394(this->unk44_31); func_8030E394(this->unk44_31);
} }
func_8030DA44(this->unk44_31); sfxsource_freeSfxsourceByIndex(this->unk44_31);
this->unk44_31 = 0; this->unk44_31 = 0;
} }
} }

View File

@@ -74,7 +74,7 @@ void func_8038C8A0(Actor *this, s32 next_state){
this->marker->propPtr->unk8_3 = (next_state == 1) ? FALSE : TRUE; this->marker->propPtr->unk8_3 = (next_state == 1) ? FALSE : TRUE;
this->marker->collidable = (next_state == 1) ? FALSE : TRUE; this->marker->collidable = (next_state == 1) ? FALSE : TRUE;
if(this->state == 4 || this->state == 5) if(this->state == 4 || this->state == 5)
func_8030DA44(local->sfxsourceIdx); sfxsource_freeSfxsourceByIndex(local->sfxsourceIdx);
if(next_state == 4 || next_state == 5){ if(next_state == 4 || next_state == 5){
local->sfxsourceIdx = sfxsource_createSfxsourceAndReturnIndex(); local->sfxsourceIdx = sfxsource_createSfxsourceAndReturnIndex();

View File

@@ -38,7 +38,7 @@ void func_8038D47C(Actor *this){
this->spawn_position_y = 2997.0f; this->spawn_position_y = 2997.0f;
this->spawn_position_z = 5884.0f; this->spawn_position_z = 5884.0f;
}//L8038D4FC }//L8038D4FC
tmp_v0 = func_80304CAC(0x32f, this->spawn_position); tmp_v0 = nodeprop_findByActorIdAndPosition_f32(ACTOR_32F_UNKNOWN, this->spawn_position);
if(!tmp_v0){ if(!tmp_v0){
this->unk1C_x = -1394.0f; this->unk1C_x = -1394.0f;
this->unk1C_y = 2811.0f; this->unk1C_y = 2811.0f;
@@ -48,7 +48,7 @@ void func_8038D47C(Actor *this){
nodeprop_getPosition(tmp_v0, this->unk1C); nodeprop_getPosition(tmp_v0, this->unk1C);
} }
tmp_v0 = func_80304CAC(0x330, this->spawn_position); tmp_v0 = nodeprop_findByActorIdAndPosition_f32(ACTOR_330_UNKNOWN, this->spawn_position);
if(!tmp_v0){ if(!tmp_v0){
this->velocity_x = -1424.0f; this->velocity_x = -1424.0f;
this->velocity_y = 2811.0f; this->velocity_y = 2811.0f;

View File

@@ -38,7 +38,7 @@ void func_80388BD0(Actor *this, s32 arg1){
void func_80388BE8(Actor *actor){ void func_80388BE8(Actor *actor){
ActorLocal_RBB_27E0 *local = (ActorLocal_RBB_27E0 *)&actor->local; ActorLocal_RBB_27E0 *local = (ActorLocal_RBB_27E0 *)&actor->local;
if(actor->modelCacheIndex == 0x17b){ if(actor->modelCacheIndex == 0x17b){
func_8030DA44(local->sfxsourceIdx); sfxsource_freeSfxsourceByIndex(local->sfxsourceIdx);
} }
} }

View File

@@ -6,7 +6,7 @@
Actor *func_802D94B4(ActorMarker *, Gfx **, Mtx **, Vtx **); Actor *func_802D94B4(ActorMarker *, Gfx **, Mtx **, Vtx **);
void func_8028E668(f32 *, f32, f32, f32); void func_8028E668(f32 *, f32, f32, f32);
void func_80328FB0(Actor *, f32); void func_80328FB0(Actor *, f32);
void func_8030DA44(u8); void sfxsource_freeSfxsourceByIndex(u8);
void timed_exitStaticCamera(f32); void timed_exitStaticCamera(f32);
void subaddie_set_state_with_direction(Actor *, s32, f32, s32); void subaddie_set_state_with_direction(Actor *, s32, f32, s32);
@@ -137,7 +137,7 @@ void __chSmBottles_setState(Actor *this, s32 next_state) {
this->unk138_23 = 0; this->unk138_23 = 0;
case SM_BOTTLES_STATE_2_UNKNOWN://L80389004 case SM_BOTTLES_STATE_2_UNKNOWN://L80389004
func_8030DA44(this->unk44_31); sfxsource_freeSfxsourceByIndex(this->unk44_31);
this->unk44_31 = 0; this->unk44_31 = 0;
break; break;
@@ -418,7 +418,7 @@ void __chSmBottles_free(Actor *this) {
u8 tmp = this->unk44_31; u8 tmp = this->unk44_31;
if (tmp) { if (tmp) {
func_8030DA44(tmp); sfxsource_freeSfxsourceByIndex(tmp);
} }
} }

View File

@@ -37,10 +37,10 @@ ActorAnimationInfo gChBlubberAnimations[6] = {
{ASSET_B8_ANIM_BLUBBER_RUN, 0.8f} {ASSET_B8_ANIM_BLUBBER_RUN, 0.8f}
}; };
ActorInfo gChBlubber = { ActorInfo gChBlubber = {
MARKER_A3_BLUBBER, ACTOR_115_BLUBBER, ASSET_370_MODEL_BLUBBER, MARKER_A3_BLUBBER, ACTOR_115_BLUBBER, ASSET_370_MODEL_BLUBBER,
0x1, gChBlubberAnimations, 0x1, gChBlubberAnimations,
__chBlubber_updateFunc, __chBlubber_update2Func, __chBlubber_drawFunc, __chBlubber_updateFunc, __chBlubber_update2Func, __chBlubber_drawFunc,
0, 0x399, 1.8f, 0 0, 0x399, 1.8f, 0
}; };
@@ -162,7 +162,7 @@ static void __chBlubber_updateFunc(Actor *this){
subaddie_set_state_forward(this, CH_BLUBBER_STATE_3_UNKNOWN); subaddie_set_state_forward(this, CH_BLUBBER_STATE_3_UNKNOWN);
} }
if( mapSpecificFlags_get(TTC_SPECIFIC_FLAG_0_BLUBBER_UNKNOWN) if( mapSpecificFlags_get(TTC_SPECIFIC_FLAG_0_BLUBBER_UNKNOWN)
&& !this->unk138_23 && !this->unk138_23
){ ){
if (item_getCount(ITEM_18_GOLD_BULLIONS) == 0) { if (item_getCount(ITEM_18_GOLD_BULLIONS) == 0) {
@@ -214,7 +214,7 @@ static void __chBlubber_updateFunc(Actor *this){
__chBlubber_checkJiggySpawnedTextAndAdvanceState(this); __chBlubber_checkJiggySpawnedTextAndAdvanceState(this);
break; break;
case CH_BLUBBER_STATE_3_UNKNOWN: case CH_BLUBBER_STATE_3_UNKNOWN:
break; break;
case CH_BLUBBER_STATE_4_UNKNOWN: case CH_BLUBBER_STATE_4_UNKNOWN:

View File

@@ -501,13 +501,11 @@ static void __code3E30_resetCheatCodeProgress(void)
__code3E30_resetSecretCheatCodeProgress(); __code3E30_resetSecretCheatCodeProgress();
} }
void code3E30_overlayRelease(void) void code3E30_overlayRelease(void) {
{ if (sMapState.model1) {
if (sMapState.model1)
{
__code3E30_setupCheatCodeTimer(0); __code3E30_setupCheatCodeTimer(0);
func_8030DA44(sMapState.doorOpeningSfxSourceIdx); sfxsource_freeSfxsourceByIndex(sMapState.doorOpeningSfxSourceIdx);
func_8030DA44(sMapState.dullCannonShotSfxSourceId); sfxsource_freeSfxsourceByIndex(sMapState.dullCannonShotSfxSourceId);
} }
} }

View File

@@ -64,7 +64,7 @@ void func_80244BB0(s32 arg0, s32 arg1, s32 arg2, f32 arg3){
void func_80244C78(int arg0){ void func_80244C78(int arg0){
if(D_802758E0[arg0]){ if(D_802758E0[arg0]){
func_8030DA44(D_802758E0[arg0]); sfxsource_freeSfxsourceByIndex(D_802758E0[arg0]);
} }
D_802758E0[arg0] = 0; D_802758E0[arg0] = 0;
} }

View File

@@ -24,7 +24,7 @@ extern Actor *baModel_80291AAC(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **
extern void baMarker_8028D7B8(s32 arg0, ActorMarker *arg1, struct5Cs *collision_flags); extern void baMarker_8028D7B8(s32 arg0, ActorMarker *arg1, struct5Cs *collision_flags);
extern void func_802EE6CC(f32[3], s32, s32[4], s32, f32, f32, s32,s32,s32); extern void func_802EE6CC(f32[3], s32, s32[4], s32, f32, f32, s32,s32,s32);
extern void func_80320ED8(ActorMarker *, f32, s32); extern void func_80320ED8(ActorMarker *, f32, s32);
extern NodeProp *cubeList_findNodePropByActorId(enum actor_e actor_id, s32 position[3]); extern NodeProp *cubeList_findNodePropByActorIdAndPosition_s32(enum actor_e actor_id, s32 position[3]);
typedef struct typedef struct
{ {
@@ -157,7 +157,7 @@ void __baMarker_8028B9A8(s32 arg0){
NodeProp *tmp_v0; NodeProp *tmp_v0;
s32 ideal_yaw[3]; s32 ideal_yaw[3];
tmp_v0 = cubeList_findNodePropByActorId(0x1F6, 0); tmp_v0 = cubeList_findNodePropByActorIdAndPosition_s32(0x1F6, NULL);
nodeprop_getPosition_s32(tmp_v0, &ideal_yaw); nodeprop_getPosition_s32(tmp_v0, &ideal_yaw);
func_802CA1CC(arg0); func_802CA1CC(arg0);
actor_spawnWithYaw_s32(ACTOR_47_EMPTY_HONEYCOMB, &ideal_yaw, 0); actor_spawnWithYaw_s32(ACTOR_47_EMPTY_HONEYCOMB, &ideal_yaw, 0);

View File

@@ -196,5 +196,5 @@ void bsbflap_end(void) {
baphysics_reset_gravity(); baphysics_reset_gravity();
baphysics_reset_terminal_velocity(); baphysics_reset_terminal_velocity();
func_8029E090(0, 0.2f); func_8029E090(0, 0.2f);
func_8030DA44(D_8037D30C); sfxsource_freeSfxsourceByIndex(D_8037D30C);
} }

View File

@@ -152,7 +152,7 @@ void bsblongleg_enter_update(void){
void bsblongleg_enter_end(void){ void bsblongleg_enter_end(void){
func_802A5404(); func_802A5404();
func_8030DA44(D_8037D361); sfxsource_freeSfxsourceByIndex(D_8037D361);
} }
void bsblongleg_stand_enter(void){ void bsblongleg_stand_enter(void){
@@ -308,7 +308,7 @@ void bsblongleg_exit_update(void){
} }
void bsblongleg_exit_end(void){ void bsblongleg_exit_end(void){
func_8030DA44(D_8037D361); sfxsource_freeSfxsourceByIndex(D_8037D361);
func_802A5404(); func_802A5404();
} }

View File

@@ -116,7 +116,7 @@ void bsbshock_charge_update(void){
} }
void bsbshock_charge_end(void){ void bsbshock_charge_end(void){
func_8030DA44(D_8037D382); sfxsource_freeSfxsourceByIndex(D_8037D382);
func_8029E064(0); func_8029E064(0);
func_8029E070(0); func_8029E070(0);
if(baModel_80292230() != 0.0f){ if(baModel_80292230() != 0.0f){

View File

@@ -263,7 +263,7 @@ void func_802C6240(Actor *this){
if (0.0f == this->actor_specific_1_f) { if (0.0f == this->actor_specific_1_f) {
animctrl_setPlaybackType(this->animctrl, ANIMCTRL_LOOP); animctrl_setPlaybackType(this->animctrl, ANIMCTRL_LOOP);
subaddie_set_state_with_direction(this, 1, 0.65f, 1); subaddie_set_state_with_direction(this, 1, 0.65f, 1);
func_8030DA44(this->unk44_31); sfxsource_freeSfxsourceByIndex(this->unk44_31);
this->unk44_31 = 0; this->unk44_31 = 0;
sfxsource_playHighPriority(SFX_19_BANJO_LANDING_08); sfxsource_playHighPriority(SFX_19_BANJO_LANDING_08);
} }

View File

@@ -91,7 +91,7 @@ void func_8035EDB0(f32 position[3], s32 count, enum asset_e sprite) {
void func_8035EE48(Actor *this){ void func_8035EE48(Actor *this){
u8 val = this->unk44_31; u8 val = this->unk44_31;
if(val != 0){ if(val != 0){
func_8030DA44(val); sfxsource_freeSfxsourceByIndex(val);
this->unk44_31 = 0; this->unk44_31 = 0;
} }
} }

View File

@@ -294,7 +294,7 @@ void chmole_spawnMolehill(ActorMarker *marker){
void func_802D9C90(Actor *this){ void func_802D9C90(Actor *this){
u8 tmp_a1 = this->unk44_31; u8 tmp_a1 = this->unk44_31;
if(tmp_a1){ if(tmp_a1){
func_8030DA44(tmp_a1); sfxsource_freeSfxsourceByIndex(tmp_a1);
} }
} }
@@ -413,7 +413,7 @@ void chmole_update(Actor *this){
}//L802DA128 }//L802DA128
if(actor_animationIsAt(this, 0.9999f)){ if(actor_animationIsAt(this, 0.9999f)){
chmole_setFacingDirection(this); chmole_setFacingDirection(this);
func_8030DA44(this->unk44_31); sfxsource_freeSfxsourceByIndex(this->unk44_31);
this->unk44_31 = 0; this->unk44_31 = 0;
} }
else if(actor_animationIsAt(this, 0.14f)){//L802DA154 else if(actor_animationIsAt(this, 0.14f)){//L802DA154
@@ -466,7 +466,7 @@ void chmole_update(Actor *this){
} }
else if(actor_animationIsAt(this, 0.9999f)){//L802DA45C else if(actor_animationIsAt(this, 0.9999f)){//L802DA45C
func_802D9600(this); func_802D9600(this);
func_8030DA44(this->unk44_31); sfxsource_freeSfxsourceByIndex(this->unk44_31);
this->unk44_31 = 0; this->unk44_31 = 0;
} }
break; break;

View File

@@ -333,7 +333,7 @@ void chSnacker_spawn(void) {
_player_getPosition(spawn_position); _player_getPosition(spawn_position);
if (volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) != 0) { if (volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) != 0) {
nodeprop_getPosition(func_80304CAC(0x3CB, spawn_position), spawn_position); nodeprop_getPosition(nodeprop_findByActorIdAndPosition_f32(ACTOR_3CB_UNKNOWN, spawn_position), spawn_position);
} }
else{ else{
spawn_angle_rad = randf2(0.0f, 3.28f); spawn_angle_rad = randf2(0.0f, 3.28f);

View File

@@ -47,7 +47,7 @@ void func_802D0500(Actor *this){
void func_802D05A0(Actor *this, s32 next_state){ void func_802D05A0(Actor *this, s32 next_state){
ActorLocal_Core2_49570 *local = (ActorLocal_Core2_49570 *)this->local; ActorLocal_Core2_49570 *local = (ActorLocal_Core2_49570 *)this->local;
if(this->state == 2 && local->sfxsourceIdx){ if(this->state == 2 && local->sfxsourceIdx){
func_8030DA44(local->sfxsourceIdx); sfxsource_freeSfxsourceByIndex(local->sfxsourceIdx);
local->sfxsourceIdx = 0; local->sfxsourceIdx = 0;
} }
if(next_state == 2){ if(next_state == 2){

View File

@@ -77,7 +77,7 @@ void func_802997E8(void){
if(D_8037C6D0.sfxsourceIdx){ if(D_8037C6D0.sfxsourceIdx){
D_8037C6D0.unk4 += time_getDelta(); D_8037C6D0.unk4 += time_getDelta();
if(D_8037C6D0.unk8 <= D_8037C6D0.unk4){ if(D_8037C6D0.unk8 <= D_8037C6D0.unk4){
func_8030DA44(D_8037C6D0.sfxsourceIdx); sfxsource_freeSfxsourceByIndex(D_8037C6D0.sfxsourceIdx);
D_8037C6D0.sfxsourceIdx = 0; D_8037C6D0.sfxsourceIdx = 0;
} }
else{ else{
@@ -127,13 +127,13 @@ void func_80299900(void){
} }
void func_80299A20(void){ void func_80299A20(void){
func_8030DA44(D_8037C6C1); sfxsource_freeSfxsourceByIndex(D_8037C6C1);
func_8030DA44(D_8037C6C0); sfxsource_freeSfxsourceByIndex(D_8037C6C0);
func_8030DA44(D_8037C6C3); sfxsource_freeSfxsourceByIndex(D_8037C6C3);
func_8030DA44(D_8037C6C2); sfxsource_freeSfxsourceByIndex(D_8037C6C2);
func_8030DA44(D_8037C6C4); sfxsource_freeSfxsourceByIndex(D_8037C6C4);
if(D_8037C6D0.sfxsourceIdx){ if(D_8037C6D0.sfxsourceIdx){
func_8030DA44(D_8037C6D0.sfxsourceIdx); sfxsource_freeSfxsourceByIndex(D_8037C6D0.sfxsourceIdx);
} }
} }

View File

@@ -19,7 +19,7 @@ bool func_8029CFA0(void){
} }
void func_8029CFF8(void){ void func_8029CFF8(void){
func_8030DA44(D_8037D210); sfxsource_freeSfxsourceByIndex(D_8037D210);
} }
void func_8029D01C(void){ void func_8029D01C(void){

View File

@@ -9,7 +9,7 @@ extern Actor *func_80328230(enum actor_e, f32[3], f32[3]);
extern void func_802BEA4C(f32[3], f32[3], f32, f32[3]); extern void func_802BEA4C(f32[3], f32[3], f32, f32[3]);
extern void func_802BEBE8(f32[3], f32[3], f32, f32[3]); extern void func_802BEBE8(f32[3], f32[3], f32, f32[3]);
extern void func_802BEAAC(f32[3], f32[3], f32, f32[3], f32[3], f32[3], f32[3]); extern void func_802BEAAC(f32[3], f32[3], f32, f32[3], f32[3], f32[3], f32[3]);
extern NodeProp *cubeList_findNodePropByActorId(enum actor_e, s32[3]); extern NodeProp *cubeList_findNodePropByActorIdAndPosition_s32(enum actor_e, s32[3]);
extern BKCollisionTri *func_80320B98(f32[3], f32[3], f32[3], s32); extern BKCollisionTri *func_80320B98(f32[3], f32[3], f32[3], s32);
f32 func_802BB938(f32[3], f32[3]); f32 func_802BB938(f32[3], f32[3]);
f32 func_802BBD48(void); f32 func_802BBD48(void);
@@ -60,7 +60,7 @@ bool func_802BB720(s32 arg0, f32 arg1[3], f32 arg2[3], s32 *arg3) {
if ((arg0 >= 0x5B) && (arg0 < 0x63)) { if ((arg0 >= 0x5B) && (arg0 < 0x63)) {
arg0 -= 0x40; arg0 -= 0x40;
} }
temp_v0 = cubeList_findNodePropByActorId(D_803657E0[arg0], NULL); temp_v0 = cubeList_findNodePropByActorIdAndPosition_s32(D_803657E0[arg0], NULL);
if (temp_v0 != NULL) { if (temp_v0 != NULL) {
nodeprop_getPosition(temp_v0, arg1); nodeprop_getPosition(temp_v0, arg1);
*arg3 = func_80304DB8(temp_v0); *arg3 = func_80304DB8(temp_v0);

View File

@@ -262,7 +262,7 @@ void func_802CCBC8(Actor *this) {
local = (ActorLocal_Core2_45310 * )&this->local; local = (ActorLocal_Core2_45310 * )&this->local;
if(local->unk0 != 0){ if(local->unk0 != 0){
func_8030DA44(local->unk0); sfxsource_freeSfxsourceByIndex(local->unk0);
} }
} }
@@ -324,7 +324,7 @@ void func_802CCC5C(Actor *this) {
} }
if (!subaddie_playerIsWithinSphere(this, 4000)) { if (!subaddie_playerIsWithinSphere(this, 4000)) {
if (local->unk0 != 0) { if (local->unk0 != 0) {
func_8030DA44(local->unk0); sfxsource_freeSfxsourceByIndex(local->unk0);
local->unk0 = 0; local->unk0 = 0;
} }
} else { } else {

View File

@@ -385,7 +385,7 @@ void chBeeSwarm_update(Actor *this) {
return; return;
if (!subaddie_playerIsWithinSphere(this, 0x5DC)) { if (!subaddie_playerIsWithinSphere(this, 0x5DC)) {
if ((u8)this->unk44_31 != 0) { if ((u8)this->unk44_31 != 0) {
func_8030DA44(this->unk44_31); sfxsource_freeSfxsourceByIndex(this->unk44_31);
this->unk44_31 = 0; this->unk44_31 = 0;
D_8037DCBC = 0; D_8037DCBC = 0;
} }

View File

@@ -105,7 +105,7 @@ bool chMumbo_withinHorzDistToPlayer(s32 x, s32 z, s32 dist) {
bool chMumbo_func_802D181C(s32 arg0) { bool chMumbo_func_802D181C(s32 arg0) {
s32 search_start_cube[3] = D_80367504; s32 search_start_cube[3] = D_80367504;
return BOOL(cubeList_findNodePropByActorId(arg0, search_start_cube)); return BOOL(cubeList_findNodePropByActorIdAndPosition_s32(arg0, search_start_cube));
} }
void chMumbo_func_802D186C(Actor *this) { void chMumbo_func_802D186C(Actor *this) {

View File

@@ -23,14 +23,14 @@ s32 D_80368860[] = {
}; };
s32 D_8036889C[] = { s32 D_8036889C[] = {
0x608, ASSET_608_UNKNOWN,
ASSET_702_SPRITE_UNKNOWN, ASSET_702_SPRITE_UNKNOWN,
0x712, ASSET_712_SPRITE_SPARKLE_GREEN,
ASSET_713_SPRITE_SPARKLE_YELLOW, ASSET_713_SPRITE_SPARKLE_YELLOW,
ASSET_717_SPRITE_SPARKLE_YELLOW_2, ASSET_717_SPRITE_SPARKLE_YELLOW_2,
ASSET_710_SPRITE_SPARKLE_PURPLE, ASSET_710_SPRITE_SPARKLE_PURPLE,
ASSET_711_SPRITE_SPARKLE_DARK_BLUE, ASSET_711_SPRITE_SPARKLE_DARK_BLUE,
0x714, ASSET_714_SPRITE_UNKNOWN,
ASSET_715_SPRITE_SPARKLE_RED, ASSET_715_SPRITE_SPARKLE_RED,
ASSET_716_SPRITE_SPARKLE_WHITE, ASSET_716_SPRITE_SPARKLE_WHITE,
ASSET_718_SPRITE_SPARKLE_WHITE_2, ASSET_718_SPRITE_SPARKLE_WHITE_2,

View File

@@ -49,7 +49,7 @@ ParticleEmitter *func_802F4274(f32 arg0[3]) {
if (sp20 != 0) { if (sp20 != 0) {
func_802EFAB0(temp_v0, sp20, sp2C[1]); func_802EFAB0(temp_v0, sp20, sp2C[1]);
} }
particleEmitter_setSprite(temp_v0, 0x42A); particleEmitter_setSprite(temp_v0, ASSET_42A_UNKNOWN);
particleEmitter_setAlpha(temp_v0, 0xFF); particleEmitter_setAlpha(temp_v0, 0xFF);
particleEmitter_setFade(temp_v0, 0, 0.78f); particleEmitter_setFade(temp_v0, 0, 0.78f);
particleEmitter_setStartingFrameRange(temp_v0, 0, 0); particleEmitter_setStartingFrameRange(temp_v0, 0, 0);

View File

@@ -155,8 +155,8 @@ void func_802F46F4(Struct5Ds *this){
} }
void func_802F4798(Struct5Ds *this){ void func_802F4798(Struct5Ds *this){
func_8030DA44(this->unk1C); sfxsource_freeSfxsourceByIndex(this->unk1C);
func_8030DA44(this->unk1D); sfxsource_freeSfxsourceByIndex(this->unk1D);
free(this); free(this);
} }

View File

@@ -98,8 +98,8 @@ void func_8028E0F0(s32 arg0, s32 arg1[3]) {
case 1: case 1:
sp68 = 1; sp68 = 1;
ml_vec3f_copy(sp40, sp7C); ml_vec3f_copy(sp40, sp7C);
nodeprop_getPosition(func_80304CAC(0x156, sp40), sp58); nodeprop_getPosition(nodeprop_findByActorIdAndPosition_f32(ACTOR_156_UNKNOWN, sp40), sp58);
nodeprop_getPosition(func_80304CAC(0x157, sp40), sp4C); nodeprop_getPosition(nodeprop_findByActorIdAndPosition_f32(ACTOR_157_UNKNOWN, sp40), sp4C);
sp40[0] = ((sp4C[0] - sp58[0]) * D_8037BFB0[0]) + sp58[0]; sp40[0] = ((sp4C[0] - sp58[0]) * D_8037BFB0[0]) + sp58[0];
sp40[2] = ((sp4C[2] - sp58[2]) * D_8037BFB0[1]) + sp58[2]; sp40[2] = ((sp4C[2] - sp58[2]) * D_8037BFB0[1]) + sp58[2];
ml_vec3f_copy(sp7C, sp40); ml_vec3f_copy(sp7C, sp40);
@@ -107,8 +107,8 @@ void func_8028E0F0(s32 arg0, s32 arg1[3]) {
case 2: case 2:
sp64 = 1; sp64 = 1;
ml_vec3f_copy(sp1C, sp7C); ml_vec3f_copy(sp1C, sp7C);
nodeprop_getPosition(func_80304CAC(0x154, sp1C), sp34); nodeprop_getPosition(nodeprop_findByActorIdAndPosition_f32(ACTOR_154_UNKNOWN, sp1C), sp34);
nodeprop_getPosition(func_80304CAC(0x155, sp1C), sp28); nodeprop_getPosition(nodeprop_findByActorIdAndPosition_f32(ACTOR_155_UNKNOWN, sp1C), sp28);
sp1C[1] = ((sp28[1] - sp34[1]) * D_8037BFB0[0]) + sp34[1]; sp1C[1] = ((sp28[1] - sp34[1]) * D_8037BFB0[0]) + sp34[1];
ml_vec3f_copy(sp7C, sp1C); ml_vec3f_copy(sp7C, sp1C);
break; break;

View File

@@ -86,7 +86,7 @@ void func_802F9D38(s32 arg0){
ptr = vector_at(D_803810A0, arg0); ptr = vector_at(D_803810A0, arg0);
if(ptr->unk0){ if(ptr->unk0){
func_8030E394(ptr->unk0); func_8030E394(ptr->unk0);
func_8030DA44(ptr->unk0); sfxsource_freeSfxsourceByIndex(ptr->unk0);
ptr->unk0 = 0; ptr->unk0 = 0;
} }
} }

View File

@@ -32,7 +32,7 @@ typedef struct {
Struct_core2_7AF80_2 *unk8; Struct_core2_7AF80_2 *unk8;
} Struct_core2_7AF80_1; } Struct_core2_7AF80_1;
NodeProp *cubeList_findNodePropByActorId(enum actor_e actor_id, s32 arg1[3]); NodeProp *cubeList_findNodePropByActorIdAndPosition_s32(enum actor_e actor_id, s32 arg1[3]);
s32 func_80304FC4(enum actor_e *actor_id_list, NodeProp **node_list, s32 arg2); s32 func_80304FC4(enum actor_e *actor_id_list, NodeProp **node_list, s32 arg2);
void cube_positionToIndices(s32 arg0[3], f32 arg1[3]); void cube_positionToIndices(s32 arg0[3], f32 arg1[3]);
NodeProp *func_803080C8(s32 arg0); NodeProp *func_803080C8(s32 arg0);
@@ -932,18 +932,18 @@ s32 func_803048E0(s32 arg0[3], s32 arg1[3], s32 arg2, s32 arg3, s32 arg4) {
return func_8032F170(arg1, arg2); return func_8032F170(arg1, arg2);
} }
s32 func_80304984(s32 arg0, u32 *arg1) { s32 func_80304984(s32 actor_id, u32 *arg1) {
NodeProp *temp_v0; NodeProp *temp_v0 = cubeList_findNodePropByActorIdAndPosition_s32(actor_id, NULL);
temp_v0 = cubeList_findNodePropByActorId(arg0, 0);
if (temp_v0 != 0) { if (temp_v0 != 0) {
*arg1 = temp_v0->unk6.radius; *arg1 = temp_v0->unk6.radius;
return 1; return 1;
} }
return 0; return 0;
} }
NodeProp *cubeList_findNodePropByActorId(enum actor_e actor_id, s32 position[3]) { NodeProp *cubeList_findNodePropByActorIdAndPosition_s32(enum actor_e actor_id, s32 position[3]) {
s32 cube_indices[3]; s32 cube_indices[3];
s32 i; s32 i;
f32 position_f32[3]; f32 position_f32[3];
@@ -995,42 +995,42 @@ NodeProp *cubeList_findNodePropByActorId(enum actor_e actor_id, s32 position[3])
return NULL; return NULL;
} }
NodeProp *nodeprop_findByActorIdAndActorPosition(enum actor_e actor_id, Actor *actor){ NodeProp *nodeprop_findByActorIdAndActorPosition(enum actor_e actor_id, Actor *actor_ptr) {
s32 tmp_position[3]; s32 pos_s32[3];
s32 *position; s32 *position;
if (actor != NULL) { if (actor_ptr != NULL) {
tmp_position[0] = actor->position_x; pos_s32[0] = actor_ptr->position_x;
tmp_position[1] = actor->position_y; pos_s32[1] = actor_ptr->position_y;
tmp_position[2] = actor->position_z; pos_s32[2] = actor_ptr->position_z;
} }
if (actor == NULL) { if (actor_ptr == NULL) {
position = NULL; position = NULL;
} }
else { else {
position = tmp_position; position = pos_s32;
} }
return cubeList_findNodePropByActorId(actor_id, position); return cubeList_findNodePropByActorIdAndPosition_s32(actor_id, position);
} }
NodeProp *func_80304CAC(s32 arg0, f32 *arg1) { NodeProp *nodeprop_findByActorIdAndPosition_f32(enum actor_e actor_id, f32 *position) {
s32 vec[3]; s32 pos_s32[3];
vec[0] = (s32)arg1[0]; pos_s32[0] = (s32) position[0];
vec[1] = (s32)arg1[1]; pos_s32[1] = (s32) position[1];
vec[2] = (s32)arg1[2]; pos_s32[2] = (s32) position[2];
return cubeList_findNodePropByActorId(arg0, vec); return cubeList_findNodePropByActorIdAndPosition_s32(actor_id, pos_s32);
} }
NodeProp *func_80304D04(s32 arg0, s16 *arg1) { NodeProp *nodeprop_findByActorIdAndPosition_s16(enum actor_e actor_id, s16 *position) {
s32 arr[3]; s32 pos_s32[3];
arr[0] = (s32)arg1[0]; pos_s32[0] = (s32) position[0];
arr[1] = (s32)arg1[1]; pos_s32[1] = (s32) position[1];
arr[2] = (s32)arg1[2]; pos_s32[2] = (s32) position[2];
return cubeList_findNodePropByActorId(arg0, arr); return cubeList_findNodePropByActorIdAndPosition_s32(actor_id, pos_s32);
} }
s32 nodeprop_getRadius(NodeProp *arg0) { s32 nodeprop_getRadius(NodeProp *arg0) {
@@ -1056,7 +1056,7 @@ s32 func_80304DB8(NodeProp *arg0) {
bool _nodeProp_findPositionFromActorId(enum actor_e actor_id, s32 *position) { bool _nodeProp_findPositionFromActorId(enum actor_e actor_id, s32 *position) {
NodeProp *node_prop; NodeProp *node_prop;
node_prop = cubeList_findNodePropByActorId(actor_id, NULL); node_prop = cubeList_findNodePropByActorIdAndPosition_s32(actor_id, NULL);
if (node_prop != 0) { if (node_prop != 0) {
position[0] = (s32) node_prop->x; position[0] = (s32) node_prop->x;
position[1] = (s32) node_prop->y; position[1] = (s32) node_prop->y;
@@ -1187,7 +1187,7 @@ bool func_80305290(bool (* arg0)(NodeProp *), bool (* arg1)(Prop *)){
bool func_80305344(s32 arg0, u32 *arg1) { bool func_80305344(s32 arg0, u32 *arg1) {
NodeProp *temp_v0; NodeProp *temp_v0;
temp_v0 = cubeList_findNodePropByActorId(arg0, NULL); temp_v0 = cubeList_findNodePropByActorIdAndPosition_s32(arg0, NULL);
if (temp_v0 != NULL) { if (temp_v0 != NULL) {
*arg1 = temp_v0->unkC_31; *arg1 = temp_v0->unkC_31;
return 1; return 1;

View File

@@ -358,7 +358,7 @@ void func_8030D310(u8 indx){
switch(func_8030C7E8(ptr)){ switch(func_8030C7E8(ptr)){
case 1://L8030D468 case 1://L8030D468
if( func_8030C814(ptr, 0) || (func_8030C814(ptr, 1) && !ptr->unk40)) if( func_8030C814(ptr, 0) || (func_8030C814(ptr, 1) && !ptr->unk40))
func_8030DA44(indx); sfxsource_freeSfxsourceByIndex(indx);
break; break;
case 2://L8030D4A4 case 2://L8030D4A4
if(func_8030C814(ptr, 1) && sfxsource_isFlagCleared(ptr, 1)) if(func_8030C814(ptr, 1) && sfxsource_isFlagCleared(ptr, 1))
@@ -444,7 +444,7 @@ void func_8030D778(void){
int temp_s1; int temp_s1;
for(i = 1; i < 35; i++){ for(i = 1; i < 35; i++){
if(sfxsources[i].busy) if(sfxsources[i].busy)
func_8030DA44(i); sfxsource_freeSfxsourceByIndex(i);
} }
do{ do{
temp_s1 = 0; temp_s1 = 0;
@@ -511,8 +511,8 @@ u8 sfxsource_createSfxsourceAndReturnIndex(void){
return s1; return s1;
} }
void func_8030DA44(u8 indx){ void sfxsource_freeSfxsourceByIndex(u8 indx) {
SfxSource * sp1C = sfxsource_at(indx); SfxSource *sp1C = sfxsource_at(indx);
func_8030E394(indx); func_8030E394(indx);
func_8030C7F8(sp1C, 3); func_8030C7F8(sp1C, 3);
} }

View File

@@ -737,8 +737,8 @@ void func_8031E204(NodeProp *node, s32 arg1, s32 arg2){
f32 sp28[3]; f32 sp28[3];
f32 sp1C[3]; f32 sp1C[3];
nodeprop_getPosition(func_80304D04(0x154, &node->x), sp34); nodeprop_getPosition(nodeprop_findByActorIdAndPosition_s16(ACTOR_154_UNKNOWN, &node->x), sp34);
nodeprop_getPosition(func_80304D04(0x155, &node->x), sp28); nodeprop_getPosition(nodeprop_findByActorIdAndPosition_s16(ACTOR_155_UNKNOWN, &node->x), sp28);
player_getPosition(sp1C); player_getPosition(sp1C);
if(sp28[1] < sp1C[1]){ if(sp28[1] < sp1C[1]){
sp1C[1] = sp28[1]; sp1C[1] = sp28[1];

View File

@@ -44,7 +44,7 @@ f32 func_80290920(f32 arg0, f32 arg1, f32 arg2){
} }
void func_8029099C(void){ void func_8029099C(void){
func_8030DA44(D_8037C040); sfxsource_freeSfxsourceByIndex(D_8037C040);
D_8037C040 = 0; D_8037C040 = 0;
} }

View File

@@ -130,7 +130,7 @@ void func_803223AC(void) {
func_80244A98(1); func_80244A98(1);
for(i_ptr = D_8036DE00; i_ptr != &D_8036DE00[6]; i_ptr++){ for(i_ptr = D_8036DE00; i_ptr != &D_8036DE00[6]; i_ptr++){
i_ptr->unk4 = cubeList_findNodePropByActorId(i_ptr->unk0, 0); i_ptr->unk4 = cubeList_findNodePropByActorIdAndPosition_s32(i_ptr->unk0, NULL);
if(i_ptr->unk4 != 0 && i_ptr->unk8 != NULL){ if(i_ptr->unk4 != 0 && i_ptr->unk8 != NULL){
i_ptr->unk8(i_ptr); i_ptr->unk8(i_ptr);
} }

View File

@@ -31,7 +31,7 @@ void func_80323190(void){
} }
void func_803231E8(void){ void func_803231E8(void){
func_8030DA44(D_80383370); sfxsource_freeSfxsourceByIndex(D_80383370);
} }
void func_8032320C(void){ void func_8032320C(void){

View File

@@ -376,7 +376,7 @@ void func_80325FE8(Actor *this) {
} }
temp_v0 = this->unk44_31; temp_v0 = this->unk44_31;
if (temp_v0 != 0) { if (temp_v0 != 0) {
func_8030DA44(temp_v0); sfxsource_freeSfxsourceByIndex(temp_v0);
} }
this->animctrl = NULL; this->animctrl = NULL;
this->unk44_31 = 0; this->unk44_31 = 0;

View File

@@ -528,7 +528,7 @@ void func_80341A54(void) {
for(var_s0 = 0; var_s0 < 0x40; var_s0++){ for(var_s0 = 0; var_s0 < 0x40; var_s0++){
if (D_803858A0[var_s0] != 0) { if (D_803858A0[var_s0] != 0) {
func_8030DA44(D_803858A0[var_s0]); sfxsource_freeSfxsourceByIndex(D_803858A0[var_s0]);
} }
} }
@@ -801,7 +801,7 @@ s32 func_803422D4(Actor *arg0, Union_glspline *arg1, SplineList *arg2){
sfxsource_setSampleRate(sfxsourceIdx, sp74); sfxsource_setSampleRate(sfxsourceIdx, sp74);
func_8030E2C4(sfxsourceIdx); func_8030E2C4(sfxsourceIdx);
if (D_803858A0[sp70] != 0){ if (D_803858A0[sp70] != 0){
func_8030DA44(D_803858A0[sp70]); sfxsource_freeSfxsourceByIndex(D_803858A0[sp70]);
} }
D_803858A0[sp70] = sfxsourceIdx; D_803858A0[sp70] = sfxsourceIdx;
} else { } else {
@@ -836,7 +836,7 @@ s32 func_803422D4(Actor *arg0, Union_glspline *arg1, SplineList *arg2){
case 5: case 5:
if (D_803858A0[arg1->t0.unk10.common.bit7] != 0){ if (D_803858A0[arg1->t0.unk10.common.bit7] != 0){
func_8030DA44(D_803858A0[arg1->t0.unk10.common.bit7]); sfxsource_freeSfxsourceByIndex(D_803858A0[arg1->t0.unk10.common.bit7]);
D_803858A0[arg1->t0.unk10.common.bit7] = 0; D_803858A0[arg1->t0.unk10.common.bit7] = 0;
} }
break; break;
@@ -1274,7 +1274,7 @@ void func_80343E20(s32 arg0, s32 arg1, f32 arg2, s32 arg3) {
sfxsource_setSampleRate(temp_v0, arg1); sfxsource_setSampleRate(temp_v0, arg1);
func_8030E2C4(temp_v0); func_8030E2C4(temp_v0);
if (D_803858A0[arg3] != 0) { if (D_803858A0[arg3] != 0) {
func_8030DA44(D_803858A0[arg3]); sfxsource_freeSfxsourceByIndex(D_803858A0[arg3]);
} }
D_803858A0[arg3] = temp_v0; D_803858A0[arg3] = temp_v0;
} }

View File

@@ -127,7 +127,7 @@ bool func_8034DC80(Struct6Ds *arg0, f32 arg1[3]) {
void func_8034DD48(Struct6Ds *arg0){ void func_8034DD48(Struct6Ds *arg0){
if(arg0->unk0 != 0){ if(arg0->unk0 != 0){
func_8030DA44(arg0->unk0); sfxsource_freeSfxsourceByIndex(arg0->unk0);
} }
} }
@@ -359,7 +359,7 @@ void func_8034E26C(Struct6Ds *arg0, BKModel *model, s32 mesh_id) {
arg0->unk10(arg0); arg0->unk10(arg0);
} }
if (arg0->unk0 != 0) { if (arg0->unk0 != 0) {
func_8030DA44(arg0->unk0); sfxsource_freeSfxsourceByIndex(arg0->unk0);
arg0->unk0 = 0; arg0->unk0 = 0;
} }
} }

View File

@@ -21,7 +21,7 @@ void func_8034F6F0(Gfx **gdl, Mtx **mptr, s32 vptr){
void func_8034F734(void){ void func_8034F734(void){
if(D_803720A0.unk0){ if(D_803720A0.unk0){
func_8030DA44(D_803720A0.sfxsourceIdx); sfxsource_freeSfxsourceByIndex(D_803720A0.sfxsourceIdx);
particleEmitter_free(D_803720A0.unk0); particleEmitter_free(D_803720A0.unk0);
} }
} }

View File

@@ -345,7 +345,7 @@ void func_803518E8(void){
void func_80351954(Struct68s *arg0){ void func_80351954(Struct68s *arg0){
if(arg0->unk0){ if(arg0->unk0){
func_8030E394(arg0->unk0); func_8030E394(arg0->unk0);
func_8030DA44(arg0->unk0); sfxsource_freeSfxsourceByIndex(arg0->unk0);
arg0->unk0 = 0; arg0->unk0 = 0;
} }
} }

View File

@@ -221,7 +221,7 @@ void func_80358490(Actor *this) {
local = (ActorLocal_core2_D0CA0 *)&this->local; local = (ActorLocal_core2_D0CA0 *)&this->local;
if(local->sfxsourceIdx != 0){ if(local->sfxsourceIdx != 0){
func_8030DA44(local->sfxsourceIdx); sfxsource_freeSfxsourceByIndex(local->sfxsourceIdx);
} }
} }
@@ -307,7 +307,7 @@ void func_80358684(Actor *this) {
if (!subaddie_playerIsWithinSphere(this, 4000)) { if (!subaddie_playerIsWithinSphere(this, 4000)) {
if (local->sfxsourceIdx != 0) { if (local->sfxsourceIdx != 0) {
func_8030DA44(local->sfxsourceIdx); sfxsource_freeSfxsourceByIndex(local->sfxsourceIdx);
local->sfxsourceIdx = 0U; local->sfxsourceIdx = 0U;
} }
return; return;

View File

@@ -62,7 +62,7 @@ void func_80362084(f32 position[3]) {
ParticleEmitter *pCtrl; ParticleEmitter *pCtrl;
pCtrl = partEmitMgr_newEmitter(1U); pCtrl = partEmitMgr_newEmitter(1U);
particleEmitter_setSprite(pCtrl, 0x702); particleEmitter_setSprite(pCtrl, ASSET_702_SPRITE_UNKNOWN);
particleEmitter_setStartingFrameRange(pCtrl, 3, 5); particleEmitter_setStartingFrameRange(pCtrl, 3, 5);
particleEmitter_setRGB(pCtrl, D_8037337C); particleEmitter_setRGB(pCtrl, D_8037337C);
particleEmitter_setAlpha(pCtrl, 0xA0); particleEmitter_setAlpha(pCtrl, 0xA0);
@@ -86,7 +86,7 @@ void func_8036215C(f32 arg0[3]) {
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(0xFU); ParticleEmitter *pCtrl = partEmitMgr_newEmitter(0xFU);
particleEmitter_setSprite(pCtrl, 0x700); particleEmitter_setSprite(pCtrl, ASSET_700_SPRITE_DUST);
particleEmitter_setStartingFrameRange(pCtrl, 3, 4); particleEmitter_setStartingFrameRange(pCtrl, 3, 4);
particleEmitter_setRGB(pCtrl, D_803733E8); particleEmitter_setRGB(pCtrl, D_803733E8);
particleEmitter_setAlpha(pCtrl, 0x28); particleEmitter_setAlpha(pCtrl, 0x28);
@@ -105,7 +105,7 @@ void func_803621F0(f32 arg0[3]) {
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(0x12U); ParticleEmitter *pCtrl = partEmitMgr_newEmitter(0x12U);
particleEmitter_setSprite(pCtrl, 0x702); particleEmitter_setSprite(pCtrl, ASSET_702_SPRITE_UNKNOWN);
particleEmitter_setStartingFrameRange(pCtrl, 3, 5); particleEmitter_setStartingFrameRange(pCtrl, 3, 5);
particleEmitter_setAlpha(pCtrl, 0xD2); particleEmitter_setAlpha(pCtrl, 0xD2);
particleEmitter_setPosition(pCtrl, arg0); particleEmitter_setPosition(pCtrl, arg0);
@@ -162,7 +162,7 @@ void func_80362404(f32 arg0[3]) {
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(1U); ParticleEmitter *pCtrl = partEmitMgr_newEmitter(1U);
particleEmitter_setSprite(pCtrl, 0x6DD); particleEmitter_setSprite(pCtrl, ASSET_6DD_UNKNOWN);
particleEmitter_setStartingFrameRange(pCtrl, 2, 2); particleEmitter_setStartingFrameRange(pCtrl, 2, 2);
particleEmitter_setPosition(pCtrl, arg0); particleEmitter_setPosition(pCtrl, arg0);
particleEmitter_setPositionAndVelocityRanges(pCtrl, &D_80373604); particleEmitter_setPositionAndVelocityRanges(pCtrl, &D_80373604);
@@ -179,7 +179,7 @@ void func_8036247C(f32 arg0[3]) {
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(1U); ParticleEmitter *pCtrl = partEmitMgr_newEmitter(1U);
particleEmitter_setSprite(pCtrl, 0x70D); particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
particleEmitter_setRGB(pCtrl, &D_80373634); particleEmitter_setRGB(pCtrl, &D_80373634);
particleEmitter_setAlpha(pCtrl, 0x64); particleEmitter_setAlpha(pCtrl, 0x64);
@@ -196,7 +196,7 @@ void func_80362510(Actor *actor) {
f32 sp30[3]; f32 sp30[3];
pCtrl = partEmitMgr_newEmitter(0x19U); pCtrl = partEmitMgr_newEmitter(0x19U);
particleEmitter_setSprite(pCtrl, 0x70D); particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
particleEmitter_setStartingFrameRange(pCtrl, 0, 5); particleEmitter_setStartingFrameRange(pCtrl, 0, 5);
particleEmitter_setRGB(pCtrl, D_803736A0); particleEmitter_setRGB(pCtrl, D_803736A0);
particleEmitter_setAlpha(pCtrl, 0x1E); particleEmitter_setAlpha(pCtrl, 0x1E);
@@ -224,7 +224,7 @@ void func_80362680(f32 arg0[3]) {
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(1U); ParticleEmitter *pCtrl = partEmitMgr_newEmitter(1U);
particleEmitter_setSprite(pCtrl, 0x45A); particleEmitter_setSprite(pCtrl, ASSET_45A_SPRITE_GREEN_GLOW);
particleEmitter_setStartingFrameRange(pCtrl, 2, 2); particleEmitter_setStartingFrameRange(pCtrl, 2, 2);
particleEmitter_setPosition(pCtrl, arg0); particleEmitter_setPosition(pCtrl, arg0);
particleEmitter_setPositionAndVelocityRanges(pCtrl, &D_8037370C); particleEmitter_setPositionAndVelocityRanges(pCtrl, &D_8037370C);
@@ -241,7 +241,7 @@ void func_803626F8(f32 arg0[3]) {
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(1U); ParticleEmitter *pCtrl = partEmitMgr_newEmitter(1U);
particleEmitter_setSprite(pCtrl, 0x713); particleEmitter_setSprite(pCtrl, ASSET_713_SPRITE_SPARKLE_YELLOW);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
particleEmitter_setPosition(pCtrl, arg0); particleEmitter_setPosition(pCtrl, arg0);
particleEmitter_setVelocityAccelerationAndPositionRanges(pCtrl, &D_8037376C); particleEmitter_setVelocityAccelerationAndPositionRanges(pCtrl, &D_8037376C);
@@ -259,7 +259,7 @@ void func_80362770(f32 arg0[3]) {
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(0x10U); ParticleEmitter *pCtrl = partEmitMgr_newEmitter(0x10U);
particleEmitter_setSprite(pCtrl, 0x714); particleEmitter_setSprite(pCtrl, ASSET_714_SPRITE_UNKNOWN);
particleEmitter_setStartingFrameRange(pCtrl, 7, 8); particleEmitter_setStartingFrameRange(pCtrl, 7, 8);
particleEmitter_setRGB(pCtrl, &D_803737B4); particleEmitter_setRGB(pCtrl, &D_803737B4);
particleEmitter_setPosition(pCtrl, arg0); particleEmitter_setPosition(pCtrl, arg0);

View File

@@ -429,7 +429,7 @@ s32 D_8036D924[] = { 70, 35, 18, 9, 4, 2, 1};
/* .bss */ /* .bss */
char D_803830B0[0x30]; char D_803830B0[0x30];
void func_8030DA44(u8); void sfxsource_freeSfxsourceByIndex(u8);
void func_80338338(s32, s32, s32); void func_80338338(s32, s32, s32);
void func_803382FC(u8); void func_803382FC(u8);
@@ -443,7 +443,7 @@ void func_80315200(GcZoombox *this){
}else{ }else{
for(s1 =0; s1 < 5; s1++){ for(s1 =0; s1 < 5; s1++){
if(this->unk108[s1]){ if(this->unk108[s1]){
func_8030DA44(this->unk108[s1]); sfxsource_freeSfxsourceByIndex(this->unk108[s1]);
this->sfx_count--; this->sfx_count--;
} }
} }

View File

@@ -231,7 +231,7 @@ void func_802C16CC(s32 arg0) {
if(sp38 != D_8037DBE0.unk28 && D_8037DBE0.unk28 != -1){ if(sp38 != D_8037DBE0.unk28 && D_8037DBE0.unk28 != -1){
player_getPosition(sp54); player_getPosition(sp54);
ml_vec3f_to_vec3w(sp48, sp54); ml_vec3f_to_vec3w(sp48, sp54);
sp30 = cubeList_findNodePropByActorId(sp38, sp48); sp30 = cubeList_findNodePropByActorIdAndPosition_s32(sp38, sp48);
if(sp30 != NULL) { if(sp30 != NULL) {
nodeprop_getPosition(sp30, sp54); nodeprop_getPosition(sp30, sp54);
switch (func_80304DB8(sp30)) { /* irregular */ switch (func_80304DB8(sp30)) { /* irregular */

View File

@@ -260,7 +260,7 @@ void func_8038702C(s32 arg0) {
sp44 = marker_getActor(reinterpret_cast(ActorMarker *,arg0)); sp44 = marker_getActor(reinterpret_cast(ActorMarker *,arg0));
pCtrl = partEmitMgr_newEmitter(8U); pCtrl = partEmitMgr_newEmitter(8U);
particleEmitter_setSprite(pCtrl, 0x712); particleEmitter_setSprite(pCtrl, ASSET_712_SPRITE_SPARKLE_GREEN);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
func_8034A174((struct5Bs *)sp44->marker->unk44, 5, sp34); func_8034A174((struct5Bs *)sp44->marker->unk44, 5, sp34);
particleEmitter_setPosition(pCtrl, sp34); particleEmitter_setPosition(pCtrl, sp34);
@@ -281,7 +281,7 @@ void func_80387170(s32 arg0) {
sp44 = marker_getActor(reinterpret_cast(ActorMarker *,arg0)); sp44 = marker_getActor(reinterpret_cast(ActorMarker *,arg0));
pCtrl = partEmitMgr_newEmitter(8); pCtrl = partEmitMgr_newEmitter(8);
particleEmitter_setSprite(pCtrl, 0x712); particleEmitter_setSprite(pCtrl, ASSET_712_SPRITE_SPARKLE_GREEN);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
func_8034A174((struct5Bs *)sp44->marker->unk44, 6, sp34); func_8034A174((struct5Bs *)sp44->marker->unk44, 6, sp34);
particleEmitter_setPosition(pCtrl, sp34); particleEmitter_setPosition(pCtrl, sp34);
@@ -306,7 +306,7 @@ void func_803872B4(s32 arg0) {
sp44 = marker_getActor(reinterpret_cast(ActorMarker *,arg0)); sp44 = marker_getActor(reinterpret_cast(ActorMarker *,arg0));
pCtrl = partEmitMgr_newEmitter(4); pCtrl = partEmitMgr_newEmitter(4);
particleEmitter_setSprite(pCtrl, 0x70D); particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
particleEmitter_setAlpha(pCtrl, 0x82); particleEmitter_setAlpha(pCtrl, 0x82);
func_8034A174((struct5Bs *)sp44->marker->unk44, 7, sp34); func_8034A174((struct5Bs *)sp44->marker->unk44, 7, sp34);
@@ -329,7 +329,7 @@ void func_80387364(s32 arg0) {
sp34 = marker_getActor(reinterpret_cast(ActorMarker *,arg0)); sp34 = marker_getActor(reinterpret_cast(ActorMarker *,arg0));
pCtrl = partEmitMgr_newEmitter(1); pCtrl = partEmitMgr_newEmitter(1);
particleEmitter_setSprite(pCtrl, 0x70D); particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
particleEmitter_setRGB(pCtrl, D_8038D4A0); particleEmitter_setRGB(pCtrl, D_8038D4A0);
particleEmitter_setAlpha(pCtrl, 0x82); particleEmitter_setAlpha(pCtrl, 0x82);
@@ -348,7 +348,7 @@ void func_80387424(s32 arg0) {
sp44 = marker_getActor(reinterpret_cast(ActorMarker *,arg0)); sp44 = marker_getActor(reinterpret_cast(ActorMarker *,arg0));
pCtrl = partEmitMgr_newEmitter(8); pCtrl = partEmitMgr_newEmitter(8);
particleEmitter_setSprite(pCtrl, 0x713); particleEmitter_setSprite(pCtrl, ASSET_713_SPRITE_SPARKLE_YELLOW);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
particleEmitter_setAlpha(pCtrl, 0x64); particleEmitter_setAlpha(pCtrl, 0x64);
func_8034A174((struct5Bs *) sp44->marker->unk44, 5, sp34); func_8034A174((struct5Bs *) sp44->marker->unk44, 5, sp34);
@@ -386,7 +386,7 @@ void func_80387680(s32 arg0) {
sp44 = marker_getActor(reinterpret_cast(ActorMarker *,arg0)); sp44 = marker_getActor(reinterpret_cast(ActorMarker *,arg0));
pCtrl = partEmitMgr_newEmitter(11); pCtrl = partEmitMgr_newEmitter(11);
particleEmitter_setSprite(pCtrl, 0x70B); particleEmitter_setSprite(pCtrl, ASSET_70B_SPRITE_BUBBLE_2);
func_8034A174((struct5Bs *) sp44->marker->unk44, 5, sp34); func_8034A174((struct5Bs *) sp44->marker->unk44, 5, sp34);
particleEmitter_setPosition(pCtrl, sp34); particleEmitter_setPosition(pCtrl, sp34);
particleEmitter_setAngularVelocityRange(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f); particleEmitter_setAngularVelocityRange(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f);
@@ -409,7 +409,7 @@ void func_803877A0(s32 arg0) {
sp34 = marker_getActor(reinterpret_cast(ActorMarker *,arg0)); sp34 = marker_getActor(reinterpret_cast(ActorMarker *,arg0));
pCtrl = partEmitMgr_newEmitter(1); pCtrl = partEmitMgr_newEmitter(1);
particleEmitter_setSprite(pCtrl, 0x475); particleEmitter_setSprite(pCtrl, ASSET_475_UNKNOWN);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
particleEmitter_setRGB(pCtrl, D_8038D584); particleEmitter_setRGB(pCtrl, D_8038D584);
particleEmitter_setAlpha(pCtrl, 0xFF); particleEmitter_setAlpha(pCtrl, 0xFF);
@@ -480,7 +480,7 @@ void func_80387B58(s32 arg0) {
sp44 = marker_getActor(reinterpret_cast(ActorMarker *,arg0)); sp44 = marker_getActor(reinterpret_cast(ActorMarker *,arg0));
pCtrl = partEmitMgr_newEmitter(1); pCtrl = partEmitMgr_newEmitter(1);
particleEmitter_setSprite(pCtrl, 0x702); particleEmitter_setSprite(pCtrl, ASSET_702_SPRITE_UNKNOWN);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
particleEmitter_setAlpha(pCtrl, 0x3C); particleEmitter_setAlpha(pCtrl, 0x3C);
particleEmitter_setAngularVelocityRange(pCtrl, -60.0f, -60.0f, -60.0f, 60.0f, 60.0f, 60.0f); particleEmitter_setAngularVelocityRange(pCtrl, -60.0f, -60.0f, -60.0f, 60.0f, 60.0f, 60.0f);
@@ -509,7 +509,7 @@ void func_80387C64(s32 arg0) {
func_8034A174((struct5Bs *) sp44->marker->unk44, 5, sp34); func_8034A174((struct5Bs *) sp44->marker->unk44, 5, sp34);
if (ml_isZero_vec3f(sp34) == 0) { if (ml_isZero_vec3f(sp34) == 0) {
pCtrl = partEmitMgr_newEmitter(1); pCtrl = partEmitMgr_newEmitter(1);
particleEmitter_setSprite(pCtrl, 0x70D); particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
particleEmitter_setRGB(pCtrl, D_8038D6A0); particleEmitter_setRGB(pCtrl, D_8038D6A0);
particleEmitter_setAlpha(pCtrl, 0x64); particleEmitter_setAlpha(pCtrl, 0x64);
@@ -536,7 +536,7 @@ void func_80387D88(s32 arg0) {
func_8034A174((struct5Bs *) sp44->marker->unk44, 5, sp34); func_8034A174((struct5Bs *) sp44->marker->unk44, 5, sp34);
if (ml_isZero_vec3f(sp34) == 0) { if (ml_isZero_vec3f(sp34) == 0) {
pCtrl = partEmitMgr_newEmitter(25); pCtrl = partEmitMgr_newEmitter(25);
particleEmitter_setSprite(pCtrl, 0x713); particleEmitter_setSprite(pCtrl, ASSET_713_SPRITE_SPARKLE_YELLOW);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
particleEmitter_setAlpha(pCtrl, 0xFF); particleEmitter_setAlpha(pCtrl, 0xFF);
particleEmitter_setAngularVelocityRange(pCtrl, -60.0f, -60.0f, -60.0f, 60.0f, 60.0f, 60.0f); particleEmitter_setAngularVelocityRange(pCtrl, -60.0f, -60.0f, -60.0f, 60.0f, 60.0f, 60.0f);
@@ -563,7 +563,7 @@ void func_80387E9C(s32 arg0) {
func_8034A174((struct5Bs *) sp44->marker->unk44, 5, sp34); func_8034A174((struct5Bs *) sp44->marker->unk44, 5, sp34);
if (ml_isZero_vec3f(sp34) == 0) { if (ml_isZero_vec3f(sp34) == 0) {
pCtrl = partEmitMgr_newEmitter(1); pCtrl = partEmitMgr_newEmitter(1);
particleEmitter_setSprite(pCtrl, 0x70D); particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
particleEmitter_setAlpha(pCtrl, 0xC8); particleEmitter_setAlpha(pCtrl, 0xC8);
particleEmitter_setRGB(pCtrl, D_8038D76C); particleEmitter_setRGB(pCtrl, D_8038D76C);
@@ -591,7 +591,7 @@ void func_80387FC0(s32 arg0) {
func_8034A174((struct5Bs *) sp44->marker->unk44, 5, sp34); func_8034A174((struct5Bs *) sp44->marker->unk44, 5, sp34);
if (ml_isZero_vec3f(sp34) == 0) { if (ml_isZero_vec3f(sp34) == 0) {
pCtrl = partEmitMgr_newEmitter(1); pCtrl = partEmitMgr_newEmitter(1);
particleEmitter_setSprite(pCtrl, 0x70D); particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
particleEmitter_setAlpha(pCtrl, 0x64); particleEmitter_setAlpha(pCtrl, 0x64);
particleEmitter_setAngularVelocityRange(pCtrl, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f); particleEmitter_setAngularVelocityRange(pCtrl, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f);
@@ -616,7 +616,7 @@ void func_803880C8(s32 arg0) {
sp34 = marker_getActor(reinterpret_cast(ActorMarker *,arg0)); sp34 = marker_getActor(reinterpret_cast(ActorMarker *,arg0));
pCtrl = partEmitMgr_newEmitter(1); pCtrl = partEmitMgr_newEmitter(1);
particleEmitter_setSprite(pCtrl, 0x47C); particleEmitter_setSprite(pCtrl, ASSET_47C_UNKNOWN);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
particleEmitter_setRGB(pCtrl, D_8038D838); particleEmitter_setRGB(pCtrl, D_8038D838);
particleEmitter_setAlpha(pCtrl, 0x82); particleEmitter_setAlpha(pCtrl, 0x82);
@@ -644,7 +644,7 @@ void func_803881CC(s32 arg0) {
func_8034A174((struct5Bs *) sp44->marker->unk44, 5, sp34); func_8034A174((struct5Bs *) sp44->marker->unk44, 5, sp34);
if (ml_isZero_vec3f(sp34) == 0) { if (ml_isZero_vec3f(sp34) == 0) {
pCtrl = partEmitMgr_newEmitter(2); pCtrl = partEmitMgr_newEmitter(2);
particleEmitter_setSprite(pCtrl, 0x70D); particleEmitter_setSprite(pCtrl, ASSET_70D_SPRITE_SMOKE_1);
particleEmitter_setStartingFrameRange(pCtrl, 1, 6); particleEmitter_setStartingFrameRange(pCtrl, 1, 6);
particleEmitter_setAlpha(pCtrl, 0x50); particleEmitter_setAlpha(pCtrl, 0x50);
particleEmitter_setAngularVelocityRange(pCtrl, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f); particleEmitter_setAngularVelocityRange(pCtrl, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f);

View File

@@ -22,7 +22,7 @@ void chbossjinjobase_spawnStoneJinjo(ActorMarker *marker) {
} }
void chBossJinjoBase_createSmokeParticles(f32 position[3], s32 count) { void chBossJinjoBase_createSmokeParticles(f32 position[3], s32 count) {
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(count); ParticleEmitter *pCtrl = partEmitMgr_newEmitter(count);
particleEmitter_setSprite(pCtrl, ASSET_70E_SPRITE_SMOKE_2); particleEmitter_setSprite(pCtrl, ASSET_70E_SPRITE_SMOKE_2);
particleEmitter_setRGB(pCtrl, chBossJinjoBase_SmokeColor); particleEmitter_setRGB(pCtrl, chBossJinjoBase_SmokeColor);
particleEmitter_setStartingFrameRange(pCtrl, 0, 7); particleEmitter_setStartingFrameRange(pCtrl, 0, 7);
@@ -61,11 +61,11 @@ void chBossJinjoBase_free(Actor *this) {
ActorLocal_BossJinjoBase *local = (ActorLocal_BossJinjoBase *) &this->local; ActorLocal_BossJinjoBase *local = (ActorLocal_BossJinjoBase *) &this->local;
if ((u8)this->unk44_31 != 0) { if ((u8)this->unk44_31 != 0) {
func_8030DA44(this->unk44_31); sfxsource_freeSfxsourceByIndex(this->unk44_31);
this->unk44_31 = 0; this->unk44_31 = 0;
} }
if (local->sfxsourceIdx != 0) { if (local->sfxsourceIdx != 0) {
func_8030DA44(local->sfxsourceIdx); sfxsource_freeSfxsourceByIndex(local->sfxsourceIdx);
local->sfxsourceIdx = 0; local->sfxsourceIdx = 0;
} }
} }
@@ -124,9 +124,9 @@ void chBossJinjoBase_update(Actor *this) {
func_8030E2C4(local->sfxsourceIdx); func_8030E2C4(local->sfxsourceIdx);
} }
position_delta[0] = (rumbling & 1) ? 3.0f : -3.0f; position_delta[0] = (rumbling & 1) ? 3.0f : -3.0f;
position_delta[1] = y_delta; position_delta[1] = y_delta;
position_delta[2] = (rumbling & 2) ? 3.0f : -3.0f; position_delta[2] = (rumbling & 2) ? 3.0f : -3.0f;
this->position_x = this->unk1C[0]; this->position_x = this->unk1C[0];
this->position_z = this->unk1C[2]; this->position_z = this->unk1C[2];
@@ -142,9 +142,9 @@ void chBossJinjoBase_update(Actor *this) {
} }
else { else {
subaddie_set_state(this, CHBOSSJINJOBASE_STATE_2_DEFAULT); subaddie_set_state(this, CHBOSSJINJOBASE_STATE_2_DEFAULT);
func_8030DA44(this->unk44_31); sfxsource_freeSfxsourceByIndex(this->unk44_31);
this->unk44_31 = 0; this->unk44_31 = 0;
func_8030DA44(local->sfxsourceIdx); sfxsource_freeSfxsourceByIndex(local->sfxsourceIdx);
local->sfxsourceIdx = 0; local->sfxsourceIdx = 0;
TUPLE_COPY(this->position, this->unk1C); TUPLE_COPY(this->position, this->unk1C);
TUPLE_COPY(actor_stonejinjo->position, this->unk1C); TUPLE_COPY(actor_stonejinjo->position, this->unk1C);

View File

@@ -447,7 +447,7 @@ void chfinalboss_func_80387110(ActorMarker *marker, f32 arg1[3], f32 arg2, s32 a
} }
} }
void chfinalboss_func_803872F8(Actor *arg0) { void chfinalboss_func_803872F8(Actor *arg0) {
f32 vec[3]; f32 vec[3];
func_8034A174(arg0->marker->unk44, 0xA, vec); func_8034A174(arg0->marker->unk44, 0xA, vec);
@@ -1044,7 +1044,7 @@ void chfinalboss_phase1_update(ActorMarker *marker) {
chfinalboss_func_8038871C(this, 460.0f, 400.0f * sp54); chfinalboss_func_8038871C(this, 460.0f, 400.0f * sp54);
chfinalboss_func_803873DC(this, 600.0f, 2000.0f); chfinalboss_func_803873DC(this, 600.0f, 2000.0f);
if (actor_animationIsAt(this, 0.9999f)) { if (actor_animationIsAt(this, 0.9999f)) {
func_8030DA44(this->unk44_31); sfxsource_freeSfxsourceByIndex(this->unk44_31);
this->unk44_31 = 0U; this->unk44_31 = 0U;
chfinalboss_setPhase(this->marker, FINALBOSS_PHASE_2_AIR); chfinalboss_setPhase(this->marker, FINALBOSS_PHASE_2_AIR);
} }
@@ -1657,7 +1657,7 @@ void chfinalboss_phase4_update(ActorMarker *marker) {
timed_exitStaticCamera(0.0f); timed_exitStaticCamera(0.0f);
func_80324E38(0.0f, 0); func_80324E38(0.0f, 0);
chfinalboss_setPhase(this->marker, FINALBOSS_PHASE_5_JINJONATOR); chfinalboss_setPhase(this->marker, FINALBOSS_PHASE_5_JINJONATOR);
func_8030DA44(this->unk44_31); sfxsource_freeSfxsourceByIndex(this->unk44_31);
this->unk44_31 = 0U; this->unk44_31 = 0U;
} }
break; break;
@@ -1874,7 +1874,7 @@ void chfinalboss_phase5_update(ActorMarker *marker) {
} }
if (actor_animationIsAt(this, 0.9999f)) { if (actor_animationIsAt(this, 0.9999f)) {
chfinalboss_phase5_setState(this, 0x27); chfinalboss_phase5_setState(this, 0x27);
func_8030DA44(this->unk44_31); sfxsource_freeSfxsourceByIndex(this->unk44_31);
this->unk44_31 = 0; this->unk44_31 = 0;
} }
break; break;
@@ -1888,7 +1888,7 @@ void chfinalboss_phase5_update(ActorMarker *marker) {
v0 = this->unk44_31; v0 = this->unk44_31;
if (v0 != 0) { if (v0 != 0) {
func_8030E394(v0); func_8030E394(v0);
func_8030DA44(this->unk44_31); sfxsource_freeSfxsourceByIndex(this->unk44_31);
this->unk44_31 = 0; this->unk44_31 = 0;
} }
} }
@@ -1982,7 +1982,7 @@ bool chfinalboss_func_8038B834(ActorMarker *marker, ActorMarker *other_marker) {
marker->id = 0x25E; marker->id = 0x25E;
} }
break; break;
case FINALBOSS_PHASE_2_AIR: case FINALBOSS_PHASE_2_AIR:
if (local->unkA == 0) { if (local->unkA == 0) {
marker->id = 0x260; marker->id = 0x260;

View File

@@ -189,7 +189,7 @@ void chjinjonator_update(Actor *this){
subaddie_set_state_with_direction(this, JINJONATOR_STATE_3_MOVE_UPWARD, 0.001f, 1); subaddie_set_state_with_direction(this, JINJONATOR_STATE_3_MOVE_UPWARD, 0.001f, 1);
actor_playAnimationOnce(this); actor_playAnimationOnce(this);
func_8030E394(this->unk44_31); func_8030E394(this->unk44_31);
func_8030DA44(this->unk44_31); sfxsource_freeSfxsourceByIndex(this->unk44_31);
this->unk44_31 = 0; this->unk44_31 = 0;
local->velocity_move_up = (320.0f - this->position_y) * 0.5; local->velocity_move_up = (320.0f - this->position_y) * 0.5;
func_80324CFC(0.0f, COMUSIC_8C_JINJONATOR_POWERUP, 32000); func_80324CFC(0.0f, COMUSIC_8C_JINJONATOR_POWERUP, 32000);
@@ -255,7 +255,7 @@ void chjinjonator_update(Actor *this){
func_80324D54(0.1f, SFX_C1_BUZZBOMB_ATTACK, 0.85f, 32000, this->position, 5000.0f, 12000.0f); func_80324D54(0.1f, SFX_C1_BUZZBOMB_ATTACK, 0.85f, 32000, this->position, 5000.0f, 12000.0f);
if((u8)this->unk44_31){ if((u8)this->unk44_31){
func_8030E394(this->unk44_31); func_8030E394(this->unk44_31);
func_8030DA44(this->unk44_31); sfxsource_freeSfxsourceByIndex(this->unk44_31);
this->unk44_31 = 0; this->unk44_31 = 0;
} }
func_80324D2C(0.0f, COMUSIC_8C_JINJONATOR_POWERUP); func_80324D2C(0.0f, COMUSIC_8C_JINJONATOR_POWERUP);

View File

@@ -170,7 +170,7 @@ void chjinjonatorbase_update(Actor *this){
FUNC_8030E624(SFX_7F_HEAVYDOOR_SLAM, 0.8f, 32000); FUNC_8030E624(SFX_7F_HEAVYDOOR_SLAM, 0.8f, 32000);
func_8030E394(this->unk44_31); func_8030E394(this->unk44_31);
func_8030DA44(this->unk44_31); sfxsource_freeSfxsourceByIndex(this->unk44_31);
this->unk44_31 = 0; this->unk44_31 = 0;
this->position_x = this->unk1C[0]; this->position_x = this->unk1C[0];

View File

@@ -42,12 +42,12 @@ void chspellbarrier_free(Actor *this) {
ActorLocal_SpellBarrier *local = (ActorLocal_SpellBarrier *) &this->local; ActorLocal_SpellBarrier *local = (ActorLocal_SpellBarrier *) &this->local;
if ((u8) this->unk44_31) { if ((u8) this->unk44_31) {
func_8030DA44(this->unk44_31); sfxsource_freeSfxsourceByIndex(this->unk44_31);
this->unk44_31 = 0; this->unk44_31 = 0;
} }
if (local->sfxsourceIdx != 0) { if (local->sfxsourceIdx != 0) {
func_8030DA44(local->sfxsourceIdx); sfxsource_freeSfxsourceByIndex(local->sfxsourceIdx);
local->sfxsourceIdx = 0; local->sfxsourceIdx = 0;
} }
} }

View File

@@ -536,7 +536,7 @@ void lair_func_8038CC9C(void)
return; return;
func_8030E394(D_8037DCB8->UNK_18); func_8030E394(D_8037DCB8->UNK_18);
func_8030DA44(D_8037DCB8->UNK_18); sfxsource_freeSfxsourceByIndex(D_8037DCB8->UNK_18);
D_8037DCB8->UNK_18 = 0; D_8037DCB8->UNK_18 = 0;
} }

View File

@@ -55,7 +55,7 @@ s32 D_80394BD4[3] = {0xff, 0x80, 0x80};
void func_80391160(f32 pos[3], u32 count) void func_80391160(f32 pos[3], u32 count)
{ {
ParticleEmitter *p = partEmitMgr_newEmitter(count); ParticleEmitter *p = partEmitMgr_newEmitter(count);
particleEmitter_setSprite(p, 0x70E); particleEmitter_setSprite(p, ASSET_70E_SPRITE_SMOKE_2);
particleEmitter_setRGB(p, D_80394AD4); particleEmitter_setRGB(p, D_80394AD4);
particleEmitter_setAlpha(p, 0xEB); particleEmitter_setAlpha(p, 0xEB);
particleEmitter_setStartingFrameRange(p, 0, 7); particleEmitter_setStartingFrameRange(p, 0, 7);
@@ -99,7 +99,7 @@ void func_8039137C(f32 pos[3], u32 count, enum asset_e sprite)
void func_8039144C(f32 pos[3], u32 count) void func_8039144C(f32 pos[3], u32 count)
{ {
ParticleEmitter *p = partEmitMgr_newEmitter(count); ParticleEmitter *p = partEmitMgr_newEmitter(count);
particleEmitter_setSprite(p, 0x713); particleEmitter_setSprite(p, ASSET_713_SPRITE_SPARKLE_YELLOW);
particleEmitter_setPosition(p, pos); particleEmitter_setPosition(p, pos);
particleEmitter_setSpawnPositionRange(p, -40, -40, -40, 40, 40, 40); particleEmitter_setSpawnPositionRange(p, -40, -40, -40, 40, 40, 40);
particleEmitter_setDrawMode(p, 4); particleEmitter_setDrawMode(p, 4);
@@ -115,7 +115,7 @@ void func_8039144C(f32 pos[3], u32 count)
void func_803915A4(f32 pos[3], s32 count, f32 scale) void func_803915A4(f32 pos[3], s32 count, f32 scale)
{ {
ParticleEmitter *p = partEmitMgr_newEmitter(count); ParticleEmitter *p = partEmitMgr_newEmitter(count);
particleEmitter_setSprite(p, 0x4A0); particleEmitter_setSprite(p, ASSET_4A0_SPRITE_EXPLOSION);
particleEmitter_setFade(p, 0.1f, 0.2f); particleEmitter_setFade(p, 0.1f, 0.2f);
particleEmitter_setDrawMode(p, PART_EMIT_NO_LOOP); particleEmitter_setDrawMode(p, PART_EMIT_NO_LOOP);
particleEmitter_setStartingFrameRange(p, 2, 8); particleEmitter_setStartingFrameRange(p, 2, 8);