aboutsummaryrefslogtreecommitdiff
path: root/saga/actor.cpp
diff options
context:
space:
mode:
authorAndrew Kurushin2005-01-16 19:06:04 +0000
committerAndrew Kurushin2005-01-16 19:06:04 +0000
commitf9b4b2cd99000d57dfbcad9efc2927514e0f8d4e (patch)
tree8e1853ea78767c24533514e1993005abb9e86ffd /saga/actor.cpp
parentbf827cde1d20813253fc543039c0ed75b385c0b3 (diff)
downloadscummvm-rg350-f9b4b2cd99000d57dfbcad9efc2927514e0f8d4e.tar.gz
scummvm-rg350-f9b4b2cd99000d57dfbcad9efc2927514e0f8d4e.tar.bz2
scummvm-rg350-f9b4b2cd99000d57dfbcad9efc2927514e0f8d4e.zip
actors entry list implemented
test: in ITE type "scene_change 130" at console svn-id: r16574
Diffstat (limited to 'saga/actor.cpp')
-rw-r--r--saga/actor.cpp21
1 files changed, 14 insertions, 7 deletions
diff --git a/saga/actor.cpp b/saga/actor.cpp
index b8b4c15f8d..8ff8c0b62e 100644
--- a/saga/actor.cpp
+++ b/saga/actor.cpp
@@ -468,6 +468,7 @@ void Actor::updateActorsScene(int actorsEntrance) {
Location tempLocation;
Location possibleLocation;
Point delta;
+ const SceneEntry *sceneEntry;
if (_vm->getGameType() == GType_IHNM) {
warning("Actors aren't implemented for IHNM yet");
@@ -492,14 +493,20 @@ void Actor::updateActorsScene(int actorsEntrance) {
}
assert(_protagonist);
-
-/* setup protagonist entry
- // tiled stuff
- if (_vm->_scene->getFlags() & kSceneFlagISO) {
- //todo: it
- } else {
+
+ if (actorsEntrance >= 0) {
+ sceneEntry = _vm->_scene->_entryList->getEntry(actorsEntrance);
+ // tiled stuff
+ if (_vm->_scene->getFlags() & kSceneFlagISO) {
+ //todo: it
+ } else {
+ _protagonist->location.x = sceneEntry->location.x * ACTOR_LMULT;
+ _protagonist->location.y = sceneEntry->location.y * ACTOR_LMULT;
+ _protagonist->location.z = sceneEntry->location.z * ACTOR_LMULT;
+ _protagonist->facingDirection = _protagonist->actionDirection = sceneEntry->facing;
+ }
}
-*/
+
_protagonist->currentAction = kActionWait;
if (_vm->_scene->getFlags() & kSceneFlagISO) {