mirror of
https://github.com/zeldaret/ss
synced 2026-07-06 13:20:59 -04:00
d_snd_distant_sound_actor_pool OK
This commit is contained in:
@@ -74,6 +74,10 @@ public:
|
||||
mFlags |= flag;
|
||||
}
|
||||
|
||||
void setDisabled(bool value) {
|
||||
mIsDisabled = value;
|
||||
}
|
||||
|
||||
f32 getDistanceToListener() {
|
||||
updateDistanceToListener();
|
||||
return mDistanceToListener;
|
||||
@@ -98,7 +102,7 @@ public:
|
||||
protected:
|
||||
// a_ prefix to prevent multiple inheritance clashes
|
||||
/* 0x7D */ u8 a_field_0x7D;
|
||||
/* 0x7E */ u8 a_field_0x7E;
|
||||
/* 0x7E */ bool mIsDisabled;
|
||||
/* 0x7F */ u8 a_field_0x7F;
|
||||
/* 0x80 */ u8 mIsPaused;
|
||||
/* 0x84 */ f32 a_field_0x84;
|
||||
|
||||
@@ -38,6 +38,10 @@ public:
|
||||
return mpSoundSource == source;
|
||||
}
|
||||
|
||||
bool hasAttachedSource() const {
|
||||
return mpSoundSource;
|
||||
}
|
||||
|
||||
nw4r::snd::SoundHandle *getHandle() {
|
||||
return mpSoundHandle;
|
||||
}
|
||||
@@ -46,6 +50,12 @@ public:
|
||||
mpSoundSource = source;
|
||||
}
|
||||
|
||||
// not sure if this combination makes sense
|
||||
void resetHandle() {
|
||||
field_0x0F4 = 0;
|
||||
mpSoundHandle = &mSoundHandle;
|
||||
}
|
||||
|
||||
bool isActive() const {
|
||||
return mIsActive;
|
||||
}
|
||||
|
||||
@@ -30,15 +30,23 @@ public:
|
||||
return sParam;
|
||||
}
|
||||
|
||||
void initialize();
|
||||
void calc();
|
||||
void onChangeStage();
|
||||
|
||||
dSndDistantSoundActor_c *acquireActor(u32 soundId, const nw4r::math::VEC3 *position, dSoundSource_c *source);
|
||||
dSndDistantSoundActor_c *findActiveActor(u32 soundId, dSoundSource_c *source);
|
||||
|
||||
bool startSound(u32 soundId, const nw4r::math::VEC3 *position);
|
||||
bool holdSound(u32 soundId, const nw4r::math::VEC3 *position);
|
||||
|
||||
void setAllPause(bool flag, s32 fadeFrames);
|
||||
void disableAll();
|
||||
void enableAll();
|
||||
|
||||
private:
|
||||
void addToActiveList(dSndDistantSoundActor_c *actor, u32 id);
|
||||
void removeFromActiveList(dSndDistantSoundActor_c *actor);
|
||||
|
||||
/* 0x0010 */ dSndDistantSoundActor_c mSounds[POOL_SIZE];
|
||||
/* 0x4210 */ UNKWORD field_0x4210;
|
||||
|
||||
Reference in New Issue
Block a user