summaryrefslogtreecommitdiff
path: root/games/monsterz/patches/patch-ab
blob: b13112e1026a105fe87bfcec12a50e725e66419d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
$NetBSD: patch-ab,v 1.2 2017/07/13 12:29:09 wiz Exp $

Fix 64-bit alignment issue with Python 2.5.
http://sam.zoy.org/cgi-bin/viewcvs.cgi/monsterz.py?root=monsterz&rev=137&r1=135&r2=137

Fix blit crash, using patch from Fedora:
http://cvs.fedoraproject.org/viewvc/devel/monsterz/monsterz-0.7.1-blit-crash.patch?view=log

--- monsterz.py.orig	2007-12-17 22:05:00.000000000 +0000
+++ monsterz.py
@@ -108,7 +108,9 @@ def semi_grayscale(surf):
                 M = int(max(r, g, b))
                 m = int(min(r, g, b))
                 val = (2 * M + r + g + b) / 5
-                p[:] = (val + r) / 2, (val + g) / 2, (val + b) / 2
+		p[0] = (val + r) / 2
+		p[1] = (val + g) / 2
+		p[2] = (val + b) / 2
                 if alpha[y][x] >= 250:
                     alpha[y][x] = 255 - (M - m) * 3 / 4
         del pixels
@@ -129,7 +131,9 @@ def semi_transp(surf):
                 r, g, b = p
                 M = int(max(r, g, b))
                 m = int(min(r, g, b))
-                p[:] = (m + r) / 2, (m + g) / 2, (m + b) / 2
+		p[0] = (m + r) / 2
+		p[1] = (m + g) / 2
+		p[2] = (m + b) / 2
                 if alpha[y][x] >= 250:
                     alpha[y][x] = 255 - M * 2 / 3
         del pixels
@@ -829,10 +833,10 @@ class Game:
             pass
         else:
             for x in range(4):
-                for y, p in enumerate(alpha[x]):
-                    alpha[x][y] = p * x / 4
-                for y, p in enumerate(alpha[406 - x - 1]):
-                    alpha[406 - x - 1][y] = p * x / 4
+                for y in range(len(alpha[x])):
+                    alpha[x][y] = alpha[x][y] * x / 4
+                for y in range(len(alpha[406 - x - 1])):
+                    alpha[406 - x - 1][y] = alpha[406 - x - 1][y] * x / 4
             for col in alpha:
                 l = len(col)
                 for y in range(4):
@@ -1287,10 +1291,10 @@ class Monsterz:
             pass
         else:
             for x in range(10):
-                for y, p in enumerate(alpha[x]):
-                    alpha[x][y] = p * x / 12
-                for y, p in enumerate(alpha[406 - x - 1]):
-                    alpha[406 - x - 1][y] = p * x / 12
+                for y in range(len(alpha[x])):
+                    alpha[x][y] = alpha[x][y] * x / 12
+                for y in range(len(alpha[406 - x - 1])):
+                    alpha[406 - x - 1][y] = alpha[406 - x - 1][y] * x / 12
             del alpha
             scroll.unlock()
         system.blit(scroll, (13, 437))