2 * Empire - A multi-player, client/server Internet based war game.
3 * Copyright (C) 1986-2004, Dave Pare, Jeff Bailey, Thomas Ruschak,
4 * Ken Stevens, Steve McClure
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22 * See the "LEGAL", "LICENSE", "CREDITS" and "README" files for all the
23 * related information and legal notices. It is expected that any future
24 * projects/authors will amend these files as needed.
28 * plane.c: Plane characteristics
30 * Known contributors to this file:
33 * Thomas Ruschak, 1992
39 * plane characteristics
40 * flags indicate capabilities of craft...
41 * P_T: tactical, P_F: fighter/interceptor, P_B: bomber,
42 * P_C: cargo, P_G: glider, P_V: vtol, P_M: (one-shot) missile
43 * P_L: light, can land on carriers.
44 * P_O: orbits (sat's & anti-sats), P_N: nuke killer (SDI)
49 * P_A: ASW plane, can find subs when reconning, can bomb subs
50 * P_R: recon plane, gets some info
51 * P_I: Image capability (advanced spying)
53 * Note if a plane is P_M (a missile) then it will automatically be made
54 * P_V (vtol) in init_global()
60 struct plchrstr plchr[] = {
62 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
65 8, 2, 400, 50, 90, 1, 1, 1, 4, 1, 1,
69 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
72 8, 2, 400, 80, 80, 1, 4, 4, 8, 1, 1,
76 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
79 12, 4, 1000, 125, 45, 1, 14, 14, 11, 2, 3,
84 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
87 12, 4, 1400, 195, 30, 1, 17, 17, 14, 2, 3,
89 P_T | P_F | P_L | P_V},
91 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
93 "sf F-117A Nighthawk",
94 15, 5, 3000, 325, 45, 3, 19, 19, 20, 2, 4,
98 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
101 9, 3, 700, 90, 60, 1, 5, 5, 15, 1, 2,
105 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
107 "jes F-14E jet escort",
108 14, 8, 1400, 160, 60, 1, 10, 10, 25, 2, 3,
112 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
114 "lb TBD-1 Devastator",
115 10, 3, 550, 60, 50, 2, 0, 3, 7, 1, 1,
117 P_L | P_V | P_T | P_B},
119 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
122 14, 4, 1000, 130, 25, 3, 0, 9, 11, 2, 3,
126 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
129 14, 5, 1000, 80, 45, 4, 0, 5, 14, 3, 3,
133 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
135 "jfb FB-111 Aardvark f/b",
136 20, 10, 1800, 140, 30, 7, 8, 8, 20, 5, 5,
141 20, 6, 1100, 90, 90, 5, 0, 4, 15, 2, 2,
145 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
147 "jhb B-52 Strato-Fortress",
148 26, 13, 3200, 150, 80, 12, 0, 11, 35, 5, 6,
152 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
154 "sb B-2 stealth bomber",
155 15, 5, 4000, 325, 25, 8, 0, 15, 28, 2, 5,
160 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
163 10, 3, 550, 100, 85, 2, 0, 3, 15, 2, 2,
165 P_SWEEP | P_MINE | P_T | P_A},
167 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
170 20, 10, 1800, 135, 70, 3, 0, 4, 28, 4, 2,
172 P_SWEEP | P_MINE | P_C | P_T | P_A | P_L},
174 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
177 8, 2, 800, 160, 55, 2, 0, 3, 11, 2, 2,
179 P_V | P_SWEEP | P_T | P_A | P_K},
181 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
184 8, 2, 800, 200, 15, 1, 0, 9, 11, 2, 2,
188 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
190 "tc transport chopper",
191 8, 2, 800, 135, 0, 5, 0, 3, 7, 2, 2,
193 P_V | P_C | P_P | P_L | P_K},
195 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
198 14, 5, 1000, 85, 0, 7, 0, 2, 15, 3, 3,
202 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
204 "jt C-141 Starlifter",
205 18, 5, 1500, 160, 0, 16, 0, 9, 35, 3, 4,
209 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
212 6, 2, 1000, 70, 60, 2, 0, -3, 15, 3, 2,
214 P_S | P_V | P_T | P_C},
215 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
218 12, 4, 800, 130, 0, 0, 0, 4, 15, 2, 2,
222 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
225 15, 5, 2000, 190, 0, 0, 0, 11, 32, 2, 5,
229 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
232 20, 20, 2000, 245, 0, 0, 0, 3, 41, 0, 9,
236 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
239 20, 20, 4000, 305, 0, 0, 0, 3, 61, 0, 9,
243 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
246 8, 2, 300, 160, 50, 6, 0, 5, 6, 0, 0,
248 P_L | P_T | P_M | P_MAR},
249 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
252 3, 1, 200, 180, 0, 0, 0, 18, 2, 0, 0,
254 P_L | P_F | P_E | P_M},
256 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
259 15, 15, 800, 145, 60, 3, 0, 3, 4, 0, 0,
263 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
266 20, 20, 1000, 200, 60, 6, 0, 5, 9, 0, 0,
270 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
273 20, 20, 1500, 260, 60, 8, 0, 10, 15, 0, 0,
277 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
280 20, 20, 3000, 310, 60, 10, 0, 15, 41, 0, 0,
283 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
286 20, 20, 2000, 280, 60, 8, 0, 6, 23, 0, 0,
290 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
293 20, 20, 2000, 305, 50, 6, 0, 7, 13, 0, 4,
297 /* name lcm hcm $$$ tch acc ld at/df ran mil gas stlth flags */
300 16, 8, 1500, 270, 50, 0, 0, 31, 12, 0, 0,
304 "", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
309 int pln_maxno = (sizeof(plchr) / sizeof(struct plchrstr)) - 1;