La touche "Fire1" ne marche pas
Je suis en train de créer un FPS en suivant un tuto sur youtube pour apprendre a utiliser unity. J'ai attaché un fusil a la vue FPS, mis un empty au bout du canon et mis ce script dans l'empty :
"#pragma strict
var bulletCasing : Rigidbody;
var ejectSpeed : int =100;
var fireRate : float = 0.5;
private var nextFire : float =0.0;
private var fullAuto = false;
function Uptade(){
if(Input.GetButton("Fire1") && Time.time > nextFire){
nextFire = Time.time + fireRate;
var bullet : Rigidbody;
bullet = Instantiate(bulletCasing, transform.position, transform.rotation);
bullet.velocity = transform.TransformDirection(Vector3.left*ejectSpeed);
}
if (Input.GetKeyDown("c")){
fullAuto = !fullAuto;
}
if(fullAuto == true){
fireRate = 0.10;
}else{
fireRate = 0.5;
}
}"
J'ai rempli la variable "bulletCasing" avec une balle modelisé, et lorsque je teste, je clique gauche et il ne se passe rien. Pouvez-vous m'aider ? Merci.
Answer by See_Sharp · Mar 16, 2016 at 01:36 PM
French isn't my best language, but as far as I understood:
Input.GetKeyDown("c")
This is wrong. You could pass KeyCode.C
to make this work.
If you still want to pass a string, those are meant for input axis. The name refers to the ones in Edit -> Project Settings -> Input