From d671b91e9295808633814ecc9586bc31fbdf5ce5 Mon Sep 17 00:00:00 2001 From: NTG Date: Tue, 26 Aug 2025 20:56:15 +0900 Subject: [PATCH] =?UTF-8?q?cookui=20=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 --- .../Fonts & Materials/GodoM SDF.asset | 4 +- .../Prefabs/Uis/GameUi/PopupUis/CookUi.prefab | 26 ++-- .../So/InventoryTestDataSo.asset | 4 +- .../CookUi_UiActionsInputBinding.asset | 2 +- .../_Raw/Sprites/Ui/Foods/item_food_002.png | 4 +- .../_Raw/Sprites/Ui/Foods/item_food_005.png | 3 + .../Sprites/Ui/Foods/item_food_005.png.meta | 143 ++++++++++++++++++ .../_Raw/Sprites/Ui/Foods/item_food_006.png | 4 +- .../_Raw/Sprites/Ui/Foods/item_food_016.png | 3 + .../Sprites/Ui/Foods/item_food_016.png.meta | 143 ++++++++++++++++++ .../_Raw/Sprites/Ui/Foods/item_food_017.png | 4 +- .../Ui/Ingredients/item_ingredient_002.png | 4 +- .../Ui/Ingredients/item_ingredient_013.png | 3 + .../Ingredients/item_ingredient_013.png.meta | 143 ++++++++++++++++++ .../Ui/Ingredients/item_ingredient_017.png | 3 + .../Ingredients/item_ingredient_017.png.meta | 143 ++++++++++++++++++ .../Ui/Ingredients/item_ingredient_018.png | 4 +- .../Ui/Ingredients/item_ingredient_022.png | 4 +- .../GameUi/BaseUi/PopupUis/CookUi/CookUi.cs | 47 +++++- .../BaseUi/PopupUis/CookUi/CookViewModel.cs | 36 +++-- .../RestaurantManagementUi.cs | 54 +++---- Assets/_DDD/_Scripts/GameUi/CommonButton.cs | 32 +++- 22 files changed, 730 insertions(+), 83 deletions(-) create mode 100644 Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_005.png create mode 100644 Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_005.png.meta create mode 100644 Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_016.png create mode 100644 Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_016.png.meta create mode 100644 Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_013.png create mode 100644 Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_013.png.meta create mode 100644 Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_017.png create mode 100644 Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_017.png.meta diff --git a/Assets/TextMesh Pro/Resources/Fonts & Materials/GodoM SDF.asset b/Assets/TextMesh Pro/Resources/Fonts & Materials/GodoM SDF.asset index 0ff2c7f39..b1fd44a06 100644 --- a/Assets/TextMesh Pro/Resources/Fonts & Materials/GodoM SDF.asset +++ b/Assets/TextMesh Pro/Resources/Fonts & Materials/GodoM SDF.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:81793b1b3bfb56eb214ac22c98ef07315eb152da9ae87c58581c88991acb2818 -size 8281328 +oid sha256:70fa970e699b0ff048d5a98be14fa7beb0daab30ff37fe8c4e81e9e4039e6784 +size 8281861 diff --git a/Assets/_DDD/_Addressables/Prefabs/Uis/GameUi/PopupUis/CookUi.prefab b/Assets/_DDD/_Addressables/Prefabs/Uis/GameUi/PopupUis/CookUi.prefab index d9c365bd0..3d1c8f020 100644 --- a/Assets/_DDD/_Addressables/Prefabs/Uis/GameUi/PopupUis/CookUi.prefab +++ b/Assets/_DDD/_Addressables/Prefabs/Uis/GameUi/PopupUis/CookUi.prefab @@ -981,19 +981,19 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4250572641673376081, guid: f24fb953ac9ddf547b7d995610f03ca4, type: 3} propertyPath: m_AnchorMax.y - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 4250572641673376081, guid: f24fb953ac9ddf547b7d995610f03ca4, type: 3} propertyPath: m_AnchorMin.y - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 4250572641673376081, guid: f24fb953ac9ddf547b7d995610f03ca4, type: 3} propertyPath: m_SizeDelta.x - value: 0 + value: 36.4 objectReference: {fileID: 0} - target: {fileID: 4250572641673376081, guid: f24fb953ac9ddf547b7d995610f03ca4, type: 3} propertyPath: m_AnchoredPosition.x - value: 0 + value: 33.2 objectReference: {fileID: 0} - target: {fileID: 4250572641673376081, guid: f24fb953ac9ddf547b7d995610f03ca4, type: 3} propertyPath: m_AnchoredPosition.y @@ -3243,7 +3243,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2550093527582931782, guid: 3e9030561e4db584cb648f33c4315e6b, type: 3} propertyPath: m_SizeDelta.x - value: 0 + value: 328.28 objectReference: {fileID: 0} - target: {fileID: 2678955646328359672, guid: 3e9030561e4db584cb648f33c4315e6b, type: 3} propertyPath: m_IsActive @@ -3303,27 +3303,27 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 5145197518110156248, guid: 3e9030561e4db584cb648f33c4315e6b, type: 3} propertyPath: m_AnchorMax.y - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 5145197518110156248, guid: 3e9030561e4db584cb648f33c4315e6b, type: 3} propertyPath: m_AnchorMin.y - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 5145197518110156248, guid: 3e9030561e4db584cb648f33c4315e6b, type: 3} propertyPath: m_SizeDelta.x - value: 0 + value: 61.21 objectReference: {fileID: 0} - target: {fileID: 5145197518110156248, guid: 3e9030561e4db584cb648f33c4315e6b, type: 3} propertyPath: m_SizeDelta.y - value: 0 + value: 40.69 objectReference: {fileID: 0} - target: {fileID: 5145197518110156248, guid: 3e9030561e4db584cb648f33c4315e6b, type: 3} propertyPath: m_AnchoredPosition.x - value: 0 + value: 85.744995 objectReference: {fileID: 0} - target: {fileID: 5145197518110156248, guid: 3e9030561e4db584cb648f33c4315e6b, type: 3} propertyPath: m_AnchoredPosition.y - value: 0 + value: -4.1550007 objectReference: {fileID: 0} - target: {fileID: 5414520022118496509, guid: 3e9030561e4db584cb648f33c4315e6b, type: 3} propertyPath: m_AnchorMax.y @@ -5266,11 +5266,11 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 3193108641552257316, guid: 3042958ab9668ed4aa25e965fc39b7f9, type: 3} propertyPath: m_AnchorMax.x - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 3193108641552257316, guid: 3042958ab9668ed4aa25e965fc39b7f9, type: 3} propertyPath: m_AnchorMax.y - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 3193108641552257316, guid: 3042958ab9668ed4aa25e965fc39b7f9, type: 3} propertyPath: m_SizeDelta.x diff --git a/Assets/_DDD/_Addressables/So/InventoryTestDataSo.asset b/Assets/_DDD/_Addressables/So/InventoryTestDataSo.asset index 724f2ea9e..94c6ebf02 100644 --- a/Assets/_DDD/_Addressables/So/InventoryTestDataSo.asset +++ b/Assets/_DDD/_Addressables/So/InventoryTestDataSo.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f30310035b7a40924cf412a12716865b4caf5ab240b7779a28c5c43eb9575081 -size 1394 +oid sha256:c455ee01cc0089f452926620078e8c808fba84c738a63488be83cebce199a848 +size 1929 diff --git a/Assets/_DDD/_Addressables/So/UiActionInputBinding/CookUi_UiActionsInputBinding.asset b/Assets/_DDD/_Addressables/So/UiActionInputBinding/CookUi_UiActionsInputBinding.asset index 721f48e12..68f9d1e95 100644 --- a/Assets/_DDD/_Addressables/So/UiActionInputBinding/CookUi_UiActionsInputBinding.asset +++ b/Assets/_DDD/_Addressables/So/UiActionInputBinding/CookUi_UiActionsInputBinding.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2e2071ac5981e4d62e2738f900fe73d1b4018109cfab917382ca6cf3da33e3b5 +oid sha256:0dc05f9a4909c1240de69a1ff7510b3c9200cbe285cc3d73d13608aa51851b3f size 459 diff --git a/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_002.png b/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_002.png index d30a9d045..d0a8085c3 100644 --- a/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_002.png +++ b/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_002.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2644f4b5f4fbb92320e41960e2a2b9e95ec220666278d65e50846eefc8f5a9a7 -size 185194 +oid sha256:567e2b03e16d9694ebf6b14339553a3753ed14eccd60e27ed9664d9c8bce11a1 +size 153143 diff --git a/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_005.png b/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_005.png new file mode 100644 index 000000000..eb2b52b29 --- /dev/null +++ b/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_005.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5bc2329750f3a3576112a873d17c7586ea2f651d92c163176fcaf16c7ec36bfb +size 196479 diff --git a/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_005.png.meta b/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_005.png.meta new file mode 100644 index 000000000..60324fbe4 --- /dev/null +++ b/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_005.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: b8fee145f70373b4596fe4117078d011 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 2 + spriteMeshType: 0 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_006.png b/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_006.png index 5b74b01c9..6851f5d76 100644 --- a/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_006.png +++ b/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_006.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:70a01fc39d22dccf836aa9461b487c3d5c31cb20a9016a84ddf9aad191e73131 -size 197527 +oid sha256:44dc4b622cac4c7b67b04624248168a624c9e006cda2f43c585cecb2c9837abe +size 183898 diff --git a/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_016.png b/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_016.png new file mode 100644 index 000000000..4e3fc0164 --- /dev/null +++ b/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_016.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77e71b20c3b95e01bd775b9492c27ae7c334d0331ac71bf6b465150a15db427f +size 283929 diff --git a/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_016.png.meta b/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_016.png.meta new file mode 100644 index 000000000..df7a2d055 --- /dev/null +++ b/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_016.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: c645b09a761bd1041b026cdd4e10168c +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 2 + spriteMeshType: 0 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_017.png b/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_017.png index afd14eeb4..25a8fa983 100644 --- a/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_017.png +++ b/Assets/_DDD/_Raw/Sprites/Ui/Foods/item_food_017.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:81aedc6ac6bd32038288f498d40fe2f4c40a46802fd9137836d9aea5db65bb2c -size 199235 +oid sha256:121f2ff139abc88f219d071c13bd4ccad87477c706757f3e1607c094c9fe8cbb +size 146535 diff --git a/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_002.png b/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_002.png index 18859d862..857834220 100644 --- a/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_002.png +++ b/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_002.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:609f9f719e736dd19d5390f7ae9b29dc643f0634e61fbfc566f4347ae0750a34 -size 118713 +oid sha256:bc653b12782fd7a6d0b2b09826257510759bbed7e96a80b77925848ee9842937 +size 113192 diff --git a/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_013.png b/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_013.png new file mode 100644 index 000000000..03805e779 --- /dev/null +++ b/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_013.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:883adbff7d675b9d13360ceba48c2dd964329cb6f14ee65fb461ab8a508c6288 +size 145238 diff --git a/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_013.png.meta b/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_013.png.meta new file mode 100644 index 000000000..0b3aa9030 --- /dev/null +++ b/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_013.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: 4091831a3196f7048927025a6dc73285 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 2 + spriteMeshType: 0 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_017.png b/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_017.png new file mode 100644 index 000000000..14a04e925 --- /dev/null +++ b/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_017.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72788210d1e7ca82068b75c796345975ae30e52a0855f1017af9829b42f29524 +size 164149 diff --git a/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_017.png.meta b/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_017.png.meta new file mode 100644 index 000000000..44e498684 --- /dev/null +++ b/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_017.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: 53fd7887c1fe5df4abc5cad287987832 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 2 + spriteMeshType: 0 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WindowsStoreApps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_018.png b/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_018.png index 72bd9ed35..7d06ebd7c 100644 --- a/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_018.png +++ b/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_018.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:177a200e331453bf31769f348b5ab8f0ea150296a8d65f77448c72e8550336ba -size 123080 +oid sha256:2b2d00cb5dcd0828c5ba260b8df3d9d29ba05528f8ff6179c02f6cc26205b9d6 +size 154893 diff --git a/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_022.png b/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_022.png index de6ced742..fb95ca6f7 100644 --- a/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_022.png +++ b/Assets/_DDD/_Raw/Sprites/Ui/Ingredients/item_ingredient_022.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7024e6f234514efd322d990f315174940f36ec4f978e2f6f4f5dc488c7c75d02 -size 85355 +oid sha256:2745c6513543be240a71986e4e14e9208c5b17e8ca84e4e59c516a0901bbaf80 +size 175924 diff --git a/Assets/_DDD/_Scripts/GameUi/BaseUi/PopupUis/CookUi/CookUi.cs b/Assets/_DDD/_Scripts/GameUi/BaseUi/PopupUis/CookUi/CookUi.cs index 04ff5b83c..a832c1b1a 100644 --- a/Assets/_DDD/_Scripts/GameUi/BaseUi/PopupUis/CookUi/CookUi.cs +++ b/Assets/_DDD/_Scripts/GameUi/BaseUi/PopupUis/CookUi/CookUi.cs @@ -1,6 +1,9 @@ +using System; using System.Collections.Generic; using TMPro; using UnityEngine; +using UnityEngine.EventSystems; +using UnityEngine.InputSystem; using UnityEngine.Localization.Components; using UnityEngine.UI; @@ -72,8 +75,9 @@ protected override void SetupBindings() { base.SetupBindings(); - BindingHelper.BindImage(_bindingContext, _cookwareImage, viewModel => viewModel.SelectedCookSnapshot.CookwareIcon); - BindingHelper.BindLocalizedStringEvent(_bindingContext, _cookwareName, viewModel => viewModel.SelectedCookSnapshot.CookwareName); + BindingHelper.BindImage(_bindingContext, _cookwareImage, nameof(_viewModel.CookwareIcon)); + BindingHelper.BindLocalizedStringEvent(_bindingContext, _cookwareName, nameof(_viewModel.CookwareName)); + BindingHelper.BindLocalizedStringEvent(_bindingContext, _cookName, viewModel => viewModel.SelectedCookSnapshot.Name); BindingHelper.BindLocalizedStringEvent(_bindingContext, _cookDescriptionName, viewModel => viewModel.SelectedCookSnapshot.Description); BindingHelper.BindText(_bindingContext, _cookPrice, viewModel => viewModel.SelectedCookSnapshot.CookPrice); @@ -82,9 +86,41 @@ protected override void SetupBindings() protected override GameObject GetInitialSelected() { + if (IsInitialized == false) return null; + + var initialSelected = _selectedIngredients[0].gameObject; + if (initialSelected) + { + return initialSelected; + } + return null; } + + protected override bool OnInputPerformed(RestaurantUiActions actionEnum, InputAction.CallbackContext context) + { + if (base.OnInputPerformed(actionEnum, context) == false) return false; + + switch (actionEnum) + { + case RestaurantUiActions.Cancel: + Close(); + break; + case RestaurantUiActions.Interact1: + HandleInteract1(); + break; + } + + return true; + } + private void HandleInteract1() + { + var selected = EventSystem.current.currentSelectedGameObject; + var interactable = selected?.GetComponent(); + interactable?.OnInteract(); + } + private void OnAddedCookTabSelected(int index) { _viewModel.SetAddedCook(index); @@ -94,9 +130,14 @@ private void OnAddedCookTabSelected(int index) private void OnAddedIngredients() { + var ingredients = _viewModel.SelectedCookSlot.Model.GetIngredients; for (int i = 0; i < _selectedIngredients.Count; i++) { - var ingredient = _viewModel.SelectedCookSlot.Model.GetIngredients[i]; + IngredientEntry ingredient = null; + if (ingredients != null && i < ingredients.Count) + { + ingredient = ingredients[i]; + } _selectedIngredients[i].SetIngredientEntry(ingredient); } } diff --git a/Assets/_DDD/_Scripts/GameUi/BaseUi/PopupUis/CookUi/CookViewModel.cs b/Assets/_DDD/_Scripts/GameUi/BaseUi/PopupUis/CookUi/CookViewModel.cs index bd6fbd48c..c1a2baf76 100644 --- a/Assets/_DDD/_Scripts/GameUi/BaseUi/PopupUis/CookUi/CookViewModel.cs +++ b/Assets/_DDD/_Scripts/GameUi/BaseUi/PopupUis/CookUi/CookViewModel.cs @@ -6,10 +6,8 @@ namespace DDD { - public sealed class SelectedCookSnapshot + public class SelectedCookSnapshot { - public Sprite CookwareIcon { get; } - public LocalizedString CookwareName { get; } public LocalizedString Name { get; } public LocalizedString Description { get; } public Sprite CookIcon { get; } @@ -18,12 +16,10 @@ public sealed class SelectedCookSnapshot public IReadOnlyList Tastes { get; } public Material TasteMaterial { get; } - public SelectedCookSnapshot(Sprite cookwareIcon, LocalizedString cookwareName, LocalizedString name, + public SelectedCookSnapshot(LocalizedString name, LocalizedString description, Sprite cookIcon, string cookPrice, IReadOnlyList ingredientEntries, IReadOnlyList tastes, Material tasteMaterial) { - CookwareIcon = cookwareIcon; - CookwareName = cookwareName; Name = name; Description = description; CookIcon = cookIcon; @@ -34,8 +30,6 @@ public SelectedCookSnapshot(Sprite cookwareIcon, LocalizedString cookwareName, L } public static readonly SelectedCookSnapshot Empty = new( - cookwareIcon: null, - cookwareName: null, name: null, description: null, cookIcon: null, @@ -47,9 +41,23 @@ public SelectedCookSnapshot(Sprite cookwareIcon, LocalizedString cookwareName, L public class CookViewModel : SimpleViewModel { - private CookwareType _currentCookwareType; + private CookwareType _currentCookwareType = CookwareType.None; private List _addedCookItemSlots; + private Sprite _cookwareIcon; + public Sprite CookwareIcon + { + get => _cookwareIcon; + set => SetField(ref _cookwareIcon, value); + } + + private LocalizedString _cookwareName; + public LocalizedString CookwareName + { + get => _cookwareName; + set => SetField(ref _cookwareName, value); + } + private SelectedCookSnapshot _selectedCookSnapshot = SelectedCookSnapshot.Empty; public SelectedCookSnapshot SelectedCookSnapshot { @@ -74,6 +82,8 @@ public int CurrentCookIndex public void SetCookwareType(CookwareType cookwareType) { _currentCookwareType = cookwareType; + var cookwareDatas = DataManager.Instance.GetDataSo().GetDataList(); + // CookwareIcon = cookwareDatas.Find(data => data.CookwareType == cookwareType).Id; } public void SetAddedCook(int index) @@ -83,7 +93,7 @@ public void SetAddedCook(int index) CurrentCookIndex = index; BeginUpdate(); SelectedCookSlot = _addedCookItemSlots[index]; - RecomputeSelectedCook(); + UpdateSelectedCook(); EndUpdate(); } @@ -139,13 +149,11 @@ public TasteHashTagSlotUi CreateHashTag(Transform parent) return Instantiate(GetRestaurantManagementData().TasteHashTagSlotUiPrefab, parent, false); } - private void RecomputeSelectedCook() + private void UpdateSelectedCook() { var selectedItemModel = SelectedCookSlot.Model; string key = selectedItemModel.GetRecipeResultKey; var cookwareKey = selectedItemModel.GetCookwareKey; - var cookwareSprite = selectedItemModel.GetCookwareIcon; - var cookwareName = LocalizationManager.Instance.GetLocalizedName(cookwareKey); var nameLocalizedString = LocalizationManager.Instance.GetLocalizedName(key); var descriptionLocalizedString = LocalizationManager.Instance.GetLocalizedDescription(key); var cookIcon = selectedItemModel.GetResultIcon; @@ -161,8 +169,6 @@ private void RecomputeSelectedCook() }; SelectedCookSnapshot = new SelectedCookSnapshot( - cookwareIcon: cookwareSprite, - cookwareName: cookwareName, name: nameLocalizedString, description: descriptionLocalizedString, cookIcon: cookIcon, diff --git a/Assets/_DDD/_Scripts/GameUi/BaseUi/PopupUis/RestaurantManagementUi/RestaurantManagementUi.cs b/Assets/_DDD/_Scripts/GameUi/BaseUi/PopupUis/RestaurantManagementUi/RestaurantManagementUi.cs index 1b7e625bc..4fe2315b6 100644 --- a/Assets/_DDD/_Scripts/GameUi/BaseUi/PopupUis/RestaurantManagementUi/RestaurantManagementUi.cs +++ b/Assets/_DDD/_Scripts/GameUi/BaseUi/PopupUis/RestaurantManagementUi/RestaurantManagementUi.cs @@ -254,48 +254,42 @@ private void OnCategoryTabSelected(int categoryValue) // 입력 처리 - ViewModel로 위임 protected override bool OnInputPerformed(RestaurantUiActions actionEnum, InputAction.CallbackContext context) { - var isHandled = base.OnInputPerformed(actionEnum, context); + if (base.OnInputPerformed(actionEnum, context) == false) return false; - if (isHandled && _viewModel != null) + switch (actionEnum) { - switch (actionEnum) - { - case RestaurantUiActions.Cancel: - _viewModel.CloseUi(); - break; - case RestaurantUiActions.PreviousTab: - _viewModel.MoveTab(-1); - break; - case RestaurantUiActions.NextTab: - _viewModel.MoveTab(1); - break; - case RestaurantUiActions.Interact1: - _viewModel.InteractWithSelected(); - break; - case RestaurantUiActions.Interact2: - _viewModel.StartHold(); - break; - } + case RestaurantUiActions.Cancel: + _viewModel.CloseUi(); + break; + case RestaurantUiActions.PreviousTab: + _viewModel.MoveTab(-1); + break; + case RestaurantUiActions.NextTab: + _viewModel.MoveTab(1); + break; + case RestaurantUiActions.Interact1: + _viewModel.InteractWithSelected(); + break; + case RestaurantUiActions.Interact2: + _viewModel.StartHold(); + break; } - return isHandled; + return true; } protected override bool OnInputCanceled(RestaurantUiActions actionEnum, InputAction.CallbackContext context) { - var isHandled = base.OnInputCanceled(actionEnum, context); + if (base.OnInputPerformed(actionEnum, context) == false) return false; - if (isHandled && _viewModel) + switch (actionEnum) { - switch (actionEnum) - { - case RestaurantUiActions.Interact2: - _viewModel.CancelHold(); - break; - } + case RestaurantUiActions.Interact2: + _viewModel.CancelHold(); + break; } - return isHandled; + return true; } } } \ No newline at end of file diff --git a/Assets/_DDD/_Scripts/GameUi/CommonButton.cs b/Assets/_DDD/_Scripts/GameUi/CommonButton.cs index ad9a94db8..f9619ac05 100644 --- a/Assets/_DDD/_Scripts/GameUi/CommonButton.cs +++ b/Assets/_DDD/_Scripts/GameUi/CommonButton.cs @@ -150,7 +150,10 @@ public void OnPointerEnter(PointerEventData eventData) } else if (_buttonType == ButtonType.Toggle) { - _isHighlighted = true; + if (_isToggled == false) + { + _isHighlighted = true; + } } UpdateVisualState(); } @@ -165,7 +168,10 @@ public void OnPointerExit(PointerEventData eventData) } else if (_buttonType == ButtonType.Toggle) { - _isHighlighted = false; + if (_isToggled == false) + { + _isHighlighted = false; + } } UpdateVisualState(); } @@ -176,7 +182,17 @@ public void OnPointerDown(PointerEventData eventData) if (eventData.button == PointerEventData.InputButton.Left) { - _isPressed = true; + if (_buttonType == ButtonType.Normal) + { + _isPressed = true; + } + else if (_buttonType == ButtonType.Toggle) + { + if (_isToggled == false) + { + _isPressed = true; + } + } UpdateVisualState(); } } @@ -211,7 +227,10 @@ public void OnSelect(BaseEventData eventData) } else if (_buttonType == ButtonType.Toggle) { - _isHighlighted = true; + if (_isToggled == false) + { + _isHighlighted = true; + } } UpdateVisualState(); } @@ -226,7 +245,10 @@ public void OnDeselect(BaseEventData eventData) } else if (_buttonType == ButtonType.Toggle) { - _isHighlighted = false; + if (_isToggled == false) + { + _isHighlighted = false; + } } UpdateVisualState(); }