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