aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/saga/actor.cpp8
-rw-r--r--engines/saga/actor_walk.cpp3
2 files changed, 3 insertions, 8 deletions
diff --git a/engines/saga/actor.cpp b/engines/saga/actor.cpp
index 169edbb85d..52b921d000 100644
--- a/engines/saga/actor.cpp
+++ b/engines/saga/actor.cpp
@@ -1266,14 +1266,6 @@ void Actor::loadState(Common::InSaveFile *in) {
for (i = 0; i < _actorsCount; i++) {
ActorData *a = _actors[i];
a->loadState(_vm->getCurrentLoadVersion(), in);
-
- // Fix bug #1258633 "ITE: Second Rif appears in wall of dog castle prison"
- // For some reason in some cases actor position is all wrong, so Rif
- // crawls to his original poition
- if (i == 122 && _vm->getGameType() == GType_ITE) {
- a->_location.x = 130;
- a->_location.y = 55;
- }
}
for (i = 0; i < _objsCount; i++) {
diff --git a/engines/saga/actor_walk.cpp b/engines/saga/actor_walk.cpp
index 7e66a67560..0c573c0c40 100644
--- a/engines/saga/actor_walk.cpp
+++ b/engines/saga/actor_walk.cpp
@@ -218,6 +218,9 @@ void Actor::updateActorsScene(int actorsEntrance) {
if (actor->_sceneNumber == _vm->_scene->currentSceneNumber()) {
actor->_inScene = true;
actor->_actionCycle = (_vm->_rnd.getRandomNumber(7) & 0x7) * 4; // 1/8th chance
+ if (actor->_currentAction != kActionFreeze) {
+ actor->_currentAction = kActionWait;
+ }
}
}