Dobjtype.h 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. //---------------------------------------------------------------------------
  2. //
  3. // DObjType.h -- File contains the Basic Game Object Type definitions
  4. //
  5. //---------------------------------------------------------------------------//
  6. // Copyright (C) Microsoft Corporation. All rights reserved. //
  7. //===========================================================================//
  8. #ifndef DOBJTYPE_H
  9. #define DOBJTYPE_H
  10. //---------------------------------------------------------------------------
  11. // Include Files
  12. //---------------------------------------------------------------------------
  13. // Macro definitions
  14. #ifndef NO_ERR
  15. #define NO_ERR 0
  16. #endif
  17. #define CANT_LOAD_INVALID_OBJECT 0xBEEF0001
  18. #define OBJECT_TYPE_NUMBER_OUT_OF_RANGE 0xBEEF0002
  19. #define OBJECT_TYPE_NUMBER_UNDEFINED 0xBEEF0003
  20. #define CANT_OPEN_OBJECT_FILE 0xBEEF0004
  21. #define CANT_DELETE_OBJECT_TYPE 0xBEEF0005
  22. #define CANT_CREATE_OBJECT 0xBEEF0006
  23. #define NO_RAM_FOR_OBJECT_TYPE_LIST 0xBEEF0007
  24. #define NO_RAM_FOR_OBJECT_TYPE_FILE 0xBEEF0008
  25. #define NO_RAM_FOR_OBJECT_TYPE_CACHE 0xBEEF0009
  26. #define NO_RAM_FOR_OBJECT_CACHE 0xBEEF000A
  27. enum ObjectTypeClass
  28. {
  29. CRAPPY_OBJECT = -1,
  30. TREE_TYPE,
  31. BUILDING_TYPE,
  32. BATTLEMECH_TYPE,
  33. VEHICLE_TYPE,
  34. EXPLOSION_TYPE, //was EXPLODER_TYPE
  35. FIRE_TYPE,
  36. LASER_TYPE,
  37. SMOKES_TYPE,
  38. PROJECTILE_TYPE,
  39. MECHARM_TYPE,
  40. MAPICON_TYPE,
  41. TERRAINOBJECT_TYPE,
  42. ARTILLERY_TYPE,
  43. MINE_TYPE,
  44. ELEMENTAL_TYPE,
  45. BRIDGE_TYPE,
  46. JET_TYPE,
  47. PROJLASER_TYPE,
  48. TREEBUILDING_TYPE,
  49. CAMERADRONE_TYPE,
  50. TRAINCAR_TYPE,
  51. TURRET_TYPE,
  52. GATE_TYPE,
  53. KLIEG_LIGHT_TYPE,
  54. WEAPONBOLT_TYPE
  55. };
  56. /*
  57. - INVALID = -1,
  58. BASEOBJECT = 0,
  59. TERRN,
  60. - BATTLEMECH,
  61. - GROUNDVEHICLE,
  62. - ELEMENTAL,
  63. - EXPLODE,
  64. - FIRE,
  65. - ARTILLERY,
  66. MOVER,
  67. GAMEOBJECT,
  68. BIGGAMEOBJECT,
  69. COMPONENT,
  70. WEAPON,
  71. - PROJECTILE,
  72. - LASERWEAPON,
  73. PPC,
  74. - BUILDING,
  75. - SMOKE,
  76. BULLET,
  77. - DEBRIS,
  78. - MAP_ICON,
  79. - TREE,
  80. - TERRAINOBJECT,
  81. - MINE,
  82. - BRIDGE,
  83. - JET,
  84. - PROJLASER,
  85. - TREEBUILDING,
  86. - CAMERADRONE,
  87. - TRAINCAR,
  88. - TURRET,
  89. - GATE,
  90. - KLIEG_LIGHT
  91. */
  92. //---------------------------------------------------------------------------
  93. // Class definitions
  94. class ObjectType;
  95. typedef ObjectType* ObjectTypePtr;
  96. class ObjectTypeManager;
  97. typedef ObjectTypeManager* ObjectTypeManagerPtr;
  98. typedef long ObjectTypeNumber;
  99. //---------------------------------------------------------------------------
  100. #endif