dmultplyr.h 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. //***************************************************************************
  2. //
  3. // dmultplyr.h -- File contains the MoverGroup Definition
  4. //
  5. // MechCommander 2
  6. //
  7. //---------------------------------------------------------------------------//
  8. // Copyright (C) Microsoft Corporation. All rights reserved. //
  9. //===========================================================================//
  10. #ifndef DMULTPLYR_H
  11. #define DMULTPLYR_H
  12. //---------------------------------------------------------------------------
  13. #define WORLDCHUNK_TYPE_BITS 4
  14. #define WORLDCHUNK_TERRAINBLOCK_BITS 8
  15. #define WORLDCHUNK_TERRAINVERTEX_BITS 9
  16. #define WORLDCHUNK_TERRAINITEM_BITS 3
  17. #define WORLDCHUNK_CELLPOS_BITS 10
  18. #define WORLDCHUNK_MINE_BITS 3
  19. #define WORLDCHUNK_TEAM_BITS 4
  20. #define WORLDCHUNK_SECONDS_BITS 6
  21. #define WORLDCHUNK_ARTILLERY_TYPE_BITS 3
  22. #define WORLDCHUNK_ARTILLERY_TIME_BITS 5
  23. #define WORLDCHUNK_TERROBJ_ALIGNMENT_BITS 2
  24. #define WORLDCHUNK_MISSIONSCRIPT_CODE_BITS 8
  25. #define WORLDCHUNK_MISSIONSCRIPT_PARM_BITS 16
  26. #define WORLDCHUNK_PILOT_INDEX_BITS 7
  27. #define WORLDCHUNK_VEHICLE_CLASS_BITS 3
  28. #define WORLDCHUNK_SCORE_BITS 16
  29. #define WORLDCHUNK_COMMANDER_BITS 4
  30. #define WORLDCHUNK_SUBTYPE_BITS 2
  31. #define WORLDCHUNK_CAPTURE_TIME_BITS 20
  32. #define WORLDCHUNK_TYPE_MASK 0x0000000F
  33. #define WORLDCHUNK_TERRAINBLOCK_MASK 0x000000FF
  34. #define WORLDCHUNK_TERRAINVERTEX_MASK 0x000001FF
  35. #define WORLDCHUNK_TERRAINITEM_MASK 0x00000007
  36. #define WORLDCHUNK_CELLPOS_MASK 0x000003FF
  37. #define WORLDCHUNK_MINE_MASK 0x00000007
  38. #define WORLDCHUNK_TEAMID_MASK 0x0000000F
  39. #define WORLDCHUNK_SECONDS_MASK 0x0000003F
  40. #define WORLDCHUNK_ARTILLERY_TYPE_MASK 0x00000007
  41. #define WORLDCHUNK_ARTILLERY_TIME_MASK 0x0000001F
  42. #define WORLDCHUNK_TERROBJ_ALIGNMENT_MASK 0x00000003
  43. #define WORLDCHUNK_MISSIONSCRIPT_CODE_MASK 0x000000FF
  44. #define WORLDCHUNK_MISSIONSCRIPT_PARM_MASK 0x0000FFFF
  45. #define WORLDCHUNK_PILOT_INDEX_MASK 0x0000007F
  46. #define WORLDCHUNK_VEHICLE_CLASS_MASK 0x00000007
  47. #define WORLDCHUNK_SCORE_MASK 0x0000FFFF
  48. #define WORLDCHUNK_COMMANDER_MASK 0x0000000F
  49. #define WORLDCHUNK_SUBTYPE_MASK 0x00000003
  50. #define WORLDCHUNK_CAPTURE_TIME_MASK 0x0003FFFF
  51. typedef enum {
  52. WORLDCHUNK_MINE,
  53. WORLDCHUNK_FIRE,
  54. WORLDCHUNK_ARTILLERY_COMMANDER0, // We pass the TEAM id now, NOT the commander
  55. WORLDCHUNK_ARTILLERY_COMMANDER1, // We need for 8 player MPlayer
  56. WORLDCHUNK_ARTILLERY_COMMANDER2, // -fs
  57. WORLDCHUNK_ARTILLERY_COMMANDER3,
  58. WORLDCHUNK_ARTILLERY_COMMANDER4,
  59. WORLDCHUNK_ARTILLERY_COMMANDER5,
  60. WORLDCHUNK_ARTILLERY_COMMANDER6,
  61. WORLDCHUNK_ARTILLERY_COMMANDER7,
  62. WORLDCHUNK_MISSION_SCRIPT_MESSAGE,
  63. WORLDCHUNK_PILOT_KILL_STAT,
  64. WORLDCHUNK_SCORE,
  65. WORLDCHUNK_KILL_LOSS,
  66. WORLDCHUNK_CAPTURE_BUILDING,
  67. WORLDCHUNK_END_MISSION,
  68. NUM_WORLDCHUNK_TYPES
  69. };
  70. //---------------------------------------------------------------------------
  71. class WorldChunk;
  72. typedef WorldChunk* WorldChunkPtr;
  73. #endif
  74. //***************************************************************************