Fix patch y offset. (Yikes)
authorDan Olson <theoddone33@icculus.org>
Fri, 27 Nov 2009 12:21:10 +0000 (04:21 -0800)
committerDan Olson <theoddone33@icculus.org>
Fri, 27 Nov 2009 12:21:10 +0000 (04:21 -0800)
pyhexen/vid.py

index 663b75a..0d1e822 100644 (file)
@@ -30,7 +30,7 @@ class Video:
                        for x in range (0, w):
                                screen[x,y] = ord (data[y * w + x])
                
-       def __blitPatch(self, data, x, y, trans = lambda a,b: a):
+       def __blitPatch(self, data, x, y, trans = lambda a, b: a):
                (width, height) = struct.unpack_from ('<hh', data, 0)
                (left_offset, top_offset) = struct.unpack_from('<hh', data, 4)
                column_offsets =  struct.unpack_from('<8i', data, 8)
@@ -48,6 +48,7 @@ class Video:
                        while topdelta != 255:
                                length = ord (data[col_ofs + 1])
                                source_ofs = col_ofs + 3
+                               topdelta = topdelta + y
                                for y_ofs in range (0, length):
                                        screen[x + x_ofs, topdelta + y_ofs] = trans(ord (data[source_ofs + y_ofs]),screen[x + x_ofs, topdelta + y_ofs])
                                col_ofs = col_ofs + length + 4