Unity Spain
Post Antiguos => General (Antiguo) => Mensaje iniciado por: RankDown en Julio 26, 2015, 12:01:27 AM
Hola, a ver si me pueden ayudar con este script, ya que med a un error y no soy muy bueno a la hora de hacer scripts xD. void Update ()
{
// Activamos o desactivamos la gravedad en función de la variable 'Terrestre'
thisRigidbody.useGravity = Terrestre; // Calculamos la velocidad hacia el siguiente hito (si no hubiese velocidad definida para
// alguno de los hitos, asumiremos que es 0 y por tanto el objeto quedará parado)
float VelocidadHaciaHito = 0;
try
{
VelocidadHaciaHito = VelocidadesPatronMovimiento[HitoSiguiente];
}
catch
{
VelocidadHaciaHito = 0;
} // Comprobamos si podemos ir hacia el siguiente hito
if (CanGoToNextMilestone)
{
try
{
// Movemos al objeto hacia el siguiente hito
if(IrHaciaHito(HitosPatronMovimiento[HitoSiguiente].transform.position, VelocidadHaciaHito))
{
// Justo cuando lleguemos a un hito, paramos al objeto
CanGoToNextMilestone = false; // Activamos el/los script/s de comportamiento correspondiente/s al hito actual (los que
// su nombre empiecen contengan la palabra 'Patron').
// Explicaremos estos scripts más adelante.
bool patronFound = false;
MonoBehaviour[] milestoneScripts = HitosPatronMovimiento[HitoSiguiente].GetComponents<MonoBehaviour>();
foreach (MonoBehaviour script in milestoneScripts)
{
if (script.GetType().Name.Contains("Patron"))
{
patronFound = true;
script.enabled = true;
}
} // Si no encontramos ningún script de comportamiento en el hito, continuamos al siguiente
if (!patronFound)
{
CanGoToNextMilestone = true;
} // Calculamos cual será el próximom hito
if (HitoSiguiente != HitosPatronMovimiento.Length - 1)
{
HitoSiguiente++;
}
else
{
HitoSiguiente = 0;
}
}
}
catch
{
HitoSiguiente++;
}
}
}
Ayudaría un poco si dijeses que error te da.PD: Y si sabes un poco de inglés, es muy posible que el propio error te diga que tipo de error es y donde se encuentra exactamente.