diff --git a/Assets/_DDD/_Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-08-28 12-54-27 by 남태건.json b/Assets/_DDD/_Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-08-28 12-54-27 by 남태건.json new file mode 100644 index 000000000..dac8797c0 --- /dev/null +++ b/Assets/_DDD/_Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-08-28 12-54-27 by 남태건.json @@ -0,0 +1,1759 @@ +{ + "$개요": [ + { + "": "Sweet" + }, + { + "": "Sour" + }, + { + "": "Bitter" + }, + { + "": "Salty" + }, + { + "": "SuperHot" + }, + { + "": "Savory" + }, + { + "": "Mild" + }, + { + "": "Warm" + }, + { + "": "Addictive" + }, + { + "": "Fish" + }, + { + "": "Vegetable" + }, + { + "": "Meat" + }, + { + "": "" + }, + { + "": "Soda" + }, + { + "": "MiddleDegree" + }, + { + "": "LowDegree" + }, + { + "": "NoneDegree" + }, + { + "": "WoodFlavor" + }, + { + "": "FruitFlavor" + } + ], + "Test": [ + { + "Id:string": "식별번호", + "CustomerLimitCount": "손님 최대 수", + "Customers:string": "등장 손님", + "Test": 2352, + "Tests": "" + }, + { + "Id:string": "customer_pool_001", + "CustomerLimitCount": 4, + "Customers:string": "customer_001", + "Test": 0, + "Tests": "테스트, 테스트2" + }, + { + "Id:string": "customer_pool_002", + "CustomerLimitCount": 7, + "Customers:string": "customer_001 | customer_002", + "Test": 3, + "Tests": "1 , 2" + }, + { + "Id:string": "customer_pool_003", + "CustomerLimitCount": 9, + "Customers:string": "customer_001 | customer_002 | customer_003", + "Test": 2, + "Tests": "5, 23,253" + }, + { + "Id:string": "customer_pool_004", + "CustomerLimitCount": 3, + "Customers:string": "customer_001", + "Test": "", + "Tests": "" + }, + { + "Id:string": "customer_pool_005", + "CustomerLimitCount": 3, + "Customers:string": "customer_001", + "Test": "", + "Tests": 435 + }, + { + "Id:string": "customer_pool_006", + "CustomerLimitCount": 3, + "Customers:string": "customer_001", + "Test": "", + "Tests": "" + }, + { + "Id:string": "special_customer_pool_001", + "CustomerLimitCount": 1, + "Customers:string": "special_customer_001", + "Test": "", + "Tests": "111|234" + } + ], + "Test_view": [ + { + "Id:string": "식별번호", + "CustomerLimitCount": "손님 최대 수", + "Customers1": "등장 손님1", + "Customers2": "등장 손님2", + "Customers3": "등장 손님3", + "Customers4": "등장 손님4", + "Customers5": "등장 손님5", + "Customers6": "등장 손님6", + "Test": 2352, + "Tests1": "Tests1", + "Tests2": "Tests2", + "Tests3": "Tests3" + }, + { + "Id:string": "customer_pool_001", + "CustomerLimitCount": 4, + "Customers1": "customer_001", + "Customers2": "", + "Customers3": "", + "Customers4": "", + "Customers5": "", + "Customers6": "", + "Test": 0, + "Tests1": "테스트", + "Tests2": "테스트2", + "Tests3": "" + }, + { + "Id:string": "customer_pool_002", + "CustomerLimitCount": 7, + "Customers1": "customer_001", + "Customers2": "customer_002", + "Customers3": "", + "Customers4": "", + "Customers5": "", + "Customers6": "", + "Test": 3, + "Tests1": 1, + "Tests2": 2, + "Tests3": "" + }, + { + "Id:string": "customer_pool_003", + "CustomerLimitCount": 9, + "Customers1": "customer_001", + "Customers2": "customer_002", + "Customers3": "customer_003", + "Customers4": "", + "Customers5": "", + "Customers6": "", + "Test": 2, + "Tests1": 5, + "Tests2": 23, + "Tests3": 253 + }, + { + "Id:string": "customer_pool_004", + "CustomerLimitCount": 3, + "Customers1": "customer_001", + "Customers2": "", + "Customers3": "", + "Customers4": "", + "Customers5": "", + "Customers6": "", + "Test": "", + "Tests1": "", + "Tests2": "", + "Tests3": "" + }, + { + "Id:string": "customer_pool_005", + "CustomerLimitCount": 3, + "Customers1": "customer_001", + "Customers2": "", + "Customers3": "", + "Customers4": "", + "Customers5": "", + "Customers6": "", + "Test": "", + "Tests1": 435, + "Tests2": "", + "Tests3": "" + }, + { + "Id:string": "customer_pool_006", + "CustomerLimitCount": 3, + "Customers1": "customer_001", + "Customers2": "", + "Customers3": "", + "Customers4": "", + "Customers5": "", + "Customers6": "", + "Test": "", + "Tests1": "", + "Tests2": "", + "Tests3": "" + }, + { + "Id:string": "special_customer_pool_001", + "CustomerLimitCount": 1, + "Customers1": "special_customer_001", + "Customers2": "", + "Customers3": "", + "Customers4": "", + "Customers5": "", + "Customers6": "", + "Test": "", + "Tests1": 111, + "Tests2": 234, + "Tests3": "" + } + ], + "LevelData": [ + { + "Id:string": "식별번호", + "Level": "레벨 or 평판", + "Area:string": "등장 지역", + "CustomerPool:string": "일반 손님 풀", + "SpecialCustomerPool:string": "스페셜 손님 풀", + "SpawnType:NativeEnum": "스폰 타입", + "CustomerRespawnTime": "손님 리스폰 시간", + "Exp": "손님 1명당 경험치", + "OrderTime": "주문 대기 인내심 카운트 시간", + "WaitTime": "주문 인내심 카운트 시간", + "EatingTime": "식사 소요시간" + }, + { + "Id:string": "Level001", + "Level": 1, + "Area:string": "Area1", + "CustomerPool:string": "customer_pool_001", + "SpecialCustomerPool:string": "", + "SpawnType:NativeEnum": "Random", + "CustomerRespawnTime": 6, + "Exp": 13, + "OrderTime": 30, + "WaitTime": 60, + "EatingTime": 6 + }, + { + "Id:string": "Level002", + "Level": 2, + "Area:string": "Area1", + "CustomerPool:string": "customer_pool_002", + "SpecialCustomerPool:string": "special_customer_pool_001", + "SpawnType:NativeEnum": "Random", + "CustomerRespawnTime": 6, + "Exp": 13, + "OrderTime": 30, + "WaitTime": 60, + "EatingTime": 6 + }, + { + "Id:string": "Level003", + "Level": 3, + "Area:string": "Area1", + "CustomerPool:string": "customer_pool_003", + "SpecialCustomerPool:string": "special_customer_pool_001", + "SpawnType:NativeEnum": "Regular", + "CustomerRespawnTime": 6, + "Exp": 13, + "OrderTime": 30, + "WaitTime": 60, + "EatingTime": 6 + }, + { + "Id:string": "Level004", + "Level": 4, + "Area:string": "Area2", + "CustomerPool:string": "customer_pool_004", + "SpecialCustomerPool:string": "special_customer_pool_001", + "SpawnType:NativeEnum": "Regular", + "CustomerRespawnTime": 6, + "Exp": 13, + "OrderTime": 30, + "WaitTime": 60, + "EatingTime": 6 + }, + { + "Id:string": "Level005", + "Level": 5, + "Area:string": "Area2", + "CustomerPool:string": "customer_pool_005", + "SpecialCustomerPool:string": "special_customer_pool_001", + "SpawnType:NativeEnum": "Regular", + "CustomerRespawnTime": 6, + "Exp": 13, + "OrderTime": 30, + "WaitTime": 60, + "EatingTime": 6 + }, + { + "Id:string": "Level006", + "Level": 6, + "Area:string": "Area2", + "CustomerPool:string": "customer_pool_006", + "SpecialCustomerPool:string": "special_customer_pool_001", + "SpawnType:NativeEnum": "Random", + "CustomerRespawnTime": 6, + "Exp": 13, + "OrderTime": 30, + "WaitTime": 60, + "EatingTime": 6 + } + ], + "CustomerData": [ + { + "Id:string": "식별번호", + "CustomerType:NativeEnum": "손님 타입", + "#Name": "이름", + "SpineSkinKey": "스파인 스킨 키 값", + "FavoriteTastes": "선호 맛들" + }, + { + "Id:string": "customer_001", + "CustomerType:NativeEnum": "Normal", + "#Name": "유령1", + "SpineSkinKey": "Casper", + "FavoriteTastes": "" + }, + { + "Id:string": "customer_002", + "CustomerType:NativeEnum": "Normal", + "#Name": "유령2", + "SpineSkinKey": "CasperBlack", + "FavoriteTastes": "" + }, + { + "Id:string": "customer_003", + "CustomerType:NativeEnum": "Normal", + "#Name": "유령3", + "SpineSkinKey": "PumkinHead", + "FavoriteTastes": "" + }, + { + "Id:string": "special_customer_001", + "CustomerType:NativeEnum": "Special", + "#Name": "차이", + "SpineSkinKey": "", + "FavoriteTastes": "" + } + ], + "CustomerPoolData": [ + { + "Id:string": "식별번호", + "CustomerLimitCount": "손님 최대 수", + "Customers:string": "등장 손님들" + }, + { + "Id:string": "customer_pool_001", + "CustomerLimitCount": 4, + "Customers:string": "customer_001" + }, + { + "Id:string": "customer_pool_002", + "CustomerLimitCount": 7, + "Customers:string": "customer_001, customer_002" + }, + { + "Id:string": "customer_pool_003", + "CustomerLimitCount": 9, + "Customers:string": "customer_001, customer_002, customer_003" + }, + { + "Id:string": "customer_pool_004", + "CustomerLimitCount": 3, + "Customers:string": "customer_001" + }, + { + "Id:string": "customer_pool_005", + "CustomerLimitCount": 3, + "Customers:string": "customer_001" + }, + { + "Id:string": "customer_pool_006", + "CustomerLimitCount": 3, + "Customers:string": "customer_001" + }, + { + "Id:string": "special_customer_pool_001", + "CustomerLimitCount": 1, + "Customers:string": "special_customer_001" + } + ], + "ItemData": [ + { + "Id": "식별번호", + "ItemType:NativeEnum": "아이템타입1" + }, + { + "Id": "item_food_001", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_002", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_003", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_004", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_005", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_006", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_007", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_008", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_009", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_010", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_011", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_012", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_013", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_014", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_015", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_016", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_017", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_018", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_019", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_food_020", + "ItemType:NativeEnum": "Food" + }, + { + "Id": "item_ingredient_001", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_002", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_003", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_004", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_005", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_006", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_007", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_008", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_009", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_010", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_011", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_012", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_013", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_014", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_015", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_016", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_017", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_018", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_019", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_020", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_021", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_022", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_ingredient_023", + "ItemType:NativeEnum": "Ingredient" + }, + { + "Id": "item_environment_001", + "ItemType:NativeEnum": "Environment" + }, + { + "Id": "item_environment_002", + "ItemType:NativeEnum": "Environment" + }, + { + "Id": "item_environment_003", + "ItemType:NativeEnum": "Environment" + }, + { + "Id": "item_environment_004", + "ItemType:NativeEnum": "Environment" + }, + { + "Id": "item_environment_005", + "ItemType:NativeEnum": "Environment" + }, + { + "Id": "item_environment_cookware_001", + "ItemType:NativeEnum": "Environment" + }, + { + "Id": "item_environment_cookware_002", + "ItemType:NativeEnum": "Environment" + }, + { + "Id": "item_environment_cookware_003", + "ItemType:NativeEnum": "Environment" + }, + { + "Id": "item_environment_cookware_004", + "ItemType:NativeEnum": "Environment" + }, + { + "Id": "item_environment_cookware_005", + "ItemType:NativeEnum": "Environment" + }, + { + "Id": "item_environment_cookware_006", + "ItemType:NativeEnum": "Environment" + }, + { + "Id": "item_environment_cookware_007", + "ItemType:NativeEnum": "Environment" + }, + { + "Id": "item_environment_cookware_008", + "ItemType:NativeEnum": "Environment" + }, + { + "Id": "item_drink_001", + "ItemType:NativeEnum": "Drink" + }, + { + "Id": "item_drink_002", + "ItemType:NativeEnum": "Drink" + }, + { + "Id": "item_drink_003", + "ItemType:NativeEnum": "Drink" + }, + { + "Id": "item_drink_004", + "ItemType:NativeEnum": "Drink" + }, + { + "Id": "item_food_recipe_001", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_002", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_003", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_004", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_005", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_006", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_007", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_008", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_009", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_010", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_011", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_012", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_013", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_014", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_015", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_016", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_017", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_018", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_019", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_food_recipe_020", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_drink_recipe_001", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_drink_recipe_002", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_drink_recipe_003", + "ItemType:NativeEnum": "Recipe" + }, + { + "Id": "item_drink_recipe_004", + "ItemType:NativeEnum": "Recipe" + } + ], + "RecipeData": [ + { + "Id:string": "식별ID", + "#Name": "이름", + "RecipeType:NativeEnum": "레시피타입", + "RecipeResult:string": "완성 메뉴" + }, + { + "Id:string": "item_food_recipe_001", + "#Name": "블루 스튜 레시피", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_001" + }, + { + "Id:string": "item_food_recipe_002", + "#Name": "햇빛 스튜 레시피", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_002" + }, + { + "Id:string": "item_food_recipe_003", + "#Name": "심해기억 스튜 레시피", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_003" + }, + { + "Id:string": "item_food_recipe_004", + "#Name": "치킨 굴라쉬 레시피", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_004" + }, + { + "Id:string": "item_food_recipe_005", + "#Name": "꿈해초 크로켓 레시피", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_005" + }, + { + "Id:string": "item_food_recipe_006", + "#Name": "선라이즈 당근카츠 레시피", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_006" + }, + { + "Id:string": "item_food_recipe_007", + "#Name": "미정", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_007" + }, + { + "Id:string": "item_food_recipe_008", + "#Name": "비늘치킨덕 레시피", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_008" + }, + { + "Id:string": "item_food_recipe_009", + "#Name": "화룡장어 구이 레시피", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_009" + }, + { + "Id:string": "item_food_recipe_010", + "#Name": "미정", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_010" + }, + { + "Id:string": "item_food_recipe_011", + "#Name": "바다의선물 레시피", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_011" + }, + { + "Id:string": "item_food_recipe_012", + "#Name": "유령새우회 레시피", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_012" + }, + { + "Id:string": "item_food_recipe_013", + "#Name": "비늘초무침 레시피", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_013" + }, + { + "Id:string": "item_food_recipe_014", + "#Name": "쫀징어 냉채 레시피", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_014" + }, + { + "Id:string": "item_food_recipe_015", + "#Name": "쫀징어링 레시피", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_015" + }, + { + "Id:string": "item_food_recipe_016", + "#Name": "꿈해파리 볶음 레시피", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_016" + }, + { + "Id:string": "item_food_recipe_017", + "#Name": "페퍼포칼립스 레시피", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_017" + }, + { + "Id:string": "item_food_recipe_018", + "#Name": "미정", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_018" + }, + { + "Id:string": "item_food_recipe_019", + "#Name": "미정", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_019" + }, + { + "Id:string": "item_food_recipe_020", + "#Name": "미정", + "RecipeType:NativeEnum": "FoodRecipe", + "RecipeResult:string": "item_food_020" + }, + { + "Id:string": "item_drink_recipe_001", + "#Name": "토마토 주스 레시피", + "RecipeType:NativeEnum": "DrinkRecipe", + "RecipeResult:string": "item_drink_001" + }, + { + "Id:string": "item_drink_recipe_002", + "#Name": "오렌지 주스 레시피", + "RecipeType:NativeEnum": "DrinkRecipe", + "RecipeResult:string": "item_drink_002" + }, + { + "Id:string": "item_drink_recipe_003", + "#Name": "여신의눈물 레시피", + "RecipeType:NativeEnum": "DrinkRecipe", + "RecipeResult:string": "item_drink_003" + }, + { + "Id:string": "item_drink_recipe_004", + "#Name": "라벨블루 레시피", + "RecipeType:NativeEnum": "DrinkRecipe", + "RecipeResult:string": "item_drink_004" + } + ], + "FoodData": [ + { + "Id:string": "식별ID", + "#Name": "이름", + "CookwareKey:string": "요리도구 키 값", + "CookTime:int": "요리시간", + "Price:int": "요리가격", + "IngredientKey1:string": "재료1", + "IngredientAmount1:string": "재료1 갯수", + "IngredientKey2:string": "재료2", + "IngredientAmount2:string": "재료2 갯수", + "IngredientKey3:string": "재료3", + "IngredientAmount3:string": "재료3 갯수", + "IngredientKey4:string": "재료4", + "IngredientAmount4:string": "재료4 갯수", + "TasteKey1:string": "맛 키1", + "TasteKey2:string": "맛 키2", + "TasteKey3:string": "맛 키3", + "TasteKey4:string": "맛 키4", + "TasteKey5:string": "맛 키5", + "TasteKey6:string": "맛 키6" + }, + { + "Id:string": "item_food_001", + "#Name": "블루 스튜", + "CookwareKey:string": "item_environment_cookware_001", + "CookTime:int": 7, + "Price:int": 10, + "IngredientKey1:string": "item_ingredient_001", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_002", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "", + "IngredientAmount3:string": "", + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "Sweet", + "TasteKey2:string": "Warm", + "TasteKey3:string": "Vegetable", + "TasteKey4:string": "", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_002", + "#Name": "햇빛 스튜", + "CookwareKey:string": "item_environment_cookware_001", + "CookTime:int": 7, + "Price:int": 20, + "IngredientKey1:string": "item_ingredient_002", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_003", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "", + "IngredientAmount3:string": "", + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "Sweet", + "TasteKey2:string": "Bitter", + "TasteKey3:string": "Warm", + "TasteKey4:string": "Vegetable", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_003", + "#Name": "심해기억 스튜", + "CookwareKey:string": "item_environment_cookware_001", + "CookTime:int": 7, + "Price:int": 15, + "IngredientKey1:string": "item_ingredient_002", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_004", + "IngredientAmount2:string": 2, + "IngredientKey3:string": "", + "IngredientAmount3:string": "", + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "Salty", + "TasteKey2:string": "Mild", + "TasteKey3:string": "Vegetable", + "TasteKey4:string": "", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_004", + "#Name": "치킨 굴라쉬", + "CookwareKey:string": "item_environment_cookware_001", + "CookTime:int": 10, + "Price:int": 30, + "IngredientKey1:string": "item_ingredient_005", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_006", + "IngredientAmount2:string": 2, + "IngredientKey3:string": "item_ingredient_007", + "IngredientAmount3:string": 1, + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "Salty", + "TasteKey2:string": "Sweet", + "TasteKey3:string": "Addictive", + "TasteKey4:string": "Vegetable", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_005", + "#Name": "꿈해초 크로켓", + "CookwareKey:string": "item_environment_cookware_002", + "CookTime:int": 5, + "Price:int": 20, + "IngredientKey1:string": "item_ingredient_007", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_008", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "item_ingredient_009", + "IngredientAmount3:string": 1, + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "Sour", + "TasteKey2:string": "Salty", + "TasteKey3:string": "Mild", + "TasteKey4:string": "", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_006", + "#Name": "선라이즈 당근카츠", + "CookwareKey:string": "item_environment_cookware_002", + "CookTime:int": 5, + "Price:int": 30, + "IngredientKey1:string": "item_ingredient_003", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_007", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "item_ingredient_009", + "IngredientAmount3:string": 1, + "IngredientKey4:string": "item_ingredient_010", + "IngredientAmount4:string": 1, + "TasteKey1:string": "Sweet", + "TasteKey2:string": "Sour", + "TasteKey3:string": "Warm", + "TasteKey4:string": "Savory", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_007", + "#Name": "미정", + "CookwareKey:string": "item_environment_cookware_002", + "CookTime:int": 5, + "Price:int": 30, + "IngredientKey1:string": "item_ingredient_011", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_008", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "", + "IngredientAmount3:string": "", + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "", + "TasteKey2:string": "", + "TasteKey3:string": "", + "TasteKey4:string": "", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_008", + "#Name": "비늘치킨덕", + "CookwareKey:string": "item_environment_cookware_003", + "CookTime:int": 6, + "Price:int": 30, + "IngredientKey1:string": "item_ingredient_012", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_013", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "item_ingredient_007", + "IngredientAmount3:string": 1, + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "Salty", + "TasteKey2:string": "Mild", + "TasteKey3:string": "Addictive", + "TasteKey4:string": "Meat", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_009", + "#Name": "화룡장어 구이", + "CookwareKey:string": "item_environment_cookware_003", + "CookTime:int": 6, + "Price:int": 15, + "IngredientKey1:string": "item_ingredient_014", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_015", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "", + "IngredientAmount3:string": "", + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "Sweet", + "TasteKey2:string": "Mild", + "TasteKey3:string": "SuperHot", + "TasteKey4:string": "Fish", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_010", + "#Name": "미정", + "CookwareKey:string": "item_environment_cookware_003", + "CookTime:int": 6, + "Price:int": 30, + "IngredientKey1:string": "item_ingredient_016", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_008", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "", + "IngredientAmount3:string": "", + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "", + "TasteKey2:string": "", + "TasteKey3:string": "", + "TasteKey4:string": "", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_011", + "#Name": "바다의선물", + "CookwareKey:string": "item_environment_cookware_004", + "CookTime:int": 5, + "Price:int": 10, + "IngredientKey1:string": "item_ingredient_002", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_003", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "", + "IngredientAmount3:string": "", + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "Sweet", + "TasteKey2:string": "Mild", + "TasteKey3:string": "Vegetable", + "TasteKey4:string": "", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_012", + "#Name": "유령새우회", + "CookwareKey:string": "item_environment_cookware_004", + "CookTime:int": 5, + "Price:int": 25, + "IngredientKey1:string": "item_ingredient_017", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_007", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "item_ingredient_004", + "IngredientAmount3:string": 1, + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "Sweet", + "TasteKey2:string": "Salty", + "TasteKey3:string": "Addictive", + "TasteKey4:string": "Fish", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_013", + "#Name": "비늘초무침", + "CookwareKey:string": "item_environment_cookware_004", + "CookTime:int": 5, + "Price:int": 45, + "IngredientKey1:string": "item_ingredient_018", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_003", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "item_ingredient_007", + "IngredientAmount3:string": 1, + "IngredientKey4:string": "item_ingredient_010", + "IngredientAmount4:string": 2, + "TasteKey1:string": "Salty", + "TasteKey2:string": "Sour", + "TasteKey3:string": "Mild", + "TasteKey4:string": "Vegetable", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_014", + "#Name": "쫀징어 냉채", + "CookwareKey:string": "item_environment_cookware_004", + "CookTime:int": 5, + "Price:int": 15, + "IngredientKey1:string": "item_ingredient_011", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_003", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "", + "IngredientAmount3:string": "", + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "Salty", + "TasteKey2:string": "Vegetable", + "TasteKey3:string": "Fish", + "TasteKey4:string": "", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_015", + "#Name": "쫀징어링", + "CookwareKey:string": "item_environment_cookware_005", + "CookTime:int": 8, + "Price:int": 25, + "IngredientKey1:string": "item_ingredient_011", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_007", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "item_ingredient_015", + "IngredientAmount3:string": 1, + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "Salty", + "TasteKey2:string": "Sour", + "TasteKey3:string": "SuperHot", + "TasteKey4:string": "Fish", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_016", + "#Name": "꿈해파리 볶음", + "CookwareKey:string": "item_environment_cookware_005", + "CookTime:int": 6, + "Price:int": 15, + "IngredientKey1:string": "item_ingredient_019", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_004", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "", + "IngredientAmount3:string": "", + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "Salty", + "TasteKey2:string": "Sweet", + "TasteKey3:string": "Sour", + "TasteKey4:string": "", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_017", + "#Name": "페퍼포칼립스", + "CookwareKey:string": "item_environment_cookware_005", + "CookTime:int": 6, + "Price:int": 25, + "IngredientKey1:string": "item_ingredient_012", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_015", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "item_ingredient_008", + "IngredientAmount3:string": 1, + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "Sweet", + "TasteKey2:string": "SuperHot", + "TasteKey3:string": "Meat", + "TasteKey4:string": "Vegetable", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_018", + "#Name": "미정", + "CookwareKey:string": "item_environment_cookware_006", + "CookTime:int": 0, + "Price:int": 0, + "IngredientKey1:string": "", + "IngredientAmount1:string": "", + "IngredientKey2:string": "", + "IngredientAmount2:string": "", + "IngredientKey3:string": "", + "IngredientAmount3:string": "", + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "", + "TasteKey2:string": "", + "TasteKey3:string": "", + "TasteKey4:string": "", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_019", + "#Name": "미정", + "CookwareKey:string": "item_environment_cookware_006", + "CookTime:int": 0, + "Price:int": 0, + "IngredientKey1:string": "", + "IngredientAmount1:string": "", + "IngredientKey2:string": "", + "IngredientAmount2:string": "", + "IngredientKey3:string": "", + "IngredientAmount3:string": "", + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "", + "TasteKey2:string": "", + "TasteKey3:string": "", + "TasteKey4:string": "", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_food_020", + "#Name": "미정", + "CookwareKey:string": "item_environment_cookware_006", + "CookTime:int": 0, + "Price:int": 0, + "IngredientKey1:string": "", + "IngredientAmount1:string": "", + "IngredientKey2:string": "", + "IngredientAmount2:string": "", + "IngredientKey3:string": "", + "IngredientAmount3:string": "", + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "", + "TasteKey2:string": "", + "TasteKey3:string": "", + "TasteKey4:string": "", + "TasteKey5:string": "", + "TasteKey6:string": "" + } + ], + "DrinkData": [ + { + "Id:string": "식별ID", + "#Name": "이름", + "CookwareKey:string": "요리도구 키 값", + "CookTime:int": "요리시간", + "Price:int": "요리가격", + "IngredientKey1:string": "재료1", + "IngredientAmount1:string": "재료1 갯수", + "IngredientKey2:string": "재료2", + "IngredientAmount2:string": "재료2 갯수", + "IngredientKey3:string": "재료3", + "IngredientAmount3:string": "재료3 갯수", + "IngredientKey4:string": "재료4", + "IngredientAmount4:string": "재료4 갯수", + "TasteKey1:string": "맛 키1", + "TasteKey2:string": "맛 키2", + "TasteKey3:string": "맛 키3", + "TasteKey4:string": "맛 키4", + "TasteKey5:string": "맛 키5", + "TasteKey6:string": "맛 키6" + }, + { + "Id:string": "item_drink_001", + "#Name": "토마토 주스", + "CookwareKey:string": "item_environment_cookware_007", + "CookTime:int": 1, + "Price:int": 10, + "IngredientKey1:string": "item_ingredient_006", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_021", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "", + "IngredientAmount3:string": "", + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "NoneDegree", + "TasteKey2:string": "Soda", + "TasteKey3:string": "", + "TasteKey4:string": "", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_drink_002", + "#Name": "오렌지 주스", + "CookwareKey:string": "item_environment_cookware_007", + "CookTime:int": 1, + "Price:int": 10, + "IngredientKey1:string": "item_ingredient_023", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_021", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "", + "IngredientAmount3:string": "", + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "NoneDegree", + "TasteKey2:string": "Sour", + "TasteKey3:string": "", + "TasteKey4:string": "", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_drink_003", + "#Name": "여신의눈물", + "CookwareKey:string": "item_environment_cookware_008", + "CookTime:int": 3, + "Price:int": 10, + "IngredientKey1:string": "item_ingredient_008", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_022", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "", + "IngredientAmount3:string": "", + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "LowDegree", + "TasteKey2:string": "WoodFlavor", + "TasteKey3:string": "", + "TasteKey4:string": "", + "TasteKey5:string": "", + "TasteKey6:string": "" + }, + { + "Id:string": "item_drink_004", + "#Name": "라벨블루", + "CookwareKey:string": "item_environment_cookware_008", + "CookTime:int": 3, + "Price:int": 10, + "IngredientKey1:string": "item_ingredient_002", + "IngredientAmount1:string": 1, + "IngredientKey2:string": "item_ingredient_022", + "IngredientAmount2:string": 1, + "IngredientKey3:string": "", + "IngredientAmount3:string": "", + "IngredientKey4:string": "", + "IngredientAmount4:string": "", + "TasteKey1:string": "MiddleDegree", + "TasteKey2:string": "FruitFlavor", + "TasteKey3:string": "", + "TasteKey4:string": "", + "TasteKey5:string": "", + "TasteKey6:string": "" + } + ], + "IngredientData": [ + { + "Id:string": "식별ID", + "#Name": "이름" + }, + { + "Id:string": "item_ingredient_001", + "#Name": "극락쌀" + }, + { + "Id:string": "item_ingredient_002", + "#Name": "블루애플" + }, + { + "Id:string": "item_ingredient_003", + "#Name": "햇빛당근" + }, + { + "Id:string": "item_ingredient_004", + "#Name": "꿈꾸는 해초" + }, + { + "Id:string": "item_ingredient_005", + "#Name": "미정" + }, + { + "Id:string": "item_ingredient_006", + "#Name": "토마토" + }, + { + "Id:string": "item_ingredient_007", + "#Name": "천일염" + }, + { + "Id:string": "item_ingredient_008", + "#Name": "눈물" + }, + { + "Id:string": "item_ingredient_009", + "#Name": "밀가루" + }, + { + "Id:string": "item_ingredient_010", + "#Name": "식초" + }, + { + "Id:string": "item_ingredient_011", + "#Name": "쫀징어" + }, + { + "Id:string": "item_ingredient_012", + "#Name": "치타닭 고기 " + }, + { + "Id:string": "item_ingredient_013", + "#Name": "비늘오리 고기" + }, + { + "Id:string": "item_ingredient_014", + "#Name": "뱀장어" + }, + { + "Id:string": "item_ingredient_015", + "#Name": "불꽃 고추" + }, + { + "Id:string": "item_ingredient_016", + "#Name": "유령상어" + }, + { + "Id:string": "item_ingredient_017", + "#Name": "유령새우" + }, + { + "Id:string": "item_ingredient_018", + "#Name": "비늘발고둥" + }, + { + "Id:string": "item_ingredient_019", + "#Name": "홍해파리" + }, + { + "Id:string": "item_ingredient_020", + "#Name": "미정" + }, + { + "Id:string": "item_ingredient_021", + "#Name": "탄산수" + }, + { + "Id:string": "item_ingredient_022", + "#Name": "위스키" + }, + { + "Id:string": "item_ingredient_023", + "#Name": "오렌지" + } + ], + "CookwareData": [ + { + "Id:string": "식별ID", + "#Name": "이름", + "CookwareType:NativeEnum": "요리도구 타입" + }, + { + "Id:string": "item_environment_cookware_001", + "#Name": "냄비", + "CookwareType:NativeEnum": "Pot" + }, + { + "Id:string": "item_environment_cookware_002", + "#Name": "튀김", + "CookwareType:NativeEnum": "Fryer" + }, + { + "Id:string": "item_environment_cookware_003", + "#Name": "화로", + "CookwareType:NativeEnum": "Brazier" + }, + { + "Id:string": "item_environment_cookware_004", + "#Name": "", + "CookwareType:NativeEnum": "CuttingBoard" + }, + { + "Id:string": "item_environment_cookware_005", + "#Name": "", + "CookwareType:NativeEnum": "Griddle" + }, + { + "Id:string": "item_environment_cookware_006", + "#Name": "", + "CookwareType:NativeEnum": "MagicOven" + }, + { + "Id:string": "item_environment_cookware_007", + "#Name": "", + "CookwareType:NativeEnum": "JuiceMachine" + }, + { + "Id:string": "item_environment_cookware_008", + "#Name": "", + "CookwareType:NativeEnum": "Barrel" + } + ], + "TasteData": [ + { + "Id:string": "식별ID", + "#Name": "이름", + "TasteType:NativeEnum": "맛 종류" + }, + { + "Id:string": "Sweet", + "#Name": "단맛", + "TasteType:NativeEnum": "Sweet" + }, + { + "Id:string": "Warm", + "#Name": "따뜻한", + "TasteType:NativeEnum": "Warm" + }, + { + "Id:string": "Vegetable", + "#Name": "채류", + "TasteType:NativeEnum": "Vegetable" + }, + { + "Id:string": "Bitter", + "#Name": "쓴맛", + "TasteType:NativeEnum": "Bitter" + }, + { + "Id:string": "Salty", + "#Name": "짠맛", + "TasteType:NativeEnum": "Salty" + }, + { + "Id:string": "Mild", + "#Name": "담백한", + "TasteType:NativeEnum": "Mild" + }, + { + "Id:string": "Addictive", + "#Name": "중독적인", + "TasteType:NativeEnum": "Addictive" + }, + { + "Id:string": "Sour", + "#Name": "신맛", + "TasteType:NativeEnum": "Sour" + }, + { + "Id:string": "Savory", + "#Name": "고소한", + "TasteType:NativeEnum": "Savory" + }, + { + "Id:string": "Meat", + "#Name": "육류", + "TasteType:NativeEnum": "Meat" + }, + { + "Id:string": "SuperHot", + "#Name": "핵불닭맛", + "TasteType:NativeEnum": "SuperHot" + }, + { + "Id:string": "Fish", + "#Name": "어류", + "TasteType:NativeEnum": "Fish" + }, + { + "Id:string": "NoneDegree", + "#Name": "도수가없는", + "TasteType:NativeEnum": "NoneDegree" + }, + { + "Id:string": "Soda", + "#Name": "탄산", + "TasteType:NativeEnum": "Soda" + }, + { + "Id:string": "LowDegree", + "#Name": "도수가낮은", + "TasteType:NativeEnum": "LowDegree" + }, + { + "Id:string": "WoodFlavor", + "#Name": "나무향", + "TasteType:NativeEnum": "WoodFlavor" + }, + { + "Id:string": "MiddleDegree", + "#Name": "도수가보통인", + "TasteType:NativeEnum": "MiddleDegree" + }, + { + "Id:string": "FruitFlavor", + "#Name": "과일향", + "TasteType:NativeEnum": "FruitFlavor" + } + ], + "EnvironmentData": [ + { + "Id": "식별번호", + "InteractionType:NativeEnum": "인터랙션타입", + "RendererType:Enum": "렌더러 타입", + "IsTrigger:int": "트리거 여부", + "SkeletonDataName:string": "스켈레톤 애니메이션 에셋 이름", + "SkinName:string": "스파인 스킨 이름", + "DefaultAnimationName:string": "", + "SpriteKey:string": "SpriteAtlas 키 값", + "Size:float": "유니티 내의 이미지 크기" + }, + { + "Id": "item_environment_001", + "InteractionType:NativeEnum": "None", + "RendererType:Enum": "Sprite", + "IsTrigger:int": 0, + "SkeletonDataName:string": "", + "SkinName:string": "", + "DefaultAnimationName:string": "", + "SpriteKey:string": "Barrel01", + "Size:float": 1 + }, + { + "Id": "item_environment_002", + "InteractionType:NativeEnum": "None", + "RendererType:Enum": "Spine", + "IsTrigger:int": 1, + "SkeletonDataName:string": "Coral_SkeletonData", + "SkinName:string": "Coral01", + "DefaultAnimationName:string": "Coral01/Idle", + "SpriteKey:string": "", + "Size:float": 1 + }, + { + "Id": "item_environment_003", + "InteractionType:NativeEnum": "None", + "RendererType:Enum": "Spine", + "IsTrigger:int": 1, + "SkeletonDataName:string": "Coral_SkeletonData", + "SkinName:string": "Coral02", + "DefaultAnimationName:string": "Coral02/Idle", + "SpriteKey:string": "", + "Size:float": 1 + }, + { + "Id": "item_environment_004", + "InteractionType:NativeEnum": "None", + "RendererType:Enum": "Spine", + "IsTrigger:int": 1, + "SkeletonDataName:string": "SummerGrass01_SkeletonData", + "SkinName:string": "default", + "DefaultAnimationName:string": "Normal", + "SpriteKey:string": "", + "Size:float": 0.3 + }, + { + "Id": "item_environment_005", + "InteractionType:NativeEnum": "RestaurantManagement", + "RendererType:Enum": "Spine", + "IsTrigger:int": 0, + "SkeletonDataName:string": "", + "SkinName:string": "", + "DefaultAnimationName:string": "", + "SpriteKey:string": "", + "Size:float": 1 + } + ] +} \ No newline at end of file diff --git a/Assets/_DDD/_Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-08-28 12-54-27 by 남태건.json.meta b/Assets/_DDD/_Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-08-28 12-54-27 by 남태건.json.meta new file mode 100644 index 000000000..1628462d3 --- /dev/null +++ b/Assets/_DDD/_Scripts/GenerateGoogleSheet/AutoCreated/BackUps/2025-08-28 12-54-27 by 남태건.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 90984e9ede7c85d45b0883295d7cff8a +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/_DDD/_Scripts/GenerateGoogleSheet/AutoCreated/Logs/GoogleSheetChangeLog.asset b/Assets/_DDD/_Scripts/GenerateGoogleSheet/AutoCreated/Logs/GoogleSheetChangeLog.asset index 77ef4281d..6c64975f1 100644 --- a/Assets/_DDD/_Scripts/GenerateGoogleSheet/AutoCreated/Logs/GoogleSheetChangeLog.asset +++ b/Assets/_DDD/_Scripts/GenerateGoogleSheet/AutoCreated/Logs/GoogleSheetChangeLog.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a9bb03d45aa641d701bc2d8e978c6a353363fed2f8206bfd8ee5af63f9562cfc -size 736720 +oid sha256:28d20f9975e930a18df709d51f658df25780b25916edbd86478c68fb74446494 +size 797466 diff --git a/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Implementations/Synchronization/SoSynchronizer.cs b/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Implementations/Synchronization/AssetSynchronizer.cs similarity index 63% rename from Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Implementations/Synchronization/SoSynchronizer.cs rename to Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Implementations/Synchronization/AssetSynchronizer.cs index e87b903ff..4e6f7034d 100644 --- a/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Implementations/Synchronization/SoSynchronizer.cs +++ b/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Implementations/Synchronization/AssetSynchronizer.cs @@ -10,15 +10,15 @@ namespace DDD { - public sealed class SoSynchronizer : ISoSynchronizer + public sealed class AssetSynchronizer : IAssetSynchronizer { private readonly IValueConverterRegistry _converter; private readonly List _updatedPaths = new(); - public IReadOnlyList UpdatedSoAssetPaths => _updatedPaths; + public IReadOnlyList AssetUpdatedAssetPaths => _updatedPaths; - public SoSynchronizer(IValueConverterRegistry converter) => _converter = converter; + public AssetSynchronizer(IValueConverterRegistry converter) => _converter = converter; - public bool SynchronizeAll(string fullJson, IReadOnlyCollection selectedSheets, string rootNamespace, string soFolderAssetPath) + public bool SynchronizeAll(string fullJson, IReadOnlyCollection selectedSheets, string rootNamespace, string assetFolderAssetPath) { _updatedPaths.Clear(); if (string.IsNullOrEmpty(fullJson)) return false; @@ -27,8 +27,8 @@ public bool SynchronizeAll(string fullJson, IReadOnlyCollection selected bool allSuccess = true; // 폴더 보장 - if (!AssetDatabase.IsValidFolder(soFolderAssetPath)) - CreateFolderRecursive(soFolderAssetPath); + if (!AssetDatabase.IsValidFolder(assetFolderAssetPath)) + CreateFolderRecursive(assetFolderAssetPath); // 타입 캐시 var types = AppDomain.CurrentDomain.GetAssemblies() @@ -40,38 +40,38 @@ public bool SynchronizeAll(string fullJson, IReadOnlyCollection selected .GroupBy(t => t.Name) .ToDictionary(g => g.Key, g => g.First()); - Debug.Log($"[SoSync] soFolder={soFolderAssetPath}"); - Debug.Log($"[SoSync] selected: {string.Join(", ", selectedSheets)}"); + Debug.Log($"[AssetSynchronizer] assetFolder={assetFolderAssetPath}"); + Debug.Log($"[AssetSynchronizer] selected: {string.Join(", ", selectedSheets)}"); foreach (var pair in root) { string sheet = pair.Key; if (!selectedSheets.Contains(sheet)) { - Debug.Log($"[SoSync] SKIP(not selected): {sheet}"); + Debug.Log($"[AssetSynchronizer] SKIP(not selected): {sheet}"); continue; } - types.TryGetValue(sheet, out var dataType); - types.TryGetValue($"{sheet}So", out var soType); - if (dataType == null || soType == null) + types.TryGetValue($"{sheet}Entry", out var dataType); + types.TryGetValue($"{sheet}Asset", out var assetType); + if (dataType == null || assetType == null) { - Debug.LogWarning($"[SoSynchronizer] 타입 누락: {sheet} (data={dataType}, so={soType})"); + Debug.LogWarning($"[AssetSynchronizer] 타입 누락: {sheet} (entry={dataType}, asset={assetType})"); allSuccess = false; continue; } - string soAssetPath = $"{soFolderAssetPath}/{sheet}So.asset"; - var so = AssetDatabase.LoadAssetAtPath(soAssetPath); - if (so == null) + string assetPath = $"{assetFolderAssetPath}/{sheet}Asset.asset"; + var asset = AssetDatabase.LoadAssetAtPath(assetPath); + if (asset == null) { - Debug.Log($"[SoSync] CREATE SO: {soAssetPath}"); - so = ScriptableObject.CreateInstance(soType); - AssetDatabase.CreateAsset(so, soAssetPath); + Debug.Log($"[AssetSynchronizer] CREATE SO: {assetPath}"); + asset = ScriptableObject.CreateInstance(assetType); + AssetDatabase.CreateAsset(asset, assetPath); } else { - Debug.Log($"[SoSync] FOUND SO: {soAssetPath}"); + Debug.Log($"[AssetSynchronizer] FOUND SO: {assetPath}"); } var list = (IList)Activator.CreateInstance(typeof(List<>).MakeGenericType(dataType)); @@ -102,30 +102,30 @@ public bool SynchronizeAll(string fullJson, IReadOnlyCollection selected } else { - Debug.LogWarning($"[SoSynchronizer] 변환 실패: {sheet}.{field} -> {targetType?.Name} (원본:'{prop.Value}')"); + Debug.LogWarning($"[AssetSynchronizer] 변환 실패: {sheet}.{field} -> {targetType?.Name} (원본:'{prop.Value}')"); } } catch (Exception e) { - Debug.LogWarning($"[SoSynchronizer] 값 할당 예외: {sheet}.{field} -> {e.Message}"); + Debug.LogWarning($"[AssetSynchronizer] 값 할당 예외: {sheet}.{field} -> {e.Message}"); } } list.Add(inst); } - var setMethod = soType.GetMethod("SetDataList", BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic); + var setMethod = assetType.GetMethod("SetDataList", BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic); if (setMethod == null) { - Debug.LogError($"{soType.Name}에 SetDataList 메서드가 없습니다."); + Debug.LogError($"{assetType.Name}에 SetDataList 메서드가 없습니다."); allSuccess = false; continue; } - Debug.Log($"[SoSync] INVOKE SetDataList for {sheet} (rows={(pair.Value as JArray)?.Count ?? 0})"); + Debug.Log($"[AssetSynchronizer] INVOKE SetDataList for {sheet} (rows={(pair.Value as JArray)?.Count ?? 0})"); - setMethod.Invoke(so, new object[] { list }); - EditorUtility.SetDirty(so); - _updatedPaths.Add(soAssetPath); + setMethod.Invoke(asset, new object[] { list }); + EditorUtility.SetDirty(asset); + _updatedPaths.Add(assetPath); } AssetDatabase.SaveAssets(); diff --git a/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Implementations/Synchronization/SoSynchronizer.cs.meta b/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Implementations/Synchronization/AssetSynchronizer.cs.meta similarity index 100% rename from Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Implementations/Synchronization/SoSynchronizer.cs.meta rename to Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Implementations/Synchronization/AssetSynchronizer.cs.meta diff --git a/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Interfaces/IAssetSynchronizer.cs b/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Interfaces/IAssetSynchronizer.cs new file mode 100644 index 000000000..dd2d70411 --- /dev/null +++ b/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Interfaces/IAssetSynchronizer.cs @@ -0,0 +1,10 @@ +using System.Collections.Generic; + +namespace DDD +{ + public interface IAssetSynchronizer + { + IReadOnlyList AssetUpdatedAssetPaths { get; } + bool SynchronizeAll(string fullJson, IReadOnlyCollection selectedSheets, string rootNamespace, string assetFolderAssetPath); + } +} \ No newline at end of file diff --git a/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Interfaces/ISoSynchronizer.cs.meta b/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Interfaces/IAssetSynchronizer.cs.meta similarity index 100% rename from Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Interfaces/ISoSynchronizer.cs.meta rename to Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Interfaces/IAssetSynchronizer.cs.meta diff --git a/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Interfaces/ISoSynchronizer.cs b/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Interfaces/ISoSynchronizer.cs deleted file mode 100644 index ba3e21323..000000000 --- a/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Interfaces/ISoSynchronizer.cs +++ /dev/null @@ -1,10 +0,0 @@ -using System.Collections.Generic; - -namespace DDD -{ - public interface ISoSynchronizer - { - IReadOnlyList UpdatedSoAssetPaths { get; } - bool SynchronizeAll(string fullJson, IReadOnlyCollection selectedSheets, string rootNamespace, string soFolderAssetPath); - } -} \ No newline at end of file diff --git a/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Manager/GoogleSheetManager.cs b/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Manager/GoogleSheetManager.cs index dc32b3e26..7cbdc8ee6 100644 --- a/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Manager/GoogleSheetManager.cs +++ b/Assets/_DDD/_Scripts/GenerateGoogleSheet/Core/Manager/GoogleSheetManager.cs @@ -31,7 +31,7 @@ public class GoogleSheetManager : ScriptableObject private IJsonDiffer _differ; private ICodeGenerator _codeGenerator; private IValueConverterRegistry _converterRegistry; - private ISoSynchronizer _soSynchronizer; + private IAssetSynchronizer _assetSynchronizer; private IAddressablesRegistrar _addressablesRegistrar; private IVersionStore _versionStore; private IReloadCoordinator _reloadCoordinator; @@ -49,7 +49,7 @@ private void BuildServices() _differ = new NewtonsoftJsonDiffer(); _codeGenerator = new CSharpCodeGenerator(new DefaultTypeNameResolver()); _converterRegistry = new DefaultValueConverterRegistry(); - _soSynchronizer = new SoSynchronizer(_converterRegistry); + _assetSynchronizer = new AssetSynchronizer(_converterRegistry); _addressablesRegistrar = new AddressablesRegistrar(); _versionStore = new GoogleSheetChangeLogVersionStore(_settings.ChangeLogAssetPath); _reloadCoordinator = new SessionStateReloadCoordinator(); @@ -152,11 +152,11 @@ private async Task ContinueSoSync(string json, bool saveSnapshot) if (_settings.AutoCreateSheets != null) foreach (var s in _settings.AutoCreateSheets) selected.Add(s); if (_settings.SoSyncOnlySheets != null) foreach (var s in _settings.SoSyncOnlySheets) selected.Add(s); - bool ok = _soSynchronizer.SynchronizeAll(json, selected, _settings.RootNamespace, _settings.SoFolderAssetPath); + bool ok = _assetSynchronizer.SynchronizeAll(json, selected, _settings.RootNamespace, _settings.SoFolderAssetPath); if (_settings.AutoRegisterToAddressables) { - foreach (var soPath in _soSynchronizer.UpdatedSoAssetPaths) + foreach (var soPath in _assetSynchronizer.AssetUpdatedAssetPaths) _addressablesRegistrar.RegisterOrMoveEntry(soPath, _settings.AddressablesGroupName, _settings.AddressablesLabel); _addressablesRegistrar.SaveAll(); _addressablesRegistrar.BuildIfNeeded(_settings.AutoBuildAddressables);