- Home /
Question by
PhilipposSlicher · Jan 19, 2018 at 09:10 AM ·
charactercontrollerjumpjumping
Unity Character Controller jumps instantly
So I have this mess of a script, which has some mechanics like double jump, camera space controls, which all work fine, but for jumping, it instantly "teleports" upwards and falls back down, and I'm not sure why. I am using CharacterController. using System.Collections; using System.Collections.Generic; using UnityEngine;
public class MovementController : MonoBehaviour
{
private float verticalVelocity;
private CharacterController cc;
public float gravity = 1f;
public float moveSpeed;
private Vector3 move = Vector3.zero;
private Transform cam;
private Vector3 camForward;
private bool jump;
public float jumpForce = 2f;
private int jumpCounter;
public int allowedConcurrrentJumps = 2;
// Use this for initialization
void Start()
{
cc = GetComponent<CharacterController>();
cam = Camera.main.transform;
}
// Update is called once per frame
void Update()
{
float h = Input.GetAxis("Horizontal");
float v = Input.GetAxis("Vertical");
float y = -gravity;
camForward = Vector3.Scale(cam.forward, new Vector3(1, 0, 1)).normalized;
move = (v * camForward + h * cam.right).normalized;
if (cc.isGrounded && Input.GetButtonDown("Jump"))
{
Debug.Log("Grounded");
move.y = jumpForce * 10f;
jumpCounter = 0;
} else if (Input.GetButtonDown("Jump") && jumpCounter < allowedConcurrrentJumps){
move.y = jumpForce;
jumpCounter++;
} else {
move.y = y * Time.deltaTime;
}
}
void FixedUpdate()
{
cc.Move(move * moveSpeed * Time.deltaTime);
}
}
Comment
Your answer
Follow this Question
Related Questions
I can't do that my character jumps while running 0 Answers
can anyone help me to smooth the jump? 0 Answers
character controller wont rise when I Jump :( 1 Answer
jump with character controller best way? 1 Answer
Player Inconsistent Jumps 0 Answers