aboutsummaryrefslogtreecommitdiff
path: root/script_v1.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'script_v1.cpp')
-rw-r--r--script_v1.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/script_v1.cpp b/script_v1.cpp
index 3b15ce6856..2523097a9f 100644
--- a/script_v1.cpp
+++ b/script_v1.cpp
@@ -836,9 +836,12 @@ void Scumm::o5_actorSetClass()
continue;
}
+
if(_gameId == GID_INDY3_256)
+
newClass--;
+
if (newClass & 0x80)
putClass(act, newClass, 1);
else
@@ -1305,32 +1308,46 @@ void Scumm::o5_getActorX()
{
int actor;
getResultPos();
+
if(_gameId == GID_INDY3_256)
+
actor = getVarOrDirectByte(0x80);
+
else
actor = getVarOrDirectWord(0x80);
+
setResult(getObjX(actor));
}
void Scumm::o5_getActorY()
{
+
int actor;
getResultPos();
+
if(_gameId == GID_INDY3_256)
+
actor = getVarOrDirectByte(0x80);
+
else
+
actor = getVarOrDirectWord(0x80);
setResult(getObjY(actor));
}
void Scumm::o5_getAnimCounter()
{
+
Actor *a;
getResultPos();
+
a=derefActorSafe(getVarOrDirectByte(0x80),"o5_getActorAnimCounter");
+
if(a) // FIXME
setResult(a->cost.animCounter1);
+
else
+
setResult(0);
}
@@ -2207,6 +2224,7 @@ void Scumm::o5_soundKludge()
void Scumm::o5_startMusic()
{
+
addSoundToQueue(getVarOrDirectByte(0x80));
}
@@ -2244,7 +2262,9 @@ void Scumm::o5_startScript()
void Scumm::o5_startSound()
{
+
_vars[VAR_MUSIC_FLAG]=0;
+
addSoundToQueue(getVarOrDirectByte(0x80));
}