diff options
Diffstat (limited to 'engines/kyra/animator_v2.cpp')
-rw-r--r-- | engines/kyra/animator_v2.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/engines/kyra/animator_v2.cpp b/engines/kyra/animator_v2.cpp index 9f0cefe9fa..2333a1a81b 100644 --- a/engines/kyra/animator_v2.cpp +++ b/engines/kyra/animator_v2.cpp @@ -191,6 +191,17 @@ void KyraEngine_v2::refreshAnimObjectsIfNeed() { } } +void KyraEngine_v2::updateCharFacing() { + if (_mainCharacter.x1 > _mouseX) + _mainCharacter.facing = 5; + else + _mainCharacter.facing = 3; + + _mainCharacter.animFrame = _characterFrameTable[_mainCharacter.animFrame]; + updateCharacterAnim(0); + refreshAnimObjectsIfNeed(); +} + void KyraEngine_v2::updateCharacterAnim(int) { Character *c = &_mainCharacter; AnimObj *animState = _animObjects; @@ -331,7 +342,7 @@ void KyraEngine_v2::addItemToAnimList(int item) { scaleY = scaleX = getScale(animObj->xPos1, animObj->yPos1); uint8 *shapePtr = getShapePtr(64+itemId); - animObj->xPos3 = (animObj->xPos2 -= _screen->getShapeScaledWidth(shapePtr, scaleX) >> 1); + animObj->xPos3 = (animObj->xPos2 -= (_screen->getShapeScaledWidth(shapePtr, scaleX) >> 1)); animObj->yPos3 = (animObj->yPos2 -= _screen->getShapeScaledHeight(shapePtr, scaleY)); animObj->width2 = animObj->height2 = 0; |