/* Relay -- a tool to record and play Quake2 demos Copyright (C) 2000 Conor Davis This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. Conor Davis cedavis@planetquake.com */ #ifndef __SHARED_H #define __SHARED_H #include #include "volatile.h" #ifdef WIN32 #pragma warning(disable: 4305) // const double to float truncation #pragma warning(disable: 4244) // double to float conversion #endif //#define BIG_ENDIAN #define MAX_MSGLEN 1400 #define MAX_SVSLEN 65535 #define ISBITSET(array, index) (!!((array)[(index)>>3] & (1 << ((index) & 7)))) #define SETBIT(array, index, value) ((value) ? ((array)[(index)>>3] |= 1 << ((index) & 7)) : ((array)[(index)>>3] &= ~(1 << ((index) & 7)))) #define STRINGIZE(x) #x #define STRINGIZE_VALUE(x) STRINGIZE(x) // client viewing options #define RC_LOCKPOS 0x01 // lock client's position to player #define RC_LOCKVIEW 0x02 // lock client's view to/toward player #define RC_CHASEVIEW 0x04 // w/ lockview, keep view relative to player's #define RC_TRUNCDIST 0x08 // shorten lockview dist when blocked by walls #define RC_STATUSBAR 0x10 // enable statusbar #define RC_LAYOUT 0x20 // enable layouts #define RC_INVENTORY 0x40 // enable inventory updates #define RC_TINT 0x80 // enable screen blending extern void Com_Printf(char *fmt, ...); extern void Sys_Error(char *fmt, ...); #endif // __SHARED_H