Al momento de implementar el método correr de la clase Caballo tuvimos grandes inconvenientes, ya que tuvimos que conocer acerca del random para la aleatoriedad del movimiento de los caballos.
Al principio tratamos de implementar este método con la ayuda de un Timer.
Pero en busca de ayudas a este problema conocimos y recordamos el uso de hilos que nos ayudarían en esto, por esta razón se tomó la iniciativa de implementar este método con la ayuda de hilos.
A continuación el código implementado en el form Principal para el movimiento aleatorio de los caballos.
private void btnIniciar_Click(object sender, EventArgs e)
{
Habilitar();
while (picCaballos.Location.X <= picMeta.Location.X)
{
for ( ; ; )
{
Thread.Sleep(30);
foreach (Caballo caballo in caballosCompetidores)
{
Thread.Sleep(30);
if (caballo.Correr() == true)
{
if (picCaballo1.Location.X >= picMeta.Location.X-picCaballo1.Width)
{
haGanado = 1;
MessageBox.Show("El caballo ganador es el caballo 1", "Caballo Ganador",
MessageBoxButtons.OK,MessageBoxIcon.Information);
}
if (picCaballo2.Location.X >= picMeta.Location.X - picCaballo2.Width)
{
haGanado = 2;
MessageBox.Show("El caballo ganador es el caballo 2", "Caballo Ganador",
MessageBoxButtons.OK, MessageBoxIcon.Information);
}
if (picCaballo3.Location.X >= picMeta.Location.X - picCaballo3.Width)
{
haGanado = 3;
MessageBox.Show("El caballo ganador es el caballo 3", "Caballo Ganador",
MessageBoxButtons.OK, MessageBoxIcon.Information);
}
if (picCaballo4.Location.X >= picMeta.Location.X - picCaballo4.Width)
{
haGanado = 4;
MessageBox.Show("El caballo ganador es el caballo 4", "Caballo Ganador",
MessageBoxButtons.OK, MessageBoxIcon.Information);
}
Resta();
return ;
}
}
}
}
}
.bmp)
.bmp)
No hay comentarios:
Publicar un comentario