diff options
author | Travis Howell | 2005-05-20 06:47:57 +0000 |
---|---|---|
committer | Travis Howell | 2005-05-20 06:47:57 +0000 |
commit | 6da7fa0dcca04519e15c0cbc699f7ba1b927c9f6 (patch) | |
tree | 6a7291377555c17ab81a8044a88e808793562b24 /scumm | |
parent | 4da6f37eab737e56ba02d519160f7e2345ec64ae (diff) | |
download | scummvm-rg350-6da7fa0dcca04519e15c0cbc699f7ba1b927c9f6.tar.gz scummvm-rg350-6da7fa0dcca04519e15c0cbc699f7ba1b927c9f6.tar.bz2 scummvm-rg350-6da7fa0dcca04519e15c0cbc699f7ba1b927c9f6.zip |
Add more opcode differences in C64 maniac.
svn-id: r18190
Diffstat (limited to 'scumm')
-rw-r--r-- | scumm/intern.h | 1 | ||||
-rw-r--r-- | scumm/script_c64.cpp | 18 |
2 files changed, 15 insertions, 4 deletions
diff --git a/scumm/intern.h b/scumm/intern.h index 4f9bc35b1c..fc1c9baa00 100644 --- a/scumm/intern.h +++ b/scumm/intern.h @@ -408,6 +408,7 @@ protected: void o_getDist(); void o_isNotEqual(); void o_loadSound(); + void o_animateActor(); void o_putActorAtObject(); void o_unknown13(); void o_clearState08(); diff --git a/scumm/script_c64.cpp b/scumm/script_c64.cpp index 63403c9d0d..72cdf12ffe 100644 --- a/scumm/script_c64.cpp +++ b/scumm/script_c64.cpp @@ -57,7 +57,7 @@ void ScummEngine_c64::setupOpcodes() { OPCODE(o2_ifNotState08), /* 10 */ OPCODE(o5_breakHere), - OPCODE(o2_animateActor), + OPCODE(o_animateActor), OPCODE(o2_panCameraTo), OPCODE(o_unknown13), /* 14 */ @@ -137,7 +137,7 @@ void ScummEngine_c64::setupOpcodes() { OPCODE(o2_ifState08), /* 50 */ OPCODE(o2_pickupObject), - OPCODE(o2_animateActor), + OPCODE(o_animateActor), OPCODE(o5_actorFollowCamera), OPCODE(o_unknown53), /* 54 */ @@ -217,7 +217,7 @@ void ScummEngine_c64::setupOpcodes() { OPCODE(o2_ifNotState08), /* 90 */ OPCODE(o_pickupObject), - OPCODE(o2_animateActor), + OPCODE(o_animateActor), OPCODE(o2_panCameraTo), OPCODE(o_unknown93), /* 94 */ @@ -297,7 +297,7 @@ void ScummEngine_c64::setupOpcodes() { OPCODE(o2_ifState08), /* D0 */ OPCODE(o2_pickupObject), - OPCODE(o2_animateActor), + OPCODE(o_animateActor), OPCODE(o5_actorFollowCamera), OPCODE(o2_actorOps), /* D4 */ @@ -643,6 +643,16 @@ void ScummEngine_c64::o_pickupObject() { runInventoryScript(1); } +void ScummEngine_c64::o_animateActor() { + int act = getVarOrDirectByte(PARAM_1); + int anim = getVarOrDirectByte(PARAM_2); + int unk = fetchScriptByte(); + debug(0,"o_animateActor: unk %d", unk); + + Actor *a = derefActor(act, "o_animateActor"); + a->animateActor(anim); +} + void ScummEngine_c64::o_putActorAtObject() { int obj, x, y; Actor *a; |