コード例 #1
0
    public void OnCellForItems(ScrollGridCell itemCell)
    {
        int                      index       = itemCell.index;
        ItemBean                 itemBean    = listItemData[index];
        ItemsInfoBean            itemInfo    = GameItemsHandler.Instance.manager.GetItemsById(itemBean.itemId);
        ItemGameBackpackEquipCpt backpackCpt = itemCell.GetComponent <ItemGameBackpackEquipCpt>();

        backpackCpt.SetData(characterData, itemInfo, itemBean);
    }
コード例 #2
0
    /// <summary>
    /// 设置装备
    /// </summary>
    /// <param name="itemInfo"></param>
    /// <param name="isTFequip">是否是幻化</param>
    public void SetEquip(ItemsInfoBean itemInfo, bool isTFequip)
    {
        if (itemInfo == null)
        {
            return;
        }
        GameDataBean             gameData = GameDataHandler.Instance.manager.GetGameData();
        ItemGameBackpackEquipCpt itemCpt  = null;
        long        unloadEquipId         = 0;
        GeneralEnum itemType = itemInfo.GetItemsType();

        switch (itemType)
        {
        case GeneralEnum.Hat:

            if (isTFequip)
            {
                itemCpt       = equipTFHat;
                unloadEquipId = characterData.equips.hatTFId;
                characterData.equips.hatTFId = itemInfo.id;
            }
            else
            {
                itemCpt       = equipHat;
                unloadEquipId = characterData.equips.hatId;
                characterData.equips.hatId = itemInfo.id;
            }

            break;

        case GeneralEnum.Clothes:
            if (isTFequip)
            {
                itemCpt       = equipTFClothes;
                unloadEquipId = characterData.equips.clothesTFId;
                characterData.equips.clothesTFId = itemInfo.id;
            }
            else
            {
                itemCpt       = equipClothes;
                unloadEquipId = characterData.equips.clothesId;
                characterData.equips.clothesId = itemInfo.id;
            }
            break;

        case GeneralEnum.Shoes:
            if (isTFequip)
            {
                itemCpt       = equipTFShoes;
                unloadEquipId = characterData.equips.shoesTFId;
                characterData.equips.shoesTFId = itemInfo.id;
            }
            else
            {
                itemCpt       = equipShoes;
                unloadEquipId = characterData.equips.shoesId;
                characterData.equips.shoesId = itemInfo.id;
            }
            break;

        case GeneralEnum.Chef:
        case GeneralEnum.Waiter:
        case GeneralEnum.Accoutant:
        case GeneralEnum.Accost:
        case GeneralEnum.Beater:
            if (isTFequip)
            {
                itemCpt       = equipTFHand;
                unloadEquipId = characterData.equips.handTFId;
                characterData.equips.handTFId = itemInfo.id;
            }
            else
            {
                itemCpt       = equipHand;
                unloadEquipId = characterData.equips.handId;
                characterData.equips.handId = itemInfo.id;
            }
            break;
        }
        itemCpt.SetData(characterData, itemInfo, null);

        //如果有卸载的装备 则添加到背包
        if (unloadEquipId != 0)
        {
            gameData.AddItemsNumber(unloadEquipId, 1);
        }
        //刷新场景中的人物
        if (SceneUtil.GetCurrentScene() == ScenesEnum.GameInnScene)
        {
            NpcHandler.Instance.builderForWorker.RefreshWorkerData();
            NpcHandler.Instance.builderForFamily.RefreshFamilyData();
        }
    }