From 6c9283ed6e4d0d388300ee5a6e80c60e6e49e33d Mon Sep 17 00:00:00 2001 From: NTG_Lenovo Date: Tue, 13 May 2025 16:49:50 +0900 Subject: [PATCH] =?UTF-8?q?=EA=B5=AC=EA=B8=80=20=EC=8B=9C=ED=8A=B8=20?= =?UTF-8?q?=EC=88=98=EC=A0=95=20=EC=A4=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AssetGroups/GoogleSheetSo_Group.asset | 4 +- Assets/_Datas/01.Scenes/SampleScene.unity | 2 +- .../GenerateGoogleSheet/AutoCreated.meta | 2 +- .../AutoCreated/BackUps.meta | 2 +- ...ด.json => 2025-05-13 16-28-35 by ๋‚จํƒœ๊ฑด.json} | 0 ...a => 2025-05-13 16-28-35 by ๋‚จํƒœ๊ฑด.json.meta} | 2 +- .../2025-05-13 16-30-24 by ๋‚จํƒœ๊ฑด.json | 81 ++++++ .../2025-05-13 16-30-24 by ๋‚จํƒœ๊ฑด.json.meta | 7 + .../2025-05-13 16-37-27 by ๋‚จํƒœ๊ฑด.json | 81 ++++++ .../2025-05-13 16-37-27 by ๋‚จํƒœ๊ฑด.json.meta | 7 + .../2025-05-13 16-39-30 by ๋‚จํƒœ๊ฑด.json | 81 ++++++ .../2025-05-13 16-39-30 by ๋‚จํƒœ๊ฑด.json.meta | 7 + .../2025-05-13 16-40-46 by ๋‚จํƒœ๊ฑด.json | 81 ++++++ .../2025-05-13 16-40-46 by ๋‚จํƒœ๊ฑด.json.meta | 7 + .../2025-05-13 16-41-55 by ๋‚จํƒœ๊ฑด.json | 81 ++++++ .../2025-05-13 16-41-55 by ๋‚จํƒœ๊ฑด.json.meta | 7 + .../2025-05-13 16-43-04 by ๋‚จํƒœ๊ฑด.json | 81 ++++++ .../2025-05-13 16-43-04 by ๋‚จํƒœ๊ฑด.json.meta | 7 + .../2025-05-13 16-44-24 by ๋‚จํƒœ๊ฑด.json | 81 ++++++ .../2025-05-13 16-44-24 by ๋‚จํƒœ๊ฑด.json.meta | 7 + .../2025-05-13 16-46-54 by ๋‚จํƒœ๊ฑด.json | 81 ++++++ .../2025-05-13 16-46-54 by ๋‚จํƒœ๊ฑด.json.meta | 7 + .../2025-05-13 16-48-29 by ๋‚จํƒœ๊ฑด.json | 81 ++++++ .../2025-05-13 16-48-29 by ๋‚จํƒœ๊ฑด.json.meta | 7 + .../AutoCreated/EnumTypes.cs.meta | 2 +- .../AutoCreated/Food.cs.meta | 2 +- .../AutoCreated/FoodSo.cs.meta | 2 +- .../AutoCreated/GoogleSheetJson.json | 6 +- .../AutoCreated/GoogleSheetJson.json.meta | 2 +- .../GenerateGoogleSheet/AutoCreated/Logs.meta | 2 +- .../Logs/GoogleSheetChangeLog.asset | 249 +++++++++++++++++- .../Logs/GoogleSheetChangeLog.asset.meta | 2 +- .../AutoCreated/Monster.cs.meta | 2 +- .../AutoCreated/MonsterSo.cs.meta | 2 +- .../GenerateGoogleSheet/AutoCreated/So.meta | 2 +- .../AutoCreated/So/FoodSo.asset | 10 +- .../AutoCreated/So/FoodSo.asset.meta | 2 +- .../AutoCreated/So/MonsterSo.asset | 2 +- .../AutoCreated/So/MonsterSo.asset.meta | 2 +- .../Core/GoogldSheetManager.cs | 194 ++++++++++---- 40 files changed, 1205 insertions(+), 82 deletions(-) rename Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/{2025-05-13 15-02-17 by ๋‚จํƒœ๊ฑด.json => 2025-05-13 16-28-35 by ๋‚จํƒœ๊ฑด.json} (100%) rename Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/{2025-05-13 15-02-17 by ๋‚จํƒœ๊ฑด.json.meta => 2025-05-13 16-28-35 by ๋‚จํƒœ๊ฑด.json.meta} (75%) create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-30-24 by ๋‚จํƒœ๊ฑด.json create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-30-24 by ๋‚จํƒœ๊ฑด.json.meta create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-37-27 by ๋‚จํƒœ๊ฑด.json create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-37-27 by ๋‚จํƒœ๊ฑด.json.meta create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-39-30 by ๋‚จํƒœ๊ฑด.json create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-39-30 by ๋‚จํƒœ๊ฑด.json.meta create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-40-46 by ๋‚จํƒœ๊ฑด.json create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-40-46 by ๋‚จํƒœ๊ฑด.json.meta create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-41-55 by ๋‚จํƒœ๊ฑด.json create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-41-55 by ๋‚จํƒœ๊ฑด.json.meta create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-43-04 by ๋‚จํƒœ๊ฑด.json create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-43-04 by ๋‚จํƒœ๊ฑด.json.meta create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-44-24 by ๋‚จํƒœ๊ฑด.json create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-44-24 by ๋‚จํƒœ๊ฑด.json.meta create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-46-54 by ๋‚จํƒœ๊ฑด.json create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-46-54 by ๋‚จํƒœ๊ฑด.json.meta create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-48-29 by ๋‚จํƒœ๊ฑด.json create mode 100644 Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-48-29 by ๋‚จํƒœ๊ฑด.json.meta diff --git a/Assets/AddressableAssetsData/AssetGroups/GoogleSheetSo_Group.asset b/Assets/AddressableAssetsData/AssetGroups/GoogleSheetSo_Group.asset index 4808b3c13..d20ca6f45 100644 --- a/Assets/AddressableAssetsData/AssetGroups/GoogleSheetSo_Group.asset +++ b/Assets/AddressableAssetsData/AssetGroups/GoogleSheetSo_Group.asset @@ -15,13 +15,13 @@ MonoBehaviour: m_GroupName: GoogleSheetSo_Group m_GUID: 7fe0c33d351391a45a0ea3c93ecef42e m_SerializeEntries: - - m_GUID: 2a1b86f3356293441bcfca705fff3b85 + - m_GUID: 1542a7a4161005c4baf6262cdf5f4ac7 m_Address: MonsterSo m_ReadOnly: 0 m_SerializedLabels: - GoogleSheetSo FlaggedDuringContentUpdateRestriction: 0 - - m_GUID: 8f6a170dcd0a88d47939e70db303af14 + - m_GUID: ccb6f7909b5ffd94499bbeaef45086be m_Address: FoodSo m_ReadOnly: 0 m_SerializedLabels: diff --git a/Assets/_Datas/01.Scenes/SampleScene.unity b/Assets/_Datas/01.Scenes/SampleScene.unity index 3553ac1be..7a2737709 100644 --- a/Assets/_Datas/01.Scenes/SampleScene.unity +++ b/Assets/_Datas/01.Scenes/SampleScene.unity @@ -290,7 +290,7 @@ 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 15:02:17 by \uB0A8\uD0DC\uAC74" + _currentVersion: "7 - 2025-05-13 16:44:24 by \uB0A8\uD0DC\uAC74" _restoreIndex: 0 _editorName: _refreshTrigger: 1 diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated.meta index 0fa52278d..adc975b8e 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated.meta +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: fb4a8c3ebcd8b9040b65650bcb10ed6c +guid: 68c35d02b1414b34f87d8c3169f743e5 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps.meta index 5ef35da81..141a32722 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps.meta +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: eca79fbd6ba923849bafc170520d87c1 +guid: 46bf69576c1d1b24ebce48222bcb0a4d folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 15-02-17 by ๋‚จํƒœ๊ฑด.json b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-28-35 by ๋‚จํƒœ๊ฑด.json similarity index 100% rename from Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 15-02-17 by ๋‚จํƒœ๊ฑด.json rename to Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-28-35 by ๋‚จํƒœ๊ฑด.json diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 15-02-17 by ๋‚จํƒœ๊ฑด.json.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-28-35 by ๋‚จํƒœ๊ฑด.json.meta similarity index 75% rename from Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 15-02-17 by ๋‚จํƒœ๊ฑด.json.meta rename to Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-28-35 by ๋‚จํƒœ๊ฑด.json.meta index 0c4cf74d9..3a5f4d682 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 15-02-17 by ๋‚จํƒœ๊ฑด.json.meta +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-28-35 by ๋‚จํƒœ๊ฑด.json.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 1cf6b1e28051e1f418882d448a258c13 +guid: 07e7795754f7da943976cb3e16c363d8 TextScriptImporter: externalObjects: {} userData: diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-30-24 by ๋‚จํƒœ๊ฑด.json b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-30-24 by ๋‚จํƒœ๊ฑด.json new file mode 100644 index 000000000..971bed6ce --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-30-24 by ๋‚จํƒœ๊ฑด.json @@ -0,0 +1,81 @@ +{ + "$๊ฐœ์š”": [ + { + "": "์‹œํŠธ ์ƒ์„ฑ" + } + ], + "Food": [ + { + "Id:string": "์‹๋ณ„ID", + "Name:string": "์ด๋ฆ„", + "Ingredient1:string": "์žฌ๋ฃŒ1", + "Ingredient2:string": "์žฌ๋ฃŒ2", + "Taste1:Taste_Enum": "๋ง›1", + "Taste2:Taste_Enum": "๋ง›2", + "Sprite:Sprite": "Addressable ์ด๋ฏธ์ง€ ์ด๋ฆ„" + }, + { + "Id:string": "Food001", + "Name:string": "ํ–‡๋น›์ˆ˜ํ”„", + "Ingredient1:string": "๊ทน๋ฝ์Œ€", + "Ingredient2:string": "ํ–‡๋น›๋‹น๊ทผ", + "Taste1:Taste_Enum": "Bitter", + "Taste2:Taste_Enum": "Sweet", + "Sprite:Sprite": "Gold" + }, + { + "Id:string": "Food002", + "Name:string": "B", + "Ingredient1:string": 1, + "Ingredient2:string": 11, + "Taste1:Taste_Enum": "Spicy", + "Taste2:Taste_Enum": "Bitter", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food003", + "Name:string": "C", + "Ingredient1:string": 2, + "Ingredient2:string": 22, + "Taste1:Taste_Enum": "Fresh", + "Taste2:Taste_Enum": "None", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food004", + "Name:string": "D", + "Ingredient1:string": 3, + "Ingredient2:string": 33, + "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-13 16-30-24 by ๋‚จํƒœ๊ฑด.json.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-30-24 by ๋‚จํƒœ๊ฑด.json.meta new file mode 100644 index 000000000..497815eab --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-30-24 by ๋‚จํƒœ๊ฑด.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 2f85d1030505c1a46b9c4b296dfd1213 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-37-27 by ๋‚จํƒœ๊ฑด.json b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-37-27 by ๋‚จํƒœ๊ฑด.json new file mode 100644 index 000000000..1cce8ec55 --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-37-27 by ๋‚จํƒœ๊ฑด.json @@ -0,0 +1,81 @@ +{ + "$๊ฐœ์š”": [ + { + "": "์‹œํŠธ ์ƒ์„ฑ" + } + ], + "Food": [ + { + "Id:string": "์‹๋ณ„ID", + "Name:string": "์ด๋ฆ„", + "Ingredient1:string": "์žฌ๋ฃŒ1", + "Ingredient2:string": "์žฌ๋ฃŒ2", + "Taste1:Taste_Enum": "๋ง›1", + "Taste2:Taste_Enum": "๋ง›2", + "Sprite:Sprite": "Addressable ์ด๋ฏธ์ง€ ์ด๋ฆ„" + }, + { + "Id:string": "Food001", + "Name:string": "ํ–‡๋น›์ˆ˜ํ”„", + "Ingredient1:string": "๊ทน๋ฝ์Œ€", + "Ingredient2:string": "ํ–‡๋น›๋‹น๊ทผ", + "Taste1:Taste_Enum": "Bitter", + "Taste2:Taste_Enum": "Sweet", + "Sprite:Sprite": "Gold" + }, + { + "Id:string": "Food002", + "Name:string": "B", + "Ingredient1:string": 1, + "Ingredient2:string": 7, + "Taste1:Taste_Enum": "Spicy", + "Taste2:Taste_Enum": "Bitter", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food003", + "Name:string": "C", + "Ingredient1:string": 2, + "Ingredient2:string": 7, + "Taste1:Taste_Enum": "Fresh", + "Taste2:Taste_Enum": "None", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food004", + "Name:string": "D", + "Ingredient1:string": 3, + "Ingredient2:string": 7, + "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-13 16-37-27 by ๋‚จํƒœ๊ฑด.json.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-37-27 by ๋‚จํƒœ๊ฑด.json.meta new file mode 100644 index 000000000..673cc4842 --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-37-27 by ๋‚จํƒœ๊ฑด.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f7e7c66cf0ba20d4f9f69ec1de7247c7 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-39-30 by ๋‚จํƒœ๊ฑด.json b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-39-30 by ๋‚จํƒœ๊ฑด.json new file mode 100644 index 000000000..45437ab5f --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-39-30 by ๋‚จํƒœ๊ฑด.json @@ -0,0 +1,81 @@ +{ + "$๊ฐœ์š”": [ + { + "": "์‹œํŠธ ์ƒ์„ฑ" + } + ], + "Food": [ + { + "Id:string": "์‹๋ณ„ID", + "Name:string": "์ด๋ฆ„", + "Ingredient1:string": "์žฌ๋ฃŒ1", + "Ingredient2:string": "์žฌ๋ฃŒ2", + "Taste1:Taste_Enum": "๋ง›1", + "Taste2:Taste_Enum": "๋ง›2", + "Sprite:Sprite": "Addressable ์ด๋ฏธ์ง€ ์ด๋ฆ„" + }, + { + "Id:string": "Food001", + "Name:string": "ํ–‡๋น›์ˆ˜ํ”„", + "Ingredient1:string": "๊ทน๋ฝ์Œ€", + "Ingredient2:string": "ํ–‡๋น›๋‹น๊ทผ", + "Taste1:Taste_Enum": "Bitter", + "Taste2:Taste_Enum": "Sweet", + "Sprite:Sprite": "Gold" + }, + { + "Id:string": "Food002", + "Name:string": "B", + "Ingredient1:string": 1, + "Ingredient2:string": 8, + "Taste1:Taste_Enum": "Spicy", + "Taste2:Taste_Enum": "Bitter", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food003", + "Name:string": "C", + "Ingredient1:string": 2, + "Ingredient2:string": 8, + "Taste1:Taste_Enum": "Fresh", + "Taste2:Taste_Enum": "None", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food004", + "Name:string": "D", + "Ingredient1:string": 3, + "Ingredient2:string": 8, + "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-13 16-39-30 by ๋‚จํƒœ๊ฑด.json.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-39-30 by ๋‚จํƒœ๊ฑด.json.meta new file mode 100644 index 000000000..685c5e136 --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-39-30 by ๋‚จํƒœ๊ฑด.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: fd833067e5a7f804baef09baccca5d35 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-40-46 by ๋‚จํƒœ๊ฑด.json b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-40-46 by ๋‚จํƒœ๊ฑด.json new file mode 100644 index 000000000..4cf4a63ef --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-40-46 by ๋‚จํƒœ๊ฑด.json @@ -0,0 +1,81 @@ +{ + "$๊ฐœ์š”": [ + { + "": "์‹œํŠธ ์ƒ์„ฑ" + } + ], + "Food": [ + { + "Id:string": "์‹๋ณ„ID", + "Name:string": "์ด๋ฆ„", + "Ingredient1:string": "์žฌ๋ฃŒ1", + "Ingredient2:string": "์žฌ๋ฃŒ2", + "Taste1:Taste_Enum": "๋ง›1", + "Taste2:Taste_Enum": "๋ง›2", + "Sprite:Sprite": "Addressable ์ด๋ฏธ์ง€ ์ด๋ฆ„" + }, + { + "Id:string": "Food001", + "Name:string": "ํ–‡๋น›์ˆ˜ํ”„", + "Ingredient1:string": "๊ทน๋ฝ์Œ€", + "Ingredient2:string": "ํ–‡๋น›๋‹น๊ทผ", + "Taste1:Taste_Enum": "Bitter", + "Taste2:Taste_Enum": "Sweet", + "Sprite:Sprite": "Gold" + }, + { + "Id:string": "Food002", + "Name:string": "B", + "Ingredient1:string": 1, + "Ingredient2:string": 9, + "Taste1:Taste_Enum": "Spicy", + "Taste2:Taste_Enum": "Bitter", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food003", + "Name:string": "C", + "Ingredient1:string": 2, + "Ingredient2:string": 9, + "Taste1:Taste_Enum": "Fresh", + "Taste2:Taste_Enum": "None", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food004", + "Name:string": "D", + "Ingredient1:string": 3, + "Ingredient2:string": 9, + "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-13 16-40-46 by ๋‚จํƒœ๊ฑด.json.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-40-46 by ๋‚จํƒœ๊ฑด.json.meta new file mode 100644 index 000000000..a8d3102c3 --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-40-46 by ๋‚จํƒœ๊ฑด.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9fabf60774f9a7941b5c170871ca941c +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-41-55 by ๋‚จํƒœ๊ฑด.json b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-41-55 by ๋‚จํƒœ๊ฑด.json new file mode 100644 index 000000000..667d9607c --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-41-55 by ๋‚จํƒœ๊ฑด.json @@ -0,0 +1,81 @@ +{ + "$๊ฐœ์š”": [ + { + "": "์‹œํŠธ ์ƒ์„ฑ" + } + ], + "Food": [ + { + "Id:string": "์‹๋ณ„ID", + "Name:string": "์ด๋ฆ„", + "Ingredient1:string": "์žฌ๋ฃŒ1", + "Ingredient2:string": "์žฌ๋ฃŒ2", + "Taste1:Taste_Enum": "๋ง›1", + "Taste2:Taste_Enum": "๋ง›2", + "Sprite:Sprite": "Addressable ์ด๋ฏธ์ง€ ์ด๋ฆ„" + }, + { + "Id:string": "Food001", + "Name:string": "ํ–‡๋น›์ˆ˜ํ”„", + "Ingredient1:string": "๊ทน๋ฝ์Œ€", + "Ingredient2:string": "ํ–‡๋น›๋‹น๊ทผ", + "Taste1:Taste_Enum": "Bitter", + "Taste2:Taste_Enum": "Sweet", + "Sprite:Sprite": "Gold" + }, + { + "Id:string": "Food002", + "Name:string": "B", + "Ingredient1:string": 1, + "Ingredient2:string": 333, + "Taste1:Taste_Enum": "Spicy", + "Taste2:Taste_Enum": "Bitter", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food003", + "Name:string": "C", + "Ingredient1:string": 2, + "Ingredient2:string": 444, + "Taste1:Taste_Enum": "Fresh", + "Taste2:Taste_Enum": "None", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food004", + "Name:string": "D", + "Ingredient1:string": 3, + "Ingredient2:string": 555, + "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-13 16-41-55 by ๋‚จํƒœ๊ฑด.json.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-41-55 by ๋‚จํƒœ๊ฑด.json.meta new file mode 100644 index 000000000..e4647a60a --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-41-55 by ๋‚จํƒœ๊ฑด.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 2252c8d797af75e49adb65a24069c094 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-43-04 by ๋‚จํƒœ๊ฑด.json b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-43-04 by ๋‚จํƒœ๊ฑด.json new file mode 100644 index 000000000..c491e26a8 --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-43-04 by ๋‚จํƒœ๊ฑด.json @@ -0,0 +1,81 @@ +{ + "$๊ฐœ์š”": [ + { + "": "์‹œํŠธ ์ƒ์„ฑ" + } + ], + "Food": [ + { + "Id:string": "์‹๋ณ„ID", + "Name:string": "์ด๋ฆ„", + "Ingredient1:string": "์žฌ๋ฃŒ1", + "Ingredient2:string": "์žฌ๋ฃŒ2", + "Taste1:Taste_Enum": "๋ง›1", + "Taste2:Taste_Enum": "๋ง›2", + "Sprite:Sprite": "Addressable ์ด๋ฏธ์ง€ ์ด๋ฆ„" + }, + { + "Id:string": "Food001", + "Name:string": "ํ–‡๋น›์ˆ˜ํ”„", + "Ingredient1:string": "๊ทน๋ฝ์Œ€", + "Ingredient2:string": "ํ–‡๋น›๋‹น๊ทผ", + "Taste1:Taste_Enum": "Bitter", + "Taste2:Taste_Enum": "Sweet", + "Sprite:Sprite": "Gold" + }, + { + "Id:string": "Food002", + "Name:string": "B", + "Ingredient1:string": 1, + "Ingredient2:string": 222, + "Taste1:Taste_Enum": "Spicy", + "Taste2:Taste_Enum": "Bitter", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food003", + "Name:string": "C", + "Ingredient1:string": 2, + "Ingredient2:string": 333, + "Taste1:Taste_Enum": "Fresh", + "Taste2:Taste_Enum": "None", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food004", + "Name:string": "D", + "Ingredient1:string": 3, + "Ingredient2:string": 444, + "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-13 16-43-04 by ๋‚จํƒœ๊ฑด.json.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-43-04 by ๋‚จํƒœ๊ฑด.json.meta new file mode 100644 index 000000000..d5a661bc2 --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-43-04 by ๋‚จํƒœ๊ฑด.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: cd40e1a2187a0764e8770d553ae71bd4 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-44-24 by ๋‚จํƒœ๊ฑด.json b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-44-24 by ๋‚จํƒœ๊ฑด.json new file mode 100644 index 000000000..97048707f --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-44-24 by ๋‚จํƒœ๊ฑด.json @@ -0,0 +1,81 @@ +{ + "$๊ฐœ์š”": [ + { + "": "์‹œํŠธ ์ƒ์„ฑ" + } + ], + "Food": [ + { + "Id:string": "์‹๋ณ„ID", + "Name:string": "์ด๋ฆ„", + "Ingredient1:string": "์žฌ๋ฃŒ1", + "Ingredient2:string": "์žฌ๋ฃŒ2", + "Taste1:Taste_Enum": "๋ง›1", + "Taste2:Taste_Enum": "๋ง›2", + "Sprite:Sprite": "Addressable ์ด๋ฏธ์ง€ ์ด๋ฆ„" + }, + { + "Id:string": "Food001", + "Name:string": "ํ–‡๋น›์ˆ˜ํ”„", + "Ingredient1:string": "๊ทน๋ฝ์Œ€", + "Ingredient2:string": "ํ–‡๋น›๋‹น๊ทผ", + "Taste1:Taste_Enum": "Bitter", + "Taste2:Taste_Enum": "Sweet", + "Sprite:Sprite": "Gold" + }, + { + "Id:string": "Food002", + "Name:string": "B", + "Ingredient1:string": 1, + "Ingredient2:string": 8, + "Taste1:Taste_Enum": "Spicy", + "Taste2:Taste_Enum": "Bitter", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food003", + "Name:string": "C", + "Ingredient1:string": 2, + "Ingredient2:string": 6, + "Taste1:Taste_Enum": "Fresh", + "Taste2:Taste_Enum": "None", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food004", + "Name:string": "D", + "Ingredient1:string": 3, + "Ingredient2:string": 7, + "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-13 16-44-24 by ๋‚จํƒœ๊ฑด.json.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-44-24 by ๋‚จํƒœ๊ฑด.json.meta new file mode 100644 index 000000000..a14a95fe3 --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-44-24 by ๋‚จํƒœ๊ฑด.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d2ca60b3390812642a7c5d3f4f2315a5 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-46-54 by ๋‚จํƒœ๊ฑด.json b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-46-54 by ๋‚จํƒœ๊ฑด.json new file mode 100644 index 000000000..379bfe28c --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-46-54 by ๋‚จํƒœ๊ฑด.json @@ -0,0 +1,81 @@ +{ + "$๊ฐœ์š”": [ + { + "": "์‹œํŠธ ์ƒ์„ฑ" + } + ], + "Food": [ + { + "Id:string": "์‹๋ณ„ID", + "Name:string": "์ด๋ฆ„", + "Ingredient1:string": "์žฌ๋ฃŒ1", + "Ingredient2:string": "์žฌ๋ฃŒ2", + "Taste1:Taste_Enum": "๋ง›1", + "Taste2:Taste_Enum": "๋ง›2", + "Sprite:Sprite": "Addressable ์ด๋ฏธ์ง€ ์ด๋ฆ„" + }, + { + "Id:string": "Food001", + "Name:string": "ํ–‡๋น›์ˆ˜ํ”„", + "Ingredient1:string": "๊ทน๋ฝ์Œ€", + "Ingredient2:string": "ํ–‡๋น›๋‹น๊ทผ", + "Taste1:Taste_Enum": "Bitter", + "Taste2:Taste_Enum": "Sweet", + "Sprite:Sprite": "Gold" + }, + { + "Id:string": "Food002", + "Name:string": "B", + "Ingredient1:string": 1, + "Ingredient2:string": 123123, + "Taste1:Taste_Enum": "Spicy", + "Taste2:Taste_Enum": "Bitter", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food003", + "Name:string": "C", + "Ingredient1:string": 2, + "Ingredient2:string": 123123, + "Taste1:Taste_Enum": "Fresh", + "Taste2:Taste_Enum": "None", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food004", + "Name:string": "D", + "Ingredient1:string": 3, + "Ingredient2:string": 123123, + "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-13 16-46-54 by ๋‚จํƒœ๊ฑด.json.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-46-54 by ๋‚จํƒœ๊ฑด.json.meta new file mode 100644 index 000000000..dec33ab30 --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-46-54 by ๋‚จํƒœ๊ฑด.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 310fc35bc8fc3fb4d8428fde47834a19 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-48-29 by ๋‚จํƒœ๊ฑด.json b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-48-29 by ๋‚จํƒœ๊ฑด.json new file mode 100644 index 000000000..689703d4c --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-48-29 by ๋‚จํƒœ๊ฑด.json @@ -0,0 +1,81 @@ +{ + "$๊ฐœ์š”": [ + { + "": "์‹œํŠธ ์ƒ์„ฑ" + } + ], + "Food": [ + { + "Id:string": "์‹๋ณ„ID", + "Name:string": "์ด๋ฆ„", + "Ingredient1:string": "์žฌ๋ฃŒ1", + "Ingredient2:string": "์žฌ๋ฃŒ2", + "Taste1:Taste_Enum": "๋ง›1", + "Taste2:Taste_Enum": "๋ง›2", + "Sprite:Sprite": "Addressable ์ด๋ฏธ์ง€ ์ด๋ฆ„" + }, + { + "Id:string": "Food001", + "Name:string": "ํ–‡๋น›์ˆ˜ํ”„", + "Ingredient1:string": "๊ทน๋ฝ์Œ€", + "Ingredient2:string": "ํ–‡๋น›๋‹น๊ทผ", + "Taste1:Taste_Enum": "Bitter", + "Taste2:Taste_Enum": "Sweet", + "Sprite:Sprite": "Gold" + }, + { + "Id:string": "Food002", + "Name:string": "B", + "Ingredient1:string": 1, + "Ingredient2:string": 1, + "Taste1:Taste_Enum": "Spicy", + "Taste2:Taste_Enum": "Bitter", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food003", + "Name:string": "C", + "Ingredient1:string": 2, + "Ingredient2:string": 1, + "Taste1:Taste_Enum": "Fresh", + "Taste2:Taste_Enum": "None", + "Sprite:Sprite": "" + }, + { + "Id:string": "Food004", + "Name:string": "D", + "Ingredient1:string": 3, + "Ingredient2:string": 1, + "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-13 16-48-29 by ๋‚จํƒœ๊ฑด.json.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-48-29 by ๋‚จํƒœ๊ฑด.json.meta new file mode 100644 index 000000000..7ee530de8 --- /dev/null +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-05-13 16-48-29 by ๋‚จํƒœ๊ฑด.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: e554e55047455884493dac8eadb77222 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/EnumTypes.cs.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/EnumTypes.cs.meta index 9a80f0f6d..4089eddfe 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/EnumTypes.cs.meta +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/EnumTypes.cs.meta @@ -1,2 +1,2 @@ fileFormatVersion: 2 -guid: 2714e362cc5f51346a94b6da1f2a68f8 \ No newline at end of file +guid: ba9b1a4c8af1e73408126a6a97be8423 \ No newline at end of file diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Food.cs.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Food.cs.meta index a7a5b41a3..459943060 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Food.cs.meta +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Food.cs.meta @@ -1,2 +1,2 @@ fileFormatVersion: 2 -guid: 8693b42dca1bad640aad102399faa440 \ No newline at end of file +guid: dce45c629bff82849ae40a08e605ce13 \ No newline at end of file diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/FoodSo.cs.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/FoodSo.cs.meta index 10bb1b583..a15a0b937 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/FoodSo.cs.meta +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/FoodSo.cs.meta @@ -1,2 +1,2 @@ fileFormatVersion: 2 -guid: d9a7e15d3d3df5f4a989d1e2e92682e6 \ No newline at end of file +guid: 80338c211c1fbc44f9fc1827b83ce50f \ 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 index 82a68e291..689703d4c 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/GoogleSheetJson.json +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/GoogleSheetJson.json @@ -27,7 +27,7 @@ "Id:string": "Food002", "Name:string": "B", "Ingredient1:string": 1, - "Ingredient2:string": 4, + "Ingredient2:string": 1, "Taste1:Taste_Enum": "Spicy", "Taste2:Taste_Enum": "Bitter", "Sprite:Sprite": "" @@ -36,7 +36,7 @@ "Id:string": "Food003", "Name:string": "C", "Ingredient1:string": 2, - "Ingredient2:string": 5, + "Ingredient2:string": 1, "Taste1:Taste_Enum": "Fresh", "Taste2:Taste_Enum": "None", "Sprite:Sprite": "" @@ -45,7 +45,7 @@ "Id:string": "Food004", "Name:string": "D", "Ingredient1:string": 3, - "Ingredient2:string": 6, + "Ingredient2:string": 1, "Taste1:Taste_Enum": "Sour", "Taste2:Taste_Enum": "Salty", "Sprite:Sprite": "" diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/GoogleSheetJson.json.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/GoogleSheetJson.json.meta index b4458fa5a..afcd1742e 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/GoogleSheetJson.json.meta +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/GoogleSheetJson.json.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 70eea4fed7f314a4492ac4a97380d4b1 +guid: 76740917292abb542b69fe09178e5bfa TextScriptImporter: externalObjects: {} userData: diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs.meta index 70e0db87e..957a3ec05 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs.meta +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 593c063d566ca254c88f17d5d7ed1b36 +guid: 53d86386d682bb445ba3b231e83086c6 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs/GoogleSheetChangeLog.asset b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs/GoogleSheetChangeLog.asset index b528360a8..83f3654e1 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs/GoogleSheetChangeLog.asset +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs/GoogleSheetChangeLog.asset @@ -14,7 +14,7 @@ MonoBehaviour: m_EditorClassIdentifier: _logs: - Editor: "\uB0A8\uD0DC\uAC74" - Timestamp: 2025-05-13 15:02:17 + Timestamp: 2025-05-13 16:28:35 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 \"Ingredient1:string\": \"\uC7AC\uB8CC1\",\n @@ -40,4 +40,251 @@ MonoBehaviour: \"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-13 16:30:24 + 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 \"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 \"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 \"Ingredient1:string\": 1,\n \"Ingredient2:string\": + 11,\n \"Taste1:Taste_Enum\": \"Spicy\",\n \"Taste2:Taste_Enum\": + \"Bitter\",\n \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": + \"Food003\",\n \"Name:string\": \"C\",\n \"Ingredient1:string\": + 2,\n \"Ingredient2:string\": 22,\n \"Taste1:Taste_Enum\": \"Fresh\",\n + \"Taste2:Taste_Enum\": \"None\",\n \"Sprite:Sprite\": \"\"\n },\n + {\n \"Id:string\": \"Food004\",\n \"Name:string\": \"D\",\n + \"Ingredient1:string\": 3,\n \"Ingredient2:string\": 33,\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-13 16:37:27 + 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 \"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 \"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 \"Ingredient1:string\": 1,\n \"Ingredient2:string\": + 7,\n \"Taste1:Taste_Enum\": \"Spicy\",\n \"Taste2:Taste_Enum\": \"Bitter\",\n + \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": \"Food003\",\n + \"Name:string\": \"C\",\n \"Ingredient1:string\": 2,\n \"Ingredient2:string\": + 7,\n \"Taste1:Taste_Enum\": \"Fresh\",\n \"Taste2:Taste_Enum\": \"None\",\n + \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": \"Food004\",\n + \"Name:string\": \"D\",\n \"Ingredient1:string\": 3,\n \"Ingredient2:string\": + 7,\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-13 16:39:30 + 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 \"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 \"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 \"Ingredient1:string\": 1,\n \"Ingredient2:string\": + 8,\n \"Taste1:Taste_Enum\": \"Spicy\",\n \"Taste2:Taste_Enum\": \"Bitter\",\n + \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": \"Food003\",\n + \"Name:string\": \"C\",\n \"Ingredient1:string\": 2,\n \"Ingredient2:string\": + 8,\n \"Taste1:Taste_Enum\": \"Fresh\",\n \"Taste2:Taste_Enum\": \"None\",\n + \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": \"Food004\",\n + \"Name:string\": \"D\",\n \"Ingredient1:string\": 3,\n \"Ingredient2:string\": + 8,\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-13 16:40:46 + 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 \"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 \"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 \"Ingredient1:string\": 1,\n \"Ingredient2:string\": + 9,\n \"Taste1:Taste_Enum\": \"Spicy\",\n \"Taste2:Taste_Enum\": \"Bitter\",\n + \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": \"Food003\",\n + \"Name:string\": \"C\",\n \"Ingredient1:string\": 2,\n \"Ingredient2:string\": + 9,\n \"Taste1:Taste_Enum\": \"Fresh\",\n \"Taste2:Taste_Enum\": \"None\",\n + \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": \"Food004\",\n + \"Name:string\": \"D\",\n \"Ingredient1:string\": 3,\n \"Ingredient2:string\": + 9,\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-13 16:41:55 + 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 \"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 \"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 \"Ingredient1:string\": 1,\n \"Ingredient2:string\": + 333,\n \"Taste1:Taste_Enum\": \"Spicy\",\n \"Taste2:Taste_Enum\": + \"Bitter\",\n \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": + \"Food003\",\n \"Name:string\": \"C\",\n \"Ingredient1:string\": + 2,\n \"Ingredient2:string\": 444,\n \"Taste1:Taste_Enum\": \"Fresh\",\n + \"Taste2:Taste_Enum\": \"None\",\n \"Sprite:Sprite\": \"\"\n },\n + {\n \"Id:string\": \"Food004\",\n \"Name:string\": \"D\",\n + \"Ingredient1:string\": 3,\n \"Ingredient2:string\": 555,\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-13 16:43:04 + 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 \"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 \"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 \"Ingredient1:string\": 1,\n \"Ingredient2:string\": + 222,\n \"Taste1:Taste_Enum\": \"Spicy\",\n \"Taste2:Taste_Enum\": + \"Bitter\",\n \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": + \"Food003\",\n \"Name:string\": \"C\",\n \"Ingredient1:string\": + 2,\n \"Ingredient2:string\": 333,\n \"Taste1:Taste_Enum\": \"Fresh\",\n + \"Taste2:Taste_Enum\": \"None\",\n \"Sprite:Sprite\": \"\"\n },\n + {\n \"Id:string\": \"Food004\",\n \"Name:string\": \"D\",\n + \"Ingredient1:string\": 3,\n \"Ingredient2:string\": 444,\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-13 16:44:24 + 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 \"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 \"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 \"Ingredient1:string\": 1,\n \"Ingredient2:string\": + 8,\n \"Taste1:Taste_Enum\": \"Spicy\",\n \"Taste2:Taste_Enum\": \"Bitter\",\n + \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": \"Food003\",\n + \"Name:string\": \"C\",\n \"Ingredient1:string\": 2,\n \"Ingredient2:string\": + 6,\n \"Taste1:Taste_Enum\": \"Fresh\",\n \"Taste2:Taste_Enum\": \"None\",\n + \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": \"Food004\",\n + \"Name:string\": \"D\",\n \"Ingredient1:string\": 3,\n \"Ingredient2:string\": + 7,\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-13 16:46:54 + 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 \"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 \"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 \"Ingredient1:string\": 1,\n \"Ingredient2:string\": + 123123,\n \"Taste1:Taste_Enum\": \"Spicy\",\n \"Taste2:Taste_Enum\": + \"Bitter\",\n \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": + \"Food003\",\n \"Name:string\": \"C\",\n \"Ingredient1:string\": + 2,\n \"Ingredient2:string\": 123123,\n \"Taste1:Taste_Enum\": \"Fresh\",\n + \"Taste2:Taste_Enum\": \"None\",\n \"Sprite:Sprite\": \"\"\n },\n + {\n \"Id:string\": \"Food004\",\n \"Name:string\": \"D\",\n + \"Ingredient1:string\": 3,\n \"Ingredient2:string\": 123123,\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-13 16:48:29 + 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 \"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 \"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 \"Ingredient1:string\": 1,\n \"Ingredient2:string\": + 1,\n \"Taste1:Taste_Enum\": \"Spicy\",\n \"Taste2:Taste_Enum\": \"Bitter\",\n + \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": \"Food003\",\n + \"Name:string\": \"C\",\n \"Ingredient1:string\": 2,\n \"Ingredient2:string\": + 1,\n \"Taste1:Taste_Enum\": \"Fresh\",\n \"Taste2:Taste_Enum\": \"None\",\n + \"Sprite:Sprite\": \"\"\n },\n {\n \"Id:string\": \"Food004\",\n + \"Name:string\": \"D\",\n \"Ingredient1:string\": 3,\n \"Ingredient2:string\": + 1,\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}" 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 index 2870b3f99..b22ddbec6 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs/GoogleSheetChangeLog.asset.meta +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Logs/GoogleSheetChangeLog.asset.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: ddcf1da52a823a242be56998cd210903 +guid: 0a3d0fe4e3a059c4eaaebf49f90ca899 NativeFormatImporter: externalObjects: {} mainObjectFileID: 11400000 diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Monster.cs.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Monster.cs.meta index fab6bcbe3..01fdc163f 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Monster.cs.meta +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/Monster.cs.meta @@ -1,2 +1,2 @@ fileFormatVersion: 2 -guid: 26a6429de94146a43826ee8860767011 \ No newline at end of file +guid: b11551a9f69d3d04aac796eeabead5bb \ No newline at end of file diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/MonsterSo.cs.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/MonsterSo.cs.meta index 24b08538c..d24695255 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/MonsterSo.cs.meta +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/MonsterSo.cs.meta @@ -1,2 +1,2 @@ fileFormatVersion: 2 -guid: 8a377050a15fa114cb0d0bd8d0f6bafc \ No newline at end of file +guid: e06f0bd1faff18646b7597ddcf787856 \ 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 index f217ad897..f71fc1e43 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So.meta +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: d30016576075fac4e84ec728aaeb2806 +guid: 78153c2368c8af440ae01521a5ed015d folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/FoodSo.asset b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/FoodSo.asset index 8f41dc457..18afdf705 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/FoodSo.asset +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/FoodSo.asset @@ -9,7 +9,7 @@ MonoBehaviour: m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d9a7e15d3d3df5f4a989d1e2e92682e6, type: 3} + m_Script: {fileID: 11500000, guid: 80338c211c1fbc44f9fc1827b83ce50f, type: 3} m_Name: FoodSo m_EditorClassIdentifier: FoodList: @@ -19,25 +19,25 @@ MonoBehaviour: Ingredient2: "\uD587\uBE5B\uB2F9\uADFC" Taste1: 1 Taste2: 2 - Sprite: {fileID: 21300000, guid: e15933f76da90e742866563b5cd9e45f, type: 3} + Sprite: {fileID: 0} - Id: Food002 Name: B Ingredient1: 1 - Ingredient2: 4 + Ingredient2: 11 Taste1: 3 Taste2: 1 Sprite: {fileID: 0} - Id: Food003 Name: C Ingredient1: 2 - Ingredient2: 5 + Ingredient2: 22 Taste1: 4 Taste2: 0 Sprite: {fileID: 0} - Id: Food004 Name: D Ingredient1: 3 - Ingredient2: 6 + Ingredient2: 33 Taste1: 5 Taste2: 6 Sprite: {fileID: 0} diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/FoodSo.asset.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/FoodSo.asset.meta index 6798559a1..5c365d5b9 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/FoodSo.asset.meta +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/FoodSo.asset.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 8f6a170dcd0a88d47939e70db303af14 +guid: ccb6f7909b5ffd94499bbeaef45086be NativeFormatImporter: externalObjects: {} mainObjectFileID: 11400000 diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/MonsterSo.asset b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/MonsterSo.asset index 4b343bd5f..4638ecb41 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/MonsterSo.asset +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/MonsterSo.asset @@ -9,7 +9,7 @@ MonoBehaviour: m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 8a377050a15fa114cb0d0bd8d0f6bafc, type: 3} + m_Script: {fileID: 11500000, guid: e06f0bd1faff18646b7597ddcf787856, type: 3} m_Name: MonsterSo m_EditorClassIdentifier: MonsterList: diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/MonsterSo.asset.meta b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/MonsterSo.asset.meta index d3ed05dd4..1db1a7603 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/MonsterSo.asset.meta +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated/So/MonsterSo.asset.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 2a1b86f3356293441bcfca705fff3b85 +guid: 1542a7a4161005c4baf6262cdf5f4ac7 NativeFormatImporter: externalObjects: {} mainObjectFileID: 11400000 diff --git a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/Core/GoogldSheetManager.cs b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/Core/GoogldSheetManager.cs index 7fa26f256..fa5a3e1a1 100644 --- a/Assets/_Datas/02.Scripts/GenerateGoogleSheet/Core/GoogldSheetManager.cs +++ b/Assets/_Datas/02.Scripts/GenerateGoogleSheet/Core/GoogldSheetManager.cs @@ -54,6 +54,7 @@ public class GoogleSheetManager : Singleton private string[] _availSheetArray; private string _json; + private bool _isCreatingSo; [SerializeField, ReadOnly] private bool _refreshTrigger; @@ -113,7 +114,16 @@ private async void FetchGoogleSheet() GoogleSheetDiffViewer.ShowWindow(diffs); bool isJsonSaved = SaveFileOrSkip(JsonFullPath, _json); - GenerateClassFilesPerSheet(_json); + + try + { + GenerateClassFilesPerSheet(_json); + } + catch (Exception e) + { + Debug.LogError($"[GoogleSheetManager] ํด๋ž˜์Šค ํŒŒ์ผ ์ƒ์„ฑ ์ค‘ ์˜ค๋ฅ˜: {e.Message}"); + return; + } if (isJsonSaved) { @@ -219,7 +229,7 @@ private void CompareWithSelectedVersion() [BoxGroup("๋ฒ„์ „ ๋ณต๊ตฌ")] [Button("์„ ํƒํ•œ ๋ฒ„์ „์œผ๋กœ ๋ณต๊ตฌ")] - private void RestoreSelectedVersion() + private async void RestoreSelectedVersion() { var log = AssetDatabase.LoadAssetAtPath(ChangeLogAssetPath); if (log == null || _restoreIndex < 0 || _restoreIndex >= log.Logs.Count) @@ -231,21 +241,19 @@ private void RestoreSelectedVersion() string restoreJson = log.Logs[_restoreIndex].JsonSnapshot; string currentJson = File.Exists(JsonFullPath) ? File.ReadAllText(JsonFullPath) : ""; - List diffs = GoogleSheetFetchHelper.CompareJsonDiff(currentJson, restoreJson); - + var diffs = GoogleSheetFetchHelper.CompareJsonDiff(currentJson, restoreJson); if (diffs.Count > 0) - GoogleSheetDiffViewer.ShowWindow(diffs); // ๋ณ€๊ฒฝ ์ „ โ†’ ๋ณ€๊ฒฝ ํ›„ + GoogleSheetDiffViewer.ShowWindow(diffs); - // ๋ณต์› ์ฒ˜๋ฆฌ _json = restoreJson; - SaveFileOrSkip(JsonFullPath, _json); - CreateGoogleSheetSo(); - _currentVersion = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); + await CreateGoogleSheetSoAsync(); + _currentVersion = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); Debug.Log($"[{log.Logs[_restoreIndex].Editor}]์˜ ๋ฒ„์ „์œผ๋กœ ๋ณต์› ์™„๋ฃŒ"); } + /// /// ๋ฒ„์ „ ๋กœ๊ทธ ๋“œ๋กญ๋‹ค์šด ํ•จ์ˆ˜ /// @@ -509,9 +517,70 @@ private string GetCSharpType(JTokenType jsonType) } } - private bool CreateGoogleSheetSo() + public async Task CreateGoogleSheetSoAsync() + { + await Addressables.InitializeAsync().Task; + + if (_isCreatingSo) + { + Debug.LogWarning("[GoogleSheetManager] ์ด๋ฏธ SO ์ƒ์„ฑ ์ค‘์ž…๋‹ˆ๋‹ค. ์ค‘๋ณต ํ˜ธ์ถœ ๋ฐฉ์ง€"); + return false; + } + + _isCreatingSo = true; + bool result = false; + + try + { + var checkHandle = Addressables.CheckForCatalogUpdates(); + await checkHandle.Task; + + bool succeeded = checkHandle.Status == AsyncOperationStatus.Succeeded; + List catalogsToUpdate = succeeded ? new List(checkHandle.Result) : null; + + Addressables.Release(checkHandle); // โ›” ์ดํ›„ checkHandle ์ ‘๊ทผ ๊ธˆ์ง€! + + if (catalogsToUpdate?.Count > 0) + { + var updateHandle = Addressables.UpdateCatalogs(catalogsToUpdate); + await updateHandle.Task; + + if (updateHandle.Status == AsyncOperationStatus.Succeeded) + Debug.Log("์นดํƒˆ๋กœ๊ทธ ์—…๋ฐ์ดํŠธ ์„ฑ๊ณต"); + else + Debug.LogError("์นดํƒˆ๋กœ๊ทธ ์—…๋ฐ์ดํŠธ ์‹คํŒจ"); + + Addressables.Release(updateHandle); + } + else + { + Debug.Log("[GoogleSheetManager] Addressables ์นดํƒˆ๋กœ๊ทธ๋Š” ์ตœ์‹  ์ƒํƒœ์ž…๋‹ˆ๋‹ค."); + } + + result = await InternalCreateGoogleSheetSoAsync(); + } + catch (Exception e) + { + Debug.LogError($"[GoogleSheetManager] SO ์ƒ์„ฑ ์ค‘ ์˜ˆ์™ธ ๋ฐœ์ƒ: {e}"); + } + finally + { + _isCreatingSo = false; + } + + return result; + } + + public async Task InternalCreateGoogleSheetSoAsync() { JObject jsonObject = JObject.Parse(_json); + + if (string.IsNullOrEmpty(_json)) + { + Debug.LogError("[GoogleSheetManager] JSON ๋ฐ์ดํ„ฐ๊ฐ€ ๋น„์–ด์žˆ์–ด SO ์ƒ์„ฑ์„ ์ค‘๋‹จํ•ฉ๋‹ˆ๋‹ค."); + return false; + } + bool allSuccess = true; foreach (var sheetPair in jsonObject) @@ -539,14 +608,25 @@ private bool CreateGoogleSheetSo() string soPath = $"{soDirectory}/{sheetName}So.asset"; ScriptableObject soInstance = AssetDatabase.LoadAssetAtPath(soPath); + + // ๐Ÿ’ก ์ž˜๋ชป๋œ asset์ด๋ฉด ์‚ญ์ œ ํ›„ ์ƒˆ๋กœ ์ƒ์„ฑ if (soInstance == null) { + if (File.Exists(soPath)) + { + Debug.LogWarning($"[GoogleSheetManager] ์ž˜๋ชป๋œ SO ํŒŒ์ผ ์ œ๊ฑฐ: {soPath}"); + AssetDatabase.DeleteAsset(soPath); + } + soInstance = ScriptableObject.CreateInstance(soType); AssetDatabase.CreateAsset(soInstance, soPath); + AssetDatabase.SaveAssets(); + AssetDatabase.ImportAsset(soPath, ImportAssetOptions.ForceSynchronousImport); + await Task.Delay(100); // meta ํ™•์ • ์‹œ๊ฐ„ ํ™•๋ณด + AssetDatabase.Refresh(); } - GoogleSheetAddressableAutoSetup.AutoRegisterSo(soPath); - + // ๐Ÿง  Sprite๋‚˜ Enum ๊ฐ’์„ ๋ฐ˜์˜ํ•œ List ์ƒ์„ฑ IList list = (IList)Activator.CreateInstance(typeof(List<>).MakeGenericType(dataType)); var dataArray = (JArray)sheetPair.Value; @@ -584,41 +664,33 @@ private bool CreateGoogleSheetSo() try { - object value; + object value = null; - // โœ… Sprite ์ฒ˜๋ฆฌ + // โœ… Sprite ์ฒ˜๋ฆฌ (์ฃผ์†Œ๋กœ๋ถ€ํ„ฐ ๋น„๋™๊ธฐ ๋กœ๋“œ) if (explicitType == "Sprite" && field.FieldType == typeof(Sprite)) { - string key = prop.Value.ToString().Trim(); - if (string.IsNullOrEmpty(key)) + string spriteKey = prop.Value.ToString().Trim(); + if (string.IsNullOrEmpty(spriteKey)) + continue; + + if (!AddressableManager.HasLabel(spriteKey, "GoogleSheetSprite")) { - Debug.Log($"[GoogleSheetManager] Sprite ํ‚ค๊ฐ€ ๋น„์–ด ์žˆ์–ด {fieldName} ๊ฑด๋„ˆ๋œ€"); + Debug.LogWarning($"[GoogleSheetManager] Sprite ๋ผ๋ฒจ ์—†์Œ: {spriteKey}"); continue; } -#if UNITY_EDITOR - if (!AddressableManager.HasLabel(key, "GoogleSheetSprite")) + var handle = Addressables.LoadAssetAsync(spriteKey); + await handle.Task; + + if (handle.Status != AsyncOperationStatus.Succeeded || handle.Result == null) { - Debug.LogWarning($"[GoogleSheetManager] '{key}'๋Š” GoogleSheetSprite ๋ผ๋ฒจ ์—†์Œ"); + Debug.LogWarning($"[GoogleSheetManager] Sprite ๋กœ๋“œ ์‹คํŒจ ๋˜๋Š” null: {spriteKey}"); continue; } - var handle = Addressables.LoadAssetAsync(key); - var sprite = handle.WaitForCompletion(); - - Debug.Log($"[GoogleSheetManager] '{key}' ๋กœ๋”ฉ ๊ฒฐ๊ณผ: {sprite} / ์ƒํƒœ: {handle.Status}"); - - if (handle.Status == AsyncOperationStatus.Succeeded && sprite != null) - { - field.SetValue(dataInstance, sprite); - Debug.Log($"[GoogleSheetManager] {fieldName} <- {sprite.name} ๋ฐ˜์˜๋จ"); - } - else - { - Debug.LogWarning($"[GoogleSheetManager] Sprite ๋กœ๋“œ ์‹คํŒจ ๋˜๋Š” null: {key}"); - } -#endif - continue; + value = handle.Result; + field.SetValue(dataInstance, value); + continue; // ์ดํ›„ ๋ณ€ํ™˜ ์Šคํ‚ต } // โœ… Enum ์ฒ˜๋ฆฌ @@ -655,6 +727,7 @@ private bool CreateGoogleSheetSo() list.Add(dataInstance); } + // โœ… ๋ฆฌ์ŠคํŠธ ํ•„๋“œ์— ๊ฐ’ ์„ค์ • FieldInfo listField = soType.GetField($"{sheetName}List", BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic); @@ -671,9 +744,19 @@ private bool CreateGoogleSheetSo() AssetDatabase.SaveAssets(); AssetDatabase.Refresh(); + + // โœ… Addressables ๋“ฑ๋ก์€ ๋งˆ์ง€๋ง‰์—, ์œ ํšจํ•œ ๊ฒฝ์šฐ๋งŒ + if (AssetDatabase.LoadAssetAtPath(soPath) != null) + { + GoogleSheetAddressableAutoSetup.AutoRegisterSo(soPath); + } + else + { + Debug.LogWarning($"[GoogleSheetManager] Addressables ๋“ฑ๋ก ์ƒ๋žต: {soPath} ๋ถˆ์™„์ „"); + } } - Debug.Log("โœ… ์‹œํŠธ๋ณ„ ScriptableObject ์ƒ์„ฑ ๋ฐ ๋ฐ์ดํ„ฐ ๋ฐ˜์˜ ์™„๋ฃŒ"); + Debug.Log("โœ… [CreateGoogleSheetSoAsync] ์‹œํŠธ๋ณ„ ScriptableObject ์ƒ์„ฑ ๋ฐ ๋ฐ˜์˜ ์™„๋ฃŒ"); return allSuccess; } @@ -694,29 +777,28 @@ private string NormalizeEnumKey(string input) private void OnValidate() { - if (_refreshTrigger && !_alreadyCreatedSo) + if (_refreshTrigger && !_alreadyCreatedSo && EditorPrefs.GetBool("GoogleSheetManager_ShouldCreateSO")) { - if (string.IsNullOrEmpty(_json)) - { - Debug.LogWarning("[GoogleSheetManager] _json์ด null์ด๋ฏ€๋กœ SO ์ƒ์„ฑ์„ ๊ฑด๋„ˆ๋œ๋‹ˆ๋‹ค."); - return; - } - _refreshTrigger = false; _alreadyCreatedSo = true; - DelayedSoCreation(); + + EditorPrefs.SetBool("GoogleSheetManager_ShouldCreateSO", false); // ์žฌ์‹คํ–‰ ๋ฐฉ์ง€ + + EditorApplication.delayCall += () => + { + _ = DelayAndCreateSo(); // ๋ฌด์‹œ ๊ฐ€๋Šฅํ•œ ๋น„๋™๊ธฐ + }; } } - private void DelayedSoCreation() + private async Task DelayAndCreateSo() { - if (CreateGoogleSheetSo()) + await Task.Delay(300); // 300ms ์ง€์—ฐ (๋„ˆ๋ฌด ์งง์œผ๋ฉด ๋ฐ˜์˜ ์•ˆ๋จ) + + if (!string.IsNullOrEmpty(_json)) { - Debug.Log("Fetch done. SO ์—…๋ฐ์ดํŠธ ์™„๋ฃŒ"); - } - else - { - Debug.LogWarning("[GoogleSheetManager] SO ์ƒ์„ฑ ์‹คํŒจ. ์ˆ˜๋™์œผ๋กœ Fetch๋ฅผ ๋‹ค์‹œ ์‹œ๋„ํ•˜์„ธ์š”."); + bool success = await CreateGoogleSheetSoAsync(); + Debug.Log(success ? "Fetch done. SO ์—…๋ฐ์ดํŠธ ์™„๋ฃŒ" : "SO ์ƒ์„ฑ ์‹คํŒจ. ์ˆ˜๋™์œผ๋กœ Fetch๋ฅผ ๋‹ค์‹œ ์‹œ๋„ํ•˜์„ธ์š”."); } } @@ -744,17 +826,19 @@ private IEnumerator ReloadRoutine() if (!string.IsNullOrEmpty(_json)) { - CreateGoogleSheetSo(); + var soTask = CreateGoogleSheetSoAsync(); + yield return new WaitUntil(() => soTask.IsCompleted); + Debug.Log("๋Ÿฐํƒ€์ž„ ๋ฐ์ดํ„ฐ ์žฌ์ ์šฉ ์™„๋ฃŒ"); } } - public void CreateSoAfterScriptReload() + public async void CreateSoAfterScriptReload() { if (_json != null) { Debug.Log("[GoogleSheetManager] Script Reload ์ดํ›„ SO ์ƒ์„ฑ ์‹คํ–‰"); - CreateGoogleSheetSo(); + await CreateGoogleSheetSoAsync(); } } #endif