Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

Detener rutina y comenzar otra

Iniciado por maya111, Junio 25, 2015, 05:30:42 PM

Tema anterior - Siguiente tema
Hola buen día, necesito ayuda    lo que quiero que al oprimir la segunda tecla detenga el movimiento de la primera  y no es asi, porque se ejecutan las 2 al mismo tiempo.Este es mi Script.
 
 var inc=50;
var incr=10;
var traslacionX: boolean= false ; 
var traslacionY: boolean= false;
var traslacionZ: boolean= false;
//Rotacion
var RotacionX: boolean= false; 
var RotacionY: boolean= false;
var RotacionZ: boolean= false;
 
 
function Routine1 (){
constantForce.relativeForce.x= inc * Time.deltaTime;
}
 
function Routine2 (){
constantForce.relativeForce.y= inc * Time.deltaTime;
}
 
function Routine3 (){
constantForce.relativeForce.z= inc * Time.deltaTime;
}
 
//Rutinas de rotacion...
function Routine4 (){
constantForce.relativeTorque.x= incr * Time.deltaTime;
 
}
function Routine5 (){
constantForce.relativeTorque.y= incr * Time.deltaTime;
}
function Routine6 (){
constantForce.relativeTorque.z= incr * Time.deltaTime;
}
 
 
function Update () {
if(Input.GetKeyDown(KeyCode.X)){
traslacionX= true;
traslacionY= false;
traslacionZ= false;
}
if(Input.GetKeyDown(KeyCode.Y)){
traslacionX= false;
traslacionY= true;
traslacionz= false;
}
if(Input.GetKeyDown(KeyCode.Z)){
traslacionX= false;
traslacionY= false;
traslacionZ= true;
}
 
 
//Rotacion..
if(Input.GetKeyDown(KeyCode.R)){
RotacionX=true;
RotacionY=false;
RotacionZ=false;
}
if(Input.GetKeyDown(KeyCode.O)){
RotacionX=false;
RotacionY=true;
RotacionZ=false;
}
if(Input.GetKeyDown(KeyCode.T)){
RotacionX=false;
RotacionY=false;
RotacionZ=true;
}
 
 
 
if(traslacionX){
Routine1 ();
}
if(traslacionY){
Routine2 ();
}
if(traslacionZ){
Routine3 ();
}
 
//Rotacion
if(RotacionX){
Routine4 ();
}
if(RotacionY){
Routine5 ();
}
if(RotacionZ){
Routine6 ();
}
 
 
 
print( inc);
}
 
 
 
Gracias.
 

Si haces las condiciones dependientes entre ellas, evitas la posibilidad de que se pulsen varias teclas a la vez:

if (Input.getKeyDown(keycode.R))
{
//codigo que vaya aqui
} else if (Input.getKeyDown(keycode.V))
{
//codigo que vaya aquí
}

En el ejemplo de arriba, nunca se permitirá pulsar a la vez las teclas R y V, sólo cualquiera de ellas.

Cita de: pioj date=1435248637Si haces las condiciones dependientes entre ellas, evitas la posibilidad de que se pulsen varias teclas a la vez:

if (Input.getKeyDown(keycode.R))
{
//codigo que vaya aqui
} else if (Input.getKeyDown(keycode.V))
{
//codigo que vaya aquí
}

En el ejemplo de arriba, nunca se permitirá pulsar a la vez las teclas R y V, sólo cualquiera de ellas.
Gracias revisare!!! 

Etiquetas: