void UpdateWalking() { yVel += gravity * Time.deltaTime; if (isGrounded && Input.GetKey(KeyCode.Space)) { yVel = jumpForce; } Vector3 updateVel = (transform.right * Input.GetAxis("Horizontal") + transform.forward * Input.GetAxis("Vertical") * (Input.GetKey(KeyCode.LeftShift) || Input.GetKey(KeyCode.RightShift) ? 1.5f : 1f)) * speed; updateVel += new Vector3(0f, yVel, 0f); updateVel *= Time.deltaTime; transform.position += new Vector3(0, updateVel.y, 0); if (PlayerCollider.Collision(transform, out isGrounded)) { transform.position -= new Vector3(0, updateVel.y, 0); yVel = -2f * Time.fixedDeltaTime; } transform.position += new Vector3(updateVel.x, 0, 0); if (PlayerCollider.Collision(transform, out bool _)) { transform.position -= new Vector3(updateVel.x, 0, 0); } transform.position += new Vector3(0, 0, updateVel.z); if (PlayerCollider.Collision(transform, out bool _)) { transform.position -= new Vector3(0, 0, updateVel.z); } }
void UpdateWalking(Vector2 inputDirection, InputData data) { yVel += gravity; if (isGrounded && data.inputs[5]) { yVel = jumpForce; } Vector3 updateVel = (transform.right * inputDirection.x + transform.forward * inputDirection.y * (data.inputs[6] ? 1.5f : 1f)) * speed; updateVel += new Vector3(0f, yVel, 0f); transform.position += new Vector3(0, updateVel.y, 0); if (PlayerCollider.Collision(transform, out isGrounded)) { transform.position -= new Vector3(0, updateVel.y, 0); yVel = -2f * Time.fixedDeltaTime; } transform.position += new Vector3(updateVel.x, 0, 0); if (PlayerCollider.Collision(transform, out bool _)) { transform.position -= new Vector3(updateVel.x, 0, 0); } transform.position += new Vector3(0, 0, updateVel.z); if (PlayerCollider.Collision(transform, out bool _)) { transform.position -= new Vector3(0, 0, updateVel.z); } }