コード例 #1
0
    protected override void AddItem(ItemData modified, int amount = -1, bool isSave = true)
    {
        ItemData newItem = null;

        if (amount == -1)
        {
            amount = modified.stackSize;
            modified.ownerContainer = this;
            if (!AddToExistingStack(modified, modified.stackSize, isSave))
            {
                modified.CreatNew(out newItem, amount, this);
                containerItems.Add(newItem);
                AddItemEvent(newItem, isSave);
            }
        }
        else
        {
            modified.CreatNew(out newItem, amount, this);
            if (!AddToExistingStack(newItem, amount, isSave))
            {
                containerItems.Add(newItem);
                AddItemEvent(newItem, isSave);
            }
        }

        Destroy(modified.gameObject);
    }
コード例 #2
0
    protected override void AddItem(ItemData modified, int amount = -1, bool isSave = true)
    {
        ItemData newItem = null;

        if (amount == -1)
        {
            amount = modified.stackSize;
            modified.ownerContainer = this;
            if (!AddToExistingStack(modified, modified.stackSize, isSave))
            {
                modified.CreatNew(out newItem, amount, this);
                containerItems.Add(newItem);
                AddItemEvent(newItem, isSave);

            }
        }
        else
        {
            modified.CreatNew(out newItem, amount, this);
            if (!AddToExistingStack(newItem, amount, isSave))
            {
                containerItems.Add(newItem);
                AddItemEvent(newItem, isSave);
            }
        }

        Destroy(modified.gameObject);
    }
コード例 #3
0
    public void AddToSlot(ItemData modified, int slotID, int amount = -1, bool isSave = true)
    {
        SlottedContainerSlotData selectedSlot = slots[slotID];
        ItemData NewSlotData = null;

        int TargetStackSize = amount;

        if (amount == -1)
        {
            TargetStackSize = modified.stackSize;
        }

        if (TargetStackSize > selectedSlot.slotMaxCountLimit)
        {
            TargetStackSize = selectedSlot.slotMaxCountLimit;
        }

        modified.CreatNew(out NewSlotData, TargetStackSize, this);
        selectedSlot.slotData = NewSlotData;
        ModdifyStatsByFactor(NewSlotData, 1);
        containerItems.Add(NewSlotData);

        Destroy(modified.gameObject);

        AddItemEvent(NewSlotData, isSave);
        selectedSlot.OnItemChangedWrapper();
    }
コード例 #4
0
    private void AddNewStackAmount(ItemData data, int amount, bool isSave)
    {
        ItemData newItem;

        data.CreatNew(out newItem, amount, this);
        Destroy(data.gameObject);

        AddItemEvent(newItem, isSave);
        containerItems.Add(newItem);
    }
コード例 #5
0
 protected override void AddItem(ItemData modified, int amount = -1, bool isSave = true)
 {
     if (amount == -1)
     {
         modified.ownerContainer = this;
         if (!AddToExistingStack(modified, modified.stackSize))
         {
             AddItemEvent(modified, isSave);
             chestItems.Add(modified);
         }
     }
     else
     {
         ItemData newItem = null;
         modified.CreatNew(out newItem, amount, this);
         if (!AddToExistingStack(newItem, amount))
         {
             AddItemEvent(newItem, isSave);
             chestItems.Add(newItem);
         }
     }
 }
コード例 #6
0
 protected override void AddItem(ItemData modified, int amount = -1, bool isSave = true)
 {
     if (amount == -1)
     {
         modified.ownerContainer = this;
         if (!AddToExistingStack(modified, modified.stackSize))
         {
             AddItemEvent(modified, isSave);
             chestItems.Add(modified);
         }
     }
     else
     {
         ItemData newItem = null;
         modified.CreatNew(out newItem, amount, this);
         if (!AddToExistingStack(newItem, amount))
         {
             AddItemEvent(newItem, isSave);
             chestItems.Add(newItem);
         }
     }
 }
コード例 #7
0
    public void AddToSlot(ItemData modified, int slotID, int amount = -1, bool isSave = true)
    {

        SlottedContainerSlotData selectedSlot = slots[slotID];
        ItemData NewSlotData = null;

        int TargetStackSize = amount;
        if (amount == -1)
            TargetStackSize = modified.stackSize;

        if (TargetStackSize > selectedSlot.slotMaxCountLimit)
        {
            TargetStackSize = selectedSlot.slotMaxCountLimit;
        }

        modified.CreatNew(out NewSlotData, TargetStackSize, this);
        selectedSlot.slotData = NewSlotData;
        ModdifyStatsByFactor(NewSlotData, 1);
        containerItems.Add(NewSlotData);

        Destroy(modified.gameObject);

        AddItemEvent(NewSlotData, isSave);
        selectedSlot.OnItemChangedWrapper();
    }
コード例 #8
0
    private void AddNewStackAmount(ItemData data, int amount, bool isSave)
    {
        ItemData newItem;
        data.CreatNew(out newItem, amount, this);
        Destroy(data.gameObject);

        AddItemEvent(newItem, isSave);
        containerItems.Add(newItem);
    }