1 #ifndef __AVP_WIN95_FRONTEND_AVP_MENUGFX_HPP__
2 #define __AVP_WIN95_FRONTEND_AVP_MENUGFX_HPP__
3 
4 /* KJL 12:27:18 26/06/98 - AvP_MenuGfx.hpp */
5 
6 enum AVPMENUGFX_ID
7 {
8 	AVPMENUGFX_CLOUDY,
9 	AVPMENUGFX_SMALL_FONT,
10 	AVPMENUGFX_COPYRIGHT_SCREEN,
11 
12 	AVPMENUGFX_PRESENTS,
13 	AVPMENUGFX_AREBELLIONGAME,
14 	AVPMENUGFX_ALIENSVPREDATOR,
15 
16 	AVPMENUGFX_SLIDERBAR,
17 	AVPMENUGFX_SLIDER,
18 
19 	AVPMENUGFX_BACKDROP,
20 	AVPMENUGFX_ALIENS_LOGO,
21 	AVPMENUGFX_ALIEN_LOGO,
22 	AVPMENUGFX_MARINE_LOGO,
23 	AVPMENUGFX_PREDATOR_LOGO,
24 
25 	AVPMENUGFX_GLOWY_LEFT,
26 	AVPMENUGFX_GLOWY_MIDDLE,
27 	AVPMENUGFX_GLOWY_RIGHT,
28 
29 	AVPMENUGFX_MARINE_EPISODE1,
30 	AVPMENUGFX_MARINE_EPISODE2,
31 	AVPMENUGFX_MARINE_EPISODE3,
32 	AVPMENUGFX_MARINE_EPISODE4,
33 	AVPMENUGFX_MARINE_EPISODE5,
34 	AVPMENUGFX_MARINE_EPISODE6,
35 
36 	AVPMENUGFX_MARINE_EPISODE7,
37 	AVPMENUGFX_MARINE_EPISODE8,
38 	AVPMENUGFX_MARINE_EPISODE9,
39 	AVPMENUGFX_MARINE_EPISODE10,
40 	AVPMENUGFX_MARINE_EPISODE11,
41 
42 	AVPMENUGFX_PREDATOR_EPISODE1,
43 	AVPMENUGFX_PREDATOR_EPISODE2,
44 	AVPMENUGFX_PREDATOR_EPISODE3,
45 	AVPMENUGFX_PREDATOR_EPISODE4,
46 	AVPMENUGFX_PREDATOR_EPISODE5,
47 	AVPMENUGFX_PREDATOR_EPISODE6,
48 
49 	AVPMENUGFX_PREDATOR_EPISODE7,
50 	AVPMENUGFX_PREDATOR_EPISODE8,
51 	AVPMENUGFX_PREDATOR_EPISODE9,
52 	AVPMENUGFX_PREDATOR_EPISODE10,
53 	AVPMENUGFX_PREDATOR_EPISODE11,
54 
55 	AVPMENUGFX_ALIEN_EPISODE1,
56 	AVPMENUGFX_ALIEN_EPISODE2,
57 	AVPMENUGFX_ALIEN_EPISODE3,
58 	AVPMENUGFX_ALIEN_EPISODE4,
59 	AVPMENUGFX_ALIEN_EPISODE5,
60 	AVPMENUGFX_ALIEN_EPISODE6,
61 	AVPMENUGFX_ALIEN_EPISODE7,
62 	AVPMENUGFX_ALIEN_EPISODE8,
63 	AVPMENUGFX_ALIEN_EPISODE9,
64 	AVPMENUGFX_ALIEN_EPISODE10,
65 
66 	AVPMENUGFX_WINNER_SCREEN,
67 
68 	AVPMENUGFX_SPLASH_SCREEN1,
69 	AVPMENUGFX_SPLASH_SCREEN2,
70 	AVPMENUGFX_SPLASH_SCREEN3,
71 	AVPMENUGFX_SPLASH_SCREEN4,
72 	AVPMENUGFX_SPLASH_SCREEN5,
73 
74 	MAX_NO_OF_AVPMENUGFXS,
75 };
76 
77 typedef struct
78 {
79 	char *FilenamePtr;
80 	void *ImagePtr;
81 
82 	AW_BACKUPTEXTUREHANDLE hBackup;
83 	int Width;
84 	int Height;
85 
86 } AVPMENUGFX;
87 
88 enum AVPMENUFORMAT_ID
89 {
90 	AVPMENUFORMAT_LEFTJUSTIFIED,
91 	AVPMENUFORMAT_RIGHTJUSTIFIED,
92 	AVPMENUFORMAT_CENTREJUSTIFIED,
93 };
94 
95 extern void LoadAvPMenuGfx(enum AVPMENUGFX_ID menuGfxID);
96 extern void LoadAllAvPMenuGfx(void);
97 extern void LoadAllSplashScreenGfx(void);
98 extern void ReleaseAllAvPMenuGfx(void);
99 
100 extern int RenderMenuText(const char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format);
101 
102 extern int RenderSmallMenuText(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format);
103 extern int RenderSmallMenuText_Coloured(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int red, int green, int blue);
104 
105 extern int Hardware_RenderSmallMenuText(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format);
106 extern int Hardware_RenderSmallMenuText_Coloured(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int red, int green, int blue);
107 
108 extern int RenderMenuText_Clipped(char *textPtr, int x, int y, int alpha, enum AVPMENUFORMAT_ID format, int topY, int bottomY);
109 extern void RenderSmallFontString_Wrapped(const char *textPtr,RECT* area,int alpha,int* output_x,int* output_y);
110 extern void Hardware_RenderKeyConfigRectangle(int alpha);
111 extern void RenderKeyConfigRectangle(int alpha);
112 extern void Hardware_RenderHighlightRectangle(int x1,int y1,int x2,int y2,int r, int g, int b);
113 extern void RenderHighlightRectangle(int x1,int y1,int x2,int y2, int r, int g, int b);
114 
115 
116 extern void DrawAvPMenuGfx(enum AVPMENUGFX_ID menuGfxID, int topleftX, int topleftY, int alpha,enum AVPMENUFORMAT_ID format);
117 extern void DrawAvPMenuGfx_Clipped(enum AVPMENUGFX_ID menuGfxID, int topleftX, int topleftY, int alpha,enum AVPMENUFORMAT_ID format, int topY, int bottomY);
118 extern void DrawAvPMenuGfx_CrossFade(enum AVPMENUGFX_ID menuGfxID,enum AVPMENUGFX_ID menuGfxID2,int alpha);
119 extern void DrawAvPMenuGfx_Faded(enum AVPMENUGFX_ID menuGfxID, int topleftX, int topleftY, int alpha,enum AVPMENUFORMAT_ID format);
120 extern int HeightOfMenuGfx(enum AVPMENUGFX_ID menuGfxID);
121 
122 
123 extern void ClearScreenToBlack(void);
124 extern void InitialiseMenuGfx(void);
125 
126 #endif
127