- Home /
Jumping Stopped Working.
Hello, I edited the CharacterController.Move script, and now it won't jump, I don't know what I need to do to get it to work. Here's my current Script:
var speed : float = 12.0;
var jumpSpeed : float = 8.0;
var gravity : float = 20.0;
var RotateSpeed : float = 3.0;
var SprintSpeed = 20;
var Sprinting : boolean = false;
private var moveDirection : Vector3 = Vector3.zero;
function Update() {
var controller : CharacterController = GetComponent(CharacterController);
if (controller.isGrounded) {
if (Input.GetButton ("Jump")) {
moveDirection.y = jumpSpeed;
}
moveDirection = Vector3(0, 0,Input.GetAxis("Vertical"));
//Rotate
transform.Rotate(0,Input.GetAxis("Horizontal") * RotateSpeed, 0);
moveDirection = transform.TransformDirection(moveDirection);
moveDirection *= speed;
if(Input.GetKey("up")){
if(Input.GetKey(KeyCode.LeftShift)){
transform.Translate(Vector3.forward * SprintSpeed * Time.smoothDeltaTime);
Sprinting = true;
}
}
}
// Apply gravity
moveDirection.y -= gravity * Time.smoothDeltaTime;
// Move the controller
controller.Move(moveDirection * Time.smoothDeltaTime);
if(Sprinting){
SprintingFunc();
}
}
function SprintingFunc(){
BreathDeduct();
}
function BreathDeduct(){
//Take away some breath
}
Thanks in advance for any help! :)
Answer by HunterKrech · Apr 06, 2013 at 06:38 AM
Did you change input settings for "Jump" button?
Edit->Project Settings->Input
Answer by Gurc · Apr 06, 2013 at 07:20 AM
You assign a new vector to movedirection, overwrite jump decision
moveDirection = Vector3(0, 0,Input.GetAxis("Vertical"));
it should be
moveDirection += Vector3(0, 0,Input.GetAxis("Vertical"));
Edit: You should check is your character is grounded. http://docs.unity3d.com/Documentation/ScriptReference/CharacterController-isGrounded.html
if(CharacterController.IsGrounded)
{
moveDirection += Vector3(0, 0,Input.GetAxis("Vertical"));
}
When I add this the player goes crazy, is that gravity meant to be different to 1000?
Your answer
Follow this Question
Related Questions
Getting this character controll script working right 1 Answer
Character controller/gravity reverse/jump reverse/constantly running 0 Answers
why does character controller accelerate off ledges? 1 Answer
Why does my characterController code not apply gravity correctly? 0 Answers
Anti-Gravity isn't working 1 Answer