From f5e15fa93d84acbae6a26b86fddf20add38bb485 Mon Sep 17 00:00:00 2001
From: miepzerino <o.skotnik@gmail.com>
Date: Tue, 01 Apr 2025 13:21:41 +0000
Subject: [PATCH] #31 added inventory to savefile, added itemDatabase

---
 Assets/Scripts/Saving/SaveData.cs |   29 ++++++++++++++++++++++++++++-
 1 files changed, 28 insertions(+), 1 deletions(-)

diff --git a/Assets/Scripts/SaveData.cs b/Assets/Scripts/Saving/SaveData.cs
similarity index 60%
rename from Assets/Scripts/SaveData.cs
rename to Assets/Scripts/Saving/SaveData.cs
index 5ee1f34..0bf35d0 100644
--- a/Assets/Scripts/SaveData.cs
+++ b/Assets/Scripts/Saving/SaveData.cs
@@ -4,6 +4,21 @@
 using System.Collections.Generic;
 using UnityEngine;
 
+#region player data
+[Serializable]
+public class SaveDataInventorySlot
+{
+    public int itemId;
+    public string itemName;
+    public int quantity;
+
+    public SaveDataInventorySlot(InventorySlot slot)
+    {
+        itemId = slot.item.itemId;
+        itemName = slot.item.itemName;
+        quantity = slot.quantity;
+    }
+}
 [Serializable]
 public class SaveDataPlayer
 {
@@ -11,15 +26,26 @@
     public int health;
     public float[] position;
     public float[] velocity;
-    public SaveDataPlayer(PlayerController player)
+    public List<SaveDataInventorySlot> inventoryItems;
+
+    public SaveDataPlayer(PlayerController player, Inventory inventory)
     {
         maxHealth = player.health.MaxHealth;
         health = player.health.Health;
         position = player.transform.position.ConvertToFloatArray();
         velocity = player.rb.velocity.ConvertToFloatArray();
+
+        // Save inventory items
+        inventoryItems = new List<SaveDataInventorySlot>();
+        foreach (var slot in inventory.items)
+        {
+            inventoryItems.Add(new SaveDataInventorySlot(slot));
+        }
     }
 }
+#endregion
 
+#region map data
 [Serializable]
 public class SaveDataMap
 {
@@ -45,3 +71,4 @@
     }
     public int[] tileCoord;
 }
+#endregion

--
Gitblit v1.9.3