From cf8ea24b0ca79104b900e32e548c5fb0d555a33a Mon Sep 17 00:00:00 2001 From: ziegenf4 <ziegenf4@msu.edu> Date: Sun, 7 Apr 2024 15:47:27 -0400 Subject: [PATCH] adding timer --- Assets/Prefabs/UI/Timer.prefab | 151 ++++++++++++++++++ Assets/Prefabs/UI/Timer.prefab.meta | 7 + .../Finalized Scenes/LevelV1-Finalized.unity | 112 ++++++++++++- Assets/Scripts/Game Systems/Timer.cs | 25 +++ Assets/Scripts/Game Systems/Timer.cs.meta | 11 ++ 5 files changed, 305 insertions(+), 1 deletion(-) create mode 100644 Assets/Prefabs/UI/Timer.prefab create mode 100644 Assets/Prefabs/UI/Timer.prefab.meta create mode 100644 Assets/Scripts/Game Systems/Timer.cs create mode 100644 Assets/Scripts/Game Systems/Timer.cs.meta diff --git a/Assets/Prefabs/UI/Timer.prefab b/Assets/Prefabs/UI/Timer.prefab new file mode 100644 index 0000000..e2a5ab4 --- /dev/null +++ b/Assets/Prefabs/UI/Timer.prefab @@ -0,0 +1,151 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2137160592996659769 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7572637330722376441} + - component: {fileID: 477628193780030488} + - component: {fileID: 1941420676835940468} + - component: {fileID: 5423666487528666627} + m_Layer: 5 + m_Name: Timer + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &7572637330722376441 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2137160592996659769} + 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: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: -144} + m_SizeDelta: {x: 200, y: 50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &477628193780030488 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2137160592996659769} + m_CullTransparentMesh: 1 +--- !u!114 &1941420676835940468 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2137160592996659769} + 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: New Text + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, 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: 36 + m_fontSizeBase: 36 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 256 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 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!114 &5423666487528666627 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2137160592996659769} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e3b00fef8ee50404caa9bc80c9e2c8d1, type: 3} + m_Name: + m_EditorClassIdentifier: + timerText: {fileID: 1941420676835940468} + remainingTime: 300 diff --git a/Assets/Prefabs/UI/Timer.prefab.meta b/Assets/Prefabs/UI/Timer.prefab.meta new file mode 100644 index 0000000..26fe1f8 --- /dev/null +++ b/Assets/Prefabs/UI/Timer.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9efdc9c2a94b8a5478023b732d5aa5c5 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Finalized Scenes/LevelV1-Finalized.unity b/Assets/Scenes/Finalized Scenes/LevelV1-Finalized.unity index d07d01d..6e31c66 100644 --- a/Assets/Scenes/Finalized Scenes/LevelV1-Finalized.unity +++ b/Assets/Scenes/Finalized Scenes/LevelV1-Finalized.unity @@ -16235,9 +16235,17 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] - m_AddedGameObjects: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 267049304060646192, guid: 06692ad41b0a861469a27086300d9bd0, type: 3} + insertIndex: -1 + addedObject: {fileID: 1851033580} m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06692ad41b0a861469a27086300d9bd0, type: 3} +--- !u!224 &1615970939 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 267049304060646192, guid: 06692ad41b0a861469a27086300d9bd0, type: 3} + m_PrefabInstance: {fileID: 1615970938} + m_PrefabAsset: {fileID: 0} --- !u!1 &1618479807 GameObject: m_ObjectHideFlags: 0 @@ -18146,6 +18154,11 @@ Transform: m_CorrespondingSourceObject: {fileID: 5128530458926381508, guid: 27582e192e140e44b8716432ed6f0d63, type: 3} m_PrefabInstance: {fileID: 1847084902} m_PrefabAsset: {fileID: 0} +--- !u!224 &1851033580 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + m_PrefabInstance: {fileID: 4108585882020976467} + m_PrefabAsset: {fileID: 0} --- !u!1 &1854262026 GameObject: m_ObjectHideFlags: 0 @@ -39873,6 +39886,103 @@ Transform: m_CorrespondingSourceObject: {fileID: 2130861646226648366, guid: 21fef04dd509042798bbb4ed0da0a14c, type: 3} m_PrefabInstance: {fileID: 2394050075307071305} m_PrefabAsset: {fileID: 0} +--- !u!1001 &4108585882020976467 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 1615970939} + m_Modifications: + - target: {fileID: 2137160592996659769, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_Name + value: Timer + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_AnchorMax.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_AnchorMax.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_AnchorMin.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_AnchorMin.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_SizeDelta.x + value: 200 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_SizeDelta.y + value: 50 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_AnchoredPosition.y + value: -144 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7572637330722376441, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9efdc9c2a94b8a5478023b732d5aa5c5, type: 3} --- !u!1001 &6112966338389217776 PrefabInstance: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/Game Systems/Timer.cs b/Assets/Scripts/Game Systems/Timer.cs new file mode 100644 index 0000000..0d19977 --- /dev/null +++ b/Assets/Scripts/Game Systems/Timer.cs @@ -0,0 +1,25 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using TMPro; + +public class Timer : MonoBehaviour +{ + [SerializeField] + private TextMeshProUGUI timerText; + [SerializeField] + private float remainingTime; + + // Update is called once per frame + void Update() + { + remainingTime -= Time.deltaTime; + if (remainingTime < 0) + { + //gameover + } + int minutes = Mathf.FloorToInt(remainingTime / 60); + int seconds = Mathf.FloorToInt(remainingTime % 60); + timerText.text = string.Format("{0:00}:{1:00}", minutes, seconds); + } +} diff --git a/Assets/Scripts/Game Systems/Timer.cs.meta b/Assets/Scripts/Game Systems/Timer.cs.meta new file mode 100644 index 0000000..c24c46c --- /dev/null +++ b/Assets/Scripts/Game Systems/Timer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e3b00fef8ee50404caa9bc80c9e2c8d1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: -- GitLab