diff options
author | James Brown | 2002-04-16 12:18:50 +0000 |
---|---|---|
committer | James Brown | 2002-04-16 12:18:50 +0000 |
commit | ff1d72962b8a821d18dc460e84af5b513b6e046a (patch) | |
tree | a4203f45503013192548a0b59d2701a38be39bbc /script_v1.cpp | |
parent | 71eac5acd30cb1fd48cbfbc464b4a37adee8a6b4 (diff) | |
download | scummvm-rg350-ff1d72962b8a821d18dc460e84af5b513b6e046a.tar.gz scummvm-rg350-ff1d72962b8a821d18dc460e84af5b513b6e046a.tar.bz2 scummvm-rg350-ff1d72962b8a821d18dc460e84af5b513b6e046a.zip |
Add hack for loom staff verbs.
Readd CD Audio
svn-id: r3956
Diffstat (limited to 'script_v1.cpp')
-rw-r--r-- | script_v1.cpp | 29 |
1 files changed, 26 insertions, 3 deletions
diff --git a/script_v1.cpp b/script_v1.cpp index 88406ea5bf..e33e87957f 100644 --- a/script_v1.cpp +++ b/script_v1.cpp @@ -20,10 +20,8 @@ * */ - #include "stdafx.h" #include "scumm.h" -#include "cdmusic.h" void Scumm::setupOpcodes() { @@ -2362,6 +2360,31 @@ void Scumm::o5_verbOps() case 5: /* set xy */ vs->x = getVarOrDirectWord(0x80); vs->y = getVarOrDirectWord(0x40); + // FIXME: hack loom notes into right spot + if (_gameId == GID_LOOM256) { + if ((verb >= 90) && (verb <= 97)) { // Notes + switch (verb) { + case 90: + case 91: + vs->y -= 7; + break; + case 92: + vs->y -= 6; + break; + case 93: + vs->y -= 4; + break; + case 94: + vs->y -= 3; + break; + case 95: + vs->y -= 1; + break; + case 97: + vs->y -= 5; + } + } + } break; case 6: /* set on */ vs->curmode = 1; @@ -2645,7 +2668,7 @@ void Scumm::decodeParseString() offset = 0; delay = (int)((getVarOrDirectWord(0x40) & 0xffff) * 7.5); if (_gameId == GID_LOOM256) - cd_play(this, 1, 0, offset, delay); + _system->play_cdrom(1, 0, offset, delay); else warning("parseString: 8"); } |