]> icculus.org git repositories - btb/d2x.git/blob - main/inferno.h
remove rcs tags
[btb/d2x.git] / main / inferno.h
1 /*
2 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
3 SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
4 END-USERS, AND SUBJECT TO ALL OF THE TERMS AND CONDITIONS HEREIN, GRANTS A
5 ROYALTY-FREE, PERPETUAL LICENSE TO SUCH END-USERS FOR USE BY SUCH END-USERS
6 IN USING, DISPLAYING,  AND CREATING DERIVATIVE WORKS THEREOF, SO LONG AS
7 SUCH USE, DISPLAY OR CREATION IS FOR NON-COMMERCIAL, ROYALTY OR REVENUE
8 FREE PURPOSES.  IN NO EVENT SHALL THE END-USER USE THE COMPUTER CODE
9 CONTAINED HEREIN FOR REVENUE-BEARING PURPOSES.  THE END-USER UNDERSTANDS
10 AND AGREES TO THE TERMS HEREIN AND ACCEPTS THE SAME BY USE OF THIS FILE.
11 COPYRIGHT 1993-1999 PARALLAX SOFTWARE CORPORATION.  ALL RIGHTS RESERVED.
12 */
13
14 /*
15  *
16  * Header file for Inferno.  Should be included in all source files.
17  *
18  */
19
20 #ifndef _INFERNO_H
21 #define _INFERNO_H
22
23 #include "pstypes.h"
24
25
26 // MACRO for single line #ifdef WINDOWS #else DOS
27 #ifdef WINDOWS
28 #define WIN(x) x
29 #else
30 #define WIN(x)
31 #endif
32
33 #ifdef MACINTOSH
34 #define MAC(x) x
35 #else
36 #define MAC(x)
37 #endif
38
39
40 /**
41  **     Constants
42  **/
43
44 // How close two points must be in all dimensions to be considered the
45 // same point.
46 #define FIX_EPSILON     10
47
48 // the maximum length of a filename
49 #define FILENAME_LEN 13
50
51 //for Function_mode variable
52 #define FMODE_EXIT              0               // leaving the program
53 #define FMODE_MENU              1               // Using the menu
54 #define FMODE_GAME              2               // running the game
55 #define FMODE_EDITOR    3               // running the editor
56
57 // This constant doesn't really belong here, but it is because of
58 // horrible circular dependencies involving object.h, aistruct.h,
59 // polyobj.h, & robot.h
60 #define MAX_SUBMODELS   10              // how many animating sub-objects per model
61
62 /**
63  **     Global variables
64  **/
65
66 extern int Function_mode;               // in game or editor?
67 extern int Screen_mode;                 // editor screen or game screen?
68
69 // The version number of the game
70 extern ubyte Version_major, Version_minor;
71
72 #ifdef MACINTOSH
73 extern ubyte Version_fix;
74 #endif
75
76 /**
77  **     Functions
78  **/
79
80 void quit_request();
81
82
83 #endif
84
85