22 #ifndef LASTEXPRESS_SOUND_H 23 #define LASTEXPRESS_SOUND_H 25 #include "lastexpress/shared.h" 27 #include "common/str.h" 31 class LastExpressEngine;
41 void playSound(EntityIndex entity,
Common::String filename, SoundFlag flag = kSoundVolumeEntityDefault, byte activateDelay = 0);
42 bool playSoundWithSubtitles(
Common::String filename, uint32 flag, EntityIndex entity,
unsigned activateDelay = 0);
43 void playSoundEvent(EntityIndex entity, byte action, byte activateDelay = 0);
44 void playDialog(EntityIndex entity, EntityIndex entityDialog, SoundFlag flag, byte a4);
45 void playSteam(CityIndex index);
46 void playFightSound(byte action, byte a4);
47 void playLocomotiveSound();
48 void playWarningCompartment(EntityIndex entity, ObjectIndex compartment);
49 void playAmbientSound(
int param);
52 void readText(
int id);
53 const char *getDialogName(EntityIndex entity)
const;
56 void excuseMe(EntityIndex entity, EntityIndex entity2 = kEntityPlayer, SoundFlag flag = kVolumeNone);
58 const char *justCheckingCath()
const;
59 const char *wrongDoorCath()
const;
60 const char *justAMinuteCath()
const;
63 SoundFlag getSoundFlag(EntityIndex index)
const;
67 uint32 getAmbientSoundDuration() {
return _ambientSoundDuration; }
68 bool needToChangeAmbientVolume();
69 SoundFlag getChangedAmbientVolume() {
return _ambientScheduledVolume; }
72 void clearAmbientVolumeChange() { _ambientScheduledVolume = kVolumeNone; }
79 uint32 _lastWarning[12];
82 int _ambientSoundDuration;
83 uint32 _ambientVolumeChangeTimeMS, _ambientVolumeChangeDelayMS;
84 SoundFlag _ambientScheduledVolume;
89 #endif // LASTEXPRESS_SOUND_H
Definition: lastexpress.h:69
Definition: animation.h:45