술 제조 작업 중2
This commit is contained in:
parent
9be98366fa
commit
a5b460bfe0
@ -118,6 +118,142 @@ NavMeshSettings:
|
||||
debug:
|
||||
m_Flags: 0
|
||||
m_NavMeshData: {fileID: 0}
|
||||
--- !u!1 &321671
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 321672}
|
||||
- component: {fileID: 321674}
|
||||
- component: {fileID: 321673}
|
||||
m_Layer: 5
|
||||
m_Name: CompleteText
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &321672
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 321671}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 1795654740}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 8}
|
||||
m_SizeDelta: {x: 0, y: 10}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &321673
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 321671}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_text: "\uC131\uACF5!\n\uB9DD\uB839 \uB9E5\uC8FC"
|
||||
m_isRightToLeft: 0
|
||||
m_fontAsset: {fileID: 11400000, guid: dabfdeb80b25d44b4ace56414d0eb4ad, type: 2}
|
||||
m_sharedMaterial: {fileID: 2100000, guid: 0e5360dce269ccc42b822a424d66fbd4, type: 2}
|
||||
m_fontSharedMaterials: []
|
||||
m_fontMaterial: {fileID: 0}
|
||||
m_fontMaterials: []
|
||||
m_fontColor32:
|
||||
serializedVersion: 2
|
||||
rgba: 4278255615
|
||||
m_fontColor: {r: 1, g: 1, b: 0, a: 1}
|
||||
m_enableVertexGradient: 0
|
||||
m_colorMode: 3
|
||||
m_fontColorGradient:
|
||||
topLeft: {r: 1, g: 1, b: 1, a: 1}
|
||||
topRight: {r: 1, g: 1, b: 1, a: 1}
|
||||
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
|
||||
bottomRight: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_fontColorGradientPreset: {fileID: 0}
|
||||
m_spriteAsset: {fileID: 0}
|
||||
m_tintAllSprites: 0
|
||||
m_StyleSheet: {fileID: 0}
|
||||
m_TextStyleHashCode: -1183493901
|
||||
m_overrideHtmlColors: 0
|
||||
m_faceColor:
|
||||
serializedVersion: 2
|
||||
rgba: 4294967295
|
||||
m_fontSize: 3
|
||||
m_fontSizeBase: 36
|
||||
m_fontWeight: 400
|
||||
m_enableAutoSizing: 1
|
||||
m_fontSizeMin: 1
|
||||
m_fontSizeMax: 3
|
||||
m_fontStyle: 0
|
||||
m_HorizontalAlignment: 2
|
||||
m_VerticalAlignment: 512
|
||||
m_textAlignment: 65535
|
||||
m_characterSpacing: 0
|
||||
m_wordSpacing: 0
|
||||
m_lineSpacing: 0
|
||||
m_lineSpacingMax: 0
|
||||
m_paragraphSpacing: 0
|
||||
m_charWidthMaxAdj: 0
|
||||
m_TextWrappingMode: 0
|
||||
m_wordWrappingRatios: 0.4
|
||||
m_overflowMode: 0
|
||||
m_linkedTextComponent: {fileID: 0}
|
||||
parentLinkedComponent: {fileID: 0}
|
||||
m_enableKerning: 0
|
||||
m_ActiveFontFeatures: 6e72656b
|
||||
m_enableExtraPadding: 0
|
||||
checkPaddingRequired: 0
|
||||
m_isRichText: 1
|
||||
m_EmojiFallbackSupport: 1
|
||||
m_parseCtrlCharacters: 1
|
||||
m_isOrthographic: 1
|
||||
m_isCullingEnabled: 0
|
||||
m_horizontalMapping: 0
|
||||
m_verticalMapping: 0
|
||||
m_uvLineOffset: 0
|
||||
m_geometrySortingOrder: 0
|
||||
m_IsTextObjectScaleStatic: 0
|
||||
m_VertexBufferAutoSizeReduction: 0
|
||||
m_useMaxVisibleDescender: 1
|
||||
m_pageToDisplay: 1
|
||||
m_margin: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_isUsingLegacyAnimationComponent: 0
|
||||
m_isVolumetricText: 0
|
||||
m_hasFontAssetChanged: 0
|
||||
m_baseMaterial: {fileID: 0}
|
||||
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
|
||||
--- !u!222 &321674
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 321671}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &4966468
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -1129,7 +1265,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: -13
|
||||
value: -9.5
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
@ -1137,7 +1273,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: 4.47
|
||||
value: -1.5900002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
@ -2423,7 +2559,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: -14
|
||||
value: -10.5
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
@ -2431,7 +2567,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: 4.47
|
||||
value: -1.5900002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
@ -2578,7 +2714,7 @@ GameObject:
|
||||
m_Component:
|
||||
- component: {fileID: 218784750}
|
||||
m_Layer: 0
|
||||
m_Name: Instances
|
||||
m_Name: LiquidInstances
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
@ -2593,11 +2729,11 @@ Transform:
|
||||
m_GameObject: {fileID: 218784749}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalPosition: {x: 150, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_Father: {fileID: 1247057679}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!1 &230908402
|
||||
GameObject:
|
||||
@ -3047,6 +3183,42 @@ RectTransform:
|
||||
m_CorrespondingSourceObject: {fileID: 5685570007726524012, guid: 7e6ba4001b3b92a4d8fdd586f6d0f731, type: 3}
|
||||
m_PrefabInstance: {fileID: 278514937}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &282398543
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 282398544}
|
||||
m_Layer: 5
|
||||
m_Name: PouringPanel
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &282398544
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 282398543}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 963867003}
|
||||
m_Father: {fileID: 1172519049}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!1001 &308211526
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -5213,7 +5385,7 @@ Transform:
|
||||
m_GameObject: {fileID: 545850347}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: 0.3420201, y: 0, z: 0, w: 0.9396927}
|
||||
m_LocalPosition: {x: -4.78, y: 12.855751, z: -20.08089}
|
||||
m_LocalPosition: {x: -4.78, y: 9.641813, z: -16.250668}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
@ -5308,7 +5480,7 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: 886251e9a18ece04ea8e61686c173e1b, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
CameraDistance: 20
|
||||
CameraDistance: 15
|
||||
DeadZoneDepth: 0
|
||||
Composition:
|
||||
ScreenPosition: {x: 0, y: 0}
|
||||
@ -6696,7 +6868,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: -15
|
||||
value: -11.5
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
@ -6704,7 +6876,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: 4.47
|
||||
value: -1.5900002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
@ -7665,7 +7837,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: -12
|
||||
value: -8.5
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
@ -7673,7 +7845,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: 4.47
|
||||
value: -1.5900002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
@ -8525,7 +8697,7 @@ Transform:
|
||||
m_GameObject: {fileID: 873223985}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: 0.3420201, y: 0, z: 0, w: 0.9396927}
|
||||
m_LocalPosition: {x: -4.78, y: 12.855751, z: -20.08089}
|
||||
m_LocalPosition: {x: -4.78, y: 9.641813, z: -16.250668}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
@ -8836,12 +9008,12 @@ RectTransform:
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 963867002}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 1172519049}
|
||||
m_Father: {fileID: 282398544}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 0}
|
||||
@ -8895,12 +9067,12 @@ MonoBehaviour:
|
||||
m_faceColor:
|
||||
serializedVersion: 2
|
||||
rgba: 4294967295
|
||||
m_fontSize: 3.45
|
||||
m_fontSize: 3
|
||||
m_fontSizeBase: 36
|
||||
m_fontWeight: 400
|
||||
m_enableAutoSizing: 1
|
||||
m_fontSizeMin: 1
|
||||
m_fontSizeMax: 10
|
||||
m_fontSizeMax: 3
|
||||
m_fontStyle: 0
|
||||
m_HorizontalAlignment: 2
|
||||
m_VerticalAlignment: 512
|
||||
@ -9311,16 +9483,18 @@ MonoBehaviour:
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_liquidPanel: {fileID: 1247057678}
|
||||
_shaker: {fileID: 1321215892}
|
||||
_renderTexture: {fileID: 2105041734}
|
||||
_liquidRenderer: {fileID: 1947402520}
|
||||
_reachedCollider: {fileID: 2070548849}
|
||||
_amountText: {fileID: 963867004}
|
||||
_completeCocktailImage: {fileID: 1821459832}
|
||||
_completeText: {fileID: 321673}
|
||||
_spawnTransform: {fileID: 970735072}
|
||||
_spawnLocation: {fileID: 218784750}
|
||||
_pushDirection: {x: -5, y: -1, z: 0}
|
||||
_pushPower: 50
|
||||
_liquidObject: {fileID: -7612237390858616641, guid: 231c2f369e2946745a955eb49243702b, type: 3}
|
||||
_liquidColor: {r: 1, g: 0.8431373, b: 0, a: 1}
|
||||
_liquidsPerSecond: 80
|
||||
_maxLiquidCount: 400
|
||||
_colorLerpSpeed: 0.5
|
||||
@ -10952,7 +11126,8 @@ RectTransform:
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 963867003}
|
||||
- {fileID: 282398544}
|
||||
- {fileID: 1795654740}
|
||||
m_Father: {fileID: 1730992467}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
@ -11699,6 +11874,7 @@ Transform:
|
||||
- {fileID: 2070548848}
|
||||
- {fileID: 970735072}
|
||||
- {fileID: 1730992467}
|
||||
- {fileID: 218784750}
|
||||
m_Father: {fileID: 1006730365}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!1 &1256380695
|
||||
@ -14098,7 +14274,7 @@ Transform:
|
||||
m_GameObject: {fileID: 1400792457}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: -13.61, y: 0, z: 3.6}
|
||||
m_LocalPosition: {x: -10.25, y: 0, z: -1.52}
|
||||
m_LocalScale: {x: 10, y: 2, z: 5}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
@ -16711,6 +16887,7 @@ MonoBehaviour:
|
||||
<CustomerTableController>k__BackingField: {fileID: 1665075870}
|
||||
<TycoonStageController>k__BackingField: {fileID: 1665075872}
|
||||
_dailyBgm: TycoonDailyBgm1
|
||||
_levelDataSo: {fileID: 11400000, guid: 702b1ed0ce71d1b4aa1ddbce67e475a1, type: 2}
|
||||
--- !u!114 &1665075870
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -18679,6 +18856,43 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1786369329}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &1795654739
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1795654740}
|
||||
m_Layer: 5
|
||||
m_Name: CompletePanel
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1795654740
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1795654739}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 1821459831}
|
||||
- {fileID: 321672}
|
||||
m_Father: {fileID: 1172519049}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!1 &1795712517
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -19042,6 +19256,81 @@ MonoBehaviour:
|
||||
m_EditorClassIdentifier:
|
||||
m_HorizontalFit: 2
|
||||
m_VerticalFit: 2
|
||||
--- !u!1 &1821459830
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1821459831}
|
||||
- component: {fileID: 1821459833}
|
||||
- component: {fileID: 1821459832}
|
||||
m_Layer: 5
|
||||
m_Name: CompleteCocktailImage
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1821459831
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1821459830}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 1795654740}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 1}
|
||||
m_AnchorMax: {x: 0.5, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: -25}
|
||||
m_SizeDelta: {x: 25, y: 25}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1821459832
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1821459830}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_Sprite: {fileID: 0}
|
||||
m_Type: 0
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
m_UseSpriteMesh: 0
|
||||
m_PixelsPerUnitMultiplier: 1
|
||||
--- !u!222 &1821459833
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1821459830}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &1834176991
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -20113,7 +20402,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: -16
|
||||
value: -12.5
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
@ -20121,7 +20410,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: 4.47
|
||||
value: -1.59
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 809828747251277026, guid: 7cb398d57f4c7ff468b50dbf1d226ca5, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
@ -24515,4 +24804,3 @@ SceneRoots:
|
||||
- {fileID: 828349206}
|
||||
- {fileID: 1006730365}
|
||||
- {fileID: 20736010}
|
||||
- {fileID: 218784750}
|
||||
|
@ -14,7 +14,7 @@ namespace BlueWater.BehaviorTrees.Actions
|
||||
{
|
||||
private Customer _customer;
|
||||
private CustomerData _customerData;
|
||||
private FoodBalloonUi _foodBalloonUi;
|
||||
private BalloonUi _balloonUi;
|
||||
|
||||
public override void OnAwake()
|
||||
{
|
||||
@ -24,9 +24,9 @@ namespace BlueWater.BehaviorTrees.Actions
|
||||
|
||||
public override void OnStart()
|
||||
{
|
||||
_foodBalloonUi = _customer.FoodBalloonUi;
|
||||
_balloonUi = _customer.BalloonUi;
|
||||
// TODO : 음료가 다양해질 때 수정해야함
|
||||
_foodBalloonUi.OrderFood("40001", _customerData.WaitTime, _customerData.HurryTime);
|
||||
_balloonUi.OrderItem("40001", _customerData.WaitTime, _customerData.HurryTime);
|
||||
|
||||
_customer.OnInteraction += HandleBeverageInteraction;
|
||||
_customer.RegisterPlayerInteraction();
|
||||
@ -35,21 +35,21 @@ namespace BlueWater.BehaviorTrees.Actions
|
||||
|
||||
public override TaskStatus OnUpdate()
|
||||
{
|
||||
if (_foodBalloonUi.IsFoodReceive())
|
||||
if (_balloonUi.IsFoodReceive())
|
||||
{
|
||||
_customer.OnInteraction -= HandleBeverageInteraction;
|
||||
_customer.UnregisterPlayerInteraction();
|
||||
return TaskStatus.Success;
|
||||
}
|
||||
|
||||
if (_foodBalloonUi.IsWaitTimeOver())
|
||||
if (_balloonUi.IsWaitTimeOver())
|
||||
{
|
||||
_customer.OnInteraction -= HandleBeverageInteraction;
|
||||
_customer.UnregisterPlayerInteraction();
|
||||
_customer.AddHappyPoint(-3);
|
||||
if (_customer.HappyPoint <= 0)
|
||||
{
|
||||
_foodBalloonUi.CancelOrder();
|
||||
_balloonUi.CancelOrder();
|
||||
var barkName = _customer.HappyPoint switch
|
||||
{
|
||||
>= 3 => "SatisfactoryEvaluation",
|
||||
@ -79,9 +79,10 @@ namespace BlueWater.BehaviorTrees.Actions
|
||||
if (carriedBeverageData.Idx == "40001")
|
||||
{
|
||||
tycoonPlayer.GiveItem();
|
||||
_foodBalloonUi.ReceiveFood();
|
||||
_customer.SetFood(carriedBeverageData);
|
||||
if (carriedBeverageData.Quality == ItemQuality.High)
|
||||
_balloonUi.ReceiveFood();
|
||||
var itemData = ItemManager.Instance.GetItemDataByIdx(carriedBeverageData.Idx);
|
||||
_customer.SetFood(itemData);
|
||||
if (itemData.Quality == ItemQuality.High)
|
||||
{
|
||||
_customer.AddHappyPoint(1);
|
||||
}
|
||||
|
@ -15,7 +15,7 @@ namespace BlueWater.BehaviorTrees.Actions
|
||||
{
|
||||
private Customer _customer;
|
||||
private CustomerData _customerData;
|
||||
private FoodBalloonUi _foodBalloonUi;
|
||||
private BalloonUi _balloonUi;
|
||||
private string _orderFoodIdx;
|
||||
|
||||
public override void OnAwake()
|
||||
@ -28,8 +28,8 @@ namespace BlueWater.BehaviorTrees.Actions
|
||||
{
|
||||
SetPreferredFoods();
|
||||
|
||||
_foodBalloonUi = _customer.FoodBalloonUi;
|
||||
_foodBalloonUi.OrderFood(_orderFoodIdx, _customerData.WaitTime, _customerData.HurryTime);
|
||||
_balloonUi = _customer.BalloonUi;
|
||||
_balloonUi.OrderItem(_orderFoodIdx, _customerData.WaitTime, _customerData.HurryTime);
|
||||
_customer.OnInteraction += HandleFoodInteraction;
|
||||
_customer.RegisterPlayerInteraction();
|
||||
_customer.Bark("OrderFood", BarkOrder.FirstValid);
|
||||
@ -37,21 +37,21 @@ namespace BlueWater.BehaviorTrees.Actions
|
||||
|
||||
public override TaskStatus OnUpdate()
|
||||
{
|
||||
if (_foodBalloonUi.IsFoodReceive())
|
||||
if (_balloonUi.IsFoodReceive())
|
||||
{
|
||||
_customer.OnInteraction -= HandleFoodInteraction;
|
||||
_customer.UnregisterPlayerInteraction();
|
||||
return TaskStatus.Success;
|
||||
}
|
||||
|
||||
if (_foodBalloonUi.IsWaitTimeOver())
|
||||
if (_balloonUi.IsWaitTimeOver())
|
||||
{
|
||||
_customer.OnInteraction -= HandleFoodInteraction;
|
||||
_customer.UnregisterPlayerInteraction();
|
||||
_customer.AddHappyPoint(-3);
|
||||
if (_customer.HappyPoint <= 0)
|
||||
{
|
||||
_foodBalloonUi.CancelOrder();
|
||||
_balloonUi.CancelOrder();
|
||||
var barkName = _customer.HappyPoint switch
|
||||
{
|
||||
>= 3 => "SatisfactoryEvaluation",
|
||||
@ -80,9 +80,10 @@ namespace BlueWater.BehaviorTrees.Actions
|
||||
if (carriedFoodData.Idx == _orderFoodIdx)
|
||||
{
|
||||
tycoonPlayer.GiveItem();
|
||||
_foodBalloonUi.ReceiveFood();
|
||||
_customer.SetFood(carriedFoodData);
|
||||
if (carriedFoodData.Quality == ItemQuality.High)
|
||||
_balloonUi.ReceiveFood();
|
||||
var itemData = ItemManager.Instance.GetItemDataByIdx(carriedFoodData.Idx);
|
||||
_customer.SetFood(itemData);
|
||||
if (itemData.Quality == ItemQuality.High)
|
||||
{
|
||||
_customer.AddHappyPoint(1);
|
||||
}
|
||||
|
@ -12,7 +12,7 @@ namespace BlueWater.BehaviorTrees.Actions
|
||||
{
|
||||
private Customer _customer;
|
||||
private CustomerData _customerData;
|
||||
private FoodBalloonUi _foodBalloonUi;
|
||||
private BalloonUi _balloonUi;
|
||||
private int _goldIdx;
|
||||
private bool _isPaidMoney;
|
||||
|
||||
@ -24,8 +24,8 @@ namespace BlueWater.BehaviorTrees.Actions
|
||||
|
||||
public override void OnStart()
|
||||
{
|
||||
_foodBalloonUi = _customer.FoodBalloonUi;
|
||||
_foodBalloonUi.PayMoney(_customerData.WaitTime, _customerData.HurryTime);
|
||||
_balloonUi = _customer.BalloonUi;
|
||||
_balloonUi.PayMoney(_customerData.WaitTime, _customerData.HurryTime);
|
||||
_customer.OnInteraction += HandlePayMoneyInteraction;
|
||||
_customer.RegisterPlayerInteraction();
|
||||
}
|
||||
@ -37,12 +37,12 @@ namespace BlueWater.BehaviorTrees.Actions
|
||||
return TaskStatus.Success;
|
||||
}
|
||||
|
||||
if (_foodBalloonUi.IsWaitTimeOver())
|
||||
if (_balloonUi.IsWaitTimeOver())
|
||||
{
|
||||
_customer.OnInteraction -= HandlePayMoneyInteraction;
|
||||
_customer.UnregisterPlayerInteraction();
|
||||
_foodBalloonUi.CancelOrder();
|
||||
_foodBalloonUi.HideUi();
|
||||
_balloonUi.CancelOrder();
|
||||
_balloonUi.HideUi();
|
||||
// _customer.AddHappyPoint(-3);
|
||||
// if (_customer.HappyPoint <= 0)
|
||||
// {
|
||||
@ -85,11 +85,11 @@ namespace BlueWater.BehaviorTrees.Actions
|
||||
var paidAmount = foodPrice + tipAmount;
|
||||
tycoonPlayer.GetMoney(paidAmount);
|
||||
_customer.PayMoney(foodPrice, tipAmount);
|
||||
_foodBalloonUi.HideUi();
|
||||
_balloonUi.HideUi();
|
||||
_customer.OnInteraction -= HandlePayMoneyInteraction;
|
||||
_customer.Bark(barkName, BarkOrder.FirstValid);
|
||||
_customer.UnregisterPlayerInteraction();
|
||||
_foodBalloonUi.CancelOrder();
|
||||
_balloonUi.CancelOrder();
|
||||
|
||||
_isPaidMoney = true;
|
||||
}
|
||||
|
@ -60,7 +60,7 @@ namespace BlueWater.Npcs.Customers
|
||||
public Transform InteractionUi { get; private set; }
|
||||
|
||||
[field: SerializeField]
|
||||
public FoodBalloonUi FoodBalloonUi { get; private set; }
|
||||
public BalloonUi BalloonUi { get; private set; }
|
||||
|
||||
[field: SerializeField]
|
||||
public PayMoneyUi PayMoneyUi { get; private set; }
|
||||
@ -181,7 +181,7 @@ namespace BlueWater.Npcs.Customers
|
||||
//InteractionCanvas.worldCamera = TycoonCameraManager.Instance.UiCamera;
|
||||
InteractionUi = InteractionCanvas.transform.Find("InteractionUi");
|
||||
InteractionUi.localScale = Vector3.one * (1 / transform.localScale.x);
|
||||
FoodBalloonUi = InteractionCanvas.transform.Find("FoodBalloonUi").GetComponent<FoodBalloonUi>();
|
||||
BalloonUi = InteractionCanvas.transform.Find("FoodBalloonUi").GetComponent<BalloonUi>();
|
||||
PayMoneyUi = InteractionCanvas.transform.Find("PayMoneyUi").GetComponent<PayMoneyUi>();
|
||||
|
||||
SpineController = GetComponent<SpineController>();
|
||||
@ -231,7 +231,7 @@ namespace BlueWater.Npcs.Customers
|
||||
public void SetTableSeat(TableSeat tableSeat)
|
||||
{
|
||||
TableSeat = tableSeat;
|
||||
FoodBalloonUi.Initialize(TableSeat);
|
||||
BalloonUi.Initialize(TableSeat);
|
||||
}
|
||||
|
||||
public void SetCurrentDirection(Vector3 normalDirection) => CurrentDirection = normalDirection;
|
||||
|
@ -1,4 +1,5 @@
|
||||
using BlueWater.Items;
|
||||
using System;
|
||||
using BlueWater.Interfaces;
|
||||
using Sirenix.OdinInspector;
|
||||
using UnityEngine;
|
||||
|
||||
@ -11,9 +12,8 @@ namespace BlueWater.Players.Tycoons
|
||||
|
||||
[SerializeField]
|
||||
private bool _isCarriedItem;
|
||||
|
||||
private ItemData _currentItemData;
|
||||
private ItemManager _itemManager;
|
||||
|
||||
private IPickup _currentPickupItem;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
@ -22,7 +22,14 @@ namespace BlueWater.Players.Tycoons
|
||||
|
||||
private void Start()
|
||||
{
|
||||
_itemManager = ItemManager.Instance;
|
||||
TycoonEvents.OnCocktailCompleted += CarryItem;
|
||||
TycoonEvents.OnCocktailDiscarded += DiscardItem;
|
||||
}
|
||||
|
||||
private void OnDestroy()
|
||||
{
|
||||
TycoonEvents.OnCocktailCompleted -= CarryItem;
|
||||
TycoonEvents.OnCocktailDiscarded -= DiscardItem;
|
||||
}
|
||||
|
||||
[Button("컴포넌트 초기화")]
|
||||
@ -31,7 +38,7 @@ namespace BlueWater.Players.Tycoons
|
||||
_itemRenderer = transform.Find("VisualLook/Item").GetComponent<SpriteRenderer>();
|
||||
}
|
||||
|
||||
public void CarryItem(string itemIdx, bool isUsingSprite = true, ItemQuality itemQuality = ItemQuality.Normal)
|
||||
public void CarryItem(IPickup item)
|
||||
{
|
||||
if (_isCarriedItem)
|
||||
{
|
||||
@ -39,56 +46,39 @@ namespace BlueWater.Players.Tycoons
|
||||
return;
|
||||
}
|
||||
|
||||
_currentItemData = new ItemData(_itemManager.GetItemDataByIdx(itemIdx))
|
||||
{
|
||||
Quality = itemQuality
|
||||
};
|
||||
|
||||
if (_currentItemData == null)
|
||||
{
|
||||
Debug.LogError($"{itemIdx} 해당 아이템을 등록할 수 없습니다.");
|
||||
return;
|
||||
}
|
||||
|
||||
if (isUsingSprite)
|
||||
{
|
||||
var itemSprite = _currentItemData.Sprite;
|
||||
if (!itemSprite)
|
||||
{
|
||||
Debug.LogWarning($"{itemSprite} 해당 아이템의 이미지가 없습니다.");
|
||||
}
|
||||
_itemRenderer.sprite = itemSprite;
|
||||
}
|
||||
_currentPickupItem = item;
|
||||
_itemRenderer.enabled = false;
|
||||
//_itemRenderer.sprite = item.Sprite;
|
||||
_isCarriedItem = true;
|
||||
}
|
||||
|
||||
public void GiveItem()
|
||||
{
|
||||
if (!_isCarriedItem || _currentItemData == null)
|
||||
if (!_isCarriedItem || _currentPickupItem == null)
|
||||
{
|
||||
Debug.Log("들고있는 아이템이 없거나, 현재 아이템 데이터가 비어있습니다.");
|
||||
return;
|
||||
}
|
||||
|
||||
_currentItemData = null;
|
||||
_currentPickupItem = null;
|
||||
_itemRenderer.sprite = null;
|
||||
_isCarriedItem = false;
|
||||
}
|
||||
|
||||
public void DiscardItem()
|
||||
{
|
||||
if (!_isCarriedItem || _currentItemData == null)
|
||||
if (!_isCarriedItem || _currentPickupItem == null)
|
||||
{
|
||||
Debug.Log("들고있는 아이템이 없거나, 현재 아이템 데이터가 비어있습니다.");
|
||||
return;
|
||||
}
|
||||
|
||||
_currentItemData = null;
|
||||
_currentPickupItem = null;
|
||||
_itemRenderer.sprite = null;
|
||||
_isCarriedItem = false;
|
||||
}
|
||||
|
||||
public ItemData GetCurrentItemData() => _currentItemData;
|
||||
public IPickup GetCurrentPickupItem() => _currentPickupItem;
|
||||
public bool IsCarriedItem() => _isCarriedItem;
|
||||
}
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
using BlueWater.Interfaces;
|
||||
using BlueWater.Items;
|
||||
using BlueWater.Uis;
|
||||
using Sirenix.OdinInspector;
|
||||
@ -42,7 +43,7 @@ namespace BlueWater.Players.Tycoons
|
||||
public SkeletonAnimation SkeletonAnimation { get; private set; }
|
||||
|
||||
[field: SerializeField]
|
||||
public FoodBalloonUi FoodBalloonUi { get; private set; }
|
||||
public BalloonUi BalloonUi { get; private set; }
|
||||
|
||||
[field: SerializeField]
|
||||
public TycoonInput TycoonInput { get; private set; }
|
||||
@ -92,7 +93,7 @@ namespace BlueWater.Players.Tycoons
|
||||
PlayerInput = GetComponent<PlayerInput>();
|
||||
VisualLook = transform.Find("VisualLook");
|
||||
SkeletonAnimation = VisualLook.GetComponent<SkeletonAnimation>();
|
||||
FoodBalloonUi = transform.Find("Canvas/FoodBalloonUi").GetComponent<FoodBalloonUi>();
|
||||
BalloonUi = transform.Find("Canvas/BalloonUi").GetComponent<BalloonUi>();
|
||||
|
||||
TycoonInput = GetComponent<TycoonInput>();
|
||||
TycoonMovement = GetComponent<TycoonMovement>();
|
||||
@ -125,30 +126,30 @@ namespace BlueWater.Players.Tycoons
|
||||
public void GetMoney(int money) => DataManager.Instance.GetMoney(money);
|
||||
public bool IsCarriedItem() => TycoonCarryHandler.IsCarriedItem();
|
||||
|
||||
public void CarryItem(string itemIdx, bool isUsingSprite = true, ItemQuality itemQuality = ItemQuality.Normal)
|
||||
{
|
||||
TycoonCarryHandler.CarryItem(itemIdx, isUsingSprite, itemQuality);
|
||||
if (!isUsingSprite)
|
||||
{
|
||||
FoodBalloonUi.SetFoodImage(GetCurrentItemData().Idx);
|
||||
FoodBalloonUi.ShowUi();
|
||||
}
|
||||
}
|
||||
// public void CarryItem(IPickup item)
|
||||
// {
|
||||
// TycoonCarryHandler.CarryItem(item);
|
||||
// // if (!isUsingSprite)
|
||||
// // {
|
||||
// // FoodBalloonUi.SetFoodImage(GetCurrentItemData().Idx);
|
||||
// // FoodBalloonUi.ShowUi();
|
||||
// // }
|
||||
// }
|
||||
|
||||
public void GiveItem()
|
||||
{
|
||||
TycoonCarryHandler.GiveItem();
|
||||
FoodBalloonUi.HideUi();
|
||||
FoodBalloonUi.SetFoodImage(null);
|
||||
BalloonUi.HideUi();
|
||||
BalloonUi.SetItemImage(null);
|
||||
}
|
||||
|
||||
public void DiscardItem()
|
||||
{
|
||||
TycoonCarryHandler.DiscardItem();
|
||||
FoodBalloonUi.HideUi();
|
||||
FoodBalloonUi.SetFoodImage(null);
|
||||
}
|
||||
public ItemData GetCurrentItemData() => TycoonCarryHandler.GetCurrentItemData();
|
||||
// public void DiscardItem()
|
||||
// {
|
||||
// TycoonCarryHandler.DiscardItem();
|
||||
// BalloonUi.HideUi();
|
||||
// BalloonUi.SetItemImage(null);
|
||||
// }
|
||||
public IPickup GetCurrentItemData() => TycoonCarryHandler.GetCurrentPickupItem();
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
7
Assets/02.Scripts/Interface/IPickup.cs
Normal file
7
Assets/02.Scripts/Interface/IPickup.cs
Normal file
@ -0,0 +1,7 @@
|
||||
namespace BlueWater.Interfaces
|
||||
{
|
||||
public interface IPickup : IIdx, ISprite
|
||||
{
|
||||
|
||||
}
|
||||
}
|
3
Assets/02.Scripts/Interface/IPickup.cs.meta
Normal file
3
Assets/02.Scripts/Interface/IPickup.cs.meta
Normal file
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 93cc9ac7df9bd614d95805d0fdfcb2b6
|
||||
timeCreated: 1716899052
|
9
Assets/02.Scripts/Interface/ISprite.cs
Normal file
9
Assets/02.Scripts/Interface/ISprite.cs
Normal file
@ -0,0 +1,9 @@
|
||||
using UnityEngine;
|
||||
|
||||
namespace BlueWater.Interfaces
|
||||
{
|
||||
public interface ISprite
|
||||
{
|
||||
Sprite Sprite { get; }
|
||||
}
|
||||
}
|
3
Assets/02.Scripts/Interface/ISprite.cs.meta
Normal file
3
Assets/02.Scripts/Interface/ISprite.cs.meta
Normal file
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 66904096aaaca614d88d13a6a40d42b5
|
||||
timeCreated: 1716899052
|
@ -7,7 +7,7 @@ using UnityEngine;
|
||||
namespace BlueWater.Items
|
||||
{
|
||||
[Serializable]
|
||||
public class CocktailData : IIdx
|
||||
public class CocktailData : IPickup
|
||||
{
|
||||
[BoxGroup("Json 데이터 영역")]
|
||||
[field: SerializeField, Tooltip("고유 식별 ID"), BoxGroup("Json 데이터 영역")]
|
||||
|
@ -35,7 +35,7 @@ namespace BlueWater.Items
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public class ItemData : IIdx
|
||||
public class ItemData : IPickup
|
||||
{
|
||||
[BoxGroup("Json 데이터 영역")]
|
||||
[field: SerializeField, Tooltip("고유 식별 ID"), BoxGroup("Json 데이터 영역")]
|
||||
|
@ -1,3 +1,4 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using BlueWater.Items;
|
||||
@ -7,7 +8,7 @@ using Sirenix.OdinInspector;
|
||||
using TMPro;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Pool;
|
||||
using UnityEngine.Serialization;
|
||||
using UnityEngine.UI;
|
||||
|
||||
namespace BlueWater
|
||||
{
|
||||
@ -18,6 +19,9 @@ namespace BlueWater
|
||||
[Title("컴포넌트")]
|
||||
[SerializeField]
|
||||
private GameObject _liquidPanel;
|
||||
|
||||
[SerializeField]
|
||||
private GameObject _shaker;
|
||||
|
||||
[SerializeField]
|
||||
private Renderer _renderTexture;
|
||||
@ -30,6 +34,12 @@ namespace BlueWater
|
||||
|
||||
[SerializeField]
|
||||
private TMP_Text _amountText;
|
||||
|
||||
[SerializeField]
|
||||
private Image _completeCocktailImage;
|
||||
|
||||
[SerializeField]
|
||||
private TMP_Text _completeText;
|
||||
|
||||
[Title("스폰 데이터")]
|
||||
[SerializeField, Required]
|
||||
@ -74,11 +84,12 @@ namespace BlueWater
|
||||
|
||||
private IObjectPool<Liquid> _objectPool;
|
||||
private List<Liquid> _activeLiquids = new();
|
||||
private Dictionary<LiquidData, int> _liquidDataCounts = new();
|
||||
private Dictionary<LiquidData, int> _liquidDataCounts = new(7);
|
||||
private Material _instanceMaterial;
|
||||
private Tween _showTween;
|
||||
private Tween _hideTween;
|
||||
|
||||
|
||||
private bool _isShowingPanel;
|
||||
private bool _isPouring;
|
||||
private float _startTime = float.PositiveInfinity;
|
||||
private int _instanceLiquidCount;
|
||||
@ -102,10 +113,10 @@ namespace BlueWater
|
||||
{
|
||||
_objectPool = new ObjectPool<Liquid>(CreateObject, OnGetObject, OnReleaseObject, OnDestroyObject, maxSize: _objectPoolCount);
|
||||
|
||||
_hideTween = _liquidPanel.transform.DOMoveX(-150f, _moveDuration).From(-249f).Pause()
|
||||
_hideTween = _liquidPanel.transform.DOMoveX(-150f, _moveDuration).Pause()
|
||||
.SetAutoKill(false);
|
||||
|
||||
_showTween = _liquidPanel.transform.DOMoveX(-249f, _moveDuration).From(-150f).Pause()
|
||||
_showTween = _liquidPanel.transform.DOMoveX(-249f, _moveDuration).Pause()
|
||||
.SetAutoKill(false);
|
||||
}
|
||||
|
||||
@ -119,6 +130,10 @@ namespace BlueWater
|
||||
|
||||
_instanceMaterial.SetFloat(_liquidAmountHash, 0f);
|
||||
_timeInterval = 1f / _liquidsPerSecond;
|
||||
_shaker.SetActive(true);
|
||||
_amountText.enabled = true;
|
||||
_completeCocktailImage.enabled = false;
|
||||
_completeText.enabled = false;
|
||||
_instanceLiquidCount = 0;
|
||||
SetCurrentAmount(0f);
|
||||
}
|
||||
@ -137,7 +152,7 @@ namespace BlueWater
|
||||
// 술이 완성되었을 때
|
||||
if (_instanceLiquidCount >= _maxLiquidCount)
|
||||
{
|
||||
CompleteLiquid();
|
||||
StartCoroutine(nameof(CompleteCocktail));
|
||||
return;
|
||||
}
|
||||
|
||||
@ -242,6 +257,10 @@ namespace BlueWater
|
||||
{
|
||||
if (_instanceLiquidCount == 0)
|
||||
{
|
||||
_shaker.SetActive(true);
|
||||
_amountText.enabled = true;
|
||||
_completeCocktailImage.enabled = false;
|
||||
_completeText.enabled = false;
|
||||
_currentMixedColor = _currentBarrel.GetLiquidData().Color;
|
||||
_instanceMaterial.SetColor(_liquidColorHash, _currentMixedColor * _colorIntensity);
|
||||
}
|
||||
@ -276,11 +295,13 @@ namespace BlueWater
|
||||
/// <summary>
|
||||
/// 술을 완성한 경우
|
||||
/// </summary>
|
||||
private void CompleteLiquid()
|
||||
private IEnumerator CompleteCocktail()
|
||||
{
|
||||
InActiveIsPouring();
|
||||
// TODO : 완성된 음료를 데이터베이스와 비교하기
|
||||
var currentCocktailIngredients = new List<CocktailIngredient>(5);
|
||||
|
||||
yield return new WaitUntil(() => _currentLiquidAmount >= _maxLiquidCount);
|
||||
|
||||
var currentCocktailIngredients = new List<CocktailIngredient>(7);
|
||||
foreach (var element in _liquidDataCounts)
|
||||
{
|
||||
var idx = element.Key.Idx;
|
||||
@ -342,12 +363,26 @@ namespace BlueWater
|
||||
if (matchingCocktail == null)
|
||||
{
|
||||
matchingCocktail = ItemManager.Instance.GetCocktailDataByIdx("Cocktail000");
|
||||
_completeText.text = "실패";
|
||||
}
|
||||
else
|
||||
{
|
||||
_completeText.text = $"성공!\n{matchingCocktail.Name}";
|
||||
}
|
||||
|
||||
// TODO : 음료 제조 성공, 실패 연출 추가
|
||||
_shaker.SetActive(false);
|
||||
_amountText.enabled = false;
|
||||
_completeCocktailImage.sprite = matchingCocktail.Sprite;
|
||||
_completeCocktailImage.enabled = true;
|
||||
_completeText.enabled = true;
|
||||
|
||||
// 1. 플레이어 음료 들기
|
||||
TycoonEvents.OnCocktailCompleted?.Invoke(matchingCocktail);
|
||||
|
||||
Debug.Log($"{matchingCocktail.Idx} 음료 완성");
|
||||
|
||||
|
||||
// TODO : 플레이어 이벤트를 통해 음료 들기
|
||||
yield return new WaitForSeconds(1f);
|
||||
|
||||
HidePanel();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -392,12 +427,18 @@ namespace BlueWater
|
||||
|
||||
public void ShowPanel()
|
||||
{
|
||||
if (_isShowingPanel) return;
|
||||
|
||||
_isShowingPanel = true;
|
||||
_hideTween.Pause();
|
||||
_showTween.Restart();
|
||||
}
|
||||
|
||||
public void HidePanel()
|
||||
{
|
||||
if (!_isShowingPanel) return;
|
||||
|
||||
_isShowingPanel = false;
|
||||
_showTween.Pause();
|
||||
_hideTween.Restart();
|
||||
}
|
||||
|
@ -6,6 +6,8 @@ namespace BlueWater
|
||||
{
|
||||
private void OnTriggerEnter(Collider other)
|
||||
{
|
||||
if (GameManager.Instance.CurrentTycoonPlayer.IsCarriedItem()) return;
|
||||
|
||||
TycoonEvents.OnLiquidRegionEntered?.Invoke();
|
||||
}
|
||||
|
||||
|
@ -41,7 +41,7 @@ namespace BlueWater.Tycoons
|
||||
/// </summary>
|
||||
public override bool CanInteraction()
|
||||
{
|
||||
return true;
|
||||
return !CurrentTycoonPlayer.IsCarriedItem();
|
||||
}
|
||||
|
||||
public bool CanConsume(int amount)
|
||||
|
@ -1,21 +1,21 @@
|
||||
using UnityEngine;
|
||||
|
||||
namespace BlueWater.Tycoons
|
||||
{
|
||||
public class BeverageMachine : InteractionFurniture
|
||||
{
|
||||
[SerializeField]
|
||||
private string _itemIdx = "40001";
|
||||
|
||||
public override void Interaction()
|
||||
{
|
||||
// TODO : 미니게임을 시작하고, 성공 여부에 따라 음식 품질 부여
|
||||
CurrentTycoonPlayer.CarryItem(_itemIdx);
|
||||
}
|
||||
|
||||
public override bool CanInteraction()
|
||||
{
|
||||
return !CurrentTycoonPlayer.IsCarriedItem();
|
||||
}
|
||||
}
|
||||
}
|
||||
// using UnityEngine;
|
||||
//
|
||||
// namespace BlueWater.Tycoons
|
||||
// {
|
||||
// public class BeverageMachine : InteractionFurniture
|
||||
// {
|
||||
// [SerializeField]
|
||||
// private string _itemIdx = "40001";
|
||||
//
|
||||
// public override void Interaction()
|
||||
// {
|
||||
// // TODO : 미니게임을 시작하고, 성공 여부에 따라 음식 품질 부여
|
||||
// CurrentTycoonPlayer.CarryItem(_itemIdx);
|
||||
// }
|
||||
//
|
||||
// public override bool CanInteraction()
|
||||
// {
|
||||
// return !CurrentTycoonPlayer.IsCarriedItem();
|
||||
// }
|
||||
// }
|
||||
// }
|
@ -128,7 +128,7 @@ namespace BlueWater.Tycoons
|
||||
else
|
||||
{
|
||||
var foodData = _cookedFoodDatas.Dequeue();
|
||||
CurrentTycoonPlayer.CarryItem(foodData.Idx, false);
|
||||
//CurrentTycoonPlayer.CarryItem(foodData.Idx, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,20 +1,20 @@
|
||||
using UnityEngine;
|
||||
|
||||
namespace BlueWater.Tycoons
|
||||
{
|
||||
public class FireWood : InteractionFurniture
|
||||
{
|
||||
[SerializeField]
|
||||
private string _itemIdx = "70001";
|
||||
|
||||
public override void Interaction()
|
||||
{
|
||||
CurrentTycoonPlayer.CarryItem(_itemIdx);
|
||||
}
|
||||
|
||||
public override bool CanInteraction()
|
||||
{
|
||||
return IsOpened && !CurrentTycoonPlayer.IsCarriedItem();
|
||||
}
|
||||
}
|
||||
}
|
||||
// using UnityEngine;
|
||||
//
|
||||
// namespace BlueWater.Tycoons
|
||||
// {
|
||||
// public class FireWood : InteractionFurniture
|
||||
// {
|
||||
// [SerializeField]
|
||||
// private string _itemIdx = "70001";
|
||||
//
|
||||
// public override void Interaction()
|
||||
// {
|
||||
// CurrentTycoonPlayer.CarryItem(_itemIdx);
|
||||
// }
|
||||
//
|
||||
// public override bool CanInteraction()
|
||||
// {
|
||||
// return IsOpened && !CurrentTycoonPlayer.IsCarriedItem();
|
||||
// }
|
||||
// }
|
||||
// }
|
@ -4,7 +4,8 @@ namespace BlueWater.Tycoons
|
||||
{
|
||||
public override void Interaction()
|
||||
{
|
||||
CurrentTycoonPlayer.DiscardItem();
|
||||
TycoonEvents.OnCocktailDiscarded?.Invoke();
|
||||
//CurrentTycoonPlayer.DiscardItem();
|
||||
}
|
||||
|
||||
public override bool CanInteraction()
|
||||
|
@ -40,7 +40,7 @@ MonoBehaviour:
|
||||
<IngredientAmount4>k__BackingField: 0
|
||||
<IngredientIdx5>k__BackingField:
|
||||
<IngredientAmount5>k__BackingField: 0
|
||||
<Sprite>k__BackingField: {fileID: 0}
|
||||
<Sprite>k__BackingField: {fileID: 21300000, guid: 06a07650d842ee94390ca2505955e94d, type: 3}
|
||||
- <Idx>k__BackingField: Cocktail002
|
||||
<Name>k__BackingField: "\uCE75\uD14C\uC77CB"
|
||||
<RatioRange>k__BackingField: 0
|
||||
@ -54,7 +54,7 @@ MonoBehaviour:
|
||||
<IngredientAmount4>k__BackingField: 0
|
||||
<IngredientIdx5>k__BackingField:
|
||||
<IngredientAmount5>k__BackingField: 0
|
||||
<Sprite>k__BackingField: {fileID: 0}
|
||||
<Sprite>k__BackingField: {fileID: 21300000, guid: 19df9fcd0ddf5754890f7ea9c127b905, type: 3}
|
||||
- <Idx>k__BackingField: Cocktail003
|
||||
<Name>k__BackingField: "\uCE75\uD14C\uC77CC"
|
||||
<RatioRange>k__BackingField: 0
|
||||
@ -68,7 +68,7 @@ MonoBehaviour:
|
||||
<IngredientAmount4>k__BackingField: 0
|
||||
<IngredientIdx5>k__BackingField:
|
||||
<IngredientAmount5>k__BackingField: 0
|
||||
<Sprite>k__BackingField: {fileID: 0}
|
||||
<Sprite>k__BackingField: {fileID: 21300000, guid: a51b37c5e512c7e488e80f986f5f8aac, type: 3}
|
||||
- <Idx>k__BackingField: Cocktail004
|
||||
<Name>k__BackingField: "\uCE75\uD14C\uC77CD"
|
||||
<RatioRange>k__BackingField: 0
|
||||
@ -82,7 +82,7 @@ MonoBehaviour:
|
||||
<IngredientAmount4>k__BackingField: 0
|
||||
<IngredientIdx5>k__BackingField:
|
||||
<IngredientAmount5>k__BackingField: 0
|
||||
<Sprite>k__BackingField: {fileID: 0}
|
||||
<Sprite>k__BackingField: {fileID: 21300000, guid: d74e702a3e490a54e8a159128222f175, type: 3}
|
||||
- <Idx>k__BackingField: Cocktail005
|
||||
<Name>k__BackingField: "\uCE75\uD14C\uC77CE"
|
||||
<RatioRange>k__BackingField: 0
|
||||
@ -96,7 +96,7 @@ MonoBehaviour:
|
||||
<IngredientAmount4>k__BackingField: 0
|
||||
<IngredientIdx5>k__BackingField:
|
||||
<IngredientAmount5>k__BackingField: 0
|
||||
<Sprite>k__BackingField: {fileID: 0}
|
||||
<Sprite>k__BackingField: {fileID: 21300000, guid: bff0ff1345b7ae446b330a01e6ef7bd3, type: 3}
|
||||
- <Idx>k__BackingField: Cocktail006
|
||||
<Name>k__BackingField: "\uCE75\uD14C\uC77CAC"
|
||||
<RatioRange>k__BackingField: 5
|
||||
@ -110,7 +110,7 @@ MonoBehaviour:
|
||||
<IngredientAmount4>k__BackingField: 0
|
||||
<IngredientIdx5>k__BackingField:
|
||||
<IngredientAmount5>k__BackingField: 0
|
||||
<Sprite>k__BackingField: {fileID: 0}
|
||||
<Sprite>k__BackingField: {fileID: 21300000, guid: 006a36cba2a146247a1d25b9e246faaa, type: 3}
|
||||
- <Idx>k__BackingField: Cocktail007
|
||||
<Name>k__BackingField: "\uCE75\uD14C\uC77CBD"
|
||||
<RatioRange>k__BackingField: 5
|
||||
@ -124,7 +124,7 @@ MonoBehaviour:
|
||||
<IngredientAmount4>k__BackingField: 0
|
||||
<IngredientIdx5>k__BackingField:
|
||||
<IngredientAmount5>k__BackingField: 0
|
||||
<Sprite>k__BackingField: {fileID: 0}
|
||||
<Sprite>k__BackingField: {fileID: 21300000, guid: 31d7e535d499d5f43ab64731acc3eec3, type: 3}
|
||||
- <Idx>k__BackingField: Cocktail008
|
||||
<Name>k__BackingField: "\uCE75\uD14C\uC77CCD"
|
||||
<RatioRange>k__BackingField: 5
|
||||
@ -138,7 +138,7 @@ MonoBehaviour:
|
||||
<IngredientAmount4>k__BackingField: 0
|
||||
<IngredientIdx5>k__BackingField:
|
||||
<IngredientAmount5>k__BackingField: 0
|
||||
<Sprite>k__BackingField: {fileID: 0}
|
||||
<Sprite>k__BackingField: {fileID: 21300000, guid: 997d0aea13894a9428bf9d9f7fb66762, type: 3}
|
||||
- <Idx>k__BackingField: Cocktail009
|
||||
<Name>k__BackingField: "\uCE75\uD14C\uC77CABE"
|
||||
<RatioRange>k__BackingField: 10
|
||||
@ -152,7 +152,7 @@ MonoBehaviour:
|
||||
<IngredientAmount4>k__BackingField: 0
|
||||
<IngredientIdx5>k__BackingField:
|
||||
<IngredientAmount5>k__BackingField: 0
|
||||
<Sprite>k__BackingField: {fileID: 0}
|
||||
<Sprite>k__BackingField: {fileID: 21300000, guid: 3d04bfa220b9ebe40a4ae3f0a68c0911, type: 3}
|
||||
- <Idx>k__BackingField: Cocktail010
|
||||
<Name>k__BackingField: "\uCE75\uD14C\uC77CCDE"
|
||||
<RatioRange>k__BackingField: 10
|
||||
@ -166,7 +166,7 @@ MonoBehaviour:
|
||||
<IngredientAmount4>k__BackingField: 0
|
||||
<IngredientIdx5>k__BackingField:
|
||||
<IngredientAmount5>k__BackingField: 0
|
||||
<Sprite>k__BackingField: {fileID: 0}
|
||||
<Sprite>k__BackingField: {fileID: 21300000, guid: 09168d6395b3e9b41b195a2aa8ae0a82, type: 3}
|
||||
- <Idx>k__BackingField: Cocktail011
|
||||
<Name>k__BackingField: "\uCE75\uD14C\uC77CB1"
|
||||
<RatioRange>k__BackingField: 10
|
||||
|
@ -27,7 +27,7 @@ namespace BlueWater.Tycoons
|
||||
if (foodData == null) return;
|
||||
|
||||
FoodRecipes.Add(idx);
|
||||
TycoonEvents.OnFoodRecipeAcquired?.Invoke(idx);
|
||||
//TycoonEvents.OnFoodRecipeAcquired?.Invoke(idx);
|
||||
}
|
||||
|
||||
public void AddDrinkRecipe(string idx)
|
||||
|
@ -11,10 +11,12 @@ namespace BlueWater
|
||||
|
||||
public static Action OnLiquidRegionEntered;
|
||||
public static Action OnLiquidRegionExited;
|
||||
|
||||
|
||||
|
||||
|
||||
public static Action<CocktailData> OnCocktailCompleted;
|
||||
public static Action OnCocktailDiscarded;
|
||||
|
||||
|
||||
// 요리
|
||||
public static Action<string> OnFoodRecipeAcquired;
|
||||
//public static Action<string> OnFoodRecipeAcquired;
|
||||
}
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
using BlueWater.Interfaces;
|
||||
using BlueWater.Items;
|
||||
using BlueWater.Tycoons;
|
||||
using DG.Tweening;
|
||||
@ -7,14 +8,17 @@ using UnityEngine.UI;
|
||||
|
||||
namespace BlueWater.Uis
|
||||
{
|
||||
public class FoodBalloonUi : MonoBehaviour
|
||||
public class BalloonUi : MonoBehaviour
|
||||
{
|
||||
[field: Title("컴포넌트")]
|
||||
[field: SerializeField, Required]
|
||||
public Image FillImage { get; private set; }
|
||||
[Title("컴포넌트")]
|
||||
[SerializeField, Required]
|
||||
private Image _fillImage;
|
||||
|
||||
[field: SerializeField, Required]
|
||||
public Image FoodImage { get; private set; }
|
||||
[SerializeField, Required]
|
||||
private Image _itemImage;
|
||||
|
||||
[SerializeField]
|
||||
private GameObject _panel;
|
||||
|
||||
[Title("주문 정보")]
|
||||
[SerializeField, DisableIf("@true")]
|
||||
@ -24,7 +28,7 @@ namespace BlueWater.Uis
|
||||
private bool _isWaitTimeOver;
|
||||
|
||||
[SerializeField, DisableIf("@true")]
|
||||
private bool _isFoodReceived;
|
||||
private bool _isItemReceived;
|
||||
|
||||
private Tween _tween;
|
||||
private TableSeat _tableSeat;
|
||||
@ -34,17 +38,26 @@ namespace BlueWater.Uis
|
||||
{
|
||||
InitializeComponents();
|
||||
}
|
||||
|
||||
private void Start()
|
||||
{
|
||||
TycoonEvents.OnCocktailCompleted += SetItemImage;
|
||||
TycoonEvents.OnCocktailDiscarded += DiscardItem;
|
||||
}
|
||||
|
||||
private void OnDestroy()
|
||||
{
|
||||
TycoonEvents.OnCocktailCompleted -= SetItemImage;
|
||||
TycoonEvents.OnCocktailDiscarded -= DiscardItem;
|
||||
_tween.Kill();
|
||||
}
|
||||
|
||||
[Button("컴포넌트 초기화")]
|
||||
private void InitializeComponents()
|
||||
{
|
||||
FillImage = transform.Find("Background/FillImage").GetComponent<Image>();
|
||||
FoodImage = transform.Find("FoodImage").GetComponent<Image>();
|
||||
_fillImage = transform.Find("Panel/FillImage").GetComponent<Image>();
|
||||
_itemImage = transform.Find("Panel/FoodImage").GetComponent<Image>();
|
||||
_panel = transform.Find("Panel").gameObject;
|
||||
}
|
||||
|
||||
public void Initialize(TableSeat tableSeat)
|
||||
@ -53,39 +66,48 @@ namespace BlueWater.Uis
|
||||
HideUi();
|
||||
}
|
||||
|
||||
public void ShowUi() => gameObject.SetActive(true);
|
||||
public void HideUi() => gameObject.SetActive(false);
|
||||
public void ShowUi() => _panel.SetActive(true);
|
||||
public void HideUi() => _panel.SetActive(false);
|
||||
|
||||
public void SetFoodImage(string foodIdx)
|
||||
public void SetItemImage(IPickup item)
|
||||
{
|
||||
_orderItemData = ItemManager.Instance.GetItemDataByIdx(foodIdx);
|
||||
if (_orderItemData == null)
|
||||
//_orderItemData = ItemManager.Instance.GetItemDataByIdx(foodIdx);
|
||||
// if (_orderItemData == null)
|
||||
// {
|
||||
// Debug.LogError($"{foodIdx} 해당 음식을 등록할 수 없습니다.");
|
||||
// return;
|
||||
// }
|
||||
|
||||
if (!item.Sprite)
|
||||
{
|
||||
Debug.LogError($"{foodIdx} 해당 음식을 등록할 수 없습니다.");
|
||||
return;
|
||||
Debug.LogWarning($"{item.Sprite} 해당 음식의 이미지가 없습니다.");
|
||||
}
|
||||
|
||||
if (!_orderItemData.Sprite)
|
||||
{
|
||||
Debug.LogWarning($"{_orderItemData.Sprite} 해당 음식의 이미지가 없습니다.");
|
||||
}
|
||||
FoodImage.sprite = _orderItemData.Sprite;
|
||||
SetItemSprite(item.Sprite);
|
||||
ShowUi();
|
||||
}
|
||||
|
||||
public void SetFoodSprite(Sprite sprite)
|
||||
public void SetItemSprite(Sprite sprite)
|
||||
{
|
||||
FoodImage.sprite = sprite;
|
||||
_itemImage.sprite = sprite;
|
||||
}
|
||||
|
||||
public void OrderFood(string foodIdx, int waitTime, int hurryTime)
|
||||
public void DiscardItem()
|
||||
{
|
||||
HideUi();
|
||||
SetItemImage(null);
|
||||
}
|
||||
|
||||
public void OrderItem(string itemIdx, int waitTime, int hurryTime)
|
||||
{
|
||||
_orderItemData = ItemManager.Instance.GetItemDataByIdx(itemIdx);
|
||||
_isOrdered = true;
|
||||
_isWaitTimeOver = false;
|
||||
_isFoodReceived = false;
|
||||
SetFoodImage(foodIdx);
|
||||
_isItemReceived = false;
|
||||
SetItemImage(_orderItemData);
|
||||
ShowUi();
|
||||
|
||||
_tween = FillImage.DOFillAmount(1f, hurryTime)
|
||||
_tween = _fillImage.DOFillAmount(1f, hurryTime)
|
||||
.From(0f)
|
||||
.SetEase(Ease.Linear)
|
||||
.SetDelay(waitTime)
|
||||
@ -98,11 +120,11 @@ namespace BlueWater.Uis
|
||||
{
|
||||
_isOrdered = true;
|
||||
_isWaitTimeOver = false;
|
||||
_isFoodReceived = false;
|
||||
SetFoodSprite(DataManager.Instance.SpriteDataSo.Gold);
|
||||
_isItemReceived = false;
|
||||
SetItemSprite(DataManager.Instance.SpriteDataSo.Gold);
|
||||
ShowUi();
|
||||
|
||||
_tween = FillImage.DOFillAmount(1f, hurryTime)
|
||||
_tween = _fillImage.DOFillAmount(1f, hurryTime)
|
||||
.From(0f)
|
||||
.SetEase(Ease.Linear)
|
||||
.SetDelay(waitTime)
|
||||
@ -118,7 +140,7 @@ namespace BlueWater.Uis
|
||||
}
|
||||
|
||||
public bool IsWaitTimeOver() => _isOrdered && _isWaitTimeOver;
|
||||
public bool IsFoodReceive() => _isFoodReceived;
|
||||
public bool IsFoodReceive() => _isItemReceived;
|
||||
|
||||
public void CancelOrder()
|
||||
{
|
||||
@ -130,7 +152,7 @@ namespace BlueWater.Uis
|
||||
_tableSeat.DirtyTable();
|
||||
_tween.Kill();
|
||||
HideUi();
|
||||
_isFoodReceived = true;
|
||||
_isItemReceived = true;
|
||||
}
|
||||
}
|
||||
}
|
@ -62,13 +62,13 @@ namespace BlueWater.Uis
|
||||
|
||||
private void Start()
|
||||
{
|
||||
TycoonEvents.OnFoodRecipeAcquired += AddFoodRecipe;
|
||||
//TycoonEvents.OnFoodRecipeAcquired += AddFoodRecipe;
|
||||
_dataManager.Inventory.OnChangeItemSlot += OnInventoryChange;
|
||||
}
|
||||
|
||||
private void OnDestroy()
|
||||
{
|
||||
TycoonEvents.OnFoodRecipeAcquired -= AddFoodRecipe;
|
||||
//TycoonEvents.OnFoodRecipeAcquired -= AddFoodRecipe;
|
||||
_dataManager.Inventory.OnChangeItemSlot -= OnInventoryChange;
|
||||
}
|
||||
|
||||
|
@ -53,7 +53,7 @@ namespace BlueWater.Uis
|
||||
Destroy(indicator.gameObject);
|
||||
return;
|
||||
}
|
||||
var target = customer.FoodBalloonUi.transform;
|
||||
var target = customer.BalloonUi.transform;
|
||||
var screenPosition = _mainCamera.WorldToScreenPoint(target.position);
|
||||
|
||||
if (!target.gameObject.activeSelf)
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -46,9 +46,9 @@ TextureImporter:
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
alignment: 9
|
||||
spritePivot: {x: 0.5, y: 0.08}
|
||||
spritePixelsToUnits: 256
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -548,7 +548,7 @@ MonoBehaviour:
|
||||
<PlayerInput>k__BackingField: {fileID: 6054159730444663926}
|
||||
<VisualLook>k__BackingField: {fileID: 6509241874729291456}
|
||||
<SkeletonAnimation>k__BackingField: {fileID: 7125556968546628472}
|
||||
<FoodBalloonUi>k__BackingField: {fileID: 2412195434237916265}
|
||||
<BalloonUi>k__BackingField: {fileID: 0}
|
||||
<TycoonInput>k__BackingField: {fileID: 1674052485383758547}
|
||||
<TycoonMovement>k__BackingField: {fileID: 4836489897218844789}
|
||||
<TycoonCarryHandler>k__BackingField: {fileID: 909302231676134912}
|
||||
@ -596,7 +596,7 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: cb167e66df896c745a538310e5a52f61, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
<MoveSpeed>k__BackingField: 12
|
||||
<MoveSpeed>k__BackingField: 7
|
||||
--- !u!114 &909302231676134912
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -723,9 +723,13 @@ PrefabInstance:
|
||||
m_Modifications:
|
||||
- target: {fileID: 271498015662217203, guid: bb0dfd08f3e9d944f808e61d886581e7, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: FoodBalloonUi
|
||||
value: BalloonUi
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 271498015662217203, guid: bb0dfd08f3e9d944f808e61d886581e7, type: 3}
|
||||
propertyPath: m_IsActive
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1505211282054036597, guid: bb0dfd08f3e9d944f808e61d886581e7, type: 3}
|
||||
propertyPath: m_IsActive
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
@ -826,17 +830,6 @@ PrefabInstance:
|
||||
m_AddedGameObjects: []
|
||||
m_AddedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: bb0dfd08f3e9d944f808e61d886581e7, type: 3}
|
||||
--- !u!114 &2412195434237916265 stripped
|
||||
MonoBehaviour:
|
||||
m_CorrespondingSourceObject: {fileID: 2829248495233098512, guid: bb0dfd08f3e9d944f808e61d886581e7, type: 3}
|
||||
m_PrefabInstance: {fileID: 448763968479860601}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 4132c767aaeea7f43b8b894bde7b7351, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!224 &2494354617667434336 stripped
|
||||
RectTransform:
|
||||
m_CorrespondingSourceObject: {fileID: 2641341650102689817, guid: bb0dfd08f3e9d944f808e61d886581e7, type: 3}
|
||||
|
@ -11,7 +11,7 @@ GameObject:
|
||||
- component: {fileID: 2641341650102689817}
|
||||
- component: {fileID: 2829248495233098512}
|
||||
m_Layer: 5
|
||||
m_Name: FoodBalloonUi
|
||||
m_Name: BalloonUi
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
@ -29,8 +29,7 @@ RectTransform:
|
||||
m_LocalScale: {x: 5, y: 5, z: 5}
|
||||
m_ConstrainProportionsScale: 1
|
||||
m_Children:
|
||||
- {fileID: 1610583026884195458}
|
||||
- {fileID: 6400894162898819538}
|
||||
- {fileID: 674323407039969650}
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
@ -50,15 +49,50 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: 4132c767aaeea7f43b8b894bde7b7351, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
<FillImage>k__BackingField: {fileID: 2173167918881327799}
|
||||
<FoodImage>k__BackingField: {fileID: 8218406547424483500}
|
||||
_customer: {fileID: 0}
|
||||
_offset: {x: -0.2, y: 1.5, z: 0}
|
||||
_defaultWaitTime: 5
|
||||
_customerWaitTime: 0
|
||||
_fillImage: {fileID: 2173167918881327799}
|
||||
_itemImage: {fileID: 8218406547424483500}
|
||||
_panel: {fileID: 1505211282054036597}
|
||||
_isOrdered: 0
|
||||
_isWaitTimeOver: 0
|
||||
_isFoodReceived: 0
|
||||
_isItemReceived: 0
|
||||
--- !u!1 &1505211282054036597
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 674323407039969650}
|
||||
m_Layer: 5
|
||||
m_Name: Panel
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &674323407039969650
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1505211282054036597}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 1610583026884195458}
|
||||
- {fileID: 6751494179874491372}
|
||||
- {fileID: 6400894162898819538}
|
||||
m_Father: {fileID: 2641341650102689817}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!1 &2909533541407981610
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -84,13 +118,12 @@ RectTransform:
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2909533541407981610}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 6751494179874491372}
|
||||
m_Father: {fileID: 2641341650102689817}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 674323407039969650}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
@ -160,12 +193,12 @@ RectTransform:
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 3361235759547244541}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 2641341650102689817}
|
||||
m_Father: {fileID: 674323407039969650}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
@ -240,7 +273,7 @@ RectTransform:
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 1610583026884195458}
|
||||
m_Father: {fileID: 674323407039969650}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
Loading…
Reference in New Issue
Block a user