diff --git a/Assets/AddressableAssetsData/AssetGroups/GoogleSheetSo_Group.asset b/Assets/AddressableAssetsData/AssetGroups/GoogleSheetSo_Group.asset
index 029e354ab..dfae8ab31 100644
--- a/Assets/AddressableAssetsData/AssetGroups/GoogleSheetSo_Group.asset
+++ b/Assets/AddressableAssetsData/AssetGroups/GoogleSheetSo_Group.asset
@@ -14,7 +14,19 @@ MonoBehaviour:
m_EditorClassIdentifier:
m_GroupName: GoogleSheetSo_Group
m_GUID: 7fe0c33d351391a45a0ea3c93ecef42e
- m_SerializeEntries: []
+ m_SerializeEntries:
+ - m_GUID: 5fcfe5933281a534986204df8c5453fd
+ m_Address: MonsterSo
+ m_ReadOnly: 0
+ m_SerializedLabels:
+ - GoogleSheetSo
+ FlaggedDuringContentUpdateRestriction: 0
+ - m_GUID: b0149444f80f2a443a2d79a08fa2650e
+ m_Address: FoodSo
+ m_ReadOnly: 0
+ m_SerializedLabels:
+ - GoogleSheetSo
+ FlaggedDuringContentUpdateRestriction: 0
m_ReadOnly: 0
m_Settings: {fileID: 11400000, guid: d12ffbb6f886d48418efb0b6d15ccb88, type: 2}
m_SchemaSet:
diff --git a/Assets/Samples.meta b/Assets/Samples.meta
new file mode 100644
index 000000000..6489106eb
--- /dev/null
+++ b/Assets/Samples.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 9004b957a3a41ed4f97b66f514b1ba5d
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Samples/Addressables.meta b/Assets/Samples/Addressables.meta
new file mode 100644
index 000000000..cab76e472
--- /dev/null
+++ b/Assets/Samples/Addressables.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 1ee7324fdbddf6744b29c194782f8fdd
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Samples/Addressables/2.4.6.meta b/Assets/Samples/Addressables/2.4.6.meta
new file mode 100644
index 000000000..d3b3b375f
--- /dev/null
+++ b/Assets/Samples/Addressables/2.4.6.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 16e035702ce4acc4aa2eda3b8b554628
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Samples/Addressables/2.4.6/Addressables Utility.meta b/Assets/Samples/Addressables/2.4.6/Addressables Utility.meta
new file mode 100644
index 000000000..6187be012
--- /dev/null
+++ b/Assets/Samples/Addressables/2.4.6/Addressables Utility.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 76ed51abe1be4be45ac2a85ea28646e6
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Samples/Addressables/2.4.6/Addressables Utility/AddressablesUtility.cs b/Assets/Samples/Addressables/2.4.6/Addressables Utility/AddressablesUtility.cs
new file mode 100644
index 000000000..2e0f4cbfb
--- /dev/null
+++ b/Assets/Samples/Addressables/2.4.6/Addressables Utility/AddressablesUtility.cs
@@ -0,0 +1,27 @@
+using UnityEngine.AddressableAssets;
+
+///
+/// A utility class for various Addressables functionality
+///
+public static class AddressablesUtility
+{
+ ///
+ /// Get the address of a given AssetReference.
+ ///
+ /// The AssetReference you want to find the address of.
+ /// The address of a given AssetReference.
+ public static string GetAddressFromAssetReference(AssetReference reference)
+ {
+ var loadResourceLocations = Addressables.LoadResourceLocationsAsync(reference);
+ var result = loadResourceLocations.WaitForCompletion();
+ if (result.Count > 0)
+ {
+ string key = result[0].PrimaryKey;
+ loadResourceLocations.Release();
+ return key;
+ }
+
+ loadResourceLocations.Release();
+ return string.Empty;
+ }
+}
diff --git a/Assets/Samples/Addressables/2.4.6/Addressables Utility/AddressablesUtility.cs.meta b/Assets/Samples/Addressables/2.4.6/Addressables Utility/AddressablesUtility.cs.meta
new file mode 100644
index 000000000..4b9c86206
--- /dev/null
+++ b/Assets/Samples/Addressables/2.4.6/Addressables Utility/AddressablesUtility.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: 2753974709f92de4fb4628ba24c77214
\ No newline at end of file
diff --git a/Assets/_Datas/01.Scenes/SampleScene.unity b/Assets/_Datas/01.Scenes/SampleScene.unity
index 4df27ead7..5e0da174d 100644
--- a/Assets/_Datas/01.Scenes/SampleScene.unity
+++ b/Assets/_Datas/01.Scenes/SampleScene.unity
@@ -290,10 +290,10 @@ MonoBehaviour:
_googleSheetUrl: https://script.google.com/macros/s/AKfycbw8TRSl_OuY2S-RX0yvOJi1SqNqoflG0R3pWxk9GC9u_wvGQeuABZc0VH7YJ5lMrAl4/exec
_availSheets: Food/Monster
_generateFolderPath: /_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated
- _currentVersion: "0 - 2025-05-13 19:23:45 by \uB0A8\uD0DC\uAC74"
+ _currentVersion: "3 - 2025-05-26 18:04:01 by \uB0A8\uD0DC\uAC74"
_restoreIndex: 0
_editorName:
- _refreshTrigger: 1
+ _refreshTrigger: 0
--- !u!4 &383092898
Transform:
m_ObjectHideFlags: 0
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated.meta
new file mode 100644
index 000000000..7813c2109
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: ff9891595d177594c801de6870920703
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps.meta
new file mode 100644
index 000000000..9c2210c9d
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: c16b1e3d70ae9f5448d679c76959f748
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-01-31 by 남태건.json b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-01-31 by 남태건.json
new file mode 100644
index 000000000..ea5bebb06
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-01-31 by 남태건.json
@@ -0,0 +1,86 @@
+{
+ "$개요": [
+ {
+ "": "시트 생성"
+ }
+ ],
+ "Food": [
+ {
+ "Id:string": "식별ID",
+ "Name:string": "이름",
+ "Cookware_Enum": "요리도구",
+ "Ingredient1:string": "재료1",
+ "Ingredient2:string": "재료2",
+ "Taste1:Taste_Enum": "맛1",
+ "Taste2:Taste_Enum": "맛2",
+ "Sprite:Sprite": "Addressable 이미지 이름"
+ },
+ {
+ "Id:string": "Food001",
+ "Name:string": "햇빛수프",
+ "Cookware_Enum": "Pot",
+ "Ingredient1:string": "극락쌀",
+ "Ingredient2:string": "햇빛당근",
+ "Taste1:Taste_Enum": "Bitter",
+ "Taste2:Taste_Enum": "Sweet",
+ "Sprite:Sprite": "Gold"
+ },
+ {
+ "Id:string": "Food002",
+ "Name:string": "B",
+ "Cookware_Enum": "FryingPan",
+ "Ingredient1:string": 2,
+ "Ingredient2:string": 3,
+ "Taste1:Taste_Enum": "Spicy",
+ "Taste2:Taste_Enum": "Bitter",
+ "Sprite:Sprite": ""
+ },
+ {
+ "Id:string": "Food003",
+ "Name:string": "C",
+ "Cookware_Enum": "Pot",
+ "Ingredient1:string": 2,
+ "Ingredient2:string": 3,
+ "Taste1:Taste_Enum": "Fresh",
+ "Taste2:Taste_Enum": "None",
+ "Sprite:Sprite": ""
+ },
+ {
+ "Id:string": "Food004",
+ "Name:string": "D",
+ "Cookware_Enum": "Plating",
+ "Ingredient1:string": 2,
+ "Ingredient2:string": 3,
+ "Taste1:Taste_Enum": "Sour",
+ "Taste2:Taste_Enum": "Salty",
+ "Sprite:Sprite": ""
+ }
+ ],
+ "Monster": [
+ {
+ "Id": "식별번호",
+ "Name": "이름",
+ "T1": "테스트1"
+ },
+ {
+ "Id": "Test001",
+ "Name": "A",
+ "T1": 1
+ },
+ {
+ "Id": "Test002",
+ "Name": "B",
+ "T1": 2
+ },
+ {
+ "Id": "Test003",
+ "Name": "C",
+ "T1": 3
+ },
+ {
+ "Id": "Test004",
+ "Name": "D",
+ "T1": 4
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-01-31 by 남태건.json.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-01-31 by 남태건.json.meta
new file mode 100644
index 000000000..1f5eb17c4
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-01-31 by 남태건.json.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 6f9da5eb0bf290c4d8efc2cd876eb004
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-02-16 by 남태건.json b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-02-16 by 남태건.json
new file mode 100644
index 000000000..5190304c3
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-02-16 by 남태건.json
@@ -0,0 +1,86 @@
+{
+ "$개요": [
+ {
+ "": "시트 생성"
+ }
+ ],
+ "Food": [
+ {
+ "Id:string": "식별ID",
+ "Name:string": "이름",
+ "Cookware_Enum": "요리도구",
+ "Ingredient1:string": "재료1",
+ "Ingredient2:string": "재료2",
+ "Taste1:Taste_Enum": "맛1",
+ "Taste2:Taste_Enum": "맛2",
+ "Sprite:Sprite": "Addressable 이미지 이름"
+ },
+ {
+ "Id:string": "Food001",
+ "Name:string": "햇빛수프",
+ "Cookware_Enum": "Pot",
+ "Ingredient1:string": "극락쌀",
+ "Ingredient2:string": "햇빛당근",
+ "Taste1:Taste_Enum": "Bitter",
+ "Taste2:Taste_Enum": "Sweet",
+ "Sprite:Sprite": "Gold"
+ },
+ {
+ "Id:string": "Food002",
+ "Name:string": "B",
+ "Cookware_Enum": "FryingPan",
+ "Ingredient1:string": 1,
+ "Ingredient2:string": 4,
+ "Taste1:Taste_Enum": "Spicy",
+ "Taste2:Taste_Enum": "Bitter",
+ "Sprite:Sprite": ""
+ },
+ {
+ "Id:string": "Food003",
+ "Name:string": "C",
+ "Cookware_Enum": "Pot",
+ "Ingredient1:string": 2,
+ "Ingredient2:string": 5,
+ "Taste1:Taste_Enum": "Fresh",
+ "Taste2:Taste_Enum": "None",
+ "Sprite:Sprite": ""
+ },
+ {
+ "Id:string": "Food004",
+ "Name:string": "D",
+ "Cookware_Enum": "Plating",
+ "Ingredient1:string": 3,
+ "Ingredient2:string": 6,
+ "Taste1:Taste_Enum": "Sour",
+ "Taste2:Taste_Enum": "Salty",
+ "Sprite:Sprite": ""
+ }
+ ],
+ "Monster": [
+ {
+ "Id": "식별번호",
+ "Name": "이름",
+ "T1": "테스트1"
+ },
+ {
+ "Id": "Test001",
+ "Name": "A",
+ "T1": 1
+ },
+ {
+ "Id": "Test002",
+ "Name": "B",
+ "T1": 2
+ },
+ {
+ "Id": "Test003",
+ "Name": "C",
+ "T1": 3
+ },
+ {
+ "Id": "Test004",
+ "Name": "D",
+ "T1": 4
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-02-16 by 남태건.json.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-02-16 by 남태건.json.meta
new file mode 100644
index 000000000..b48c3e9f4
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-02-16 by 남태건.json.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 745f95162f70f8749a0653af54dfc2a1
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-03-12 by 남태건.json b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-03-12 by 남태건.json
new file mode 100644
index 000000000..3199d20a0
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-03-12 by 남태건.json
@@ -0,0 +1,86 @@
+{
+ "$개요": [
+ {
+ "": "시트 생성"
+ }
+ ],
+ "Food": [
+ {
+ "Id:string": "식별ID",
+ "Name:string": "이름",
+ "Cookware_Enum": "요리도구",
+ "Ingredient1:string": "재료1",
+ "Ingredient2:string": "재료2",
+ "Taste1:Taste_Enum": "맛1",
+ "Taste2:Taste_Enum": "맛2",
+ "Sprite:Sprite": "Addressable 이미지 이름"
+ },
+ {
+ "Id:string": "Food001",
+ "Name:string": "햇빛수프",
+ "Cookware_Enum": "Pot",
+ "Ingredient1:string": "극락쌀",
+ "Ingredient2:string": "햇빛당근",
+ "Taste1:Taste_Enum": "Bitter",
+ "Taste2:Taste_Enum": "Sweet",
+ "Sprite:Sprite": "Gold"
+ },
+ {
+ "Id:string": "Food002",
+ "Name:string": "B",
+ "Cookware_Enum": "FryingPan",
+ "Ingredient1:string": 1,
+ "Ingredient2:string": 4,
+ "Taste1:Taste_Enum": "Spicy",
+ "Taste2:Taste_Enum": "Bitter",
+ "Sprite:Sprite": "Gold"
+ },
+ {
+ "Id:string": "Food003",
+ "Name:string": "C",
+ "Cookware_Enum": "Pot",
+ "Ingredient1:string": 2,
+ "Ingredient2:string": 5,
+ "Taste1:Taste_Enum": "Fresh",
+ "Taste2:Taste_Enum": "None",
+ "Sprite:Sprite": ""
+ },
+ {
+ "Id:string": "Food004",
+ "Name:string": "D",
+ "Cookware_Enum": "Plating",
+ "Ingredient1:string": 3,
+ "Ingredient2:string": 6,
+ "Taste1:Taste_Enum": "Sour",
+ "Taste2:Taste_Enum": "Salty",
+ "Sprite:Sprite": "Gold"
+ }
+ ],
+ "Monster": [
+ {
+ "Id": "식별번호",
+ "Name": "이름",
+ "T1": "테스트1"
+ },
+ {
+ "Id": "Test001",
+ "Name": "A",
+ "T1": 1
+ },
+ {
+ "Id": "Test002",
+ "Name": "B",
+ "T1": 2
+ },
+ {
+ "Id": "Test003",
+ "Name": "C",
+ "T1": 3
+ },
+ {
+ "Id": "Test004",
+ "Name": "D",
+ "T1": 4
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-03-12 by 남태건.json.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-03-12 by 남태건.json.meta
new file mode 100644
index 000000000..062d88ac1
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-03-12 by 남태건.json.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 5a03fd979fde4c34491e1be90d5011aa
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-04-01 by 남태건.json b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-04-01 by 남태건.json
new file mode 100644
index 000000000..488fb72cb
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-04-01 by 남태건.json
@@ -0,0 +1,86 @@
+{
+ "$개요": [
+ {
+ "": "시트 생성"
+ }
+ ],
+ "Food": [
+ {
+ "Id:string": "식별ID",
+ "Name:string": "이름",
+ "Cookware_Enum": "요리도구",
+ "Ingredient1:string": "재료1",
+ "Ingredient2:string": "재료2",
+ "Taste1:Taste_Enum": "맛1",
+ "Taste2:Taste_Enum": "맛2",
+ "Sprite:Sprite": "Addressable 이미지 이름"
+ },
+ {
+ "Id:string": "Food001",
+ "Name:string": "햇빛수프",
+ "Cookware_Enum": "Pot",
+ "Ingredient1:string": "극락쌀",
+ "Ingredient2:string": "햇빛당근",
+ "Taste1:Taste_Enum": "Bitter",
+ "Taste2:Taste_Enum": "Sweet",
+ "Sprite:Sprite": "Gold"
+ },
+ {
+ "Id:string": "Food002",
+ "Name:string": "B",
+ "Cookware_Enum": "FryingPan",
+ "Ingredient1:string": 1,
+ "Ingredient2:string": 4,
+ "Taste1:Taste_Enum": "Spicy",
+ "Taste2:Taste_Enum": "Bitter",
+ "Sprite:Sprite": ""
+ },
+ {
+ "Id:string": "Food003",
+ "Name:string": "C",
+ "Cookware_Enum": "Pot",
+ "Ingredient1:string": 2,
+ "Ingredient2:string": 5,
+ "Taste1:Taste_Enum": "Fresh",
+ "Taste2:Taste_Enum": "None",
+ "Sprite:Sprite": ""
+ },
+ {
+ "Id:string": "Food004",
+ "Name:string": "D",
+ "Cookware_Enum": "Plating",
+ "Ingredient1:string": 3,
+ "Ingredient2:string": 6,
+ "Taste1:Taste_Enum": "Sour",
+ "Taste2:Taste_Enum": "Salty",
+ "Sprite:Sprite": "Gold"
+ }
+ ],
+ "Monster": [
+ {
+ "Id": "식별번호",
+ "Name": "이름",
+ "T1": "테스트1"
+ },
+ {
+ "Id": "Test001",
+ "Name": "A",
+ "T1": 1
+ },
+ {
+ "Id": "Test002",
+ "Name": "B",
+ "T1": 2
+ },
+ {
+ "Id": "Test003",
+ "Name": "C",
+ "T1": 3
+ },
+ {
+ "Id": "Test004",
+ "Name": "D",
+ "T1": 4
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-04-01 by 남태건.json.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-04-01 by 남태건.json.meta
new file mode 100644
index 000000000..e4c34e3f9
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-26 18-04-01 by 남태건.json.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 74bab0ebe89de4a43bb5ec3337018a64
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/EnumTypes.cs b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/EnumTypes.cs
new file mode 100644
index 000000000..340b2a7ae
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/EnumTypes.cs
@@ -0,0 +1,22 @@
+//
+using System;
+
+public enum Cookware
+{
+ None = 0,
+ Pot = 1,
+ FryingPan = 2,
+ Plating = 3,
+}
+
+public enum Taste
+{
+ None = 0,
+ Bitter = 1,
+ Sweet = 2,
+ Spicy = 3,
+ Fresh = 4,
+ Sour = 5,
+ Salty = 6,
+}
+
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/EnumTypes.cs.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/EnumTypes.cs.meta
new file mode 100644
index 000000000..88a3eeab6
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/EnumTypes.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: 0305cac2c4248c647b1dfd15b2df4b9b
\ No newline at end of file
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Food.cs b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Food.cs
new file mode 100644
index 000000000..5ff09fd6c
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Food.cs
@@ -0,0 +1,39 @@
+//
+using System;
+using UnityEngine;
+[Serializable]
+public class Food
+{
+ /// 식별ID
+ [Tooltip("식별ID")]
+ public string Id;
+
+ /// 이름
+ [Tooltip("이름")]
+ public string Name;
+
+ /// 요리도구
+ [Tooltip("요리도구")]
+ public Cookware Cookware;
+
+ /// 재료1
+ [Tooltip("재료1")]
+ public string Ingredient1;
+
+ /// 재료2
+ [Tooltip("재료2")]
+ public string Ingredient2;
+
+ /// 맛1
+ [Tooltip("맛1")]
+ public Taste Taste1;
+
+ /// 맛2
+ [Tooltip("맛2")]
+ public Taste Taste2;
+
+ /// Addressable 이미지 이름
+ [Tooltip("Addressable 이미지 이름")]
+ public Sprite Sprite;
+
+}
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Food.cs.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Food.cs.meta
new file mode 100644
index 000000000..c5d61d8c3
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Food.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: bc52e6123ac9d4e4dba393cf959823f2
\ No newline at end of file
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/FoodSo.cs b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/FoodSo.cs
new file mode 100644
index 000000000..c1514e46d
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/FoodSo.cs
@@ -0,0 +1,9 @@
+// File: FoodSo.cs
+using System.Collections.Generic;
+using UnityEngine;
+
+[CreateAssetMenu(fileName = "FoodSo", menuName = "GoogleSheet/FoodSo")]
+public class FoodSo : ScriptableObject
+{
+ public List FoodList;
+}
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/FoodSo.cs.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/FoodSo.cs.meta
new file mode 100644
index 000000000..19008b34e
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/FoodSo.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: ffda527566a5cd9469dd6a7f2cd953bb
\ No newline at end of file
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/GoogleSheetJson.json b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/GoogleSheetJson.json
new file mode 100644
index 000000000..488fb72cb
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/GoogleSheetJson.json
@@ -0,0 +1,86 @@
+{
+ "$개요": [
+ {
+ "": "시트 생성"
+ }
+ ],
+ "Food": [
+ {
+ "Id:string": "식별ID",
+ "Name:string": "이름",
+ "Cookware_Enum": "요리도구",
+ "Ingredient1:string": "재료1",
+ "Ingredient2:string": "재료2",
+ "Taste1:Taste_Enum": "맛1",
+ "Taste2:Taste_Enum": "맛2",
+ "Sprite:Sprite": "Addressable 이미지 이름"
+ },
+ {
+ "Id:string": "Food001",
+ "Name:string": "햇빛수프",
+ "Cookware_Enum": "Pot",
+ "Ingredient1:string": "극락쌀",
+ "Ingredient2:string": "햇빛당근",
+ "Taste1:Taste_Enum": "Bitter",
+ "Taste2:Taste_Enum": "Sweet",
+ "Sprite:Sprite": "Gold"
+ },
+ {
+ "Id:string": "Food002",
+ "Name:string": "B",
+ "Cookware_Enum": "FryingPan",
+ "Ingredient1:string": 1,
+ "Ingredient2:string": 4,
+ "Taste1:Taste_Enum": "Spicy",
+ "Taste2:Taste_Enum": "Bitter",
+ "Sprite:Sprite": ""
+ },
+ {
+ "Id:string": "Food003",
+ "Name:string": "C",
+ "Cookware_Enum": "Pot",
+ "Ingredient1:string": 2,
+ "Ingredient2:string": 5,
+ "Taste1:Taste_Enum": "Fresh",
+ "Taste2:Taste_Enum": "None",
+ "Sprite:Sprite": ""
+ },
+ {
+ "Id:string": "Food004",
+ "Name:string": "D",
+ "Cookware_Enum": "Plating",
+ "Ingredient1:string": 3,
+ "Ingredient2:string": 6,
+ "Taste1:Taste_Enum": "Sour",
+ "Taste2:Taste_Enum": "Salty",
+ "Sprite:Sprite": "Gold"
+ }
+ ],
+ "Monster": [
+ {
+ "Id": "식별번호",
+ "Name": "이름",
+ "T1": "테스트1"
+ },
+ {
+ "Id": "Test001",
+ "Name": "A",
+ "T1": 1
+ },
+ {
+ "Id": "Test002",
+ "Name": "B",
+ "T1": 2
+ },
+ {
+ "Id": "Test003",
+ "Name": "C",
+ "T1": 3
+ },
+ {
+ "Id": "Test004",
+ "Name": "D",
+ "T1": 4
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/GoogleSheetJson.json.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/GoogleSheetJson.json.meta
new file mode 100644
index 000000000..09593eecf
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/GoogleSheetJson.json.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: d3673b70625a93f42bc4a69f80841068
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs.meta
new file mode 100644
index 000000000..3616690d3
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: e74bfad8d2ebfd54582b743528289c6d
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs/GoogleSheetChangeLog.asset b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs/GoogleSheetChangeLog.asset
new file mode 100644
index 000000000..1b43b9fab
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs/GoogleSheetChangeLog.asset
@@ -0,0 +1,136 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &11400000
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 47d33f999b3dd2f44a64b3c7b6262376, type: 3}
+ m_Name: GoogleSheetChangeLog
+ m_EditorClassIdentifier:
+ _logs:
+ - Editor: "\uB0A8\uD0DC\uAC74"
+ Timestamp: 2025-05-26 18:01:31
+ JsonSnapshot: "{\n \"$\uAC1C\uC694\": [\n {\n \"\": \"\uC2DC\uD2B8 \uC0DD\uC131\"\n
+ }\n ],\n \"Food\": [\n {\n \"Id:string\": \"\uC2DD\uBCC4ID\",\n
+ \"Name:string\": \"\uC774\uB984\",\n \"Cookware_Enum\": \"\uC694\uB9AC\uB3C4\uAD6C\",\n
+ \"Ingredient1:string\": \"\uC7AC\uB8CC1\",\n \"Ingredient2:string\": \"\uC7AC\uB8CC2\",\n
+ \"Taste1:Taste_Enum\": \"\uB9DB1\",\n \"Taste2:Taste_Enum\": \"\uB9DB2\",\n
+ \"Sprite:Sprite\": \"Addressable \uC774\uBBF8\uC9C0 \uC774\uB984\"\n },\n
+ {\n \"Id:string\": \"Food001\",\n \"Name:string\": \"\uD587\uBE5B\uC218\uD504\",\n
+ \"Cookware_Enum\": \"Pot\",\n \"Ingredient1:string\": \"\uADF9\uB77D\uC300\",\n
+ \"Ingredient2:string\": \"\uD587\uBE5B\uB2F9\uADFC\",\n \"Taste1:Taste_Enum\":
+ \"Bitter\",\n \"Taste2:Taste_Enum\": \"Sweet\",\n \"Sprite:Sprite\":
+ \"Gold\"\n },\n {\n \"Id:string\": \"Food002\",\n \"Name:string\":
+ \"B\",\n \"Cookware_Enum\": \"FryingPan\",\n \"Ingredient1:string\":
+ 2,\n \"Ingredient2:string\": 3,\n \"Taste1:Taste_Enum\": \"Spicy\",\n
+ \"Taste2:Taste_Enum\": \"Bitter\",\n \"Sprite:Sprite\": \"\"\n },\n
+ {\n \"Id:string\": \"Food003\",\n \"Name:string\": \"C\",\n
+ \"Cookware_Enum\": \"Pot\",\n \"Ingredient1:string\": 2,\n \"Ingredient2:string\":
+ 3,\n \"Taste1:Taste_Enum\": \"Fresh\",\n \"Taste2:Taste_Enum\": \"None\",\n
+ \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": \"Food004\",\n
+ \"Name:string\": \"D\",\n \"Cookware_Enum\": \"Plating\",\n \"Ingredient1:string\":
+ 2,\n \"Ingredient2:string\": 3,\n \"Taste1:Taste_Enum\": \"Sour\",\n
+ \"Taste2:Taste_Enum\": \"Salty\",\n \"Sprite:Sprite\": \"\"\n }\n
+ ],\n \"Monster\": [\n {\n \"Id\": \"\uC2DD\uBCC4\uBC88\uD638\",\n
+ \"Name\": \"\uC774\uB984\",\n \"T1\": \"\uD14C\uC2A4\uD2B81\"\n },\n
+ {\n \"Id\": \"Test001\",\n \"Name\": \"A\",\n \"T1\": 1\n
+ },\n {\n \"Id\": \"Test002\",\n \"Name\": \"B\",\n \"T1\":
+ 2\n },\n {\n \"Id\": \"Test003\",\n \"Name\": \"C\",\n
+ \"T1\": 3\n },\n {\n \"Id\": \"Test004\",\n \"Name\": \"D\",\n
+ \"T1\": 4\n }\n ]\n}"
+ - Editor: "\uB0A8\uD0DC\uAC74"
+ Timestamp: 2025-05-26 18:02:16
+ JsonSnapshot: "{\n \"$\uAC1C\uC694\": [\n {\n \"\": \"\uC2DC\uD2B8 \uC0DD\uC131\"\n
+ }\n ],\n \"Food\": [\n {\n \"Id:string\": \"\uC2DD\uBCC4ID\",\n
+ \"Name:string\": \"\uC774\uB984\",\n \"Cookware_Enum\": \"\uC694\uB9AC\uB3C4\uAD6C\",\n
+ \"Ingredient1:string\": \"\uC7AC\uB8CC1\",\n \"Ingredient2:string\": \"\uC7AC\uB8CC2\",\n
+ \"Taste1:Taste_Enum\": \"\uB9DB1\",\n \"Taste2:Taste_Enum\": \"\uB9DB2\",\n
+ \"Sprite:Sprite\": \"Addressable \uC774\uBBF8\uC9C0 \uC774\uB984\"\n },\n
+ {\n \"Id:string\": \"Food001\",\n \"Name:string\": \"\uD587\uBE5B\uC218\uD504\",\n
+ \"Cookware_Enum\": \"Pot\",\n \"Ingredient1:string\": \"\uADF9\uB77D\uC300\",\n
+ \"Ingredient2:string\": \"\uD587\uBE5B\uB2F9\uADFC\",\n \"Taste1:Taste_Enum\":
+ \"Bitter\",\n \"Taste2:Taste_Enum\": \"Sweet\",\n \"Sprite:Sprite\":
+ \"Gold\"\n },\n {\n \"Id:string\": \"Food002\",\n \"Name:string\":
+ \"B\",\n \"Cookware_Enum\": \"FryingPan\",\n \"Ingredient1:string\":
+ 1,\n \"Ingredient2:string\": 4,\n \"Taste1:Taste_Enum\": \"Spicy\",\n
+ \"Taste2:Taste_Enum\": \"Bitter\",\n \"Sprite:Sprite\": \"\"\n },\n
+ {\n \"Id:string\": \"Food003\",\n \"Name:string\": \"C\",\n
+ \"Cookware_Enum\": \"Pot\",\n \"Ingredient1:string\": 2,\n \"Ingredient2:string\":
+ 5,\n \"Taste1:Taste_Enum\": \"Fresh\",\n \"Taste2:Taste_Enum\": \"None\",\n
+ \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": \"Food004\",\n
+ \"Name:string\": \"D\",\n \"Cookware_Enum\": \"Plating\",\n \"Ingredient1:string\":
+ 3,\n \"Ingredient2:string\": 6,\n \"Taste1:Taste_Enum\": \"Sour\",\n
+ \"Taste2:Taste_Enum\": \"Salty\",\n \"Sprite:Sprite\": \"\"\n }\n
+ ],\n \"Monster\": [\n {\n \"Id\": \"\uC2DD\uBCC4\uBC88\uD638\",\n
+ \"Name\": \"\uC774\uB984\",\n \"T1\": \"\uD14C\uC2A4\uD2B81\"\n },\n
+ {\n \"Id\": \"Test001\",\n \"Name\": \"A\",\n \"T1\": 1\n
+ },\n {\n \"Id\": \"Test002\",\n \"Name\": \"B\",\n \"T1\":
+ 2\n },\n {\n \"Id\": \"Test003\",\n \"Name\": \"C\",\n
+ \"T1\": 3\n },\n {\n \"Id\": \"Test004\",\n \"Name\": \"D\",\n
+ \"T1\": 4\n }\n ]\n}"
+ - Editor: "\uB0A8\uD0DC\uAC74"
+ Timestamp: 2025-05-26 18:03:12
+ JsonSnapshot: "{\n \"$\uAC1C\uC694\": [\n {\n \"\": \"\uC2DC\uD2B8 \uC0DD\uC131\"\n
+ }\n ],\n \"Food\": [\n {\n \"Id:string\": \"\uC2DD\uBCC4ID\",\n
+ \"Name:string\": \"\uC774\uB984\",\n \"Cookware_Enum\": \"\uC694\uB9AC\uB3C4\uAD6C\",\n
+ \"Ingredient1:string\": \"\uC7AC\uB8CC1\",\n \"Ingredient2:string\": \"\uC7AC\uB8CC2\",\n
+ \"Taste1:Taste_Enum\": \"\uB9DB1\",\n \"Taste2:Taste_Enum\": \"\uB9DB2\",\n
+ \"Sprite:Sprite\": \"Addressable \uC774\uBBF8\uC9C0 \uC774\uB984\"\n },\n
+ {\n \"Id:string\": \"Food001\",\n \"Name:string\": \"\uD587\uBE5B\uC218\uD504\",\n
+ \"Cookware_Enum\": \"Pot\",\n \"Ingredient1:string\": \"\uADF9\uB77D\uC300\",\n
+ \"Ingredient2:string\": \"\uD587\uBE5B\uB2F9\uADFC\",\n \"Taste1:Taste_Enum\":
+ \"Bitter\",\n \"Taste2:Taste_Enum\": \"Sweet\",\n \"Sprite:Sprite\":
+ \"Gold\"\n },\n {\n \"Id:string\": \"Food002\",\n \"Name:string\":
+ \"B\",\n \"Cookware_Enum\": \"FryingPan\",\n \"Ingredient1:string\":
+ 1,\n \"Ingredient2:string\": 4,\n \"Taste1:Taste_Enum\": \"Spicy\",\n
+ \"Taste2:Taste_Enum\": \"Bitter\",\n \"Sprite:Sprite\": \"Gold\"\n
+ },\n {\n \"Id:string\": \"Food003\",\n \"Name:string\": \"C\",\n
+ \"Cookware_Enum\": \"Pot\",\n \"Ingredient1:string\": 2,\n \"Ingredient2:string\":
+ 5,\n \"Taste1:Taste_Enum\": \"Fresh\",\n \"Taste2:Taste_Enum\": \"None\",\n
+ \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": \"Food004\",\n
+ \"Name:string\": \"D\",\n \"Cookware_Enum\": \"Plating\",\n \"Ingredient1:string\":
+ 3,\n \"Ingredient2:string\": 6,\n \"Taste1:Taste_Enum\": \"Sour\",\n
+ \"Taste2:Taste_Enum\": \"Salty\",\n \"Sprite:Sprite\": \"Gold\"\n }\n
+ ],\n \"Monster\": [\n {\n \"Id\": \"\uC2DD\uBCC4\uBC88\uD638\",\n
+ \"Name\": \"\uC774\uB984\",\n \"T1\": \"\uD14C\uC2A4\uD2B81\"\n },\n
+ {\n \"Id\": \"Test001\",\n \"Name\": \"A\",\n \"T1\": 1\n
+ },\n {\n \"Id\": \"Test002\",\n \"Name\": \"B\",\n \"T1\":
+ 2\n },\n {\n \"Id\": \"Test003\",\n \"Name\": \"C\",\n
+ \"T1\": 3\n },\n {\n \"Id\": \"Test004\",\n \"Name\": \"D\",\n
+ \"T1\": 4\n }\n ]\n}"
+ - Editor: "\uB0A8\uD0DC\uAC74"
+ Timestamp: 2025-05-26 18:04:01
+ JsonSnapshot: "{\n \"$\uAC1C\uC694\": [\n {\n \"\": \"\uC2DC\uD2B8 \uC0DD\uC131\"\n
+ }\n ],\n \"Food\": [\n {\n \"Id:string\": \"\uC2DD\uBCC4ID\",\n
+ \"Name:string\": \"\uC774\uB984\",\n \"Cookware_Enum\": \"\uC694\uB9AC\uB3C4\uAD6C\",\n
+ \"Ingredient1:string\": \"\uC7AC\uB8CC1\",\n \"Ingredient2:string\": \"\uC7AC\uB8CC2\",\n
+ \"Taste1:Taste_Enum\": \"\uB9DB1\",\n \"Taste2:Taste_Enum\": \"\uB9DB2\",\n
+ \"Sprite:Sprite\": \"Addressable \uC774\uBBF8\uC9C0 \uC774\uB984\"\n },\n
+ {\n \"Id:string\": \"Food001\",\n \"Name:string\": \"\uD587\uBE5B\uC218\uD504\",\n
+ \"Cookware_Enum\": \"Pot\",\n \"Ingredient1:string\": \"\uADF9\uB77D\uC300\",\n
+ \"Ingredient2:string\": \"\uD587\uBE5B\uB2F9\uADFC\",\n \"Taste1:Taste_Enum\":
+ \"Bitter\",\n \"Taste2:Taste_Enum\": \"Sweet\",\n \"Sprite:Sprite\":
+ \"Gold\"\n },\n {\n \"Id:string\": \"Food002\",\n \"Name:string\":
+ \"B\",\n \"Cookware_Enum\": \"FryingPan\",\n \"Ingredient1:string\":
+ 1,\n \"Ingredient2:string\": 4,\n \"Taste1:Taste_Enum\": \"Spicy\",\n
+ \"Taste2:Taste_Enum\": \"Bitter\",\n \"Sprite:Sprite\": \"\"\n },\n
+ {\n \"Id:string\": \"Food003\",\n \"Name:string\": \"C\",\n
+ \"Cookware_Enum\": \"Pot\",\n \"Ingredient1:string\": 2,\n \"Ingredient2:string\":
+ 5,\n \"Taste1:Taste_Enum\": \"Fresh\",\n \"Taste2:Taste_Enum\": \"None\",\n
+ \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": \"Food004\",\n
+ \"Name:string\": \"D\",\n \"Cookware_Enum\": \"Plating\",\n \"Ingredient1:string\":
+ 3,\n \"Ingredient2:string\": 6,\n \"Taste1:Taste_Enum\": \"Sour\",\n
+ \"Taste2:Taste_Enum\": \"Salty\",\n \"Sprite:Sprite\": \"Gold\"\n }\n
+ ],\n \"Monster\": [\n {\n \"Id\": \"\uC2DD\uBCC4\uBC88\uD638\",\n
+ \"Name\": \"\uC774\uB984\",\n \"T1\": \"\uD14C\uC2A4\uD2B81\"\n },\n
+ {\n \"Id\": \"Test001\",\n \"Name\": \"A\",\n \"T1\": 1\n
+ },\n {\n \"Id\": \"Test002\",\n \"Name\": \"B\",\n \"T1\":
+ 2\n },\n {\n \"Id\": \"Test003\",\n \"Name\": \"C\",\n
+ \"T1\": 3\n },\n {\n \"Id\": \"Test004\",\n \"Name\": \"D\",\n
+ \"T1\": 4\n }\n ]\n}"
+ MaxLogs: 100
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs/GoogleSheetChangeLog.asset.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs/GoogleSheetChangeLog.asset.meta
new file mode 100644
index 000000000..003acd503
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs/GoogleSheetChangeLog.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: c2d9c50ebe901154898d341b0f4d5fc7
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Monster.cs b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Monster.cs
new file mode 100644
index 000000000..3d8bc50e1
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Monster.cs
@@ -0,0 +1,19 @@
+//
+using System;
+using UnityEngine;
+[Serializable]
+public class Monster
+{
+ /// 식별번호
+ [Tooltip("식별번호")]
+ public string Id;
+
+ /// 이름
+ [Tooltip("이름")]
+ public string Name;
+
+ /// 테스트1
+ [Tooltip("테스트1")]
+ public int T1;
+
+}
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Monster.cs.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Monster.cs.meta
new file mode 100644
index 000000000..bb07efdf8
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Monster.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: 3f5317d10c3a45e4093c32d9b1d436bf
\ No newline at end of file
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/MonsterSo.cs b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/MonsterSo.cs
new file mode 100644
index 000000000..ad0fc9c4a
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/MonsterSo.cs
@@ -0,0 +1,9 @@
+// File: MonsterSo.cs
+using System.Collections.Generic;
+using UnityEngine;
+
+[CreateAssetMenu(fileName = "MonsterSo", menuName = "GoogleSheet/MonsterSo")]
+public class MonsterSo : ScriptableObject
+{
+ public List MonsterList;
+}
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/MonsterSo.cs.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/MonsterSo.cs.meta
new file mode 100644
index 000000000..b9df3d5e5
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/MonsterSo.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: cb106eb1727eb104298694c0e0de12f2
\ No newline at end of file
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So.meta
new file mode 100644
index 000000000..739ceb479
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 84c488a1a40c90140ae7d4b6416411b7
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/FoodSo.asset b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/FoodSo.asset
new file mode 100644
index 000000000..a98349f8b
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/FoodSo.asset
@@ -0,0 +1,47 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &11400000
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: ffda527566a5cd9469dd6a7f2cd953bb, type: 3}
+ m_Name: FoodSo
+ m_EditorClassIdentifier:
+ FoodList:
+ - Id: Food001
+ Name: "\uD587\uBE5B\uC218\uD504"
+ Cookware: 1
+ Ingredient1: "\uADF9\uB77D\uC300"
+ Ingredient2: "\uD587\uBE5B\uB2F9\uADFC"
+ Taste1: 1
+ Taste2: 2
+ Sprite: {fileID: 21300000, guid: e15933f76da90e742866563b5cd9e45f, type: 3}
+ - Id: Food002
+ Name: B
+ Cookware: 2
+ Ingredient1: 1
+ Ingredient2: 4
+ Taste1: 3
+ Taste2: 1
+ Sprite: {fileID: 0}
+ - Id: Food003
+ Name: C
+ Cookware: 1
+ Ingredient1: 2
+ Ingredient2: 5
+ Taste1: 4
+ Taste2: 0
+ Sprite: {fileID: 0}
+ - Id: Food004
+ Name: D
+ Cookware: 3
+ Ingredient1: 3
+ Ingredient2: 6
+ Taste1: 5
+ Taste2: 6
+ Sprite: {fileID: 21300000, guid: e15933f76da90e742866563b5cd9e45f, type: 3}
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/FoodSo.asset.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/FoodSo.asset.meta
new file mode 100644
index 000000000..a44699324
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/FoodSo.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: b0149444f80f2a443a2d79a08fa2650e
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/MonsterSo.asset b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/MonsterSo.asset
new file mode 100644
index 000000000..186142b9d
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/MonsterSo.asset
@@ -0,0 +1,27 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &11400000
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: cb106eb1727eb104298694c0e0de12f2, type: 3}
+ m_Name: MonsterSo
+ m_EditorClassIdentifier:
+ MonsterList:
+ - Id: Test001
+ Name: A
+ T1: 1
+ - Id: Test002
+ Name: B
+ T1: 2
+ - Id: Test003
+ Name: C
+ T1: 3
+ - Id: Test004
+ Name: D
+ T1: 4
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/MonsterSo.asset.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/MonsterSo.asset.meta
new file mode 100644
index 000000000..6de141483
--- /dev/null
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/MonsterSo.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 5fcfe5933281a534986204df8c5453fd
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/Core/GoogldSheetManager.cs b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/Core/GoogldSheetManager.cs
index d5f26b03d..b5f90420b 100644
--- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/Core/GoogldSheetManager.cs
+++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/Core/GoogldSheetManager.cs
@@ -126,7 +126,7 @@ private async Task FetchGoogleSheet()
return;
}
- if (isJsonSaved)
+ if (diffs.Count > 0 || isJsonSaved)
{
_refreshTrigger = true;
SaveChangeLog(_json);
@@ -540,6 +540,14 @@ private async Task CreateGoogleSheetSoAsync()
{
_isCreatingSo = false;
}
+
+#if UNITY_EDITOR
+ if (result) // 성공적으로 SO 생성된 경우에만 빌드 수행
+ {
+ Debug.Log("[GoogleSheetManager] Addressables BuildPlayerContent 실행");
+ UnityEditor.AddressableAssets.Settings.AddressableAssetSettings.BuildPlayerContent();
+ }
+#endif
return result;
}
@@ -703,6 +711,12 @@ private async Task InternalCreateGoogleSheetSoAsync()
if (listField != null)
{
+ object existingListObj = listField.GetValue(soInstance);
+ if (existingListObj is IList existingList)
+ {
+ existingList.Clear(); // ✅ 기존 리스트를 완전히 비움
+ }
+
listField.SetValue(soInstance, list);
EditorUtility.SetDirty(soInstance);
}
@@ -772,37 +786,6 @@ private async Task DelayAndCreateSo()
}
}
- [BoxGroup("데이터 변경")]
- [Button("런타임 중 데이터 재적용")]
- public void ReloadRuntimeData()
- {
- StartCoroutine(ReloadRoutine());
- }
-
- private IEnumerator ReloadRoutine()
- {
- _availSheetArray = _availSheets.Split('/');
-
- if (_isAccessGoogleSheet)
- {
- var task = LoadDataGoogleSheet(_googleSheetUrl);
- yield return new WaitUntil(() => task.IsCompleted);
- _json = task.Result;
- }
- else
- {
- _json = LoadDataLocalJson();
- }
-
- if (!string.IsNullOrEmpty(_json))
- {
- var soTask = CreateGoogleSheetSoAsync();
- yield return new WaitUntil(() => soTask.IsCompleted);
-
- Debug.Log("런타임 데이터 재적용 완료");
- }
- }
-
public async Task CreateSoAfterScriptReload()
{
if (_json != null)