RestaurantOrder Serve 상태일 때 음식 표시

This commit is contained in:
Jeonghyeon Ha 2025-09-01 16:26:38 +09:00
parent 32d2e31b50
commit 529da3b713
26 changed files with 437 additions and 46 deletions

View File

@ -141,6 +141,7 @@ MonoBehaviour:
SerializedFormat: 2
SerializedBytes:
ReferencedUnityObjects:
- {fileID: 2100000, guid: 3420d0083698c4732af621bf37a11cbb, type: 2}
- {fileID: 2100000, guid: cecea4c48dc174e34973ec5b33b2b2a9, type: 2}
SerializedBytesString:
Prefab: {fileID: 0}
@ -187,7 +188,7 @@ MonoBehaviour:
Data: 2
- Name: $v
Entry: 10
Data: 0
Data: 1
- Name:
Entry: 8
Data:
@ -201,8 +202,8 @@ MonoBehaviour:
_defaultSprite: {fileID: 21300000, guid: 94f9e78fc7b864b93842bdfa21276f09, type: 3}
_offset: {x: 0, y: 1.5, z: 1.35}
_disabledOffset: {x: 0, y: 0.2, z: 0.165}
_fixedLocalScale: {x: 0.2, y: 0.2}
_disabledColor: {r: 0.6627451, g: 0.6627451, b: 0.6627451, a: 0.5}
_fixedLocalScale: {x: 0.3, y: 0.3}
_disabledColor: {r: 0.6627451, g: 0.6627451, b: 0.6627451, a: 0.65882355}
--- !u!114 &1332098886975329103
MonoBehaviour:
m_ObjectHideFlags: 0

View File

@ -0,0 +1,368 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SpatialUi_SpriteBubble_Translucent
m_Shader: {fileID: 4800000, guid: 13c02b14c4d048fa9653293d54f6e0e1, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses:
- MOTIONVECTORS
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _AlphaTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BackgroundTexture:
m_Texture: {fileID: 2800000, guid: f88e7478e74a14cb6a820978eb9f452f, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ColorRampTex:
m_Texture: {fileID: 2800000, guid: 279657edc397ece4b8029c727adf6ddc, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ColorRampTexGradient:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ColorSwapTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DistortTex:
m_Texture: {fileID: 2800000, guid: 7aad8c583ef292e48b06af0d1f2fab97, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _FadeBurnTex:
m_Texture: {fileID: 2800000, guid: 677cca399782dea41aedc1d292ecb67d, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _FadeTex:
m_Texture: {fileID: 2800000, guid: 7aad8c583ef292e48b06af0d1f2fab97, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _GlowTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: 94f9e78fc7b864b93842bdfa21276f09, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OutlineDistortTex:
m_Texture: {fileID: 2800000, guid: 7aad8c583ef292e48b06af0d1f2fab97, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OutlineTex:
m_Texture: {fileID: 2800000, guid: 74087f6d03f233e4a8a142fa01f9e5cf, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OverlayTex:
m_Texture: {fileID: 2800000, guid: 677cca399782dea41aedc1d292ecb67d, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ShineMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpriteTexture:
m_Texture: {fileID: 2800000, guid: 7394cfdc5ad4642058b80a859c8a7319, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- PixelSnap: 0
- _AddPrecomputedVelocity: 0
- _Alpha: 1
- _AlphaClip: 0
- _AlphaCutoffValue: 0.25
- _AlphaOutlineBlend: 1
- _AlphaOutlineGlow: 5
- _AlphaOutlineMinAlpha: 0
- _AlphaOutlinePower: 1
- _AlphaRoundThreshold: 0.5
- _AlphaToMask: 0
- _BillboardY: 0
- _Blend: 0
- _BlendModePreserveSpecular: 1
- _BlurHD: 0
- _BlurIntensity: 10
- _Brightness: 0
- _BumpScale: 1
- _ChromAberrAlpha: 0.4
- _ChromAberrAmount: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _ClipUvDown: 0
- _ClipUvLeft: 0
- _ClipUvRight: 0
- _ClipUvUp: 0
- _ColorChangeLuminosity: 0
- _ColorChangeTolerance: 0.25
- _ColorChangeTolerance2: 0.25
- _ColorChangeTolerance3: 0.25
- _ColorMask: 15
- _ColorRampBlend: 1
- _ColorRampLuminosity: 0
- _ColorRampOutline: 0
- _ColorSwapBlend: 1
- _ColorSwapBlueLuminosity: 0.5
- _ColorSwapGreenLuminosity: 0.5
- _ColorSwapRedLuminosity: 0.5
- _Contrast: 1
- _Cull: 2
- _CullingOption: 0
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DistortAmount: 0.5
- _DistortTexXSpeed: 5
- _DistortTexYSpeed: 5
- _DstBlend: 0
- _DstBlendAlpha: 0
- _EditorDrawers: 6
- _EnableExternalAlpha: 0
- _EnvironmentReflections: 1
- _FadeAmount: -0.1
- _FadeBurnGlow: 2
- _FadeBurnTransition: 0.075
- _FadeBurnWidth: 0.025
- _FishEyeUvAmount: 0.35
- _FlickerAlpha: 0
- _FlickerFreq: 0.2
- _FlickerPercent: 0.05
- _GhostBlend: 1
- _GhostColorBoost: 1
- _GhostTransparency: 0
- _GlitchAmount: 3
- _GlitchSize: 1
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _Glow: 10
- _GlowGlobal: 1
- _GradBlend: 1
- _GradBoostX: 1.2
- _GradBoostY: 1.2
- _GradIsRadial: 0
- _GrassManualAnim: 1
- _GrassManualToggle: 0
- _GrassRadialBend: 0.1
- _GrassSpeed: 2
- _GrassWind: 20
- _GreyscaleBlend: 1
- _GreyscaleLuminosity: 0
- _GreyscaleOutline: 0
- _HandDrawnAmount: 10
- _HandDrawnSpeed: 5
- _HitEffectBlend: 1
- _HitEffectGlow: 5
- _HologramBlend: 1
- _HologramMaxAlpha: 0.75
- _HologramMinAlpha: 0.1
- _HologramStripesAmount: 0.1
- _HologramStripesSpeed: 4.5
- _HologramUnmodAmount: 0
- _HsvBright: 1
- _HsvSaturation: 1
- _HsvShift: 180
- _InnerOutlineAlpha: 1
- _InnerOutlineGlow: 4
- _InnerOutlineThickness: 1
- _MaxXUV: 1
- _MaxYUV: 1
- _Metallic: 0
- _MinXUV: 0
- _MinYUV: 0
- _MotionBlurAngle: 0.1
- _MotionBlurDist: 1.25
- _MyDstMode: 10
- _MySrcMode: 5
- _NegativeAmount: 1
- _OcclusionStrength: 1
- _OffsetUvX: 0
- _OffsetUvY: 0
- _OnlyInnerOutline: 0
- _OnlyOutline: 0
- _OutlineAlpha: 1
- _OutlineDistortAmount: 0.5
- _OutlineDistortTexXSpeed: 5
- _OutlineDistortTexYSpeed: 5
- _OutlineGlow: 1.5
- _OutlinePixelWidth: 1
- _OutlineTexXSpeed: 10
- _OutlineTexYSpeed: 0
- _OutlineWidth: 0.004
- _OverlayBlend: 1
- _OverlayGlow: 1
- _OverlayTextureScrollXSpeed: 0.25
- _OverlayTextureScrollYSpeed: 0.25
- _Parallax: 0.005
- _PinchUvAmount: 0.35
- _PixelateSize: 32
- _PosterizeGamma: 0.75
- _PosterizeNumColors: 8
- _PosterizeOutline: 0
- _QueueOffset: 0
- _RadialClip: 45
- _RadialClip2: 0
- _RadialStartAngle: 90
- _RandomSeed: 0
- _ReceiveShadows: 1
- _RectSize: 1
- _RotateUvAmount: 0
- _RoundWaveSpeed: 2
- _RoundWaveStrength: 0.7
- _ShadowAlpha: 0.5
- _ShadowX: 0.1
- _ShadowY: -0.05
- _ShakeUvSpeed: 2.5
- _ShakeUvX: 1.5
- _ShakeUvY: 1
- _ShineGlow: 1
- _ShineLocation: 0.5
- _ShineRotate: 0
- _ShineWidth: 0.1
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _SrcBlendAlpha: 1
- _Stencil: 0
- _StencilComp: 8
- _StencilOp: 0
- _StencilReadMask: 255
- _StencilWriteMask: 255
- _Surface: 0
- _TextureScrollXSpeed: 1
- _TextureScrollYSpeed: 0
- _TwistUvAmount: 1
- _TwistUvPosX: 0.5
- _TwistUvPosY: 0.5
- _TwistUvRadius: 0.75
- _WarpScale: 0.5
- _WarpSpeed: 8
- _WarpStrength: 0.025
- _WaveAmount: 7
- _WaveSpeed: 10
- _WaveStrength: 7.5
- _WaveX: 0
- _WaveY: 0.5
- _WorkflowMode: 1
- _XRMotionVectorsPass: 1
- _ZTestMode: 4
- _ZWrite: 1
- _ZoomUvAmount: 0.5
m_Colors:
- _AlphaOutlineColor: {r: 1, g: 1, b: 1, a: 1}
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _ColorChangeNewCol: {r: 1, g: 1, b: 0, a: 1}
- _ColorChangeNewCol2: {r: 1, g: 1, b: 0, a: 1}
- _ColorChangeNewCol3: {r: 1, g: 1, b: 0, a: 1}
- _ColorChangeTarget: {r: 1, g: 0, b: 0, a: 1}
- _ColorChangeTarget2: {r: 1, g: 0, b: 0, a: 1}
- _ColorChangeTarget3: {r: 1, g: 0, b: 0, a: 1}
- _ColorSwapBlue: {r: 1, g: 1, b: 1, a: 1}
- _ColorSwapGreen: {r: 1, g: 1, b: 1, a: 1}
- _ColorSwapRed: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _FadeBurnColor: {r: 1, g: 1, b: 0, a: 1}
- _Flip: {r: 1, g: 1, b: 1, a: 1}
- _GlowColor: {r: 1, g: 1, b: 1, a: 1}
- _GradBotLeftCol: {r: 0, g: 0, b: 1, a: 1}
- _GradBotRightCol: {r: 0, g: 1, b: 0, a: 1}
- _GradTopLeftCol: {r: 1, g: 0, b: 0, a: 1}
- _GradTopRightCol: {r: 1, g: 1, b: 0, a: 1}
- _GreyscaleTintColor: {r: 1, g: 1, b: 1, a: 1}
- _HitEffectColor: {r: 1, g: 1, b: 1, a: 1}
- _HologramStripeColor: {r: 0, g: 1, b: 1, a: 1}
- _InnerOutlineColor: {r: 1, g: 0, b: 0, a: 1}
- _OutlineColor: {r: 1, g: 1, b: 1, a: 1}
- _OverlayColor: {r: 1, g: 1, b: 1, a: 1}
- _RendererColor: {r: 1, g: 1, b: 1, a: 1}
- _ShadowColor: {r: 0, g: 0, b: 0, a: 1}
- _ShineColor: {r: 1, g: 1, b: 1, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []
m_AllowLocking: 1
--- !u!114 &5575994803489782819
MonoBehaviour:
m_ObjectHideFlags: 11
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: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 9

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 3420d0083698c4732af621bf37a11cbb
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -48,7 +48,7 @@ TextureImporter:
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spritePixelsToUnits: 256
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1

View File

@ -48,7 +48,7 @@ TextureImporter:
spriteMeshType: 0
alignment: 0
spritePivot: {x: 0.5, y: 0.1015625}
spritePixelsToUnits: 100
spritePixelsToUnits: 512
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1

View File

@ -48,7 +48,7 @@ TextureImporter:
spriteMeshType: 0
alignment: 0
spritePivot: {x: 0.5, y: 0.068359375}
spritePixelsToUnits: 100
spritePixelsToUnits: 512
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1

View File

@ -48,7 +48,7 @@ TextureImporter:
spriteMeshType: 0
alignment: 0
spritePivot: {x: 0.5, y: 0.1171875}
spritePixelsToUnits: 100
spritePixelsToUnits: 512
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1

View File

@ -48,7 +48,7 @@ TextureImporter:
spriteMeshType: 0
alignment: 0
spritePivot: {x: 0.5, y: 0.109375}
spritePixelsToUnits: 100
spritePixelsToUnits: 512
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1

View File

@ -48,7 +48,7 @@ TextureImporter:
spriteMeshType: 0
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spritePixelsToUnits: 512
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1

View File

@ -48,7 +48,7 @@ TextureImporter:
spriteMeshType: 0
alignment: 0
spritePivot: {x: 0.5, y: 0.12890625}
spritePixelsToUnits: 100
spritePixelsToUnits: 512
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1

View File

@ -48,7 +48,7 @@ TextureImporter:
spriteMeshType: 0
alignment: 0
spritePivot: {x: 0.5, y: 0.083984375}
spritePixelsToUnits: 100
spritePixelsToUnits: 512
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1

View File

@ -48,7 +48,7 @@ TextureImporter:
spriteMeshType: 0
alignment: 0
spritePivot: {x: 0.5, y: 0.091796875}
spritePixelsToUnits: 100
spritePixelsToUnits: 512
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1

View File

@ -48,7 +48,7 @@ TextureImporter:
spriteMeshType: 0
alignment: 0
spritePivot: {x: 0.5, y: 0.021484375}
spritePixelsToUnits: 100
spritePixelsToUnits: 512
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1

View File

@ -48,7 +48,7 @@ TextureImporter:
spriteMeshType: 0
alignment: 0
spritePivot: {x: 0.5, y: 0.05859375}
spritePixelsToUnits: 100
spritePixelsToUnits: 512
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1

View File

@ -48,7 +48,7 @@ TextureImporter:
spriteMeshType: 0
alignment: 0
spritePivot: {x: 0.5, y: 0.044921875}
spritePixelsToUnits: 100
spritePixelsToUnits: 512
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1

View File

@ -48,7 +48,7 @@ TextureImporter:
spriteMeshType: 0
alignment: 0
spritePivot: {x: 0.5, y: 0.0703125}
spritePixelsToUnits: 100
spritePixelsToUnits: 512
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1

View File

@ -48,7 +48,7 @@ TextureImporter:
spriteMeshType: 0
alignment: 0
spritePivot: {x: 0.5, y: 0.05078125}
spritePixelsToUnits: 100
spritePixelsToUnits: 512
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1

View File

@ -48,7 +48,7 @@ TextureImporter:
spriteMeshType: 0
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spritePixelsToUnits: 512
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1

View File

@ -48,7 +48,7 @@ TextureImporter:
spriteMeshType: 0
alignment: 0
spritePivot: {x: 0.5, y: 0.03515625}
spritePixelsToUnits: 100
spritePixelsToUnits: 512
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1

View File

@ -47,7 +47,7 @@ public static void OnPreprocessTextureForUi(TextureImporter importer)
importer.spriteImportMode = SpriteImportMode.Single;
// 기본 PPU (UI는 100 또는 1 고정 추천)
importer.spritePixelsPerUnit = 100f;
// importer.spritePixelsPerUnit = 100f;
importer.sRGBTexture = true;
importer.isReadable = false;

View File

@ -19,6 +19,7 @@ public class RestaurantOrderObjectState
public GameObject Customer;
public GameObject Worker;
public string RecipeId;
public string FoodId;
}

View File

@ -15,7 +15,7 @@ public string MenuId
public class RestaurantOrderEvent : IEvent
{
public string RecipeId;
public RestaurantOrderObjectState OrderObjectState;
}
public class RestaurantOrderSolver_Order : RestaurantOrderSolverBase
@ -27,30 +27,34 @@ public override bool ExecuteInteractionSubsystem(IInteractor interactor, IIntera
var highlightComponent = highlightObject?.GetComponent<IInteractionHighlight>();
highlightComponent?.ClearHighlightProxy();
// Worker takes the order
var orderObject = GetRestaurantOrderObject(interactable);
if (orderObject != null)
{
orderObject.GetOrderObjectState().Worker = interactor.GetInteractorGameObject();
}
// Pick random menu from today's menu list
var foodCandidates = RestaurantState.Instance.ManagementState.GetTodayFoodMenus();
if (foodCandidates == null || foodCandidates.Count == 0)
var recipeCandidates = RestaurantState.Instance.ManagementState.GetTodayRecipes();
if (recipeCandidates == null || recipeCandidates.Count == 0)
{
Debug.LogError("[RestaurantOrderSolver_Order] No food menu found");
return false;
}
// TODO : 손님 데이터를 바탕으로 선호하는 음식을 골라야 할수도 있음. interactable에서 직접 가져오거나 payload로 전달받아야 함. payload를 받을 경우 RestaurantOrderMenuPayload와 통합해야함
var foodMenu = foodCandidates[Random.Range(0, foodCandidates.Count)];
var recipeMenu = recipeCandidates[Random.Range(0, recipeCandidates.Count)];
// Worker takes the order
var orderObject = GetRestaurantOrderObject(interactable);
if (orderObject != null)
{
orderObject.GetOrderObjectState().Worker = interactor.GetInteractorGameObject();
orderObject.GetOrderObjectState().RecipeId = recipeMenu;
var recipeData = DataManager.Instance.GetDataAsset<RecipeDataAsset>();
recipeData.TryGetDataById(recipeMenu, out var recipeDataEntry);
orderObject.GetOrderObjectState().FoodId = recipeDataEntry?.RecipeResult;
}
// Create payload and set the menu
RestaurantOrderMenuPayload orderPayload = ScriptableObject.CreateInstance<RestaurantOrderMenuPayload>();
orderPayload.MenuId = foodMenu;
orderPayload.MenuId = recipeMenu;
RestaurantOrderEvent evt = new RestaurantOrderEvent();
evt.RecipeId = foodMenu;
evt.OrderObjectState = orderObject?.GetOrderObjectState();
EventBus.Broadcast(evt);
return base.ExecuteInteractionSubsystem(interactor, interactable, payload);

View File

@ -63,12 +63,12 @@ public bool HasMatchedMenuWithCookware()
return _cookwareToRecipeMapping.Values.Any(recipeSet => recipeSet.Count > 0);
}
public List<string> GetTodayFoodMenus()
public List<string> GetTodayRecipes()
{
return _todayFoodRecipeAndAmounts.Keys.ToList();
}
public int GetTodayFoodAvailableCount(string recipeId)
public int GetTodayRecipeAvailableCount(string recipeId)
{
return _todayFoodRecipeAndAmounts.GetValueOrDefault(recipeId, 0);
}

View File

@ -19,12 +19,7 @@ private void Start()
public void HandleEvent(RestaurantOrderEvent evt)
{
var billItem = Instantiate(_billItemPrefab, _billItemsLayoutTransform);
var recipeData = DataManager.Instance.GetDataAsset<RecipeDataAsset>();
if (recipeData.TryGetDataById(evt.RecipeId, out var recipeDataEntry))
{
var sprite = DataManager.Instance.GetSprite(recipeDataEntry.RecipeResult);
billItem.GetComponent<Image>().sprite = sprite;
}
var sprite = DataManager.Instance.GetSprite(evt.OrderObjectState?.FoodId);
}
}
}

View File

@ -11,7 +11,7 @@ public abstract class PropUiDisplayComponent<T> : SerializedMonoBehaviour where
protected Vector3 _rotation = new Vector3(40.0f, 0, 0);
[SerializeField]
protected Sprite _defaultSprite;
private IInteractionSubsystemObject<T> _interactionSubsystemObject;
protected IInteractionSubsystemObject<T> _interactionSubsystemObject;
private Dictionary<T, Material> _internalMaterials;
private T _currentInteractionType;
protected IInteractable _interactable;
@ -37,7 +37,7 @@ protected virtual void Initialize()
var uiGameObject = Instantiate(new GameObject("TemporaryUi"), transform);
_spriteRenderer = uiGameObject.AddComponent<SpriteRenderer>();
_spriteRenderer.sprite = GetDisplaySprite();
UpdateSprite();
_spriteRenderer.enabled = false;
_spriteTransform = uiGameObject.transform;
@ -47,6 +47,11 @@ protected virtual void Initialize()
_internalMaterials = GetInteractionDisplayMaterials();
}
private void UpdateSprite()
{
_spriteRenderer.sprite = GetDisplaySprite();
}
protected virtual void UpdateSpriteTransform()
{
_spriteTransform.position = GetDisplayPosition();
@ -99,6 +104,7 @@ private void UpdateView(T state)
{
return;
}
UpdateSprite();
UpdateSpriteTransform();
}
@ -115,7 +121,8 @@ private bool UpdateSpriteMaterial(T state)
_spriteRenderer.enabled = false;
return false;
}
material.color = GetSpriteColor();
// material.color = Color.white;
_spriteRenderer.color = GetSpriteColor();
// ui 머티리얼 교체
_spriteRenderer.enabled = true;
_spriteRenderer.material = material;

View File

@ -37,9 +37,16 @@ protected override void UpdateSpriteTransform()
protected override Sprite GetDisplaySprite()
{
if (GetCurrentInteractionType() == RestaurantOrderType.Serve)
if (GetCurrentInteractionType() == RestaurantOrderType.Serve && _interactionSubsystemObject != null)
{
// TODO : Sprite by current restaurant order type. get from RestaurantOrderObject.
// Sprite by current restaurant order type. get from RestaurantOrderObject.
if (_interactionSubsystemObject is IRestaurantOrderObject orderObject)
{
string foodId = orderObject.GetOrderObjectState().FoodId;
Debug.Assert(foodId != null, nameof(foodId) + " != null");
var sprite = DataManager.Instance.GetSprite(foodId);
return sprite;
}
}
return base.GetDisplaySprite();
}