xref: /original-bsd/games/robots/extern.c (revision bdd86a84)
1 /*
2  * Copyright (c) 1980 Regents of the University of California.
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms are permitted
6  * provided that the above copyright notice and this paragraph are
7  * duplicated in all such forms and that any documentation,
8  * advertising materials, and other materials related to such
9  * distribution and use acknowledge that the software was developed
10  * by the University of California, Berkeley.  The name of the
11  * University may not be used to endorse or promote products derived
12  * from this software without specific prior written permission.
13  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
14  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
15  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
16  */
17 
18 #ifndef lint
19 static char sccsid[] = "@(#)extern.c	5.3 (Berkeley) 06/18/88";
20 #endif /* not lint */
21 
22 # include	"robots.h"
23 
24 bool	Dead;			/* Player is now dead */
25 bool	Full_clear = TRUE;	/* Lots of junk for init_field to clear */
26 bool	Jump = FALSE;		/* Jump while running, counting, or waiting */
27 bool	Newscore;		/* There was a new score added */
28 #ifdef	FANCY
29 bool	Pattern_roll = FALSE;	/* Auto play for YHBJNLUK pattern */
30 #endif
31 bool	Real_time = FALSE;	/* Play in real time? */
32 bool	Running = FALSE;	/* Currently in the middle of a run */
33 #ifdef	FANCY
34 bool	Stand_still = FALSE;	/* Auto play for standing still pattern */
35 #endif
36 bool	Teleport = FALSE;	/* Teleport automatically when player must */
37 bool	Waiting;		/* Player is waiting for end */
38 bool	Was_bonus = FALSE;	/* Was a bonus last level */
39 
40 char	Cnt_move;		/* Command which has preceded the count */
41 char	Field[Y_FIELDSIZE][X_FIELDSIZE];	/* the playing field itslef */
42 char	*Next_move;		/* Next move to be used in the pattern */
43 char	*Move_list = "YHBJNLUK";/* List of moves in the pattern */
44 char	Run_ch;			/* Character for the direction we are running */
45 
46 int	Count = 0;		/* Command count */
47 int	Level;			/* Current level */
48 int	Num_robots;		/* Number of robots left */
49 int	Num_scores;		/* Number of scores posted */
50 int	Score;			/* Current score */
51 int	Start_level = 1;	/* Level on which to start */
52 int	Wait_bonus;		/* bonus for waiting */
53 
54 COORD	Max;			/* Max area robots take up */
55 COORD	Min;			/* Min area robots take up */
56 COORD	My_pos;			/* Player's current position */
57 COORD	Robots[MAXROBOTS];	/* Robots' current positions */
58 
59 jmp_buf	End_move;		/* Jump to on Real_time */
60