Speed Increase Power up
I am making a 3D physics game and I am having problem with my speed boost. It is supposed to increase the speed of the character for 10 seconds when it comes into contact of a collider that is set beneath it. Here is my code:
pragma strict
private var startTime1;
var timer1:int;
private var time = 10;
static var trigger = false;
function OnCollisionEnter (collision : Collision){
if(collision.gameObject.tag == "Player"){
trigger = true;
}
}
function Update(){
if(trigger == true){
TimerStart();
ballcontrol.jumpHeight = 15;
ballcontrol.listing = 5;
}
if(trigger == false){
ballcontrol.jumpHeight = 10;
ballcontrol.listing = .5;
}
}
function TimerStart(){
startTime1 = Time.time;
timer1 = Time.time;
if(timer1 >= time){
Debug.Log("End high jump");
trigger = false;
}
}
in java script
Answer by Wolfrik_Creations · May 29, 2016 at 10:08 PM
Firstly, you should use the code thingy when you put code into a question, the code thingy is the button that says "101010".
Secondly, Time.time is the time in seconds that you've been playing the game, this will not work.
Instead use yield WaitForSeconds().
It stops the function until the amount of time is due.
Try this (untested):
#pragma strict
private var startTime1;
var timer1:int;
private var time = 10;
static var trigger = false;
private var tog : boolean = false;
function OnCollisionEnter (collision : Collision){if(collision.gameObject.tag == "Player"){trigger = true; tog = true;}}
function Update(){
if(trigger){
ballcontrol.jumpHeight = 15;
ballcontrol.listing = 5;
if(tog){
TimerStart();
tog = false;
}
}else{
ballcontrol.jumpHeight = 10;
ballcontrol.listing = .5;
}
}
function TimerStart(){
yield WaitForSeconds(time);
trigger = false;
UnityEngine.Debug.Log("No longer in the trigger!");
}
So, did it work? I saw you edited the question.
Your answer
Follow this Question
Related Questions
How to speed up player character in ENDLESS RUNNER after colliding with powerup?? 0 Answers
How can I make cam move in a perfect circular orbit, but without diving into colliders? 2 Answers
Create only one Instantiated Object 1 Answer
Generating a plane in front of player infinitly 1 Answer
About UnityScript - us.exe compiler 0 Answers