Ejemplo n.º 1
0
 public int getSize()
 {
     return sizeof(Byte) * 2 + sizeof(uint) + m_ItemID.getSize();
 }
Ejemplo n.º 2
0
    public int getSize()
    {
        int        CreatorSize = GetCreatorVar() ? (sizeof(byte) * ItemDefine.MAX_ITEM_CREATOR_NAME) : 0;
        ITEM_CLASS IC          = (ITEM_CLASS)ItemClass();

        if (IC == ITEM_CLASS.ICLASS_EQUIP)
        {
            return(m_ItemGUID.getSize() +                                                                   //// _ITEM.m_ItemGUID
                   sizeof(uint) +                                                                           //// _ITEM.m_ItemIndex
                   sizeof(byte) +                                                                           //// _ITEM.m_RulerID
                   sizeof(byte) +                                                                           //// _ITEM.m_nsBind
                   sizeof(int) * ItemDefine.MAX_ITEM_PARAM +                                                //// _ITEM.m_Param
                   //////////////////////////////////////////////////////////////////////////
                   sizeof(short) * 2 +                                                                      //// SHORT+USHORT (m_SetNum;m_CurDamagePoint)
                   sizeof(uint) * 2 +                                                                       //// m_BasePrice;m_nNextDangCiItemSN;;;
                   m_Equip.m_pAttr[0].getSize() * m_Equip.m_AttrCount +                                     //// _ITEM.m_pAttr
                   m_Equip.m_pGemInfo[0].getSize() * GAMEDEFINE.MAX_ITEM_GEM + /*it.m_Equip.m_StoneCount+*/ // _ITEM.m_pGemInfo因为镶嵌需要必须要MAX_ITEM_GEM个 [2011-9-28] by: cfp+
                   sizeof(byte) * 12 +                                                                      //// (m_MaxNum,m_EquipPoint,m_MaxDurPoint,m_NeedLevel,m_nDangCi,
                   //// m_GemMax,m_EquipEnhanceLevel,m_FaileTimes,m_CurDurPoint, m_AttrCount,m_StoneCount, m_CurSoulType)

                   CreatorSize);                                                                                //// _ITEM.m_Creator
        }
        else if (IC == ITEM_CLASS.ICLASS_GEM)
        {
            return(m_ItemGUID.getSize() +
                   sizeof(uint) +
                   sizeof(byte) +
                   sizeof(byte) +
                   sizeof(int) * ItemDefine.MAX_ITEM_PARAM +
                   CreatorSize +
                   m_Gem.getSize());
        }
        else if (IC == ITEM_CLASS.ICLASS_COMITEM)
        {
            return(m_ItemGUID.getSize() +
                   sizeof(uint) +
                   sizeof(char) +
                   sizeof(char) +
                   sizeof(int) * ItemDefine.MAX_ITEM_PARAM +
                   CreatorSize +
                   m_Medic.getSize());
        }
        else if (IC == ITEM_CLASS.ICLASS_MATERIAL)
        {
            return(m_ItemGUID.getSize() +
                   sizeof(uint) +
                   sizeof(char) +
                   sizeof(char) +
                   sizeof(int) * ItemDefine.MAX_ITEM_PARAM +
                   CreatorSize +
                   m_Medic.getSize());
        }
        else if (IC == ITEM_CLASS.ICLASS_TASKITEM)
        {
            return(m_ItemGUID.getSize() +
                   sizeof(uint) +
                   sizeof(char) +
                   sizeof(char) +
                   sizeof(int) * ItemDefine.MAX_ITEM_PARAM +
                   CreatorSize +
                   m_Medic.getSize());
        }
        else if (IC == ITEM_CLASS.ICLASS_TALISMAN)
        {
            return(m_ItemGUID.getSize() +
                   sizeof(uint) +
                   sizeof(char) +
                   sizeof(char) +
                   sizeof(int) * ItemDefine.MAX_ITEM_PARAM +
                   CreatorSize +
                   m_Talisman.getSize());
        }
        else if (IC == ITEM_CLASS.ICLASS_SYMBOLITEM)
        {
            return(m_ItemGUID.getSize() +
                   sizeof(uint) +
                   sizeof(byte) +
                   sizeof(byte) +
                   sizeof(int) * ItemDefine.MAX_ITEM_PARAM +
                   CreatorSize +
                   m_Charm.getSize());
        }
        //else if (it.ItemClass() == ICLASS_STOREMAP)
        //{
        //    return sizeof(_ITEM_GUID) +
        //        sizeof(UINT) +
        //        sizeof(CHAR) +
        //        sizeof(CHAR) +
        //        sizeof(INT) * MAX_ITEM_PARAM +
        //        CreatorSize +
        //        sizeof(STORE_MAP_INFO);

        //}
        else
        {
            return(m_ItemGUID.getSize() +
                   sizeof(uint) +
                   sizeof(byte) +
                   sizeof(int) * ItemDefine.MAX_ITEM_PARAM +
                   CreatorSize +
                   sizeof(byte));
        }
    }