home *** CD-ROM | disk | FTP | other *** search
/ Enigma Amiga Life 113 / EnigmaAmiga113CD.iso / software / sviluppo / quakeworld_src / client / bothdefs.h.orig < prev    next >
Encoding:
Text File  |  2000-06-17  |  3.8 KB  |  158 lines

  1. /*
  2. Copyright (C) 1996-1997 Id Software, Inc.
  3.  
  4. This program is free software; you can redistribute it and/or
  5. modify it under the terms of the GNU General Public License
  6. as published by the Free Software Foundation; either version 2
  7. of the License, or (at your option) any later version.
  8.  
  9. This program is distributed in the hope that it will be useful,
  10. but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
  12.  
  13. See the GNU General Public License for more details.
  14.  
  15. You should have received a copy of the GNU General Public License
  16. along with this program; if not, write to the Free Software
  17. Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
  18.  
  19. */
  20.  
  21. // defs common to client and server
  22.  
  23. #define GLQUAKE_VERSION 1.00
  24. #define VERSION   2.40
  25. #define LINUX_VERSION 0.98
  26.  
  27.  
  28. #if (defined(_M_IX86) || defined(__i386__)) && !defined(id386)
  29. #define id386 1
  30. #else
  31. #define id386 0
  32. #endif
  33.  
  34. #ifdef SERVERONLY   // no asm in dedicated server
  35. #undef id386
  36. #endif
  37.  
  38. #if id386
  39. #define UNALIGNED_OK  1 // set to 0 if unaligned accesses are not supported
  40. #else
  41. #define UNALIGNED_OK  0
  42. #endif
  43.  
  44. // !!! if this is changed, it must be changed in d_ifacea.h too !!!
  45. #define CACHE_SIZE  32    // used to align key data structures
  46.  
  47. #define UNUSED(x) (x = x) // for pesky compiler / lint warnings
  48.  
  49. #define MINIMUM_MEMORY  0x550000
  50.  
  51. // up / down
  52. #define PITCH 0
  53.  
  54. // left / right
  55. #define YAW   1
  56.  
  57. // fall over
  58. #define ROLL  2
  59.  
  60.  
  61. #define MAX_SCOREBOARD    16    // max numbers of players
  62.  
  63. #define SOUND_CHANNELS    8
  64.  
  65.  
  66. #define MAX_QPATH   64      // max length of a quake game pathname
  67. #define MAX_OSPATH    128     // max length of a filesystem pathname
  68.  
  69. #define ON_EPSILON    0.1     // point on plane side epsilon
  70.  
  71. #define MAX_MSGLEN    1450    // max length of a reliable message
  72. #define MAX_DATAGRAM  1450    // max length of unreliable message
  73.  
  74. //
  75. // per-level limits
  76. //
  77. #define MAX_EDICTS    768     // FIXME: ouch! ouch! ouch!
  78. #define MAX_LIGHTSTYLES 64
  79. #define MAX_MODELS    256     // these are sent over the net as bytes
  80. #define MAX_SOUNDS    256     // so they cannot be blindly increased
  81.  
  82. #define SAVEGAME_COMMENT_LENGTH 39
  83.  
  84. #define MAX_STYLESTRING 64
  85.  
  86. //
  87. // stats are integers communicated to the client by the server
  88. //
  89. #define MAX_CL_STATS    32
  90. #define STAT_HEALTH     0
  91. //define  STAT_FRAGS      1
  92. #define STAT_WEAPON     2
  93. #define STAT_AMMO     3
  94. #define STAT_ARMOR      4
  95. //define  STAT_WEAPONFRAME  5
  96. #define STAT_SHELLS     6
  97. #define STAT_NAILS      7
  98. #define STAT_ROCKETS    8
  99. #define STAT_CELLS      9
  100. #define STAT_ACTIVEWEAPON 10
  101. #define STAT_TOTALSECRETS 11
  102. #define STAT_TOTALMONSTERS  12
  103. #define STAT_SECRETS    13    // bumped on client side by svc_foundsecret
  104. #define STAT_MONSTERS   14    // bumped by svc_killedmonster
  105. #define STAT_ITEMS      15
  106. //define  STAT_VIEWHEIGHT   16
  107.  
  108.  
  109. //
  110. // item flags
  111. //
  112. #define IT_SHOTGUN        1
  113. #define IT_SUPER_SHOTGUN    2
  114. #define IT_NAILGUN        4
  115. #define IT_SUPER_NAILGUN    8
  116.  
  117. #define IT_GRENADE_LAUNCHER   16
  118. #define IT_ROCKET_LAUNCHER    32
  119. #define IT_LIGHTNING      64
  120. #define IT_SUPER_LIGHTNING    128
  121.  
  122. #define IT_SHELLS       256
  123. #define IT_NAILS        512
  124. #define IT_ROCKETS        1024
  125. #define IT_CELLS        2048
  126.  
  127. #define IT_AXE          4096
  128.  
  129. #define IT_ARMOR1       8192
  130. #define IT_ARMOR2       16384
  131. #define IT_ARMOR3       32768
  132.  
  133. #define IT_SUPERHEALTH      65536
  134.  
  135. #define IT_KEY1         131072
  136. #define IT_KEY2         262144
  137.  
  138. #define IT_INVISIBILITY     524288
  139.  
  140. #define IT_INVULNERABILITY    1048576
  141. #define IT_SUIT         2097152
  142. #define IT_QUAD         4194304
  143.  
  144. #define IT_SIGIL1       (1<<28)
  145.  
  146. #define IT_SIGIL2       (1<<29)
  147. #define IT_SIGIL3       (1<<30)
  148. #define IT_SIGIL4       (1<<31)
  149.  
  150. //
  151. // print flags
  152. //
  153. #define PRINT_LOW     0   // pickup messages
  154. #define PRINT_MEDIUM    1   // death messages
  155. #define PRINT_HIGH      2   // critical messages
  156. #define PRINT_CHAT      3   // chat messages
  157.  
  158.