diff options
author | Andrew Kurushin | 2005-02-18 00:00:00 +0000 |
---|---|---|
committer | Andrew Kurushin | 2005-02-18 00:00:00 +0000 |
commit | bbbd3b5fbf1230e681fad01e80717bc1785e0d09 (patch) | |
tree | e6ece1dcf27eef28d85915deed0b1e592f326648 /saga/actor.cpp | |
parent | def8641e1f748a193db6afe060729ef242883409 (diff) | |
download | scummvm-rg350-bbbd3b5fbf1230e681fad01e80717bc1785e0d09.tar.gz scummvm-rg350-bbbd3b5fbf1230e681fad01e80717bc1785e0d09.tar.bz2 scummvm-rg350-bbbd3b5fbf1230e681fad01e80717bc1785e0d09.zip |
iso mode drawing work in progress
svn-id: r16802
Diffstat (limited to 'saga/actor.cpp')
-rw-r--r-- | saga/actor.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/saga/actor.cpp b/saga/actor.cpp index 9809d1e2fb..365d4e74ad 100644 --- a/saga/actor.cpp +++ b/saga/actor.cpp @@ -34,6 +34,7 @@ #include "saga/sound.h" #include "saga/scene.h" +#include "saga/isomap.h" #include "saga/actor.h" #include "saga/itedata.h" #include "saga/stream.h" @@ -634,6 +635,9 @@ void Actor::updateActorsScene(int actorsEntrance) { } handleActions(0, true); + if (_vm->_scene->getFlags() & kSceneFlagISO) { + _vm->_isoMap->adjustScroll(true); + } } ActorFrameRange *Actor::getActorFrameRange(uint16 actorId, int frameType) { @@ -1041,10 +1045,12 @@ int Actor::direct(int msec) { return SUCCESS; } + void Actor::calcScreenPosition(CommonObjectData *commonObjectData) { int beginSlope, endSlope, middle; if (_vm->_scene->getFlags() & kSceneFlagISO) { - //todo: it + _vm->_isoMap->tileCoordsToScreenPoint(commonObjectData->location, commonObjectData->screenPosition); + commonObjectData->screenScale = 256; } else { middle = _vm->getSceneHeight() - commonObjectData->location.y / ACTOR_LMULT; @@ -1159,7 +1165,7 @@ int Actor::drawActors() { if (_vm->_scene->getFlags() & kSceneFlagISO) { - //todo: it + _vm->_isoMap->drawSprite(back_buf,*spriteList, frameNumber, drawObject->location, drawObject->screenPosition, drawObject->screenScale); } else { _vm->_sprite->drawOccluded(back_buf, *spriteList, frameNumber, drawObject->screenPosition, drawObject->screenScale, drawObject->screenDepth); } |