Im creating a game with a ball. When the ball touches the ground it makes one sound. Now what I want to do is to make that ball make a sound when its on ground and its velocity is greater then 0. What should I do.
My script:
var forse : float;
var maxSpeed : float;
var jumpforse :float;
var CanJump = true;
var fallforse : float;
function Update () {
if(Input.GetKey(KeyCode.W)) {
rigidbody.AddForce (Vector3.forward * forse);
}
if(Input.GetKey (KeyCode.S)) {
rigidbody.AddForce (Vector3.back * forse);
}
if(Input.GetKey (KeyCode.A)) {
rigidbody.AddForce (Vector3.left * forse);
}
if(Input.GetKey (KeyCode.D)) {
rigidbody.AddForce (Vector3.right * forse);
}
if(rigidbody.velocity.magnitude > maxSpeed){
rigidbody.velocity = rigidbody.velocity.normalized * maxSpeed;
}
if(Input.GetButtonDown ("Jump"))
{
if(CanJump == true) {
rigidbody.AddForce (Vector3.up * jumpforse);
}
}
}
function OnCollisionExit(collision : Collision){
if (collision.gameObject.name == "Terrain"){
yield WaitForSeconds (0.25);
CanJump = false;
}
}
function OnCollisionEnter(collision : Collision){
if (collision.gameObject.name == "Terrain"){
CanJump = true;
audio.Play();
}
}
function OnCollisionStay(collision : Collision){
if (collision.gameObject.name == "Terrain"){
CanJump = true;
}
}