aboutsummaryrefslogtreecommitdiff
path: root/engines/m4/mads_views.cpp
diff options
context:
space:
mode:
authorPaul Gilbert2010-06-05 04:18:23 +0000
committerPaul Gilbert2010-06-05 04:18:23 +0000
commitb9065aa2d23d87c5da887ebe1f685230a4693827 (patch)
tree483b976d069e1c7df0a771d74447fde376072ce8 /engines/m4/mads_views.cpp
parent5686c251f09fa25432d5db8195ac1df2fcda88fb (diff)
downloadscummvm-rg350-b9065aa2d23d87c5da887ebe1f685230a4693827.tar.gz
scummvm-rg350-b9065aa2d23d87c5da887ebe1f685230a4693827.tar.bz2
scummvm-rg350-b9065aa2d23d87c5da887ebe1f685230a4693827.zip
Various bugfixes to the animation code - first Rex animation now plays, albeit in the wrong place
svn-id: r49437
Diffstat (limited to 'engines/m4/mads_views.cpp')
-rw-r--r--engines/m4/mads_views.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/engines/m4/mads_views.cpp b/engines/m4/mads_views.cpp
index c656db83f1..bfd57c4add 100644
--- a/engines/m4/mads_views.cpp
+++ b/engines/m4/mads_views.cpp
@@ -156,10 +156,10 @@ void MadsSpriteSlots::drawBackground() {
if (_entries[i].depth <= 1) {
// No depth, so simply copy the frame onto the background
- frame->copyTo(_owner._bgSurface, xp, yp);
+ frame->copyTo(_owner._bgSurface, xp, yp, 0);
} else {
// Depth was specified, so draw frame using scene's depth information
- frame->copyTo(_owner._bgSurface, xp, yp, _entries[i].depth, _owner._depthSurface, 100);
+ frame->copyTo(_owner._bgSurface, xp, yp, _entries[i].depth, _owner._depthSurface, 100, 0);
}
}
}
@@ -954,9 +954,9 @@ void MadsSequenceList::remove(int seqIndex) {
void MadsSequenceList::setSpriteSlot(int seqIndex, MadsSpriteSlot &spriteSlot) {
MadsSequenceEntry &timerEntry = _entries[seqIndex];
- SpriteAsset &sprite = _owner._spriteSlots.getSprite(timerEntry.spriteListIndex);
+ SpriteAsset &spriteSet = _owner._spriteSlots.getSprite(timerEntry.spriteListIndex);
- spriteSlot.spriteType = sprite.getAssetType() == 1 ? BACKGROUND_SPRITE : FOREGROUND_SPRITE;
+ spriteSlot.spriteType = spriteSet.isBackground() ? BACKGROUND_SPRITE : FOREGROUND_SPRITE;
spriteSlot.seqIndex = seqIndex;
spriteSlot.spriteListIndex = timerEntry.spriteListIndex;
spriteSlot.frameNumber = ((timerEntry.field_2 == 1) ? 0x8000 : 0) | timerEntry.frameIndex;
@@ -967,8 +967,8 @@ void MadsSequenceList::setSpriteSlot(int seqIndex, MadsSpriteSlot &spriteSlot) {
spriteSlot.xp = timerEntry.msgPos.x;
spriteSlot.yp = timerEntry.msgPos.y;
} else {
- spriteSlot.xp = sprite.getFrame(timerEntry.frameIndex - 1)->x;
- spriteSlot.yp = sprite.getFrame(timerEntry.frameIndex - 1)->y;
+ spriteSlot.xp = spriteSet.getFrame(timerEntry.frameIndex - 1)->x;
+ spriteSlot.yp = spriteSet.getFrame(timerEntry.frameIndex - 1)->y;
}
}