Hola muchachos:
Uso GM 8 PRO.
Tengo 9 objetos diferentes. Para que con ellos sean creados 15 objetos en 3 l?neas de 5 columnas. Una grid de 3 x 5, vaya. Por supuesto que habr? repetidos :-*.
Evento mouse_left_pressed=lanza 6 alarmas.Cada alarma crea una de las 5 columnas, o sea 3 objetos verticales, la 6ta alarma es para calcular el score.
Mi pregunta: No quiero que en ninguna columna un objeto salga m?s de una vez, pero s? en cualquier otra. Con eso, un objeto no deber?a salir m?s de 5 veces.
Es talvez usando este c?digo: pero ando cortoif place_meeting(50,100,obj_cofre){with (obj_cofre)...{}}
Traduzco lo que deseo: "Si en la posici?n x,y est? el objeto obj_cofre, que no se repita en ese mismo valor de x."
Gracias de antemano, s? que me ayudar?n, me canso. :-[
Mmm puedes probar hacer lo siguiente:
En un step o algo que te sirva (como no se bien como estas desarrollando tu juego, el evento lo deberias elegir vos) si su x es la misma que la de otro, sumarle 32 a la x para que se mueva 2 cuadros hacia la derecha (hablando de un grid de 16x16, obvio).
Ejemplo:
Queremos crear un cuadrado de 32*32 uno al lado del otro.
Para esto le ponemos este codigo en el evento step (Creo que en el evento de colision consigo mismo tambien funcionaria).
Cosa que si cuando se crea, ya hay un cuadrado en el mismo lugar, se va a mover 32 pixeles a la derecha, poniendose justo al lado.
Cita de: MaanuRP en Septiembre 02, 2011, 11:03:37 PM
Mmm puedes probar hacer lo siguiente:
En un step o algo que te sirva (como no se bien como estas desarrollando tu juego, el evento lo deberias elegir vos) si su x es la misma que la de otro, sumarle 32 a la x para que se mueva 2 cuadros hacia la derecha (hablando de un grid de 16x16, obvio).
Ejemplo:
Queremos crear un cuadrado de 32*32 uno al lado del otro.
Para esto le ponemos este codigo en el evento step (Creo que en el evento de colision consigo mismo tambien funcionaria).
Cosa que si cuando se crea, ya hay un cuadrado en el mismo lugar, se va a mover 32 pixeles a la derecha, poniendose justo al lado.
No es ese el problema, no es dibujar en posiciones diferentes, es evitar que un objeto se repita si ya sali? en un valor X, que no salga de nuevo con ese mismo valor de X. Debe existir alg?n c?digo que haga eso.
Mmm, no entiendo bien que es lo que quieres :\
Cita de: MaanuRP en Septiembre 03, 2011, 04:35:55 PM
Mmm, no entiendo bien que es lo que quieres :\
Si ves el cuadrito de 5 x 3 que pongo ac?. 5 alarmas generan las 5 columnas.
Alarma 1: aparecen los 3 bolitas verticales de la primera columna y as? las dem?s columnas.
Como ves, la primera bolita de esa columna 1 es roja, as? que las dos que le siguen debajo no deber?an ser rojas ninguna, pero si en otras columnas.
Repito:
No se repita ninguna bola en una misma columnaEs lo que quiero evitar.
Saludos.
?Podr?as pasar los c?digos que usas para crear las bolitas?.
Cita de: brunoxzx en Septiembre 05, 2011, 11:13:06 PM
?Podr?as pasar los c?digos que usas para crear las bolitas?.
alarm[0]:
[gml]//crea la instancia del primer objetoinstance_create(76,140,o_1);
//averigua si fue la subimagen 8 para cambiar los 2 siguientes a un objeto que no tiene esta subimagen.
if (o_1.image_index)=8 with (o_6) instance_change(o_cambio6,1) with (o_11) instance_change(o_cambio11,1)}
//hago lo mismo con el segundo objeto para que prevenga de salir en 2 y 3.
instance_create(76,270,o_6);
if (o_6.image_index)=8 {with (o_11) instance_change(o_cambio11,1)}
instance_create(76,390,o_11);
[/gml][/gml]Esto reza:
Si el objeto 1 tiene como subimagen la n?mero 8, entonces que los dos objetos compa?eros de columna (6 y 11) que sean cambiados por un objeto o_cambio 6 y 11 creados sin la subimagen esa, la 8. Cre? que funcionar?a pero no pasa nada, siempre me salen hasta tres iguales con la sub 8. >:(