1 /* ---------------------------------------------------------------------- *
2  * lintypes.c
3  * This file is part of lincity.
4  * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001.
5  * ---------------------------------------------------------------------- */
6 #include <string.h> /* XXX: portability issue?  for strcpy */
7 #include "lcconfig.h"
8 #include "lin-city.h"
9 #include "engglobs.h"
10 #include "lctypes.h"
11 #include "shrglobs.h"
12 #include "lintypes.h"
13 #include "lcintl.h"
14 #include "fileutil.h"
15 #include "readpng.h"
16 
17 struct TYPE main_types[NUM_OF_TYPES];
18 
19 struct GROUP main_groups[NUM_OF_GROUPS] =
20 {
21     /* 0 */
22     { N_("Empty"),       /* name */
23       FALSE,            /* need credit? */
24       GROUP_BARE,       /* group number */
25       1,                /* size */
26       (green(12)),      /* color */
27       1,                /* cost multiplier */
28       1,                /* bulldoze cost */
29       0,                /* probability of fire */
30       0,                /* cost */
31       0                 /* tech */
32     },
33     /* 1 */
34     { N_("Power line"),
35       FALSE,                           /* need credit? */
36       GROUP_POWER_LINE,
37       1,                               /* size */
38       GROUP_POWER_LINE_COLOUR,
39       GROUP_POWER_LINE_COST_MUL,
40       GROUP_POWER_LINE_BUL_COST,
41       GROUP_POWER_LINE_FIREC,
42       GROUP_POWER_LINE_COST,
43       GROUP_POWER_LINE_TECH
44     },
45     /* 2 */
46     { N_("Solar PS"),
47       TRUE,                            /* need credit? */
48       GROUP_SOLAR_POWER,
49       4,                               /* size */
50       GROUP_SOLAR_POWER_COLOUR,
51       GROUP_SOLAR_POWER_COST_MUL,
52       GROUP_SOLAR_POWER_BUL_COST,
53       GROUP_SOLAR_POWER_FIREC,
54       GROUP_SOLAR_POWER_COST,
55       GROUP_SOLAR_POWER_TECH
56     },
57     /* 3 */
58     { N_("Substation"),
59       FALSE,                           /* need credit? */
60       GROUP_SUBSTATION,
61       2,                               /* size */
62       GROUP_SUBSTATION_COLOUR,
63       GROUP_SUBSTATION_COST_MUL,
64       GROUP_SUBSTATION_BUL_COST,
65       GROUP_SUBSTATION_FIREC,
66       GROUP_SUBSTATION_COST,
67       GROUP_SUBSTATION_TECH
68     },
69     /* 4 */
70     { N_("Residential LL"),
71       FALSE,                           /* need credit? */
72       GROUP_RESIDENCE_LL,
73       3,                               /* size */
74       GROUP_RESIDENCE_LL_COLOUR,
75       GROUP_RESIDENCE_LL_COST_MUL,
76       GROUP_RESIDENCE_LL_BUL_COST,
77       GROUP_RESIDENCE_LL_FIREC,
78       GROUP_RESIDENCE_LL_COST,
79       GROUP_RESIDENCE_LL_TECH
80     },
81     /* 5 */
82     { N_("Farm"),
83       FALSE,                           /* need credit? */
84       GROUP_ORGANIC_FARM,
85       4,                               /* size */
86       GROUP_ORGANIC_FARM_COLOUR,
87       GROUP_ORGANIC_FARM_COST_MUL,
88       GROUP_ORGANIC_FARM_BUL_COST,
89       GROUP_ORGANIC_FARM_FIREC,
90       GROUP_ORGANIC_FARM_COST,
91       GROUP_ORGANIC_FARM_TECH
92     },
93     /* 6 */
94     { N_("Market"),
95       FALSE,                           /* need credit? */
96       GROUP_MARKET,
97       2,                               /* size */
98       GROUP_MARKET_COLOUR,
99       GROUP_MARKET_COST_MUL,
100       GROUP_MARKET_BUL_COST,
101       GROUP_MARKET_FIREC,
102       GROUP_MARKET_COST,
103       GROUP_MARKET_TECH
104     },
105     /* 7 */
106     { N_("Track"),
107       FALSE,                           /* need credit? */
108       GROUP_TRACK,
109       1,                               /* size */
110       GROUP_TRACK_COLOUR,
111       GROUP_TRACK_COST_MUL,
112       GROUP_TRACK_BUL_COST,
113       GROUP_TRACK_FIREC,
114       GROUP_TRACK_COST,
115       GROUP_TRACK_TECH
116     },
117     /* 8 */
118     { N_("Coalmine"),
119       FALSE,                           /* need credit? */
120       GROUP_COALMINE,
121       4,                               /* size */
122       GROUP_COALMINE_COLOUR,
123       GROUP_COALMINE_COST_MUL,
124       GROUP_COALMINE_BUL_COST,
125       GROUP_COALMINE_FIREC,
126       GROUP_COALMINE_COST,
127       GROUP_COALMINE_TECH
128     },
129     /* 9 */
130     { N_("Railway"),
131       FALSE,                           /* need credit? */
132       GROUP_RAIL,
133       1,                               /* size */
134       GROUP_RAIL_COLOUR,
135       GROUP_RAIL_COST_MUL,
136       GROUP_RAIL_BUL_COST,
137       GROUP_RAIL_FIREC,
138       GROUP_RAIL_COST,
139       GROUP_RAIL_TECH
140     },
141     /* 10 */
142     { N_("Coal PS"),
143       FALSE,                           /* need credit? */
144       GROUP_COAL_POWER,
145       4,                               /* size */
146       GROUP_COAL_POWER_COLOUR,
147       GROUP_COAL_POWER_COST_MUL,
148       GROUP_COAL_POWER_BUL_COST,
149       GROUP_COAL_POWER_FIREC,
150       GROUP_COAL_POWER_COST,
151       GROUP_COAL_POWER_TECH
152     },
153     /* 11 */
154     { N_("Road"),
155       FALSE,                           /* need credit? */
156       GROUP_ROAD,
157       1,                               /* size */
158       GROUP_ROAD_COLOUR,
159       GROUP_ROAD_COST_MUL,
160       GROUP_ROAD_BUL_COST,
161       GROUP_ROAD_FIREC,
162       GROUP_ROAD_COST,
163       GROUP_ROAD_TECH
164     },
165     /* 12 */
166     { N_("Lt. Industry"),
167       FALSE,                           /* need credit? */
168       GROUP_INDUSTRY_L,
169       3,                               /* size */
170       GROUP_INDUSTRY_L_COLOUR,
171       GROUP_INDUSTRY_L_COST_MUL,
172       GROUP_INDUSTRY_L_BUL_COST,
173       GROUP_INDUSTRY_L_FIREC,
174       GROUP_INDUSTRY_L_COST,
175       GROUP_INDUSTRY_L_TECH
176     },
177     /* 13 */
178     { N_("University"),
179       FALSE,                           /* need credit? */
180       GROUP_UNIVERSITY,
181       3,                               /* size */
182       GROUP_UNIVERSITY_COLOUR,
183       GROUP_UNIVERSITY_COST_MUL,
184       GROUP_UNIVERSITY_BUL_COST,
185       GROUP_UNIVERSITY_FIREC,
186       GROUP_UNIVERSITY_COST,
187       GROUP_UNIVERSITY_TECH
188     },
189     /* 14 */
190     { N_("Commune"),
191       FALSE,                           /* need credit? */
192       GROUP_COMMUNE,
193       4,                               /* size */
194       GROUP_COMMUNE_COLOUR,
195       GROUP_COMMUNE_COST_MUL,
196       GROUP_COMMUNE_BUL_COST,
197       GROUP_COMMUNE_FIREC,
198       GROUP_COMMUNE_COST,
199       GROUP_COMMUNE_TECH
200     },
201     /* 15 */
202     { N_("Ore mine"),
203       FALSE,                           /* need credit? */
204       GROUP_OREMINE,
205       4,                               /* size */
206       GROUP_OREMINE_COLOUR,
207       GROUP_OREMINE_COST_MUL,
208       GROUP_OREMINE_BUL_COST,
209       GROUP_OREMINE_FIREC,
210       GROUP_OREMINE_COST,
211       GROUP_OREMINE_TECH
212     },
213     /* 16 */
214     { N_("Rubbish tip"),
215       FALSE,                           /* need credit? */
216       GROUP_TIP,
217       4,                               /* size */
218       GROUP_TIP_COLOUR,
219       GROUP_TIP_COST_MUL,
220       GROUP_TIP_BUL_COST,
221       GROUP_TIP_FIREC,
222       GROUP_TIP_COST,
223       GROUP_TIP_TECH
224     },
225     /* 17 */
226     { N_("Port"),
227       FALSE,                           /* need credit? */
228       GROUP_PORT,
229       4,                               /* size */
230       GROUP_PORT_COLOUR,
231       GROUP_PORT_COST_MUL,
232       GROUP_PORT_BUL_COST,
233       GROUP_PORT_FIREC,
234       GROUP_PORT_COST,
235       GROUP_PORT_TECH
236     },
237     /* 18 */
238     { N_("Hv. Industry"),
239       FALSE,                           /* need credit? */
240       GROUP_INDUSTRY_H,
241       4,                               /* size */
242       GROUP_INDUSTRY_H_COLOUR,
243       GROUP_INDUSTRY_H_COST_MUL,
244       GROUP_INDUSTRY_H_BUL_COST,
245       GROUP_INDUSTRY_H_FIREC,
246       GROUP_INDUSTRY_H_COST,
247       GROUP_INDUSTRY_H_TECH
248     },
249     /* 19 */
250     { N_("Park"),
251       TRUE,                           /* need credit? */
252       GROUP_PARKLAND,
253       1,                               /* size */
254       GROUP_PARKLAND_COLOUR,
255       GROUP_PARKLAND_COST_MUL,
256       GROUP_PARKLAND_BUL_COST,
257       GROUP_PARKLAND_FIREC,
258       GROUP_PARKLAND_COST,
259       GROUP_PARKLAND_TECH
260     },
261     /* 20 */
262     { N_("Recycle"),
263       TRUE,                           /* need credit? */
264       GROUP_RECYCLE,
265       2,                               /* size */
266       GROUP_RECYCLE_COLOUR,
267       GROUP_RECYCLE_COST_MUL,
268       GROUP_RECYCLE_BUL_COST,
269       GROUP_RECYCLE_FIREC,
270       GROUP_RECYCLE_COST,
271       GROUP_RECYCLE_TECH
272     },
273     /* 21 */
274     { N_("Water"),
275       FALSE,                           /* need credit? */
276       GROUP_WATER,
277       1,                               /* size */
278       GROUP_WATER_COLOUR,
279       GROUP_WATER_COST_MUL,
280       GROUP_WATER_BUL_COST,
281       GROUP_WATER_FIREC,
282       GROUP_WATER_COST,
283       GROUP_WATER_TECH
284     },
285     /* 22 */
286     { N_("Health centre"),
287       FALSE,                           /* need credit? */
288       GROUP_HEALTH,
289       2,                               /* size */
290       GROUP_HEALTH_COLOUR,
291       GROUP_HEALTH_COST_MUL,
292       GROUP_HEALTH_BUL_COST,
293       GROUP_HEALTH_FIREC,
294       GROUP_HEALTH_COST,
295       GROUP_HEALTH_TECH
296     },
297     /* 23 */
298     { N_("Rocket pad"),
299       TRUE,                            /* need credit? */
300       GROUP_ROCKET,
301       4,                               /* size */
302       GROUP_ROCKET_COLOUR,
303       GROUP_ROCKET_COST_MUL,
304       GROUP_ROCKET_BUL_COST,
305       GROUP_ROCKET_FIREC,
306       GROUP_ROCKET_COST,
307       GROUP_ROCKET_TECH
308     },
309     /* 24 */
310     { N_("Windmill"),
311       FALSE,                           /* need credit? */
312       GROUP_WINDMILL,
313       2,                               /* size */
314       GROUP_WINDMILL_COLOUR,
315       GROUP_WINDMILL_COST_MUL,
316       GROUP_WINDMILL_BUL_COST,
317       GROUP_WINDMILL_FIREC,
318       GROUP_WINDMILL_COST,
319       GROUP_WINDMILL_TECH
320     },
321     /* 25 */
322     { N_("Monument"),
323       FALSE,                           /* need credit? */
324       GROUP_MONUMENT,
325       2,                               /* size */
326       GROUP_MONUMENT_COLOUR,
327       GROUP_MONUMENT_COST_MUL,
328       GROUP_MONUMENT_BUL_COST,
329       GROUP_MONUMENT_FIREC,
330       GROUP_MONUMENT_COST,
331       GROUP_MONUMENT_TECH
332     },
333     /* 26 */
334     { N_("School"),
335       FALSE,                           /* need credit? */
336       GROUP_SCHOOL,
337       2,                               /* size */
338       GROUP_SCHOOL_COLOUR,
339       GROUP_SCHOOL_COST_MUL,
340       GROUP_SCHOOL_BUL_COST,
341       GROUP_SCHOOL_FIREC,
342       GROUP_SCHOOL_COST,
343       GROUP_SCHOOL_TECH
344     },
345     /* 27 */
346     { N_("Blacksmith"),
347       FALSE,                           /* need credit? */
348       GROUP_BLACKSMITH,
349       2,                               /* size */
350       GROUP_BLACKSMITH_COLOUR,
351       GROUP_BLACKSMITH_COST_MUL,
352       GROUP_BLACKSMITH_BUL_COST,
353       GROUP_BLACKSMITH_FIREC,
354       GROUP_BLACKSMITH_COST,
355       GROUP_BLACKSMITH_TECH
356     },
357     /* 28 */
358     { N_("Mill"),
359       FALSE,                           /* need credit? */
360       GROUP_MILL,
361       2,                               /* size */
362       GROUP_MILL_COLOUR,
363       GROUP_MILL_COST_MUL,
364       GROUP_MILL_BUL_COST,
365       GROUP_MILL_FIREC,
366       GROUP_MILL_COST,
367       GROUP_MILL_TECH
368     },
369     /* 29 */
370     { N_("Pottery"),
371       FALSE,                           /* need credit? */
372       GROUP_POTTERY,
373       2,                               /* size */
374       GROUP_POTTERY_COLOUR,
375       GROUP_POTTERY_COST_MUL,
376       GROUP_POTTERY_BUL_COST,
377       GROUP_POTTERY_FIREC,
378       GROUP_POTTERY_COST,
379       GROUP_POTTERY_TECH
380     },
381     /* 30 */
382     { N_("Fire sta'n"),
383       FALSE,                           /* need credit? */
384       GROUP_FIRESTATION,
385       2,                               /* size */
386       GROUP_FIRESTATION_COLOUR,
387       GROUP_FIRESTATION_COST_MUL,
388       GROUP_FIRESTATION_BUL_COST,
389       GROUP_FIRESTATION_FIREC,
390       GROUP_FIRESTATION_COST,
391       GROUP_FIRESTATION_TECH
392     },
393     /* 31 */
394     { N_("Cricket pitch"),
395       FALSE,                           /* need credit? */
396       GROUP_CRICKET,
397       2,                               /* size */
398       GROUP_CRICKET_COLOUR,
399       GROUP_CRICKET_COST_MUL,
400       GROUP_CRICKET_BUL_COST,
401       GROUP_CRICKET_FIREC,
402       GROUP_CRICKET_COST,
403       GROUP_CRICKET_TECH
404     },
405     /* 32 */
406     /* there is no button for this. */
407     { N_("Burnt"),
408       FALSE,                           /* need credit? */
409       GROUP_BURNT,
410       1,                               /* size */
411       GROUP_BURNT_COLOUR,
412       GROUP_BURNT_COST_MUL,
413       GROUP_BURNT_BUL_COST,
414       GROUP_BURNT_FIREC,
415       GROUP_BURNT_COST,
416       GROUP_BURNT_TECH
417     },
418     /* 33 */
419     /* there is no button for this. */
420     { N_("Shanty town"),
421       FALSE,                           /* need credit? */
422       GROUP_SHANTY,
423       2,                               /* size */
424       GROUP_SHANTY_COLOUR,
425       GROUP_SHANTY_COST_MUL,
426       GROUP_SHANTY_BUL_COST,
427       GROUP_SHANTY_FIREC,
428       GROUP_SHANTY_COST,
429       GROUP_SHANTY_TECH
430     },
431     /* 34 */
432     /* there is no button for this. */
433     { N_("Fire"),
434       FALSE,                           /* need credit? */
435       GROUP_FIRE,
436       1,                               /* size */
437       GROUP_FIRE_COLOUR,
438       GROUP_FIRE_COST_MUL,
439       GROUP_FIRE_BUL_COST,
440       GROUP_FIRE_FIREC,
441       GROUP_FIRE_COST,
442       GROUP_FIRE_TECH
443     },
444     /* 35 */
445     /* there is no button for this. */
446     { N_("Used"),
447       FALSE,                           /* need credit? */
448       GROUP_USED,
449       1,                               /* size */
450       GROUP_USED_COLOUR,
451       GROUP_USED_COST_MUL,
452       GROUP_USED_BUL_COST,
453       GROUP_USED_FIREC,
454       GROUP_USED_COST,
455       GROUP_USED_TECH
456     },
457     /* 36 */
458     { N_("Residential ML"),
459       FALSE,                           /* need credit? */
460       GROUP_RESIDENCE_ML,
461       3,                               /* size */
462       GROUP_RESIDENCE_ML_COLOUR,
463       GROUP_RESIDENCE_ML_COST_MUL,
464       GROUP_RESIDENCE_ML_BUL_COST,
465       GROUP_RESIDENCE_ML_FIREC,
466       GROUP_RESIDENCE_ML_COST,
467       GROUP_RESIDENCE_ML_TECH
468     },
469     /* 37 */
470     { N_("Residential HL"),
471       FALSE,                           /* need credit? */
472       GROUP_RESIDENCE_HL,
473       3,                               /* size */
474       GROUP_RESIDENCE_HL_COLOUR,
475       GROUP_RESIDENCE_HL_COST_MUL,
476       GROUP_RESIDENCE_HL_BUL_COST,
477       GROUP_RESIDENCE_HL_FIREC,
478       GROUP_RESIDENCE_HL_COST,
479       GROUP_RESIDENCE_HL_TECH
480     },
481     /* 38 */
482     { N_("Residential"),
483       FALSE,                           /* need credit? */
484       GROUP_RESIDENCE_LH,
485       3,                               /* size */
486       GROUP_RESIDENCE_LH_COLOUR,
487       GROUP_RESIDENCE_LH_COST_MUL,
488       GROUP_RESIDENCE_LH_BUL_COST,
489       GROUP_RESIDENCE_LH_FIREC,
490       GROUP_RESIDENCE_LH_COST,
491       GROUP_RESIDENCE_LH_TECH
492     },
493     /* 39 */
494     { N_("Residential"),
495       FALSE,                           /* need credit? */
496       GROUP_RESIDENCE_MH,
497       3,                               /* size */
498       GROUP_RESIDENCE_MH_COLOUR,
499       GROUP_RESIDENCE_MH_COST_MUL,
500       GROUP_RESIDENCE_MH_BUL_COST,
501       GROUP_RESIDENCE_MH_FIREC,
502       GROUP_RESIDENCE_MH_COST,
503       GROUP_RESIDENCE_MH_TECH
504     },
505     /* 40 */
506     { N_("Residential"),
507       FALSE,                           /* need credit? */
508       GROUP_RESIDENCE_LH,
509       3,                               /* size */
510       GROUP_RESIDENCE_HH_COLOUR,
511       GROUP_RESIDENCE_HH_COST_MUL,
512       GROUP_RESIDENCE_HH_BUL_COST,
513       GROUP_RESIDENCE_HH_FIREC,
514       GROUP_RESIDENCE_HH_COST,
515       GROUP_RESIDENCE_HH_TECH
516     },
517     /* 41 */
518     /* End of Data */
519     { "EOF",
520       FALSE,                           /* need credit? */
521       0,
522       0,                               /* size */
523       0,
524       0,
525       0,
526       0,
527       0,
528       0
529     }
530 };
531 
init_types(void)532 void init_types(void)
533 {
534     char png_file[LC_PATH_MAX], txt_file[LC_PATH_MAX];
535     sprintf (png_file, "%s%c%s", opening_path, PATH_SLASH, "icons.png");
536     sprintf (txt_file, "%s%c%s", opening_path, PATH_SLASH, "iconlist.txt");
537 
538     load_png_graphics (txt_file,png_file);
539 
540 #if defined (commentout)
541     main_types[CST_GREEN].group=GROUP_BARE;
542     main_types[CST_GREEN].graphic=load_graphic(CST_GREEN_G);
543 
544     main_types[CST_POWERL_H_L].group=GROUP_POWER_LINE;
545     main_types[CST_POWERL_H_L].graphic=load_graphic(CST_POWERL_H_L_G);
546 
547     main_types[CST_POWERL_V_L].group=GROUP_POWER_LINE;
548     main_types[CST_POWERL_V_L].graphic=load_graphic(CST_POWERL_V_L_G);
549 
550     main_types[CST_POWERL_LD_L].group=GROUP_POWER_LINE;
551     main_types[CST_POWERL_LD_L].graphic=load_graphic(CST_POWERL_LD_L_G);
552 
553     main_types[CST_POWERL_RD_L].group=GROUP_POWER_LINE;
554     main_types[CST_POWERL_RD_L].graphic=load_graphic(CST_POWERL_RD_L_G);
555 
556     main_types[CST_POWERL_LU_L].group=GROUP_POWER_LINE;
557     main_types[CST_POWERL_LU_L].graphic=load_graphic(CST_POWERL_LU_L_G);
558 
559     main_types[CST_POWERL_RU_L].group=GROUP_POWER_LINE;
560     main_types[CST_POWERL_RU_L].graphic=load_graphic(CST_POWERL_RU_L_G);
561 
562     main_types[CST_POWERL_LDU_L].group=GROUP_POWER_LINE;
563     main_types[CST_POWERL_LDU_L].graphic=load_graphic(CST_POWERL_LDU_L_G);
564 
565     main_types[CST_POWERL_LDR_L].group=GROUP_POWER_LINE;
566     main_types[CST_POWERL_LDR_L].graphic=load_graphic(CST_POWERL_LDR_L_G);
567 
568     main_types[CST_POWERL_LUR_L].group=GROUP_POWER_LINE;
569     main_types[CST_POWERL_LUR_L].graphic=load_graphic(CST_POWERL_LUR_L_G);
570 
571     main_types[CST_POWERL_UDR_L].group=GROUP_POWER_LINE;
572     main_types[CST_POWERL_UDR_L].graphic=load_graphic(CST_POWERL_UDR_L_G);
573 
574     main_types[CST_POWERL_LUDR_L].group=GROUP_POWER_LINE;
575     main_types[CST_POWERL_LUDR_L].graphic
576 	    =load_graphic(CST_POWERL_LUDR_L_G);
577 
578     main_types[CST_POWERL_H_D].group=GROUP_POWER_LINE;
579     main_types[CST_POWERL_H_D].graphic=load_graphic(CST_POWERL_H_D_G);
580 
581     main_types[CST_POWERL_V_D].group=GROUP_POWER_LINE;
582     main_types[CST_POWERL_V_D].graphic=load_graphic(CST_POWERL_V_D_G);
583 
584     main_types[CST_POWERL_LD_D].group=GROUP_POWER_LINE;
585     main_types[CST_POWERL_LD_D].graphic=load_graphic(CST_POWERL_LD_D_G);
586 
587     main_types[CST_POWERL_RD_D].group=GROUP_POWER_LINE;
588     main_types[CST_POWERL_RD_D].graphic=load_graphic(CST_POWERL_RD_D_G);
589 
590     main_types[CST_POWERL_LU_D].group=GROUP_POWER_LINE;
591     main_types[CST_POWERL_LU_D].graphic=load_graphic(CST_POWERL_LU_D_G);
592 
593     main_types[CST_POWERL_RU_D].group=GROUP_POWER_LINE;
594     main_types[CST_POWERL_RU_D].graphic=load_graphic(CST_POWERL_RU_D_G);
595 
596     main_types[CST_POWERL_LDU_D].group=GROUP_POWER_LINE;
597     main_types[CST_POWERL_LDU_D].graphic=load_graphic(CST_POWERL_LDU_D_G);
598 
599     main_types[CST_POWERL_LDR_D].group=GROUP_POWER_LINE;
600     main_types[CST_POWERL_LDR_D].graphic=load_graphic(CST_POWERL_LDR_D_G);
601 
602     main_types[CST_POWERL_LUR_D].group=GROUP_POWER_LINE;
603     main_types[CST_POWERL_LUR_D].graphic=load_graphic(CST_POWERL_LUR_D_G);
604 
605     main_types[CST_POWERL_UDR_D].group=GROUP_POWER_LINE;
606     main_types[CST_POWERL_UDR_D].graphic=load_graphic(CST_POWERL_UDR_D_G);
607 
608     main_types[CST_POWERL_LUDR_D].group=GROUP_POWER_LINE;
609     main_types[CST_POWERL_LUDR_D].graphic
610 	    =load_graphic(CST_POWERL_LUDR_D_G);
611 
612     main_types[CST_POWERS_SOLAR].group=GROUP_SOLAR_POWER;
613     main_types[CST_POWERS_SOLAR].graphic=load_graphic(CST_POWERS_SOLAR_G);
614 
615     main_types[CST_POWERS_COAL_EMPTY].group=GROUP_COAL_POWER;
616     main_types[CST_POWERS_COAL_EMPTY].graphic
617 	    =load_graphic(CST_POWERS_COAL_EMPTY_G);
618 
619     main_types[CST_POWERS_COAL_LOW].group=GROUP_COAL_POWER;
620     main_types[CST_POWERS_COAL_LOW].graphic
621 	    =load_graphic(CST_POWERS_COAL_LOW_G);
622 
623     prog_box("",12);
624 
625     main_types[CST_POWERS_COAL_MED].group=GROUP_COAL_POWER;
626     main_types[CST_POWERS_COAL_MED].graphic
627 	    =load_graphic(CST_POWERS_COAL_MED_G);
628 
629     main_types[CST_POWERS_COAL_FULL].group=GROUP_COAL_POWER;
630     main_types[CST_POWERS_COAL_FULL].graphic
631 	    =load_graphic(CST_POWERS_COAL_FULL_G);
632 
633     main_types[CST_SUBSTATION_R].group=GROUP_SUBSTATION;
634     main_types[CST_SUBSTATION_R].graphic=load_graphic(CST_SUBSTATION_R_G);
635 
636     main_types[CST_SUBSTATION_G].group=GROUP_SUBSTATION;
637     main_types[CST_SUBSTATION_G].graphic=load_graphic(CST_SUBSTATION_G_G);
638 
639     main_types[CST_SUBSTATION_RG].group=GROUP_SUBSTATION;
640     main_types[CST_SUBSTATION_RG].graphic
641 	    =load_graphic(CST_SUBSTATION_RG_G);
642 
643     main_types[CST_RESIDENCE_LL].group=GROUP_RESIDENCE_LL;
644     main_types[CST_RESIDENCE_LL].graphic=load_graphic(CST_RESIDENCE_LL_G);
645 
646     main_types[CST_RESIDENCE_ML].group=GROUP_RESIDENCE_ML;
647     main_types[CST_RESIDENCE_ML].graphic
648 	    =load_graphic(CST_RESIDENCE_ML_G);
649 
650     main_types[CST_RESIDENCE_HL].group=GROUP_RESIDENCE_HL;
651     main_types[CST_RESIDENCE_HL].graphic
652 	    =load_graphic(CST_RESIDENCE_HL_G);
653 
654     main_types[CST_RESIDENCE_LH].group=GROUP_RESIDENCE_LH;
655     main_types[CST_RESIDENCE_LH].graphic=load_graphic(CST_RESIDENCE_LH_G);
656 
657     main_types[CST_RESIDENCE_MH].group=GROUP_RESIDENCE_MH;
658     main_types[CST_RESIDENCE_MH].graphic=load_graphic(CST_RESIDENCE_MH_G);
659 
660     main_types[CST_RESIDENCE_HH].group=GROUP_RESIDENCE_HH;
661     main_types[CST_RESIDENCE_HH].graphic=load_graphic(CST_RESIDENCE_HH_G);
662 
663 
664     main_types[CST_FARM_O0].group=GROUP_ORGANIC_FARM;
665     main_types[CST_FARM_O0].graphic=load_graphic(CST_FARM_O0_G);
666 
667     main_types[CST_FARM_O1].group=GROUP_ORGANIC_FARM;
668     main_types[CST_FARM_O1].graphic=load_graphic(CST_FARM_O1_G);
669 
670     main_types[CST_FARM_O2].group=GROUP_ORGANIC_FARM;
671     main_types[CST_FARM_O2].graphic=load_graphic(CST_FARM_O2_G);
672 
673     main_types[CST_FARM_O3].group=GROUP_ORGANIC_FARM;
674     main_types[CST_FARM_O3].graphic=load_graphic(CST_FARM_O3_G);
675 
676     main_types[CST_FARM_O4].group=GROUP_ORGANIC_FARM;
677     main_types[CST_FARM_O4].graphic=load_graphic(CST_FARM_O4_G);
678 
679     main_types[CST_FARM_O5].group=GROUP_ORGANIC_FARM;
680     main_types[CST_FARM_O5].graphic=load_graphic(CST_FARM_O5_G);
681 
682     main_types[CST_FARM_O6].group=GROUP_ORGANIC_FARM;
683     main_types[CST_FARM_O6].graphic=load_graphic(CST_FARM_O6_G);
684 
685     main_types[CST_FARM_O7].group=GROUP_ORGANIC_FARM;
686     main_types[CST_FARM_O7].graphic=load_graphic(CST_FARM_O7_G);
687 
688     main_types[CST_FARM_O8].group=GROUP_ORGANIC_FARM;
689     main_types[CST_FARM_O8].graphic=load_graphic(CST_FARM_O8_G);
690 
691     main_types[CST_FARM_O9].group=GROUP_ORGANIC_FARM;
692     main_types[CST_FARM_O9].graphic=load_graphic(CST_FARM_O9_G);
693 
694     main_types[CST_FARM_O10].group=GROUP_ORGANIC_FARM;
695     main_types[CST_FARM_O10].graphic=load_graphic(CST_FARM_O10_G);
696 
697     main_types[CST_FARM_O11].group=GROUP_ORGANIC_FARM;
698     main_types[CST_FARM_O11].graphic=load_graphic(CST_FARM_O11_G);
699 
700     main_types[CST_FARM_O12].group=GROUP_ORGANIC_FARM;
701     main_types[CST_FARM_O12].graphic=load_graphic(CST_FARM_O12_G);
702 
703     main_types[CST_FARM_O13].group=GROUP_ORGANIC_FARM;
704     main_types[CST_FARM_O13].graphic=load_graphic(CST_FARM_O13_G);
705 
706     main_types[CST_FARM_O14].group=GROUP_ORGANIC_FARM;
707     main_types[CST_FARM_O14].graphic=load_graphic(CST_FARM_O14_G);
708 
709     main_types[CST_FARM_O15].group=GROUP_ORGANIC_FARM;
710     main_types[CST_FARM_O15].graphic=load_graphic(CST_FARM_O15_G);
711 
712     main_types[CST_FARM_O16].group=GROUP_ORGANIC_FARM;
713     main_types[CST_FARM_O16].graphic=load_graphic(CST_FARM_O16_G);
714 
715     main_types[CST_MARKET_EMPTY].group=GROUP_MARKET;
716     main_types[CST_MARKET_EMPTY].graphic
717 	    =load_graphic(CST_MARKET_EMPTY_G);
718 
719     main_types[CST_MARKET_LOW].group=GROUP_MARKET;
720     main_types[CST_MARKET_LOW].graphic
721 	    =load_graphic(CST_MARKET_LOW_G);
722 
723     main_types[CST_MARKET_MED].group=GROUP_MARKET;
724     main_types[CST_MARKET_MED].graphic
725 	    =load_graphic(CST_MARKET_MED_G);
726 
727     main_types[CST_MARKET_FULL].group=GROUP_MARKET;
728     main_types[CST_MARKET_FULL].graphic
729 	    =load_graphic(CST_MARKET_FULL_G);
730 
731     main_types[CST_TRACK_LR].group=GROUP_TRACK;
732     main_types[CST_TRACK_LR].graphic=load_graphic(CST_TRACK_LR_G);
733 
734     main_types[CST_TRACK_LU].group=GROUP_TRACK;
735     main_types[CST_TRACK_LU].graphic=load_graphic(CST_TRACK_LU_G);
736 
737     main_types[CST_TRACK_LD].group=GROUP_TRACK;
738     main_types[CST_TRACK_LD].graphic=load_graphic(CST_TRACK_LD_G);
739 
740     main_types[CST_TRACK_UD].group=GROUP_TRACK;
741     main_types[CST_TRACK_UD].graphic=load_graphic(CST_TRACK_UD_G);
742 
743     main_types[CST_TRACK_UR].group=GROUP_TRACK;
744     main_types[CST_TRACK_UR].graphic=load_graphic(CST_TRACK_UR_G);
745 
746     main_types[CST_TRACK_DR].group=GROUP_TRACK;
747     main_types[CST_TRACK_DR].graphic=load_graphic(CST_TRACK_DR_G);
748 
749     main_types[CST_TRACK_LUR].group=GROUP_TRACK;
750     main_types[CST_TRACK_LUR].graphic=load_graphic(CST_TRACK_LUR_G);
751 
752     main_types[CST_TRACK_LDR].group=GROUP_TRACK;
753     main_types[CST_TRACK_LDR].graphic=load_graphic(CST_TRACK_LDR_G);
754 
755     main_types[CST_TRACK_LUD].group=GROUP_TRACK;
756     main_types[CST_TRACK_LUD].graphic=load_graphic(CST_TRACK_LUD_G);
757 
758     main_types[CST_TRACK_UDR].group=GROUP_TRACK;
759     main_types[CST_TRACK_UDR].graphic=load_graphic(CST_TRACK_UDR_G);
760 
761     main_types[CST_TRACK_LUDR].group=GROUP_TRACK;
762     main_types[CST_TRACK_LUDR].graphic=load_graphic(CST_TRACK_LUDR_G);
763 
764     main_types[CST_COALMINE_EMPTY].group=GROUP_COALMINE;
765     main_types[CST_COALMINE_EMPTY].graphic
766 	    =load_graphic(CST_COALMINE_EMPTY_G);
767 
768     prog_box("",25);
769 
770     main_types[CST_COALMINE_LOW].group=GROUP_COALMINE;
771     main_types[CST_COALMINE_LOW].graphic=load_graphic(CST_COALMINE_LOW_G);
772 
773     main_types[CST_COALMINE_MED].group=GROUP_COALMINE;
774     main_types[CST_COALMINE_MED].graphic=load_graphic(CST_COALMINE_MED_G);
775 
776     main_types[CST_COALMINE_FULL].group=GROUP_COALMINE;
777     main_types[CST_COALMINE_FULL].graphic
778 	    =load_graphic(CST_COALMINE_FULL_G);
779 
780     main_types[CST_RAIL_LR].group=GROUP_RAIL;
781     main_types[CST_RAIL_LR].graphic=load_graphic(CST_RAIL_LR_G);
782 
783     main_types[CST_RAIL_LU].group=GROUP_RAIL;
784     main_types[CST_RAIL_LU].graphic=load_graphic(CST_RAIL_LU_G);
785 
786     main_types[CST_RAIL_LD].group=GROUP_RAIL;
787     main_types[CST_RAIL_LD].graphic=load_graphic(CST_RAIL_LD_G);
788 
789     main_types[CST_RAIL_UD].group=GROUP_RAIL;
790     main_types[CST_RAIL_UD].graphic=load_graphic(CST_RAIL_UD_G);
791 
792     main_types[CST_RAIL_UR].group=GROUP_RAIL;
793     main_types[CST_RAIL_UR].graphic=load_graphic(CST_RAIL_UR_G);
794 
795     main_types[CST_RAIL_DR].group=GROUP_RAIL;
796     main_types[CST_RAIL_DR].graphic=load_graphic(CST_RAIL_DR_G);
797 
798     main_types[CST_RAIL_LUR].group=GROUP_RAIL;
799     main_types[CST_RAIL_LUR].graphic=load_graphic(CST_RAIL_LUR_G);
800 
801     main_types[CST_RAIL_LDR].group=GROUP_RAIL;
802     main_types[CST_RAIL_LDR].graphic=load_graphic(CST_RAIL_LDR_G);
803 
804     main_types[CST_RAIL_LUD].group=GROUP_RAIL;
805     main_types[CST_RAIL_LUD].graphic=load_graphic(CST_RAIL_LUD_G);
806 
807     prog_box("",30);
808 
809     main_types[CST_RAIL_UDR].group=GROUP_RAIL;
810     main_types[CST_RAIL_UDR].graphic=load_graphic(CST_RAIL_UDR_G);
811 
812     main_types[CST_RAIL_LUDR].group=GROUP_RAIL;
813     main_types[CST_RAIL_LUDR].graphic=load_graphic(CST_RAIL_LUDR_G);
814 
815     main_types[CST_ROAD_LR].group=GROUP_ROAD;
816     main_types[CST_ROAD_LR].graphic=load_graphic(CST_ROAD_LR_G);
817 
818     main_types[CST_ROAD_LU].group=GROUP_ROAD;
819     main_types[CST_ROAD_LU].graphic=load_graphic(CST_ROAD_LU_G);
820 
821     main_types[CST_ROAD_LD].group=GROUP_ROAD;
822     main_types[CST_ROAD_LD].graphic=load_graphic(CST_ROAD_LD_G);
823 
824     main_types[CST_ROAD_UD].group=GROUP_ROAD;
825     main_types[CST_ROAD_UD].graphic=load_graphic(CST_ROAD_UD_G);
826 
827     main_types[CST_ROAD_UR].group=GROUP_ROAD;
828     main_types[CST_ROAD_UR].graphic=load_graphic(CST_ROAD_UR_G);
829 
830     main_types[CST_ROAD_DR].group=GROUP_ROAD;
831     main_types[CST_ROAD_DR].graphic=load_graphic(CST_ROAD_DR_G);
832 
833     main_types[CST_ROAD_LUR].group=GROUP_ROAD;
834     main_types[CST_ROAD_LUR].graphic=load_graphic(CST_ROAD_LUR_G);
835 
836     main_types[CST_ROAD_LDR].group=GROUP_ROAD;
837     main_types[CST_ROAD_LDR].graphic=load_graphic(CST_ROAD_LDR_G);
838 
839     main_types[CST_ROAD_LUD].group=GROUP_ROAD;
840     main_types[CST_ROAD_LUD].graphic=load_graphic(CST_ROAD_LUD_G);
841 
842     main_types[CST_ROAD_UDR].group=GROUP_ROAD;
843     main_types[CST_ROAD_UDR].graphic=load_graphic(CST_ROAD_UDR_G);
844 
845     main_types[CST_ROAD_LUDR].group=GROUP_ROAD;
846     main_types[CST_ROAD_LUDR].graphic=load_graphic(CST_ROAD_LUDR_G);
847 
848     main_types[CST_INDUSTRY_L_C].group=GROUP_INDUSTRY_L;
849     main_types[CST_INDUSTRY_L_C].graphic
850 	    =load_graphic(CST_INDUSTRY_L_C_G);
851 
852     main_types[CST_INDUSTRY_L_Q1].group=GROUP_INDUSTRY_L;
853     main_types[CST_INDUSTRY_L_Q1].graphic
854 	    =load_graphic(CST_INDUSTRY_L_Q1_G);
855 
856     main_types[CST_INDUSTRY_L_Q2].group=GROUP_INDUSTRY_L;
857     main_types[CST_INDUSTRY_L_Q2].graphic
858 	    =load_graphic(CST_INDUSTRY_L_Q2_G);
859 
860     main_types[CST_INDUSTRY_L_Q3].group=GROUP_INDUSTRY_L;
861     main_types[CST_INDUSTRY_L_Q3].graphic
862 	    =load_graphic(CST_INDUSTRY_L_Q3_G);
863 
864     main_types[CST_INDUSTRY_L_Q4].group=GROUP_INDUSTRY_L;
865     main_types[CST_INDUSTRY_L_Q4].graphic
866 	    =load_graphic(CST_INDUSTRY_L_Q4_G);
867 
868     main_types[CST_INDUSTRY_L_L1].group=GROUP_INDUSTRY_L;
869     main_types[CST_INDUSTRY_L_L1].graphic
870 	    =load_graphic(CST_INDUSTRY_L_L1_G);
871 
872     main_types[CST_INDUSTRY_L_L2].group=GROUP_INDUSTRY_L;
873     main_types[CST_INDUSTRY_L_L2].graphic
874 	    =load_graphic(CST_INDUSTRY_L_L2_G);
875 
876     main_types[CST_INDUSTRY_L_L3].group=GROUP_INDUSTRY_L;
877     main_types[CST_INDUSTRY_L_L3].graphic
878 	    =load_graphic(CST_INDUSTRY_L_L3_G);
879 
880     main_types[CST_INDUSTRY_L_L4].group=GROUP_INDUSTRY_L;
881     main_types[CST_INDUSTRY_L_L4].graphic
882 	    =load_graphic(CST_INDUSTRY_L_L4_G);
883 
884 
885     main_types[CST_INDUSTRY_L_M1].group=GROUP_INDUSTRY_L;
886     main_types[CST_INDUSTRY_L_M1].graphic
887 	    =load_graphic(CST_INDUSTRY_L_M1_G);
888 
889     main_types[CST_INDUSTRY_L_M2].group=GROUP_INDUSTRY_L;
890     main_types[CST_INDUSTRY_L_M2].graphic
891 	    =load_graphic(CST_INDUSTRY_L_M2_G);
892 
893     main_types[CST_INDUSTRY_L_M3].group=GROUP_INDUSTRY_L;
894     main_types[CST_INDUSTRY_L_M3].graphic
895 	    =load_graphic(CST_INDUSTRY_L_M3_G);
896 
897     main_types[CST_INDUSTRY_L_M4].group=GROUP_INDUSTRY_L;
898     main_types[CST_INDUSTRY_L_M4].graphic
899 	    =load_graphic(CST_INDUSTRY_L_M4_G);
900 
901 
902     main_types[CST_INDUSTRY_L_H1].group=GROUP_INDUSTRY_L;
903     main_types[CST_INDUSTRY_L_H1].graphic
904 	    =load_graphic(CST_INDUSTRY_L_H1_G);
905 
906     main_types[CST_INDUSTRY_L_H2].group=GROUP_INDUSTRY_L;
907     main_types[CST_INDUSTRY_L_H2].graphic
908 	    =load_graphic(CST_INDUSTRY_L_H2_G);
909 
910     main_types[CST_INDUSTRY_L_H3].group=GROUP_INDUSTRY_L;
911     main_types[CST_INDUSTRY_L_H3].graphic
912 	    =load_graphic(CST_INDUSTRY_L_H3_G);
913 
914     main_types[CST_INDUSTRY_L_H4].group=GROUP_INDUSTRY_L;
915     main_types[CST_INDUSTRY_L_H4].graphic
916 	    =load_graphic(CST_INDUSTRY_L_H4_G);
917 
918     main_types[CST_COMMUNE_1].group=GROUP_COMMUNE;
919     main_types[CST_COMMUNE_1].graphic=load_graphic(CST_COMMUNE_1_G);
920 
921     main_types[CST_COMMUNE_2].group=GROUP_COMMUNE;
922     main_types[CST_COMMUNE_2].graphic=load_graphic(CST_COMMUNE_2_G);
923 
924     main_types[CST_COMMUNE_3].group=GROUP_COMMUNE;
925     main_types[CST_COMMUNE_3].graphic=load_graphic(CST_COMMUNE_3_G);
926 
927     main_types[CST_COMMUNE_4].group=GROUP_COMMUNE;
928     main_types[CST_COMMUNE_4].graphic=load_graphic(CST_COMMUNE_4_G);
929 
930     main_types[CST_COMMUNE_5].group=GROUP_COMMUNE;
931     main_types[CST_COMMUNE_5].graphic=load_graphic(CST_COMMUNE_5_G);
932 
933     main_types[CST_COMMUNE_6].group=GROUP_COMMUNE;
934     main_types[CST_COMMUNE_6].graphic=load_graphic(CST_COMMUNE_6_G);
935 
936     main_types[CST_COMMUNE_7].group=GROUP_COMMUNE;
937     main_types[CST_COMMUNE_7].graphic=load_graphic(CST_COMMUNE_7_G);
938 
939     main_types[CST_COMMUNE_8].group=GROUP_COMMUNE;
940     main_types[CST_COMMUNE_8].graphic=load_graphic(CST_COMMUNE_8_G);
941 
942     main_types[CST_COMMUNE_9].group=GROUP_COMMUNE;
943     main_types[CST_COMMUNE_9].graphic=load_graphic(CST_COMMUNE_9_G);
944 
945     main_types[CST_COMMUNE_10].group=GROUP_COMMUNE;
946     main_types[CST_COMMUNE_10].graphic=load_graphic(CST_COMMUNE_10_G);
947 
948     main_types[CST_COMMUNE_11].group=GROUP_COMMUNE;
949     main_types[CST_COMMUNE_11].graphic=load_graphic(CST_COMMUNE_11_G);
950 
951     main_types[CST_COMMUNE_12].group=GROUP_COMMUNE;
952     main_types[CST_COMMUNE_12].graphic=load_graphic(CST_COMMUNE_12_G);
953 
954     main_types[CST_COMMUNE_13].group=GROUP_COMMUNE;
955     main_types[CST_COMMUNE_13].graphic=load_graphic(CST_COMMUNE_13_G);
956 
957     main_types[CST_COMMUNE_14].group=GROUP_COMMUNE;
958     main_types[CST_COMMUNE_14].graphic=load_graphic(CST_COMMUNE_14_G);
959 
960     main_types[CST_UNIVERSITY].group=GROUP_UNIVERSITY;
961     main_types[CST_UNIVERSITY].graphic=load_graphic(CST_UNIVERSITY_G);
962 
963     main_types[CST_OREMINE_1].group=GROUP_OREMINE;
964     main_types[CST_OREMINE_1].graphic=load_graphic(CST_OREMINE_1_G);
965 
966     main_types[CST_OREMINE_2].group=GROUP_OREMINE;
967     main_types[CST_OREMINE_2].graphic=load_graphic(CST_OREMINE_2_G);
968 
969     main_types[CST_OREMINE_3].group=GROUP_OREMINE;
970     main_types[CST_OREMINE_3].graphic=load_graphic(CST_OREMINE_3_G);
971 
972     main_types[CST_OREMINE_4].group=GROUP_OREMINE;
973     main_types[CST_OREMINE_4].graphic=load_graphic(CST_OREMINE_4_G);
974 
975     main_types[CST_OREMINE_5].group=GROUP_OREMINE;
976     main_types[CST_OREMINE_5].graphic=load_graphic(CST_OREMINE_5_G);
977 
978     main_types[CST_OREMINE_6].group=GROUP_OREMINE;
979     main_types[CST_OREMINE_6].graphic=load_graphic(CST_OREMINE_6_G);
980 
981     main_types[CST_OREMINE_7].group=GROUP_OREMINE;
982     main_types[CST_OREMINE_7].graphic=load_graphic(CST_OREMINE_7_G);
983 
984     main_types[CST_OREMINE_8].group=GROUP_OREMINE;
985     main_types[CST_OREMINE_8].graphic=load_graphic(CST_OREMINE_8_G);
986 
987     main_types[CST_TIP_0].group=GROUP_TIP;
988     main_types[CST_TIP_0].graphic=load_graphic(CST_TIP_0_G);
989 
990     main_types[CST_TIP_1].group=GROUP_TIP;
991     main_types[CST_TIP_1].graphic=load_graphic(CST_TIP_1_G);
992 
993     main_types[CST_TIP_2].group=GROUP_TIP;
994     main_types[CST_TIP_2].graphic=load_graphic(CST_TIP_2_G);
995 
996     main_types[CST_TIP_3].group=GROUP_TIP;
997     main_types[CST_TIP_3].graphic=load_graphic(CST_TIP_3_G);
998 
999     main_types[CST_TIP_4].group=GROUP_TIP;
1000     main_types[CST_TIP_4].graphic=load_graphic(CST_TIP_4_G);
1001 
1002     main_types[CST_TIP_5].group=GROUP_TIP;
1003     main_types[CST_TIP_5].graphic=load_graphic(CST_TIP_5_G);
1004 
1005     main_types[CST_TIP_6].group=GROUP_TIP;
1006     main_types[CST_TIP_6].graphic=load_graphic(CST_TIP_6_G);
1007 
1008     main_types[CST_TIP_7].group=GROUP_TIP;
1009     main_types[CST_TIP_7].graphic=load_graphic(CST_TIP_7_G);
1010 
1011     main_types[CST_TIP_8].group=GROUP_TIP;
1012     main_types[CST_TIP_8].graphic=load_graphic(CST_TIP_8_G);
1013 
1014     main_types[CST_EX_PORT].group=GROUP_PORT;
1015     main_types[CST_EX_PORT].graphic=load_graphic(CST_EX_PORT_G);
1016 
1017     main_types[CST_INDUSTRY_H_C].group=GROUP_INDUSTRY_H;
1018     main_types[CST_INDUSTRY_H_C].graphic
1019 	    =load_graphic(CST_INDUSTRY_H_C_G);
1020 
1021     main_types[CST_INDUSTRY_H_L1].group=GROUP_INDUSTRY_H;
1022     main_types[CST_INDUSTRY_H_L1].graphic
1023 	    =load_graphic(CST_INDUSTRY_H_L1_G);
1024 
1025     main_types[CST_INDUSTRY_H_L2].group=GROUP_INDUSTRY_H;
1026     main_types[CST_INDUSTRY_H_L2].graphic
1027 	    =load_graphic(CST_INDUSTRY_H_L2_G);
1028 
1029     main_types[CST_INDUSTRY_H_L3].group=GROUP_INDUSTRY_H;
1030     main_types[CST_INDUSTRY_H_L3].graphic
1031 	    =load_graphic(CST_INDUSTRY_H_L3_G);
1032 
1033     main_types[CST_INDUSTRY_H_L4].group=GROUP_INDUSTRY_H;
1034     main_types[CST_INDUSTRY_H_L4].graphic
1035 	    =load_graphic(CST_INDUSTRY_H_L4_G);
1036 
1037     main_types[CST_INDUSTRY_H_L5].group=GROUP_INDUSTRY_H;
1038     main_types[CST_INDUSTRY_H_L5].graphic
1039 	    =load_graphic(CST_INDUSTRY_H_L5_G);
1040 
1041     main_types[CST_INDUSTRY_H_L6].group=GROUP_INDUSTRY_H;
1042     main_types[CST_INDUSTRY_H_L6].graphic
1043 	    =load_graphic(CST_INDUSTRY_H_L6_G);
1044 
1045     main_types[CST_INDUSTRY_H_L7].group=GROUP_INDUSTRY_H;
1046     main_types[CST_INDUSTRY_H_L7].graphic
1047 	    =load_graphic(CST_INDUSTRY_H_L7_G);
1048 
1049     main_types[CST_INDUSTRY_H_L8].group=GROUP_INDUSTRY_H;
1050     main_types[CST_INDUSTRY_H_L8].graphic
1051 	    =load_graphic(CST_INDUSTRY_H_L8_G);
1052 
1053 
1054     main_types[CST_INDUSTRY_H_M1].group=GROUP_INDUSTRY_H;
1055     main_types[CST_INDUSTRY_H_M1].graphic
1056 	    =load_graphic(CST_INDUSTRY_H_M1_G);
1057 
1058     main_types[CST_INDUSTRY_H_M2].group=GROUP_INDUSTRY_H;
1059     main_types[CST_INDUSTRY_H_M2].graphic
1060 	    =load_graphic(CST_INDUSTRY_H_M2_G);
1061 
1062     main_types[CST_INDUSTRY_H_M3].group=GROUP_INDUSTRY_H;
1063     main_types[CST_INDUSTRY_H_M3].graphic
1064 	    =load_graphic(CST_INDUSTRY_H_M3_G);
1065 
1066     main_types[CST_INDUSTRY_H_M4].group=GROUP_INDUSTRY_H;
1067     main_types[CST_INDUSTRY_H_M4].graphic
1068 	    =load_graphic(CST_INDUSTRY_H_M4_G);
1069 
1070     main_types[CST_INDUSTRY_H_M5].group=GROUP_INDUSTRY_H;
1071     main_types[CST_INDUSTRY_H_M5].graphic
1072 	    =load_graphic(CST_INDUSTRY_H_M5_G);
1073 
1074     main_types[CST_INDUSTRY_H_M6].group=GROUP_INDUSTRY_H;
1075     main_types[CST_INDUSTRY_H_M6].graphic
1076 	    =load_graphic(CST_INDUSTRY_H_M6_G);
1077 
1078     main_types[CST_INDUSTRY_H_M7].group=GROUP_INDUSTRY_H;
1079     main_types[CST_INDUSTRY_H_M7].graphic
1080 	    =load_graphic(CST_INDUSTRY_H_M7_G);
1081 
1082     main_types[CST_INDUSTRY_H_M8].group=GROUP_INDUSTRY_H;
1083     main_types[CST_INDUSTRY_H_M8].graphic
1084 	    =load_graphic(CST_INDUSTRY_H_M8_G);
1085 
1086     main_types[CST_INDUSTRY_H_H1].group=GROUP_INDUSTRY_H;
1087     main_types[CST_INDUSTRY_H_H1].graphic
1088 	    =load_graphic(CST_INDUSTRY_H_H1_G);
1089 
1090     main_types[CST_INDUSTRY_H_H2].group=GROUP_INDUSTRY_H;
1091     main_types[CST_INDUSTRY_H_H2].graphic
1092 	    =load_graphic(CST_INDUSTRY_H_H2_G);
1093 
1094     main_types[CST_INDUSTRY_H_H3].group=GROUP_INDUSTRY_H;
1095     main_types[CST_INDUSTRY_H_H3].graphic
1096 	    =load_graphic(CST_INDUSTRY_H_H3_G);
1097 
1098     main_types[CST_INDUSTRY_H_H4].group=GROUP_INDUSTRY_H;
1099     main_types[CST_INDUSTRY_H_H4].graphic
1100 	    =load_graphic(CST_INDUSTRY_H_H4_G);
1101 
1102     main_types[CST_INDUSTRY_H_H5].group=GROUP_INDUSTRY_H;
1103     main_types[CST_INDUSTRY_H_H5].graphic
1104 	    =load_graphic(CST_INDUSTRY_H_H5_G);
1105 
1106     main_types[CST_INDUSTRY_H_H6].group=GROUP_INDUSTRY_H;
1107     main_types[CST_INDUSTRY_H_H6].graphic
1108 	    =load_graphic(CST_INDUSTRY_H_H6_G);
1109 
1110     main_types[CST_INDUSTRY_H_H7].group=GROUP_INDUSTRY_H;
1111     main_types[CST_INDUSTRY_H_H7].graphic
1112 	    =load_graphic(CST_INDUSTRY_H_H7_G);
1113 
1114     main_types[CST_INDUSTRY_H_H8].group=GROUP_INDUSTRY_H;
1115     main_types[CST_INDUSTRY_H_H8].graphic
1116 	    =load_graphic(CST_INDUSTRY_H_H8_G);
1117 
1118     main_types[CST_PARKLAND_PLANE].group=GROUP_PARKLAND;
1119     main_types[CST_PARKLAND_PLANE].graphic
1120 	    =load_graphic(CST_PARKLAND_PLANE_G);
1121 
1122     prog_box("",50);
1123 
1124     main_types[CST_PARKLAND_LAKE].group=GROUP_PARKLAND;
1125     main_types[CST_PARKLAND_LAKE].graphic
1126 	    =load_graphic(CST_PARKLAND_LAKE_G);
1127 
1128     main_types[CST_RECYCLE].group=GROUP_RECYCLE;
1129     main_types[CST_RECYCLE].graphic=load_graphic(CST_RECYCLE_G);
1130 
1131     main_types[CST_WATER].group=GROUP_WATER;
1132     main_types[CST_WATER].graphic=load_graphic(CST_WATER_G);
1133 
1134     main_types[CST_WATER_D].group=GROUP_WATER;
1135     main_types[CST_WATER_D].graphic=load_graphic(CST_WATER_D_G);
1136 
1137     main_types[CST_WATER_R].group=GROUP_WATER;
1138     main_types[CST_WATER_R].graphic=load_graphic(CST_WATER_R_G);
1139 
1140     main_types[CST_WATER_U].group=GROUP_WATER;
1141     main_types[CST_WATER_U].graphic=load_graphic(CST_WATER_U_G);
1142 
1143     main_types[CST_WATER_L].group=GROUP_WATER;
1144     main_types[CST_WATER_L].graphic=load_graphic(CST_WATER_L_G);
1145 
1146     main_types[CST_WATER_LR].group=GROUP_WATER;
1147     main_types[CST_WATER_LR].graphic=load_graphic(CST_WATER_LR_G);
1148 
1149     main_types[CST_WATER_UD].group=GROUP_WATER;
1150     main_types[CST_WATER_UD].graphic=load_graphic(CST_WATER_UD_G);
1151 
1152     main_types[CST_WATER_LD].group=GROUP_WATER;
1153     main_types[CST_WATER_LD].graphic=load_graphic(CST_WATER_LD_G);
1154 
1155     main_types[CST_WATER_RD].group=GROUP_WATER;
1156     main_types[CST_WATER_RD].graphic=load_graphic(CST_WATER_RD_G);
1157 
1158     main_types[CST_WATER_LU].group=GROUP_WATER;
1159     main_types[CST_WATER_LU].graphic=load_graphic(CST_WATER_LU_G);
1160 
1161     main_types[CST_WATER_UR].group=GROUP_WATER;
1162     main_types[CST_WATER_UR].graphic=load_graphic(CST_WATER_UR_G);
1163 
1164     main_types[CST_WATER_LUD].group=GROUP_WATER;
1165     main_types[CST_WATER_LUD].graphic=load_graphic(CST_WATER_LUD_G);
1166 
1167     main_types[CST_WATER_LRD].group=GROUP_WATER;
1168     main_types[CST_WATER_LRD].graphic=load_graphic(CST_WATER_LRD_G);
1169 
1170     main_types[CST_WATER_LUR].group=GROUP_WATER;
1171     main_types[CST_WATER_LUR].graphic=load_graphic(CST_WATER_LUR_G);
1172 
1173     main_types[CST_WATER_URD].group=GROUP_WATER;
1174     main_types[CST_WATER_URD].graphic=load_graphic(CST_WATER_URD_G);
1175 
1176     main_types[CST_WATER_LURD].group=GROUP_WATER;
1177     main_types[CST_WATER_LURD].graphic=load_graphic(CST_WATER_LURD_G);
1178 
1179     main_types[CST_HEALTH].group=GROUP_HEALTH;
1180     main_types[CST_HEALTH].graphic=load_graphic(CST_HEALTH_G);
1181 
1182     main_types[CST_ROCKET_1].group=GROUP_ROCKET;
1183     main_types[CST_ROCKET_1].graphic=load_graphic(CST_ROCKET_1_G);
1184 
1185     main_types[CST_ROCKET_2].group=GROUP_ROCKET;
1186     main_types[CST_ROCKET_2].graphic=load_graphic(CST_ROCKET_2_G);
1187 
1188     main_types[CST_ROCKET_3].group=GROUP_ROCKET;
1189     main_types[CST_ROCKET_3].graphic=load_graphic(CST_ROCKET_3_G);
1190 
1191     main_types[CST_ROCKET_4].group=GROUP_ROCKET;
1192     main_types[CST_ROCKET_4].graphic=load_graphic(CST_ROCKET_4_G);
1193 
1194     prog_box("",60);
1195 
1196     main_types[CST_ROCKET_5].group=GROUP_ROCKET;
1197     main_types[CST_ROCKET_5].graphic=load_graphic(CST_ROCKET_5_G);
1198 
1199     main_types[CST_ROCKET_6].group=GROUP_ROCKET;
1200     main_types[CST_ROCKET_6].graphic=load_graphic(CST_ROCKET_6_G);
1201 
1202     main_types[CST_ROCKET_7].group=GROUP_ROCKET;
1203     main_types[CST_ROCKET_7].graphic=load_graphic(CST_ROCKET_7_G);
1204 
1205     main_types[CST_ROCKET_FLOWN].group=GROUP_ROCKET;
1206     main_types[CST_ROCKET_FLOWN].graphic
1207 	    =load_graphic(CST_ROCKET_FLOWN_G);
1208 
1209 
1210     main_types[CST_BURNT].group=GROUP_BURNT;
1211     main_types[CST_BURNT].graphic=load_graphic(CST_BURNT_G);
1212 
1213     main_types[CST_WINDMILL_1_G].group=GROUP_WINDMILL;
1214     main_types[CST_WINDMILL_1_G].graphic
1215 	    =load_graphic(CST_WINDMILL_1_G_G);
1216 
1217     main_types[CST_WINDMILL_2_G].group=GROUP_WINDMILL;
1218     main_types[CST_WINDMILL_2_G].graphic
1219 	    =load_graphic(CST_WINDMILL_2_G_G);
1220 
1221     main_types[CST_WINDMILL_3_G].group=GROUP_WINDMILL;
1222     main_types[CST_WINDMILL_3_G].graphic
1223 	    =load_graphic(CST_WINDMILL_3_G_G);
1224 
1225     main_types[CST_WINDMILL_1_RG].group=GROUP_WINDMILL;
1226     main_types[CST_WINDMILL_1_RG].graphic
1227 	    =load_graphic(CST_WINDMILL_1_RG_G);
1228 
1229     main_types[CST_WINDMILL_2_RG].group=GROUP_WINDMILL;
1230     main_types[CST_WINDMILL_2_RG].graphic
1231 	    =load_graphic(CST_WINDMILL_2_RG_G);
1232 
1233     main_types[CST_WINDMILL_3_RG].group=GROUP_WINDMILL;
1234     main_types[CST_WINDMILL_3_RG].graphic
1235 	    =load_graphic(CST_WINDMILL_3_RG_G);
1236 
1237     main_types[CST_WINDMILL_1_R].group=GROUP_WINDMILL;
1238     main_types[CST_WINDMILL_1_R].graphic
1239 	    =load_graphic(CST_WINDMILL_1_R_G);
1240 
1241     main_types[CST_WINDMILL_2_R].group=GROUP_WINDMILL;
1242     main_types[CST_WINDMILL_2_R].graphic
1243 	    =load_graphic(CST_WINDMILL_2_R_G);
1244 
1245     main_types[CST_WINDMILL_3_R].group=GROUP_WINDMILL;
1246     main_types[CST_WINDMILL_3_R].graphic
1247 	    =load_graphic(CST_WINDMILL_3_R_G);
1248 
1249     main_types[CST_WINDMILL_1_W].group=GROUP_WINDMILL;
1250     main_types[CST_WINDMILL_1_W].graphic
1251 	    =load_graphic(CST_WINDMILL_1_W_G);
1252 
1253     main_types[CST_WINDMILL_2_W].group=GROUP_WINDMILL;
1254     main_types[CST_WINDMILL_2_W].graphic
1255 	    =load_graphic(CST_WINDMILL_2_W_G);
1256 
1257     main_types[CST_WINDMILL_3_W].group=GROUP_WINDMILL;
1258     main_types[CST_WINDMILL_3_W].graphic
1259 	    =load_graphic(CST_WINDMILL_3_W_G);
1260 
1261     main_types[CST_MONUMENT_0].group=GROUP_MONUMENT;
1262     main_types[CST_MONUMENT_0].graphic=load_graphic(CST_MONUMENT_0_G);
1263 
1264     main_types[CST_MONUMENT_1].group=GROUP_MONUMENT;
1265     main_types[CST_MONUMENT_1].graphic=load_graphic(CST_MONUMENT_1_G);
1266 
1267     main_types[CST_MONUMENT_2].group=GROUP_MONUMENT;
1268     main_types[CST_MONUMENT_2].graphic=load_graphic(CST_MONUMENT_2_G);
1269 
1270     main_types[CST_MONUMENT_3].group=GROUP_MONUMENT;
1271     main_types[CST_MONUMENT_3].graphic=load_graphic(CST_MONUMENT_3_G);
1272 
1273     main_types[CST_MONUMENT_4].group=GROUP_MONUMENT;
1274     main_types[CST_MONUMENT_4].graphic=load_graphic(CST_MONUMENT_4_G);
1275 
1276     main_types[CST_MONUMENT_5].group=GROUP_MONUMENT;
1277     main_types[CST_MONUMENT_5].graphic=load_graphic(CST_MONUMENT_5_G);
1278 
1279     main_types[CST_SCHOOL].group=GROUP_SCHOOL;
1280     main_types[CST_SCHOOL].graphic=load_graphic(CST_SCHOOL_G);
1281 
1282     main_types[CST_BLACKSMITH_0].group=GROUP_BLACKSMITH;
1283     main_types[CST_BLACKSMITH_0].graphic
1284 	    =load_graphic(CST_BLACKSMITH_0_G);
1285 
1286     main_types[CST_BLACKSMITH_1].group=GROUP_BLACKSMITH;
1287     main_types[CST_BLACKSMITH_1].graphic
1288 	    =load_graphic(CST_BLACKSMITH_1_G);
1289 
1290     main_types[CST_BLACKSMITH_2].group=GROUP_BLACKSMITH;
1291     main_types[CST_BLACKSMITH_2].graphic
1292 	    =load_graphic(CST_BLACKSMITH_2_G);
1293 
1294     main_types[CST_BLACKSMITH_3].group=GROUP_BLACKSMITH;
1295     main_types[CST_BLACKSMITH_3].graphic
1296 	    =load_graphic(CST_BLACKSMITH_3_G);
1297 
1298     main_types[CST_BLACKSMITH_4].group=GROUP_BLACKSMITH;
1299     main_types[CST_BLACKSMITH_4].graphic
1300 	    =load_graphic(CST_BLACKSMITH_4_G);
1301 
1302     main_types[CST_BLACKSMITH_5].group=GROUP_BLACKSMITH;
1303     main_types[CST_BLACKSMITH_5].graphic
1304 	    =load_graphic(CST_BLACKSMITH_5_G);
1305 
1306     main_types[CST_BLACKSMITH_6].group=GROUP_BLACKSMITH;
1307     main_types[CST_BLACKSMITH_6].graphic
1308 	    =load_graphic(CST_BLACKSMITH_6_G);
1309 
1310     prog_box("",75);
1311 
1312     main_types[CST_MILL_0].group=GROUP_MILL;
1313     main_types[CST_MILL_0].graphic=load_graphic(CST_MILL_0_G);
1314 
1315     main_types[CST_MILL_1].group=GROUP_MILL;
1316     main_types[CST_MILL_1].graphic=load_graphic(CST_MILL_1_G);
1317 
1318     main_types[CST_MILL_2].group=GROUP_MILL;
1319     main_types[CST_MILL_2].graphic=load_graphic(CST_MILL_2_G);
1320 
1321     main_types[CST_MILL_3].group=GROUP_MILL;
1322     main_types[CST_MILL_3].graphic=load_graphic(CST_MILL_3_G);
1323 
1324     main_types[CST_MILL_4].group=GROUP_MILL;
1325     main_types[CST_MILL_4].graphic=load_graphic(CST_MILL_4_G);
1326 
1327     main_types[CST_MILL_5].group=GROUP_MILL;
1328     main_types[CST_MILL_5].graphic=load_graphic(CST_MILL_5_G);
1329 
1330     main_types[CST_MILL_6].group=GROUP_MILL;
1331     main_types[CST_MILL_6].graphic=load_graphic(CST_MILL_6_G);
1332 
1333     main_types[CST_POTTERY_0].group=GROUP_POTTERY;
1334     main_types[CST_POTTERY_0].graphic=load_graphic(CST_POTTERY_0_G);
1335 
1336     main_types[CST_POTTERY_1].group=GROUP_POTTERY;
1337     main_types[CST_POTTERY_1].graphic=load_graphic(CST_POTTERY_1_G);
1338 
1339     main_types[CST_POTTERY_2].group=GROUP_POTTERY;
1340     main_types[CST_POTTERY_2].graphic=load_graphic(CST_POTTERY_2_G);
1341 
1342     main_types[CST_POTTERY_3].group=GROUP_POTTERY;
1343     main_types[CST_POTTERY_3].graphic=load_graphic(CST_POTTERY_3_G);
1344 
1345     main_types[CST_POTTERY_4].group=GROUP_POTTERY;
1346     main_types[CST_POTTERY_4].graphic=load_graphic(CST_POTTERY_4_G);
1347 
1348     main_types[CST_POTTERY_5].group=GROUP_POTTERY;
1349     main_types[CST_POTTERY_5].graphic=load_graphic(CST_POTTERY_5_G);
1350 
1351     main_types[CST_POTTERY_6].group=GROUP_POTTERY;
1352     main_types[CST_POTTERY_6].graphic=load_graphic(CST_POTTERY_6_G);
1353 
1354     main_types[CST_POTTERY_7].group=GROUP_POTTERY;
1355     main_types[CST_POTTERY_7].graphic=load_graphic(CST_POTTERY_7_G);
1356 
1357     main_types[CST_POTTERY_8].group=GROUP_POTTERY;
1358     main_types[CST_POTTERY_8].graphic=load_graphic(CST_POTTERY_8_G);
1359 
1360     main_types[CST_POTTERY_9].group=GROUP_POTTERY;
1361     main_types[CST_POTTERY_9].graphic=load_graphic(CST_POTTERY_9_G);
1362 
1363     main_types[CST_POTTERY_10].group=GROUP_POTTERY;
1364     main_types[CST_POTTERY_10].graphic=load_graphic(CST_POTTERY_10_G);
1365 
1366     main_types[CST_FIRESTATION_1].group=GROUP_FIRESTATION;
1367     main_types[CST_FIRESTATION_1].graphic
1368 	    =load_graphic(CST_FIRESTATION_1_G);
1369 
1370     main_types[CST_FIRESTATION_2].group=GROUP_FIRESTATION;
1371     main_types[CST_FIRESTATION_2].graphic
1372 	    =load_graphic(CST_FIRESTATION_2_G);
1373 
1374     main_types[CST_FIRESTATION_3].group=GROUP_FIRESTATION;
1375     main_types[CST_FIRESTATION_3].graphic
1376 	    =load_graphic(CST_FIRESTATION_3_G);
1377 
1378     main_types[CST_FIRESTATION_4].group=GROUP_FIRESTATION;
1379     main_types[CST_FIRESTATION_4].graphic
1380 	    =load_graphic(CST_FIRESTATION_4_G);
1381 
1382     main_types[CST_FIRESTATION_5].group=GROUP_FIRESTATION;
1383     main_types[CST_FIRESTATION_5].graphic
1384 	    =load_graphic(CST_FIRESTATION_5_G);
1385 
1386     main_types[CST_FIRESTATION_6].group=GROUP_FIRESTATION;
1387     main_types[CST_FIRESTATION_6].graphic
1388 	    =load_graphic(CST_FIRESTATION_6_G);
1389 
1390     main_types[CST_FIRESTATION_7].group=GROUP_FIRESTATION;
1391     main_types[CST_FIRESTATION_7].graphic
1392 	    =load_graphic(CST_FIRESTATION_7_G);
1393 
1394     main_types[CST_FIRESTATION_8].group=GROUP_FIRESTATION;
1395     main_types[CST_FIRESTATION_8].graphic
1396 	    =load_graphic(CST_FIRESTATION_8_G);
1397 
1398     main_types[CST_FIRESTATION_9].group=GROUP_FIRESTATION;
1399     main_types[CST_FIRESTATION_9].graphic
1400 	    =load_graphic(CST_FIRESTATION_9_G);
1401 
1402     main_types[CST_FIRESTATION_10].group=GROUP_FIRESTATION;
1403     main_types[CST_FIRESTATION_10].graphic
1404 	    =load_graphic(CST_FIRESTATION_10_G);
1405 
1406     main_types[CST_CRICKET_1].group=GROUP_CRICKET;
1407     main_types[CST_CRICKET_1].graphic
1408 	    =load_graphic(CST_CRICKET_1_G);
1409 
1410     main_types[CST_CRICKET_2].group=GROUP_CRICKET;
1411     main_types[CST_CRICKET_2].graphic
1412 	    =load_graphic(CST_CRICKET_2_G);
1413 
1414     main_types[CST_CRICKET_3].group=GROUP_CRICKET;
1415     main_types[CST_CRICKET_3].graphic
1416 	    =load_graphic(CST_CRICKET_3_G);
1417 
1418     main_types[CST_CRICKET_4].group=GROUP_CRICKET;
1419     main_types[CST_CRICKET_4].graphic
1420 	    =load_graphic(CST_CRICKET_4_G);
1421 
1422     prog_box("",90);
1423 
1424     main_types[CST_CRICKET_5].group=GROUP_CRICKET;
1425     main_types[CST_CRICKET_5].graphic
1426 	    =load_graphic(CST_CRICKET_5_G);
1427 
1428     main_types[CST_CRICKET_6].group=GROUP_CRICKET;
1429     main_types[CST_CRICKET_6].graphic
1430 	    =load_graphic(CST_CRICKET_6_G);
1431 
1432     main_types[CST_CRICKET_7].group=GROUP_CRICKET;
1433     main_types[CST_CRICKET_7].graphic
1434 	    =load_graphic(CST_CRICKET_7_G);
1435 
1436     main_types[CST_FIRE_1].group=GROUP_FIRE;
1437     main_types[CST_FIRE_1].graphic
1438 	    =load_graphic(CST_FIRE_1_G);
1439 
1440     main_types[CST_FIRE_2].group=GROUP_FIRE;
1441     main_types[CST_FIRE_2].graphic
1442 	    =load_graphic(CST_FIRE_2_G);
1443 
1444     main_types[CST_FIRE_3].group=GROUP_FIRE;
1445     main_types[CST_FIRE_3].graphic
1446 	    =load_graphic(CST_FIRE_3_G);
1447 
1448     main_types[CST_FIRE_4].group=GROUP_FIRE;
1449     main_types[CST_FIRE_4].graphic
1450 	    =load_graphic(CST_FIRE_4_G);
1451 
1452     main_types[CST_FIRE_5].group=GROUP_FIRE;
1453     main_types[CST_FIRE_5].graphic
1454 	    =load_graphic(CST_FIRE_5_G);
1455 
1456     main_types[CST_FIRE_DONE1].group=GROUP_FIRE;
1457     main_types[CST_FIRE_DONE1].graphic
1458 	    =load_graphic(CST_FIRE_DONE1_G);
1459 
1460     main_types[CST_FIRE_DONE2].group=GROUP_FIRE;
1461     main_types[CST_FIRE_DONE2].graphic
1462 	    =load_graphic(CST_FIRE_DONE2_G);
1463 
1464     main_types[CST_FIRE_DONE3].group=GROUP_FIRE;
1465     main_types[CST_FIRE_DONE3].graphic
1466 	    =load_graphic(CST_FIRE_DONE3_G);
1467 
1468     main_types[CST_FIRE_DONE4].group=GROUP_FIRE;
1469     main_types[CST_FIRE_DONE4].graphic
1470 	    =load_graphic(CST_FIRE_DONE4_G);
1471 
1472     main_types[CST_SHANTY].group=GROUP_SHANTY;
1473     main_types[CST_SHANTY].graphic=load_graphic(CST_SHANTY_G);
1474 #endif
1475 
1476     main_types[CST_USED].group=GROUP_USED;
1477     main_types[CST_USED].graphic=0;         /* Won't be dereferenced! */
1478 }
1479 
1480 
1481 
1482 int
get_group_of_type(short type)1483 get_group_of_type (short type)
1484 {
1485     return main_types[type].group;
1486 }
1487 
1488 void
set_map_groups(void)1489 set_map_groups (void)
1490 {
1491     int x, y;
1492     for (x = 0; x < WORLD_SIDE_LEN; x++) {
1493         for (y = 0; y < WORLD_SIDE_LEN; y++) {
1494             MP_GROUP(x,y) = get_group_of_type(MP_TYPE(x,y));
1495         }
1496     }
1497 }
1498 
1499 int
get_group_cost(short group)1500 get_group_cost (short group)
1501 {
1502     return (int) ((float) main_groups[group].cost
1503 		  + ((float) main_groups[group].cost
1504 		     * ((float) main_groups[group].cost_mul
1505 			* (float) tech_level)
1506 		     / (float) MAX_TECH_LEVEL));
1507 }
1508 
1509 void
get_type_name(short type,char * s)1510 get_type_name (short type, char * s)
1511 {
1512      short g;
1513      g = get_group_of_type (type);
1514      strcpy (s, _(main_groups[g].name));
1515 }
1516 
1517 int
get_type_cost(short type)1518 get_type_cost (short type)
1519 {
1520     return get_group_cost ((short) get_group_of_type (type));
1521 }
1522