Buenas!
Necesito esto:
Iterar Una sola vez, cada vez que el booleano del Raycast sea true. Intente creando una variable Booleana (iterator) que comienza true y se hace false cuando RAYCAST es true, y cuando es false RAYCAST es false ITERATOR, el problema de hacerlo asi, es que al corroborar 4 veces los raycast en Update cuando uno es true no me da pelota por q los otros 3 dejan a false a iterator.
Alguna idea-solucion?
ABRAZO
Cita de: enelmenu date=1507066766Intente creando una variable Booleana (iterator) que comienza true y se hace false cuando RAYCAST es true, y cuando es false RAYCAST es false ITERATOR, el problema de hacerlo asi, es que al corroborar 4 veces los raycast en Update cuando uno es true no me da pelota por q los otros 3 dejan a false a iterator.
osea a ver si entendi... que consideras iterar una vez? porque simplemente no llamar a Glow()? (supongo que es alguna funcion). Para que necesitas un bool?
lo que veo ahi en el papel se podria hacer asi (pseudocodigo):
foreach(ray)
{
if(Physics (ray) )
Glow();
}
Cita de: lightbug date=1507068072if(Physics (ray) ) Glow();
El tema de hacerlo asi, es que no itera una sola vez, itera cada frame en donde el ray sea true, yo quiero cuando ingrese un true itere una vez, y asi cada vez q vuelvo a entrar al ray.
Cita de: enelmenu date=1507068412El tema de hacerlo asi, es que no itera una sola vez, itera cada frame en donde el ray sea true, yo quiero cuando ingrese un true itere una vez, y asi cada vez q vuelvo a entrar al ray.
Ah ok, pasa que la hoja me confundio un poco, y poniendo una bool exclusiva para el ray?
bool rayDetected1 = false;
bool rayDetected2 = false;
bool rayDetected3 = false;
bool rayDetected4 = false;
if(!rayDetected1)
if(Physics (ray1) ){
rayDetected1 = true;
Glow();
}
if(!rayDetected2)
if(Physics (ray2) ){
rayDetected2 = true;
Glow();
}
if(!rayDetected3)
if(Physics (ray3) ){
rayDetected3 = true;
Glow();
}
if(!rayDetected4)
if(Physics (ray4) ){
rayDetected4 = true;
Glow();
}
Se puede hacer mucho mas prolijo pero para dar la idea
Si tus ray van a acarrear info, como por ejemplo que tocan, el bool este de arriba, y demas, te conviene mas bien definir una estructura o clase con todo lo que necesitas, fijate que si ttuvieras muchisimos mas no te vas a poner definiendo ray1..2..3...78 , directamente iteras con un for o foreach un arreglo o lista de rays (estructura o clase) y el codigo te queda mucho mejor, como arriba podrias poner:
foreach(RayEnelmenu rayElement in m_RayList)
{
if(!rayElement.triggered)
if(Physics (rayElement.ray ,.....) ) {
Glow();
rayElement.triggered = true;
}
}
EDITO: fijate que si queres que cuando no se de el raycast sea falso solo basta con invertir el if(triggered) con el raycast, sino asi nunca vuelve a ponerlo en false