From d7e461212af4baf48838af2a0e0956773dbf4568 Mon Sep 17 00:00:00 2001 From: BeatriceAl Date: Sun, 5 Apr 2026 00:21:35 +0200 Subject: [PATCH] Chapter 4.3 done --- .../Assets/Scenes/Jumper1.unity | 464 +++++++++++++++++- .../Assets/Scripts/PlayerControl.cs | 103 +++- 2 files changed, 557 insertions(+), 10 deletions(-) diff --git a/UnityBuch-Projekt1/Assets/Scenes/Jumper1.unity b/UnityBuch-Projekt1/Assets/Scenes/Jumper1.unity index 8318eb9..0af21a4 100644 --- a/UnityBuch-Projekt1/Assets/Scenes/Jumper1.unity +++ b/UnityBuch-Projekt1/Assets/Scenes/Jumper1.unity @@ -211,6 +211,118 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &905305827 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 905305831} + - component: {fileID: 905305830} + - component: {fileID: 905305829} + - component: {fileID: 905305828} + m_Layer: 0 + m_Name: Boden (4) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!65 &905305828 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 905305827} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &905305829 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 905305827} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: c0d76c177c738926c9aed4889be1f165, type: 2} + 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &905305830 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 905305827} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &905305831 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 905305827} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -7.97, y: 1.39, z: 0} + m_LocalScale: {x: 7.8749995, y: 0.5, z: 5} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1194979610 GameObject: m_ObjectHideFlags: 0 @@ -323,6 +435,118 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1273868946 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1273868950} + - component: {fileID: 1273868949} + - component: {fileID: 1273868948} + - component: {fileID: 1273868947} + m_Layer: 0 + m_Name: Boden (3) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!65 &1273868947 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1273868946} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1273868948 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1273868946} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: c0d76c177c738926c9aed4889be1f165, type: 2} + 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1273868949 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1273868946} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &1273868950 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1273868946} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 8.04, y: 1.55, z: 0} + m_LocalScale: {x: 7.8749995, y: 0.5, z: 5} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1289813051 GameObject: m_ObjectHideFlags: 0 @@ -410,8 +634,8 @@ Transform: m_GameObject: {fileID: 1289813051} 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_LocalPosition: {x: 0, y: -3.82, z: 0} + m_LocalScale: {x: 0.5, y: 0.5, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} @@ -429,6 +653,14 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: '::' Speed: 5 + Jump: 4 + Gravity: 15 + front: {fileID: -2690792559708188323, guid: 6a80562fd8c9ed91095495163658d5f9, type: 3} + back: {fileID: -4571828015118065507, guid: b86b2b12857f7abe2b440e11126eeb2a, type: 3} + right1: {fileID: -2161276900132581064, guid: 03e5380008b4092ff8715e9afcd311b8, type: 3} + right2: {fileID: 5430413387309060758, guid: 13464cf33462566f5bb0a0f691283c91, type: 3} + left1: {fileID: -513750162270818376, guid: 673e7090d144b13219d7da743b2ae1f7, type: 3} + left2: {fileID: 6175168743583029483, guid: eb595d8fa27f7cbf29faae9878a95d87, type: 3} --- !u!143 &1289813055 CharacterController: m_ObjectHideFlags: 0 @@ -454,6 +686,230 @@ CharacterController: m_SkinWidth: 0.08 m_MinMoveDistance: 0.001 m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &1361782269 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1361782273} + - component: {fileID: 1361782272} + - component: {fileID: 1361782271} + - component: {fileID: 1361782270} + m_Layer: 0 + m_Name: Boden (2) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!65 &1361782270 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1361782269} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1361782271 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1361782269} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: c0d76c177c738926c9aed4889be1f165, type: 2} + 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1361782272 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1361782269} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &1361782273 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1361782269} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -2.05, y: -1.22, z: 0} + m_LocalScale: {x: 7.8749995, y: 0.5, z: 5} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1411298338 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1411298342} + - component: {fileID: 1411298341} + - component: {fileID: 1411298340} + - component: {fileID: 1411298339} + m_Layer: 0 + m_Name: Boden (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!65 &1411298339 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1411298338} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1411298340 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1411298338} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: c0d76c177c738926c9aed4889be1f165, type: 2} + 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: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1411298341 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1411298338} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &1411298342 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1411298338} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 8.36, y: -3.06, z: 0} + m_LocalScale: {x: 7.8749995, y: 0.5, z: 5} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1995595071 GameObject: m_ObjectHideFlags: 0 @@ -558,4 +1014,8 @@ SceneRoots: - {fileID: 519420032} - {fileID: 1289813053} - {fileID: 1194979614} + - {fileID: 1411298342} + - {fileID: 1361782273} + - {fileID: 1273868950} + - {fileID: 905305831} - {fileID: 1995595073} diff --git a/UnityBuch-Projekt1/Assets/Scripts/PlayerControl.cs b/UnityBuch-Projekt1/Assets/Scripts/PlayerControl.cs index 279fdd2..26a03cc 100644 --- a/UnityBuch-Projekt1/Assets/Scripts/PlayerControl.cs +++ b/UnityBuch-Projekt1/Assets/Scripts/PlayerControl.cs @@ -3,12 +3,29 @@ using UnityEngine.InputSystem; public class PlayerControl : MonoBehaviour { - private CharacterController Figur; + private CharacterController Figure; + private Vector3 MoveVector = Vector3.zero; + private InputAction moveAction; // for new Input handling + private InputAction jumpAction; // for new Input handling + + private SpriteRenderer renderer; + private float current = 0.0f; + + [Header("Movement")] public float Speed = 5.0f; + public float Jump = 5.0f; + public float Gravity = 15.0f; + + [Header("Sprites")] + public Sprite front, back; + public Sprite right1, right2; + public Sprite left1, left2; + // Start is called once before the first execution of Update after the MonoBehaviour is created void Start() { - Figur = GetComponent(); + Figure = GetComponent(); + renderer = GetComponent(); } // Update is called once per frame @@ -17,19 +34,89 @@ public class PlayerControl : MonoBehaviour // old Input handling - used in book /* if (Input.GetKey(KeyCode.LeftArrow)) - Figur.Move(Vector3.left * Time.deltaTime * Speed); + Figure.Move(Vector3.left * Time.deltaTime * Speed); if (Input.GetKey(KeyCode.RightArrow)) - Figur.Move(Vector3.right * Time.deltaTime * Speed); + Figure.Move(Vector3.right * Time.deltaTime * Speed); + */ + /* + if (Figure.isGrounded){ + MoveVector.x = Input.GetAxis("Horizontal"); + if(Input.GetButton("Jump")) MoveVector.y = Jump; + } + MoveVector.y -= Gravity * Time.deltaTime; + Figure.Move(MoveVector * Time.deltaTime * Speed); + */ + /* + if (MoveVector.x < 0) renderer.sprite = left1; + else if (MoveVector.x > 0) renderer.sprite = right1; + else renderer.sprite = front; */ //new Input handling - arrows and wasd + /* if (Keyboard.current.leftArrowKey.isPressed || Keyboard.current.aKey.isPressed) - Figur.Move(Vector3.left * Time.deltaTime * Speed); + Figure.Move(Vector3.left * Time.deltaTime * Speed); if (Keyboard.current.rightArrowKey.isPressed || Keyboard.current.dKey.isPressed) - Figur.Move(Vector3.right * Time.deltaTime * Speed); + Figure.Move(Vector3.right * Time.deltaTime * Speed); if (Keyboard.current.upArrowKey.isPressed || Keyboard.current.wKey.isPressed) - Figur.Move(Vector3.up * Time.deltaTime * Speed); + Figure.Move(Vector3.up * Time.deltaTime * Speed); if (Keyboard.current.downArrowKey.isPressed || Keyboard.current.sKey.isPressed) - Figur.Move(Vector3.down * Time.deltaTime * Speed); + Figure.Move(Vector3.down * Time.deltaTime * Speed); + */ + + Vector2 input = moveAction.ReadValue(); + if (Figure.isGrounded){ + MoveVector.x = input.x; + if (jumpAction.WasPressedThisFrame()) MoveVector.y = Jump; + } + MoveVector.y -= Gravity * Time.deltaTime; + Figure.Move(MoveVector * Time.deltaTime * Speed); + + if (MoveVector.x < 0) goLeft(); + else if (MoveVector.x > 0) goRight(); + else renderer.sprite = front; + } + + void OnEnable() // for new Input handling + { + moveAction = new InputAction(type: InputActionType.Value); + moveAction.AddCompositeBinding("2DVector") + .With("Left", "/a") + .With("Right", "/d") + .With("Up", "/w") + .With("Down", "/s"); + moveAction.AddCompositeBinding("2DVector") + .With("Left", "/leftArrow") + .With("Right", "/rightArrow") + .With("Up", "/upArrow") + .With("Down", "/downArrow"); + + jumpAction = new InputAction("Jump", InputActionType.Button); + jumpAction.AddBinding("/space"); + jumpAction.AddBinding("/w"); + jumpAction.AddBinding("/upArrow"); + + moveAction.Enable(); + jumpAction.Enable(); + } + + void OnDisable() // for new Input handling + { + moveAction.Disable(); + jumpAction.Disable(); + } + + private void goLeft(){ + current += 0.1f; + if (current < 10.0f) return; + renderer.sprite = renderer.sprite == left1 ? left2 : left1; + current = 0.0f; + } + + private void goRight(){ + current += 0.1f; + if (current < 10.0f) return; + renderer.sprite = renderer.sprite == right1 ? right2 : right1; + current = 0.0f; } }