3 // ID_US.h - Header file for the User Manager
\r
5 // By Jason Blochowiak
\r
12 #define __DEBUG_UserMgr__
\r
15 //#define HELPTEXTLINKED
\r
20 #define MaxHelpLines 500
\r
22 #define MaxHighName 57
\r
26 char name[MaxHighName + 1];
\r
28 word completed,episode;
\r
31 #define MaxGameName 32
\r
32 #define MaxSaveGames 6
\r
38 char name[MaxGameName + 1];
\r
41 #define MaxString 128 // Maximum input string size
\r
48 } WindowRec; // Record used to save & restore screen windows
\r
58 // Hack import for TED launch support
\r
59 extern boolean tedlevel;
\r
60 extern int tedlevelnum;
\r
61 extern void TEDDeath(void);
\r
63 extern boolean ingame, // Set by game code if a game is in progress
\r
64 abortgame, // Set if a game load failed
\r
65 loadedgame, // Set if the current game was loaded
\r
68 extern char *abortprogram; // Set to error msg if program is dying
\r
69 extern GameDiff restartgame; // Normally gd_Continue, else starts game
\r
70 extern word PrintX,PrintY; // Current printing location in the window
\r
71 extern word WindowX,WindowY,// Current location of window
\r
72 WindowW,WindowH;// Current size of window
\r
74 extern boolean Button0,Button1,
\r
76 extern int CursorX,CursorY;
\r
78 extern void (*USL_MeasureString)(char far *,word *,word *),
\r
79 (*USL_DrawString)(char far *);
\r
81 extern boolean (*USL_SaveGame)(int),(*USL_LoadGame)(int);
\r
82 extern void (*USL_ResetGame)(void);
\r
83 extern SaveGame Games[MaxSaveGames];
\r
84 extern HighScore Scores[];
\r
86 #define US_HomeWindow() {PrintX = WindowX; PrintY = WindowY;}
\r
88 extern void US_Startup(void),
\r
91 US_InitRndT(boolean randomize),
\r
92 US_SetLoadSaveHooks(boolean (*load)(int),
\r
93 boolean (*save)(int),
\r
94 void (*reset)(void)),
\r
95 US_TextScreen(void),
\r
96 US_UpdateTextScreen(void),
\r
97 US_FinishTextScreen(void),
\r
98 US_DrawWindow(word x,word y,word w,word h),
\r
99 US_CenterWindow(word,word),
\r
100 US_SaveWindow(WindowRec *win),
\r
101 US_RestoreWindow(WindowRec *win),
\r
102 US_ClearWindow(void),
\r
103 US_SetPrintRoutines(void (*measure)(char far *,word *,word *),
\r
104 void (*print)(char far *)),
\r
105 US_PrintCentered(char far *s),
\r
106 US_CPrint(char far *s),
\r
107 US_CPrintLine(char far *s),
\r
108 US_Print(char far *s),
\r
109 US_PrintUnsigned(longword n),
\r
110 US_PrintSigned(long n),
\r
111 US_StartCursor(void),
\r
112 US_ShutCursor(void),
\r
113 US_CheckHighScore(long score,word other),
\r
114 US_DisplayHighScores(int which);
\r
115 extern boolean US_UpdateCursor(void),
\r
116 US_LineInput(int x,int y,char *buf,char *def,boolean escok,
\r
117 int maxchars,int maxwidth);
\r
118 extern int US_CheckParm(char *parm,char **strings),
\r
121 void USL_PrintInCenter(char far *s,Rect r);
\r
122 char *USL_GiveSaveName(word game);
\r