aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/prince/prince.cpp5
-rw-r--r--engines/prince/prince.h6
-rw-r--r--engines/prince/script.cpp11
3 files changed, 17 insertions, 5 deletions
diff --git a/engines/prince/prince.cpp b/engines/prince/prince.cpp
index 2d59f95a6b..6445113cd6 100644
--- a/engines/prince/prince.cpp
+++ b/engines/prince/prince.cpp
@@ -2357,6 +2357,11 @@ void PrinceEngine::talkHero(int slot, const char *s) {
_interpreter->increaseString();
}
+void PrinceEngine::doTalkAnim(int animNumber, int slot, AnimType animType) {
+ //TODO
+ _interpreter->increaseString();
+}
+
// Test
void PrinceEngine::testDialog() {
Common::Array<DialogLine> tempDialogBox;
diff --git a/engines/prince/prince.h b/engines/prince/prince.h
index e046d9caf2..54beda2e69 100644
--- a/engines/prince/prince.h
+++ b/engines/prince/prince.h
@@ -174,6 +174,11 @@ struct BackgroundAnim {
Common::Array<Anim> backAnims;
};
+enum AnimType {
+ kBackgroundAnimation,
+ kNormalAnimation
+};
+
// Nak (PL - Nakladka)
struct Mask {
int16 _state; // visible / invisible
@@ -404,6 +409,7 @@ public:
void createDialogBox(Common::Array<DialogLine> &dialogData);
void runDialog(Common::Array<DialogLine> &dialogData);
void talkHero(int slot, const char *s);
+ void doTalkAnim(int animNumber, int slot, AnimType animType);
void testDialog();
int testAnimNr;
diff --git a/engines/prince/script.cpp b/engines/prince/script.cpp
index 38179421c3..7f5a069556 100644
--- a/engines/prince/script.cpp
+++ b/engines/prince/script.cpp
@@ -843,10 +843,10 @@ void Interpreter::O_ADDFLAG() {
}
void Interpreter::O_TALKANIM() {
- uint16 animSlot = readScriptFlagValue();
+ uint16 animNumber = readScriptFlagValue();
uint16 slot = readScriptFlagValue();
-
- debugInterpreter("O_TALKANIM animSlot %d, slot %d", animSlot, slot);
+ _vm->doTalkAnim(animNumber, slot, kNormalAnimation);
+ debugInterpreter("O_TALKANIM animNumber %d, slot %d", animNumber, slot);
}
void Interpreter::O_SUBFLAG() {
@@ -1221,9 +1221,10 @@ void Interpreter::O_GETRND() {
}
void Interpreter::O_TALKBACKANIM() {
- uint16 animSlot = readScriptFlagValue();
+ uint16 animNumber = readScriptFlagValue();
uint16 slot = readScriptFlagValue();
- debugInterpreter("O_TALKBACKANIM animSlot %d, slot %d", animSlot, slot);
+ _vm->doTalkAnim(animNumber, slot, kBackgroundAnimation);
+ debugInterpreter("O_TALKBACKANIM animNumber %d, slot %d", animNumber, slot);
}
void Interpreter::O_LOADPATH() {