diff --git a/Assets/Prefabs/Characters/Tavernkeeper.prefab b/Assets/Prefabs/Characters/Tavernkeeper.prefab index cc625e1..b7077d3 100644 --- a/Assets/Prefabs/Characters/Tavernkeeper.prefab +++ b/Assets/Prefabs/Characters/Tavernkeeper.prefab @@ -14,6 +14,7 @@ GameObject: - component: {fileID: 5841415790350674205} - component: {fileID: 5841415790350674204} - component: {fileID: 5841415790350674207} + - component: {fileID: 1810629367} m_Layer: 0 m_Name: Tavernkeeper m_TagString: Player @@ -167,3 +168,20 @@ MonoBehaviour: m_EditorClassIdentifier: mvt_speed: 5 action_dist: 1 + action_cd: 0.2 +--- !u!208 &1810629367 +NavMeshObstacle: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5841415790350674203} + m_Enabled: 1 + serializedVersion: 3 + m_Shape: 0 + m_Extents: {x: 0.2, y: 0.2, z: 0.2} + m_MoveThreshold: 0.1 + m_Carve: 1 + m_CarveOnlyStationary: 1 + m_Center: {x: 0, y: 0.2, z: 0} + m_TimeToStationary: 0.5 diff --git a/Assets/Prefabs/Workshops.meta b/Assets/Prefabs/Workshops.meta new file mode 100644 index 0000000..62f3d28 --- /dev/null +++ b/Assets/Prefabs/Workshops.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: fd3f1df339c631c4aa5bb449ba99f843 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Workshops/Cleaning_workshop.prefab b/Assets/Prefabs/Workshops/Cleaning_workshop.prefab new file mode 100644 index 0000000..5e4bd8d --- /dev/null +++ b/Assets/Prefabs/Workshops/Cleaning_workshop.prefab @@ -0,0 +1,379 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &3180865248817503820 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3180865248817503821} + - component: {fileID: 3180865248817503816} + - component: {fileID: 3180865248817503819} + - component: {fileID: 3180865248817503818} + m_Layer: 8 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3180865248817503821 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3180865248817503820} + 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: 7218119223682902137} + m_Father: {fileID: 3180865249454882887} + 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.0025, y: 0.5007} + m_SizeDelta: {x: 50.83068, y: 92.88135} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!223 &3180865248817503816 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3180865248817503820} + 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 &3180865248817503819 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3180865248817503820} + 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 &3180865248817503818 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3180865248817503820} + 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!1 &3180865249454882891 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3180865249454882887} + - component: {fileID: 3180865249454882886} + - component: {fileID: 3180865249454882889} + - component: {fileID: 3180865249454882888} + m_Layer: 8 + m_Name: Cleaning_workshop + m_TagString: Usable + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3180865249454882887 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3180865249454882891} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -3.74, y: 1.67, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 3180865248817503821} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &3180865249454882886 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3180865249454882891} + 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: 21300000, guid: fee52cc4fd1c52f48af7aef1ce478530, 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, y: 1.843362} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 1 +--- !u!61 &3180865249454882889 +BoxCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3180865249454882891} + 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.4825} + m_SpriteTilingProperty: + border: {x: 0, y: 0, z: 0, w: 0} + pivot: {x: 0.5, y: 0} + oldSize: {x: 0.5235, y: 0.965} + newSize: {x: 1, y: 1.843362} + adaptiveTilingThreshold: 0.5 + drawMode: 0 + adaptiveTiling: 0 + m_AutoTiling: 0 + serializedVersion: 2 + m_Size: {x: 0.5235, y: 0.965} + m_EdgeRadius: 0 +--- !u!114 &3180865249454882888 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3180865249454882891} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: faa67d8085483414c947fc626db5d950, type: 3} + m_Name: + m_EditorClassIdentifier: + prepTime: 2 + UIPrepTimer: {fileID: 7218119223682902136} + interactionSmoothing: 0.3 +--- !u!1001 &3180865249617746170 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 3180865248817503821} + 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: -15.792149 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_SizeDelta.y + value: -58.518185 + 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.29999924 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 5.799999 + 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.05999756 + 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 &7218119223682902137 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + m_PrefabInstance: {fileID: 3180865249617746170} + m_PrefabAsset: {fileID: 0} +--- !u!114 &7218119223682902136 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 5192471320214909058, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + m_PrefabInstance: {fileID: 3180865249617746170} + 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/Workshops/Cleaning_workshop.prefab.meta b/Assets/Prefabs/Workshops/Cleaning_workshop.prefab.meta new file mode 100644 index 0000000..2a82c27 --- /dev/null +++ b/Assets/Prefabs/Workshops/Cleaning_workshop.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: dc98d8adc51893340aee6dce142bf516 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Production_workshop.prefab b/Assets/Prefabs/Workshops/Production_workshop.prefab similarity index 99% rename from Assets/Prefabs/Production_workshop.prefab rename to Assets/Prefabs/Workshops/Production_workshop.prefab index b90a648..3a5f5ef 100644 --- a/Assets/Prefabs/Production_workshop.prefab +++ b/Assets/Prefabs/Workshops/Production_workshop.prefab @@ -125,11 +125,12 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: prepTime: 2 + UIPrepTimer: {fileID: 741721532275571425} + interactionSmoothing: 0 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 diff --git a/Assets/Prefabs/Production_workshop.prefab.meta b/Assets/Prefabs/Workshops/Production_workshop.prefab.meta similarity index 100% rename from Assets/Prefabs/Production_workshop.prefab.meta rename to Assets/Prefabs/Workshops/Production_workshop.prefab.meta diff --git a/Assets/Scenes/Tests/SampleScene.unity b/Assets/Scenes/Tests/SampleScene.unity index 58a69b3..74487be 100644 --- a/Assets/Scenes/Tests/SampleScene.unity +++ b/Assets/Scenes/Tests/SampleScene.unity @@ -124,6 +124,105 @@ NavMeshSettings: debug: m_Flags: 0 m_NavMeshData: {fileID: 0} +--- !u!1 &2191362 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2191363} + - component: {fileID: 2191366} + - component: {fileID: 2191365} + - component: {fileID: 2191364} + m_Layer: 8 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2191363 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2191362} + 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: 219668603} + m_Father: {fileID: 706948617} + 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.0025, y: 0.5007} + m_SizeDelta: {x: 50.83068, y: 92.88135} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &2191364 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2191362} + 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!114 &2191365 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2191362} + 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!223 &2191366 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2191362} + 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!1 &67618024 GameObject: m_ObjectHideFlags: 0 @@ -323,6 +422,24 @@ Transform: m_Father: {fileID: 1863361785} m_RootOrder: 19 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!224 &219668603 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + m_PrefabInstance: {fileID: 870201012} + m_PrefabAsset: {fileID: 0} +--- !u!114 &219668604 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 5192471320214909058, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + m_PrefabInstance: {fileID: 870201012} + 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: --- !u!1 &238532359 GameObject: m_ObjectHideFlags: 0 @@ -3614,7 +3731,8 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: prepTime: 2 - UIPrepTimer: {fileID: 0} + UIPrepTimer: {fileID: 219668604} + interactionSmoothing: 0.3 --- !u!61 &706948615 BoxCollider2D: m_ObjectHideFlags: 0 @@ -3702,7 +3820,8 @@ Transform: m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -3.74, y: 1.67, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] + m_Children: + - {fileID: 2191363} m_Father: {fileID: 0} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -3736,6 +3855,140 @@ Transform: m_Father: {fileID: 1863361785} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &870201012 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 2191363} + 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: -15.792149 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_SizeDelta.y + value: -58.518185 + 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.29999924 + objectReference: {fileID: 0} + - target: {fileID: 5192471320214909059, guid: 887fdd182800875449ec5ddf381bcf87, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 5.799999 + 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.05999756 + 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!1 &885015723 GameObject: m_ObjectHideFlags: 0 @@ -32791,28 +33044,6 @@ Transform: m_Father: {fileID: 1863361785} m_RootOrder: 12 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &1810629360 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 5841415790350674203, guid: dc287deb81f09d8419a5051e1d177e74, - type: 3} - m_PrefabInstance: {fileID: 5841415791122168402} - m_PrefabAsset: {fileID: 0} ---- !u!208 &1810629367 -NavMeshObstacle: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1810629360} - m_Enabled: 1 - serializedVersion: 3 - m_Shape: 0 - m_Extents: {x: 0.2, y: 0.2, z: 0.2} - m_MoveThreshold: 0.1 - m_Carve: 1 - m_CarveOnlyStationary: 1 - m_Center: {x: 0, y: 0.2, z: 0} - m_TimeToStationary: 0.5 --- !u!1 &1863361784 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/Cleaning_workshop.cs b/Assets/Scripts/Cleaning_workshop.cs index a1606d8..79b07c6 100644 --- a/Assets/Scripts/Cleaning_workshop.cs +++ b/Assets/Scripts/Cleaning_workshop.cs @@ -21,13 +21,24 @@ public class Cleaning_workshop : Workshop if (mug!= null) { Debug.Log(userObject.name+ " stocked in "+gameObject.name); - if (mug.content != null)//Empty mug + if(mug.content != null)//Empty mug + { mug.consume(); + prepTimer=0.0f; + } + else if(!mug.dirty)//Mug already clean + prepTimer=prepTime; + stock.Add(userObject); + return true; //Object taken } } - else if(userObject.tag=="Player" && currentMug!=null) //Give clean mug + else if(userObject.tag=="Player" && prepTimer=prepTime) //Give tavernkeeper currentMug if cleaned { Tavernkeeper_controller player = userObject.GetComponent(); Mug mug = currentMug.GetComponent(); @@ -39,6 +50,8 @@ public class Cleaning_workshop : Workshop //Give mug player.grab(currentMug); currentMug=null; + + UIPrepTimer.gameObject.SetActive(false); //Turn off UI prep timer } } } @@ -53,6 +66,13 @@ public class Cleaning_workshop : Workshop { currentMug=stock[0]; stock.RemoveAt(0); + + if(UIPrepTimer != null) //Display UI prep timer + { + UIPrepTimer.SetValue(prepTimer/prepTime); + UIPrepTimer.DisplayIcon(false); + UIPrepTimer.gameObject.SetActive(true); + } } } } diff --git a/Assets/Scripts/Production_workshop.cs b/Assets/Scripts/Production_workshop.cs index 0887cd0..a974414 100644 --- a/Assets/Scripts/Production_workshop.cs +++ b/Assets/Scripts/Production_workshop.cs @@ -15,19 +15,12 @@ public class Production_workshop : Workshop //Handle objects interactions w/ 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); //TODO : Gérer Grabable qui ne sont pas des mugs ? - if(userObject.tag=="Grabable" && currentMug is null) + if(userObject.tag=="Grabable" && currentMug is null) //Try to stock Mug into workshop { Mug mug = userObject.GetComponent(); if (mug!= null && mug.content is null && !mug.dirty && stock>0) //Mug clean & empty + remaining stock in workshop @@ -50,7 +43,11 @@ public class Production_workshop : Workshop Debug.Log(userObject.name+" cannot be filled with "+product_name+ " -stock:"+stock); } } - else if(prepTimer>=prepTime && userObject.tag=="Player" && currentMug != null) //Give tavernkeeper currentMug if finished preparation + else if(userObject.tag=="Player" && prepTimer=prepTime) //Give tavernkeeper currentMug if finished preparation { Tavernkeeper_controller player = userObject.GetComponent(); Mug mug = currentMug.GetComponent(); diff --git a/Assets/Scripts/UI/UITimer.cs b/Assets/Scripts/UI/UITimer.cs index 0d179fe..f8d1d3a 100644 --- a/Assets/Scripts/UI/UITimer.cs +++ b/Assets/Scripts/UI/UITimer.cs @@ -29,7 +29,7 @@ public class UITimer : MonoBehaviour //Value : [0,1] public void SetValue(float value) { - if(value>1||value<0) + if(value>1.01||value<-0.01) //Add a bit of flexibility so it only display real bad use Debug.LogWarning(gameObject.name+" - Timer value out of range [0,1]: "+value); //Change time color if(value>0.66) diff --git a/Assets/Scripts/Workshop.cs b/Assets/Scripts/Workshop.cs index 0649709..8070b6f 100644 --- a/Assets/Scripts/Workshop.cs +++ b/Assets/Scripts/Workshop.cs @@ -12,12 +12,30 @@ public abstract class Workshop : MonoBehaviour, IUsable 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 + protected float interactionCd = 0.0f; //Time to consider the interaction stopped + public float interactionSmoothing = 0.0f; //% of action_cd added to the interaction CD for smooth continued interaction + protected float cdTimer = 0.0f; //Handle objects interactions w/ Workshop //Return wether the object is taken from tavernkeeper public abstract bool use(GameObject userObject); + //Handle continuous interaction w/ Workshop + protected void continueUse(GameObject userObject) + { + Debug.Log(gameObject.name+" still used by "+userObject.name); + if(interactionCd<0.01f) //No interaction CD => Try to set it up + { + Tavernkeeper_controller player = userObject.GetComponent(); + if(player != null) + interactionCd=player.action_cd*(1.0f+interactionSmoothing); //=action_cd+ interactionSmoothing(%) action_cd (for smooth continued interaction) + else + Debug.LogWarning(userObject.name+" cannot have a continuous interaction on "+gameObject.name); + } + playerInteracting = true; //Set interaction indicator + cdTimer = interactionCd; //Reset Interaction CD + } + // Start is called before the first frame update void Start() { @@ -31,17 +49,23 @@ public abstract class Workshop : MonoBehaviour, IUsable UIPrepTimer.gameObject.SetActive(false); } + //LateUpdate is called after classic Updates void LateUpdate() { if(playerInteracting) { + //Continue Preparation if(prepTimer