aboutsummaryrefslogtreecommitdiff
path: root/script_v1.cpp
diff options
context:
space:
mode:
authorMax Horn2002-07-13 14:07:37 +0000
committerMax Horn2002-07-13 14:07:37 +0000
commitdc60238196e1507d8a492735a32754b2d57c94a6 (patch)
treeba139aea4f5b75626c30df0f8ca0f68262121f10 /script_v1.cpp
parent1861053d3386b475a36b963d01d452dcf41f83b6 (diff)
downloadscummvm-rg350-dc60238196e1507d8a492735a32754b2d57c94a6.tar.gz
scummvm-rg350-dc60238196e1507d8a492735a32754b2d57c94a6.tar.bz2
scummvm-rg350-dc60238196e1507d8a492735a32754b2d57c94a6.zip
renamed fadeToBlackEffect to fadeOut; renamed screenEffect to fadeIn; implemented oldRoomEffect (fixes room transitions in MonkeyVGA and Indy3)
svn-id: r4536
Diffstat (limited to 'script_v1.cpp')
-rw-r--r--script_v1.cpp29
1 files changed, 15 insertions, 14 deletions
diff --git a/script_v1.cpp b/script_v1.cpp
index 2813504092..08d062c750 100644
--- a/script_v1.cpp
+++ b/script_v1.cpp
@@ -1547,11 +1547,14 @@ void Scumm::o5_lights()
b = fetchScriptByte();
c = fetchScriptByte();
-/* if (c==0)
- _vars[VAR_V5_DRAWFLAGS] = a;
- else if (c==1) {*/
- warning("o5_lights: lights not implemented");
-// }
+ warning("o5_lights(%d,%d,%d): lights not implemented", a, b, c);
+
+ if (c==0)
+ _vars[VAR_CURRENT_LIGHTS] = a;
+ else if (c==1) {
+ //LightDx = a;
+ //LightDy = b;
+ }
_fullRedraw = 1;
}
@@ -1967,10 +1970,10 @@ void Scumm::o5_roomOps()
case 10: /* ? */
a = getVarOrDirectWord(0x80);
if (a) {
- _switchRoomEffect = (byte)(a);
+ _switchRoomEffect = (byte)a;
_switchRoomEffect2 = (byte)(a >> 8);
} else {
- screenEffect(_newEffect);
+ fadeIn(_newEffect);
}
break;
case 11: /* ? */
@@ -2754,13 +2757,11 @@ void Scumm::o5_oldRoomEffect()
_opcode = fetchScriptByte();
if ((_opcode & 0x1F) == 3) {
a = getVarOrDirectWord(0x80);
- switch (a) {
- case 4:
- _fullRedraw = true;
- break;
- default:
- warning("Unsupported oldRoomEffect %d", a);
- break;
+ if (a) {
+ _switchRoomEffect = (byte)a;
+ _switchRoomEffect2 = (byte)(a >> 8);
+ } else {
+ fadeIn(_newEffect);
}
}
}