// *** OpenGTA3 ***
// color struct ad related objects

#pragma pack(push, 1)
union RGBA {
	DWORD color;
	struct {
		BYTE r;
		BYTE g;
		BYTE b;
		BYTE a;
	};

	RGBA () {}
	RGBA (BYTE _r, BYTE _g, BYTE _b, BYTE _a);
	RGBA (DWORD c);

	void set (BYTE _r, BYTE _g, BYTE _b, BYTE _a);
	void set (DWORD c);
};

// TODO: menu colors?
class CBaseColors {
public:

	CBaseColors ();	// >> 58FDA0

	RGBA * get (RGBA * c, int index);	// >> 58FEA0 (32)
	RGBA * get (RGBA * c, int index, BYTE alpha);	// >> 58FEE0

	RGBA colors[15];
};

extern CBaseColors baseColors;
#pragma pack(pop)