pciteminfo.h
来自「天之炼狱1服务器端源文件游戏服务端不完整」· C头文件 代码 · 共 145 行
H
145 行
//////////////////////////////////////////////////////////////////////////////// Filename : PCItemInfo.h// Written By : elca// Description :// 酒捞袍 窍唱俊 措茄 沥焊甫 啊瘤绊 乐绰 菩哦捞促.// 谅钎扼电瘤, 捞棋飘俊 包茄 沥焊绰 啊瘤绊 乐瘤 臼促.// 牢亥配府客 包访等 咯矾 焙单俊辑 惑加登绢 荤侩等促.//////////////////////////////////////////////////////////////////////////////#ifndef __SLAYER_ITEM_INFO_H__#define __SLAYER_ITEM_INFO_H__#include "Types.h"#include "Exception.h"#include "SocketInputStream.h"#include "SocketOutputStream.h"#include "SubItemInfo.h"#include "Assert.h"//////////////////////////////////////////////////////////////////////////////// class PCItemInfo//////////////////////////////////////////////////////////////////////////////class PCItemInfo {public: PCItemInfo() throw(); virtual ~PCItemInfo() throw();public: void read (SocketInputStream & iStream) throw (ProtocolException, Error); void write (SocketOutputStream & oStream) const throw (ProtocolException, Error); string toString() const throw();public: void setObjectID(ObjectID_t ObjectID) throw() { m_ObjectID = ObjectID; } ObjectID_t getObjectID() const throw() { return m_ObjectID; } void setItemClass (BYTE IClass) throw() { m_IClass = IClass; } BYTE getItemClass () const throw() { return m_IClass; } void setItemType (ItemType_t ItemType) throw() { m_ItemType = ItemType; } ItemType_t getItemType() const throw() { return m_ItemType; } void addOptionType(OptionType_t OptionType) throw() { m_OptionType.push_back( OptionType ); } void setOptionType(const list<OptionType_t>& OptionType) throw() { m_OptionType = OptionType; } int getOptionTypeSize() const throw() { return m_OptionType.size(); } const list<OptionType_t>& getOptionType() const throw() { return m_OptionType; } OptionType_t popOptionType() throw() { if (m_OptionType.empty()) return 0; OptionType_t optionType = m_OptionType.front(); m_OptionType.pop_front(); return optionType; } void setSilver(Silver_t amount) throw() { m_Silver = amount; } Silver_t getSilver() const throw() { return m_Silver; } void setGrade(Grade_t grade) throw() { m_Grade = grade; } Grade_t getGrade() const throw() { return m_Grade; } void setDurability(Durability_t Durability) throw() { m_Durability = Durability; } Durability_t getDurability() const throw() { return m_Durability; } void setEnchantLevel(EnchantLevel_t level) throw() { m_EnchantLevel = level; } EnchantLevel_t getEnchantLevel() throw() { return m_EnchantLevel; } void setItemNum(ItemNum_t ItemNum) throw() { m_ItemNum = ItemNum; } ItemNum_t getItemNum() const throw() { return m_ItemNum; } void setMainColor(WORD MainColor) throw() { m_MainColor = MainColor; } WORD getMainColor() const throw() { return m_MainColor; } BYTE getListNum() const throw() { return m_ListNum; } void setListNum(BYTE ListNum) throw() { m_ListNum = ListNum; } void addListElement(SubItemInfo* pSubItemInfo) throw() { m_SubItemInfoList.push_back(pSubItemInfo); m_ListNum++; } void clearList() throw() { m_SubItemInfoList.clear(); m_ListNum = 0; } SubItemInfo* popFrontListElement() throw() { SubItemInfo* TempSubItemInfo = m_SubItemInfoList.front(); m_SubItemInfoList.pop_front(); return TempSubItemInfo; }public: uint getSize() throw() { return szObjectID + szBYTE + szItemType + szBYTE + m_OptionType.size() + szDurability + szSilver + szGrade + szEnchantLevel + szItemNum + szWORD + szBYTE + SubItemInfo::getMaxSize()*m_ListNum; } static uint getMaxSize() throw() { return szObjectID + szBYTE + szItemType + szBYTE + 255 + szDurability + szSilver + szGrade + szEnchantLevel + szItemNum + szWORD + szBYTE + SubItemInfo::getMaxSize()*8; }protected: ObjectID_t m_ObjectID; // item object id BYTE m_IClass; // item class ItemType_t m_ItemType; // item type list<OptionType_t> m_OptionType; // item option type Durability_t m_Durability; // item durability Silver_t m_Silver; // silver coating amount Grade_t m_Grade; // 酒捞袍 殿鞭 EnchantLevel_t m_EnchantLevel; // item enchant level ItemNum_t m_ItemNum; // number of item WORD m_MainColor; // item color BYTE m_ListNum; // number of sub item list<SubItemInfo*> m_SubItemInfoList; // actual sub item info};#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?