Hola:
Tengo problemas con este código, no me está funcionando. Quiero que me elaboren, por favor un trozo de código que haga esto:
"si la subimagen del objeto AA es igual a la subimagen del objeto BB (LA NÚMERO 12 por ejemplo), que se dibuje obj_nube en 50,50 y global.puntos +=10"
Si no le entienden, lo que quiero es saber exactamente cuál es el mejor código para comparar esta condición.
Dos objetos con la misma cantidad de subimágenes. Quiero trabajar con la condición de qué pasa si cada uno
tiene la subimagen número 12, por ejemplo.
Gracias
if aa.image_index=bb.image_index{x=50;y=50;global.puntos+=10}
No entendí el código de Exe_mas, por eso lo modifico un poquito :D
if aa.image_index=bb.image_index
{
draw_sprite(spr_nube,-1,50,50);
global.puntos+=10
}
Es lo mismo que el tuyo, pero no está pidiendo dibujar un sprite, esta pidiendo mover ese objeto. Te lo dejo más lindo, yo soy muy desfachatado en código, lo hago para agilizar la programación (no lo hagan en sus casas).
if aa.image_index=bb.image_index
{
ob_nube.x=50;
ob_nube.y=50;
global.puntos+=10
}
Cita de: Exe_mas en Abril 11, 2012, 01:17:07 AM
Es lo mismo que el tuyo, pero no está pidiendo dibujar un sprite, esta pidiendo mover ese objeto. Te lo dejo más lindo, yo soy muy desfachatado en código, lo hago para agilizar la programación (no lo hagan en sus casas).
if aa.image_index=bb.image_index
{
ob_nube.x=50;
ob_nube.y=50;
global.puntos+=10
}
Gracias a ambos:
Me sale algo que no manejo bien. Este código es verificado con una alarma cada vez que que el objeto bb es creado. Por desgracia, me sigue sumando el score aunque no se dé la condición antes descrita.
Es decir, asume que siempre aa.image_index=bb.image_index.
¿Qué estará pasando?
En teoría el código debería funcionar a la perfección.
Verifica que no tienes algún otro objeto que esté sumando puntos. Que está correctamente escrito el código, y que la acción de sumar score esté dentro de las llaves. O que los sprites no están en movimiento.
Las alarmas verifican en UN solo step. Seguro que es lo que quieres? Yo lo dejería en Step, y si no quieres sumar 30 veces por segundo, le pones una variable que se active y listo.
Ej:
En create:
activado=false
En step:
if aa.image_index=bb.image_index
{
if activado=false
{
ob_nube.x=50;
ob_nube.y=50;
global.puntos+=10;
activado=true;
alarm[0]=30//para que en un segundo puedas volver a sumar
}
}
Y en alarm[0]:
activado=false
Cita de: Exe_mas en Abril 11, 2012, 03:14:00 PM
Las alarmas verifican en UN solo step. Seguro que es lo que quieres? Yo lo dejería en Step, y si no quieres sumar 30 veces por segundo, le pones una variable que se active y listo.
Ej:
En create:
activado=false
En step:
if aa.image_index=bb.image_index
{
if activado=false
{
ob_nube.x=50;
ob_nube.y=50;
global.puntos+=10;
activado=true;
alarm[0]=30//para que en un segundo puedas volver a sumar
}
}
Y en alarm[0]:
activado=false
Gracias mil. Exe_Mas. Me funciona con este código!!