1/*	$OpenBSD: phantglobs.h,v 1.7 2016/01/06 14:28:09 mestre Exp $	*/
2/*	$NetBSD: phantglobs.h,v 1.3 1995/04/24 12:24:39 cgd Exp $	*/
3
4/*
5 * phantglobs.h - global declarations for Phantasia
6 */
7
8#include <stdio.h>
9
10#include "phantstruct.h"
11
12extern	double	Circle;		/* which circle player is in */
13extern	double	Shield;		/* force field thrown up in monster battle */
14
15extern	bool	Beyond;		/* set if player is beyond point of no return */
16extern	bool	Marsh;		/* set if player is in dead marshes */
17extern	bool	Throne;		/* set if player is on throne */
18extern	bool	Changed;	/* set if important player stats have changed */
19extern	bool	Wizard;		/* set if player is the 'wizard' of the game */
20extern	bool	Timeout;	/* set if short timeout waiting for input */
21extern	bool	Windows;	/* set if we are set up for curses stuff */
22extern	bool	Luckout;	/* set if we have tried to luck out in fight */
23extern	bool	Foestrikes;	/* set if foe gets a chance to hit in battleplayer()*/
24extern	bool	Echo;		/* set if echo input to terminal */
25
26extern	int	Users;		/* number of users currently playing */
27extern	int	Whichmonster;	/* which monster we are fighting */
28extern	int	Lines;		/* line on screen counter for fight routines */
29
30extern	char	Ch_Erase;	/* backspace key */
31extern	char	Ch_Kill;	/* linekill key */
32
33extern	long	Fileloc;	/* location in file of player statistics */
34
35extern	const char *Login;	/* pointer to login of current player */
36extern	char	*Enemyname;	/* pointer name of monster/player we are battling*/
37
38extern	struct player	Player;	/* stats for player */
39extern	struct player	Other;	/* stats for another player */
40
41extern	struct monster	Curmonster;/* stats for current monster */
42
43extern	struct energyvoid Enrgyvoid;/* energy void buffer */
44
45extern	struct charstats Stattable[];/* used for rolling and changing player stats*/
46
47extern	struct charstats *Statptr;/* pointer into Stattable[] */
48
49extern	struct menuitem	Menu[];	/* menu of items for purchase */
50
51extern	FILE	*Playersfp;	/* pointer to open player file */
52extern	FILE	*Monstfp;	/* pointer to open monster file */
53extern	FILE	*Messagefp;	/* pointer to open message file */
54extern	FILE	*Energyvoidfp;	/* pointer to open energy void file */
55
56extern	char	Databuf[SZ_DATABUF];	/* a place to read data into */
57
58/* some canned strings for messages */
59extern	char	Illcmd[];
60extern	char	Illmove[];
61extern	char	Illspell[];
62extern	char	Nomana[];
63extern	char	Somebetter[];
64extern	char	Nobetter[];
65
66/* functions which we need to know about */
67
68char	*descrlocation(struct player *, bool);
69char	*descrstatus(struct player *);
70char	*descrtype(struct player *, bool);
71void	activelist(void);
72void	adjuststats(void);
73long	allocrecord(void);
74long	allocvoid(void);
75void	allstatslist(void);
76void	altercoordinates(double, double, int);
77void	awardtreasure(void);
78void	battleplayer(long);
79void	callmonster(int);
80void	cancelmonster(void);
81void	catchalarm(int);
82void	changestats(bool);
83void	checkbattle(void);
84void	checktampered(void);
85void	cleanup(int);
86void	collecttaxes(double, double);
87void	cursedtreasure(void);
88void	death(char *);
89void	displaystats(void);
90double	distance(double, double, double, double);
91void	dotampered(void);
92double	drandom(void);
93void	encounter(int);
94void	enterscore(void);
95void	error(char *);
96double	explevel(double);
97long	findname(char *, struct player *);
98void	freerecord(struct player *, long);
99void	genchar(int);
100int	getanswer(char *, bool);
101void	getstring(char *, int);
102void	hitmonster(double);
103void	ill_sig(int);
104double	infloat(void);
105void	initialstate(void);
106void	initplayer(struct player *);
107int	inputoption(void);
108void	interrupt(void);
109void	leavegame(void);
110void	monsthits(void);
111void	monstlist(void);
112void	more(int);
113void	movelevel(void);
114void	myturn(void);
115void	neatstuff(void);
116int	pickmonster(void);
117void	playerhits(void);
118void	playinit(void);
119void	procmain(void);
120void	purgeoldplayers(void);
121void	readmessage(void);
122void	readrecord(struct player *, long);
123long	recallplayer(void);
124long	rollnewplayer(void);
125void	scorelist(void);
126void	scramblestats(void);
127void	tampered(int, double, double);
128void	throneroom(void);
129void	throwspell(void);
130void	titlelist(void);
131void	tradingpost(void);
132void	truncstring(char *);
133void	userlist(bool);
134void	writerecord(struct player *, long);
135void	writevoid(struct energyvoid *, long);
136