Example #1
0
    public bool Equip_InsertEquipItem(EAObjID _id, uint slot, EA_CItemUnit pitem)
    {
        EA_CCharBPlayer pActor = EACObjManager.instance.GetActor(_id);

        if (pActor == null)
        {
            return(false);
        }

        if (pActor.GetObjInfo().m_eObjType == eObjectType.CT_MYPLAYER)
        {
            EA_Equipment pEquipment = m_myPlItemManager.GetEquip();

            if (pEquipment != null)
            {
                pEquipment.InsertEquipItem(slot, pitem);
            }
        }
        else
        {
            EA_Equipment pEquipment = m_PCItemManager.Get_PCEquipItem(_id);

            if (pEquipment == null)
            {
                pEquipment = new EA_Equipment();
                m_PCItemManager.InsertPCEquip(_id, pEquipment);
            }

            //  [4/10/2014 puos] Equipped with items
            pEquipment.InsertEquipItem(slot, pitem);
        }

        return(true);
    }
Example #2
0
    /*! 장비 해제하기*/
    bool RemoveItem(EAObjID _id, uint slot)
    {
        if (m_PCEquipMap.ContainsKey(_id) == true)
        {
            return(false);
        }

        EA_Equipment pEquipment = m_PCEquipMap[_id];

        pEquipment.RemoveEquipItembySlot(slot);
        return(true);
    }
Example #3
0
    /*! 장비 저장하기*/
    public bool     EquipItem(EAObjID _id, uint slot, EA_CItemUnit pItem)
    {
        if (m_PCEquipMap.ContainsKey(_id) == true)
        {
            return(false);
        }

        EA_Equipment pEquipment = m_PCEquipMap[_id];

        pEquipment.InsertEquipItem(slot, pItem);

        return(true);
    }
Example #4
0
    public void PCItemSystemClear()
    {
        foreach (KeyValuePair <EAObjID, EA_Equipment> pEquipData in m_PCEquipMap)
        {
            EA_Equipment pEquipment = m_PCEquipMap[pEquipData.Key];

            if (pEquipment != null)
            {
                pEquipment.RemoveAllItem();
            }
        }

        m_PCEquipMap.Clear();
    }
Example #5
0
    /*! Player_id로 해당 pc 장비 삭제.*/
    public bool RemovePCEquip(EAObjID _id)
    {
        if (m_PCEquipMap.ContainsKey(_id) == true)
        {
            EA_Equipment pEquipment = m_PCEquipMap[_id];

            if (pEquipment != null)
            {
                pEquipment.RemoveAllItem();
                pEquipment = null;
            }

            m_PCEquipMap.Remove(_id);
            return(true);
        }
        return(false);
    }
Example #6
0
    /*! Mount item in equipment slot */
    public bool EquipmentItem(EAObjID _id, uint equip_slot)
    {
        EA_CCharBPlayer pUser = EACObjManager.instance.GetActor(_id);

        EA_Equipment pEquipment = null;

        if (pUser.GetObjInfo().m_eObjType == eObjectType.CT_MYPLAYER)
        {
            pEquipment = m_myPlItemManager.GetEquip();
        }
        else
        {
            pEquipment = m_PCItemManager.Get_PCEquipItem(_id);
        }

        pEquipment.EquipItem(pUser, equip_slot);

        return(true);
    }
Example #7
0
    public EA_Equipment Equip_FindEqipment(EAObjID _id)
    {
        EA_CCharBPlayer pActor = EACObjManager.instance.GetActor(_id);

        EA_Equipment pEquipment = null;

        if (pActor != null)
        {
            if (pActor.GetObjInfo().m_eObjType == eObjectType.CT_MYPLAYER)
            {
                pEquipment = m_myPlItemManager.GetEquip();
            }
            else
            {
                pEquipment = m_PCItemManager.Get_PCEquipItem(_id);
            }
        }

        return(pEquipment);
    }
Example #8
0
    /// <summary>
    ///
    /// </summary>
    protected void FindWeapon()
    {
        EA_CCharBPlayer pActor = GetCharBase();

        EA_Equipment pEquipment = null;

        //2017 1126 Consider even without weapons
        m_pCurWeapon = null;

        if (pActor != null)
        {
            pEquipment = EA_ItemManager.instance.Equip_FindEqipment(pActor.GetObjID());
        }

        if (pEquipment != null)
        {
            EA_CItemUnit pItemUnit = pEquipment.GetCurrentItem();

            if (pItemUnit != null)
            {
                EA_CItem pItem = EACObjManager.instance.GetItemObject(pItemUnit.GetObjId());

                if (pItem != null)
                {
                    Debug.Assert(pItem.GetLinkItem() != null, "EAActor FindWeapon pItem.GetLinkItem() is null");

                    if (pItem.GetLinkItem() != null)
                    {
                        m_pCurWeapon = (EAWeapon)pItem.GetLinkItem() as EAWeapon;
                    }
                }
            }
        }

        //  [5/28/2018 puos] bug fixed
        if (m_pCurWeapon == null)
        {
            if (pActor != null)
            {
                pEquipment = EA_ItemManager.instance.Equip_FindEqipment(pActor.GetObjID());
            }

            if (pEquipment != null)
            {
                EA_CItemUnit pItemUnit = pEquipment.GetCurrentItem();

                if (pItemUnit != null)
                {
                    EA_CItem pItem = EACObjManager.instance.GetItemObject(pItemUnit.GetObjId());

                    if (pItem != null)
                    {
                        Debug.Assert(pItem.GetLinkItem() != null, "EAActor FindWeapon2 pItem.GetLinkItem() is null");

                        if (pItem.GetLinkItem() != null)
                        {
                            m_pCurWeapon = (EAWeapon)pItem.GetLinkItem() as EAWeapon;
                        }
                    }
                }
            }
        }
    }
Example #9
0
 /*! Player_id로 해당 actor 장비 아이템 생성.*/
 public bool     InsertPCEquip(EAObjID _id, EA_Equipment pPLEquip)
 {
     m_PCEquipMap.Add(_id, pPLEquip);
     return(true);
 }