1 #ifndef __AVP_WIN95_D3D_HUD_H__
2 #define __AVP_WIN95_D3D_HUD_H__
3 
4 #include "langenum.h"
5 
6 extern int TransparencyLevelOfHUD;
7 /* takes values of 0 (not drawn) to 255 (opaque) */
8 
9 struct VertexTag
10 {
11 	int X;
12 	int Y;
13 	int U;
14 	int V;
15 };
16 
17 typedef struct
18 {
19 	int ImageNumber;
20 
21 	int TopLeftX;
22 	int TopLeftY;
23 
24 	int TopLeftU;
25 	int TopLeftV;
26 
27 	int Width;
28 	int Height;
29 
30 	int Scale;
31 
32 	unsigned char Red;
33 	unsigned char Green;
34 	unsigned char Blue;
35 	unsigned char Translucency; /* 0 == invisible, 255 == opaque */
36 
37 } HUDImageDesc;
38 
39 
40 typedef struct
41 {
42 	char Character;
43 	int X;
44 	int Y;
45 
46 	unsigned char Red;
47 	unsigned char Green;
48 	unsigned char Blue;
49 	unsigned char Alpha;
50 
51 } HUDCharDesc;
52 
53 extern void D3D_HUD_Setup(void);
54 extern void D3D_HUDQuad_Output(int imageNumber,struct VertexTag *quadVerticesPtr,unsigned int colour);
55 
56 extern void D3D_DrawHUDFontCharacter(HUDCharDesc *charDescPtr);
57 extern void D3D_DrawHUDDigit(HUDCharDesc *charDescPtr);
58 
59 
60 extern void D3D_BlitWhiteChar(int x, int y, unsigned char c);
61 
62 
63 
64 /* KJL 17:55:48 18/04/98 - called by HUD.c */
65 extern void Render_HealthAndArmour(unsigned int health, unsigned int armour);
66 extern void Render_MarineAmmo(enum TEXTSTRING_ID ammoText, enum TEXTSTRING_ID magazinesText, unsigned int magazines, enum TEXTSTRING_ID roundsText, unsigned int rounds, int primaryAmmo);
67 void D3D_DrawHUDPredatorDigit(HUDCharDesc *charDescPtr, int scale);
68 void Draw_HUDImage(HUDImageDesc *imageDescPtr);
69 
70 #endif
71