xref: /csrg-svn/games/atc/struct.h (revision 41163)
1*41163Sbostic /*
2*41163Sbostic  * Copyright (c) 1987 by Ed James, UC Berkeley.  All rights reserved.
3*41163Sbostic  *
4*41163Sbostic  * Copy permission is hereby granted provided that this notice is
5*41163Sbostic  * retained on all partial or complete copies.
6*41163Sbostic  *
7*41163Sbostic  * For more info on this and all of my stuff, mail edjames@berkeley.edu.
8*41163Sbostic  */
9*41163Sbostic 
10*41163Sbostic typedef struct {
11*41163Sbostic 	int	x, y;
12*41163Sbostic 	int	dir;	/* used only sometimes */
13*41163Sbostic } SCREEN_POS;
14*41163Sbostic 
15*41163Sbostic typedef struct {
16*41163Sbostic 	SCREEN_POS	p1, p2;
17*41163Sbostic } LINE;
18*41163Sbostic 
19*41163Sbostic typedef SCREEN_POS	EXIT;
20*41163Sbostic typedef SCREEN_POS	BEACON;
21*41163Sbostic typedef SCREEN_POS	AIRPORT;
22*41163Sbostic 
23*41163Sbostic typedef struct {
24*41163Sbostic 	int	width, height;
25*41163Sbostic 	int	update_secs;
26*41163Sbostic 	int	newplane_time;
27*41163Sbostic 	int	num_exits;
28*41163Sbostic 	int	num_lines;
29*41163Sbostic 	int	num_beacons;
30*41163Sbostic 	int	num_airports;
31*41163Sbostic 	EXIT	*exit;
32*41163Sbostic 	LINE	*line;
33*41163Sbostic 	BEACON	*beacon;
34*41163Sbostic 	AIRPORT	*airport;
35*41163Sbostic } C_SCREEN;
36*41163Sbostic 
37*41163Sbostic typedef struct plane {
38*41163Sbostic 	struct plane	*next, *prev;
39*41163Sbostic 	int		status;
40*41163Sbostic 	int		plane_no;
41*41163Sbostic 	int		plane_type;
42*41163Sbostic 	int		orig_no;
43*41163Sbostic 	int		orig_type;
44*41163Sbostic 	int		dest_no;
45*41163Sbostic 	int		dest_type;
46*41163Sbostic 	int		altitude;
47*41163Sbostic 	int		new_altitude;
48*41163Sbostic 	int		dir;
49*41163Sbostic 	int		new_dir;
50*41163Sbostic 	int		fuel;
51*41163Sbostic 	int		xpos;
52*41163Sbostic 	int		ypos;
53*41163Sbostic 	int		delayd;
54*41163Sbostic 	int		delayd_no;
55*41163Sbostic } PLANE;
56*41163Sbostic 
57*41163Sbostic typedef struct {
58*41163Sbostic 	PLANE	*head, *tail;
59*41163Sbostic } LIST;
60*41163Sbostic 
61*41163Sbostic typedef struct {
62*41163Sbostic 	char	name[10];
63*41163Sbostic 	char	host[256];
64*41163Sbostic 	char	game[256];
65*41163Sbostic 	int	planes;
66*41163Sbostic 	int	time;
67*41163Sbostic 	int	real_time;
68*41163Sbostic } SCORE;
69*41163Sbostic 
70*41163Sbostic typedef struct displacement {
71*41163Sbostic 	int	dx;
72*41163Sbostic 	int	dy;
73*41163Sbostic } DISPLACEMENT;
74