Advertisement
liquidspark

halo_enums.h

Apr 7th, 2019
393
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 74.54 KB | None | 0 0
  1. #ifndef halo_enums
  2. #define halo_enums
  3.  
  4. #pragma mark Files and Data
  5.  
  6. enum halo_data_type
  7. {
  8.     HALO_DATA_TYPE_UNSPECIFIED = 0,
  9.     HALO_DATA_TYPE_ANIMATION_FRAME_INFO,
  10.     HALO_DATA_TYPE_ANIMATION_DEFAULT,
  11.     HALO_DATA_TYPE_ANIMATION_FRAME,
  12.     HALO_DATA_TYPE_FONT_PIXEL_COMPRESSED,
  13.     HALO_DATA_TYPE_GEOMETRY_CLUSTER,
  14.     HALO_DATA_TYPE_GEOMETRY_MATERIAL_LIGHTMAP_VERTEX_COMPRESSED,
  15.     HALO_DATA_TYPE_GEOMETRY_MATERIAL_LIGHTMAP_VERTEX_UNCOMPRESSED,
  16.     HALO_DATA_TYPE_IMAGE_COMPRESSED_COLOR_PLATE,
  17.     HALO_DATA_TYPE_IMAGE_BITMAP_PROCESSED_PIXEL_A8,
  18.     HALO_DATA_TYPE_IMAGE_BITMAP_PROCESSED_PIXEL_Y8,
  19.     HALO_DATA_TYPE_IMAGE_BITMAP_PROCESSED_PIXEL_AY8,
  20.     HALO_DATA_TYPE_IMAGE_BITMAP_PROCESSED_PIXEL_A8Y8,
  21.     HALO_DATA_TYPE_IMAGE_BITMAP_PROCESSED_PIXEL_R5G6B5,
  22.     HALO_DATA_TYPE_IMAGE_BITMAP_PROCESSED_PIXEL_A1R5G5B5,
  23.     HALO_DATA_TYPE_IMAGE_BITMAP_PROCESSED_PIXEL_A4R4G4B4,
  24.     HALO_DATA_TYPE_IMAGE_BITMAP_PROCESSED_PIXEL_X8R8G8B8,
  25.     HALO_DATA_TYPE_IMAGE_BITMAP_PROCESSED_PIXEL_A8R8G8B8,
  26.     HALO_DATA_TYPE_IMAGE_BITMAP_PROCESSED_PIXEL_DXT1,
  27.     HALO_DATA_TYPE_IMAGE_BITMAP_PROCESSED_PIXEL_DXT3,
  28.     HALO_DATA_TYPE_IMAGE_BITMAP_PROCESSED_PIXEL_DXT5,
  29.     HALO_DATA_TYPE_IMAGE_BITMAP_PROCESSED_PIXEL_P8_BUMP,
  30.     HALO_DATA_TYPE_IMAGE_PNG,
  31.     HALO_DATA_TYPE_IMAGE_TIFF,
  32.     HALO_DATA_TYPE_INPUT_DEVICE_ID,
  33.     HALO_DATA_TYPE_INPUT_DEVICE_PROFILE,
  34.     HALO_DATA_TYPE_SCENARIO_EDITOR,
  35.     HALO_DATA_TYPE_SCENARIO_SCRIPT_SYNTAX,
  36.     HALO_DATA_TYPE_SCENARIO_SCRIPT,
  37.     HALO_DATA_TYPE_SCENARIO_COMMENT,
  38.     HALO_DATA_TYPE_SCENARIO_RECORDED_ANIMATION_EVENT_STREAM,
  39.     HALO_DATA_TYPE_SCENARIO_SOURCE_FILE_SOURCE,
  40.     HALO_DATA_TYPE_SHADER_METER_STENCIL_ENCODED,
  41.     HALO_DATA_TYPE_SOUND_SAMPLE_WAVE_LINEAR_PCM,
  42.     HALO_DATA_TYPE_SOUND_SAMPLE_OGG_VORBIS,
  43.     HALO_DATA_TYPE_SOUND_SAMPLE_XBOX_ADPCM,
  44.     HALO_DATA_TYPE_SOUND_SAMPLE_AIFF,
  45.     HALO_DATA_TYPE_SOUND_SAMPLE_CAF,
  46.     HALO_DATA_TYPE_SOUND_MOUTH,
  47.     HALO_DATA_TYPE_SOUND_SUBTITLE,
  48.     HALO_DATA_TYPE_SOUND_ENVIRONMENT_PAS,
  49.     HALO_DATA_TYPE_TEXT_HUD_MESSAGE,
  50.     HALO_DATA_TYPE_TEXT_STRING_REFERENCE_8BIT,
  51.     HALO_DATA_TYPE_TEXT_STRING_REFERENCE_16BIT
  52. };
  53.  
  54. enum halo_data_location_format
  55. {
  56.     HALO_DATA_LOCATION_FORMAT_UNSPECIFIED = 0,
  57.     HALO_DATA_LOCATION_FORMAT_DISK,
  58.     HALO_DATA_LOCATION_FORMAT_MEMORY,
  59.     HALO_DATA_LOCATION_FORMAT_DISK_OR_MEMORY
  60. };
  61.  
  62. enum halo_data_chew_state
  63. {
  64.     HALO_DATA_CHEW_STATE_UNSPECIFIED = 0,
  65.     HALO_DATA_CHEW_STATE_RAW,
  66.     HALO_DATA_CHEW_STATE_UNPROCESSING,
  67.     HALO_DATA_CHEW_STATE_PROCESSING,
  68.     HALO_DATA_CHEW_STATE_PROCESSED
  69. };
  70.  
  71. enum halo_file_type
  72. {
  73.     HALO_FILE_TYPE_UNSPECIFIED_BLAM = 0,
  74.     HALO_FILE_TYPE_TAG_ACTR,
  75.     HALO_FILE_TYPE_TAG_ACTV,
  76.     HALO_FILE_TYPE_TAG_ANT,
  77.     HALO_FILE_TYPE_TAG_ANTR,
  78.     HALO_FILE_TYPE_TAG_BIPD,
  79.     HALO_FILE_TYPE_TAG_BITM,
  80.     HALO_FILE_TYPE_TAG_BOOM,
  81.     HALO_FILE_TYPE_TAG_CDMG,
  82.     HALO_FILE_TYPE_TAG_COLL,
  83.     HALO_FILE_TYPE_TAG_COLO,
  84.     HALO_FILE_TYPE_TAG_CONT,
  85.     HALO_FILE_TYPE_TAG_CTRL,
  86.     HALO_FILE_TYPE_TAG_DECA,
  87.     HALO_FILE_TYPE_TAG_DELA,
  88.     HALO_FILE_TYPE_TAG_DEVC,
  89.     HALO_FILE_TYPE_TAG_DEVI,
  90.     HALO_FILE_TYPE_TAG_DOBC,
  91.     HALO_FILE_TYPE_TAG_EFFE,
  92.     HALO_FILE_TYPE_TAG_ELEC,
  93.     HALO_FILE_TYPE_TAG_EQIP,
  94.     HALO_FILE_TYPE_TAG_FLAG,
  95.     HALO_FILE_TYPE_TAG_FOG,
  96.     HALO_FILE_TYPE_TAG_FONT,
  97.     HALO_FILE_TYPE_TAG_FOOT,
  98.     HALO_FILE_TYPE_TAG_GARB,
  99.     HALO_FILE_TYPE_TAG_GLW,
  100.     HALO_FILE_TYPE_TAG_GRHI,
  101.     HALO_FILE_TYPE_TAG_HMT,
  102.     HALO_FILE_TYPE_TAG_HUDG,
  103.     HALO_FILE_TYPE_TAG_HUDN,
  104.     HALO_FILE_TYPE_TAG_ITEM,
  105.     HALO_FILE_TYPE_TAG_ITMC,
  106.     HALO_FILE_TYPE_TAG_JPT,
  107.     HALO_FILE_TYPE_TAG_LENS,
  108.     HALO_FILE_TYPE_TAG_LIFI,
  109.     HALO_FILE_TYPE_TAG_LIGH,
  110.     HALO_FILE_TYPE_TAG_LSND,
  111.     HALO_FILE_TYPE_TAG_MACH,
  112.     HALO_FILE_TYPE_TAG_MATG,
  113.     HALO_FILE_TYPE_TAG_METR,
  114.     HALO_FILE_TYPE_TAG_MGS2,
  115.     HALO_FILE_TYPE_TAG_MOD2,
  116.     HALO_FILE_TYPE_TAG_MODE,
  117.     HALO_FILE_TYPE_TAG_MPLY,
  118.     HALO_FILE_TYPE_TAG_NGPR,
  119.     HALO_FILE_TYPE_TAG_OBJE,
  120.     HALO_FILE_TYPE_TAG_PART,
  121.     HALO_FILE_TYPE_TAG_PCTL,
  122.     HALO_FILE_TYPE_TAG_PHYS,
  123.     HALO_FILE_TYPE_TAG_PLAC,
  124.     HALO_FILE_TYPE_TAG_PPHY,
  125.     HALO_FILE_TYPE_TAG_PROJ,
  126.     HALO_FILE_TYPE_TAG_RAIN,
  127.     HALO_FILE_TYPE_TAG_SBSP,
  128.     HALO_FILE_TYPE_TAG_SCEN,
  129.     HALO_FILE_TYPE_TAG_SCEX,
  130.     HALO_FILE_TYPE_TAG_SCHI,
  131.     HALO_FILE_TYPE_TAG_SCNR,
  132.     HALO_FILE_TYPE_TAG_SENV,
  133.     HALO_FILE_TYPE_TAG_SGLA,
  134.     HALO_FILE_TYPE_TAG_SHDR,
  135.     HALO_FILE_TYPE_TAG_SKY,
  136.     HALO_FILE_TYPE_TAG_SMET,
  137.     HALO_FILE_TYPE_TAG_SND,
  138.     HALO_FILE_TYPE_TAG_SNDE,
  139.     HALO_FILE_TYPE_TAG_SOSO,
  140.     HALO_FILE_TYPE_TAG_SOTR,
  141.     HALO_FILE_TYPE_TAG_SOUL,
  142.     HALO_FILE_TYPE_TAG_SPLA,
  143.     HALO_FILE_TYPE_TAG_SSCE,
  144.     HALO_FILE_TYPE_TAG_STRN,
  145.     HALO_FILE_TYPE_TAG_SWAT,
  146.     HALO_FILE_TYPE_TAG_TAGC,
  147.     HALO_FILE_TYPE_TAG_TRAK,
  148.     HALO_FILE_TYPE_TAG_UDLG,
  149.     HALO_FILE_TYPE_TAG_UNHI,
  150.     HALO_FILE_TYPE_TAG_UNIT,
  151.     HALO_FILE_TYPE_TAG_USTR,
  152.     HALO_FILE_TYPE_TAG_VCKY,
  153.     HALO_FILE_TYPE_TAG_VEHI,
  154.     HALO_FILE_TYPE_TAG_WEAP,
  155.     HALO_FILE_TYPE_TAG_WIND,
  156.     HALO_FILE_TYPE_TAG_WPHI,
  157.     HALO_FILE_TYPE_MAP_RESOURCE_BITMAPS_DEMOTRIAL,
  158.     HALO_FILE_TYPE_MAP_RESOURCE_SOUNDS_DEMOTRIAL,
  159.     HALO_FILE_TYPE_MAP_RESOURCE_BITMAPS_PC,
  160.     HALO_FILE_TYPE_MAP_RESOURCE_SOUNDS_PC,
  161.     HALO_FILE_TYPE_MAP_RESOURCE_BITMAPS_CE,
  162.     HALO_FILE_TYPE_MAP_RESOURCE_SOUNDS_CE,
  163.     HALO_FILE_TYPE_MAP_RESOURCE_LOC,
  164.     HALO_FILE_TYPE_MAP_SCENARIO_SINGLEPLAYER_DEMOTRIAL,
  165.     HALO_FILE_TYPE_MAP_SCENARIO_MULTIPLAYER_DEMOTRIAL,
  166.     HALO_FILE_TYPE_MAP_SCENARIO_USERINTERFACE_DEMOTRIAL,
  167.     HALO_FILE_TYPE_MAP_SCENARIO_SINGLEPLAYER_PC,
  168.     HALO_FILE_TYPE_MAP_SCENARIO_MULTIPLAYER_PC,
  169.     HALO_FILE_TYPE_MAP_SCENARIO_USERINTERFACE_PC,
  170.     HALO_FILE_TYPE_MAP_SCENARIO_SINGLEPLAYER_CE,
  171.     HALO_FILE_TYPE_MAP_SCENARIO_MULTIPLAYER_CE,
  172.     HALO_FILE_TYPE_MAP_SCENARIO_USERINTERFACE_CE,
  173.     HALO_FILE_TYPE_USER_DOCUMENTS_CACHE,
  174.     HALO_FILE_TYPE_GAMETYPE_PLAYLIST,
  175.     HALO_FILE_TYPE_USER_PROFILE_SAVEDGAME_LOG,
  176.     HALO_FILE_TYPE_USER_PROFILE_SAVEDGAME_SETTINGS,
  177.     HALO_FILE_TYPE_USER_PROFILE_SAVEDGAME_MEMDUMP,
  178.     HALO_FILE_TYPE_USER_PROFILE_SAVEDGAME_NAME,
  179.     HALO_FILE_TYPE_HALOCE_MAPS_CACHE
  180. };
  181.  
  182. enum halo_tag_classes
  183. {
  184.     HALO_TAG_CLASS_BLAM = 0,
  185.     HALO_TAG_CLASS_ACTR,
  186.     HALO_TAG_CLASS_ACTV,
  187.     HALO_TAG_CLASS_ANT,
  188.     HALO_TAG_CLASS_ANTR,
  189.     HALO_TAG_CLASS_BIPD,
  190.     HALO_TAG_CLASS_BITM,
  191.     HALO_TAG_CLASS_BOOM,
  192.     HALO_TAG_CLASS_CDMG,
  193.     HALO_TAG_CLASS_COLL,
  194.     HALO_TAG_CLASS_COLO,
  195.     HALO_TAG_CLASS_CONT,
  196.     HALO_TAG_CLASS_CTRL,
  197.     HALO_TAG_CLASS_DECA,
  198.     HALO_TAG_CLASS_DELA,
  199.     HALO_TAG_CLASS_DEVC,
  200.     HALO_TAG_CLASS_DEVI,
  201.     HALO_TAG_CLASS_DOBC,
  202.     HALO_TAG_CLASS_EFFE,
  203.     HALO_TAG_CLASS_ELEC,
  204.     HALO_TAG_CLASS_EQIP,
  205.     HALO_TAG_CLASS_FLAG,
  206.     HALO_TAG_CLASS_FOG,
  207.     HALO_TAG_CLASS_FONT,
  208.     HALO_TAG_CLASS_FOOT,
  209.     HALO_TAG_CLASS_GARB,
  210.     HALO_TAG_CLASS_GLW,
  211.     HALO_TAG_CLASS_GRHI,
  212.     HALO_TAG_CLASS_HMT,
  213.     HALO_TAG_CLASS_HUDG,
  214.     HALO_TAG_CLASS_HUDN,
  215.     HALO_TAG_CLASS_ITEM,
  216.     HALO_TAG_CLASS_ITMC,
  217.     HALO_TAG_CLASS_JPT,
  218.     HALO_TAG_CLASS_LENS,
  219.     HALO_TAG_CLASS_LIFI,
  220.     HALO_TAG_CLASS_LIGH,
  221.     HALO_TAG_CLASS_LSND,
  222.     HALO_TAG_CLASS_MACH,
  223.     HALO_TAG_CLASS_MATG,
  224.     HALO_TAG_CLASS_METR,
  225.     HALO_TAG_CLASS_MGS2,
  226.     HALO_TAG_CLASS_MOD2,
  227.     HALO_TAG_CLASS_MODE,
  228.     HALO_TAG_CLASS_MPLY,
  229.     HALO_TAG_CLASS_NGPR,
  230.     HALO_TAG_CLASS_OBJE,
  231.     HALO_TAG_CLASS_PART,
  232.     HALO_TAG_CLASS_PCTL,
  233.     HALO_TAG_CLASS_PHYS,
  234.     HALO_TAG_CLASS_PLAC,
  235.     HALO_TAG_CLASS_PPHY,
  236.     HALO_TAG_CLASS_PROJ,
  237.     HALO_TAG_CLASS_RAIN,
  238.     HALO_TAG_CLASS_SBSP,
  239.     HALO_TAG_CLASS_SCEN,
  240.     HALO_TAG_CLASS_SCEX,
  241.     HALO_TAG_CLASS_SCHI,
  242.     HALO_TAG_CLASS_SCNR,
  243.     HALO_TAG_CLASS_SENV,
  244.     HALO_TAG_CLASS_SGLA,
  245.     HALO_TAG_CLASS_SHDR,
  246.     HALO_TAG_CLASS_SKY,
  247.     HALO_TAG_CLASS_SMET,
  248.     HALO_TAG_CLASS_SND,
  249.     HALO_TAG_CLASS_SNDE,
  250.     HALO_TAG_CLASS_SOSO,
  251.     HALO_TAG_CLASS_SOTR,
  252.     HALO_TAG_CLASS_SOUL,
  253.     HALO_TAG_CLASS_SPLA,
  254.     HALO_TAG_CLASS_SSCE,
  255.     HALO_TAG_CLASS_STRN,
  256.     HALO_TAG_CLASS_SWAT,
  257.     HALO_TAG_CLASS_TAGC,
  258.     HALO_TAG_CLASS_TRAK,
  259.     HALO_TAG_CLASS_UDLG,
  260.     HALO_TAG_CLASS_UNHI,
  261.     HALO_TAG_CLASS_UNIT,
  262.     HALO_TAG_CLASS_USTR,
  263.     HALO_TAG_CLASS_VCKY,
  264.     HALO_TAG_CLASS_VEHI,
  265.     HALO_TAG_CLASS_WEAP,
  266.     HALO_TAG_CLASS_WIND,
  267.     HALO_TAG_CLASS_WPHI
  268. };
  269.  
  270. // Note about characters and code pages used by the HEK: The HEK uses 1-byte and 2-byte character encodings. Its 1-byte encoding is interpreted as a kind of Windows ANSI (or Windows-1252) and for labels, all characters outside ASCII printable ranges are replaced with underscores and for tpns, all characters without equivalent 1-byte code points are replaced with question marks. The font used by Guerilla appears to be LeviWindows size 18; however, that TTF basically only contains raster images for visible ASCII code points while Guerilla displays certain other non-ASCII code points and the font it uses in some way represents byte equivalency for all 1-byte code points, even though some do not render or are rendered using the 0xFF character of the font. Proper interpretation of data requires imposing the same behavior as Guerilla, and tpns should be limited to be from code points 0x00 to 0xFF. The same range limitation should apply to UTF-16 strings: 0x0000 to 0xFFFF. Guerilla also converts A-Z into a-z.
  271. /*
  272.     ENGINE_CLASS            4 bytes (fixed, no terminator) (4 characters) Like old Four-Character Codes.
  273.     TAG_CLASS               4 bytes (fixed, no terminator) (4 characters) Like old Four-Character Codes.
  274.     PROFILE_NAME            24 bytes (fixed, 11 unicode + 1 (interpreted?) unicode terminator) (1-11 characters)
  275.     PLAYLIST                Gametype name. 48 bytes (fixed, 23 unicode + 1 (interpreted?) unicode terminator) (1-23 characters)
  276.     LABEL                   32 bytes (fixed with interpreted terminator) (0-31 characters)
  277.     TPNS                    255 bytes (variable with terminator) (0-254 characters)
  278.     STRING_LIST             4096 bytes (variable ASCII or UTF-8 with terminator) (0-4095 characters)
  279.     UNICODE_STRING_LIST     32768 bytes (variable 2-byte UTF-8 with terminator) (0-16383 characters)
  280.     COMMENT                 16384 bytes (variable with terminator) (0-16383 characters; Guerilla and kornman's Guerilla multi-line text field will crash if over 8191 characters)
  281.     SCRIPT_SOURCE           262144 bytes (variable with terminator) (0-262143 characters; kornman's Guerilla multi-line text field will crash if over 8191 characters)
  282.  */
  283. enum halo_string_types
  284. {
  285.     HALO_STRING_TYPE_ENGINE_CLASS = 0,
  286.     HALO_STRING_TYPE_TAG_CLASS,
  287.     HALO_STRING_TYPE_PROFILE_NAME,
  288.     HALO_STRING_TYPE_PLAYLIST,
  289.     HALO_STRING_TYPE_LABEL,
  290.     HALO_STRING_TYPE_TPNS,
  291.     HALO_STRING_TYPE_STRING_LIST,
  292.     HALO_STRING_TYPE_UNICODE_STRING_LIST,
  293.     HALO_STRING_TYPE_COMMENT,
  294.     HALO_STRING_TYPE_SCRIPT_SOURCE
  295. };
  296.  
  297. #pragma mark tag class shared section indices
  298. // obje and shdr have type indices but these other abstract classes do not seem to use them, so they are listed separately
  299. enum halo_tag_class_shared_section_indices_devi
  300. {
  301.     HALO_TAG_CLASS_SHARED_SECTION_INDEX_DEVI,
  302.     HALO_TAG_CLASS_SHARED_SECTION_INDEX_CTRL,
  303.     HALO_TAG_CLASS_SHARED_SECTION_INDEX_LIFI,
  304.     HALO_TAG_CLASS_SHARED_SECTION_INDEX_MACH
  305. };
  306.  
  307. enum halo_tag_class_shared_section_indices_item
  308. {
  309.     HALO_TAG_CLASS_SHARED_SECTION_INDEX_ITEM,
  310.     HALO_TAG_CLASS_SHARED_SECTION_INDEX_EQIP,
  311.     HALO_TAG_CLASS_SHARED_SECTION_INDEX_GARB,
  312.     HALO_TAG_CLASS_SHARED_SECTION_INDEX_WEAP
  313. };
  314.  
  315. enum halo_tag_class_shared_section_indices_unit
  316. {
  317.     HALO_TAG_CLASS_SHARED_SECTION_INDEX_UNIT,
  318.     HALO_TAG_CLASS_SHARED_SECTION_INDEX_BIPD,
  319.     HALO_TAG_CLASS_SHARED_SECTION_INDEX_VEHI
  320. };
  321.  
  322. #pragma mark actr
  323.  
  324. enum halo_actor_types
  325. {
  326.     HALO_ACTOR_TYPE_ELITE = 0,
  327.     HALO_ACTOR_TYPE_JACKAL,
  328.     HALO_ACTOR_TYPE_GRUNT,
  329.     HALO_ACTOR_TYPE_HUNTER,
  330.     HALO_ACTOR_TYPE_ENGINEER,
  331.     HALO_ACTOR_TYPE_ASSASSIN,
  332.     HALO_ACTOR_TYPE_PLAYER,
  333.     HALO_ACTOR_TYPE_MARINE,
  334.     HALO_ACTOR_TYPE_CREW,
  335.     HALO_ACTOR_TYPE_COMBAT_FORM,
  336.     HALO_ACTOR_TYPE_INFECTION_FORM,
  337.     HALO_ACTOR_TYPE_CARRIER_FORM,
  338.     HALO_ACTOR_TYPE_MONITOR,
  339.     HALO_ACTOR_TYPE_SENTINEL,
  340.     HALO_ACTOR_TYPE_NONE,
  341.     HALO_ACTOR_TYPE_MOUNTED_WEAPON
  342. };
  343.  
  344. enum halo_danger_level_triggers
  345. {
  346.     HALO_DANGER_LEVEL_TRIGGER_NEVER = 0,
  347.     HALO_DANGER_LEVEL_TRIGGER_VISIBLE,
  348.     HALO_DANGER_LEVEL_TRIGGER_SHOOTING,
  349.     HALO_DANGER_LEVEL_TRIGGER_SHOOTING_NEAR_US,
  350.     HALO_DANGER_LEVEL_TRIGGER_DAMAGING_US,
  351.     HALO_DANGER_LEVEL_TRIGGER_UNUSED_1,
  352.     HALO_DANGER_LEVEL_TRIGGER_UNUSED_2,
  353.     HALO_DANGER_LEVEL_TRIGGER_UNUSED_3,
  354.     HALO_DANGER_LEVEL_TRIGGER_UNUSED_4,
  355.     HALO_DANGER_LEVEL_TRIGGER_UNUSED_5
  356. };
  357.  
  358. enum halo_crouch_triggers
  359. {
  360.     HALO_CROUCH_TRIGGER_NEVER = 0,
  361.     HALO_CROUCH_TRIGGER_DANGER,
  362.     HALO_CROUCH_TRIGGER_LOW_SHIELDS,
  363.     HALO_CROUCH_TRIGGER_HIDE_BEHIND_SHIELD,
  364.     HALO_CROUCH_TRIGGER_ANY_TARGET,
  365.     HALO_CROUCH_TRIGGER_FLOOD_SHAMBLE
  366. };
  367.  
  368. #pragma mark actv
  369.  
  370. enum halo_movement_types
  371. {
  372.     HALO_MOVEMENT_TYPE_ALWAYS_RUN = 0,
  373.     HALO_MOVEMENT_TYPE_ALWAYS_CROUCH,
  374.     HALO_MOVEMENT_TYPE_SWITCH_TYPES
  375. };
  376.  
  377. enum halo_special_fire_modes
  378. {
  379.     HALO_SPECIAL_FIRE_MODE_NONE = 0,
  380.     HALO_SPECIAL_FIRE_MODE_OVERCHARGE,
  381.     HALO_SPECIAL_FIRE_MODE_SECONDARY_TRIGGER
  382. };
  383.  
  384. enum halo_special_fire_situations
  385. {
  386.     HALO_SPECIAL_FIRE_SITUATION_NEVER = 0,
  387.     HALO_SPECIAL_FIRE_SITUATION_ENEMY_VISIBLE,
  388.     HALO_SPECIAL_FIRE_SITUATION_ENEMY_OUT_OF_SIGHT,
  389.     HALO_SPECIAL_FIRE_SITUATION_STRAFING
  390. };
  391.  
  392. enum halo_grenade_types
  393. {
  394.     HALO_GRENADE_TYPE_HUMAN_FRAGMENTATION = 0,
  395.     HALO_GRENADE_TYPE_COVENANT_PLASMA
  396. };
  397.  
  398. enum halo_grenade_trajectory_types
  399. {
  400.     HALO_TRAJECTORY_TYPE_TOSS = 0,
  401.     HALO_TRAJECTORY_TYPE_LOB,
  402.     HALO_TRAJECTORY_TYPE_BOUNCE
  403. };
  404.  
  405. enum halo_grenade_stimuli
  406. {
  407.     HALO_GRENADE_STIMULUS_NEVER = 0,
  408.     HALO_GRENADE_STIMULUS_VISIBLE_TARGET,
  409.     HALO_GRENADE_STIMULUS_SEEK_COVER
  410. };
  411.  
  412. #pragma mark antr
  413.  
  414. enum halo_animation_out_functions
  415. {
  416.     HALO_OUT_FUNCTION_A_OUT = 0,
  417.     HALO_OUT_FUNCTION_B_OUT,
  418.     HALO_OUT_FUNCTION_C_OUT,
  419.     HALO_OUT_FUNCTION_D_OUT
  420. };
  421.  
  422. enum halo_animation_function_control_types
  423. {
  424.     HALO_ANIMATION_FUNCTION_CONTROLS_FRAME = 0,
  425.     HALO_ANIMATION_FUNCTION_CONTROLS_SCALE
  426. };
  427.  
  428. enum halo_animation_types
  429. {
  430.     HALO_ANIMATION_TYPE_BASE = 0,
  431.     HALO_ANIMATION_TYPE_OVERLAY,
  432.     HALO_ANIMATION_TYPE_REPLACEMENT
  433. };
  434.  
  435. enum halo_animation_frame_info_types
  436. {
  437.     HALO_ANIMATION_FRAME_INFO_TYPE_NONE = 0,
  438.     HALO_ANIMATION_FRAME_INFO_TYPE_DX_DY,
  439.     HALO_ANIMATION_FRAME_INFO_TYPE_DX_DY_DYAW,
  440.     HALO_ANIMATION_FRAME_INFO_TYPE_DX_DY_DZ_DYAW
  441. };
  442.  
  443. #pragma mark bipd
  444.  
  445. enum halo_bipd_channel_functions
  446. {
  447.     HALO_BIPD_CHANNEL_FUNCTION_NONE = 0,
  448.     HALO_BIPD_CHANNEL_FUNCTION_FLYING_VELOCITY
  449. };
  450.  
  451. #pragma mark bitm
  452.  
  453. enum halo_bitm_geometry_types
  454. {
  455.     HALO_BITM_GEOMETRY_TYPE_2D_TEXTURES = 0,
  456.     HALO_BITM_GEOMETRY_TYPE_3D_TEXTURES,
  457.     HALO_BITM_GEOMETRY_TYPE_CUBE_MAPS,
  458.     HALO_BITM_GEOMETRY_TYPE_SPRITES,
  459.     HALO_BITM_GEOMETRY_TYPE_INTERFACE_BITMAPS
  460. };
  461.  
  462. enum halo_bitm_storage_formats
  463. {
  464.     HALO_BITM_STORAGE_FORMAT_COMPRESSED_WITH_COLOR_KEY_TRANSPARENCY = 0,
  465.     HALO_BITM_STORAGE_FORMAT_COMPRESSED_WITH_EXPLICIT_ALPHA,
  466.     HALO_BITM_STORAGE_FORMAT_COMPRESSED_WITH_INTERPOLATED_ALPHA,
  467.     HALO_BITM_STORAGE_FORMAT_COLOR_16_BIT,
  468.     HALO_BITM_STORAGE_FORMAT_COLOR_32_BIT,
  469.     HALO_BITM_STORAGE_FORMAT_MONOCHROME
  470. };
  471.  
  472. enum halo_bitm_mipmap_usages
  473. {
  474.     HALO_BITM_MIPMAP_USAGE_ALPHA_BLEND = 0,
  475.     HALO_BITM_MIPMAP_USAGE_DEFAULT,
  476.     HALO_BITM_MIPMAP_USAGE_HEIGHT_MAP,
  477.     HALO_BITM_MIPMAP_USAGE_DETAIL_MAP,
  478.     HALO_BITM_MIPMAP_USAGE_LIGHT_MAP,
  479.     HALO_BITM_MIPMAP_USAGE_VECTOR_MAP
  480. };
  481.  
  482. enum halo_bitm_sprite_budget_sizes
  483. {
  484.     HALO_BITM_SPRITE_BUDGET_SIZE_32X32 = 0,
  485.     HALO_BITM_SPRITE_BUDGET_SIZE_64X64,
  486.     HALO_BITM_SPRITE_BUDGET_SIZE_128X128,
  487.     HALO_BITM_SPRITE_BUDGET_SIZE_256X256,
  488.     HALO_BITM_SPRITE_BUDGET_SIZE_512X512
  489. };
  490.  
  491. enum halo_bitm_sprite_usages
  492. {
  493.     HALO_BITM_SPRITE_USAGE_BLEND_ADD_SUBTRACT_MAX = 0,
  494.     HALO_BITM_SPRITE_USAGE_MULTIPLY_MIN,
  495.     HALO_BITM_SPRITE_USAGE_DOUBLE_MULTIPLY
  496. };
  497.  
  498. enum halo_bitm_image_types
  499. {
  500.     HALO_BITM_IMAGE_TYPE_2D_TEXTURE = 0,
  501.     HALO_BITM_IMAGE_TYPE_3D_TEXTURE,
  502.     HALO_BITM_IMAGE_TYPE_CUBE_MAP,
  503.     HALO_BITM_IMAGE_TYPE_WHITE
  504. };
  505.  
  506. enum halo_bitm_image_data_formats
  507. {
  508.     HALO_BITM_IMAGE_DATA_FORMAT_A8 = 0,
  509.     HALO_BITM_IMAGE_DATA_FORMAT_Y8,
  510.     HALO_BITM_IMAGE_DATA_FORMAT_AY8,
  511.     HALO_BITM_IMAGE_DATA_FORMAT_A8Y8,
  512.     HALO_BITM_IMAGE_DATA_FORMAT_UNUSED1,
  513.     HALO_BITM_IMAGE_DATA_FORMAT_UNUSED2,
  514.     HALO_BITM_IMAGE_DATA_FORMAT_R5G6B5,
  515.     HALO_BITM_IMAGE_DATA_FORMAT_UNUSED3,
  516.     HALO_BITM_IMAGE_DATA_FORMAT_A1R5G5B5,
  517.     HALO_BITM_IMAGE_DATA_FORMAT_A4R4G4B4,
  518.     HALO_BITM_IMAGE_DATA_FORMAT_X8R8G8B8,
  519.     HALO_BITM_IMAGE_DATA_FORMAT_A8R8G8B8,
  520.     HALO_BITM_IMAGE_DATA_FORMAT_UNUSED4,
  521.     HALO_BITM_IMAGE_DATA_FORMAT_UNUSED5,
  522.     HALO_BITM_IMAGE_DATA_FORMAT_DXT1,
  523.     HALO_BITM_IMAGE_DATA_FORMAT_DXT3,
  524.     HALO_BITM_IMAGE_DATA_FORMAT_DXT5,
  525.     HALO_BITM_IMAGE_DATA_FORMAT_P8_BUMP
  526. };
  527.  
  528. #pragma mark cdmg
  529.  
  530. enum halo_damage_side_effects
  531. {
  532.     HALO_DAMAGE_SIDE_EFFECT_NONE = 0,
  533.     HALO_DAMAGE_SIDE_EFFECT_HARMLESS,
  534.     HALO_DAMAGE_SIDE_EFFECT_LETHAL_TO_THE_UNSUSPECTING,
  535.     HALO_DAMAGE_SIDE_EFFECT_EMP
  536. };
  537.  
  538. enum halo_damage_categories
  539. {
  540.     HALO_DAMAGE_CATEGORY_NONE = 0,
  541.     HALO_DAMAGE_CATEGORY_FALLING,
  542.     HALO_DAMAGE_CATEGORY_BULLET,
  543.     HALO_DAMAGE_CATEGORY_GRENADE,
  544.     HALO_DAMAGE_CATEGORY_HIGH_EXPLOSIVE,
  545.     HALO_DAMAGE_CATEGORY_SNIPER,
  546.     HALO_DAMAGE_CATEGORY_MELEE,
  547.     HALO_DAMAGE_CATEGORY_FLAME,
  548.     HALO_DAMAGE_CATEGORY_MOUNTED_WEAPON,
  549.     HALO_DAMAGE_CATEGORY_VEHICLE,
  550.     HALO_DAMAGE_CATEGORY_PLASMA,
  551.     HALO_DAMAGE_CATEGORY_NEEDLE,
  552.     HALO_DAMAGE_CATEGORY_SHOTGUN
  553. };
  554.  
  555. #pragma mark coll
  556.  
  557. enum halo_material_types
  558. {
  559.     HALO_MATERIAL_TYPE_DIRT = 0,
  560.     HALO_MATERIAL_TYPE_SAND,
  561.     HALO_MATERIAL_TYPE_STONE,
  562.     HALO_MATERIAL_TYPE_SNOW,
  563.     HALO_MATERIAL_TYPE_WOOD,
  564.     HALO_MATERIAL_TYPE_METAL_HOLLOW,
  565.     HALO_MATERIAL_TYPE_METAL_THIN,
  566.     HALO_MATERIAL_TYPE_METAL_THICK,
  567.     HALO_MATERIAL_TYPE_RUBBER,
  568.     HALO_MATERIAL_TYPE_GLASS,
  569.     HALO_MATERIAL_TYPE_FORCE_FIELD,
  570.     HALO_MATERIAL_TYPE_GRUNT,
  571.     HALO_MATERIAL_TYPE_HUNTER_ARMOR,
  572.     HALO_MATERIAL_TYPE_HUNTER_SKIN,
  573.     HALO_MATERIAL_TYPE_ELITE,
  574.     HALO_MATERIAL_TYPE_JACKAL,
  575.     HALO_MATERIAL_TYPE_JACKAL_ENERGY_SHIELD,
  576.     HALO_MATERIAL_TYPE_ENGINEER_SKIN,
  577.     HALO_MATERIAL_TYPE_ENGINEER_FORCE_FIELD,
  578.     HALO_MATERIAL_TYPE_FLOOD_COMBAT_FORM,
  579.     HALO_MATERIAL_TYPE_FLOOD_CARRIER_FORM,
  580.     HALO_MATERIAL_TYPE_CYBORG_ARMOR,
  581.     HALO_MATERIAL_TYPE_CYBORG_ENERGY_SHIELD,
  582.     HALO_MATERIAL_TYPE_HUMAN_ARMOR,
  583.     HALO_MATERIAL_TYPE_HUMAN_SKIN,
  584.     HALO_MATERIAL_TYPE_SENTINEL,
  585.     HALO_MATERIAL_TYPE_MONITOR,
  586.     HALO_MATERIAL_TYPE_PLASTIC,
  587.     HALO_MATERIAL_TYPE_WATER,
  588.     HALO_MATERIAL_TYPE_LEAVES,
  589.     HALO_MATERIAL_TYPE_ELITE_ENERGY_SHIELD,
  590.     HALO_MATERIAL_TYPE_ICE,
  591.     HALO_MATERIAL_TYPE_HUNTER_SHIELD
  592. };
  593.  
  594. #pragma mark cont
  595.  
  596. enum halo_cont_render_types
  597. {
  598.     HALO_CONT_RENDER_TYPE_VERTICAL_ORIENTATION = 0,
  599.     HALO_CONT_RENDER_TYPE_HORIZONTAL_ORIENTATION,
  600.     HALO_CONT_RENDER_TYPE_MEDIA_MAPPED,
  601.     HALO_CONT_RENDER_TYPE_GROUND_MAPPED,
  602.     HALO_CONT_RENDER_TYPE_VIEWER_FACING,
  603.     HALO_CONT_RENDER_TYPE_DOUBLE_MARKER_LINKED
  604. };
  605.  
  606. enum halo_framebuffer_blend_functions
  607. {
  608.     HALO_FRAMEBUFFER_BLEND_FUNCTION_ALPHA_BLEND = 0,
  609.     HALO_FRAMEBUFFER_BLEND_FUNCTION_MULTIPLY,
  610.     HALO_FRAMEBUFFER_BLEND_FUNCTION_DOUBLE_MULTIPLY,
  611.     HALO_FRAMEBUFFER_BLEND_FUNCTION_ADD,
  612.     HALO_FRAMEBUFFER_BLEND_FUNCTION_SUBTRACT,
  613.     HALO_FRAMEBUFFER_BLEND_FUNCTION_COMPONENT_MIN,
  614.     HALO_FRAMEBUFFER_BLEND_FUNCTION_COMPONENT_MAX,
  615.     HALO_FRAMEBUFFER_BLEND_FUNCTION_ALPHA_MULTIPLY_ADD
  616. };
  617.  
  618. enum halo_framebuffer_fade_modes
  619. {
  620.     HALO_FRAMEBUFFER_FADE_MODE_NONE = 0,
  621.     HALO_FRAMEBUFFER_FADE_MODE_FADE_WHEN_PERPENDICULAR,
  622.     HALO_FRAMEBUFFER_FADE_MODE_FADE_WHEN_PARALLEL
  623. };
  624.  
  625. enum halo_multitexture_map_anchors
  626. {
  627.     HALO_MULTITEXTURE_MAP_ANCHOR_WITH_PRIMARY = 0,
  628.     HALO_MULTITEXTURE_MAP_ANCHOR_WITH_SCREEN_SPACE,
  629.     HALO_MULTITEXTURE_MAP_ANCHOR_ZSPRITE
  630. };
  631.  
  632. #pragma mark ctrl
  633.  
  634. enum halo_ctrl_types
  635. {
  636.     HALO_CTRL_TYPE_TOGGLE_SWITCH = 0,
  637.     HALO_CTRL_TYPE_ON_BUTTON,
  638.     HALO_CTRL_TYPE_OFF_BUTTON,
  639.     HALO_CTRL_TYPE_CALL_BUTTON
  640. };
  641.  
  642. enum halo_ctrl_trigger_events
  643. {
  644.     HALO_CTRL_TRIGGER_EVENT_TOUCHED_BY_PLAYER = 0,
  645.     HALO_CTRL_TRIGGER_EVENT_DESTROYED
  646. };
  647.  
  648. #pragma mark deca
  649.  
  650. enum halo_deca_geometry_wrap_types
  651. {
  652.     HALO_DECA_GEOMETRY_WRAP_TYPE_SCRATCH = 0,
  653.     HALO_DECA_GEOMETRY_WRAP_TYPE_SPLATTER,
  654.     HALO_DECA_GEOMETRY_WRAP_TYPE_BURN,
  655.     HALO_DECA_GEOMETRY_WRAP_TYPE_PAINTED_SIGN
  656. };
  657.  
  658. enum halo_deca_layers
  659. {
  660.     HALO_DECA_LAYER_PRIMARY = 0,
  661.     HALO_DECA_LAYER_SECONDARY,
  662.     HALO_DECA_LAYER_LIGHT,
  663.     HALO_DECA_LAYER_ALPHA_TESTED,
  664.     HALO_DECA_LAYER_WATER
  665. };
  666.  
  667. #pragma mark DeLa#pragma mark devc
  668.  
  669. enum halo_device_types
  670. {
  671.     HALO_DEVICE_TYPE_MOUSE_AND_KEYBOARD = 0,
  672.     HALO_DEVICE_TYPE_JOYSTICKS_GAMEPADS_ETC,
  673.     HALO_DEVICE_TYPE_FULL_PROFILE_DEFINITION
  674. };
  675.  
  676. #pragma mark devi
  677.  
  678. enum halo_devi_channel_usages
  679. {
  680.     HALO_DEVI_CHANNEL_USAGE_NONE = 0,
  681.     HALO_DEVI_CHANNEL_USAGE_POWER,
  682.     HALO_DEVI_CHANNEL_USAGE_CHANGE_IN_POWER,
  683.     HALO_DEVI_CHANNEL_USAGE_POSITION,
  684.     HALO_DEVI_CHANNEL_USAGE_CHANGE_IN_POSITION,
  685.     HALO_DEVI_CHANNEL_USAGE_LOCKED,
  686.     HALO_DEVI_CHANNEL_USAGE_DELAY
  687. };
  688.  
  689. #pragma mark dobc
  690.  
  691. enum halo_dobc_collection_types
  692. {
  693.     HALO_DOBC_COLLECTION_TYPE_SCREEN_FACING = 0,
  694.     HALO_DOBC_COLLECTION_TYPE_VIEWER_FACING
  695. };
  696.  
  697. #pragma mark effe
  698.  
  699. enum halo_environment_media
  700. {
  701.     HALO_ENVIRONMENT_MEDIUM_ANY_ENVIRONMENT = 0,
  702.     HALO_ENVIRONMENT_MEDIUM_AIR_ONLY,
  703.     HALO_ENVIRONMENT_MEDIUM_WATER_ONLY,
  704.     HALO_ENVIRONMENT_MEDIUM_SPACE_ONLY
  705. };
  706.  
  707. enum halo_environment_violence_modes
  708. {
  709.     HALO_ENVIRONMENT_VIOLENCE_MODE_EITHER_MODE = 0,
  710.     HALO_ENVIRONMENT_VIOLENCE_MODE_VIOLENT_MODE_ONLY,
  711.     HALO_ENVIRONMENT_VIOLENCE_MODE_NONVIOLENT_MODE_ONLY
  712. };
  713.  
  714. enum halo_environment_camera_modes
  715. {
  716.     HALO_ENVIRONMENT_CAMERA_MODE_INDEPENDENT_OF_CAMERA_MODE = 0,
  717.     HALO_ENVIRONMENT_CAMERA_MODE_ONLY_IN_FIRST_PERSON,
  718.     HALO_ENVIRONMENT_CAMERA_MODE_ONLY_IN_THIRD_PERSON,
  719.     HALO_ENVIRONMENT_CAMERA_MODE_IN_FIRST_PERSON_IF_POSSIBLE
  720. };
  721.  
  722. enum halo_distribution_functions
  723. {
  724.     HALO_DISTRIBUTION_FUNCTION_START = 0,
  725.     HALO_DISTRIBUTION_FUNCTION_END,
  726.     HALO_DISTRIBUTION_FUNCTION_CONSTANT,
  727.     HALO_DISTRIBUTION_FUNCTION_BUILDUP,
  728.     HALO_DISTRIBUTION_FUNCTION_FALLOFF,
  729.     HALO_DISTRIBUTION_FUNCTION_BUILDUP_AND_FALLOFF
  730. };
  731.  
  732. #pragma mark eqip
  733.  
  734. enum halo_powerup_types
  735. {
  736.     HALO_POWERUP_TYPE_NONE = 0,
  737.     HALO_POWERUP_TYPE_DOUBLE_SPEED,
  738.     HALO_POWERUP_TYPE_OVER_SHIELD,
  739.     HALO_POWERUP_TYPE_ACTIVE_CAMOUFLAGE,
  740.     HALO_POWERUP_TYPE_FULL_SPECTRUM_VISION,
  741.     HALO_POWERUP_TYPE_HEALTH,
  742.     HALO_POWERUP_TYPE_GRENADE
  743. };
  744.  
  745. #pragma mark flag
  746.  
  747. enum halo_flag_trailing_edge_shapes
  748. {
  749.     HALO_FLAG_TRAILING_EDGE_SHAPE_FLAT = 0,
  750.     HALO_FLAG_TRAILING_EDGE_SHAPE_CONCAVE_TRIANGULAR,
  751.     HALO_FLAG_TRAILING_EDGE_SHAPE_CONVEX_TRIANGULAR,
  752.     HALO_FLAG_TRAILING_EDGE_SHAPE_TRAPEZOID_SHORT_TOP,
  753.     HALO_FLAG_TRAILING_EDGE_SHAPE_TRAPEZOID_SHORT_BOTTOM
  754. };
  755.  
  756. enum halo_flag_attached_edge_shapes
  757. {
  758.     HALO_FLAG_ATTACHED_EDGE_SHAPE_FLAT = 0,
  759.     HALO_FLAG_ATTACHED_EDGE_SHAPE_CONCAVE_TRIANGULAR
  760. };
  761.  
  762. #pragma mark glw!
  763.  
  764. enum halo_boundary_effects
  765. {
  766.     HALO_BOUNDARY_EFFECT_BOUNCE = 0,
  767.     HALO_BOUNDARY_EFFECT_WRAP
  768. };
  769.  
  770. enum halo_particle_distributions
  771. {
  772.     HALO_PARTICLE_DISTRIBUTION_DISTRIBUTED_RANDOMLY = 0,
  773.     HALO_PARTICLE_DISTRIBUTION_DISTRIBUTED_UNIFORMLY
  774. };
  775.  
  776. enum halo_particle_emissions
  777. {
  778.     HALO_PARTICLE_EMISSION_EMIT_VERTICALLY = 0,
  779.     HALO_PARTICLE_EMISSION_EMIT_NORMAL_UP,
  780.     HALO_PARTICLE_EMISSION_EMIT_RANDOMLY
  781. };
  782.  
  783. #pragma mark grhi
  784.  
  785. enum halo_positional_alignment_anchors
  786. {
  787.     HALO_POSITIONAL_ALIGNMENT_ANCHOR_TOP_LEFT = 0,
  788.     HALO_POSITIONAL_ALIGNMENT_ANCHOR_TOP_RIGHT,
  789.     HALO_POSITIONAL_ALIGNMENT_ANCHOR_BOTTOM_LEFT,
  790.     HALO_POSITIONAL_ALIGNMENT_ANCHOR_BOTTOM_RIGHT,
  791.     HALO_POSITIONAL_ALIGNMENT_ANCHOR_CENTER
  792. };
  793.  
  794. enum halo_relational_anchors
  795. {
  796.     HALO_RELATIONAL_ANCHOR_TEXTURE = 0,
  797.     HALO_RELATIONAL_ANCHOR_SCREEN
  798. };
  799.  
  800. enum halo_texture_blending_functions
  801. {
  802.     HALO_TEXTURE_BLENDING_FUNCTION_ADD = 0,
  803.     HALO_TEXTURE_BLENDING_FUNCTION_SUBTRACT,
  804.     HALO_TEXTURE_BLENDING_FUNCTION_MULTIPLY,
  805.     HALO_TEXTURE_BLENDING_FUNCTION_MULTIPLY2X,
  806.     HALO_TEXTURE_BLENDING_FUNCTION_DOT
  807. };
  808.  
  809. enum halo_texture_wrap_modes
  810. {
  811.     HALO_TEXTURE_WRAP_MODE_CLAMP = 0,
  812.     HALO_TEXTURE_WRAP_MODE_WRAP
  813. };
  814.  
  815. enum halo_effectors_destination_variable_types
  816. {
  817.     HALO_EFFECTORS_DESTINATION_VARIABLE_TYPE_TINT_0_1 = 0,
  818.     HALO_EFFECTORS_DESTINATION_VARIABLE_TYPE_HORIZONTAL_OFFSET,
  819.     HALO_EFFECTORS_DESTINATION_VARIABLE_TYPE_VERTICAL_OFFSET,
  820.     HALO_EFFECTORS_DESTINATION_VARIABLE_TYPE_FADE_0_1
  821. };
  822.  
  823. enum halo_effectors_application_destinations
  824. {
  825.     HALO_EFFECTORS_APPLICATION_DESTINATION_GEOMETRY_OFFSET = 0,
  826.     HALO_EFFECTORS_APPLICATION_DESTINATION_PRIMARY_MAP,
  827.     HALO_EFFECTORS_APPLICATION_DESTINATION_SECONDARY_MAP,
  828.     HALO_EFFECTORS_APPLICATION_DESTINATION_TERTIARY_MAP
  829. };
  830.  
  831. enum halo_effectors_sources
  832. {
  833.     HALO_EFFECTORS_SOURCE_PLAYER_PITCH = 0,
  834.     HALO_EFFECTORS_SOURCE_PLAYER_PITCH_TANGENT,
  835.     HALO_EFFECTORS_SOURCE_PLAYER_YAW,
  836.     HALO_EFFECTORS_SOURCE_WEAPON_AMMO_TOTAL,
  837.     HALO_EFFECTORS_SOURCE_WEAPON_AMMO_LOADED,
  838.     HALO_EFFECTORS_SOURCE_WEAPON_HEAT,
  839.     HALO_EFFECTORS_SOURCE_EXPLICIT_USES_LOW_BOUND,
  840.     HALO_EFFECTORS_SOURCE_WEAPON_ZOOM_LEVEL
  841. };
  842.  
  843. #pragma mark item
  844.  
  845. enum halo_nones
  846. {
  847.     HALO_NONE = 0
  848. };
  849.  
  850. #pragma mark jpt!
  851.  
  852. enum halo_screen_flash_types
  853. {
  854.     HALO_SCREEN_FLASH_TYPE_NONE = 0,
  855.     HALO_SCREEN_FLASH_TYPE_LIGHTEN,
  856.     HALO_SCREEN_FLASH_TYPE_DARKEN,
  857.     HALO_SCREEN_FLASH_TYPE_MAX,
  858.     HALO_SCREEN_FLASH_TYPE_MIN,
  859.     HALO_SCREEN_FLASH_TYPE_INVERT,
  860.     HALO_SCREEN_FLASH_TYPE_TINT
  861. };
  862.  
  863. enum halo_priorities
  864. {
  865.     HALO_PRIORITY_LOW = 0,
  866.     HALO_PRIORITY_MEDIUM,
  867.     HALO_PRIORITY_HIGH
  868. };
  869.  
  870. #pragma mark lens
  871.  
  872. enum halo_relative_rendering_directions
  873. {
  874.     HALO_RELATIVE_RENDERING_DIRECTION_TOWARD_VIEWER = 0,
  875.     HALO_RELATIVE_RENDERING_DIRECTION_MARKER_FORWARD,
  876.     HALO_RELATIVE_RENDERING_DIRECTION_NONE
  877. };
  878.  
  879. enum halo_relative_angular_rotation_functions
  880. {
  881.     HALO_RELATIVE_ANGULAR_ROTATION_FUNCTION_NONE = 0,
  882.     HALO_RELATIVE_ANGULAR_ROTATION_FUNCTION_ROTATION_A,
  883.     HALO_RELATIVE_ANGULAR_ROTATION_FUNCTION_ROTATION_B,
  884.     HALO_RELATIVE_ANGULAR_ROTATION_FUNCTION_ROTATION_TRANSLATION,
  885.     HALO_RELATIVE_ANGULAR_ROTATION_FUNCTION_TRANSLATION
  886. };
  887.  
  888. enum halo_reflection_scaling_associations
  889. {
  890.     HALO_REFLECTION_SCALING_ASSOCIATION_NONE = 0,
  891.     HALO_REFLECTION_SCALING_ASSOCIATION_ROTATION,
  892.     HALO_REFLECTION_SCALING_ASSOCIATION_ROTATION_AND_STRAFING,
  893.     HALO_REFLECTION_SCALING_ASSOCIATION_DISTANCE_FROM_CENTER
  894. };
  895.  
  896. #pragma mark mach
  897.  
  898. enum halo_mach_machine_types
  899. {
  900.     HALO_MACH_MACHINE_TYPE_DOOR = 0,
  901.     HALO_MACH_MACHINE_TYPE_PLATFORM,
  902.     HALO_MACH_MACHINE_TYPE_GEAR
  903. };
  904.  
  905. enum halo_mach_collision_responses
  906. {
  907.     HALO_MACH_COLLISION_RESPONSE_PAUSE_UNTIL_CRUSHED = 0,
  908.     HALO_MACH_COLLISION_RESPONSE_REVERSE_DIRECTIONS
  909. };
  910.  
  911. #pragma mark metr
  912.  
  913. enum halo_metr_color_interpolations
  914. {
  915.     HALO_METR_COLOR_INTERPOLATION_LINEARLY = 0,
  916.     HALO_METR_COLOR_INTERPOLATION_FASTER_NEAR_EMPTY,
  917.     HALO_METR_COLOR_INTERPOLATION_FASTER_NEAR_FULL,
  918.     HALO_METR_COLOR_INTERPOLATION_THROUGH_RANDOM_NOISE
  919. };
  920.  
  921. enum halo_metr_color_anchors
  922. {
  923.     HALO_METR_COLOR_ANCHOR_AT_BOTH_ENDS = 0,
  924.     HALO_METR_COLOR_ANCHOR_AT_EMPTY,
  925.     HALO_METR_COLOR_ANCHOR_AT_FULL
  926. };
  927.  
  928. #pragma mark obje
  929.  
  930. enum halo_obje_types
  931. {
  932.     HALO_OBJE_TYPE_OBJE = -1,
  933.     HALO_OBJE_TYPE_BIPD,
  934.     HALO_OBJE_TYPE_VEHI,
  935.     HALO_OBJE_TYPE_WEAP,
  936.     HALO_OBJE_TYPE_EQIP,
  937.     HALO_OBJE_TYPE_GARB,
  938.     HALO_OBJE_TYPE_PROJ,
  939.     HALO_OBJE_TYPE_SCEN,
  940.     HALO_OBJE_TYPE_MACH,
  941.     HALO_OBJE_TYPE_CTRL,
  942.     HALO_OBJE_TYPE_LIFI,
  943.     HALO_OBJE_TYPE_PLAC,
  944.     HALO_OBJE_TYPE_SSCE
  945. };
  946.  
  947. enum halo_obje_export_to_functions
  948. {
  949.     HALO_OBJE_EXPORT_TO_FUNCTION_NONE = 0,
  950.     HALO_OBJE_EXPORT_TO_FUNCTION_BODY_VITALITY,
  951.     HALO_OBJE_EXPORT_TO_FUNCTION_SHIELD_VITALITY,
  952.     HALO_OBJE_EXPORT_TO_FUNCTION_RECENT_BODY_DAMAGE,
  953.     HALO_OBJE_EXPORT_TO_FUNCTION_RECENT_SHIELD_DAMAGE,
  954.     HALO_OBJE_EXPORT_TO_FUNCTION_RANDOM_CONSTANT,
  955.     HALO_OBJE_EXPORT_TO_FUNCTION_UMBRELLA_SHIELD_VITALITY,
  956.     HALO_OBJE_EXPORT_TO_FUNCTION_SHIELD_STUN,
  957.     HALO_OBJE_EXPORT_TO_FUNCTION_RECENT_UMBRELLA_SHIELD_VITALITY,
  958.     HALO_OBJE_EXPORT_TO_FUNCTION_UMBRELLA_SHIELD_STUN,
  959.     HALO_OBJE_EXPORT_TO_FUNCTION_REGION_00_DAMAGE,
  960.     HALO_OBJE_EXPORT_TO_FUNCTION_REGION_01_DAMAGE,
  961.     HALO_OBJE_EXPORT_TO_FUNCTION_REGION_02_DAMAGE,
  962.     HALO_OBJE_EXPORT_TO_FUNCTION_REGION_03_DAMAGE,
  963.     HALO_OBJE_EXPORT_TO_FUNCTION_REGION_04_DAMAGE,
  964.     HALO_OBJE_EXPORT_TO_FUNCTION_REGION_05_DAMAGE,
  965.     HALO_OBJE_EXPORT_TO_FUNCTION_REGION_06_DAMAGE,
  966.     HALO_OBJE_EXPORT_TO_FUNCTION_REGION_07_DAMAGE,
  967.     HALO_OBJE_EXPORT_TO_FUNCTION_ALIVE,
  968.     HALO_OBJE_EXPORT_TO_FUNCTION_COMPASS
  969. };
  970.  
  971. enum halo_function_channel_types
  972. {
  973.     HALO_FUNCTION_CHANNEL_TYPE_NONE = 0,
  974.     HALO_FUNCTION_CHANNEL_TYPE_A,
  975.     HALO_FUNCTION_CHANNEL_TYPE_B,
  976.     HALO_FUNCTION_CHANNEL_TYPE_C,
  977.     HALO_FUNCTION_CHANNEL_TYPE_D
  978. };
  979.  
  980. enum halo_function_out_channels
  981. {
  982.     HALO_FUNCTION_OUT_CHANNEL_NONE = 0,
  983.     HALO_FUNCTION_OUT_CHANNEL_A_OUT,
  984.     HALO_FUNCTION_OUT_CHANNEL_B_OUT,
  985.     HALO_FUNCTION_OUT_CHANNEL_C_OUT,
  986.     HALO_FUNCTION_OUT_CHANNEL_D_OUT
  987. };
  988.  
  989. enum halo_function_in_out_channels
  990. {
  991.     HALO_FUNCTION_IN_OUT_CHANNEL_NONE = 0,
  992.     HALO_FUNCTION_IN_OUT_CHANNEL_A_IN,
  993.     HALO_FUNCTION_IN_OUT_CHANNEL_B_IN,
  994.     HALO_FUNCTION_IN_OUT_CHANNEL_C_IN,
  995.     HALO_FUNCTION_IN_OUT_CHANNEL_D_IN,
  996.     HALO_FUNCTION_IN_OUT_CHANNEL_A_OUT,
  997.     HALO_FUNCTION_IN_OUT_CHANNEL_B_OUT,
  998.     HALO_FUNCTION_IN_OUT_CHANNEL_C_OUT,
  999.     HALO_FUNCTION_IN_OUT_CHANNEL_D_OUT
  1000. };
  1001.  
  1002. enum halo_function_behaviors
  1003. {
  1004.     HALO_FUNCTION_BEHAVIOR_ONE = 0,
  1005.     HALO_FUNCTION_BEHAVIOR_ZERO,
  1006.     HALO_FUNCTION_BEHAVIOR_COSINE,
  1007.     HALO_FUNCTION_BEHAVIOR_COSINE_VARIABLE_PERIOD,
  1008.     HALO_FUNCTION_BEHAVIOR_DIAGONAL_WAVE,
  1009.     HALO_FUNCTION_BEHAVIOR_DIAGONAL_WAVE_VARIABLE_PERIOD,
  1010.     HALO_FUNCTION_BEHAVIOR_SLIDE,
  1011.     HALO_FUNCTION_BEHAVIOR_SLIDE_VARIABLE_PERIOD,
  1012.     HALO_FUNCTION_BEHAVIOR_NOISE,
  1013.     HALO_FUNCTION_BEHAVIOR_JITTER,
  1014.     HALO_FUNCTION_BEHAVIOR_WANDER,
  1015.     HALO_FUNCTION_BEHAVIOR_SPARK
  1016. };
  1017.  
  1018. enum halo_function_mappings
  1019. {
  1020.     HALO_FUNCTION_MAPPING_LINEAR = 0,
  1021.     HALO_FUNCTION_MAPPING_EARLY,
  1022.     HALO_FUNCTION_MAPPING_VERY_EARLY,
  1023.     HALO_FUNCTION_MAPPING_LATE,
  1024.     HALO_FUNCTION_MAPPING_VERY_LATE,
  1025.     HALO_FUNCTION_MAPPING_COSINE
  1026. };
  1027.  
  1028. enum halo_function_bounds
  1029. {
  1030.     HALO_FUNCTION_BOUND_CLIP = 0,
  1031.     HALO_FUNCTION_BOUND_CLIP_AND_NORMALIZE,
  1032.     HALO_FUNCTION_BOUND_SCALE_TO_FIT
  1033. };
  1034.  
  1035. enum halo_resource_types
  1036. {
  1037.     HALO_RESOURCE_TYPE_BITMAP = 0,
  1038.     HALO_RESOURCE_TYPE_SOUND
  1039. };
  1040.  
  1041. #pragma mark part
  1042.  
  1043. enum halo_render_orientations
  1044. {
  1045.     HALO_RENDER_ORIENTATION_SCREEN_FACING = 0,
  1046.     HALO_RENDER_ORIENTATION_PARALLEL_TO_DIRECTION,
  1047.     HALO_RENDER_ORIENTATION_PERPENDICULAR_TO_DIRECTION
  1048. };
  1049.  
  1050. #pragma mark pctl
  1051.  
  1052. enum halo_pctl_system_origin_update_physics_behaviors
  1053. {
  1054.     HALO_PCTL_SYSTEM_ORIGIN_UPDATE_PHYSICS_BEHAVIOR_DEFAULT = 0,
  1055.     HALO_PCTL_SYSTEM_ORIGIN_UPDATE_PHYSICS_BEHAVIOR_EXPLOSION
  1056. };
  1057.  
  1058. enum halo_pctl_complex_sprite_render_modes
  1059. {
  1060.     HALO_PCTL_COMPLEX_SPRITE_RENDER_MODE_SIMPLE = 0,
  1061.     HALO_PCTL_COMPLEX_SPRITE_RENDER_MODE_ROTATIONAL
  1062. };
  1063.  
  1064. enum halo_pctl_particle_creation_physics_behaviors
  1065. {
  1066.     HALO_PCTL_PARTICLE_CREATION_PHYSICS_BEHAVIOR_DEFAULT = 0,
  1067.     HALO_PCTL_PARTICLE_CREATION_PHYSICS_BEHAVIOR_EXPLOSION,
  1068.     HALO_PCTL_PARTICLE_CREATION_PHYSICS_BEHAVIOR_JET
  1069. };
  1070.  
  1071. enum halo_pctl_particle_update_physics_behaviors
  1072. {
  1073.     HALO_PCTL_PARTICLE_UPDATE_PHYSICS_BEHAVIOR_DEFAULT = 0
  1074. };
  1075.  
  1076. #pragma mark phys
  1077.  
  1078. enum halo_phys_mass_point_friction_types
  1079. {
  1080.     HALO_PHYS_MASS_POINT_FRICTION_TYPE_POINT = 0,
  1081.     HALO_PHYS_MASS_POINT_FRICTION_TYPE_FORWARD,
  1082.     HALO_PHYS_MASS_POINT_FRICTION_TYPE_LEFT,
  1083.     HALO_PHYS_MASS_POINT_FRICTION_TYPE_UP
  1084. };
  1085.  
  1086. #pragma mark proj
  1087.  
  1088. enum halo_proj_timer_triggers
  1089. {
  1090.     HALO_PROJ_TIMER_TRIGGER_IMMEDIATELY = 0,
  1091.     HALO_PROJ_TIMER_TRIGGER_AFTER_FIRST_BOUNCE,
  1092.     HALO_PROJ_TIMER_TRIGGER_WHEN_AT_REST
  1093. };
  1094.  
  1095. enum halo_proj_channel_functions
  1096. {
  1097.     HALO_PROJ_CHANNEL_FUNCTION_NONE = 0,
  1098.     HALO_PROJ_CHANNEL_FUNCTION_RANGE_REMAINING,
  1099.     HALO_PROJ_CHANNEL_FUNCTION_TIME_REMAINING,
  1100.     HALO_PROJ_CHANNEL_FUNCTION_TRACER
  1101. };
  1102.  
  1103. enum halo_material_responses
  1104. {
  1105.     HALO_MATERIAL_RESPONSE_DISAPPEAR = 0,
  1106.     HALO_MATERIAL_RESPONSE_DETONATE,
  1107.     HALO_MATERIAL_RESPONSE_REFLECT,
  1108.     HALO_MATERIAL_RESPONSE_OVERPENETRATE,
  1109.     HALO_MATERIAL_RESPONSE_ATTACH
  1110. };
  1111.  
  1112. enum halo_material_response_effect_scaling
  1113. {
  1114.     HALO_MATERIAL_RESPONSE_EFFECT_SCALE_BY_DAMAGE = 0,
  1115.     HALO_MATERIAL_RESPONSE_EFFECT_SCALE_BY_ANGLE
  1116. };
  1117.  
  1118. #pragma mark rain
  1119.  
  1120. enum halo_render_direction_sources
  1121. {
  1122.     HALO_RENDER_DIRECTION_SOURCE_FROM_VELOCITY = 0,
  1123.     HALO_RENDER_DIRECTION_SOURCE_FROM_ACCELERATION
  1124. };
  1125.  
  1126. #pragma mark shdr, schi, and scex
  1127.  
  1128. enum halo_detail_levels
  1129. {
  1130.     HALO_DETAIL_LEVEL_HIGH = 0,
  1131.     HALO_DETAIL_LEVEL_MEDIUM,
  1132.     HALO_DETAIL_LEVEL_LOW,
  1133.     HALO_DETAIL_LEVEL_TURD
  1134. };
  1135.  
  1136. enum halo_shader_map_types
  1137. {
  1138.     HALO_SHADER_MAP_TYPE_2D_MAP = 0,
  1139.     HALO_SHADER_MAP_TYPE_FIRST_MAP_IS_REFLECTION_CUBE_MAP,
  1140.     HALO_SHADER_MAP_TYPE_FIRST_MAP_IS_OBJECT_CENTERED_CUBE_MAP,
  1141.     HALO_SHADER_MAP_TYPE_FIRST_MAP_IS_VIEWER_CENTERED_CUBE_MAP
  1142. };
  1143.  
  1144. enum halo_stage_map_functions
  1145. {
  1146.     HALO_STAGE_MAP_FUNCTION_CURRENT = 0,
  1147.     HALO_STAGE_MAP_FUNCTION_NEXT_MAP,
  1148.     HALO_STAGE_MAP_FUNCTION_MULTIPLY,
  1149.     HALO_STAGE_MAP_FUNCTION_DOUBLE_MULTIPLY,
  1150.     HALO_STAGE_MAP_FUNCTION_ADD,
  1151.     HALO_STAGE_MAP_FUNCTION_ADD_SIGNED_CURRENT,
  1152.     HALO_STAGE_MAP_FUNCTION_ADD_SIGNED_NEXT_MAP,
  1153.     HALO_STAGE_MAP_FUNCTION_SUBTRACT_CURRENT,
  1154.     HALO_STAGE_MAP_FUNCTION_SUBTRACT_NEXT_MAP,
  1155.     HALO_STAGE_MAP_FUNCTION_BLEND_CURRENT_ALPHA,
  1156.     HALO_STAGE_MAP_FUNCTION_BLEND_CURRENT_ALPHA_INVERSE,
  1157.     HALO_STAGE_MAP_FUNCTION_BLEND_NEXT_MAP_ALPHA,
  1158.     HALO_STAGE_MAP_FUNCTION_BLEND_NEXT_MAP_ALPHA_INVERSE
  1159. };
  1160.  
  1161. #pragma mark scnr
  1162.  
  1163. enum halo_scnr_types
  1164. {
  1165.     HALO_SCNR_TYPE_SOLO = 0,
  1166.     HALO_SCNR_TYPE_MULTIPLAYER,
  1167.     HALO_SCNR_TYPE_MAIN_MENU
  1168. };
  1169.  
  1170. enum halo_gametypes
  1171. {
  1172.     HALO_GAMETYPE_NONE = 0,
  1173.     HALO_GAMETYPE_CTF,
  1174.     HALO_GAMETYPE_SLAYER,
  1175.     HALO_GAMETYPE_ODDBALL,
  1176.     HALO_GAMETYPE_KING_OF_THE_HILL,
  1177.     HALO_GAMETYPE_RACE,
  1178.     HALO_GAMETYPE_TERMINATOR,
  1179.     HALO_GAMETYPE_STUB,
  1180.     HALO_GAMETYPE_IGNORED1,
  1181.     HALO_GAMETYPE_IGNORED2,
  1182.     HALO_GAMETYPE_IGNORED3,
  1183.     HALO_GAMETYPE_IGNORED4,
  1184.     HALO_GAMETYPE_ALL_GAMES,
  1185.     HALO_GAMETYPE_ALL_EXCEPT_CTF,
  1186.     HALO_GAMETYPE_ALL_EXCEPT_RACE_AND_CTF
  1187. };
  1188.  
  1189. enum halo_netgame_flag_types
  1190. {
  1191.     HALO_NETGAME_FLAG_TYPE_CTF_FLAG = 0,
  1192.     HALO_NETGAME_FLAG_TYPE_CTF_VEHICLE,
  1193.     HALO_NETGAME_FLAG_TYPE_ODDBALL_BALL_SPAWN,
  1194.     HALO_NETGAME_FLAG_TYPE_RACE_TRACK,
  1195.     HALO_NETGAME_FLAG_TYPE_RACE_VEHICLE,
  1196.     HALO_NETGAME_FLAG_TYPE_VEGAS_BANK,
  1197.     HALO_NETGAME_FLAG_TYPE_TELEPORT_FROM,
  1198.     HALO_NETGAME_FLAG_TYPE_TELEPORT_TO,
  1199.     HALO_NETGAME_FLAG_TYPE_HILL_FLAG
  1200. };
  1201.  
  1202. enum halo_mp_teams  // The HEK programs present this as a number but there are only two acceptable numbers: 0 for red and 1 for blue
  1203. {
  1204.     HALO_MP_TEAM_RED = 0,
  1205.     HALO_MP_TEAM_BLUE
  1206. };
  1207.  
  1208. enum halo_team_indices
  1209. {
  1210.     HALO_TEAM_INDEX_DEFAULT_BY_UNIT = 0,
  1211.     HALO_TEAM_INDEX_PLAYER,
  1212.     HALO_TEAM_INDEX_HUMAN,
  1213.     HALO_TEAM_INDEX_COVENANT,
  1214.     HALO_TEAM_INDEX_FLOOD,
  1215.     HALO_TEAM_INDEX_SENTINEL,
  1216.     HALO_TEAM_INDEX_UNUSED6,
  1217.     HALO_TEAM_INDEX_UNUSED7,
  1218.     HALO_TEAM_INDEX_UNUSED8,
  1219.     HALO_TEAM_INDEX_UNUSED9
  1220. };
  1221.  
  1222. enum halo_search_behaviors
  1223. {
  1224.     HALO_SEARCH_BEHAVIOR_NORMAL = 0,
  1225.     HALO_SEARCH_BEHAVIOR_NEVER,
  1226.     HALO_SEARCH_BEHAVIOR_TENACIOUS
  1227. };
  1228.  
  1229. enum halo_ai_states
  1230. {
  1231.     HALO_AI_STATE_NONE = 0,
  1232.     HALO_AI_STATE_SLEEPING,
  1233.     HALO_AI_STATE_ALERT,
  1234.     HALO_AI_STATE_MOVING_REPEAT_SAME_POSITION,
  1235.     HALO_AI_STATE_MOVING_LOOP,
  1236.     HALO_AI_STATE_MOVING_LOOP_BACK_AND_FORTH,
  1237.     HALO_AI_STATE_MOVING_LOOP_RANDOMLY,
  1238.     HALO_AI_STATE_MOVING_RANDOMLY,
  1239.     HALO_AI_STATE_GUARDING,
  1240.     HALO_AI_STATE_GUARDING_AT_GUARD_POSITION,
  1241.     HALO_AI_STATE_SEARCHING,
  1242.     HALO_AI_STATE_FLEEING
  1243. };
  1244.  
  1245. enum halo_ai_squad_leaders
  1246. {
  1247.     HALO_AI_SQUAD_LEADER_NORMAL = 0,
  1248.     HALO_AI_SQUAD_LEADER_NONE,
  1249.     HALO_AI_SQUAD_LEADER_RANDOM,
  1250.     HALO_AI_SQUAD_LEADER_SGT_JOHNSON,
  1251.     HALO_AI_SQUAD_LEADER_SGT_LEHTO
  1252. };
  1253.  
  1254. enum halo_ai_major_upgrades
  1255. {
  1256.     HALO_AI_MAJOR_UPGRADE_NORMAL = 0,
  1257.     HALO_AI_MAJOR_UPGRADE_FEW,
  1258.     HALO_AI_MAJOR_UPGRADE_MANY,
  1259.     HALO_AI_MAJOR_UPGRADE_NONE,
  1260.     HALO_AI_MAJOR_UPGRADE_ALL
  1261. };
  1262.  
  1263. enum halo_ai_platoon_behavior_alteration_conditions
  1264. {
  1265.     HALO_AI_PLATOON_BEHAVIOR_ALTERATION_CONDITION_NEVER = 0,
  1266.     HALO_AI_PLATOON_BEHAVIOR_ALTERATION_CONDITION_LESS_THAN_75_PERCENT_STRENGTH,
  1267.     HALO_AI_PLATOON_BEHAVIOR_ALTERATION_CONDITION_LESS_THAN_50_PERCENT_STRENGTH,
  1268.     HALO_AI_PLATOON_BEHAVIOR_ALTERATION_CONDITION_LESS_THAN_25_PERCENT_STRENGTH,
  1269.     HALO_AI_PLATOON_BEHAVIOR_ALTERATION_CONDITION_ANYBODY_DEAD,
  1270.     HALO_AI_PLATOON_BEHAVIOR_ALTERATION_CONDITION_25_PERCENT_DEAD,
  1271.     HALO_AI_PLATOON_BEHAVIOR_ALTERATION_CONDITION_50_PERCENT_DEAD,
  1272.     HALO_AI_PLATOON_BEHAVIOR_ALTERATION_CONDITION_75_PERCENT_DEAD,
  1273.     HALO_AI_PLATOON_BEHAVIOR_ALTERATION_CONDITION_ALL_BUT_ONE_DEAD,
  1274.     HALO_AI_PLATOON_BEHAVIOR_ALTERATION_CONDITION_ALL_DEAD
  1275. };
  1276.  
  1277. enum halo_scnr_firing_position_groups
  1278. {
  1279.     HALO_SCNR_FIRING_POSITION_GROUP_A = 0,
  1280.     HALO_SCNR_FIRING_POSITION_GROUP_B,
  1281.     HALO_SCNR_FIRING_POSITION_GROUP_C,
  1282.     HALO_SCNR_FIRING_POSITION_GROUP_D,
  1283.     HALO_SCNR_FIRING_POSITION_GROUP_E,
  1284.     HALO_SCNR_FIRING_POSITION_GROUP_F,
  1285.     HALO_SCNR_FIRING_POSITION_GROUP_G,
  1286.     HALO_SCNR_FIRING_POSITION_GROUP_H,
  1287.     HALO_SCNR_FIRING_POSITION_GROUP_I,
  1288.     HALO_SCNR_FIRING_POSITION_GROUP_J,
  1289.     HALO_SCNR_FIRING_POSITION_GROUP_K,
  1290.     HALO_SCNR_FIRING_POSITION_GROUP_L,
  1291.     HALO_SCNR_FIRING_POSITION_GROUP_M,
  1292.     HALO_SCNR_FIRING_POSITION_GROUP_N,
  1293.     HALO_SCNR_FIRING_POSITION_GROUP_O,
  1294.     HALO_SCNR_FIRING_POSITION_GROUP_P,
  1295.     HALO_SCNR_FIRING_POSITION_GROUP_Q,
  1296.     HALO_SCNR_FIRING_POSITION_GROUP_R,
  1297.     HALO_SCNR_FIRING_POSITION_GROUP_S,
  1298.     HALO_SCNR_FIRING_POSITION_GROUP_T,
  1299.     HALO_SCNR_FIRING_POSITION_GROUP_U,
  1300.     HALO_SCNR_FIRING_POSITION_GROUP_V,
  1301.     HALO_SCNR_FIRING_POSITION_GROUP_W,
  1302.     HALO_SCNR_FIRING_POSITION_GROUP_X,
  1303.     HALO_SCNR_FIRING_POSITION_GROUP_Y,
  1304.     HALO_SCNR_FIRING_POSITION_GROUP_Z
  1305. };
  1306.  
  1307. enum halo_ai_command_atom_types
  1308. {
  1309.     HALO_AI_COMMAND_ATOM_TYPE_PAUSE = 0,
  1310.     HALO_AI_COMMAND_ATOM_TYPE_GO_TO,
  1311.     HALO_AI_COMMAND_ATOM_TYPE_GO_TO_AND_FACE,
  1312.     HALO_AI_COMMAND_ATOM_TYPE_MOVE_IN_DIRECTION,
  1313.     HALO_AI_COMMAND_ATOM_TYPE_LOOK,
  1314.     HALO_AI_COMMAND_ATOM_TYPE_ANIMATION_MODE,
  1315.     HALO_AI_COMMAND_ATOM_TYPE_CROUCH,
  1316.     HALO_AI_COMMAND_ATOM_TYPE_SHOOT,
  1317.     HALO_AI_COMMAND_ATOM_TYPE_GRENADE,
  1318.     HALO_AI_COMMAND_ATOM_TYPE_VEHICLE,
  1319.     HALO_AI_COMMAND_ATOM_TYPE_RUNNING_JUMP,
  1320.     HALO_AI_COMMAND_ATOM_TYPE_TARGETED_JUMP,
  1321.     HALO_AI_COMMAND_ATOM_TYPE_SCRIPT,
  1322.     HALO_AI_COMMAND_ATOM_TYPE_ANIMATE,
  1323.     HALO_AI_COMMAND_ATOM_TYPE_RECORDING,
  1324.     HALO_AI_COMMAND_ATOM_TYPE_ACTION,
  1325.     HALO_AI_COMMAND_ATOM_TYPE_VOCALIZE,
  1326.     HALO_AI_COMMAND_ATOM_TYPE_TARGETING,
  1327.     HALO_AI_COMMAND_ATOM_TYPE_INITIATIVE,
  1328.     HALO_AI_COMMAND_ATOM_TYPE_WAIT,
  1329.     HALO_AI_COMMAND_ATOM_TYPE_LOOP,
  1330.     HALO_AI_COMMAND_ATOM_TYPE_DIE,
  1331.     HALO_AI_COMMAND_ATOM_TYPE_MOVE_IMMEDIATE,
  1332.     HALO_AI_COMMAND_ATOM_TYPE_LOOK_RANDOM,
  1333.     HALO_AI_COMMAND_ATOM_TYPE_LOOK_PLAYER,
  1334.     HALO_AI_COMMAND_ATOM_TYPE_LOOK_OBJECT,
  1335.     HALO_AI_COMMAND_ATOM_TYPE_SET_RADIUS,
  1336.     HALO_AI_COMMAND_ATOM_TYPE_TELEPORT
  1337. };
  1338.  
  1339. enum halo_ai_conversation_participant_selection_types
  1340. {
  1341.     HALO_AI_CONVERSATION_PARTICIPANT_SELECTION_TYPE_FRIENDLY_ACTOR = 0,
  1342.     HALO_AI_CONVERSATION_PARTICIPANT_SELECTION_TYPE_DISEMBODIED,
  1343.     HALO_AI_CONVERSATION_PARTICIPANT_SELECTION_TYPE_IN_VEHICLE_OF_PLAYER,
  1344.     HALO_AI_CONVERSATION_PARTICIPANT_SELECTION_TYPE_NOT_IN_A_VEHICLE,
  1345.     HALO_AI_CONVERSATION_PARTICIPANT_SELECTION_TYPE_PREFER_SERGEANT,
  1346.     HALO_AI_CONVERSATION_PARTICIPANT_SELECTION_TYPE_ANY_ACTOR,
  1347.     HALO_AI_CONVERSATION_PARTICIPANT_SELECTION_TYPE_RADIO_UNIT,
  1348.     HALO_AI_CONVERSATION_PARTICIPANT_SELECTION_TYPE_RADIO_SERGEANT
  1349. };
  1350.  
  1351. enum halo_ai_conversation_lines_character_types
  1352. {
  1353.     HALO_AI_CONVERSATION_LINES_CHARACTER_TYPE_NONE = 0,
  1354.     HALO_AI_CONVERSATION_LINES_CHARACTER_TYPE_PLAYER,
  1355.     HALO_AI_CONVERSATION_LINES_CHARACTER_TYPE_PARTICIPANT
  1356. };
  1357.  
  1358. enum halo_script_types
  1359. {
  1360.     HALO_SCRIPT_TYPE_STARTUP = 0,
  1361.     HALO_SCRIPT_TYPE_DORMANT,
  1362.     HALO_SCRIPT_TYPE_CONTINUOUS,
  1363.     HALO_SCRIPT_TYPE_STATIC,
  1364.     HALO_SCRIPT_TYPE_STUB
  1365. };
  1366.  
  1367. enum halo_script_return_types
  1368. {
  1369.     HALO_SCRIPT_RETURN_TYPE_UNPARSED = 0,
  1370.     HALO_SCRIPT_RETURN_TYPE_SPECIAL_FORM,
  1371.     HALO_SCRIPT_RETURN_TYPE_FUNCTION_NAME,
  1372.     HALO_SCRIPT_RETURN_TYPE_PASSTHROUGH,
  1373.     HALO_SCRIPT_RETURN_TYPE_VOID,
  1374.     HALO_SCRIPT_RETURN_TYPE_BOOLEAN,
  1375.     HALO_SCRIPT_RETURN_TYPE_REAL,
  1376.     HALO_SCRIPT_RETURN_TYPE_SHORT,
  1377.     HALO_SCRIPT_RETURN_TYPE_LONG,
  1378.     HALO_SCRIPT_RETURN_TYPE_STRING,
  1379.     HALO_SCRIPT_RETURN_TYPE_SCRIPT,
  1380.     HALO_SCRIPT_RETURN_TYPE_TRIGGER_VOLUME,
  1381.     HALO_SCRIPT_RETURN_TYPE_CUTSCENE_FLAG,
  1382.     HALO_SCRIPT_RETURN_TYPE_CUTSCENE_CAMERA_POINT,
  1383.     HALO_SCRIPT_RETURN_TYPE_CUTSCENE_TITLE,
  1384.     HALO_SCRIPT_RETURN_TYPE_CUTSCENE_RECORDING,
  1385.     HALO_SCRIPT_RETURN_TYPE_DEVICE_GROUP,
  1386.     HALO_SCRIPT_RETURN_TYPE_AI,
  1387.     HALO_SCRIPT_RETURN_TYPE_AI_COMMAND_LIST,
  1388.     HALO_SCRIPT_RETURN_TYPE_STARTING_PROFILE,
  1389.     HALO_SCRIPT_RETURN_TYPE_CONVERSATION,
  1390.     HALO_SCRIPT_RETURN_TYPE_NAVPOINT,
  1391.     HALO_SCRIPT_RETURN_TYPE_HUD_MESSAGE,
  1392.     HALO_SCRIPT_RETURN_TYPE_OBJECT_LIST,
  1393.     HALO_SCRIPT_RETURN_TYPE_SOUND,
  1394.     HALO_SCRIPT_RETURN_TYPE_EFFECT,
  1395.     HALO_SCRIPT_RETURN_TYPE_DAMAGE,
  1396.     HALO_SCRIPT_RETURN_TYPE_LOOPING_SOUND,
  1397.     HALO_SCRIPT_RETURN_TYPE_ANIMATION_GRAPH,
  1398.     HALO_SCRIPT_RETURN_TYPE_ACTOR_VARIANT,
  1399.     HALO_SCRIPT_RETURN_TYPE_DAMAGE_EFFECT,
  1400.     HALO_SCRIPT_RETURN_TYPE_OBJECT_DEFINITION,
  1401.     HALO_SCRIPT_RETURN_TYPE_GAME_DIFFICULTY,
  1402.     HALO_SCRIPT_RETURN_TYPE_TEAM,
  1403.     HALO_SCRIPT_RETURN_TYPE_AI_DEFAULT_STATE,
  1404.     HALO_SCRIPT_RETURN_TYPE_ACTOR_TYPE,
  1405.     HALO_SCRIPT_RETURN_TYPE_HUD_CORNER,
  1406.     HALO_SCRIPT_RETURN_TYPE_OBJECT,
  1407.     HALO_SCRIPT_RETURN_TYPE_UNIT,
  1408.     HALO_SCRIPT_RETURN_TYPE_VEHICLE,
  1409.     HALO_SCRIPT_RETURN_TYPE_WEAPON,
  1410.     HALO_SCRIPT_RETURN_TYPE_DEVICE,
  1411.     HALO_SCRIPT_RETURN_TYPE_SCENERY,
  1412.     HALO_SCRIPT_RETURN_TYPE_OBJECT_NAME,
  1413.     HALO_SCRIPT_RETURN_TYPE_UNIT_NAME,
  1414.     HALO_SCRIPT_RETURN_TYPE_VEHICLE_NAME,
  1415.     HALO_SCRIPT_RETURN_TYPE_WEAPON_NAME,
  1416.     HALO_SCRIPT_RETURN_TYPE_DEVICE_NAME,
  1417.     HALO_SCRIPT_RETURN_TYPE_SCENERY_NAME
  1418. };
  1419.  
  1420. #pragma mark senv
  1421.  
  1422. enum halo_shader_diffuse_map_combinations
  1423. {
  1424.     HALO_SHADER_DIFFUSE_MAP_COMBINATION_NORMAL = 0,
  1425.     HALO_SHADER_DIFFUSE_MAP_COMBINATION_BLENDED,
  1426.     HALO_SHADER_DIFFUSE_MAP_COMBINATION_BLENDED_BASE_SPECULAR
  1427. };
  1428.  
  1429. enum halo_shader_map_functions
  1430. {
  1431.     HALO_SHADER_MAP_FUNCTION_DOUBLE_BIASED_MULTIPLY = 0,
  1432.     HALO_SHADER_MAP_FUNCTION_MULTIPLY,
  1433.     HALO_SHADER_MAP_FUNCTION_DOUBLE_BIASED_ADD
  1434. };
  1435.  
  1436. enum halo_shader_cube_map_reflection_types
  1437. {
  1438.     HALO_SHADER_CUBE_MAP_REFLECTION_TYPE_BUMPED_CUBE_MAP = 0,
  1439.     HALO_SHADER_CUBE_MAP_REFLECTION_TYPE_FLAT_CUBE_MAP,
  1440.     HALO_SHADER_CUBE_MAP_REFLECTION_TYPE_BUMPED_RADIOSITY
  1441. };
  1442.  
  1443. #pragma mark sgla
  1444.  
  1445. enum halo_shader_reflection_map_reflection_types
  1446. {
  1447.     HALO_SHADER_REFLECTION_MAP_REFLECTION_TYPE_BUMPED_CUBE_MAP = 0,
  1448.     HALO_SHADER_REFLECTION_MAP_REFLECTION_TYPE_FLAT_CUBE_MAP,
  1449.     HALO_SHADER_REFLECTION_MAP_REFLECTION_TYPE_DYNAMIC_MIRROR
  1450. };
  1451.  
  1452. #pragma mark shdr
  1453.  
  1454. enum halo_shdr_types
  1455. {
  1456.     HALO_SHDR_TYPE_SHDR = -1,
  1457.     HALO_SHDR_TYPE_SENV = 3,
  1458.     HALO_SHDR_TYPE_SOSO,
  1459.     HALO_SHDR_TYPE_SOTR,
  1460.     HALO_SHDR_TYPE_SCHI,
  1461.     HALO_SHDR_TYPE_SCEX,
  1462.     HALO_SHDR_TYPE_SWAT,
  1463.     HALO_SHDR_TYPE_SGLA,
  1464.     HALO_SHDR_TYPE_SMET,
  1465.     HALO_SHDR_TYPE_SPLA
  1466. };
  1467.  
  1468. #pragma mark snd!
  1469.  
  1470. enum halo_sound_classes
  1471. {
  1472.     HALO_SOUND_CLASS_PROJECTILE_IMPACT = 0,
  1473.     HALO_SOUND_CLASS_PROJECTILE_DETONATION,
  1474.     HALO_SOUND_CLASS_UNUSED1,
  1475.     HALO_SOUND_CLASS_UNUSED2,
  1476.     HALO_SOUND_CLASS_WEAPON_FIRE,
  1477.     HALO_SOUND_CLASS_WEAPON_READY,
  1478.     HALO_SOUND_CLASS_WEAPON_RELOAD,
  1479.     HALO_SOUND_CLASS_WEAPON_EMPTY,
  1480.     HALO_SOUND_CLASS_WEAPON_CHARGE,
  1481.     HALO_SOUND_CLASS_WEAPON_OVERHEAT,
  1482.     HALO_SOUND_CLASS_WEAPON_IDLE,
  1483.     HALO_SOUND_CLASS_UNUSED3,
  1484.     HALO_SOUND_CLASS_UNUSED4,
  1485.     HALO_SOUND_CLASS_OBJECT_IMPACTS,
  1486.     HALO_SOUND_CLASS_PARTICLE_IMPACTS,
  1487.     HALO_SOUND_CLASS_SLOW_PARTICLE_IMPACTS,
  1488.     HALO_SOUND_CLASS_UNUSED5,
  1489.     HALO_SOUND_CLASS_UNUSED6,
  1490.     HALO_SOUND_CLASS_UNIT_FOOTSTEPS,
  1491.     HALO_SOUND_CLASS_UNIT_DIALOG,
  1492.     HALO_SOUND_CLASS_UNUSED7,
  1493.     HALO_SOUND_CLASS_UNUSED8,
  1494.     HALO_SOUND_CLASS_VEHICLE_COLLISION,
  1495.     HALO_SOUND_CLASS_VEHICLE_ENGINE,
  1496.     HALO_SOUND_CLASS_UNUSED9,
  1497.     HALO_SOUND_CLASS_UNUSED10,
  1498.     HALO_SOUND_CLASS_DEVICE_DOOR,
  1499.     HALO_SOUND_CLASS_DEVICE_FORCE_FIELD,
  1500.     HALO_SOUND_CLASS_DEVICE_MACHINERY,
  1501.     HALO_SOUND_CLASS_DEVICE_NATURE,
  1502.     HALO_SOUND_CLASS_DEVICE_COMPUTERS,
  1503.     HALO_SOUND_CLASS_UNUSED11,
  1504.     HALO_SOUND_CLASS_MUSIC,
  1505.     HALO_SOUND_CLASS_AMBIENT_NATURE,
  1506.     HALO_SOUND_CLASS_AMBIENT_MACHINERY,
  1507.     HALO_SOUND_CLASS_AMBIENT_COMPUTERS,
  1508.     HALO_SOUND_CLASS_UNUSED12,
  1509.     HALO_SOUND_CLASS_UNUSED13,
  1510.     HALO_SOUND_CLASS_UNUSED14,
  1511.     HALO_SOUND_CLASS_FIRST_PERSON_DAMAGE,
  1512.     HALO_SOUND_CLASS_UNUSED15,
  1513.     HALO_SOUND_CLASS_UNUSED16,
  1514.     HALO_SOUND_CLASS_UNUSED17,
  1515.     HALO_SOUND_CLASS_UNUSED18,
  1516.     HALO_SOUND_CLASS_SCRIPTED_DIALOG_PLAYER,
  1517.     HALO_SOUND_CLASS_SCRIPTED_EFFECT,
  1518.     HALO_SOUND_CLASS_SCRIPTED_DIALOG_OTHER,
  1519.     HALO_SOUND_CLASS_SCRIPTED_DIALOG_FORCE_UNSPATIALIZED,
  1520.     HALO_SOUND_CLASS_UNUSED19,
  1521.     HALO_SOUND_CLASS_UNUSED20,
  1522.     HALO_SOUND_CLASS_GAME_EVENT
  1523. };
  1524.  
  1525. enum halo_sound_sample_rates
  1526. {
  1527.     HALO_SOUND_SAMPLE_RATE_22KHZ = 0,
  1528.     HALO_SOUND_SAMPLE_RATE_44KHZ
  1529. };
  1530.  
  1531. enum halo_sound_channel_encodings
  1532. {
  1533.     HALO_SOUND_CHANNEL_ENCODING_MONO = 0,
  1534.     HALO_SOUND_CHANNEL_ENCODING_STEREO
  1535. };
  1536.  
  1537. enum halo_sound_compression_formats
  1538. {
  1539.     HALO_SOUND_COMPRESSION_FORMAT_NONE = 0,
  1540.     HALO_SOUND_COMPRESSION_FORMAT_XBOX_ADPCM,
  1541.     HALO_SOUND_COMPRESSION_FORMAT_IMA_ADPCM,
  1542.     HALO_SOUND_COMPRESSION_FORMAT_OGG
  1543. };
  1544.  
  1545. #pragma mark soso
  1546.  
  1547. enum halo_shader_detail_map_masking
  1548. {
  1549.     HALO_SHADER_DETAIL_MAP_MASK_NONE = 0,
  1550.     HALO_SHADER_DETAIL_MAP_MASK_REFLECTION_MASK_INVERSE,
  1551.     HALO_SHADER_DETAIL_MAP_MASK_REFLECTION_MASK,
  1552.     HALO_SHADER_DETAIL_MAP_MASK_SELF_ILLUMINATION_MASK_INVERSE,
  1553.     HALO_SHADER_DETAIL_MAP_MASK_SELF_ILLUMINATION_MASK,
  1554.     HALO_SHADER_DETAIL_MAP_MASK_CHANGE_COLOR_MASK_INVERSE,
  1555.     HALO_SHADER_DETAIL_MAP_MASK_CHANGE_COLOR_MASK,
  1556.     HALO_SHADER_DETAIL_MAP_MASK_MULTIPURPOSE_MAP_ALPHA_INVERSE,
  1557.     HALO_SHADER_DETAIL_MAP_MASK_MULTIPURPOSE_MAP_ALPHA
  1558. };
  1559.  
  1560. #pragma mark sotr
  1561.  
  1562. enum halo_shader_stage_channel_functions
  1563. {
  1564.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_ZERO = 0,
  1565.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_ONE,
  1566.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_ONE_HALF,
  1567.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_NEGATIVE_ONE,
  1568.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_NEGATIVE_ONE_HALF,
  1569.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_MAP_COLOR_0,
  1570.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_MAP_COLOR_1,
  1571.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_MAP_COLOR_2,
  1572.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_MAP_COLOR_3,
  1573.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_VERTEX_COLOR_0_DIFFUSE_LIGHT,
  1574.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_VERTEX_COLOR_1_FADE_PERPENDICULAR,
  1575.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_SCRATCH_COLOR_0,
  1576.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_SCRATCH_COLOR_1,
  1577.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_CONSTANT_COLOR_0,
  1578.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_CONSTANT_COLOR_1,
  1579.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_MAP_ALPHA_0,
  1580.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_MAP_ALPHA_1,
  1581.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_MAP_ALPHA_2,
  1582.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_MAP_ALPHA_3,
  1583.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_VERTEX_ALPHA_0_FADE_NONE,
  1584.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_VERTEX_ALPHA_1_FADE_PERPENDICULAR,
  1585.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_SCRATCH_ALPHA_0,
  1586.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_SCRATCH_ALPHA_1,
  1587.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_CONSTANT_ALPHA_0,
  1588.     HALO_SHADER_STAGE_CHANNEL_FUNCTION_CONSTANT_ALPHA_1
  1589. };
  1590.  
  1591. enum halo_shader_stage_channel_mapping_functions
  1592. {
  1593.     HALO_SHADER_STAGE_CHANNEL_MAPPING_FUNCTION_CLAMP_X = 0,
  1594.     HALO_SHADER_STAGE_CHANNEL_MAPPING_FUNCTION_1_MINUS_CLAMP_X,
  1595.     HALO_SHADER_STAGE_CHANNEL_MAPPING_FUNCTION_2_TIMES_CLAMP_X_MINUS_1,
  1596.     HALO_SHADER_STAGE_CHANNEL_MAPPING_FUNCTION_1_MINUS_2_TIMES_CLAMP_X,
  1597.     HALO_SHADER_STAGE_CHANNEL_MAPPING_FUNCTION_CLAMP_X_MINUS_HALF,
  1598.     HALO_SHADER_STAGE_CHANNEL_MAPPING_FUNCTION_HALF_MINUS_CLAMP_X,
  1599.     HALO_SHADER_STAGE_CHANNEL_MAPPING_FUNCTION_X,
  1600.     HALO_SHADER_STAGE_CHANNEL_MAPPING_FUNCTION_NEGATIVE_X
  1601. };
  1602.  
  1603. enum halo_shader_stage_dual_channel_functions
  1604. {
  1605.     HALO_SHADER_STAGE_DUAL_CHANNEL_FUNCTION_DISCARD = 0,
  1606.     HALO_SHADER_STAGE_DUAL_CHANNEL_FUNCTION_SCRATCH_COLOR_0_FINAL_COLOR,
  1607.     HALO_SHADER_STAGE_DUAL_CHANNEL_FUNCTION_SCRATCH_COLOR_1,
  1608.     HALO_SHADER_STAGE_DUAL_CHANNEL_FUNCTION_VERTEX_COLOR_0,
  1609.     HALO_SHADER_STAGE_DUAL_CHANNEL_FUNCTION_VERTEX_COLOR_1,
  1610.     HALO_SHADER_STAGE_DUAL_CHANNEL_FUNCTION_MAP_COLOR_0,
  1611.     HALO_SHADER_STAGE_DUAL_CHANNEL_FUNCTION_MAP_COLOR_1,
  1612.     HALO_SHADER_STAGE_DUAL_CHANNEL_FUNCTION_MAP_COLOR_2,
  1613.     HALO_SHADER_STAGE_DUAL_CHANNEL_FUNCTION_MAP_COLOR_3
  1614. };
  1615.  
  1616. enum halo_shader_stage_dual_channel_function_calculations
  1617. {
  1618.     HALO_SHADER_STAGE_DUAL_CHANNEL_FUNCTION_CALCULATION_MULTIPLY = 0,
  1619.     HALO_SHADER_STAGE_DUAL_CHANNEL_FUNCTION_CALCULATION_DOT_PRODUCT
  1620. };
  1621.  
  1622. enum halo_shader_stage_dual_channel_mappings
  1623. {
  1624.     HALO_SHADER_STAGE_DUAL_CHANNEL_MAPPING_IDENTITY = 0,
  1625.     HALO_SHADER_STAGE_DUAL_CHANNEL_MAPPING_SCALE_BY_HALF,
  1626.     HALO_SHADER_STAGE_DUAL_CHANNEL_MAPPING_SCALE_BY_2,
  1627.     HALO_SHADER_STAGE_DUAL_CHANNEL_MAPPING_SCALE_BY_4,
  1628.     HALO_SHADER_STAGE_DUAL_CHANNEL_MAPPING_BIAS_BY_NEGATIVE_HALF,
  1629.     HALO_SHADER_STAGE_DUAL_CHANNEL_MAPPING_EXPAND_NORMAL
  1630. };
  1631.  
  1632. enum halo_shader_stage_channel_alpha_functions
  1633. {
  1634.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_ZERO = 0,
  1635.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_ONE,
  1636.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_ONE_HALF,
  1637.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_NEGATIVE_ONE,
  1638.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_NEGATIVE_ONE_HALF,
  1639.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_MAP_ALPHA_0,
  1640.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_MAP_ALPHA_1,
  1641.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_MAP_ALPHA_2,
  1642.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_MAP_ALPHA_3,
  1643.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_VERTEX_ALPHA_0_FADE_NONE,
  1644.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_VERTEX_ALPHA_1_FADE_PERPENDICULAR,
  1645.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_SCRATCH_ALPHA_0,
  1646.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_SCRATCH_ALPHA_1,
  1647.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_CONSTANT_ALPHA_0,
  1648.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_CONSTANT_ALPHA_1,
  1649.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_MAP_BLUE_0,
  1650.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_MAP_BLUE_1,
  1651.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_MAP_BLUE_2,
  1652.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_MAP_BLUE_3,
  1653.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_VERTEX_BLUE_0_BLUE_LIGHT,
  1654.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_VERTEX_BLUE_1_FADE_PARALLEL,
  1655.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_SCRATCH_BLUE_0,
  1656.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_SCRATCH_BLUE_1,
  1657.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_CONSTANT_BLUE_0,
  1658.     HALO_SHADER_STAGE_CHANNEL_ALPHA_FUNCTION_CONSTANT_BLUE_1
  1659. };
  1660.  
  1661. enum halo_shader_stage_dual_channel_alpha_functions
  1662. {
  1663.     HALO_SHADER_STAGE_DUAL_CHANNEL_ALPHA_FUNCTION_DISCARD = 0,
  1664.     HALO_SHADER_STAGE_DUAL_CHANNEL_ALPHA_FUNCTION_SCRATCH_ALPHA_0_FINAL_ALPHA,
  1665.     HALO_SHADER_STAGE_DUAL_CHANNEL_ALPHA_FUNCTION_SCRATCH_ALPHA_1,
  1666.     HALO_SHADER_STAGE_DUAL_CHANNEL_ALPHA_FUNCTION_VERTEX_ALPHA_0_FOG,
  1667.     HALO_SHADER_STAGE_DUAL_CHANNEL_ALPHA_FUNCTION_VERTEX_ALPHA_1,
  1668.     HALO_SHADER_STAGE_DUAL_CHANNEL_ALPHA_FUNCTION_MAP_ALPHA_0,
  1669.     HALO_SHADER_STAGE_DUAL_CHANNEL_ALPHA_FUNCTION_MAP_ALPHA_1,
  1670.     HALO_SHADER_STAGE_DUAL_CHANNEL_ALPHA_FUNCTION_MAP_ALPHA_2,
  1671.     HALO_SHADER_STAGE_DUAL_CHANNEL_ALPHA_FUNCTION_MAP_ALPHA_3
  1672. };
  1673.  
  1674. #pragma mark unhi
  1675.  
  1676. enum halo_unhi_auxiliary_overlays_types
  1677. {
  1678.     HALO_UNHI_AUXILIARY_OVERLAYS_TYPE_TEAM_ICON = 0
  1679. };
  1680.  
  1681. enum halo_unhi_auxiliary_hud_meters_types
  1682. {
  1683.     HALO_UNHI_AUXILIARY_HUD_METERS_TYPE_INTEGRATED_LIGHT = 0
  1684. };
  1685.  
  1686. #pragma mark unit
  1687.  
  1688. enum halo_teams
  1689. {
  1690.     HALO_TEAM_NONE = 0,
  1691.     HALO_TEAM_PLAYER,
  1692.     HALO_TEAM_HUMAN,
  1693.     HALO_TEAM_COVENANT,
  1694.     HALO_TEAM_FLOOD,
  1695.     HALO_TEAM_SENTINEL,
  1696.     HALO_TEAM_UNUSED_6,
  1697.     HALO_TEAM_UNUSED_7,
  1698.     HALO_TEAM_UNUSED_8,
  1699.     HALO_TEAM_UNUSED_9
  1700. };
  1701.  
  1702. enum halo_sound_volumes
  1703. {
  1704.     HALO_SOUND_VOLUME_SILENT = 0,
  1705.     HALO_SOUND_VOLUME_MEDIUM,
  1706.     HALO_SOUND_VOLUME_LOUD,
  1707.     HALO_SOUND_VOLUME_SHOUT,
  1708.     HALO_SOUND_VOLUME_QUIET
  1709. };
  1710.  
  1711. enum halo_unit_channel_functions
  1712. {
  1713.     HALO_UNIT_CHANNEL_FUNCTION_NONE = 0,
  1714.     HALO_UNIT_CHANNEL_FUNCTION_DRIVER_SEAT_POWER,
  1715.     HALO_UNIT_CHANNEL_FUNCTION_GUNNER_SEAT_POWER,
  1716.     HALO_UNIT_CHANNEL_FUNCTION_AIMING_CHANGE,
  1717.     HALO_UNIT_CHANNEL_FUNCTION_MOUTH_APERTURE,
  1718.     HALO_UNIT_CHANNEL_FUNCTION_INTEGRATED_LIGHT_POWER,
  1719.     HALO_UNIT_CHANNEL_FUNCTION_CAN_BLINK,
  1720.     HALO_UNIT_CHANNEL_FUNCTION_SHIELD_SAPPING
  1721. };
  1722.  
  1723. enum halo_motion_sensor_blip_sizes
  1724. {
  1725.     HALO_MOTION_SENSOR_BLIP_SIZE_MEDIUM = 0,
  1726.     HALO_MOTION_SENSOR_BLIP_SIZE_SMALL,
  1727.     HALO_MOTION_SENSOR_BLIP_SIZE_LARGE
  1728. };
  1729.  
  1730. #pragma mark vcky
  1731.  
  1732. enum halo_vcky_keyboard_keys
  1733. {
  1734.     HALO_VCKY_KEYBOARD_KEY_1 = 0,
  1735.     HALO_VCKY_KEYBOARD_KEY_2,
  1736.     HALO_VCKY_KEYBOARD_KEY_3,
  1737.     HALO_VCKY_KEYBOARD_KEY_4,
  1738.     HALO_VCKY_KEYBOARD_KEY_5,
  1739.     HALO_VCKY_KEYBOARD_KEY_6,
  1740.     HALO_VCKY_KEYBOARD_KEY_7,
  1741.     HALO_VCKY_KEYBOARD_KEY_8,
  1742.     HALO_VCKY_KEYBOARD_KEY_9,
  1743.     HALO_VCKY_KEYBOARD_KEY_0,
  1744.     HALO_VCKY_KEYBOARD_KEY_A,
  1745.     HALO_VCKY_KEYBOARD_KEY_B,
  1746.     HALO_VCKY_KEYBOARD_KEY_C,
  1747.     HALO_VCKY_KEYBOARD_KEY_D,
  1748.     HALO_VCKY_KEYBOARD_KEY_E,
  1749.     HALO_VCKY_KEYBOARD_KEY_F,
  1750.     HALO_VCKY_KEYBOARD_KEY_G,
  1751.     HALO_VCKY_KEYBOARD_KEY_H,
  1752.     HALO_VCKY_KEYBOARD_KEY_I,
  1753.     HALO_VCKY_KEYBOARD_KEY_J,
  1754.     HALO_VCKY_KEYBOARD_KEY_K,
  1755.     HALO_VCKY_KEYBOARD_KEY_L,
  1756.     HALO_VCKY_KEYBOARD_KEY_M,
  1757.     HALO_VCKY_KEYBOARD_KEY_N,
  1758.     HALO_VCKY_KEYBOARD_KEY_O,
  1759.     HALO_VCKY_KEYBOARD_KEY_P,
  1760.     HALO_VCKY_KEYBOARD_KEY_Q,
  1761.     HALO_VCKY_KEYBOARD_KEY_R,
  1762.     HALO_VCKY_KEYBOARD_KEY_S,
  1763.     HALO_VCKY_KEYBOARD_KEY_T,
  1764.     HALO_VCKY_KEYBOARD_KEY_U,
  1765.     HALO_VCKY_KEYBOARD_KEY_V,
  1766.     HALO_VCKY_KEYBOARD_KEY_W,
  1767.     HALO_VCKY_KEYBOARD_KEY_X,
  1768.     HALO_VCKY_KEYBOARD_KEY_Y,
  1769.     HALO_VCKY_KEYBOARD_KEY_Z,
  1770.     HALO_VCKY_KEYBOARD_KEY_DONE,
  1771.     HALO_VCKY_KEYBOARD_KEY_SHIFT,
  1772.     HALO_VCKY_KEYBOARD_KEY_CAPS_LOCK,
  1773.     HALO_VCKY_KEYBOARD_KEY_SYMBOLS,
  1774.     HALO_VCKY_KEYBOARD_KEY_BACKSPACE,
  1775.     HALO_VCKY_KEYBOARD_KEY_LEFT,
  1776.     HALO_VCKY_KEYBOARD_KEY_RIGHT,
  1777.     HALO_VCKY_KEYBOARD_KEY_SPACE
  1778. };
  1779.  
  1780. #pragma mark vehi
  1781.  
  1782. enum halo_vehicle_types
  1783. {
  1784.     HALO_VEHICLE_TYPE_HUMAN_TANK = 0,
  1785.     HALO_VEHICLE_TYPE_HUMAN_JEEP,
  1786.     HALO_VEHICLE_TYPE_HUMAN_BOAT,
  1787.     HALO_VEHICLE_TYPE_HUMAN_PLANE,
  1788.     HALO_VEHICLE_TYPE_ALIEN_SCOUT,
  1789.     HALO_VEHICLE_TYPE_ALIEN_FIGHTER,
  1790.     HALO_VEHICLE_TYPE_TURRET
  1791. };
  1792.  
  1793. enum halo_vehi_vehicle_channel_functions
  1794. {
  1795.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_NONE = 0,
  1796.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_SPEED_ABSOLUTE,
  1797.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_SPEED_FORWARD,
  1798.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_SPEED_BACKWARD,
  1799.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_SLIDE_ABSOLUTE,
  1800.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_SLIDE_LEFT,
  1801.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_SLIDE_RIGHT,
  1802.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_SPEED_SLIDE_MAXIMUM,
  1803.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_TURN_ABSOLUTE,
  1804.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_TURN_LEFT,
  1805.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_TURN_RIGHT,
  1806.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_CROUCH,
  1807.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_JUMP,
  1808.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_WALK,
  1809.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_VELOCITY_AIR,
  1810.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_VELOCITY_WATER,
  1811.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_VELOCITY_GROUND,
  1812.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_VELOCITY_FORWARD,
  1813.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_VELOCITY_LEFT,
  1814.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_VELOCITY_UP,
  1815.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_LEFT_TREAD_POSITION,
  1816.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_RIGHT_TREAD_POSITION,
  1817.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_LEFT_TREAD_VELOCITY,
  1818.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_RIGHT_TREAD_VELOCITY,
  1819.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_FRONT_LEFT_TIRE_POSITION,
  1820.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_FRONT_RIGHT_TIRE_POSITION,
  1821.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_BACK_LEFT_TIRE_POSITION,
  1822.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_BACK_RIGHT_TIRE_POSITION,
  1823.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_FRONT_LEFT_TIRE_VELOCITY,
  1824.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_FRONT_RIGHT_TIRE_VELOCITY,
  1825.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_BACK_LEFT_TIRE_VELOCITY,
  1826.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_BACK_RIGHT_TIRE_VELOCITY,
  1827.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_WINGTIP_CONTRAIL,
  1828.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_HOVER,
  1829.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_THRUST,
  1830.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_ENGINE_HACK,
  1831.     HALO_VEHI_VEHICLE_CHANNEL_FUNCTION_WINGTIP_CONTRAIL_NEW
  1832. };
  1833.  
  1834. #pragma mark weap
  1835.  
  1836. enum halo_weap_trigger_relations
  1837. {
  1838.     HALO_WEAP_TRIGGER_RELATION_NORMAL = 0,
  1839.     HALO_WEAP_TRIGGER_RELATION_SLAVED_TO_PRIMARY,
  1840.     HALO_WEAP_TRIGGER_RELATION_INHIBITS_PRIMARY,
  1841.     HALO_WEAP_TRIGGER_RELATION_LOADS_ALTERNATE_AMMUNITION,
  1842.     HALO_WEAP_TRIGGER_RELATION_LOADS_MULTIPLE_PRIMARY_AMMUNITION
  1843. };
  1844.  
  1845. enum halo_weap_weapon_channel_functions
  1846. {
  1847.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_NONE = 0,
  1848.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_HEAT,
  1849.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_PRIMARY_AMMUNITION,
  1850.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_SECONDARY_AMMUNITION,
  1851.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_PRIMARY_RATE_OF_FIRE,
  1852.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_SECONDARY_RATE_OF_FIRE,
  1853.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_READY,
  1854.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_PRIMARY_EJECTION_PORT,
  1855.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_SECONDARY_EJECTION_PORT,
  1856.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_OVERHEATED,
  1857.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_PRIMARY_CHARGED,
  1858.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_SECONDARY_CHARGED,
  1859.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_ILLUMINATION,
  1860.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_AGE,
  1861.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_INTEGRATED_LIGHT,
  1862.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_PRIMARY_FIRING,
  1863.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_SECONDARY_FIRING,
  1864.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_PRIMARY_FIRING_ON,
  1865.     HALO_WEAP_WEAPON_CHANNEL_FUNCTION_SECONDARY_FIRING_ON
  1866. };
  1867.  
  1868. enum halo_movement_penalizations
  1869. {
  1870.     HALO_MOVEMENT_PENALIZED_ALWAYS = 0,
  1871.     HALO_MOVEMENT_PENALIZED_WHEN_ZOOMED,
  1872.     HALO_MOVEMENT_PENALIZED_WHEN_ZOOMED_OR_RELOADING
  1873. };
  1874.  
  1875. enum halo_weapon_behavior_types
  1876. {
  1877.     HALO_WEAPON_BEHAVIOR_TYPE_UNDEFINED = 0,
  1878.     HALO_WEAPON_BEHAVIOR_TYPE_SHOTGUN,
  1879.     HALO_WEAPON_BEHAVIOR_TYPE_NEEDLER,
  1880.     HALO_WEAPON_BEHAVIOR_TYPE_PLASMA_PISTOL,
  1881.     HALO_WEAPON_BEHAVIOR_TYPE_PLASMA_RIFLE
  1882. };
  1883.  
  1884. enum halo_weap_trigger_overcharge_actions
  1885. {
  1886.     HALO_WEAP_TRIGGER_OVERCHARGE_ACTION_NONE = 0,
  1887.     HALO_WEAP_TRIGGER_OVERCHARGE_ACTION_EXPLODE,
  1888.     HALO_WEAP_TRIGGER_OVERCHARGE_ACTION_DISCHARGE
  1889. };
  1890.  
  1891. enum halo_weap_trigger_projectile_distribution_functions
  1892. {
  1893.     HALO_WEAP_TRIGGER_PROJECTILE_DISTRIBUTION_FUNCTION_POINT = 0,
  1894.     HALO_WEAP_TRIGGER_PROJECTILE_DISTRIBUTION_FUNCTION_HORIZONTAL_FAN
  1895. };
  1896.  
  1897. #pragma mark wphi
  1898.  
  1899. enum halo_interface_element_state_attachments
  1900. {
  1901.     HALO_INTERFACE_ELEMENT_STATE_ATTACHMENT_TOTAL_AMMO = 0,
  1902.     HALO_INTERFACE_ELEMENT_STATE_ATTACHMENT_LOADED_AMMO,
  1903.     HALO_INTERFACE_ELEMENT_STATE_ATTACHMENT_HEAT,
  1904.     HALO_INTERFACE_ELEMENT_STATE_ATTACHMENT_AGE,
  1905.     HALO_INTERFACE_ELEMENT_STATE_ATTACHMENT_SECONDARY_WEAPON_TOTAL_AMMO,
  1906.     HALO_INTERFACE_ELEMENT_STATE_ATTACHMENT_SECONDARY_WEAPON_LOADED_AMMO,
  1907.     HALO_INTERFACE_ELEMENT_STATE_ATTACHMENT_DISTANCE_TO_TARGET,
  1908.     HALO_INTERFACE_ELEMENT_STATE_ATTACHMENT_ELEVATION_TO_TARGET
  1909. };
  1910.  
  1911. enum halo_interface_element_map_type_compatibilities
  1912. {
  1913.     HALO_INTERFACE_ELEMENT_COMPATIBLE_WITH_ANY_MAP = 0,
  1914.     HALO_INTERFACE_ELEMENT_COMPATIBLE_WITH_SOLO_MAPS,
  1915.     HALO_INTERFACE_ELEMENT_COMPATIBLE_WITH_MULTIPLAYER_MAPS
  1916. };
  1917.  
  1918. enum halo_crosshair_types
  1919. {
  1920.     HALO_CROSSHAIR_TYPE_AIM = 0,
  1921.     HALO_CROSSHAIR_TYPE_ZOOM,
  1922.     HALO_CROSSHAIR_TYPE_CHARGE,
  1923.     HALO_CROSSHAIR_TYPE_SHOULD_RELOAD,
  1924.     HALO_CROSSHAIR_TYPE_FLASH_HEAT,
  1925.     HALO_CROSSHAIR_TYPE_FLASH_TOTAL_AMMO,
  1926.     HALO_CROSSHAIR_TYPE_FLASH_BATTERY,
  1927.     HALO_CROSSHAIR_TYPE_RELOAD_OVERHEAT,
  1928.     HALO_CROSSHAIR_TYPE_FLASH_WHEN_FIRING_AND_NO_AMMO,
  1929.     HALO_CROSSHAIR_TYPE_FLASH_WHEN_THROWING_AND_NO_GRENADE,
  1930.     HALO_CROSSHAIR_TYPE_LOW_AMMO_AND_NONE_LEFT_TO_RELOAD,
  1931.     HALO_CROSSHAIR_TYPE_SHOULD_RELOAD_SECONDARY_TRIGGER,
  1932.     HALO_CROSSHAIR_TYPE_FLASH_SECONDARY_TOTAL_AMMO,
  1933.     HALO_CROSSHAIR_TYPE_FLASH_SECONDARY_RELOAD,
  1934.     HALO_CROSSHAIR_TYPE_FLASH_WHEN_FIRING_SECONDARY_TRIGGER_WITH_NO_AMMO,
  1935.     HALO_CROSSHAIR_TYPE_LOW_SECONDARY_AMMO_AND_NONE_LEFT_TO_RELOAD,
  1936.     HALO_CROSSHAIR_TYPE_PRIMARY_TRIGGER_READY,
  1937.     HALO_CROSSHAIR_TYPE_SECONDARY_TRIGGER_READY,
  1938.     HALO_CROSSHAIR_TYPE_FLASH_WHEN_FIRING_WITH_DEPLETED_BATTERY
  1939. };
  1940.  
  1941. #pragma mark Memory
  1942.  
  1943. // halo.exe 1.0.10.621
  1944. enum halo_memory_addresses
  1945. {
  1946.     HALO_MEMORY_BASE = 0x40000000
  1947. };
  1948.  
  1949. // haloded.exe 1.0.10.621
  1950. enum haloded_memory_addresses
  1951. {
  1952.     HALODED_MEMORY_BASE = 0x40000000
  1953. };
  1954.  
  1955. // haloce.exe 1.0.10.621
  1956. enum haloce_memory_addresses
  1957. {
  1958.     HALOCE_MEMORY_BASE = 0x40000000
  1959. };
  1960.  
  1961. // haloceded.exe 1.0.10.621
  1962. enum haloceded_memory_addresses
  1963. {
  1964.     HALOCEDED_MEMORY_BASE = 0x40000000
  1965. };
  1966.  
  1967. // HaloMD with Halo Universal Binary 1.0.9.620
  1968. enum halomd_memory_addresses
  1969. {
  1970.     HALOMD_MEMORY_BASE = 0x40000000
  1971. };
  1972.  
  1973. #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement