$NetBSD: patch-ae,v 1.2 2003/12/06 19:28:22 ben Exp $

--- data.c.orig	1992-06-19 13:55:29.000000000 -0700
+++ data.c
@@ -102,7 +102,7 @@ long skill[] = {
 };
 #undef MEG
 
-char *tempfilename;
+char *tempfilename = NULL;
 
 char 	*lpbuf,
 	*lpnt,
@@ -114,27 +114,27 @@ char loginname[20];		/* players login na
 char logname[LOGNAMESIZE];	/* players name storage for scoring	*/
 char char_class[20];		/* character class */
 
-short hitp[MAXX][MAXY];		/*	monster hp on level	*/
-short iarg[MAXX][MAXY];		/*	arg for the item array	*/
-short lastnum=0;		/* the number of the monster last hitting player, or */
-						/* reason why dead */
+int hitp[MAXX][MAXY];		/*	monster hp on level	*/
+int iarg[MAXX][MAXY];		/*	arg for the item array	*/
+int lastnum=0;			/* number of monster last hitting player, or */
+				/* reason why dead */
 
-char compress
+int compress
 #ifdef DEF_COMPRESS
 	= 1;
 #else
 	= 0;
 #endif
-char item[MAXX][MAXY];		/*	objects in maze if any	*/
-char know[MAXX][MAXY];		/*	1 or 0 if here before	*/
-/*char mitem[MAXX][MAXY];		/*	monster item array 	*/
-char moved[MAXX][MAXY];		/*	monster movement flags  */
-char stealth[MAXX][MAXY];	/*  0=sleeping 1=awake monst    */
-char iven[IVENSIZE];		/*	inventory for player	*/
+int item[MAXX][MAXY];		/*	objects in maze if any	*/
+int know[MAXX][MAXY];		/*	1 or 0 if here before	*/
+/*char mitem[MAXX][MAXY];		*//*	monster item array 	*/
+int moved[MAXX][MAXY];		/*	monster movement flags  */
+int stealth[MAXX][MAXY];	/*  0=sleeping 1=awake monst    */
+int iven[IVENSIZE];		/*	inventory for player	*/
 short ivenarg[IVENSIZE];	/*	inventory args for player	*/
-char beenhere[NLEVELS]={0};	/*  1 if have been on this level */
-char nosignal=0;	/* set to 1 to disable the signals from doing anything*/
-char predostuff=0;	/*  
+int beenhere[NLEVELS]={0};	/*  1 if have been on this level */
+int nosignal=0;	/* set to 1 to disable the signals from doing anything*/
+int predostuff=0;	/*  
 			** 2 means that the trap handling routines must do a
 			** showplayer() after a trap.  0 means don't showplayer()
 			**		0 - we are in create player screen
@@ -142,27 +142,29 @@ char predostuff=0;	/*  
 			**		2 - we are in the normal game	
 			*/
 
-char ramboflag=0;
-char do_fork=0;
-char sex=1;		/* default is man, 0=woman	*/
-char boldon=1;		/* 1=bold objects,  0=inverse objects	*/
-char mail=1;		/* 1=mail letters after win game */
-char ckpflag=0;		/* 1 if want checkpointing of game, 0 otherwise	*/
-char cheat=0;		/* 1 if the player has fudged save file	*/
-char level=0;		/* cavelevel player is on = c[CAVELEVEL]*/
-char wizard=0;		/* the wizard mode flag	*/
-char hitflag=0;		/* flag for if player has been hit when running */
-char hit2flag=0;	/* flag for if player has been hit when running */
-char hit3flag=0;	/* flag for if player has been hit flush input*/
-char playerx,playery;	/* the room on the present level of the player*/
-char lastpx,lastpy;	/* 0 --- MAXX-1  or  0 --- MAXY-1		*/
-char oldx,oldy;
-char lasthx=0,lasthy=0;/* location of monster last hit by player*/
-char nobeep=0;		/* true if program is not to beep*/
-char char_picked;	/* the character chosen */
-
-char enable_scroll=0;	/* constant for enabled/disabled scrolling regn */
-
+int ramboflag=0;
+int do_fork=0;
+int sex=1;		/* default is man, 0=woman	*/
+int boldon=1;		/* 1=bold objects,  0=inverse objects	*/
+int mail=1;		/* 1=mail letters after win game */
+int ckpflag=0;		/* 1 if want checkpointing of game, 0 otherwise	*/
+int cheat=0;		/* 1 if the player has fudged save file	*/
+int level=0;		/* cavelevel player is on = c[CAVELEVEL]*/
+int wizard=0;		/* the wizard mode flag	*/
+int hitflag=0;		/* flag for if player has been hit when running */
+int hit2flag=0;	/* flag for if player has been hit when running */
+int hit3flag=0;	/* flag for if player has been hit flush input*/
+int playerx,playery;	/* the room on the present level of the player*/
+int oldx,oldy;
+int nobeep=0;		/* true if program is not to beep*/
+int char_picked;	/* the character chosen */
+
+int enable_scroll=0;	/* constant for enabled/disabled scrolling regn */
+
+int lastpx;	/* 0 --- MAXX-1 */
+int lastpy;	/* 0 --- MAXY-1 */
+int lasthx = 0; /* location of monster last hit by player */
+int lasthy = 0;	/* location of monster last hit by player */
 
 long initialtime=0;		/* time playing began 	*/
 long gtime=0;			/* the clock for the game	*/
@@ -289,7 +291,7 @@ char *objectname[]=
  *
  *	array to do rnd() to create monsters <= a given level
  */
-char monstlevel[] = {5, 11, 17, 22, 27, 33, 39, 42, 46, 50, 53, 56};
+int monstlevel[] = {5, 11, 17, 22, 27, 33, 39, 42, 46, 50, 53, 56};
 
 struct monst monster[] = {
 
@@ -380,82 +382,85 @@ struct monst monster[] = {
 
 /*	name array for scrolls		*/
 char *scrollname[MAXSCROLL] = {
-	"\0enchant armor",
-	"\0enchant weapon",
-	"\0enlightenment",
-	"\0blank paper",
-	"\0create monster",
-	"\0create artifact",
-	"\0aggravate monsters",
-	"\0time warp",
-	"\0teleportation",
-	"\0expanded awareness",
-	"\0haste monsters",
-	"\0monster healing",
-	"\0spirit protection",
-	"\0undead protection",
-	"\0stealth",
-	"\0magic mapping",
-	"\0hold monsters",
-	"\0gem perfection",
-	"\0spell extension",
-	"\0identify",
-	"\0remove curse",
-	"\0annihilation",
-	"\0pulverization",
-	"\0life protection",
-	"\0 ",
-	"\0 ",
-	"\0 ",
-	"\0 "
+	"enchant armor",
+	"enchant weapon",
+	"enlightenment",
+	"blank paper",
+	"create monster",
+	"create artifact",
+	"aggravate monsters",
+	"time warp",
+	"teleportation",
+	"expanded awareness",
+	"haste monsters",
+	"monster healing",
+	"spirit protection",
+	"undead protection",
+	"stealth",
+	"magic mapping",
+	"hold monsters",
+	"gem perfection",
+	"spell extension",
+	"identify",
+	"remove curse",
+	"annihilation",
+	"pulverization",
+	"life protection",
+	" ",
+	" ",
+	" ",
+	" "
 };
 
+int scrollknown[MAXSCROLL];
+
 /*	name array for magic potions	*/
 char *potionname[MAXPOTION] = {
-	"\0sleep",
-	"\0healing",
-	"\0raise level",
-	"\0increase ability",
-	"\0wisdom",
-	"\0strength",
-	"\0raise charisma",
-	"\0dizziness",
-	"\0learning",
-	"\0gold detection",
-	"\0monster detection",
-	"\0forgetfulness",
-	"\0water",
-	"\0blindness",
-	"\0confusion",
-	"\0heroism",
-	"\0sturdiness",
-	"\0giant strength",
-	"\0fire resistance",
-	"\0treasure finding",
-	"\0instant healing",
-	" cure dianthroritis",
-	"\0poison",
-	"\0see invisible",
-	"\0 ",
-	"\0 ",
-	"\0 ",
-	"\0 ",
-	"\0 ",
-	"\0 ",
-	"\0 ",
-	"\0 ",
-	"\0 ",
-	"\0 ",
-	"\0 "
+	"sleep",
+	"healing",
+	"raise level",
+	"increase ability",
+	"wisdom",
+	"strength",
+	"raise charisma",
+	"dizziness",
+	"learning",
+	"gold detection",
+	"monster detection",
+	"forgetfulness",
+	"water",
+	"blindness",
+	"confusion",
+	"heroism",
+	"sturdiness",
+	"giant strength",
+	"fire resistance",
+	"treasure finding",
+	"instant healing",
+	"cure dianthroritis",
+	"poison",
+	"see invisible",
+	" ",
+	" ",
+	" ",
+	" ",
+	" ",
+	" ",
+	" ",
+	" ",
+	" ",
+	" ",
+	" "
 };
 
+int potionknown[MAXPOTION];
 
 /*
 **	i = rund((tmp=splev[lev])?tmp:1); 
 **	i = rnd((tmp=splev[lev]-9) ?tmp:1 ) + 9;
  */
-char spelknow[SPNUM]={0};
-char splev[] = {
+int spelknow[SPNUM]={0};
+int splev[] = {
 	1,4,7,11,15,
 	20,24,28,30,32,
 	33,34,35,36,37,
@@ -762,7 +767,7 @@ char *spelmes[] = { 
  *	20 - remove curse	21 - annihilation			
  *	22 - pulverization	23 - life protection
  */
-char scprob[]= { 
+int scprob[]= { 
 	0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 
 	4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8,
 	9, 9, 9, 9, 10, 10, 10, 10, 11, 11, 
@@ -800,15 +805,15 @@ char scprob[]= { 
  *  22 - poison		
  *  23 - see invisible
  */
-char potprob[] = { 
+int potprob[] = { 
 	0, 0, 1, 1, 1, 2, 3, 3, 4, 4, 
 	5, 5, 6, 6, 7, 7, 8, 9, 9, 9, 
 	10, 10, 10, 11, 11, 12, 12, 13, 14, 15, 
 	16, 17, 18, 19, 19, 20, 20, 22, 22, 23, 
 	23 };	/* 41 total */
 
-char nlpts[] = { 0, 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 5, 6, 7 };
-char nch[] = { 0, 0, 0, 1, 1, 1, 2, 2, 3, 4 };
-char nplt[] = { 0, 0, 0, 0, 1, 1, 2, 2, 3, 4 };
-char ndgg[] = { 0, 0, 0, 1, 1, 1, 1, 2, 2, 3, 3, 4, 5 };
-char nsw[] = { 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 3 };
+int nlpts[] = { 0, 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 5, 6, 7 };
+int nch[] = { 0, 0, 0, 1, 1, 1, 2, 2, 3, 4 };
+int nplt[] = { 0, 0, 0, 0, 1, 1, 2, 2, 3, 4 };
+int ndgg[] = { 0, 0, 0, 1, 1, 1, 1, 2, 2, 3, 3, 4, 5 };
+int nsw[] = { 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 3 };
