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 + -
显示快捷键?