00001 00024 #ifndef __genconmac_h__ 00025 #define __genconmac_h__ 00026 00030 #define MAX_NAME_LEN 32 00031 00041 #define MAX_PLAYERS 32 00042 00046 #define FRAME_DURATION 16 00047 00052 #define SRV_FRAME_OFFSET 6 00053 00057 #define TOP_MARGIN 8 00058 00063 #define BOTTOM_MARGIN 4 00064 00069 enum EVENT_TYPES { 00073 EC_FORWARD, 00077 EC_BACKWARD, 00081 EC_ROTRIGHT, 00085 EC_ROTLEFT, 00089 EC_FIRE, 00093 EC_FS_TOGGLE, 00098 EC_CHARACTER, 00099 EC_MAX 00100 }; 00101 00115 extern Uint8 eventState[EC_MAX]; 00116 00120 enum { 00124 TEAM_RED, 00128 TEAM_BLUE, 00133 TEAM_GREEN, 00138 TEAM_PURPLE, 00139 TEAM_MAX, 00144 TEAM_UNDEC = 0xFF 00145 }; 00146 00150 enum LAYERS { 00154 LAYER_BACKGROUND, 00158 LAYER_OBSTACLES, 00162 LAYER_TEXT, 00166 LAYER_NAMES, 00170 LAYER_TANKS, 00171 LAYER_MAX 00172 }; 00173 00174 #define MOTION_0_0 0 00175 #define MOTION_0_1 256 00176 #define MOTION_22_0 98 00177 #define MOTION_22_1 237 00178 #define MOTION_45_0 181 00179 #define MOTION_45_1 181 00180 00181 #define FMOTION_0_0 0.0f 00182 #define FMOTION_0_1 1.0f 00183 #define FMOTION_22_0 0.374606593f 00184 #define FMOTION_22_1 0.927183855f 00185 #define FMOTION_45_0 0.707106781f 00186 #define FMOTION_45_1 0.707106781f 00187 00188 #define MOTION_DIV 4 00189 00194 #define MOTION_SHELL_FACTOR 5 00195 00199 #define SHELL_GUIDED_DIST 96 00200 00204 #define SHELL_PONG_DIST 192 00205 00209 #define DEAD_TIME 180 00210 00221 #define rounddiv(n, d) \ 00222 ((((n) % (d)) > ((int)(d) / 2)) ? ((int)(n) / (d) + 1) : ((int)(n) / (d))) 00223 00233 #define rounddivup(n, d) \ 00234 ((((n) % (d)) > 0) ? ((int)(n) / (d) + 1) : ((int)(n) / (d))) 00235 00242 #define bitindex(bitid, datatype) \ 00243 (((unsigned)bitid) / ((unsigned)sizeof(datatype) * (unsigned)8)) 00244 00251 #define bitflag(bitid, datatype) (1 << ((bitid) & (sizeof(datatype) * 8 - 1))) 00252 00260 #define bitarraylen(bits, datatype) rounddivup(bits, sizeof(datatype) * 8) 00261 00269 #define absval(v) (((v) < 0) ? -(v) : (v)) 00270 00271 #endif 00272