From ae38582ddcbb0469f567df6b506a84741ed296a4 Mon Sep 17 00:00:00 2001 From: UnEpicier Date: Tue, 10 Oct 2023 15:52:59 +0200 Subject: [PATCH] Orb of experience(s) --- Assets/Camera/CameraFollow.cs | 4 +- Assets/Orb.meta | 8 + Assets/Orb/Orb.png | Bin 0 -> 4434 bytes Assets/Orb/Orb.png.meta | 127 ++++++++++++++ Assets/Orb/Orb.prefab | 158 ++++++++++++++++++ Assets/Orb/Orb.prefab.meta | 7 + Assets/Orb/OrbStats.cs | 36 ++++ Assets/Orb/OrbStats.cs.meta | 11 ++ Assets/Player/Player.prefab | 53 +++++- Assets/Player/Scripts/PlayerCollisions.cs | 40 +++++ .../Player/Scripts/PlayerCollisions.cs.meta | 11 ++ Assets/Player/Scripts/PlayerManager.cs | 22 +++ Assets/Player/Scripts/PlayerManager.cs.meta | 11 ++ Assets/Scenes/SampleScene.unity | 24 +++ ProjectSettings/TagManager.asset | 5 +- 15 files changed, 511 insertions(+), 6 deletions(-) create mode 100644 Assets/Orb.meta create mode 100644 Assets/Orb/Orb.png create mode 100644 Assets/Orb/Orb.png.meta create mode 100644 Assets/Orb/Orb.prefab create mode 100644 Assets/Orb/Orb.prefab.meta create mode 100644 Assets/Orb/OrbStats.cs create mode 100644 Assets/Orb/OrbStats.cs.meta create mode 100644 Assets/Player/Scripts/PlayerCollisions.cs create mode 100644 Assets/Player/Scripts/PlayerCollisions.cs.meta create mode 100644 Assets/Player/Scripts/PlayerManager.cs create mode 100644 Assets/Player/Scripts/PlayerManager.cs.meta diff --git a/Assets/Camera/CameraFollow.cs b/Assets/Camera/CameraFollow.cs index 0089d69..e885860 100644 --- a/Assets/Camera/CameraFollow.cs +++ b/Assets/Camera/CameraFollow.cs @@ -2,8 +2,8 @@ using UnityEngine; public class CameraFollow : MonoBehaviour { - private Vector3 _offset = new Vector3(0f, 0f, -10f); - private float _smoothTime = 10f; + private Vector3 _offset = new(0f, 0f, -10f); + private readonly float _smoothTime = 5f; private Vector3 _velocity = Vector3.zero; [SerializeField] private Transform _target; diff --git a/Assets/Orb.meta b/Assets/Orb.meta new file mode 100644 index 0000000..7a75120 --- /dev/null +++ b/Assets/Orb.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dfd494f60fa7f304b85095dcd4cfb574 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Orb/Orb.png b/Assets/Orb/Orb.png new file mode 100644 index 0000000000000000000000000000000000000000..310dfafecc6ccdcb9ed68c9ac0ceb82e231be81f GIT binary patch literal 4434 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 PRRFqRL#_G;k6-);HchKB literal 0 HcmV?d00001 diff --git a/Assets/Orb/Orb.png.meta b/Assets/Orb/Orb.png.meta new file mode 100644 index 0000000..95c7cc3 --- /dev/null +++ b/Assets/Orb/Orb.png.meta @@ -0,0 +1,127 @@ +fileFormatVersion: 2 +guid: 1d7baf530d1ea1c45be12b9673df53e6 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 12 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 1500 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Orb/Orb.prefab b/Assets/Orb/Orb.prefab new file mode 100644 index 0000000..345a690 --- /dev/null +++ b/Assets/Orb/Orb.prefab @@ -0,0 +1,158 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &4247841200454641178 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 371045360648463397} + - component: {fileID: -3060596173675991299} + - component: {fileID: 359480412970113223} + - component: {fileID: 6208330476773918141} + - component: {fileID: 4800892708696029541} + m_Layer: 3 + m_Name: Orb + m_TagString: Orb + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &371045360648463397 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4247841200454641178} + serializedVersion: 2 + 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} +--- !u!212 &-3060596173675991299 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4247841200454641178} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + 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: 1d7baf530d1ea1c45be12b9673df53e6, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 2.37, y: 2.45} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!95 &359480412970113223 +Animator: + serializedVersion: 5 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4247841200454641178} + m_Enabled: 1 + m_Avatar: {fileID: 0} + m_Controller: {fileID: 9100000, guid: 878bc2176be43ae4a8fe31663ca73492, type: 2} + m_CullingMode: 0 + m_UpdateMode: 0 + m_ApplyRootMotion: 0 + m_LinearVelocityBlending: 0 + m_StabilizeFeet: 0 + m_WarningMessage: + m_HasTransformHierarchy: 1 + m_AllowConstantClipSamplingOptimization: 1 + m_KeepAnimatorStateOnDisable: 0 + m_WriteDefaultValuesOnDisable: 0 +--- !u!58 &6208330476773918141 +CircleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4247841200454641178} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_IsTrigger: 1 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + serializedVersion: 2 + m_Radius: 0.08166666 +--- !u!114 &4800892708696029541 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4247841200454641178} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0d9de917f2dc87d4ca6ff6838cdc7cfa, type: 3} + m_Name: + m_EditorClassIdentifier: + OrbValue: 1 diff --git a/Assets/Orb/Orb.prefab.meta b/Assets/Orb/Orb.prefab.meta new file mode 100644 index 0000000..ebaf3c7 --- /dev/null +++ b/Assets/Orb/Orb.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 5f995817aeb7ddc4e841633e73c7ff59 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Orb/OrbStats.cs b/Assets/Orb/OrbStats.cs new file mode 100644 index 0000000..1481a22 --- /dev/null +++ b/Assets/Orb/OrbStats.cs @@ -0,0 +1,36 @@ +using UnityEngine; +public enum OrbValues +{ + One = 1, + Ten = 10, + Hundred = 100 +}; + +[RequireComponent(typeof(SpriteRenderer))] +public class OrbStats : MonoBehaviour +{ + public OrbValues OrbValue = OrbValues.One; + + private SpriteRenderer _sr; + + private void Start() + { + _sr = GetComponent(); + } + + private void Update() + { + switch (OrbValue) + { + case OrbValues.One: + _sr.color = new Color(0.25f, 1f, 0.25f); + break; + case OrbValues.Ten: + _sr.color = new Color(0.23f, 0.73f, 1f); + break; + case OrbValues.Hundred: + _sr.color = new Color(1f, 0.23f, 0.71f); + break; + } + } +} diff --git a/Assets/Orb/OrbStats.cs.meta b/Assets/Orb/OrbStats.cs.meta new file mode 100644 index 0000000..00c6d8a --- /dev/null +++ b/Assets/Orb/OrbStats.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0d9de917f2dc87d4ca6ff6838cdc7cfa +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Player/Player.prefab b/Assets/Player/Player.prefab index b8fcf1e..062d683 100644 --- a/Assets/Player/Player.prefab +++ b/Assets/Player/Player.prefab @@ -13,7 +13,9 @@ GameObject: - component: {fileID: 3279790092549852026} - component: {fileID: -6060090594203959720} - component: {fileID: 5629464872527876577} + - component: {fileID: 8338184184584571871} - component: {fileID: 3787322971358149925} + - component: {fileID: 7397454076540391921} m_Layer: 0 m_Name: Player m_TagString: Player @@ -172,15 +174,50 @@ BoxCollider2D: m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0.5, y: 0.5} - oldSize: {x: 0.4857143, y: 0.74285716} + oldSize: {x: 0.34, y: 0.52} newSize: {x: 0.17, y: 0.26} adaptiveTilingThreshold: 0.5 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 - m_Size: {x: 0.17, y: 0.26} + m_Size: {x: 0.34, y: 0.52} m_EdgeRadius: 0 +--- !u!58 &8338184184584571871 +CircleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1784956759114531697} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_IsTrigger: 1 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + serializedVersion: 2 + m_Radius: 0.7 --- !u!114 &3787322971358149925 MonoBehaviour: m_ObjectHideFlags: 0 @@ -193,3 +230,15 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 32f5e7611866dce4ab320c814d279d84, type: 3} m_Name: m_EditorClassIdentifier: +--- !u!114 &7397454076540391921 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1784956759114531697} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76eec47d6b942ad4ab792b7022c07bb1, type: 3} + m_Name: + m_EditorClassIdentifier: diff --git a/Assets/Player/Scripts/PlayerCollisions.cs b/Assets/Player/Scripts/PlayerCollisions.cs new file mode 100644 index 0000000..77bcc60 --- /dev/null +++ b/Assets/Player/Scripts/PlayerCollisions.cs @@ -0,0 +1,40 @@ +using UnityEngine; + +[RequireComponent(typeof(PlayerManager))] +public class PlayerCollisions : MonoBehaviour +{ + private PlayerManager _pm; + + private void Start() + { + _pm = GetComponent(); + } + + private void OnTriggerStay2D(Collider2D collision) + { + /** --- Orb Absorber ------------------------------- */ + if (collision.gameObject.CompareTag("Orb")) + { + GameObject orb = collision.gameObject; + orb.transform.position = Vector3.MoveTowards(orb.transform.position, transform.position, 1f * Time.deltaTime); + + if (orb.transform.position == transform.position) + { + Destroy(orb); + } + } + } + + private void OnTriggerExit2D(Collider2D collision) + { + if (collision.gameObject.CompareTag("Orb")) + { + GameObject orb = collision.gameObject; + + if (orb.transform.position == transform.position) + { + _pm.AddExperience((int)orb.GetComponent().OrbValue); + } + } + } +} diff --git a/Assets/Player/Scripts/PlayerCollisions.cs.meta b/Assets/Player/Scripts/PlayerCollisions.cs.meta new file mode 100644 index 0000000..753410a --- /dev/null +++ b/Assets/Player/Scripts/PlayerCollisions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 76eec47d6b942ad4ab792b7022c07bb1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Player/Scripts/PlayerManager.cs b/Assets/Player/Scripts/PlayerManager.cs new file mode 100644 index 0000000..818ba0e --- /dev/null +++ b/Assets/Player/Scripts/PlayerManager.cs @@ -0,0 +1,22 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class PlayerManager : MonoBehaviour +{ + public float Health = 100f; + public float Speed = 10f; + public int Exp = 0; + public int Level = 1; + + public void AddExperience(int value) + { + Exp += value; + + if (Exp >= Level * 10) + { + Exp -= Level * 10; + Level++; + } + } +} diff --git a/Assets/Player/Scripts/PlayerManager.cs.meta b/Assets/Player/Scripts/PlayerManager.cs.meta new file mode 100644 index 0000000..71da6c8 --- /dev/null +++ b/Assets/Player/Scripts/PlayerManager.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d8afe5a349c86994f8ddacd37ce22ae3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/SampleScene.unity b/Assets/Scenes/SampleScene.unity index d446db3..309fe37 100644 --- a/Assets/Scenes/SampleScene.unity +++ b/Assets/Scenes/SampleScene.unity @@ -286,6 +286,30 @@ PrefabInstance: propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} + - target: {fileID: 5629464872527876577, guid: 05d927a24df204541afbb77f1af3a9a2, type: 3} + propertyPath: m_CallbackLayers.m_Bits + value: 55 + objectReference: {fileID: 0} + - target: {fileID: 5629464872527876577, guid: 05d927a24df204541afbb77f1af3a9a2, type: 3} + propertyPath: m_ForceSendLayers.m_Bits + value: 55 + objectReference: {fileID: 0} + - target: {fileID: 5629464872527876577, guid: 05d927a24df204541afbb77f1af3a9a2, type: 3} + propertyPath: m_ForceReceiveLayers.m_Bits + value: 55 + objectReference: {fileID: 0} + - target: {fileID: 5629464872527876577, guid: 05d927a24df204541afbb77f1af3a9a2, type: 3} + propertyPath: m_ContactCaptureLayers.m_Bits + value: 55 + objectReference: {fileID: 0} + - target: {fileID: 8338184184584571871, guid: 05d927a24df204541afbb77f1af3a9a2, type: 3} + propertyPath: m_CallbackLayers.m_Bits + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 8338184184584571871, guid: 05d927a24df204541afbb77f1af3a9a2, type: 3} + propertyPath: m_ContactCaptureLayers.m_Bits + value: 8 + objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] diff --git a/ProjectSettings/TagManager.asset b/ProjectSettings/TagManager.asset index 1c92a78..e06b81c 100644 --- a/ProjectSettings/TagManager.asset +++ b/ProjectSettings/TagManager.asset @@ -3,12 +3,13 @@ --- !u!78 &1 TagManager: serializedVersion: 2 - tags: [] + tags: + - Orb layers: - Default - TransparentFX - Ignore Raycast - - + - Orb - Water - UI -