Ejemplo n.º 1
0
    // Token: 0x06001721 RID: 5921 RVA: 0x0027D5B4 File Offset: 0x0027B7B4
    public void SetData(int DataIndex, int ItemBegin, int ItemCount, byte LockCheck)
    {
        PetManager instance = PetManager.Instance;
        int        num      = DataIndex * 4;
        int        num2     = ItemCount;

        if (ItemCount == 0)
        {
            ItemCount = 1;
        }
        ushort[]    sortPetItemData = instance.sortPetItemData;
        List <byte> sortPetData     = instance.sortPetData;

        for (int i = 0; i < 4; i++)
        {
            if (num + i < ItemCount)
            {
                int num3 = num + i;
                if (num2 > num3)
                {
                    PetItem itemData;
                    if (ItemBegin + num3 < sortPetItemData.Length && (itemData = instance.GetItemData((int)sortPetItemData[ItemBegin + num3])) != null)
                    {
                        this.PetCell[i].gameobject.SetActive(true);
                        this.PetCell[i].SetData(itemData.ItemID, num3, _PetItem._ItemType.Item);
                    }
                    else
                    {
                        this.PetCell[i].gameobject.SetActive(false);
                    }
                }
                else if (ItemCount == 1 && num2 == 0)
                {
                    this.PetCell[i].gameobject.SetActive(true);
                    this.PetCell[i].SetData(0, 0, _PetItem._ItemType.Def);
                }
                else
                {
                    this.PetCell[i].gameobject.SetActive(false);
                }
            }
            else
            {
                int num3 = num + i - ItemCount;
                if ((int)instance.PetDataCount > num3)
                {
                    this.PetCell[i].gameobject.SetActive(true);
                    this.PetCell[i].SetData(PetManager.Instance.GetPetData((int)sortPetData[num3]).ID, num3, _PetItem._ItemType.Pet);
                    this.PetCell[i].UpdateState(LockCheck);
                }
                else
                {
                    this.PetCell[i].gameobject.SetActive(false);
                }
            }
        }
    }