1 #ifndef _included_vision_h_ 2 #define _included_vision_h_ 3 4 #ifdef __cplusplus 5 extern "C" { 6 #endif 7 8 //#include "d3_func.h" 9 10 /*KJL**************************************************************************************** 11 * P R O T O T Y P E S * 12 ****************************************************************************************KJL*/ 13 enum PREDOVISION_ID 14 { 15 PREDOVISION_NORMAL, 16 PREDOVISION_SPECTRUM 17 }; 18 struct PredOVisionDescriptor 19 { 20 enum PREDOVISION_ID VisionMode; 21 int FadeLevel; 22 unsigned char VisionIsChanging :1; 23 unsigned char FadingToWhite :1; 24 }; 25 26 enum MARINEOVISION_ID 27 { 28 MARINEOVISION_NORMAL, 29 MARINEOVISION_INTENSIFIED 30 }; 31 struct MarineOVisionDescriptor 32 { 33 enum MARINEOVISION_ID VisionMode; 34 int FadeLevel; 35 unsigned char VisionIsChanging :1; 36 unsigned char FadingToWhite :1; 37 }; 38 39 /* JH 29/5/97 - define a structure to control how D3D does the lighting */ 40 enum D3DLCC_Mode 41 { 42 LCCM_NORMAL, /* default behaviour, white light - all other parms ignored */ 43 LCCM_CONSTCOLOUR, /* r,g,b specify a colour of a light to use instead of white */ 44 LCCM_FUNCTIONOFINTENSITY /* GetR, GetG, GetB are function pointers to get r,g,b as function of intensity */ 45 }; 46 struct D3DLightColourControl 47 { 48 enum D3DLCC_Mode ctrl; 49 50 /* these should be in [0..ONE_FIXED] */ 51 int r; 52 int g; 53 int b; 54 55 /* these should return from [0..255] 56 their parameters are [0..255] */ 57 int (*GetR)(int); 58 int (*GetG)(int); 59 int (*GetB)(int); 60 }; 61 extern struct D3DLightColourControl d3d_light_ctrl; 62 63 /* KJL 17:07:29 10/02/98 - all new vision modes */ 64 enum VISION_MODE_ID 65 { 66 VISION_MODE_NORMAL, 67 VISION_MODE_ALIEN_SENSE, 68 69 VISION_MODE_IMAGEINTENSIFIER, 70 VISION_MODE_PRED_THERMAL, 71 VISION_MODE_PRED_SEEALIENS, 72 VISION_MODE_PRED_SEEPREDTECH, 73 74 NUMBER_OF_VISION_MODES 75 }; 76 77 extern enum VISION_MODE_ID CurrentVisionMode; 78 79 80 81 extern struct D3DOverlayColourControl d3d_overlay_ctrl; 82 extern void HandleD3DScreenFading(void); 83 84 extern void SetupPredOVision(void); 85 extern void HandlePredOVision(void); 86 extern void SetupMarineOVision(void); 87 extern void HandleMarineOVision(void); 88 extern void HandleAlienOVision(void); 89 90 extern int IsVisionChanging(void); 91 92 extern void ChangePredatorVisionMode(void); 93 94 95 extern void SetupVision(void); 96 #ifdef __cplusplus 97 } 98 #endif 99 100 #endif /* ! _included_vision_h_ */ 101