구글 시트 기능 수정
This commit is contained in:
parent
38bbe9b697
commit
ea735e704c
@ -14,7 +14,19 @@ MonoBehaviour:
|
|||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
m_GroupName: GoogleSheetSo_Group
|
m_GroupName: GoogleSheetSo_Group
|
||||||
m_GUID: 7fe0c33d351391a45a0ea3c93ecef42e
|
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_ReadOnly: 0
|
||||||
m_Settings: {fileID: 11400000, guid: d12ffbb6f886d48418efb0b6d15ccb88, type: 2}
|
m_Settings: {fileID: 11400000, guid: d12ffbb6f886d48418efb0b6d15ccb88, type: 2}
|
||||||
m_SchemaSet:
|
m_SchemaSet:
|
||||||
|
8
Assets/Samples.meta
Normal file
8
Assets/Samples.meta
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 9004b957a3a41ed4f97b66f514b1ba5d
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
8
Assets/Samples/Addressables.meta
Normal file
8
Assets/Samples/Addressables.meta
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 1ee7324fdbddf6744b29c194782f8fdd
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
8
Assets/Samples/Addressables/2.4.6.meta
Normal file
8
Assets/Samples/Addressables/2.4.6.meta
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 16e035702ce4acc4aa2eda3b8b554628
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 76ed51abe1be4be45ac2a85ea28646e6
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
@ -0,0 +1,27 @@
|
|||||||
|
using UnityEngine.AddressableAssets;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// A utility class for various Addressables functionality
|
||||||
|
/// </summary>
|
||||||
|
public static class AddressablesUtility
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Get the address of a given AssetReference.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="reference">The AssetReference you want to find the address of.</param>
|
||||||
|
/// <returns>The address of a given AssetReference.</returns>
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 2753974709f92de4fb4628ba24c77214
|
@ -290,10 +290,10 @@ MonoBehaviour:
|
|||||||
_googleSheetUrl: https://script.google.com/macros/s/AKfycbw8TRSl_OuY2S-RX0yvOJi1SqNqoflG0R3pWxk9GC9u_wvGQeuABZc0VH7YJ5lMrAl4/exec
|
_googleSheetUrl: https://script.google.com/macros/s/AKfycbw8TRSl_OuY2S-RX0yvOJi1SqNqoflG0R3pWxk9GC9u_wvGQeuABZc0VH7YJ5lMrAl4/exec
|
||||||
_availSheets: Food/Monster
|
_availSheets: Food/Monster
|
||||||
_generateFolderPath: /_Datas/02.Scripts/GenerateGoogleSheet/AutoCreated
|
_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
|
_restoreIndex: 0
|
||||||
_editorName:
|
_editorName:
|
||||||
_refreshTrigger: 1
|
_refreshTrigger: 0
|
||||||
--- !u!4 &383092898
|
--- !u!4 &383092898
|
||||||
Transform:
|
Transform:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: ff9891595d177594c801de6870920703
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: c16b1e3d70ae9f5448d679c76959f748
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
@ -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
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 6f9da5eb0bf290c4d8efc2cd876eb004
|
||||||
|
TextScriptImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
@ -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
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 745f95162f70f8749a0653af54dfc2a1
|
||||||
|
TextScriptImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
@ -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
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 5a03fd979fde4c34491e1be90d5011aa
|
||||||
|
TextScriptImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
@ -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
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 74bab0ebe89de4a43bb5ec3337018a64
|
||||||
|
TextScriptImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
@ -0,0 +1,22 @@
|
|||||||
|
// <auto-generated>
|
||||||
|
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,
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 0305cac2c4248c647b1dfd15b2df4b9b
|
@ -0,0 +1,39 @@
|
|||||||
|
// <auto-generated>
|
||||||
|
using System;
|
||||||
|
using UnityEngine;
|
||||||
|
[Serializable]
|
||||||
|
public class Food
|
||||||
|
{
|
||||||
|
/// <summary>식별ID</summary>
|
||||||
|
[Tooltip("식별ID")]
|
||||||
|
public string Id;
|
||||||
|
|
||||||
|
/// <summary>이름</summary>
|
||||||
|
[Tooltip("이름")]
|
||||||
|
public string Name;
|
||||||
|
|
||||||
|
/// <summary>요리도구</summary>
|
||||||
|
[Tooltip("요리도구")]
|
||||||
|
public Cookware Cookware;
|
||||||
|
|
||||||
|
/// <summary>재료1</summary>
|
||||||
|
[Tooltip("재료1")]
|
||||||
|
public string Ingredient1;
|
||||||
|
|
||||||
|
/// <summary>재료2</summary>
|
||||||
|
[Tooltip("재료2")]
|
||||||
|
public string Ingredient2;
|
||||||
|
|
||||||
|
/// <summary>맛1</summary>
|
||||||
|
[Tooltip("맛1")]
|
||||||
|
public Taste Taste1;
|
||||||
|
|
||||||
|
/// <summary>맛2</summary>
|
||||||
|
[Tooltip("맛2")]
|
||||||
|
public Taste Taste2;
|
||||||
|
|
||||||
|
/// <summary>Addressable 이미지 이름</summary>
|
||||||
|
[Tooltip("Addressable 이미지 이름")]
|
||||||
|
public Sprite Sprite;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: bc52e6123ac9d4e4dba393cf959823f2
|
@ -0,0 +1,9 @@
|
|||||||
|
// <auto-generated> File: FoodSo.cs
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
[CreateAssetMenu(fileName = "FoodSo", menuName = "GoogleSheet/FoodSo")]
|
||||||
|
public class FoodSo : ScriptableObject
|
||||||
|
{
|
||||||
|
public List<Food> FoodList;
|
||||||
|
}
|
@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: ffda527566a5cd9469dd6a7f2cd953bb
|
@ -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
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: d3673b70625a93f42bc4a69f80841068
|
||||||
|
TextScriptImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: e74bfad8d2ebfd54582b743528289c6d
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
@ -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
|
@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: c2d9c50ebe901154898d341b0f4d5fc7
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 11400000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
@ -0,0 +1,19 @@
|
|||||||
|
// <auto-generated>
|
||||||
|
using System;
|
||||||
|
using UnityEngine;
|
||||||
|
[Serializable]
|
||||||
|
public class Monster
|
||||||
|
{
|
||||||
|
/// <summary>식별번호</summary>
|
||||||
|
[Tooltip("식별번호")]
|
||||||
|
public string Id;
|
||||||
|
|
||||||
|
/// <summary>이름</summary>
|
||||||
|
[Tooltip("이름")]
|
||||||
|
public string Name;
|
||||||
|
|
||||||
|
/// <summary>테스트1</summary>
|
||||||
|
[Tooltip("테스트1")]
|
||||||
|
public int T1;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 3f5317d10c3a45e4093c32d9b1d436bf
|
@ -0,0 +1,9 @@
|
|||||||
|
// <auto-generated> File: MonsterSo.cs
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
[CreateAssetMenu(fileName = "MonsterSo", menuName = "GoogleSheet/MonsterSo")]
|
||||||
|
public class MonsterSo : ScriptableObject
|
||||||
|
{
|
||||||
|
public List<Monster> MonsterList;
|
||||||
|
}
|
@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: cb106eb1727eb104298694c0e0de12f2
|
@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 84c488a1a40c90140ae7d4b6416411b7
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
@ -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}
|
@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: b0149444f80f2a443a2d79a08fa2650e
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 11400000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
@ -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
|
@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 5fcfe5933281a534986204df8c5453fd
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 11400000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
@ -126,7 +126,7 @@ private async Task FetchGoogleSheet()
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isJsonSaved)
|
if (diffs.Count > 0 || isJsonSaved)
|
||||||
{
|
{
|
||||||
_refreshTrigger = true;
|
_refreshTrigger = true;
|
||||||
SaveChangeLog(_json);
|
SaveChangeLog(_json);
|
||||||
@ -541,6 +541,14 @@ private async Task<bool> CreateGoogleSheetSoAsync()
|
|||||||
_isCreatingSo = false;
|
_isCreatingSo = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
if (result) // 성공적으로 SO 생성된 경우에만 빌드 수행
|
||||||
|
{
|
||||||
|
Debug.Log("[GoogleSheetManager] Addressables BuildPlayerContent 실행");
|
||||||
|
UnityEditor.AddressableAssets.Settings.AddressableAssetSettings.BuildPlayerContent();
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -703,6 +711,12 @@ private async Task<bool> InternalCreateGoogleSheetSoAsync()
|
|||||||
|
|
||||||
if (listField != null)
|
if (listField != null)
|
||||||
{
|
{
|
||||||
|
object existingListObj = listField.GetValue(soInstance);
|
||||||
|
if (existingListObj is IList existingList)
|
||||||
|
{
|
||||||
|
existingList.Clear(); // ✅ 기존 리스트를 완전히 비움
|
||||||
|
}
|
||||||
|
|
||||||
listField.SetValue(soInstance, list);
|
listField.SetValue(soInstance, list);
|
||||||
EditorUtility.SetDirty(soInstance);
|
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()
|
public async Task CreateSoAfterScriptReload()
|
||||||
{
|
{
|
||||||
if (_json != null)
|
if (_json != null)
|
||||||
|
Loading…
Reference in New Issue
Block a user