22 #ifndef LASTEXPRESS_SOUND_ENTRY_H 23 #define LASTEXPRESS_SOUND_ENTRY_H 76 #include "lastexpress/data/snd.h" 77 #include "lastexpress/data/subtitle.h" 79 #include "lastexpress/shared.h" 81 #include "common/serializer.h" 85 class LastExpressEngine;
100 void play(uint32 startTime = 0);
102 _entity = kEntityPlayer;
105 void setVolumeSmoothly(SoundFlag newVolume);
108 void fade() { setVolumeSmoothly(kVolumeNone); }
110 void adjustVolumeIfNISPlaying();
111 void setVolume(SoundFlag newVolume);
113 void initDelayedActivate(
unsigned activateDelay);
122 void setEntity(EntityIndex entity) { _entity = entity; }
123 bool needSaving()
const {
124 return (_name !=
"NISSND?" && (_status & kSoundTypeMask) != kSoundTypeMenu);
127 uint32 getStatus() {
return _status; }
128 int32 getTag() {
return _tag; }
129 uint32 getTime() {
return _soundStream ? (_soundStream->getTimeMS() * 30 / 1000) + _startTime : 0; }
130 EntityIndex getEntity() {
return _entity; }
131 uint32 getPriority() {
return _priority; }
135 SimpleSound *getSoundStream() {
return _soundStream; }
157 uint32 _volumeWithoutNIS;
163 uint32 _initTimeMS, _activateDelayMS;
173 void setupTag(SoundFlag flag);
174 void setupStatus(SoundFlag flag);
193 uint32 getStatus() {
return _status; }
194 SoundEntry *getSoundEntry() {
return _sound; }
207 #endif // LASTEXPRESS_SOUND_ENTRY_H
Definition: subtitle.h:54
Definition: lastexpress.h:69
Definition: animation.h:45
Definition: serializer.h:79
Definition: serializer.h:308