mirror of
				https://github.com/DerTyp7/example-top-down-unity.git
				synced 2025-10-31 05:17:07 +01:00 
			
		
		
		
	Merge branch 'main' into Tools
This commit is contained in:
		
							
								
								
									
										8
									
								
								Assets/Scripts/Calendar.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								Assets/Scripts/Calendar.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: 419a6c97c6863fe4bba52001e71d1df1 | ||||
| folderAsset: yes | ||||
| DefaultImporter: | ||||
|   externalObjects: {} | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										72
									
								
								Assets/Scripts/Calendar/Calendar.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								Assets/Scripts/Calendar/Calendar.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,72 @@ | ||||
| using System; | ||||
| using UnityEngine; | ||||
| using UnityEngine.UI; | ||||
| using TMPro; | ||||
|  | ||||
| public class Calendar : MonoBehaviour | ||||
| { | ||||
|     TimeManager timeManager; | ||||
|     Image prevImage; | ||||
|     Transform daysTransform; | ||||
|  | ||||
|     [SerializeField] | ||||
|     Color currentDayColor; | ||||
|     Color originDayColor; | ||||
|  | ||||
|     [SerializeField] | ||||
|     TextMeshProUGUI monthText; | ||||
|     [SerializeField] | ||||
|     TextMeshProUGUI yearText; | ||||
|      | ||||
|  | ||||
|     private void Start() | ||||
|     { | ||||
|         daysTransform = transform.Find("Days"); | ||||
|         timeManager = GameObject.Find("GameManager").GetComponent<TimeManager>(); | ||||
|         originDayColor = daysTransform.Find("1").gameObject.GetComponent<Image>().color; | ||||
|     } | ||||
|  | ||||
|     void Update() | ||||
|     { | ||||
|         if(gameObject.activeSelf) | ||||
|             RefreshCalendar(); | ||||
|     } | ||||
|  | ||||
|     void RefreshCalendar() | ||||
|     { | ||||
|         DateTime dateTime = timeManager.GetDateTime(); | ||||
|  | ||||
|         int counter; | ||||
|  | ||||
|         int daysInMonth = DateTime.DaysInMonth(dateTime.Year, dateTime.Month); | ||||
|  | ||||
|         monthText.text = dateTime.ToString("MMMM"); | ||||
|         yearText.text = dateTime.ToString("yyyy"); | ||||
|  | ||||
|         counter = 1; | ||||
|         while (counter <= 31) | ||||
|         { | ||||
|             if (counter >= daysInMonth + 1) | ||||
|             { | ||||
|                 daysTransform.Find(counter.ToString()).gameObject.SetActive(false); | ||||
|             } | ||||
|             else | ||||
|             { | ||||
|                 daysTransform.Find(counter.ToString()).gameObject.SetActive(true); | ||||
|             } | ||||
|  | ||||
|             counter++; | ||||
|         } | ||||
|  | ||||
|  | ||||
|  | ||||
|         if (prevImage != daysTransform.Find(dateTime.Day.ToString()).gameObject.GetComponent<Image>()) | ||||
|         { | ||||
|             if (prevImage != null) | ||||
|                 prevImage.color = originDayColor; | ||||
|  | ||||
|             daysTransform.Find(dateTime.Day.ToString()).gameObject.GetComponent<Image>().color = currentDayColor; | ||||
|             prevImage = daysTransform.Find(dateTime.Day.ToString()).gameObject.GetComponent<Image>(); | ||||
|         } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										11
									
								
								Assets/Scripts/Calendar/Calendar.cs.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								Assets/Scripts/Calendar/Calendar.cs.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: 96c62da3e09569940847187705433290 | ||||
| MonoImporter: | ||||
|   externalObjects: {} | ||||
|   serializedVersion: 2 | ||||
|   defaultReferences: [] | ||||
|   executionOrder: 0 | ||||
|   icon: {instanceID: 0} | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										8
									
								
								Assets/Scripts/CharSprites.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								Assets/Scripts/CharSprites.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: 741c7832dc601f543a927012a305d288 | ||||
| folderAsset: yes | ||||
| DefaultImporter: | ||||
|   externalObjects: {} | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										16
									
								
								Assets/Scripts/CharSprites/0.asset
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								Assets/Scripts/CharSprites/0.asset
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,16 @@ | ||||
| %YAML 1.1 | ||||
| %TAG !u! tag:unity3d.com,2011: | ||||
| --- !u!114 &11400000 | ||||
| MonoBehaviour: | ||||
|   m_ObjectHideFlags: 0 | ||||
|   m_CorrespondingSourceObject: {fileID: 0} | ||||
|   m_PrefabInstance: {fileID: 0} | ||||
|   m_PrefabAsset: {fileID: 0} | ||||
|   m_GameObject: {fileID: 0} | ||||
|   m_Enabled: 1 | ||||
|   m_EditorHideFlags: 0 | ||||
|   m_Script: {fileID: 11500000, guid: 56080594b83657b43bd583e66fc21ec2, type: 3} | ||||
|   m_Name: 0 | ||||
|   m_EditorClassIdentifier:  | ||||
|   character: 48 | ||||
|   sprite: {fileID: -137505861, guid: 5e57c8b70699ac44aab52f27c9fdb5f3, type: 3} | ||||
							
								
								
									
										8
									
								
								Assets/Scripts/CharSprites/0.asset.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								Assets/Scripts/CharSprites/0.asset.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: 5cf69db9da6a3174fbf1c2db03e4d273 | ||||
| NativeFormatImporter: | ||||
|   externalObjects: {} | ||||
|   mainObjectFileID: 11400000 | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										16
									
								
								Assets/Scripts/CharSprites/1.asset
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								Assets/Scripts/CharSprites/1.asset
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,16 @@ | ||||
| %YAML 1.1 | ||||
| %TAG !u! tag:unity3d.com,2011: | ||||
| --- !u!114 &11400000 | ||||
| MonoBehaviour: | ||||
|   m_ObjectHideFlags: 0 | ||||
|   m_CorrespondingSourceObject: {fileID: 0} | ||||
|   m_PrefabInstance: {fileID: 0} | ||||
|   m_PrefabAsset: {fileID: 0} | ||||
|   m_GameObject: {fileID: 0} | ||||
|   m_Enabled: 1 | ||||
|   m_EditorHideFlags: 0 | ||||
|   m_Script: {fileID: 11500000, guid: 56080594b83657b43bd583e66fc21ec2, type: 3} | ||||
|   m_Name: 1 | ||||
|   m_EditorClassIdentifier:  | ||||
|   character: 49 | ||||
|   sprite: {fileID: -962980277, guid: 5e57c8b70699ac44aab52f27c9fdb5f3, type: 3} | ||||
							
								
								
									
										8
									
								
								Assets/Scripts/CharSprites/1.asset.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								Assets/Scripts/CharSprites/1.asset.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: f0634e776b7110740b86e03f868a8f61 | ||||
| NativeFormatImporter: | ||||
|   externalObjects: {} | ||||
|   mainObjectFileID: 11400000 | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										16
									
								
								Assets/Scripts/CharSprites/2.asset
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								Assets/Scripts/CharSprites/2.asset
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,16 @@ | ||||
| %YAML 1.1 | ||||
| %TAG !u! tag:unity3d.com,2011: | ||||
| --- !u!114 &11400000 | ||||
| MonoBehaviour: | ||||
|   m_ObjectHideFlags: 0 | ||||
|   m_CorrespondingSourceObject: {fileID: 0} | ||||
|   m_PrefabInstance: {fileID: 0} | ||||
|   m_PrefabAsset: {fileID: 0} | ||||
|   m_GameObject: {fileID: 0} | ||||
|   m_Enabled: 1 | ||||
|   m_EditorHideFlags: 0 | ||||
|   m_Script: {fileID: 11500000, guid: 56080594b83657b43bd583e66fc21ec2, type: 3} | ||||
|   m_Name: 2 | ||||
|   m_EditorClassIdentifier:  | ||||
|   character: 50 | ||||
|   sprite: {fileID: 487589554, guid: 5e57c8b70699ac44aab52f27c9fdb5f3, type: 3} | ||||
							
								
								
									
										8
									
								
								Assets/Scripts/CharSprites/2.asset.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								Assets/Scripts/CharSprites/2.asset.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: 1ccbdb38e3f0ee544abe81a6ddb0950c | ||||
| NativeFormatImporter: | ||||
|   externalObjects: {} | ||||
|   mainObjectFileID: 11400000 | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										16
									
								
								Assets/Scripts/CharSprites/3.asset
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								Assets/Scripts/CharSprites/3.asset
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,16 @@ | ||||
| %YAML 1.1 | ||||
| %TAG !u! tag:unity3d.com,2011: | ||||
| --- !u!114 &11400000 | ||||
| MonoBehaviour: | ||||
|   m_ObjectHideFlags: 0 | ||||
|   m_CorrespondingSourceObject: {fileID: 0} | ||||
|   m_PrefabInstance: {fileID: 0} | ||||
|   m_PrefabAsset: {fileID: 0} | ||||
|   m_GameObject: {fileID: 0} | ||||
|   m_Enabled: 1 | ||||
|   m_EditorHideFlags: 0 | ||||
|   m_Script: {fileID: 11500000, guid: 56080594b83657b43bd583e66fc21ec2, type: 3} | ||||
|   m_Name: 3 | ||||
|   m_EditorClassIdentifier:  | ||||
|   character: 51 | ||||
|   sprite: {fileID: 74470796, guid: 5e57c8b70699ac44aab52f27c9fdb5f3, type: 3} | ||||
							
								
								
									
										8
									
								
								Assets/Scripts/CharSprites/3.asset.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								Assets/Scripts/CharSprites/3.asset.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: ef26f62b59eb70d4194ec17eec59b1fb | ||||
| NativeFormatImporter: | ||||
|   externalObjects: {} | ||||
|   mainObjectFileID: 11400000 | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										16
									
								
								Assets/Scripts/CharSprites/4.asset
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								Assets/Scripts/CharSprites/4.asset
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,16 @@ | ||||
| %YAML 1.1 | ||||
| %TAG !u! tag:unity3d.com,2011: | ||||
| --- !u!114 &11400000 | ||||
| MonoBehaviour: | ||||
|   m_ObjectHideFlags: 0 | ||||
|   m_CorrespondingSourceObject: {fileID: 0} | ||||
|   m_PrefabInstance: {fileID: 0} | ||||
|   m_PrefabAsset: {fileID: 0} | ||||
|   m_GameObject: {fileID: 0} | ||||
|   m_Enabled: 1 | ||||
|   m_EditorHideFlags: 0 | ||||
|   m_Script: {fileID: 11500000, guid: 56080594b83657b43bd583e66fc21ec2, type: 3} | ||||
|   m_Name: 4 | ||||
|   m_EditorClassIdentifier:  | ||||
|   character: 52 | ||||
|   sprite: {fileID: -896167774, guid: 5e57c8b70699ac44aab52f27c9fdb5f3, type: 3} | ||||
							
								
								
									
										8
									
								
								Assets/Scripts/CharSprites/4.asset.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								Assets/Scripts/CharSprites/4.asset.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: 91df1f9de99188447a6d391f4fdd91a9 | ||||
| NativeFormatImporter: | ||||
|   externalObjects: {} | ||||
|   mainObjectFileID: 11400000 | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										16
									
								
								Assets/Scripts/CharSprites/5.asset
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								Assets/Scripts/CharSprites/5.asset
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,16 @@ | ||||
| %YAML 1.1 | ||||
| %TAG !u! tag:unity3d.com,2011: | ||||
| --- !u!114 &11400000 | ||||
| MonoBehaviour: | ||||
|   m_ObjectHideFlags: 0 | ||||
|   m_CorrespondingSourceObject: {fileID: 0} | ||||
|   m_PrefabInstance: {fileID: 0} | ||||
|   m_PrefabAsset: {fileID: 0} | ||||
|   m_GameObject: {fileID: 0} | ||||
|   m_Enabled: 1 | ||||
|   m_EditorHideFlags: 0 | ||||
|   m_Script: {fileID: 11500000, guid: 56080594b83657b43bd583e66fc21ec2, type: 3} | ||||
|   m_Name: 5 | ||||
|   m_EditorClassIdentifier:  | ||||
|   character: 53 | ||||
|   sprite: {fileID: 764630823, guid: 5e57c8b70699ac44aab52f27c9fdb5f3, type: 3} | ||||
							
								
								
									
										8
									
								
								Assets/Scripts/CharSprites/5.asset.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								Assets/Scripts/CharSprites/5.asset.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: a4230635bd95e104192dc0de15fe1d80 | ||||
| NativeFormatImporter: | ||||
|   externalObjects: {} | ||||
|   mainObjectFileID: 11400000 | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										16
									
								
								Assets/Scripts/CharSprites/6.asset
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								Assets/Scripts/CharSprites/6.asset
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,16 @@ | ||||
| %YAML 1.1 | ||||
| %TAG !u! tag:unity3d.com,2011: | ||||
| --- !u!114 &11400000 | ||||
| MonoBehaviour: | ||||
|   m_ObjectHideFlags: 0 | ||||
|   m_CorrespondingSourceObject: {fileID: 0} | ||||
|   m_PrefabInstance: {fileID: 0} | ||||
|   m_PrefabAsset: {fileID: 0} | ||||
|   m_GameObject: {fileID: 0} | ||||
|   m_Enabled: 1 | ||||
|   m_EditorHideFlags: 0 | ||||
|   m_Script: {fileID: 11500000, guid: 56080594b83657b43bd583e66fc21ec2, type: 3} | ||||
|   m_Name: 6 | ||||
|   m_EditorClassIdentifier:  | ||||
|   character: 54 | ||||
|   sprite: {fileID: 202394885, guid: 5e57c8b70699ac44aab52f27c9fdb5f3, type: 3} | ||||
							
								
								
									
										8
									
								
								Assets/Scripts/CharSprites/6.asset.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								Assets/Scripts/CharSprites/6.asset.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: 654dd30445678804a98c11ce29a6cc9f | ||||
| NativeFormatImporter: | ||||
|   externalObjects: {} | ||||
|   mainObjectFileID: 11400000 | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										16
									
								
								Assets/Scripts/CharSprites/7.asset
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								Assets/Scripts/CharSprites/7.asset
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,16 @@ | ||||
| %YAML 1.1 | ||||
| %TAG !u! tag:unity3d.com,2011: | ||||
| --- !u!114 &11400000 | ||||
| MonoBehaviour: | ||||
|   m_ObjectHideFlags: 0 | ||||
|   m_CorrespondingSourceObject: {fileID: 0} | ||||
|   m_PrefabInstance: {fileID: 0} | ||||
|   m_PrefabAsset: {fileID: 0} | ||||
|   m_GameObject: {fileID: 0} | ||||
|   m_Enabled: 1 | ||||
|   m_EditorHideFlags: 0 | ||||
|   m_Script: {fileID: 11500000, guid: 56080594b83657b43bd583e66fc21ec2, type: 3} | ||||
|   m_Name: 7 | ||||
|   m_EditorClassIdentifier:  | ||||
|   character: 55 | ||||
|   sprite: {fileID: 139823083, guid: 5e57c8b70699ac44aab52f27c9fdb5f3, type: 3} | ||||
							
								
								
									
										8
									
								
								Assets/Scripts/CharSprites/7.asset.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								Assets/Scripts/CharSprites/7.asset.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: 907350cffbf366f429b2ee2b1ac21fb9 | ||||
| NativeFormatImporter: | ||||
|   externalObjects: {} | ||||
|   mainObjectFileID: 11400000 | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										16
									
								
								Assets/Scripts/CharSprites/8.asset
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								Assets/Scripts/CharSprites/8.asset
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,16 @@ | ||||
| %YAML 1.1 | ||||
| %TAG !u! tag:unity3d.com,2011: | ||||
| --- !u!114 &11400000 | ||||
| MonoBehaviour: | ||||
|   m_ObjectHideFlags: 0 | ||||
|   m_CorrespondingSourceObject: {fileID: 0} | ||||
|   m_PrefabInstance: {fileID: 0} | ||||
|   m_PrefabAsset: {fileID: 0} | ||||
|   m_GameObject: {fileID: 0} | ||||
|   m_Enabled: 1 | ||||
|   m_EditorHideFlags: 0 | ||||
|   m_Script: {fileID: 11500000, guid: 56080594b83657b43bd583e66fc21ec2, type: 3} | ||||
|   m_Name: 8 | ||||
|   m_EditorClassIdentifier:  | ||||
|   character: 56 | ||||
|   sprite: {fileID: 1521955375, guid: 5e57c8b70699ac44aab52f27c9fdb5f3, type: 3} | ||||
							
								
								
									
										8
									
								
								Assets/Scripts/CharSprites/8.asset.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								Assets/Scripts/CharSprites/8.asset.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: 6a45ecd7a629b5a408b83f8d65f6a450 | ||||
| NativeFormatImporter: | ||||
|   externalObjects: {} | ||||
|   mainObjectFileID: 11400000 | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										16
									
								
								Assets/Scripts/CharSprites/9.asset
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								Assets/Scripts/CharSprites/9.asset
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,16 @@ | ||||
| %YAML 1.1 | ||||
| %TAG !u! tag:unity3d.com,2011: | ||||
| --- !u!114 &11400000 | ||||
| MonoBehaviour: | ||||
|   m_ObjectHideFlags: 0 | ||||
|   m_CorrespondingSourceObject: {fileID: 0} | ||||
|   m_PrefabInstance: {fileID: 0} | ||||
|   m_PrefabAsset: {fileID: 0} | ||||
|   m_GameObject: {fileID: 0} | ||||
|   m_Enabled: 1 | ||||
|   m_EditorHideFlags: 0 | ||||
|   m_Script: {fileID: 11500000, guid: 56080594b83657b43bd583e66fc21ec2, type: 3} | ||||
|   m_Name: 9 | ||||
|   m_EditorClassIdentifier:  | ||||
|   character: 57 | ||||
|   sprite: {fileID: -282099095, guid: 5e57c8b70699ac44aab52f27c9fdb5f3, type: 3} | ||||
							
								
								
									
										8
									
								
								Assets/Scripts/CharSprites/9.asset.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								Assets/Scripts/CharSprites/9.asset.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: 452f75a9bed11884fa0624c79e300113 | ||||
| NativeFormatImporter: | ||||
|   externalObjects: {} | ||||
|   mainObjectFileID: 11400000 | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										10
									
								
								Assets/Scripts/CharSprites/CharSprite.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								Assets/Scripts/CharSprites/CharSprite.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | ||||
| using System.Collections; | ||||
| using System.Collections.Generic; | ||||
| using UnityEngine; | ||||
|  | ||||
| [CreateAssetMenu(fileName = "CharSprite", menuName = "CharSprite", order = 1)] | ||||
| public class CharSprite : ScriptableObject | ||||
| { | ||||
|     public char character; | ||||
|     public Sprite sprite; | ||||
| } | ||||
							
								
								
									
										11
									
								
								Assets/Scripts/CharSprites/CharSprite.cs.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								Assets/Scripts/CharSprites/CharSprite.cs.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: 56080594b83657b43bd583e66fc21ec2 | ||||
| MonoImporter: | ||||
|   externalObjects: {} | ||||
|   serializedVersion: 2 | ||||
|   defaultReferences: [] | ||||
|   executionOrder: 0 | ||||
|   icon: {instanceID: 0} | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										10
									
								
								Assets/Scripts/CharToSprite.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								Assets/Scripts/CharToSprite.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | ||||
| using System.Collections; | ||||
| using System.Collections.Generic; | ||||
| using UnityEngine; | ||||
|  | ||||
| public class CharToSprite | ||||
| { | ||||
|     [SerializeField] | ||||
|     List<Sprite> sprites = new List<Sprite>(); | ||||
|  | ||||
| } | ||||
							
								
								
									
										11
									
								
								Assets/Scripts/CharToSprite.cs.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								Assets/Scripts/CharToSprite.cs.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: feba03cebe25b2642880b207d200fbec | ||||
| MonoImporter: | ||||
|   externalObjects: {} | ||||
|   serializedVersion: 2 | ||||
|   defaultReferences: [] | ||||
|   executionOrder: 0 | ||||
|   icon: {instanceID: 0} | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										8
									
								
								Assets/Scripts/Player.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								Assets/Scripts/Player.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: 415ae7da5bed43345b965569c9070e15 | ||||
| folderAsset: yes | ||||
| DefaultImporter: | ||||
|   externalObjects: {} | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										11
									
								
								Assets/Scripts/Player/Player.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								Assets/Scripts/Player/Player.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| using System.Collections; | ||||
| using System.Collections.Generic; | ||||
| using UnityEngine; | ||||
|  | ||||
| public class Player : MonoBehaviour | ||||
| { | ||||
|     public void Die() | ||||
|     { | ||||
|         Debug.Log("----- PLAYER DIED!!! -----"); | ||||
|     } | ||||
| } | ||||
							
								
								
									
										11
									
								
								Assets/Scripts/Player/Player.cs.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								Assets/Scripts/Player/Player.cs.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: 5ee4c18f008d122488cbb74c779ef5c4 | ||||
| MonoImporter: | ||||
|   externalObjects: {} | ||||
|   serializedVersion: 2 | ||||
|   defaultReferences: [] | ||||
|   executionOrder: 0 | ||||
|   icon: {instanceID: 0} | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
| @@ -5,7 +5,14 @@ using UnityEngine; | ||||
| // Handles the player input, such as interactions | ||||
| public class PlayerController : MonoBehaviour | ||||
| { | ||||
|     [SerializeField] | ||||
|     GameObject calendar; | ||||
| 
 | ||||
|     void Update() | ||||
|     { | ||||
|         if (Input.GetButtonDown("Calendar") && calendar != null) | ||||
|         { | ||||
|             calendar.SetActive(!calendar.activeSelf); | ||||
|         } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										105
									
								
								Assets/Scripts/Player/PlayerInteraction.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										105
									
								
								Assets/Scripts/Player/PlayerInteraction.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,105 @@ | ||||
| using System.Collections; | ||||
| using System.Collections.Generic; | ||||
| using UnityEngine; | ||||
| using TMPro; | ||||
| using UnityEngine.UI; | ||||
| public class PlayerInteraction : MonoBehaviour | ||||
| { | ||||
|     [SerializeField] | ||||
|     TextMeshProUGUI interactionText; | ||||
|  | ||||
|     [SerializeField] | ||||
|     Image interactionProgressImg; | ||||
|  | ||||
|     void Update() | ||||
|     { | ||||
|         bool successfulHit = false; | ||||
|         RaycastHit2D hit = Physics2D.Raycast(Camera.main.ScreenToWorldPoint(Input.mousePosition), Vector2.zero); | ||||
|  | ||||
|         if(hit.collider != null) | ||||
|         { | ||||
|             Interactable interactable = hit.collider.gameObject.GetComponent<Interactable>(); | ||||
|  | ||||
|             if(interactable != null) | ||||
|             { | ||||
|                 // Debug.Log("Target Position: " + hit.collider.gameObject.transform.position); | ||||
|                 HandleInteraction(interactable); | ||||
|                 successfulHit = true; | ||||
|                 HandleInteractionText(interactable); | ||||
|                 HandleInteractionProgress(interactable); | ||||
|             }             | ||||
|         } | ||||
|  | ||||
|         if (!successfulHit) | ||||
|         { | ||||
|             interactionText.text = ""; | ||||
|             interactionProgressImg.fillAmount = 0; | ||||
|         } | ||||
|  | ||||
|     } | ||||
|  | ||||
|     void HandleInteractionProgress(Interactable interactable) | ||||
|     { | ||||
|         interactionProgressImg.fillAmount = interactable.GetHoldTime() / interactable.GetHoldDuration(); | ||||
|     } | ||||
|      | ||||
|     void HandleInteractionText(Interactable interactable) | ||||
|     { | ||||
|         interactionText.text = interactable.GetDescription(); | ||||
|         interactionText.transform.position = new Vector3(Input.mousePosition.x + interactionText.rectTransform.sizeDelta.x / 2 + 20, Input.mousePosition.y - 5, Input.mousePosition.z); | ||||
|     } | ||||
|  | ||||
|     /// <summary> | ||||
|     /// <c>HandleInteraction</c> <strong>handles the player interaction based on the Interactable.InteractionType.</strong> | ||||
|     /// </summary> | ||||
|     /// <param name="interactable"></param> | ||||
|     void HandleInteraction(Interactable interactable) | ||||
|     { | ||||
|         switch (interactable.interactionType) | ||||
|         { | ||||
|             case Interactable.InteractionType.Click: | ||||
|                 if (Input.GetButtonDown("Interact") && interactable.isInRange()) | ||||
|                 { | ||||
|                     interactable.Interact(); | ||||
|                 } | ||||
|                 break; | ||||
|             case Interactable.InteractionType.Hold: | ||||
|                 if (Input.GetButton("Interact") && interactable.isInRange()) | ||||
|                 { | ||||
|                     interactable.IncreaseHoldTime(); | ||||
|                      | ||||
|                     if(interactable.GetHoldTime() > interactable.GetHoldDuration()) | ||||
|                     { | ||||
|                         interactable.Interact(); | ||||
|                         interactable.ResetHoldTime(); | ||||
|                     } | ||||
|                 } | ||||
|                 else | ||||
|                 { | ||||
|                     interactable.ResetHoldTime(); | ||||
|                 } | ||||
|                 break; | ||||
|             case Interactable.InteractionType.Harvest: | ||||
|                 Harvestable harvestable = interactable.GetComponent<Harvestable>(); | ||||
|                 ToolItem toolItem = (ToolItem)GetComponent<InventoryController>().selectedItem; | ||||
|  | ||||
|                 bool isCorrectTool = (toolItem != null && toolItem.toolType == harvestable.toolType); | ||||
|                  | ||||
|  | ||||
|  | ||||
|                 if (Input.GetButton("Interact") && interactable.isInRange() && isCorrectTool) | ||||
|                 { | ||||
|                     harvestable.IncreaseHarvestTime(); | ||||
|  | ||||
|                     if (harvestable.GetHarvestTime() >= harvestable.GetHarvestDuration()) | ||||
|                     { | ||||
|                         harvestable.Interact(); | ||||
|                         harvestable.ResetHarvestTime(); | ||||
|                     } | ||||
|                 } | ||||
|                 break; | ||||
|             default: | ||||
|                 throw new System.Exception("Unsupported type of interactable"); | ||||
|         } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										11
									
								
								Assets/Scripts/Player/PlayerInteraction.cs.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								Assets/Scripts/Player/PlayerInteraction.cs.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: c17c7c66da95ea747b93edf1da56ba16 | ||||
| MonoImporter: | ||||
|   externalObjects: {} | ||||
|   serializedVersion: 2 | ||||
|   defaultReferences: [] | ||||
|   executionOrder: 0 | ||||
|   icon: {instanceID: 0} | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										68
									
								
								Assets/Scripts/TimeManager.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										68
									
								
								Assets/Scripts/TimeManager.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,68 @@ | ||||
| using System; | ||||
| using System.Globalization; | ||||
| using System.Collections.Generic; | ||||
| using UnityEngine; | ||||
|  | ||||
| public class TimeManager : MonoBehaviour | ||||
| { | ||||
|     public static Action OnTimeInterval; | ||||
|     public static TimeManager instance; | ||||
|  | ||||
|     public enum PartOfDay | ||||
|     { | ||||
|         MORNING, | ||||
|         AFTERNOON, | ||||
|         EVENING, | ||||
|         NIGHT | ||||
|     } | ||||
|  | ||||
|     public PartOfDay partOfDay; | ||||
|  | ||||
|     [SerializeField] | ||||
|     float intervalTime = 1.0f; // 1.0f -> 1 real second is 1 ingame minute | ||||
|  | ||||
|     int minutesPerInterval = 1; | ||||
|  | ||||
|     public CultureInfo cultureInfo = new CultureInfo("en-us"); | ||||
|     DateTime dateTime = new DateTime(1, 1, 1, 0, 0, 0); | ||||
|     float timer; | ||||
|  | ||||
|     public DateTime GetDateTime() => dateTime; | ||||
|      | ||||
|     public string GetTime() => dateTime.ToString("hh:mm tt", cultureInfo); | ||||
|     public string GetDate() => dateTime.ToString("dd/mm/yyyy", cultureInfo); | ||||
|     public float GetintervalTime() => intervalTime; | ||||
|      | ||||
|  | ||||
|     void Start() | ||||
|     { | ||||
|         timer = intervalTime; | ||||
|     } | ||||
|  | ||||
|     void Update() | ||||
|     { | ||||
|         timer -= Time.deltaTime; | ||||
|  | ||||
|         if (timer <= 0) | ||||
|         { | ||||
|             dateTime = dateTime.AddMinutes(minutesPerInterval); | ||||
|             CheckPartsOfDay(); | ||||
|             OnTimeInterval?.Invoke(); | ||||
|             timer = intervalTime; | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     void CheckPartsOfDay() | ||||
|     { | ||||
|         if (dateTime.Hour >= 22) | ||||
|             partOfDay = PartOfDay.NIGHT; | ||||
|         else if(dateTime.Hour < 6) | ||||
|             partOfDay = PartOfDay.NIGHT; | ||||
|         else if (dateTime.Hour >= 6 && dateTime.Hour < 12) | ||||
|             partOfDay = PartOfDay.MORNING; | ||||
|         else if (dateTime.Hour >= 12 && dateTime.Hour < 17) | ||||
|             partOfDay = PartOfDay.AFTERNOON; | ||||
|         else if (dateTime.Hour >= 17 && dateTime.Hour < 22) | ||||
|             partOfDay = PartOfDay.EVENING; | ||||
|     } | ||||
| } | ||||
							
								
								
									
										11
									
								
								Assets/Scripts/TimeManager.cs.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								Assets/Scripts/TimeManager.cs.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: 4d46ba76ed78c6c41805320f865295d6 | ||||
| MonoImporter: | ||||
|   externalObjects: {} | ||||
|   serializedVersion: 2 | ||||
|   defaultReferences: [] | ||||
|   executionOrder: 0 | ||||
|   icon: {instanceID: 0} | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										24
									
								
								Assets/Scripts/TimeUI.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								Assets/Scripts/TimeUI.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,24 @@ | ||||
| using System; | ||||
| using System.Collections.Generic; | ||||
| using UnityEngine; | ||||
| using TMPro; | ||||
|  | ||||
| public class TimeUI : MonoBehaviour | ||||
| { | ||||
|     [SerializeField] | ||||
|     TextMeshProUGUI dateTimeText; | ||||
|     TimeManager timeManager; | ||||
|  | ||||
|     private void Start() | ||||
|     { | ||||
|         timeManager = GameObject.Find("GameManager").GetComponent<TimeManager>(); | ||||
|          | ||||
|     } | ||||
|  | ||||
|     private void Update() | ||||
|     { | ||||
|         DateTime dateTime = timeManager.GetDateTime(); | ||||
|         if (dateTimeText != null) | ||||
|             dateTimeText.text = dateTime.ToString("hh:mm tt / dd.MM.yyyy", timeManager.cultureInfo); | ||||
|     } | ||||
| } | ||||
							
								
								
									
										11
									
								
								Assets/Scripts/TimeUI.cs.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								Assets/Scripts/TimeUI.cs.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: e980066e5baa94e4c993240ec95348fe | ||||
| MonoImporter: | ||||
|   externalObjects: {} | ||||
|   serializedVersion: 2 | ||||
|   defaultReferences: [] | ||||
|   executionOrder: 0 | ||||
|   icon: {instanceID: 0} | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										59
									
								
								Assets/Scripts/Vitality.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								Assets/Scripts/Vitality.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,59 @@ | ||||
| using System.Collections; | ||||
| using System.Collections.Generic; | ||||
| using UnityEngine; | ||||
|  | ||||
| public class Vitality : MonoBehaviour | ||||
| {    | ||||
|     Player player; | ||||
|  | ||||
|     [Header("Vitality")] | ||||
|     [Range(0f, 1f)] | ||||
|     [SerializeField] | ||||
|     public float health = 1f; | ||||
|  | ||||
|     [Range(0f, 1f)] | ||||
|     [SerializeField] | ||||
|     public float food = 1f; | ||||
|  | ||||
|     [Range(0f, 1f)] | ||||
|     [SerializeField] | ||||
|     public float drink = 1f; | ||||
|  | ||||
|     [Header("Vitality Modifier Per Interval")] | ||||
|     [Range(0f, 50f)] | ||||
|     [SerializeField] | ||||
|     float healthModifier = 30f; | ||||
|  | ||||
|     [Range(0f, 5f)] | ||||
|     [SerializeField] | ||||
|     float foodModifier = 0.4f; | ||||
|  | ||||
|     [Range(0f, 5f)] | ||||
|     [SerializeField] | ||||
|     float drinkModifier = 0.6f; | ||||
|  | ||||
|     private void Start() | ||||
|     { | ||||
|         TimeManager.OnTimeInterval += VitalityInterval; | ||||
|         player = gameObject.GetComponent<Player>(); | ||||
|     } | ||||
|  | ||||
|      | ||||
|     void VitalityInterval() | ||||
|     { | ||||
|          | ||||
|         food -= foodModifier / 1000; | ||||
|         drink -= drinkModifier / 1000; | ||||
|  | ||||
|         if(food <= 0f || drink <= 0f) | ||||
|         { | ||||
|             health -= healthModifier / 1000; | ||||
|         } | ||||
|  | ||||
|         if(health <= 0f) | ||||
|         { | ||||
|             player.Die(); | ||||
|         } | ||||
|     } | ||||
|  | ||||
| } | ||||
							
								
								
									
										11
									
								
								Assets/Scripts/Vitality.cs.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								Assets/Scripts/Vitality.cs.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: 259b4dba2ac00aa4983a6562c5f4eed5 | ||||
| MonoImporter: | ||||
|   externalObjects: {} | ||||
|   serializedVersion: 2 | ||||
|   defaultReferences: [] | ||||
|   executionOrder: 0 | ||||
|   icon: {instanceID: 0} | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
							
								
								
									
										32
									
								
								Assets/Scripts/VitalityUI.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								Assets/Scripts/VitalityUI.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | ||||
| using System.Collections; | ||||
| using System.Collections.Generic; | ||||
| using UnityEngine; | ||||
| using UnityEngine.UI; | ||||
|  | ||||
| public class VitalityUI : MonoBehaviour | ||||
| { | ||||
|     Vitality playerVitality; | ||||
|  | ||||
|     [SerializeField] | ||||
|     Image healthBar; | ||||
|  | ||||
|     [SerializeField] | ||||
|     Image foodBar; | ||||
|  | ||||
|     [SerializeField] | ||||
|     Image drinkBar; | ||||
|  | ||||
|  | ||||
|     private void Start() | ||||
|     { | ||||
|         TimeManager.OnTimeInterval += UpdateBars; | ||||
|         playerVitality = GameObject.Find("Player").GetComponent<Vitality>(); | ||||
|     } | ||||
|  | ||||
|     void UpdateBars() | ||||
|     { | ||||
|         healthBar.fillAmount = playerVitality.health; | ||||
|         foodBar.fillAmount = playerVitality.food; | ||||
|         drinkBar.fillAmount = playerVitality.drink; | ||||
|     } | ||||
| } | ||||
							
								
								
									
										11
									
								
								Assets/Scripts/VitalityUI.cs.meta
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								Assets/Scripts/VitalityUI.cs.meta
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| fileFormatVersion: 2 | ||||
| guid: 4ba453e35e0237c4b8b18316c15c160c | ||||
| MonoImporter: | ||||
|   externalObjects: {} | ||||
|   serializedVersion: 2 | ||||
|   defaultReferences: [] | ||||
|   executionOrder: 0 | ||||
|   icon: {instanceID: 0} | ||||
|   userData:  | ||||
|   assetBundleName:  | ||||
|   assetBundleVariant:  | ||||
		Reference in New Issue
	
	Block a user
	 j.mei7
					j.mei7