countries: include all reserved entries from iso standard
[sheet.git] / starcraft.inc.pl
1 use utf8;
2
3 my %CONS = ( # producing building
4         r => ['pm'],
5 );
6 my %UNIT = ( # any unit
7         m => ['pm'],
8         s => ['pm'],
9 );
10 my %UNITF = ( # fighter
11         p => ['pm'],
12         h => ['pm'],
13 );
14 my %UNITA = (
15         a => ['pm'],
16 );
17 my %UNITB = (
18         b => ['ci'],
19 );
20 my %UNITH = (
21         %UNITA,
22         g => ['pm'],
23         c => ['pm'],
24 );
25
26 {
27
28 '' => {
29 },
30
31 P => {
32         %UNIT, %UNITH,
33         b => ['me modePb'],
34         v => ['me modePv'],
35 },
36 Pb => {
37         n => ['mo modePbn'],
38         p => ['me'],
39         a => ['me'],
40         g => ['mo modePbg'],
41         f => ['mv modePbf'],
42         c => ['me'],
43         y => ['mv modePby'],
44         b => ['me modePbb'],
45 },
46 Pbn => {
47         %CONS,
48         p => ['co modeP'],
49 },
50 Pbg => {
51         %CONS,
52         z => ['co'],
53         d => ['cp'],
54         t => ['cp modePbgt'],
55         k => ['cp modePbgk'],
56 },
57 Pbgt => {
58         %UNIT, %UNITF,
59         t => ['ci'],
60         l => ['ci'],
61         r => ['cp'],
62 },
63 Pbgk => {
64         %UNIT, %UNITF, %UNITA,
65         r => ['cp modePbgkr'],
66 },
67 Pbgkr => {
68         %UNIT, %UNITF,
69         f => ['pm'],
70         c => ['ci'],
71         e => ['ci'],
72 },
73 Pbf => {
74         w => ['mv'],
75         a => ['mv'],
76         s => ['mv'],
77 },
78 Pby => {
79         w => ['mv'],
80         a => ['mv'],
81         s => ['mv'],
82 },
83 Pbb => {
84         r => ['pm'],
85 },
86 Pv => {
87         r => ['mo modePvr'],
88         s => ['mo modePvs'],
89         c => ['mv modePvc'],
90         b => ['mv modePvb'],
91         f => ['mv modePvf'],
92         t => ['mv modePvt'],
93         o => ['mv modePvo'],
94         a => ['mv modePva'],
95 },
96 Pvr => {
97         %CONS,
98         s => ['co'],
99         o => ['cp'],
100         v => ['cp modePvrv'],
101 },
102 Pvrv => {
103         %UNIT, %UNITF, %UNITA,
104         r => ['co'],
105 },
106 Pvs => {
107         %CONS,
108         s => ['co'],
109         c => ['cp modePvsc'],
110         a => ['cp modePvsa'],
111         o => ['co modePvso ext'],
112 },
113 Pvsc => {
114         %UNIT, %UNITF, %UNITA,
115         i => ['co'],
116 },
117 Pvsa => {
118         %UNIT, %UNITF, %UNITA,
119         r => [undef],
120         t => [undef],
121 },
122 Pvso => {
123         %UNIT, %UNITF, %UNITA,
124         d => ['ci'],
125 },
126 Pvc => {
127         l => ['mv'],
128 },
129 Pvb => {
130         s => ['mv'],
131         c => ['mv'],
132         g => ['mv'],
133 },
134 Pvf => {
135         a => ['mv'],
136         g => ['mv'],
137         c => ['mv'],
138         d => ['mv ext'],
139         j => ['mv'],
140 },
141 Pvt => {
142         t => ['mv'],
143         h => ['mv'],
144         k => ['mv'],
145 #       c => ['mv'], #TODO
146         e => ['mv'],
147         t => ['mv'],
148 },
149 Pvo => {
150         g => ['mv'],
151         s => ['mv'],
152 },
153 Pva => {
154         r => ['mv'],
155         s => ['mv'],
156         k => ['mv'],
157 },
158
159 Z => {
160         d => ['co modeZd'],
161         z => ['cp'],
162         o => ['co modeZo'],
163         h => ['cp modeZh'],
164         q => ['mv modeZq'],
165 },
166 Zd => {
167         %UNIT, %UNITH, %UNITB,
168         b => ['me modeZdb'],
169         v => ['me modeZdv'],
170 },
171 Zdb => {
172         h => ['mo modeZdbh'],
173         c => ['mo modeZdbc'],
174         e => ['me'],
175         s => ['mv modeZdbs'],
176         v => ['mv modeZdbv'],
177         d => ['mv modeZdbd'],
178 },
179 Zdbh => {
180         %CONS,
181         b => ['me'],
182         s => ['pm modeZ'],
183         l => ['mo modeZdbhl'],
184 },
185 Zdbhl => {
186         %CONS,
187         b => ['me'],
188         v => ['mv'],
189         a => ['mv'],
190         p => ['mv'],
191         h => ['mo modeZdbhlh'],
192 },
193 modeZdbhlh => {
194         %CONS,
195         b => ['me'],
196         v => ['mv'],
197         a => ['mv'],
198         p => ['mv'],
199 },
200 Zdbs => {
201         m => ['mv'],
202         a => ['mv'],
203 },
204 Zdbv => {
205         m => ['mv'],
206         a => ['mv'],
207         c => ['mv'],
208 },
209 Zdbd => {
210         m => ['mv'],
211         g => ['mv'],
212         l => ['mv'],
213 },
214 Zdv => {
215 },
216
217 }