// Color.h // Declares a class to handle item color related code #pragma once // tolua_begin class cColor { public: enum { COLOR_MIN = 0, COLOR_MAX = 255, COLOR_LIMIT = 256, COLOR_NONE = 0xFFFFFFFF, }; cColor() { m_Color = static_cast(COLOR_NONE);} cColor(unsigned char a_Red, unsigned char a_Green, unsigned char a_Blue) { SetColor(a_Red, a_Green, a_Blue); } /// Returns whether the color is a valid color bool IsValid() const { return m_Color != COLOR_NONE; } /// Changes the color void SetColor(unsigned char a_Red, unsigned char a_Green, unsigned char a_Blue); /// Alters the red value of the color void SetRed(unsigned char a_Red); /// Alters the green value of the color void SetGreen(unsigned char a_Red); /// Alters the blue value of the color void SetBlue(unsigned char a_Red); /// Returns the red value of the color unsigned char GetRed() const; /// Returns the green value of the color unsigned char GetGreen() const; /// Returns the blue value of the color unsigned char GetBlue() const; /// Resets the color void Clear() { m_Color = static_cast(COLOR_NONE); } // tolua_end unsigned int m_Color; };