1
0
cuberite-2a/src/Color.h
Samuel Barney 561296f269 Leather Armor can now be dyed.
* Created new color class to handle dye-related coloring
2015-07-15 14:05:36 -06:00

59 lines
1.1 KiB
C++

// 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 = 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 = COLOR_NONE; }
// tolua_end
unsigned int m_Color;
};