aboutsummaryrefslogtreecommitdiff
path: root/engines/illusions/scriptman.cpp
diff options
context:
space:
mode:
authorjohndoe1232014-03-19 20:39:16 +0100
committerEugene Sandulenko2018-07-20 06:43:33 +0000
commit48ef46c02dfeb34706f1060f9443bb31c1a56093 (patch)
treea310cd0d0cf07f4ac79bea72988e9e208a96c6ae /engines/illusions/scriptman.cpp
parente881db073200fb2b3d7087c076ff3da77135516a (diff)
downloadscummvm-rg350-48ef46c02dfeb34706f1060f9443bb31c1a56093.tar.gz
scummvm-rg350-48ef46c02dfeb34706f1060f9443bb31c1a56093.tar.bz2
scummvm-rg350-48ef46c02dfeb34706f1060f9443bb31c1a56093.zip
ILLUSIONS: Implement more script opcodes and related functions
Diffstat (limited to 'engines/illusions/scriptman.cpp')
-rw-r--r--engines/illusions/scriptman.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/engines/illusions/scriptman.cpp b/engines/illusions/scriptman.cpp
index 25b8d2e902..95e4ec4454 100644
--- a/engines/illusions/scriptman.cpp
+++ b/engines/illusions/scriptman.cpp
@@ -157,6 +157,20 @@ uint32 ScriptMan::startTempScriptThread(byte *scriptCodeIp, uint32 callingThread
return tempThreadId;
}
+void ScriptMan::setCurrFontId(uint32 fontId) {
+ _fontId = fontId;
+}
+
+bool ScriptMan::enterScene(uint32 sceneId, uint32 threadId) {
+ ProgInfo *progInfo = _scriptResource->getProgInfo(sceneId & 0xFFFF);
+ if (!progInfo) {
+ // TODO dumpActiveScenes(_someSceneId2, threadId);
+ sceneId = _theSceneId;
+ }
+ _activeScenes.push(sceneId);
+ return progInfo != 0;
+}
+
void ScriptMan::newScriptThread(uint32 threadId, uint32 callingThreadId, uint notifyFlags,
byte *scriptCodeIp, uint32 value8, uint32 valueC, uint32 value10) {
ScriptThread *scriptThread = new ScriptThread(_vm, threadId, callingThreadId,