#ifndef _CHAR_ITEM_PACKET_STRUCT_H_ #define _CHAR_ITEM_PACKET_STRUCT_H_ #include #include #pragma pack(1) // ÇÊµå ¿ÀºêÁ§Æ® ±¸Á¶Ã¼ typedef struct FieldObject* LPFieldObject; struct FieldObject { enum CheckBit { Gold = 0x80000000 }; POS m_Pos; // ¾ÆÀÌÅÛ À§Ä¡ unsigned long m_dwOID; // ¿ÀºêÁ§Æ® ¾ÆÀ̵ð ( ¸ó½ºÅÍ È¤Àº Object ) unsigned long m_dwTypeID; // ŸÀÔ ¾ÆÀ̵ð (»óÀ§ 1ºñÆ® ¼ÂÀÌ¸é µ·) unsigned long m_dwStatusFlag; // ¸ó½ºÅÍ chant, enchant »óÅ Flag unsigned char m_cNum; // ¾ÆÀÌÅÛ ¼ö }; // TakeType typedef struct TakeType* LPTakeType; struct TakeType { enum TakeSource { TS_NONE = 0, TS_EQUIP = 1, TS_INVEN = 2, TS_QSLOT = 3, TS_SSLOT = 4, TS_TEMP = 6, TS_UPGRADE = 7, TS_EXCHANGE = 8, TS_DEPOSIT = 9, TS_STALL = 10 }; Item::ItemPos m_srcPos; Item::ItemPos m_dstPos; unsigned char m_cNum; TakeType() : m_cNum(0) { } TakeType(Item::ItemPos srcPos, Item::ItemPos dstPos, unsigned char cNum) : m_srcPos(srcPos), m_dstPos(dstPos), m_cNum(cNum) { } }; // ij½ºÆ® ¿ÀºêÁ§Æ® ±¸Á¶Ã¼ (Cast Object) typedef struct CastObject* LPCastObject; struct CastObject { POS m_DstPos; // ¸ñÀû À§Ä¡ unsigned long m_dwTargetID; // Ÿ°Ù ¾ÆÀ̵ð unsigned short m_wTypeID; // ¾ÆÀ̵ð ( µ·Àϰæ¿ì ±Ý¾× ) unsigned char m_cObjectType; // Á¾·ù ( 0 = ij½ºÆ®, ¾îÅØ ·ù, 2 = µ· ) unsigned char m_cObjectLevel; // ·¹º§ }; #pragma pack() #endif