From 6cce785d2c4a724ce8d671e40eff961ebf2e615a Mon Sep 17 00:00:00 2001 From: Antoine H Date: Thu, 7 Jan 2021 19:02:52 +0100 Subject: [PATCH] Create Production_workshop.prefab + Start UI display for prep --- Assets/Prefabs/Characters/Client.prefab | 14 +- Assets/Prefabs/CircleTimer.prefab | 4 +- Assets/Prefabs/Production_workshop.prefab | 383 ++++++++++++++++++ .../Prefabs/Production_workshop.prefab.meta | 7 + Assets/Scenes/Tests/SampleScene.unity | 208 ++++------ Assets/Scripts/Production_workshop.cs | 25 +- Assets/Scripts/UI/UITimer.cs | 6 +- Assets/Scripts/Workshop.cs | 27 +- 8 files changed, 530 insertions(+), 144 deletions(-) create mode 100644 Assets/Prefabs/Production_workshop.prefab create mode 100644 Assets/Prefabs/Production_workshop.prefab.meta diff --git a/Assets/Prefabs/Characters/Client.prefab b/Assets/Prefabs/Characters/Client.prefab index deb9b2f..2c5a742 100644 --- a/Assets/Prefabs/Characters/Client.prefab +++ b/Assets/Prefabs/Characters/Client.prefab @@ -223,8 +223,8 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: -0.036, y: 0.639} - m_SizeDelta: {x: 30, y: 30} + m_AnchoredPosition: {x: -0.0043, y: 0.396} + m_SizeDelta: {x: 45.46295, y: 80.774895} m_Pivot: {x: 0.5, y: 0.5} --- !u!223 &7252818391645497170 Canvas: @@ -331,12 +331,12 @@ PrefabInstance: - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, type: 3} propertyPath: m_SizeDelta.x - value: 0 + value: -15.462952 objectReference: {fileID: 0} - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, type: 3} propertyPath: m_SizeDelta.y - value: 0 + value: -50.77489 objectReference: {fileID: 0} - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, type: 3} @@ -381,7 +381,7 @@ PrefabInstance: - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, type: 3} propertyPath: m_AnchoredPosition.y - value: 0 + value: 25.387445 objectReference: {fileID: 0} - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, type: 3} @@ -421,12 +421,12 @@ PrefabInstance: - target: {fileID: 5192471320581481922, guid: 887fdd182800875449ec5ddf381bcf87, type: 3} propertyPath: m_AnchoredPosition.x - value: -0.13000011 + value: -0.13000107 objectReference: {fileID: 0} - target: {fileID: 5192471320581481922, guid: 887fdd182800875449ec5ddf381bcf87, type: 3} propertyPath: m_AnchoredPosition.y - value: -0.10999966 + value: -0.11000061 objectReference: {fileID: 0} - target: {fileID: 7859106207142621937, guid: 887fdd182800875449ec5ddf381bcf87, type: 3} diff --git a/Assets/Prefabs/CircleTimer.prefab b/Assets/Prefabs/CircleTimer.prefab index f314492..9a7d8ce 100644 --- a/Assets/Prefabs/CircleTimer.prefab +++ b/Assets/Prefabs/CircleTimer.prefab @@ -126,8 +126,8 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: -0.38000488, y: -0.60632324} - m_SizeDelta: {x: -4.5493774, y: -5} + m_AnchoredPosition: {x: -0.11000061, y: -0.060001373} + m_SizeDelta: {x: -1.8622513, y: -1.7715511} m_Pivot: {x: 0.5, y: 0.50000006} --- !u!222 &5192471320581481920 CanvasRenderer: diff --git a/Assets/Prefabs/Production_workshop.prefab b/Assets/Prefabs/Production_workshop.prefab new file mode 100644 index 0000000..b90a648 --- /dev/null +++ b/Assets/Prefabs/Production_workshop.prefab @@ -0,0 +1,383 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &4478636634695998094 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4478636634695997810} + - component: {fileID: 4478636634695997811} + - component: {fileID: 4478636634695997808} + - component: {fileID: 4478636634695997809} + m_Layer: 8 + m_Name: Production_workshop + m_TagString: Usable + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4478636634695997810 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4478636634695998094} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -1.25, y: 2.25, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 8698176937736832364} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &4478636634695997811 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4478636634695998094} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: -8568042794190644651, guid: bfabe3920bf35724b9a95bf95f5431a9, + type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1.4, y: 1.9} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!61 &4478636634695997808 +BoxCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4478636634695998094} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + m_SpriteTilingProperty: + border: {x: 0, y: 0, z: 0, w: 0} + pivot: {x: 0.5, y: 0.5} + oldSize: {x: 0.23333333, y: 0.31666666} + newSize: {x: 1.4, y: 1.9} + adaptiveTilingThreshold: 0.5 + drawMode: 0 + adaptiveTiling: 0 + m_AutoTiling: 0 + serializedVersion: 2 + m_Size: {x: 0.23333333, y: 0.31666666} + m_EdgeRadius: 0 +--- !u!114 &4478636634695997809 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4478636634695998094} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fcf63a52df2d5404e8f76b4e989d7360, type: 3} + m_Name: + m_EditorClassIdentifier: + prepTime: 2 + product_name: beer + product_value: 10 + product_sprite: {fileID: 21300000, guid: 17d59b2d4d882c04480a40119a442279, type: 3} + stock: 5 + UIPrepTimer: {fileID: 741721532275571425} +--- !u!1 &8573757128841810314 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8698176937736832364} + - component: {fileID: 1257566705329692516} + - component: {fileID: 4177634269230622093} + - component: {fileID: 6139516100439078752} + m_Layer: 8 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &8698176937736832364 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8573757128841810314} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.01, y: 0.01, z: 1} + m_Children: + - {fileID: 741721532275571424} + m_Father: {fileID: 4478636634695997810} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: -0.0039, y: -0.0018} + m_SizeDelta: {x: 24.022388, y: 31.878922} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!223 &1257566705329692516 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8573757128841810314} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 2 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_AdditionalShaderChannelsFlag: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!114 &4177634269230622093 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8573757128841810314} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 +--- !u!114 &6139516100439078752 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8573757128841810314} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!1001 &4775015079426591331 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 8698176937736832364} + m_Modifications: + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_AnchorMax.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_AnchorMax.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_SizeDelta.x + value: -5.804775 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_SizeDelta.y + value: -13.292263 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909068, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_Name + value: CircleTimer + objectReference: {fileID: 0} + - target: {fileID: 5192471320581481922, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_AnchoredPosition.x + value: -0.11000061 + objectReference: {fileID: 0} + - target: {fileID: 5192471320581481922, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_AnchoredPosition.y + value: -0.059998512 + objectReference: {fileID: 0} + - target: {fileID: 7027467526786473816, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_AnchoredPosition.x + value: -0.38095284 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 887fdd182800875449ec5ddf381bcf87, type: 3} +--- !u!224 &741721532275571424 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + m_PrefabInstance: {fileID: 4775015079426591331} + m_PrefabAsset: {fileID: 0} +--- !u!114 &741721532275571425 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 5192471320214909058, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + m_PrefabInstance: {fileID: 4775015079426591331} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: da748f5c6c44f274786e0947a0c6bbf8, type: 3} + m_Name: + m_EditorClassIdentifier: diff --git a/Assets/Prefabs/Production_workshop.prefab.meta b/Assets/Prefabs/Production_workshop.prefab.meta new file mode 100644 index 0000000..1f66717 --- /dev/null +++ b/Assets/Prefabs/Production_workshop.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3baa223794d1dea4c986a5384a835c16 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Tests/SampleScene.unity b/Assets/Scenes/Tests/SampleScene.unity index ed56c1d..58a69b3 100644 --- a/Assets/Scenes/Tests/SampleScene.unity +++ b/Assets/Scenes/Tests/SampleScene.unity @@ -3614,6 +3614,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: prepTime: 2 + UIPrepTimer: {fileID: 0} --- !u!61 &706948615 BoxCollider2D: m_ObjectHideFlags: 0 @@ -7751,134 +7752,6 @@ BoxCollider2D: serializedVersion: 2 m_Size: {x: 0.25, y: 0.25} m_EdgeRadius: 0 ---- !u!1 &1165291007 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1165291011} - - component: {fileID: 1165291010} - - component: {fileID: 1165291009} - - component: {fileID: 1165291008} - m_Layer: 8 - m_Name: Barrel - m_TagString: Usable - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &1165291008 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1165291007} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fcf63a52df2d5404e8f76b4e989d7360, type: 3} - m_Name: - m_EditorClassIdentifier: - prepTime: 2 - product_name: beer - product_value: 10 - product_sprite: {fileID: 21300000, guid: 17d59b2d4d882c04480a40119a442279, type: 3} - stock: 5 ---- !u!61 &1165291009 -BoxCollider2D: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1165291007} - m_Enabled: 1 - m_Density: 1 - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_UsedByEffector: 0 - m_UsedByComposite: 0 - m_Offset: {x: 0, y: 0} - m_SpriteTilingProperty: - border: {x: 0, y: 0, z: 0, w: 0} - pivot: {x: 0.5, y: 0.5} - oldSize: {x: 0.23333333, y: 0.31666666} - newSize: {x: 1.4, y: 1.9} - adaptiveTilingThreshold: 0.5 - drawMode: 0 - adaptiveTiling: 0 - m_AutoTiling: 0 - serializedVersion: 2 - m_Size: {x: 0.23333333, y: 0.31666666} - m_EdgeRadius: 0 ---- !u!212 &1165291010 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1165291007} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_Sprite: {fileID: -8568042794190644651, guid: bfabe3920bf35724b9a95bf95f5431a9, - type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 1.4, y: 1.9} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!4 &1165291011 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1165291007} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -1.25, y: 2.25, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 7 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1229262387 GameObject: m_ObjectHideFlags: 0 @@ -34375,6 +34248,75 @@ Tilemap: e31: 0 e32: 0 e33: 1 +--- !u!1001 &4478636633678149489 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 4478636634695997810, guid: 3baa223794d1dea4c986a5384a835c16, + type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 4478636634695997810, guid: 3baa223794d1dea4c986a5384a835c16, + type: 3} + propertyPath: m_LocalPosition.x + value: -1.25 + objectReference: {fileID: 0} + - target: {fileID: 4478636634695997810, guid: 3baa223794d1dea4c986a5384a835c16, + type: 3} + propertyPath: m_LocalPosition.y + value: 2.25 + objectReference: {fileID: 0} + - target: {fileID: 4478636634695997810, guid: 3baa223794d1dea4c986a5384a835c16, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4478636634695997810, guid: 3baa223794d1dea4c986a5384a835c16, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4478636634695997810, guid: 3baa223794d1dea4c986a5384a835c16, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4478636634695997810, guid: 3baa223794d1dea4c986a5384a835c16, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4478636634695997810, guid: 3baa223794d1dea4c986a5384a835c16, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4478636634695997810, guid: 3baa223794d1dea4c986a5384a835c16, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4478636634695997810, guid: 3baa223794d1dea4c986a5384a835c16, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4478636634695997810, guid: 3baa223794d1dea4c986a5384a835c16, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4478636634695998094, guid: 3baa223794d1dea4c986a5384a835c16, + type: 3} + propertyPath: m_Name + value: Production_workshop + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3baa223794d1dea4c986a5384a835c16, type: 3} --- !u!1001 &5192471319708689675 PrefabInstance: m_ObjectHideFlags: 0 @@ -34492,6 +34434,16 @@ PrefabInstance: propertyPath: m_Name value: ServiceTimer objectReference: {fileID: 0} + - target: {fileID: 5192471320581481922, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_AnchoredPosition.x + value: -0.11000061 + objectReference: {fileID: 0} + - target: {fileID: 5192471320581481922, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_AnchoredPosition.y + value: -0.060001373 + objectReference: {fileID: 0} - target: {fileID: 7027467526786473816, guid: 887fdd182800875449ec5ddf381bcf87, type: 3} propertyPath: m_AnchoredPosition.y diff --git a/Assets/Scripts/Production_workshop.cs b/Assets/Scripts/Production_workshop.cs index 3344504..0887cd0 100644 --- a/Assets/Scripts/Production_workshop.cs +++ b/Assets/Scripts/Production_workshop.cs @@ -16,6 +16,13 @@ public class Production_workshop : Workshop //Return wether the object is taken from tavernkeeper public override bool use(GameObject userObject) { + if(userObject.tag=="Player") + { + playerInteracting = true; //Set interaction indicator + Debug.Log("Player interacting"); + } + + if(userObject != null) { // Debug.Log(userObject.tag); @@ -27,6 +34,15 @@ public class Production_workshop : Workshop { Debug.Log(userObject.name+ " stocked in "+gameObject.name); currentMug=userObject; + + if(UIPrepTimer != null) //Display UI prep timer + { + prepTimer=0.0f; + UIPrepTimer.SetValue(prepTimer/prepTime); + UIPrepTimer.DisplayIcon(product_sprite); + UIPrepTimer.gameObject.SetActive(true); + } + return true; //Object taken } else @@ -34,7 +50,7 @@ public class Production_workshop : Workshop Debug.Log(userObject.name+" cannot be filled with "+product_name+ " -stock:"+stock); } } - else if(userObject.tag=="Player" && currentMug != null) //Give tavernkeeper currentMug + else if(prepTimer>=prepTime && userObject.tag=="Player" && currentMug != null) //Give tavernkeeper currentMug if finished preparation { Tavernkeeper_controller player = userObject.GetComponent(); Mug mug = currentMug.GetComponent(); @@ -44,6 +60,8 @@ public class Production_workshop : Workshop //Fill mug mug.fill(new Consumable(product_name,product_value,product_sprite)); stock--; + UIPrepTimer.gameObject.SetActive(false); //Turn off UI prep timer + //Give mug player.grab(currentMug); currentMug=null; @@ -51,9 +69,8 @@ public class Production_workshop : Workshop } } else - { - Debug.Log(gameObject.name+" doesn't handle : "+userObject); - } + Debug.LogWarning(gameObject.name+" doesn't handle : "+userObject); + return false; //Object not taken } } diff --git a/Assets/Scripts/UI/UITimer.cs b/Assets/Scripts/UI/UITimer.cs index 1f9a20d..0d179fe 100644 --- a/Assets/Scripts/UI/UITimer.cs +++ b/Assets/Scripts/UI/UITimer.cs @@ -16,11 +16,15 @@ public class UITimer : MonoBehaviour time.color = Color.green; } - //TODO: Override DisplayIcon to set Icon public void DisplayIcon(bool value) { icon.gameObject.SetActive(value); } + public void DisplayIcon(Sprite newIcon) + { + icon.sprite=newIcon; + icon.gameObject.SetActive(true); + } //Value : [0,1] public void SetValue(float value) diff --git a/Assets/Scripts/Workshop.cs b/Assets/Scripts/Workshop.cs index 6bebe43..0649709 100644 --- a/Assets/Scripts/Workshop.cs +++ b/Assets/Scripts/Workshop.cs @@ -6,12 +6,17 @@ using UnityEngine; [RequireComponent(typeof(Collider2D))] public abstract class Workshop : MonoBehaviour, IUsable { - public float prepTime = 2.0f; //Time for preparation of product protected GameObject currentMug = null; //Mug currently stocked in workshop + public float prepTime = 2.0f; //Time for preparation of product + protected float prepTimer= 0.0f; + public UITimer UIPrepTimer = null; //Script of the UI display + protected bool playerInteracting = false; //Wether the player is interacting w/ the workshop + // bool playerInteractFrame = false; //Wether the player used the workshop in the current frame + //Handle objects interactions w/ Workshop //Return wether the object is taken from tavernkeeper - public abstract bool use(GameObject userObject); + public abstract bool use(GameObject userObject); // Start is called before the first frame update void Start() @@ -20,5 +25,23 @@ public abstract class Workshop : MonoBehaviour, IUsable Debug.LogWarning(gameObject.name+" layer should be set to 'Interactions' to work properly"); if(gameObject.tag != "Usable") Debug.LogWarning(gameObject.name+" tag should be set to 'Usable' to work properly"); + if(UIPrepTimer is null) + Debug.LogWarning(gameObject.name+" doesn't have a UIPrepTimer set"); + else + UIPrepTimer.gameObject.SetActive(false); + } + + void LateUpdate() + { + if(playerInteracting) + { + if(prepTimer