aboutsummaryrefslogtreecommitdiff
path: root/engines/prince/prince.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/prince/prince.h')
-rw-r--r--engines/prince/prince.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/engines/prince/prince.h b/engines/prince/prince.h
index 374048f285..d2c75e76cb 100644
--- a/engines/prince/prince.h
+++ b/engines/prince/prince.h
@@ -59,6 +59,7 @@ class VariaTxt;
class Cursor;
class MhwanhDecoder;
class Font;
+class Hero;
struct Text {
const char *_str;
@@ -103,7 +104,8 @@ public:
bool loadLocation(uint16 locationNr);
bool loadAnim(uint16 animNr, bool loop);
- bool loadVoice(uint32 slot, const Common::String &name);
+ bool loadVoice(uint32 textSlot, uint32 sampleSlot, const Common::String &name);
+ bool loadSample(uint32 sampleSlot, const Common::String &name);
void playSample(uint16 sampleId, uint16 loopType);
void stopSample(uint16 sampleId);
@@ -146,8 +148,11 @@ private:
Font *_font;
MusicPlayer *_midiPlayer;
- Audio::SoundHandle _soundHandle;
- Common::SeekableReadStream *_voiceStream;
+
+ static const uint32 MAX_SAMPLES = 60;
+ Common::SeekableReadStream *_voiceStream[MAX_SAMPLES];
+ Audio::SoundHandle _soundHandle[MAX_SAMPLES];
+
Common::Array<Mob> _mobList;
Common::Array<Object *> _objList;
@@ -155,6 +160,8 @@ private:
uint16 _newCameraX;
uint16 _sceneWidth;
+ Hero* _mainHero;
+
bool _flicLooped;
void mainLoop();