mirror of
				https://github.com/DerTyp7/example-top-down-unity.git
				synced 2025-10-30 21:07:09 +01:00 
			
		
		
		
	rework
This commit is contained in:
		| @@ -23,31 +23,23 @@ public class Inventory : MonoBehaviour | |||||||
|  |  | ||||||
|  |  | ||||||
|     public delegate void OnItemChanged(); |     public delegate void OnItemChanged(); | ||||||
|     public OnItemChanged onItemChangedCallback; //  |     public OnItemChanged onItemChangedCallback; | ||||||
|  |  | ||||||
|  |     [SerializeField] | ||||||
|  |     int numberOfSlots = 20; | ||||||
|  |  | ||||||
|     [SerializeField] |     [SerializeField] | ||||||
|     List<Slot> inventory = new List<Slot>(); |     List<Slot> inventory = new List<Slot>(); | ||||||
|  |  | ||||||
|     public List<Slot> getInventory { get => inventory;} |     public List<Slot> getInventory { get => inventory;} | ||||||
|     public void createEmptyInventory(int numberOfSlots, int maxSpaceOfSlots = 10)  |      | ||||||
|     { |  | ||||||
|         // Initializes the inventory with a specific number of slots and slotsize. |  | ||||||
|         // !!!Has to be called bevore adding any items!!! |  | ||||||
|         // Example createEmptyInventory(5, 10) : 5 Slots with space for 10 items each |  | ||||||
|         for (int i = 0; i < numberOfSlots; i++) |  | ||||||
|         { |  | ||||||
|             inventory.Add(new Slot(maxSpaceOfSlots)); |  | ||||||
|         } |  | ||||||
|         if (onItemChangedCallback != null) |  | ||||||
|             onItemChangedCallback.Invoke(); |  | ||||||
|     } |  | ||||||
|     public void addInventorySlots(int numberOfSlots, int maxSpaceOfSlots = 10) |     public void addInventorySlots(int numberOfSlots, int maxSpaceOfSlots = 10) | ||||||
|     { |     { | ||||||
|         // Adds a specific number of slots and slotsize to the inventory. |         // Adds a specific number of slots and slotsize to the inventory. | ||||||
|         // Example addInventorySlots(5, 10) : Adds 5 Slots with space for 10 items each |         // Example addInventorySlots(5, 10) : Adds 5 Slots with space for 10 items each | ||||||
|         for (int i = 0; i < numberOfSlots; i++) |         for (int i = 0; i < numberOfSlots; i++) | ||||||
|         { |         { | ||||||
|             inventory.Add(new Slot(maxSpaceOfSlots)); |             inventory.Add(new Slot()); | ||||||
|         } |         } | ||||||
|         if (onItemChangedCallback != null) |         if (onItemChangedCallback != null) | ||||||
|             onItemChangedCallback.Invoke(); |             onItemChangedCallback.Invoke(); | ||||||
| @@ -142,4 +134,30 @@ public class Inventory : MonoBehaviour | |||||||
|             return false; |             return false; | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  |     /* | ||||||
|  |     public int addItem(Item itemType, int count = 1) | ||||||
|  |     { | ||||||
|  |         foreach (Slot slot in inventory) | ||||||
|  |         { | ||||||
|  |             if (slot.ItemType.Equals(itemType)) | ||||||
|  |             { | ||||||
|  |                 slot. | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |     }*/ | ||||||
|  |  | ||||||
|  |  | ||||||
|  |     void Start() | ||||||
|  |     { | ||||||
|  |         // Init Inventory | ||||||
|  |         for (int i = 0; i < numberOfSlots; i++) | ||||||
|  |         { | ||||||
|  |             inventory.Add(new Slot()); | ||||||
|  |         } | ||||||
|  |         if (onItemChangedCallback != null) | ||||||
|  |             onItemChangedCallback.Invoke(); | ||||||
|  |  | ||||||
|  |     } | ||||||
|  |  | ||||||
| } | } | ||||||
|   | |||||||
| @@ -18,15 +18,12 @@ public class Slot | |||||||
|     /// </summary> |     /// </summary> | ||||||
|  |  | ||||||
|     Item item; |     Item item; | ||||||
|     int maxItems = 1; |  | ||||||
|     int count = 0; |     int count = 0; | ||||||
|     public Item ItemType { get => item; set => item = value; } |     public Item ItemType { get => item; set => item = value; } | ||||||
|     public int Count { get => count; set => count = value; } |     public int Count { get => count; set => count = value; } | ||||||
|     public int MaxItems { get => maxItems; set => maxItems = value; } |     public Slot() | ||||||
|     public Slot(int maxItems = 1) |  | ||||||
|     { |     { | ||||||
|         item = null; |         item = null; | ||||||
|         this.maxItems = maxItems; |  | ||||||
|     } |     } | ||||||
|     public void addItem(int count = 1) |     public void addItem(int count = 1) | ||||||
|     { |     { | ||||||
| @@ -45,7 +42,7 @@ public class Slot | |||||||
|     } |     } | ||||||
|     public Slot copy()  |     public Slot copy()  | ||||||
|     { |     { | ||||||
|         Slot slot = new Slot(maxItems); |         Slot slot = new Slot(); | ||||||
|         slot.count = count; |         slot.count = count; | ||||||
|         slot.ItemType = ItemType; |         slot.ItemType = ItemType; | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 j.mei7
					j.mei7