xref: /csrg-svn/games/robots/extern.c (revision 33690)
121464Smckusick /*
221464Smckusick  * Copyright (c) 1980 Regents of the University of California.
3*33690Sbostic  * All rights reserved.
4*33690Sbostic  *
5*33690Sbostic  * Redistribution and use in source and binary forms are permitted
6*33690Sbostic  * provided that this notice is preserved and that due credit is given
7*33690Sbostic  * to the University of California at Berkeley. The name of the University
8*33690Sbostic  * may not be used to endorse or promote products derived from this
9*33690Sbostic  * software without specific prior written permission. This software
10*33690Sbostic  * is provided ``as is'' without express or implied warranty.
1121464Smckusick  */
1221464Smckusick 
1321464Smckusick #ifndef lint
14*33690Sbostic static char sccsid[] = "@(#)extern.c	5.2 (Berkeley) 03/09/88";
15*33690Sbostic #endif /* not lint */
1621464Smckusick 
1721464Smckusick # include	"robots.h"
1821464Smckusick 
1921464Smckusick bool	Dead;			/* Player is now dead */
2021464Smckusick bool	Full_clear = TRUE;	/* Lots of junk for init_field to clear */
2121464Smckusick bool	Jump = FALSE;		/* Jump while running, counting, or waiting */
2221464Smckusick bool	Newscore;		/* There was a new score added */
2321464Smckusick #ifdef	FANCY
2421464Smckusick bool	Pattern_roll = FALSE;	/* Auto play for YHBJNLUK pattern */
2521464Smckusick #endif
2621464Smckusick bool	Real_time = FALSE;	/* Play in real time? */
2721464Smckusick bool	Running = FALSE;	/* Currently in the middle of a run */
2821464Smckusick #ifdef	FANCY
2921464Smckusick bool	Stand_still = FALSE;	/* Auto play for standing still pattern */
3021464Smckusick #endif
3121464Smckusick bool	Teleport = FALSE;	/* Teleport automatically when player must */
3221464Smckusick bool	Waiting;		/* Player is waiting for end */
3321464Smckusick bool	Was_bonus = FALSE;	/* Was a bonus last level */
3421464Smckusick 
3521464Smckusick char	Cnt_move;		/* Command which has preceded the count */
3621464Smckusick char	Field[Y_FIELDSIZE][X_FIELDSIZE];	/* the playing field itslef */
3721464Smckusick char	*Next_move;		/* Next move to be used in the pattern */
3821464Smckusick char	*Move_list = "YHBJNLUK";/* List of moves in the pattern */
3921464Smckusick char	Run_ch;			/* Character for the direction we are running */
4021464Smckusick 
4121464Smckusick int	Count = 0;		/* Command count */
4221464Smckusick int	Level;			/* Current level */
4321464Smckusick int	Num_robots;		/* Number of robots left */
4421464Smckusick int	Num_scores;		/* Number of scores posted */
4521464Smckusick int	Score;			/* Current score */
4621464Smckusick int	Start_level = 1;	/* Level on which to start */
4721464Smckusick int	Wait_bonus;		/* bonus for waiting */
4821464Smckusick 
4921464Smckusick COORD	Max;			/* Max area robots take up */
5021464Smckusick COORD	Min;			/* Min area robots take up */
5121464Smckusick COORD	My_pos;			/* Player's current position */
5221464Smckusick COORD	Robots[MAXROBOTS];	/* Robots' current positions */
5321464Smckusick 
5421464Smckusick jmp_buf	End_move;		/* Jump to on Real_time */
55