From af1fcbf71d11ecf1fb4cf8a5e775120d339fa655 Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Sat, 11 Sep 2010 22:40:32 +0000 Subject: SWORD25: Major bugfix for vector renderer. Only minor glitches are left svn-id: r53339 --- engines/sword25/gfx/image/vectorimage.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/engines/sword25/gfx/image/vectorimage.cpp b/engines/sword25/gfx/image/vectorimage.cpp index 8181059a09..b5497d4afe 100644 --- a/engines/sword25/gfx/image/vectorimage.cpp +++ b/engines/sword25/gfx/image/vectorimage.cpp @@ -375,10 +375,14 @@ bool VectorImage::parseDefineShape(uint shapeType, SWFBitStream &bs) { // Feststellen welche Parameter gesetzt werden uint32 stateNewStyles = bs.getBits(1); uint32 stateLineStyle = bs.getBits(1); - uint32 stateFillStyle0 = bs.getBits(1); uint32 stateFillStyle1 = bs.getBits(1); + uint32 stateFillStyle0 = bs.getBits(1); uint32 stateMoveTo = bs.getBits(1); + uint prevLineStyle = lineStyle; + uint prevFillStyle0 = fillStyle0; + uint prevFillStyle1 = fillStyle1; + // End der Shape-Definition erreicht? if (!stateNewStyles && !stateLineStyle && !stateFillStyle0 && !stateFillStyle1 && !stateMoveTo) { endOfShapeDiscovered = true; @@ -423,7 +427,7 @@ bool VectorImage::parseDefineShape(uint shapeType, SWFBitStream &bs) { if (stateLineStyle || stateFillStyle0 || stateFillStyle1 || stateMoveTo) { // Store previous curve if any if (bezNodes) { - bez = storeBez(bez, lineStyle, fillStyle0, fillStyle1, &bezNodes, &bezAllocated); + bez = storeBez(bez, prevLineStyle, prevFillStyle0, prevFillStyle1, &bezNodes, &bezAllocated); } // Start new curve -- cgit v1.2.3