using System; using System.Collections.Generic; using UnityEngine; namespace Item { [Serializable] public class TempInventoryBuilderItem { public string name; public int quantity; } public class TempInventory : MonoBehaviour { [SerializeField] private List initialInvent = new(); private readonly Dictionary inventory = new(); // Start is called before the first frame update private void Start() { foreach (var item in initialInvent) inventory[item.name] = item.quantity; } // Update is called once per frame private void Update() { } public int GetQuantityOf(string name) { if (inventory.ContainsKey(name)) return inventory[name]; return 0; } public bool Add(string name, int quantity = 1) { if (inventory.ContainsKey(name)) inventory[name] += quantity; else inventory.Add(name, quantity); return true; } public bool Remove(string name, int quantity = 1) { if (inventory.ContainsKey(name)) { inventory[name] = Mathf.Max(inventory[name] - quantity, 0); return false; } return false; } } }