22 #ifndef ULTIMA8_AUDIO_MUSICPROCESS_H 23 #define ULTIMA8_AUDIO_MUSICPROCESS_H 25 #include "ultima/ultima8/kernel/process.h" 26 #include "ultima/ultima8/usecode/intrinsics.h" 27 #include "ultima/ultima8/misc/classtype.h" 28 #include "audio/mididrv.h" 50 ENABLE_RUNTIME_CLASSTYPE()
54 return _theMusicProcess;
69 virtual void fadeMusic(uint16 length) = 0;
86 INTRINSIC(I_playMusic);
87 INTRINSIC(I_stopMusic);
88 INTRINSIC(I_pauseMusic);
89 INTRINSIC(I_unpauseMusic);
virtual void unpauseMusic()=0
Resume the current track after pausing.
Definition: detection.h:27
virtual void playMusic(int track)=0
Play some background music. Does not change the current track if combat music is active. If another track is currently queued, just queues this track for play.
virtual void saveTrackState()=0
Save the current track state - used when the menu is opened.
virtual void queueMusic(int track)=0
Queue a track to start once the current one finishes.
virtual void fadeMusic(uint16 length)=0
Fades out the music over the specified time (in milliseconds)
virtual bool isFading()=0
Returns true if the music is currently fading.
virtual void unqueueMusic()=0
Clear any queued track (does not affect currently playing track)
static MusicProcess * get_instance()
Get the current instance of the Music Processes.
Definition: music_process.h:53
virtual bool isPlaying()=0
Is a track currently playing?
Definition: music_process.h:36
virtual void pauseMusic()=0
Pause the currently playing track.
virtual void restoreTrackState()=0
Bring back the track state from before it was put on hold.
Definition: debugger.h:37
virtual void restoreMusic()=0
Restore the last requested non-combat track (eg, at the end of combat)
virtual void playMusic_internal(int track)=0
virtual void playCombatMusic(int track)=0
Play some combat music - the last played track will be remembered.