From 29899842e474b114135862f48e617958637dc789 Mon Sep 17 00:00:00 2001 From: Aggtaa Date: Tue, 20 Jan 2026 22:47:58 +0300 Subject: [PATCH] Inventory reimplementation (from MonsterShop). Top panel is temporarily broken --- Assets/Editor/ResourceDrawer.cs | 2 +- Assets/Prefabs/MetalMine.prefab | 23 ++- Assets/Scenes/SampleScene.unity | 36 +++- Assets/Scripts/DataPersistence.meta | 8 + Assets/Scripts/DataPersistence/Data.meta | 8 + .../Scripts/DataPersistence/Data/GameData.cs | 15 ++ .../DataPersistence/Data/GameData.cs.meta | 11 + .../DataPersistence/Data/InventoryData.cs | 12 ++ .../Data/InventoryData.cs.meta | 11 + .../DataPersistence/Data/PlayerData.cs | 7 + .../DataPersistence/Data/PlayerData.cs.meta | 2 + .../Scripts/DataPersistence/Data/ShelfData.cs | 11 + .../DataPersistence/Data/ShelfData.cs.meta | 2 + .../DataPersistence/Data/StorageData.cs | 7 + .../DataPersistence/Data/StorageData.cs.meta | 2 + .../DataPersistence/DataPersistenceManager.cs | 169 ++++++++++++++++ .../DataPersistenceManager.cs.meta | 11 + .../DataPersistence/FileDataHandler.cs | 185 +++++++++++++++++ .../DataPersistence/FileDataHandler.cs.meta | 11 + .../DataPersistence/IDataPersistence.cs | 14 ++ .../DataPersistence/IDataPersistence.cs.meta | 11 + .../DataPersistence/SerializableTypes.meta | 8 + .../SerializableDictionary.cs | 57 ++++++ .../SerializableDictionary.cs.meta | 2 + Assets/Scripts/FactoryInfo.cs | 15 ++ Assets/Scripts/Inventory.cs | 188 ++++++++++++++++++ Assets/Scripts/Inventory.cs.meta | 2 + Assets/Scripts/InventoryHolder.cs | 25 +++ Assets/Scripts/InventoryHolder.cs.meta | 2 + Assets/Scripts/ResourceGenerator.cs | 14 +- Assets/Scripts/ResourceStorage.cs | 137 +++---------- Assets/Scripts/ResourceStorageView.cs | 31 ++- Assets/UI/FactoryInfo.uxml | 3 +- 33 files changed, 913 insertions(+), 129 deletions(-) create mode 100644 Assets/Scripts/DataPersistence.meta create mode 100644 Assets/Scripts/DataPersistence/Data.meta create mode 100644 Assets/Scripts/DataPersistence/Data/GameData.cs create mode 100644 Assets/Scripts/DataPersistence/Data/GameData.cs.meta create mode 100644 Assets/Scripts/DataPersistence/Data/InventoryData.cs create mode 100644 Assets/Scripts/DataPersistence/Data/InventoryData.cs.meta create mode 100644 Assets/Scripts/DataPersistence/Data/PlayerData.cs create mode 100644 Assets/Scripts/DataPersistence/Data/PlayerData.cs.meta create mode 100644 Assets/Scripts/DataPersistence/Data/ShelfData.cs create mode 100644 Assets/Scripts/DataPersistence/Data/ShelfData.cs.meta create mode 100644 Assets/Scripts/DataPersistence/Data/StorageData.cs create mode 100644 Assets/Scripts/DataPersistence/Data/StorageData.cs.meta create mode 100644 Assets/Scripts/DataPersistence/DataPersistenceManager.cs create mode 100644 Assets/Scripts/DataPersistence/DataPersistenceManager.cs.meta create mode 100644 Assets/Scripts/DataPersistence/FileDataHandler.cs create mode 100644 Assets/Scripts/DataPersistence/FileDataHandler.cs.meta create mode 100644 Assets/Scripts/DataPersistence/IDataPersistence.cs create mode 100644 Assets/Scripts/DataPersistence/IDataPersistence.cs.meta create mode 100644 Assets/Scripts/DataPersistence/SerializableTypes.meta create mode 100644 Assets/Scripts/DataPersistence/SerializableTypes/SerializableDictionary.cs create mode 100644 Assets/Scripts/DataPersistence/SerializableTypes/SerializableDictionary.cs.meta create mode 100644 Assets/Scripts/Inventory.cs create mode 100644 Assets/Scripts/Inventory.cs.meta create mode 100644 Assets/Scripts/InventoryHolder.cs create mode 100644 Assets/Scripts/InventoryHolder.cs.meta diff --git a/Assets/Editor/ResourceDrawer.cs b/Assets/Editor/ResourceDrawer.cs index b15a596..1a63042 100644 --- a/Assets/Editor/ResourceDrawer.cs +++ b/Assets/Editor/ResourceDrawer.cs @@ -19,7 +19,7 @@ public class ResourceDrawer : PropertyDrawer private static void Initialize() { - resources = ResourceStorage.RegisteredResources; + resources = ResourceRegistry.Instance.Items; // if (resourceTypes == null) // { // resourceTypes = AppDomain diff --git a/Assets/Prefabs/MetalMine.prefab b/Assets/Prefabs/MetalMine.prefab index ade2b63..a89f786 100644 --- a/Assets/Prefabs/MetalMine.prefab +++ b/Assets/Prefabs/MetalMine.prefab @@ -15,6 +15,7 @@ GameObject: - component: {fileID: 819912288095587636} - component: {fileID: 1421388845701231023} - component: {fileID: 4527755210678078285} + - component: {fileID: 7057847397855985585} m_Layer: 0 m_Name: MetalMine m_TagString: Untagged @@ -112,14 +113,14 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: c06e7972b6bac34468cda352d1c07c7a, type: 3} m_Name: m_EditorClassIdentifier: Assembly-CSharp::ResourceSource -