Hola, necesito ayuda con una problema que tengo... estoy haciendo un juego de romper bloques, el tipico brickbreacker y para no estar haciendo que despues de romper el ultimo bloque el jugador pasara a otra room y tener que hacer muchos niveles y demas, preferi optar por la opcion mas comoda que conozco que es hacer que despues de que el ultimo bloque sea destruido, se creen bloques al azar por la room y estos se ajusten a las casillas(cuadriculas) una vez que aparezcan, de esta manera se estarian creando bloques siempre que se rompa el ultimo, utilize este código:
[gml]
if(!instance_exists(obj_bloque))
{
i = 10
repeat(i)
{
var posx = random_range(32,416)
var posy = random_range(32,160)
instance_create(posx,posy,obj_bloque)
with (obj_bloque)
{
if !place_snapped(32, 8)
{
move_snap(32, 8);
}
}
}
}
[/gml]
Tengo algunas preguntas sobre el mismo tema si es que me lo permiten pero la primera pregunta es la mas importante y es el motivo por el que vengo a pedirles ayuda:
1.- ¿Como hago para que aparezcan los bloques sin estar uno encima de otro? pasa que a veces los bloques se crean en las mismas casillas y esto hace que cuando se rompa un bloque pareciera que justo aparece otro en la misma posición y eso se ve algo feo
2.-¿se puede hacer una especie de figura prefabricada para hacerlas aparecer? osea una forma con los cuadritos para que cuando se rompa el ultimo aparezca una de las tantas figuras ya hechas al azar, digamos que haces 20 figuras pues aparecera una de esas tantas al azar
3.- dejare una imagen para que me expliquen como solucionar el ultimo problema, tengo una mini IA(no se si llamarle inteligencia artificial) el caso es que hice que al iniciar el juego si la pelota choque con el jugador (unicamente si choca) se activara el point_direction hacia la direccion del bloque, el problema con esto es que la pelota persigue por orden en que se crearon los bloques y si el bloque 1 esta por encima del bloque 2 se nota como la pelota se dirige al bloque 1, quiero que persiga al bloque mas cercana en la posicion Y de esta manera no se vera tan raro
===
como dije antes, mas me importa que me ayuden con la primera pregunta ya que es el tema principal, de todas maneras si responden las demas preguntas se los agradecería mucho, no creo que hacer varias preguntas del mismo tema incumpla las reglas pero si llega a ser el caso modifico y elimino la 2 y 3
[gml]
if(!instance_exists(obj_bloque))
{
i = 10
repeat(i)
{
var posx = random_range(32,416)
var posy = random_range(32,160)
instance_create(posx,posy,obj_bloque)
with (obj_bloque)
{
if !place_snapped(32, 8)
{
move_snap(32, 8);
}
}
}
}
[/gml]
Tengo algunas preguntas sobre el mismo tema si es que me lo permiten pero la primera pregunta es la mas importante y es el motivo por el que vengo a pedirles ayuda:
1.- ¿Como hago para que aparezcan los bloques sin estar uno encima de otro? pasa que a veces los bloques se crean en las mismas casillas y esto hace que cuando se rompa un bloque pareciera que justo aparece otro en la misma posición y eso se ve algo feo
2.-¿se puede hacer una especie de figura prefabricada para hacerlas aparecer? osea una forma con los cuadritos para que cuando se rompa el ultimo aparezca una de las tantas figuras ya hechas al azar, digamos que haces 20 figuras pues aparecera una de esas tantas al azar
3.- dejare una imagen para que me expliquen como solucionar el ultimo problema, tengo una mini IA(no se si llamarle inteligencia artificial) el caso es que hice que al iniciar el juego si la pelota choque con el jugador (unicamente si choca) se activara el point_direction hacia la direccion del bloque, el problema con esto es que la pelota persigue por orden en que se crearon los bloques y si el bloque 1 esta por encima del bloque 2 se nota como la pelota se dirige al bloque 1, quiero que persiga al bloque mas cercana en la posicion Y de esta manera no se vera tan raro
===
como dije antes, mas me importa que me ayuden con la primera pregunta ya que es el tema principal, de todas maneras si responden las demas preguntas se los agradecería mucho, no creo que hacer varias preguntas del mismo tema incumpla las reglas pero si llega a ser el caso modifico y elimino la 2 y 3