From ee40868efefa82289608804e8053bc0551f85778 Mon Sep 17 00:00:00 2001 From: Chris Date: Wed, 19 Mar 2025 15:51:41 -0400 Subject: [PATCH] added: lock-on mechanics testing --- .../Core/Materials/LockOnMarkerMaterial.mat | 138 ++++++++++++++++++ .../Materials/LockOnMarkerMaterial.mat.meta | 8 + Assets/Core/UI/In-Game.meta | 8 + Assets/Core/UI/In-Game/Layouts.meta | 8 + .../Layouts/BlankFullSizeUILayout.uxml | 3 + .../Layouts/BlankFullSizeUILayout.uxml.meta | 10 ++ .../Odin Inspector/Config/Resources.meta | 8 + .../Config/Resources/Sirenix.meta | 8 + .../Sirenix/GlobalSerializationConfig.asset | 22 +++ .../GlobalSerializationConfig.asset.meta | 8 + Assets/Scenes/SampleScene.unity | 115 ++++++++++++++- Assets/Scripts/Core/GenericLockOnTarget.cs | 15 ++ .../Scripts/Core/GenericLockOnTarget.cs.meta | 2 + Assets/Scripts/Core/Graph Tasks/AddJump.cs | 1 - Assets/Scripts/Core/LockOnManager.cs | 20 +++ Assets/Scripts/Core/LockOnManager.cs.meta | 2 + Assets/Scripts/Player/PlayerCamera.cs | 16 ++ Assets/UI Toolkit/PanelSettings.asset | 2 +- 18 files changed, 387 insertions(+), 7 deletions(-) create mode 100644 Assets/Core/Materials/LockOnMarkerMaterial.mat create mode 100644 Assets/Core/Materials/LockOnMarkerMaterial.mat.meta create mode 100644 Assets/Core/UI/In-Game.meta create mode 100644 Assets/Core/UI/In-Game/Layouts.meta create mode 100644 Assets/Core/UI/In-Game/Layouts/BlankFullSizeUILayout.uxml create mode 100644 Assets/Core/UI/In-Game/Layouts/BlankFullSizeUILayout.uxml.meta create mode 100644 Assets/Plugins/Sirenix/Odin Inspector/Config/Resources.meta create mode 100644 Assets/Plugins/Sirenix/Odin Inspector/Config/Resources/Sirenix.meta create mode 100644 Assets/Plugins/Sirenix/Odin Inspector/Config/Resources/Sirenix/GlobalSerializationConfig.asset create mode 100644 Assets/Plugins/Sirenix/Odin Inspector/Config/Resources/Sirenix/GlobalSerializationConfig.asset.meta create mode 100644 Assets/Scripts/Core/GenericLockOnTarget.cs create mode 100644 Assets/Scripts/Core/GenericLockOnTarget.cs.meta create mode 100644 Assets/Scripts/Core/LockOnManager.cs create mode 100644 Assets/Scripts/Core/LockOnManager.cs.meta diff --git a/Assets/Core/Materials/LockOnMarkerMaterial.mat b/Assets/Core/Materials/LockOnMarkerMaterial.mat new file mode 100644 index 0000000..c4017dc --- /dev/null +++ b/Assets/Core/Materials/LockOnMarkerMaterial.mat @@ -0,0 +1,138 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-1337973609843613944 +MonoBehaviour: + m_ObjectHideFlags: 11 + 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: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 9 +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: LockOnMarkerMaterial + m_Shader: {fileID: 4800000, guid: 650dd9526735d5b46b79224bc6e94025, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: + RenderType: Opaque + disabledShaderPasses: + - MOTIONVECTORS + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BaseMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _SpecGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AddPrecomputedVelocity: 0 + - _AlphaClip: 0 + - _AlphaToMask: 0 + - _Blend: 0 + - _BlendModePreserveSpecular: 1 + - _BlendOp: 0 + - _BumpScale: 1 + - _ClearCoatMask: 0 + - _ClearCoatSmoothness: 0 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailAlbedoMapScale: 1 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _DstBlendAlpha: 0 + - _EnvironmentReflections: 1 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 0 + - _Metallic: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.005 + - _QueueOffset: 0 + - _ReceiveShadows: 1 + - _SampleGI: 0 + - _Smoothness: 0 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _SrcBlendAlpha: 1 + - _Surface: 0 + - _WorkflowMode: 1 + - _ZWrite: 1 + m_Colors: + - _BaseColor: {r: 1, g: 0.027940448, b: 0, a: 1} + - _Color: {r: 1, g: 0.027940448, b: 0, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} + m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Core/Materials/LockOnMarkerMaterial.mat.meta b/Assets/Core/Materials/LockOnMarkerMaterial.mat.meta new file mode 100644 index 0000000..ba45d72 --- /dev/null +++ b/Assets/Core/Materials/LockOnMarkerMaterial.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f35636ac19f6c5540bb5d617fc126d1b +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Core/UI/In-Game.meta b/Assets/Core/UI/In-Game.meta new file mode 100644 index 0000000..a059d8e --- /dev/null +++ b/Assets/Core/UI/In-Game.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f10ad97089bbafa42b0db0242fafb678 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Core/UI/In-Game/Layouts.meta b/Assets/Core/UI/In-Game/Layouts.meta new file mode 100644 index 0000000..45f34c8 --- /dev/null +++ b/Assets/Core/UI/In-Game/Layouts.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 95717261bf5cd404c9af8d0687946f9f +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Core/UI/In-Game/Layouts/BlankFullSizeUILayout.uxml b/Assets/Core/UI/In-Game/Layouts/BlankFullSizeUILayout.uxml new file mode 100644 index 0000000..41e0d13 --- /dev/null +++ b/Assets/Core/UI/In-Game/Layouts/BlankFullSizeUILayout.uxml @@ -0,0 +1,3 @@ + + + diff --git a/Assets/Core/UI/In-Game/Layouts/BlankFullSizeUILayout.uxml.meta b/Assets/Core/UI/In-Game/Layouts/BlankFullSizeUILayout.uxml.meta new file mode 100644 index 0000000..2f59ea5 --- /dev/null +++ b/Assets/Core/UI/In-Game/Layouts/BlankFullSizeUILayout.uxml.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 15d71cf51a4522243a18f0eb02136f97 +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0} diff --git a/Assets/Plugins/Sirenix/Odin Inspector/Config/Resources.meta b/Assets/Plugins/Sirenix/Odin Inspector/Config/Resources.meta new file mode 100644 index 0000000..981ae16 --- /dev/null +++ b/Assets/Plugins/Sirenix/Odin Inspector/Config/Resources.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 332ebc10ca36806438fa8fa34c8ae75e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/Sirenix/Odin Inspector/Config/Resources/Sirenix.meta b/Assets/Plugins/Sirenix/Odin Inspector/Config/Resources/Sirenix.meta new file mode 100644 index 0000000..be769e8 --- /dev/null +++ b/Assets/Plugins/Sirenix/Odin Inspector/Config/Resources/Sirenix.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ff22b76012588a14ea5c416a6bdb3675 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/Sirenix/Odin Inspector/Config/Resources/Sirenix/GlobalSerializationConfig.asset b/Assets/Plugins/Sirenix/Odin Inspector/Config/Resources/Sirenix/GlobalSerializationConfig.asset new file mode 100644 index 0000000..0e48b68 --- /dev/null +++ b/Assets/Plugins/Sirenix/Odin Inspector/Config/Resources/Sirenix/GlobalSerializationConfig.asset @@ -0,0 +1,22 @@ +%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: 1549551891, guid: 74721b9f0af448f5ae2e91102a1a5edd, type: 3} + m_Name: GlobalSerializationConfig + m_EditorClassIdentifier: + HideSerializationCautionaryMessage: 0 + HidePrefabCautionaryMessage: 0 + HideOdinSerializeAttributeWarningMessages: 0 + HideNonSerializedShowInInspectorWarningMessages: 0 + buildSerializationFormat: 0 + editorSerializationFormat: 2 + loggingPolicy: 0 + errorHandlingPolicy: 0 diff --git a/Assets/Plugins/Sirenix/Odin Inspector/Config/Resources/Sirenix/GlobalSerializationConfig.asset.meta b/Assets/Plugins/Sirenix/Odin Inspector/Config/Resources/Sirenix/GlobalSerializationConfig.asset.meta new file mode 100644 index 0000000..ad83bd4 --- /dev/null +++ b/Assets/Plugins/Sirenix/Odin Inspector/Config/Resources/Sirenix/GlobalSerializationConfig.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 80afd68f242384c41bb24e8c133233ee +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/SampleScene.unity b/Assets/Scenes/SampleScene.unity index 9937cb0..c7b14eb 100644 --- a/Assets/Scenes/SampleScene.unity +++ b/Assets/Scenes/SampleScene.unity @@ -2445,13 +2445,14 @@ GameObject: - component: {fileID: 263093402} - component: {fileID: 263093401} - component: {fileID: 263093400} + - component: {fileID: 263093404} m_Layer: 0 m_Name: Lock-On Target m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!136 &263093400 CapsuleCollider: m_ObjectHideFlags: 0 @@ -2543,6 +2544,18 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &263093404 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 263093399} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a9e423f169119154e9b1379ef904eb46, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &330585543 GameObject: m_ObjectHideFlags: 0 @@ -2631,7 +2644,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 330585543} serializedVersion: 2 - m_LocalRotation: {x: 0.015995972, y: -0.067584045, z: 0.00108369, w: 0.99758476} + m_LocalRotation: {x: 0.015995976, y: -0.067584075, z: 0.0010836906, w: 0.99758476} m_LocalPosition: {x: 1.5039132, y: 2.1421127, z: -6.8609486} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 @@ -2885,7 +2898,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 402424904} serializedVersion: 2 - m_LocalRotation: {x: 0.015995972, y: -0.06758405, z: 0.00108369, w: 0.99758476} + m_LocalRotation: {x: 0.015995974, y: -0.06758407, z: 0.0010836904, w: 0.9975848} m_LocalPosition: {x: 1.5039132, y: 2.1421127, z: -6.8609486} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 @@ -4289,7 +4302,8 @@ RectTransform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_ConstrainProportionsScale: 0 - m_Children: [] + m_Children: + - {fileID: 1223043170} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} @@ -5055,6 +5069,57 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1223043169 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1223043170} + - component: {fileID: 1223043171} + m_Layer: 5 + m_Name: UIDocument + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1223043170 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1223043169} + 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: 928657081} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1223043171 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1223043169} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 19102, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_PanelSettings: {fileID: 11400000, guid: fd99678e30619394f8e6ce439fbd7f43, type: 2} + m_ParentUI: {fileID: 0} + sourceAsset: {fileID: 9197481963319205126, guid: 15d71cf51a4522243a18f0eb02136f97, type: 3} + m_SortingOrder: 0 + m_WorldSpaceSizeMode: 1 + m_WorldSpaceWidth: 1920 + m_WorldSpaceHeight: 1080 --- !u!43 &1227766312 Mesh: m_ObjectHideFlags: 0 @@ -5232,6 +5297,7 @@ GameObject: - component: {fileID: 1379573505} - component: {fileID: 1379573504} - component: {fileID: 1379573503} + - component: {fileID: 1379573507} m_Layer: 0 m_Name: Lock-On Target m_TagString: Untagged @@ -5330,6 +5396,18 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1379573507 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1379573502} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a9e423f169119154e9b1379ef904eb46, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &1505662770 GameObject: m_ObjectHideFlags: 0 @@ -5342,13 +5420,14 @@ GameObject: - component: {fileID: 1505662773} - component: {fileID: 1505662772} - component: {fileID: 1505662771} + - component: {fileID: 1505662775} m_Layer: 0 m_Name: Lock-On Target m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!136 &1505662771 CapsuleCollider: m_ObjectHideFlags: 0 @@ -5440,6 +5519,18 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1505662775 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1505662770} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a9e423f169119154e9b1379ef904eb46, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &1568412095 GameObject: m_ObjectHideFlags: 0 @@ -6469,6 +6560,7 @@ GameObject: - component: {fileID: 1992890476} - component: {fileID: 1992890478} - component: {fileID: 1992890477} + - component: {fileID: 1992890479} m_Layer: 0 m_Name: Player m_TagString: Untagged @@ -6654,6 +6746,19 @@ MonoBehaviour: _updateMode: 0 _graph: {fileID: 0} _blackboard: {fileID: 1992890477} +--- !u!114 &1992890479 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1992890470} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 092c74123418b7a4482fc45aa5870077, type: 3} + m_Name: + m_EditorClassIdentifier: + lockOnDocument: {fileID: 1223043171} --- !u!1 &2024357130 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/Core/GenericLockOnTarget.cs b/Assets/Scripts/Core/GenericLockOnTarget.cs new file mode 100644 index 0000000..27098d6 --- /dev/null +++ b/Assets/Scripts/Core/GenericLockOnTarget.cs @@ -0,0 +1,15 @@ +using UnityEngine; + +public class GenericLockOnTarget : MonoBehaviour, ILockOnTarget{ + public float lockonTargetRadius{ get; set; } = 1f; + public Renderer thisRenderer { get; } + + // Start is called once before the first execution of Update after the MonoBehaviour is created + void Start(){ + + } + + void Update(){ + Debug.Log((this as ILockOnTarget).GetReticlePosition()); + } +} diff --git a/Assets/Scripts/Core/GenericLockOnTarget.cs.meta b/Assets/Scripts/Core/GenericLockOnTarget.cs.meta new file mode 100644 index 0000000..9d8b134 --- /dev/null +++ b/Assets/Scripts/Core/GenericLockOnTarget.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: a9e423f169119154e9b1379ef904eb46 \ No newline at end of file diff --git a/Assets/Scripts/Core/Graph Tasks/AddJump.cs b/Assets/Scripts/Core/Graph Tasks/AddJump.cs index be5ce10..ffacbef 100644 --- a/Assets/Scripts/Core/Graph Tasks/AddJump.cs +++ b/Assets/Scripts/Core/Graph Tasks/AddJump.cs @@ -8,7 +8,6 @@ using UnityEngine.InputSystem; namespace NodeCanvas.Tasks.Actions { - [Category("Reset/Movement")] public class AddJump : ActionTask { public BBParameter jumpStrength; diff --git a/Assets/Scripts/Core/LockOnManager.cs b/Assets/Scripts/Core/LockOnManager.cs new file mode 100644 index 0000000..5ac1a33 --- /dev/null +++ b/Assets/Scripts/Core/LockOnManager.cs @@ -0,0 +1,20 @@ +using Sirenix.OdinInspector; +using UnityEngine; +using UnityEngine.UIElements; + +public class LockOnManager : MonoBehaviour{ + [ShowInInspector] + public UIDocument lockOnDocument; + [ShowInInspector, SerializeField] + public ILockOnTarget lockOnTarget; + // Start is called once before the first execution of Update after the MonoBehaviour is created + void Start() + { + + } + + // Update is called once per frame + void Update(){ + Debug.Log(RuntimePanelUtils.CameraTransformWorldToPanel(lockOnDocument.rootVisualElement.panel, lockOnTarget.GetReticlePosition(), Camera.main.GetComponent())); + } +} diff --git a/Assets/Scripts/Core/LockOnManager.cs.meta b/Assets/Scripts/Core/LockOnManager.cs.meta new file mode 100644 index 0000000..305a175 --- /dev/null +++ b/Assets/Scripts/Core/LockOnManager.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 092c74123418b7a4482fc45aa5870077 \ No newline at end of file diff --git a/Assets/Scripts/Player/PlayerCamera.cs b/Assets/Scripts/Player/PlayerCamera.cs index 7adad9b..84341ae 100644 --- a/Assets/Scripts/Player/PlayerCamera.cs +++ b/Assets/Scripts/Player/PlayerCamera.cs @@ -1,5 +1,21 @@ +using System; using UnityEngine; +public interface ILockOnTarget{ + public float lockonTargetRadius { set; } + + Transform transform {get;} + GameObject gameObject{ get; } + + public Vector3 GetReticlePosition(){ + Bounds objectBounds = gameObject.GetComponent().bounds; + + Vector3 reticlePosition = new Vector3(transform.position.x, transform.position.y + objectBounds.size.y, transform.position.z); + + return reticlePosition; + } +} + public class PlayerCamera : MonoBehaviour{ void Start(){ diff --git a/Assets/UI Toolkit/PanelSettings.asset b/Assets/UI Toolkit/PanelSettings.asset index b59c803..9bf8c77 100644 --- a/Assets/UI Toolkit/PanelSettings.asset +++ b/Assets/UI Toolkit/PanelSettings.asset @@ -37,7 +37,7 @@ MonoBehaviour: m_MinAtlasSize: 64 m_MaxAtlasSize: 4096 m_MaxSubTextureSize: 64 - m_ActiveFilters: 31 + m_ActiveFilters: -1 m_AtlasBlitShader: {fileID: 9101, guid: 0000000000000000f000000000000000, type: 0} m_RuntimeShader: {fileID: 9100, guid: 0000000000000000f000000000000000, type: 0} m_RuntimeWorldShader: {fileID: 9102, guid: 0000000000000000f000000000000000, type: 0}