pcoustersinfo3.h

来自「天之炼狱1服务器端源文件游戏服务端不完整」· C头文件 代码 · 共 243 行

H
243
字号
//////////////////////////////////////////////////////////////////////////////// Filename    : PCOustersInfo3.h// Written By  : Reiot// Description ://////////////////////////////////////////////////////////////////////////////#ifndef __PC_OUSTERS_INFO_3_H__#define __PC_OUSTERS_INFO_3_H__#include "PCInfo.h"#include "Assert.h"//////////////////////////////////////////////////////////////////////////////// class PCOustersInfo3;// 轨颇捞绢狼 寇葛 沥焊甫 淬绊 乐绰 按眉// GCAddOusters, GCAddOustersCorpse 俊 淬败辑 傈价等促.//////////////////////////////////////////////////////////////////////////////class PCOustersInfo3 : public PCInfo {public:	// Ousters Color Informations	enum OustersColors 	{		OUSTERS_COLOR_COAT,		OUSTERS_COLOR_HAIR,		OUSTERS_COLOR_ARM,		OUSTERS_COLOR_BOOTS,		OUSTERS_COLOR_MAX	};public:	PCOustersInfo3 () throw () 	{	}	PCOustersInfo3 (const PCOustersInfo3 & oustersInfo) throw ()		: m_ObjectID(oustersInfo.m_ObjectID), m_Name(oustersInfo.m_Name), 		m_X(oustersInfo.m_X), m_Y(oustersInfo.m_Y), m_Dir(oustersInfo.m_Dir),		m_Sex(oustersInfo.m_Sex), m_CoatType(oustersInfo.m_CoatType), m_ArmType(oustersInfo.m_ArmType), m_SylphType(oustersInfo.m_SylphType),		m_CurrentHP(oustersInfo.m_CurrentHP), m_MaxHP(oustersInfo.m_MaxHP), m_AttackSpeed(oustersInfo.m_AttackSpeed),		m_Alignment(oustersInfo.m_Alignment), m_GuildID(oustersInfo.m_GuildID),		m_Rank(oustersInfo.m_Rank)	{		for (uint i = 0 ; i < OUSTERS_COLOR_MAX ; i ++)			m_Colors[i] = oustersInfo.m_Colors[i];		m_Competence = oustersInfo.m_Competence;	}	public:	PCType getPCType () const throw () { return PC_OUSTERS; }	void read (SocketInputStream & iStream) throw (ProtocolException, Error);	void write (SocketOutputStream & oStream) const throw (ProtocolException, Error);	uint getSize () const throw ()	{		return szObjectID					// ObjectID			+ szBYTE + m_Name.size() 		// 轨颇捞绢 捞抚			+ szCoord + szCoord + szDir 	// 谅钎客 规氢							+ szSex							// 己喊			+ szBYTE						// shape			+ szColor* OUSTERS_COLOR_MAX	// 祸惑			+ szHP* 2						// 弥措 眉仿			+ szAlignment					// 己氢			+ szSpeed						// 傍拜 加档			+ szGuildID						// 辨靛 酒捞叼			+ szRank						// 拌鞭			+ szBYTE;						// 鼻茄	}	// get max size of object	static uint getMaxSize () throw ()	{		return szObjectID					// ObjectID			+ szBYTE + 20 					// 轨颇捞绢 捞抚			+ szCoord + szCoord + szDir 	// 谅钎客 规氢							+ szSex							// 己喊			+ szBYTE						// shape			+ szColor* OUSTERS_COLOR_MAX	// 祸惑			+ szHP* 2						// 弥措 眉仿			+ szSpeed						// 傍拜 加档			+ szGuildID						// 辨靛 酒捞叼			+ szRank						// 拌鞭			+ szBYTE;						// 鼻茄	}	PCOustersInfo3 & operator = (const PCOustersInfo3 & oustersInfo) throw ()	{		if (&oustersInfo == this)			return *this;		m_ObjectID = oustersInfo.m_ObjectID;		m_Name = oustersInfo.m_Name;		m_X = oustersInfo.m_X;		m_Y = oustersInfo.m_Y;		m_Dir = oustersInfo.m_Dir;		m_Sex = oustersInfo.m_Sex;		m_CoatType = oustersInfo.m_CoatType;		m_ArmType = oustersInfo.m_ArmType;		m_SylphType = oustersInfo.m_SylphType;		m_CurrentHP = oustersInfo.m_CurrentHP;		m_MaxHP = oustersInfo.m_MaxHP;		m_AttackSpeed = oustersInfo.m_AttackSpeed;		m_Alignment = oustersInfo.m_Alignment;		for (uint i = 0 ; i < OUSTERS_COLOR_MAX ; i ++)			m_Colors[i] = oustersInfo.m_Colors[i];		m_Competence = oustersInfo.m_Competence;		m_GuildID = oustersInfo.m_GuildID;		m_Rank = oustersInfo.m_Rank;		return *this;	}	string toString () const throw ();public:	ObjectID_t getObjectID () const throw () { return m_ObjectID; }	void setObjectID (ObjectID_t objectID) throw () { m_ObjectID = objectID; }    string getName () const throw () { return m_Name; }    void setName (const string & name) throw (Error) { m_Name = name; Assert(m_Name != ""); }	Coord_t getX () const throw () { return m_X; }	void setX (Coord_t x) throw () { m_X = x; }	Coord_t getY () const throw () { return m_Y; }	void setY (Coord_t y) throw () { m_Y = y; }	Dir_t getDir () const throw () { return m_Dir; }	void setDir (Dir_t dir) throw () { m_Dir = dir; }	Sex getSex () const throw () { return m_Sex; }	void setSex (Sex sex) throw () { m_Sex = sex; }	void setSex (const string & sex) throw (InvalidProtocolException)	{		if (sex == Sex2String[MALE]) 			m_Sex = MALE;		else if (sex == Sex2String[FEMALE]) 			m_Sex = FEMALE;		else			throw InvalidProtocolException("invalid sex value");	}	Color_t getCoatColor () const throw () { return m_Colors[OUSTERS_COLOR_COAT]; }	void setCoatColor (Color_t coatColor) throw () { m_Colors[OUSTERS_COLOR_COAT] = coatColor; }	Color_t getHairColor () const throw () { return m_Colors[OUSTERS_COLOR_HAIR]; }	void setHairColor (Color_t hairColor) throw () { m_Colors[OUSTERS_COLOR_HAIR] = hairColor; }	Color_t getArmColor () const throw () { return m_Colors[OUSTERS_COLOR_ARM]; }	void setArmColor (Color_t armColor) throw () { m_Colors[OUSTERS_COLOR_ARM] = armColor; }	Color_t getBootsColor () const throw () { return m_Colors[OUSTERS_COLOR_BOOTS]; }	void setBootsColor (Color_t bootsColor) throw () { m_Colors[OUSTERS_COLOR_BOOTS] = bootsColor; }	OustersCoatType getCoatType() const throw() { return m_CoatType; }    void setCoatType(OustersCoatType CoatType) throw() { m_CoatType = CoatType; }	OustersArmType getArmType() const throw() { return m_ArmType; }    void setArmType(OustersArmType ArmType) throw() { m_ArmType = ArmType; }	OustersSylphType getSylphType() const throw() { return m_SylphType; }    void setSylphType(OustersSylphType SylphType) throw() { m_SylphType = SylphType; }	HP_t getCurrentHP() const throw() { return m_CurrentHP; }	void setCurrentHP(HP_t CurrentHP) throw() { m_CurrentHP = CurrentHP; }	HP_t getMaxHP() const throw() { return m_MaxHP; }	void setMaxHP(HP_t MaxHP) throw() { m_MaxHP = MaxHP; }	Speed_t getAttackSpeed() const throw() { return m_AttackSpeed; }	void setAttackSpeed(Speed_t AttackSpeed) throw() { m_AttackSpeed = AttackSpeed; }	Alignment_t getAlignment() const throw() { return m_Alignment; }	void setAlignment(Alignment_t Alignment)  throw() { m_Alignment = Alignment; }	BYTE getCompetence(void) const { return m_Competence; }	void setCompetence(BYTE competence) { m_Competence = competence; }	GuildID_t getGuildID(void) const { return m_GuildID; }	void setGuildID(GuildID_t GuildID ) { m_GuildID = GuildID; }	Rank_t getRank () const throw () { return m_Rank; }	void setRank (Rank_t rank) throw () { m_Rank = rank; }private :	// PC's object id	ObjectID_t m_ObjectID;	// PC name	string m_Name;	Coord_t m_X;	Coord_t m_Y;	Dir_t m_Dir;	// PC sex	Sex m_Sex;	// CoatType	OustersCoatType m_CoatType;	// ArmType	OustersArmType m_ArmType;	// SylphType	OustersSylphType m_SylphType;	// colors	Color_t m_Colors[OUSTERS_COLOR_MAX];	// Current HP	HP_t m_CurrentHP;	// Max HP	HP_t m_MaxHP;	// Attack Speed	Speed_t m_AttackSpeed;	// 己氢	Alignment_t m_Alignment;	// 鼻茄	BYTE m_Competence; 	// 辨靛 酒捞叼	GuildID_t m_GuildID;	// 拌鞭	Rank_t		m_Rank;};#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?