diff options
author | Travis Howell | 2004-02-16 02:55:23 +0000 |
---|---|---|
committer | Travis Howell | 2004-02-16 02:55:23 +0000 |
commit | d5bf1699ca124de6959a76d3d5b75ca0beeb2ecf (patch) | |
tree | 471ea8342e9bdd2b48fb1ae7189ae87d0c15b3fe /scumm | |
parent | 9f026bb0e12955d3100a957af6b60956a56474cc (diff) | |
download | scummvm-rg350-d5bf1699ca124de6959a76d3d5b75ca0beeb2ecf.tar.gz scummvm-rg350-d5bf1699ca124de6959a76d3d5b75ca0beeb2ecf.tar.bz2 scummvm-rg350-d5bf1699ca124de6959a76d3d5b75ca0beeb2ecf.zip |
Add akos drawing offsets
svn-id: r12910
Diffstat (limited to 'scumm')
-rw-r--r-- | scumm/actor.cpp | 5 | ||||
-rw-r--r-- | scumm/actor.h | 1 | ||||
-rw-r--r-- | scumm/akos.cpp | 5 |
3 files changed, 6 insertions, 5 deletions
diff --git a/scumm/actor.cpp b/scumm/actor.cpp index 71de4f0307..a5270c5827 100644 --- a/scumm/actor.cpp +++ b/scumm/actor.cpp @@ -46,6 +46,7 @@ void Actor::initActorClass(ScummEngine *scumm) { Actor::Actor() { assert(_vm != 0); + offs_x = offs_y = 0; top = bottom = 0; number = 0; needRedraw = needBgReset = costumeNeedsInit = visible = false; @@ -954,8 +955,8 @@ void Actor::drawActorCostume() { bcr->_actorID = number; - bcr->_actorX = _pos.x - _vm->virtscr[0].xstart; - bcr->_actorY = _pos.y - elevation; + bcr->_actorX = _pos.x + offs_x - _vm->virtscr[0].xstart; + bcr->_actorY = _pos.y + offs_y - elevation; if (_vm->_version <= 2) { // HACK: We have to adjust the x position by one strip (8 pixels) in diff --git a/scumm/actor.h b/scumm/actor.h index 2175534778..74767d35ee 100644 --- a/scumm/actor.h +++ b/scumm/actor.h @@ -83,6 +83,7 @@ public: public: Common::Point _pos; + int offs_x, offs_y; int top, bottom; uint width; byte number; diff --git a/scumm/akos.cpp b/scumm/akos.cpp index a748a66821..5d8b7bcb6f 100644 --- a/scumm/akos.cpp +++ b/scumm/akos.cpp @@ -1345,9 +1345,8 @@ void ScummEngine::akos_queCommand(byte cmd, Actor *a, int param_1, int param_2) a->forceClip = param_1; break; case 6: - warning("unimplemented akos_queCommand(6,%d,%d,%d)", a->number, param_1, param_2); -// a->offs_x = param_1; -// a->offs_y = param_2; + a->offs_x = param_1; + a->offs_y = param_2; break; case 7: if (param_1 != 0) { |