From 0382584a77aed5dc926909b7dad6159ae0757e38 Mon Sep 17 00:00:00 2001 From: Andrew Lee Date: Mon, 20 Apr 2020 13:23:57 -0400 Subject: Added jumping and gun (not functional) --- Assets/Scripts/PlayerMovement.cs | 51 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Assets/Scripts/PlayerMovement.cs (limited to 'Assets/Scripts/PlayerMovement.cs') diff --git a/Assets/Scripts/PlayerMovement.cs b/Assets/Scripts/PlayerMovement.cs new file mode 100644 index 0000000..b0b6874 --- /dev/null +++ b/Assets/Scripts/PlayerMovement.cs @@ -0,0 +1,51 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class PlayerMovement : MonoBehaviour +{ + public CharacterController controller; + + public float speed = 12f; + + public float gravity = -9.81f; + + public float jumpHeight = 3f; + + public Transform groundCheck; + + public float groundDistance = 0.4f; + + public LayerMask groundMask; + + Vector3 velocity; + bool isGrounded; + + // Update is called once per frame + void Update() + { + isGrounded = Physics.CheckSphere(groundCheck.position, groundDistance, groundMask); + + if (isGrounded && velocity.y < 0) + { + velocity.y = -2f; + } + + float x = Input.GetAxis("Horizontal"); + float z = Input.GetAxis("Vertical"); + + Vector3 move = transform.right * x + transform.forward * z; + + controller.Move(move * speed * Time.deltaTime); + + if (Input.GetButtonDown("Jump") && isGrounded) + { + velocity.y = Mathf.Sqrt(jumpHeight * -2f * gravity); + } + + velocity.y += gravity * Time.deltaTime; + + controller.Move(velocity * Time.deltaTime); + + } +} -- cgit v1.2.3