Пример #1
0
    public SavableInventoryData ToSavableData()
    {
        SavableInventoryData toSave = new SavableInventoryData();

        foreach (var slot in inventoryContent)
        {
            toSave.inventoryContent.Add(slot.ToSavableData());
        }
        toSave.gold = gold;
        return(toSave);
    }
Пример #2
0
    public static void setSavedInventory(SavableInventoryData savedData)
    {
        InventoryData data = InventoryData.CreateInstance <InventoryData> ();

        data.gold = savedData.gold;
        foreach (var _slot in savedData.inventoryContent)
        {
            ItemData item = ItemFactory.Instance.MakeItem(_slot.itemStack.data);
            if (item)
            {
                ItemStack stack = new ItemStack(item, _slot.itemStack.sizeStack);
                InventoryData.InventorySlot slot = new InventoryData.InventorySlot(_slot.pos, stack);
                data.inventoryContent.Add(slot);
            }
        }
        inventoryData = data;
        if (_instance != null)
        {
            _instance.NotifyAll();
        }
    }