From 1eb0cfa3defecdbb73b4c21b234bfdc9c080679f Mon Sep 17 00:00:00 2001 From: OverflowNarhoym Date: Mon, 21 Feb 2022 18:40:03 +0100 Subject: [PATCH] Updated PlayerController.cs --- Assets/Input.meta | 8 + Assets/Input/Player.cs | 292 ++++++++++ Assets/Input/Player.cs.meta | 11 + Assets/Input/Player.inputactions | 143 +++++ Assets/Input/Player.inputactions.meta | 14 + Assets/Scenes/OverDevScene.unity | 516 ++++++++++++++++++ Assets/Scenes/OverDevScene.unity.meta | 7 + Assets/Scripts/Entity.meta | 3 - Assets/Scripts/Entity/IMovement.cs | 6 - Assets/Scripts/Entity/IMovement.cs.meta | 3 - .../Scripts/Entity/Player/PlayerController.cs | 8 - Assets/Scripts/Orientation.meta | 3 + Assets/Scripts/Orientation/Orientation.cs | 8 + .../Scripts/Orientation/Orientation.cs.meta | 3 + Assets/Scripts/{Entity => }/Player.meta | 0 Assets/Scripts/Player/PlayerController.cs | 128 +++++ .../Player/PlayerController.cs.meta | 0 ProjectSettings/TagManager.asset | 2 +- UserSettings/EditorUserSettings.asset | 3 + 19 files changed, 1137 insertions(+), 21 deletions(-) create mode 100644 Assets/Input.meta create mode 100644 Assets/Input/Player.cs create mode 100644 Assets/Input/Player.cs.meta create mode 100644 Assets/Input/Player.inputactions create mode 100644 Assets/Input/Player.inputactions.meta create mode 100644 Assets/Scenes/OverDevScene.unity create mode 100644 Assets/Scenes/OverDevScene.unity.meta delete mode 100644 Assets/Scripts/Entity.meta delete mode 100644 Assets/Scripts/Entity/IMovement.cs delete mode 100644 Assets/Scripts/Entity/IMovement.cs.meta delete mode 100644 Assets/Scripts/Entity/Player/PlayerController.cs create mode 100644 Assets/Scripts/Orientation.meta create mode 100644 Assets/Scripts/Orientation/Orientation.cs create mode 100644 Assets/Scripts/Orientation/Orientation.cs.meta rename Assets/Scripts/{Entity => }/Player.meta (100%) create mode 100644 Assets/Scripts/Player/PlayerController.cs rename Assets/Scripts/{Entity => }/Player/PlayerController.cs.meta (100%) diff --git a/Assets/Input.meta b/Assets/Input.meta new file mode 100644 index 0000000..1870daa --- /dev/null +++ b/Assets/Input.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9e86eec3a7906a843919b82af789e0da +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Input/Player.cs b/Assets/Input/Player.cs new file mode 100644 index 0000000..ccb1e9a --- /dev/null +++ b/Assets/Input/Player.cs @@ -0,0 +1,292 @@ +//------------------------------------------------------------------------------ +// +// This code was auto-generated by com.unity.inputsystem:InputActionCodeGenerator +// version 1.3.0 +// from Assets/Input/Player.inputactions +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +using System; +using System.Collections; +using System.Collections.Generic; +using UnityEngine.InputSystem; +using UnityEngine.InputSystem.Utilities; + +namespace Input +{ + public partial class @PlayerInput : IInputActionCollection2, IDisposable + { + public InputActionAsset asset { get; } + public @PlayerInput() + { + asset = InputActionAsset.FromJson(@"{ + ""name"": ""Player"", + ""maps"": [ + { + ""name"": ""PlayerControl"", + ""id"": ""6b283d13-6660-4d53-8e92-97340d3e7e40"", + ""actions"": [ + { + ""name"": ""Move"", + ""type"": ""Button"", + ""id"": ""d609b7bd-de59-47fe-be7c-eab846108ebb"", + ""expectedControlType"": ""Button"", + ""processors"": """", + ""interactions"": """", + ""initialStateCheck"": false + }, + { + ""name"": ""Jump"", + ""type"": ""Button"", + ""id"": ""838b4154-0282-407c-860e-970ffb1a69dc"", + ""expectedControlType"": ""Button"", + ""processors"": """", + ""interactions"": """", + ""initialStateCheck"": false + } + ], + ""bindings"": [ + { + ""name"": ""1D Axis Keyboard"", + ""id"": ""f1eaf8e5-b149-4905-a8a9-121890ee136c"", + ""path"": ""1DAxis"", + ""interactions"": """", + ""processors"": """", + ""groups"": """", + ""action"": ""Move"", + ""isComposite"": true, + ""isPartOfComposite"": false + }, + { + ""name"": ""negative"", + ""id"": ""a9afa3f2-ec1f-430d-a41b-77d221b7d656"", + ""path"": ""/leftArrow"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""KeyBoard"", + ""action"": ""Move"", + ""isComposite"": false, + ""isPartOfComposite"": true + }, + { + ""name"": ""positive"", + ""id"": ""064aa7d7-b08b-4cea-915f-e225e5c62072"", + ""path"": ""/rightArrow"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""KeyBoard"", + ""action"": ""Move"", + ""isComposite"": false, + ""isPartOfComposite"": true + }, + { + ""name"": ""1D Axis Gamepad"", + ""id"": ""93eaa249-8b44-4767-b233-0ed70a500631"", + ""path"": ""1DAxis"", + ""interactions"": """", + ""processors"": """", + ""groups"": """", + ""action"": ""Move"", + ""isComposite"": true, + ""isPartOfComposite"": false + }, + { + ""name"": ""negative"", + ""id"": ""084c37a9-d0a1-4ffa-988b-301e97060e91"", + ""path"": ""/leftStick/left"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""Controller"", + ""action"": ""Move"", + ""isComposite"": false, + ""isPartOfComposite"": true + }, + { + ""name"": ""positive"", + ""id"": ""a0c7812a-cdf9-4a02-9394-ea1ea5bd3d37"", + ""path"": ""/leftStick/right"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""Controller"", + ""action"": ""Move"", + ""isComposite"": false, + ""isPartOfComposite"": true + }, + { + ""name"": """", + ""id"": ""7e8fccb6-fdf3-48f1-a967-3ade3adf570a"", + ""path"": ""/space"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""KeyBoard"", + ""action"": ""Jump"", + ""isComposite"": false, + ""isPartOfComposite"": false + }, + { + ""name"": """", + ""id"": ""868cbe30-e640-4d8d-b818-a57529b316c8"", + ""path"": ""/buttonSouth"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""Controller"", + ""action"": ""Jump"", + ""isComposite"": false, + ""isPartOfComposite"": false + } + ] + } + ], + ""controlSchemes"": [ + { + ""name"": ""Controller"", + ""bindingGroup"": ""Controller"", + ""devices"": [ + { + ""devicePath"": """", + ""isOptional"": false, + ""isOR"": false + } + ] + }, + { + ""name"": ""KeyBoard"", + ""bindingGroup"": ""KeyBoard"", + ""devices"": [ + { + ""devicePath"": """", + ""isOptional"": false, + ""isOR"": false + } + ] + } + ] +}"); + // PlayerControl + m_PlayerControl = asset.FindActionMap("PlayerControl", throwIfNotFound: true); + m_PlayerControl_Move = m_PlayerControl.FindAction("Move", throwIfNotFound: true); + m_PlayerControl_Jump = m_PlayerControl.FindAction("Jump", throwIfNotFound: true); + } + + public void Dispose() + { + UnityEngine.Object.Destroy(asset); + } + + public InputBinding? bindingMask + { + get => asset.bindingMask; + set => asset.bindingMask = value; + } + + public ReadOnlyArray? devices + { + get => asset.devices; + set => asset.devices = value; + } + + public ReadOnlyArray controlSchemes => asset.controlSchemes; + + public bool Contains(InputAction action) + { + return asset.Contains(action); + } + + public IEnumerator GetEnumerator() + { + return asset.GetEnumerator(); + } + + IEnumerator IEnumerable.GetEnumerator() + { + return GetEnumerator(); + } + + public void Enable() + { + asset.Enable(); + } + + public void Disable() + { + asset.Disable(); + } + public IEnumerable bindings => asset.bindings; + + public InputAction FindAction(string actionNameOrId, bool throwIfNotFound = false) + { + return asset.FindAction(actionNameOrId, throwIfNotFound); + } + public int FindBinding(InputBinding bindingMask, out InputAction action) + { + return asset.FindBinding(bindingMask, out action); + } + + // PlayerControl + private readonly InputActionMap m_PlayerControl; + private IPlayerControlActions m_PlayerControlActionsCallbackInterface; + private readonly InputAction m_PlayerControl_Move; + private readonly InputAction m_PlayerControl_Jump; + public struct PlayerControlActions + { + private @PlayerInput m_Wrapper; + public PlayerControlActions(@PlayerInput wrapper) { m_Wrapper = wrapper; } + public InputAction @Move => m_Wrapper.m_PlayerControl_Move; + public InputAction @Jump => m_Wrapper.m_PlayerControl_Jump; + public InputActionMap Get() { return m_Wrapper.m_PlayerControl; } + public void Enable() { Get().Enable(); } + public void Disable() { Get().Disable(); } + public bool enabled => Get().enabled; + public static implicit operator InputActionMap(PlayerControlActions set) { return set.Get(); } + public void SetCallbacks(IPlayerControlActions instance) + { + if (m_Wrapper.m_PlayerControlActionsCallbackInterface != null) + { + @Move.started -= m_Wrapper.m_PlayerControlActionsCallbackInterface.OnMove; + @Move.performed -= m_Wrapper.m_PlayerControlActionsCallbackInterface.OnMove; + @Move.canceled -= m_Wrapper.m_PlayerControlActionsCallbackInterface.OnMove; + @Jump.started -= m_Wrapper.m_PlayerControlActionsCallbackInterface.OnJump; + @Jump.performed -= m_Wrapper.m_PlayerControlActionsCallbackInterface.OnJump; + @Jump.canceled -= m_Wrapper.m_PlayerControlActionsCallbackInterface.OnJump; + } + m_Wrapper.m_PlayerControlActionsCallbackInterface = instance; + if (instance != null) + { + @Move.started += instance.OnMove; + @Move.performed += instance.OnMove; + @Move.canceled += instance.OnMove; + @Jump.started += instance.OnJump; + @Jump.performed += instance.OnJump; + @Jump.canceled += instance.OnJump; + } + } + } + public PlayerControlActions @PlayerControl => new PlayerControlActions(this); + private int m_ControllerSchemeIndex = -1; + public InputControlScheme ControllerScheme + { + get + { + if (m_ControllerSchemeIndex == -1) m_ControllerSchemeIndex = asset.FindControlSchemeIndex("Controller"); + return asset.controlSchemes[m_ControllerSchemeIndex]; + } + } + private int m_KeyBoardSchemeIndex = -1; + public InputControlScheme KeyBoardScheme + { + get + { + if (m_KeyBoardSchemeIndex == -1) m_KeyBoardSchemeIndex = asset.FindControlSchemeIndex("KeyBoard"); + return asset.controlSchemes[m_KeyBoardSchemeIndex]; + } + } + public interface IPlayerControlActions + { + void OnMove(InputAction.CallbackContext context); + void OnJump(InputAction.CallbackContext context); + } + } +} diff --git a/Assets/Input/Player.cs.meta b/Assets/Input/Player.cs.meta new file mode 100644 index 0000000..91e1848 --- /dev/null +++ b/Assets/Input/Player.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 55abb3908e943684497be516f2dc897b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Input/Player.inputactions b/Assets/Input/Player.inputactions new file mode 100644 index 0000000..f2f2c11 --- /dev/null +++ b/Assets/Input/Player.inputactions @@ -0,0 +1,143 @@ +{ + "name": "Player", + "maps": [ + { + "name": "PlayerControl", + "id": "6b283d13-6660-4d53-8e92-97340d3e7e40", + "actions": [ + { + "name": "Move", + "type": "Button", + "id": "d609b7bd-de59-47fe-be7c-eab846108ebb", + "expectedControlType": "Button", + "processors": "", + "interactions": "", + "initialStateCheck": false + }, + { + "name": "Jump", + "type": "Button", + "id": "838b4154-0282-407c-860e-970ffb1a69dc", + "expectedControlType": "Button", + "processors": "", + "interactions": "", + "initialStateCheck": false + } + ], + "bindings": [ + { + "name": "1D Axis Keyboard", + "id": "f1eaf8e5-b149-4905-a8a9-121890ee136c", + "path": "1DAxis", + "interactions": "", + "processors": "", + "groups": "", + "action": "Move", + "isComposite": true, + "isPartOfComposite": false + }, + { + "name": "negative", + "id": "a9afa3f2-ec1f-430d-a41b-77d221b7d656", + "path": "/leftArrow", + "interactions": "", + "processors": "", + "groups": "KeyBoard", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "positive", + "id": "064aa7d7-b08b-4cea-915f-e225e5c62072", + "path": "/rightArrow", + "interactions": "", + "processors": "", + "groups": "KeyBoard", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "1D Axis Gamepad", + "id": "93eaa249-8b44-4767-b233-0ed70a500631", + "path": "1DAxis", + "interactions": "", + "processors": "", + "groups": "", + "action": "Move", + "isComposite": true, + "isPartOfComposite": false + }, + { + "name": "negative", + "id": "084c37a9-d0a1-4ffa-988b-301e97060e91", + "path": "/leftStick/left", + "interactions": "", + "processors": "", + "groups": "Controller", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "positive", + "id": "a0c7812a-cdf9-4a02-9394-ea1ea5bd3d37", + "path": "/leftStick/right", + "interactions": "", + "processors": "", + "groups": "Controller", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "", + "id": "7e8fccb6-fdf3-48f1-a967-3ade3adf570a", + "path": "/space", + "interactions": "", + "processors": "", + "groups": "KeyBoard", + "action": "Jump", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "868cbe30-e640-4d8d-b818-a57529b316c8", + "path": "/buttonSouth", + "interactions": "", + "processors": "", + "groups": "Controller", + "action": "Jump", + "isComposite": false, + "isPartOfComposite": false + } + ] + } + ], + "controlSchemes": [ + { + "name": "Controller", + "bindingGroup": "Controller", + "devices": [ + { + "devicePath": "", + "isOptional": false, + "isOR": false + } + ] + }, + { + "name": "KeyBoard", + "bindingGroup": "KeyBoard", + "devices": [ + { + "devicePath": "", + "isOptional": false, + "isOR": false + } + ] + } + ] +} \ No newline at end of file diff --git a/Assets/Input/Player.inputactions.meta b/Assets/Input/Player.inputactions.meta new file mode 100644 index 0000000..988a876 --- /dev/null +++ b/Assets/Input/Player.inputactions.meta @@ -0,0 +1,14 @@ +fileFormatVersion: 2 +guid: 95988d45e5b74ba4caed759a63cea55a +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 11500000, guid: 8404be70184654265930450def6a9037, type: 3} + generateWrapperCode: 1 + wrapperCodePath: + wrapperClassName: PlayerInput + wrapperCodeNamespace: Input diff --git a/Assets/Scenes/OverDevScene.unity b/Assets/Scenes/OverDevScene.unity new file mode 100644 index 0000000..b245eac --- /dev/null +++ b/Assets/Scenes/OverDevScene.unity @@ -0,0 +1,516 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 12 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 0 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &46615294 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 46615295} + - component: {fileID: 46615296} + m_Layer: 0 + m_Name: CollisionChecker + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &46615295 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 46615294} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0.005, y: -0.483, z: 0} + m_LocalScale: {x: 0.98, y: 0.05, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1053905692} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &46615296 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 46615294} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7000c8c0eb91b2d4cb9a0e3ee1b609a7, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &1053905690 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1053905692} + - component: {fileID: 1053905691} + m_Layer: 0 + m_Name: Player + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &1053905691 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1053905690} + 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: 7482667652216324306, guid: 311925a002f4447b3a28927169b83ea6, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &1053905692 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1053905690} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0.9018374, y: 0.6227216, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 46615295} + m_Father: {fileID: 0} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1514474960 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1514474963} + - component: {fileID: 1514474962} + - component: {fileID: 1514474961} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &1514474961 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1514474960} + m_Enabled: 1 +--- !u!20 &1514474962 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1514474960} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 1 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &1514474963 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1514474960} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1524344315 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1524344317} + - component: {fileID: 1524344316} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &1524344316 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1524344315} + m_Enabled: 1 + serializedVersion: 10 + m_Type: 1 + m_Shape: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!4 &1524344317 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1524344315} + m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} + m_LocalPosition: {x: 1.6632634, y: 0.9842892, z: -0.13470843} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!1 &1816931259 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1816931261} + - component: {fileID: 1816931260} + m_Layer: 3 + m_Name: Square + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &1816931260 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1816931259} + 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: 7482667652216324306, guid: 311925a002f4447b3a28927169b83ea6, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &1816931261 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1816931259} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -3.79, y: -0.89, z: 0} + m_LocalScale: {x: 6.1417, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git a/Assets/Scenes/OverDevScene.unity.meta b/Assets/Scenes/OverDevScene.unity.meta new file mode 100644 index 0000000..5bf27c1 --- /dev/null +++ b/Assets/Scenes/OverDevScene.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 332bf4bdb8b87e5498fdcfaab68eb67e +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Entity.meta b/Assets/Scripts/Entity.meta deleted file mode 100644 index 8b51480..0000000 --- a/Assets/Scripts/Entity.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: b408a30f09ef434ba0049326be060a01 -timeCreated: 1645440974 \ No newline at end of file diff --git a/Assets/Scripts/Entity/IMovement.cs b/Assets/Scripts/Entity/IMovement.cs deleted file mode 100644 index 160e313..0000000 --- a/Assets/Scripts/Entity/IMovement.cs +++ /dev/null @@ -1,6 +0,0 @@ -namespace Entity -{ - public interface IMovement - { - } -} \ No newline at end of file diff --git a/Assets/Scripts/Entity/IMovement.cs.meta b/Assets/Scripts/Entity/IMovement.cs.meta deleted file mode 100644 index 8c13ddd..0000000 --- a/Assets/Scripts/Entity/IMovement.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 9f2ac0c9f14b4b33a8a3c656d94ecad2 -timeCreated: 1645440963 \ No newline at end of file diff --git a/Assets/Scripts/Entity/Player/PlayerController.cs b/Assets/Scripts/Entity/Player/PlayerController.cs deleted file mode 100644 index 7af161b..0000000 --- a/Assets/Scripts/Entity/Player/PlayerController.cs +++ /dev/null @@ -1,8 +0,0 @@ -using UnityEngine; - -namespace Entity.Player -{ - public class PlayerController : MonoBehaviour, IMovement - { - } -} \ No newline at end of file diff --git a/Assets/Scripts/Orientation.meta b/Assets/Scripts/Orientation.meta new file mode 100644 index 0000000..c28ac3c --- /dev/null +++ b/Assets/Scripts/Orientation.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 2e7bd18e73b54264ba94803d6535b10c +timeCreated: 1645462463 \ No newline at end of file diff --git a/Assets/Scripts/Orientation/Orientation.cs b/Assets/Scripts/Orientation/Orientation.cs new file mode 100644 index 0000000..20d9453 --- /dev/null +++ b/Assets/Scripts/Orientation/Orientation.cs @@ -0,0 +1,8 @@ +namespace Orientation +{ + public enum Orientation + { + Left, + Right + } +} \ No newline at end of file diff --git a/Assets/Scripts/Orientation/Orientation.cs.meta b/Assets/Scripts/Orientation/Orientation.cs.meta new file mode 100644 index 0000000..1235c2f --- /dev/null +++ b/Assets/Scripts/Orientation/Orientation.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 5ec0be57a6f644319bcf493cfbbb7495 +timeCreated: 1645462472 \ No newline at end of file diff --git a/Assets/Scripts/Entity/Player.meta b/Assets/Scripts/Player.meta similarity index 100% rename from Assets/Scripts/Entity/Player.meta rename to Assets/Scripts/Player.meta diff --git a/Assets/Scripts/Player/PlayerController.cs b/Assets/Scripts/Player/PlayerController.cs new file mode 100644 index 0000000..ce099a3 --- /dev/null +++ b/Assets/Scripts/Player/PlayerController.cs @@ -0,0 +1,128 @@ +using System; +using Movement; +using UnityEngine; +using UnityEngine.InputSystem; + +namespace Player +{ + public class PlayerController : MonoBehaviour, IMovement, Input.PlayerInput.IPlayerControlActions + { + private Input.PlayerInput _controls; + private Rigidbody2D _playerRigidbody2D; + private SpriteRenderer _playerSpriteRenderer; + + private bool _moveKeyPressed; + private bool _jumpKeyPressed; + + private bool _canJump = true; + private bool _isOnAir; + + private float _xAxisValue; + + private void Awake() + { + this._playerRigidbody2D = GameObject.Find("Player").GetComponent(); + } + + private void OnEnable() + { + if (_controls == null) + { + _controls = new Input.PlayerInput(); + _controls.PlayerControl.SetCallbacks(this); + } + + _controls.PlayerControl.Enable(); + } + + private void OnDisable() + { + _controls.Disable(); + } + + private void FixedUpdate() + { + if (_moveKeyPressed) + Move(_xAxisValue); + else + _playerRigidbody2D.velocity = new Vector2(0.0f, _playerRigidbody2D.velocity.y); + + if (_jumpKeyPressed) + Jump(); + } + + // PAUSE METHODS + + public bool IsPaused { get; } + + public void Pause() + { + throw new NotImplementedException(); + } + + public void Resume() + { + throw new NotImplementedException(); + } + + // MOVE METHODS + + public float BaseSpeed { get; set; } + + public void Move(float value) + { + switch (_xAxisValue) + { + case < 0: + _playerSpriteRenderer.flipX = true; + break; + case > 0: + _playerSpriteRenderer.flipX = false; + break; + } + + _playerRigidbody2D.velocity = new Vector2(BaseSpeed * _xAxisValue * Time.fixedDeltaTime, + _playerRigidbody2D.velocity.y); + } + + private void Jump() + { + throw new NotImplementedException(); + } + + private void Climb() + { + throw new NotImplementedException(); + } + + // INPUT HANDLING + + public void OnMove(InputAction.CallbackContext context) + { + switch (context.canceled) + { + case true: + _moveKeyPressed = false; + break; + case false: + _moveKeyPressed = true; + _xAxisValue = context.ReadValue(); + break; + } + } + + public void OnJump(InputAction.CallbackContext context) + { + switch (context.canceled) + { + case true: + _jumpKeyPressed = false; + _canJump = true; + break; + case false: + _jumpKeyPressed = true; + break; + } + } + } +} \ No newline at end of file diff --git a/Assets/Scripts/Entity/Player/PlayerController.cs.meta b/Assets/Scripts/Player/PlayerController.cs.meta similarity index 100% rename from Assets/Scripts/Entity/Player/PlayerController.cs.meta rename to Assets/Scripts/Player/PlayerController.cs.meta diff --git a/ProjectSettings/TagManager.asset b/ProjectSettings/TagManager.asset index 091dcdd..6cdf63a 100644 --- a/ProjectSettings/TagManager.asset +++ b/ProjectSettings/TagManager.asset @@ -8,7 +8,7 @@ TagManager: - Default - TransparentFX - Ignore Raycast - - + - Ground - Water - UI - Player diff --git a/UserSettings/EditorUserSettings.asset b/UserSettings/EditorUserSettings.asset index 8b3df44..daa06bb 100644 --- a/UserSettings/EditorUserSettings.asset +++ b/UserSettings/EditorUserSettings.asset @@ -11,6 +11,9 @@ EditorUserSettings: RecentlyUsedSceneGuid-1: value: 06550c57540350025c0b0f2747220a44174f4b73297070642b714465b0e6366e flags: 0 + RecentlyUsedSceneGuid-2: + value: 5002060403010b5f0f560e7a47260a444f4f1e2e2f2e27312f7f4536e0b6633d + flags: 0 vcSharedLogLevel: value: 0d5e400f0650 flags: 0