diff options
Diffstat (limited to 'engines/agos')
-rw-r--r-- | engines/agos/vga.cpp | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/engines/agos/vga.cpp b/engines/agos/vga.cpp index 1ecd4fd6c1..2fc07ea80e 100644 --- a/engines/agos/vga.cpp +++ b/engines/agos/vga.cpp @@ -2865,12 +2865,14 @@ void AGOSEngine::startOverlayAnims() { vsp->priority = 4; vsp->flags = 0; vsp->palette = 0; - vsp->image = _variableArray[i]; - if (i >= 300) - vsp->x = (i - 300) / 20 * 32; - else - vsp->x = i / 20 * 32; - vsp->y = 0; + vsp->image = _variableArray[1000 + i]; + if (i >= 300) { + vsp->y = ((i - 300) / 20) * 32; + vsp->x = ((i - 300) % 20) * 32; + } else { + vsp->y = (i / 20) * 32; + vsp->x = (i % 20) * 32; + } vsp->id = 1000 + i; vsp->zoneNum = _overlayAnimationZone; } @@ -2905,8 +2907,8 @@ void AGOSEngine::startAnOverlayAnim() { vsp->priority = 10; } - vsp->x = x / 20 * 32; - vsp->y = 0; + vsp->y = x / 20 * 32; + vsp->x = x % 20 * 32;; vsp->id = vcReadVar(a); vsp->zoneNum = _overlayAnimationZone; @@ -2928,6 +2930,8 @@ void AGOSEngine::startAnOverlayAnim() { } void AGOSEngine::startBlock(uint windowNum, uint zoneNum, uint vgaSpriteId, uint x, uint y, uint priority) { + printf("startBlock\n"); + VgaSprite *vsp = _vgaSprites; const byte *vcPtrOrg; uint16 sprite, tmp, zone; |