- Refactor items from predefined scriptables only, to template based into item instances - Added equipped item tooltip to facilitate comparing items - Added modular craftable items
55 lines
1.3 KiB
C#
55 lines
1.3 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
[System.Serializable]
|
|
public class InventoryData
|
|
{
|
|
public int[] inventoryItems;
|
|
|
|
public InventoryData()
|
|
{
|
|
inventoryItems = new int[GameConstants.Sizes.TotalInventorySlots];
|
|
|
|
for (int i = 0; i < inventoryItems.Length; i++)
|
|
{
|
|
inventoryItems[i] = -1;
|
|
}
|
|
}
|
|
public InventoryData(int[] inventoryItems)
|
|
{
|
|
this.inventoryItems = new int[GameConstants.Sizes.TotalInventorySlots];
|
|
|
|
for (int i = 0; i < inventoryItems.Length; i++)
|
|
{
|
|
this.inventoryItems[i] = inventoryItems[i];
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
[System.Serializable]
|
|
public class InventoryInstanceData
|
|
{
|
|
[SerializeReference]
|
|
public ItemInstance[] inventoryItems;
|
|
|
|
public InventoryInstanceData()
|
|
{
|
|
inventoryItems = new ItemInstance[GameConstants.Sizes.TotalInventorySlots];
|
|
|
|
for (int i = 0; i < inventoryItems.Length; i++)
|
|
{
|
|
inventoryItems[i] = null;
|
|
}
|
|
}
|
|
public InventoryInstanceData(ItemInstance[] inventoryItems)
|
|
{
|
|
this.inventoryItems = new ItemInstance[GameConstants.Sizes.TotalInventorySlots];
|
|
|
|
for (int i = 0; i < inventoryItems.Length; i++)
|
|
{
|
|
this.inventoryItems[i] = inventoryItems[i];
|
|
}
|
|
}
|
|
} |