]> icculus.org git repositories - btb/d2x.git/blob - main/inferno.h
use the orientation parameter of g3_draw_bitmap
[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 // MACRO for single line #ifdef WINDOWS #else DOS
26 #ifdef WINDOWS
27 #define WIN(x) x
28 #else
29 #define WIN(x)
30 #endif
31
32 #ifdef MACINTOSH
33 #define MAC(x) x
34 #else
35 #define MAC(x)
36 #endif
37
38 #define STRINGIFY(x) #x
39
40
41 /**
42  **     Constants
43  **/
44
45 // How close two points must be in all dimensions to be considered the
46 // same point.
47 #define FIX_EPSILON     10
48
49 // the maximum length of a filename
50 #define FILENAME_LEN 13
51
52 //for Function_mode variable
53 #define FMODE_EXIT              0               // leaving the program
54 #define FMODE_MENU              1               // Using the menu
55 #define FMODE_GAME              2               // running the game
56 #define FMODE_EDITOR    3               // running the editor
57
58 // This constant doesn't really belong here, but it is because of
59 // horrible circular dependencies involving object.h, aistruct.h,
60 // polyobj.h, & robot.h
61 #define MAX_SUBMODELS   10              // how many animating sub-objects per model
62
63
64 #include "ai.h"
65 #include "aistruct.h"
66 #include "automap.h"
67 #include "bm.h"
68 #ifdef EDITOR
69 #include "bmread.h"
70 #endif
71 #include "cli.h"
72 #include "cmd.h"
73 #include "cntrlcen.h"
74 #include "collide.h"
75 #include "config.h"
76 #include "console.h"
77 #include "controls.h"
78 #include "credits.h"
79 #include "digi.h"
80 #include "effects.h"
81 #include "endlevel.h"
82 #include "entity.h"
83 #include "escort.h"
84 #include "fuelcen.h"
85 #include "fvi.h"
86 #include "gamefont.h"
87 #include "gamemine.h"
88 #include "gamepal.h"
89 #include "gamesave.h"
90 #include "gameseq.h"
91 #include "gauges.h"
92 #include "hostage.h"
93 #include "hudmsg.h"
94 #include "fireball.h"
95 #include "joydefs.h"
96 #include "kconfig.h"
97 #include "laser.h"
98 #include "lighting.h"
99 #include "menu.h"
100 #include "morph.h"
101 #include "movie.h"
102 #ifdef NETWORK
103 #include "kmatrix.h"
104 #include "modem.h"
105 #include "multi.h"
106 #include "multibot.h"
107 #include "netmisc.h"
108 #include "network.h"
109 #endif
110 #include "newdemo.h"
111 #include "newmenu.h"
112 #include "object.h"
113 #include "paging.h"
114 #include "physics.h"
115 #include "polyobj.h"
116 #include "powerup.h"
117 #include "render.h"
118 #include "reorder.h"
119 #include "robot.h"
120 #include "scores.h"
121 #include "segment.h"
122 #include "segpoint.h"
123 #include "songs.h"
124 #include "screens.h"
125 #include "slew.h"
126 #include "state.h"
127 #include "switch.h"
128 #include "terrain.h"
129 #include "text.h"
130 #include "texmerge.h"
131 #include "textures.h"
132 #include "titles.h"
133 #include "vers_id.h"
134 #include "wall.h"
135
136
137 /**
138  **     Global variables
139  **/
140
141 extern int Function_mode;               // in game or editor?
142 extern int Screen_mode;                 // editor screen or game screen?
143
144 // The version number of the game
145 extern ubyte Version_major, Version_minor;
146
147 #ifdef MACINTOSH
148 extern ubyte Version_fix;
149 #endif
150
151 /**
152  **     Functions
153  **/
154
155 void quit_request(void);
156
157
158 #endif
159
160