From d078a4d235117696d889a6f52a0b2c6a0569d6ea Mon Sep 17 00:00:00 2001 From: Martin Kiewitz Date: Tue, 26 Oct 2010 20:19:17 +0000 Subject: SCI: fix gfx issues when giving out cards hoyle4 bit 2 actually triggers special drawing of cels in sierra sci svn-id: r53855 --- engines/sci/graphics/view.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'engines/sci/graphics/view.cpp') diff --git a/engines/sci/graphics/view.cpp b/engines/sci/graphics/view.cpp index 20ebb9b937..36d48fe3c9 100644 --- a/engines/sci/graphics/view.cpp +++ b/engines/sci/graphics/view.cpp @@ -354,6 +354,16 @@ void GfxView::getCelRect(int16 loopNo, int16 celNo, int16 x, int16 y, int16 z, C outRect.top = outRect.bottom - celInfo->height; } +void GfxView::getCelSpecialHoyle4Rect(int16 loopNo, int16 celNo, int16 x, int16 y, int16 z, Common::Rect &outRect) const { + const CelInfo *celInfo = getCelInfo(loopNo, celNo); + int16 adjustY = y - celInfo->height + celInfo->displaceY + 1; + int16 adjustX = x - ((celInfo->width - 1) >> 1) + celInfo->displaceX; + outRect.top += adjustY; + outRect.bottom += adjustY; + outRect.left += adjustX; + outRect.right += adjustX; +} + void GfxView::getCelScaledRect(int16 loopNo, int16 celNo, int16 x, int16 y, int16 z, int16 scaleX, int16 scaleY, Common::Rect &outRect) const { int16 scaledDisplaceX, scaledDisplaceY; int16 scaledWidth, scaledHeight; -- cgit v1.2.3