comparison data/ST/make_ecl.py @ 121:1bc0ad774ed4

More impressive data, use a wider range of things, and document things!
author Thibaut Girka <thib@sitedethib.com>
date Fri, 09 Sep 2011 21:36:53 +0200
parents f0e6ae22d29a
children
comparison
equal deleted inserted replaced
120:4300a832f033 121:1bc0ad774ed4
1 from pytouhou.formats.ecl import ECL 1 from pytouhou.formats.ecl import ECL
2 from math import pi 2 from math import pi
3 3
4 # Frame, sub, opcode, args 4 # Frame, sub, opcode, args
5 main = [(120, 0, 0, (-30.0, 80.0, 0.0, 16, 0, 0, 0)), 5 main = [(120, 0, 0, (-30.0, 80.0, 0.0, 160, 0, 0, 0)),
6 (140, 0, 0, (-30.0, 130.0, 0.0, 16, 0, 0, 0)), 6 (140, 0, 0, (-30.0, 130.0, 0.0, 160, 0, 0, 0)),
7 7
8 (160, 0, 2, (192*2+30.0, 80.0, 0.0, 16, 0, 0, 0)), 8 (160, 0, 2, (192*2+30.0, 80.0, 0.0, 160, 0, 0, 0)),
9 (180, 0, 2, (192*2+30.0, 130.0, 0.0, 16, 0, 0, 0)), 9 (180, 0, 2, (192*2+30.0, 130.0, 0.0, 160, 0, 0, 0)),
10 10
11 (220, 0, 0, (-30.0, 80.0, 0.0, 16, 0, 0, 0)), 11 (220, 0, 0, (-30.0, 80.0, 0.0, 16, 0, 0, 0)),
12 (220, 0, 0, (-30.0, 130.0, 0.0, 16, 0, 0, 0)), 12 (220, 0, 0, (-30.0, 130.0, 0.0, 16, 0, 0, 0)),
13 13
14 (260, 0, 2, (192*2+30.0, 80.0, 0.0, 16, 0, 0, 0)), 14 (260, 0, 2, (192*2+30.0, 80.0, 0.0, 16, 0, 0, 0)),
16 16
17 (560, 2, 0, (0, -10, 0.0, 120, 0, 0, 0)), 17 (560, 2, 0, (0, -10, 0.0, 120, 0, 0, 0)),
18 (780, 2, 0, (0, -10, 0.0, 120, 0, 0, 0)), 18 (780, 2, 0, (0, -10, 0.0, 120, 0, 0, 0)),
19 (900, 2, 0, (0, -10, 0.0, 120, 0, 0, 0)), 19 (900, 2, 0, (0, -10, 0.0, 120, 0, 0, 0)),
20 20
21 (1500, 3, 0, (192, -10, 0.0, 300, 0, 0, 0))] 21 (1500, 3, 0, (192, -10, 0.0, 2000, 0, 0, 0)),
22
23 (2100, 4, 0, (-30.0, 80.0, 0.0, 6500, 0, 0, 0))]
22 24
23 25
24 subs = [ 26 subs = [
25 # Frame, opcode, rank_mask, param_mask, args 27 # Frame, opcode, rank_mask, param_mask, args
26 [(0, 97, 0xff00, 256, (0,)), 28 [(0, 97, 0xff00, 256, (0,)),
57 59
58 [(0, 97, 0xff00, 256, (0,)), 60 [(0, 97, 0xff00, 256, (0,)),
59 (0, 57, 0xff00, 256, (60, 192.0, 80.0, 0.0)), 61 (0, 57, 0xff00, 256, (60, 192.0, 80.0, 0.0)),
60 (60, 82, 0xff00, 256, (40, 15, -1, -1, 0.0, 6.0, -1, -1)), 62 (60, 82, 0xff00, 256, (40, 15, -1, -1, 0.0, 6.0, -1, -1)),
61 (60, 75, 0xff00, 256, (1, 3, 20, 1, 3.0, 6.0, -pi, pi, 1| 128)), 63 (60, 75, 0xff00, 256, (1, 3, 20, 1, 3.0, 6.0, -pi, pi, 1| 128)),
62 (60, 76, 0xff00, 256, (110,))] 64 (60, 76, 0xff00, 256, (110,))],
65
66 [(0, 97, 0xff00, 256, (0,)),
67 (0, 105, 0xff00, 256, (0,)), # Set damageable: False
68 (0, 126, 0xff00, 256, (0,)), # One life
69
70 # Set callback
71 (0, 113, 0xff00, 256, (1000,)),
72 (0, 114, 0xff00, 256, (5,)),
73
74 (0, 111, 0xff00, 256, (6000,)),
75 (0, 101, 0xff00, 256, (0,)),
76 (0, 57, 0xff00, 256, (60, 192.0, 80.0, 0.0)),
77 (60, 102, 0xff00, 256, (10, -0.3, 0.7, 0.3, 48.0)), # Nice little effect
78 (80, 105, 0xff00, 256, (1,)), # Set damageable: True
79 (80, 119, 0xff00, 256, (10,)), # Drop bonus :)
80
81 (80, 82, 0xff00, 256, (800, 1, -1, -1, 0.02, 0.02, 0.0, 0.0)),
82 (80, 70, 0xff00, 256, (2, 2, 30, 4, 0.1, 4.1, 0.0, 0.0, 1|32)),
83 (80, 82, 0xff00, 256, (800, 1, -1, -1, 0.02, -0.02, 0.0, 0.0)),
84 (80, 70, 0xff00, 256, (2, 6, 30, 4, 0.6, 4.6, 0.0, 0.0, 1|32)),
85
86 (120, 67, 0xff00, 256, (2, 4, 3, 30, 1.0, 5.0, 0.0, 4.0, 0)),
87
88 (200, 2, 0xff00, 256, (80, 11))
89 ],
90
91 [(0, 93, 0xff00, 256, (2, 0, "THE END ~")),
92
93 (20, 81, 0xff00, 256, (-100.0-20, 50.0, 0.0)),
94 (20, 85, 0xff00, 256, (0, 6, 0.0, 0, 0.0, 60.0, 60.0, 16.0, 90, 120, 16, 70, 14, 0)),
95 (20, 85, 0xff00, 256, (0, 6, pi / 2., 0, 0.0, 40.0, 40.0, 16.0, 90, 120, 16, 70, 14, 0)),
96 (20, 81, 0xff00, 256, (-100.0-20, 100.0, 0.0)),
97 (20, 85, 0xff00, 256, (0, 6, 0.0, 0, 0.0, 60.0, 60.0, 16.0, 90, 120, 16, 70, 14, 0)),
98 (20, 85, 0xff00, 256, (0, 6, pi / 2., 0, 0.0, 40.0, 40.0, 16.0, 90, 120, 16, 70, 14, 0)),
99 (20, 81, 0xff00, 256, (-100.0-20, 150.0, 0.0)),
100 (20, 85, 0xff00, 256, (0, 6, 0.0, 0, 0.0, 60.0, 60.0, 16.0, 90, 120, 16, 70, 14, 0)),
101
102 (20, 81, 0xff00, 256, (0.0-20, 20+50.0, 0.0)),
103 (20, 85, 0xff00, 256, (0, 6, pi / 2., 0, 0.0, 80.0, 80.0, 16.0, 90, 120, 16, 70, 14, 0)),
104 (20, 85, 0xff00, 256, (0, 6, pi / 4., 0, 0.0, 100.0, 100.0, 16.0, 90, 120, 16, 70, 14, 0)),
105 (20, 81, 0xff00, 256, (80.0-20, 20+80+50.0, 0.0)),
106 (20, 85, 0xff00, 256, (0, 6, -pi / 2., 0, 0.0, 80.0, 80.0, 16.0, 90, 120, 16, 70, 14, 0)),
107
108 (20, 81, 0xff00, 256, (120.0-20, 20+50.0, 0.0)),
109 (20, 85, 0xff00, 256, (0, 6, pi / 2., 0, 0.0, 80.0, 80.0, 16.0, 90, 120, 16, 70, 14, 0)),
110 (20, 85, 0xff00, 256, (0, 6, pi / 4., 0, 0.0, 60.0, 60.0, 16.0, 90, 120, 16, 70, 14, 0)),
111 (20, 81, 0xff00, 256, (120.0-20, 20+50.0+80.0, 0.0)),
112 (20, 85, 0xff00, 256, (0, 6, -pi / 4., 0, 0.0, 60.0, 60.0, 16.0, 90, 120, 16, 70, 14, 0)),
113
114 (40, 81, 0xff00, 256, (0, 0, 0)),
115 (40, 75, 0xff00, 256, (9, 1, 8, 1, 0.5, 3.0, -pi, pi, 0)),
116 (40, 76, 0xff00, 256, (40,)),
117
118 (120, 4, 0xff00, 256, (-10001, 314)),
119
120 (120, 87, 0xff00, 256, (1,)),
121 (120, 85, 0xff00, 256, (0, 2, 0.0, 0, 0.0, 500.0, 500.0, 32.0, 90, 400, 16, 70, 14, 0)),
122
123 (122, 88, 0xff00, 256, (1, 0.01)),
124 (123, 3, 0xff00, 256, (122, 25, -10001)),
125
126 (200, 94, 0xff00, 256, ()),
127 ]
63 ] 128 ]
64 129
65 ecl = ECL() 130 ecl = ECL()
66 ecl.subs = subs 131 ecl.subs = subs
67 ecl.main = main 132 ecl.main = main