Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: max11thedrummer en Enero 02, 2015, 11:25:57 PM

Título: ayuda con los power-up de Arkanoid
Publicado por: max11thedrummer en Enero 02, 2015, 11:25:57 PM
Hola game makeros, estoy haciendo el juego de Arkanoid. Mi consulta es si alguien podría ayudarme con algo que estoy atorado. Resulta que quiero que aparezcan los poderes que tiene el jugador cuando colisiona la bola en algun ladrillo. Esto sucedería de forma aleatoria, es decir en cualquier ladrillo que toque la bola tendria q aparecer el poder cayendo. Desde ya muchas gracias y saludos desde Argentina.
Título: Re:ayuda con los power-up de Arkanoid
Publicado por: omick en Enero 03, 2015, 04:04:29 AM
Hola... puede se asi   :)
en tu objeto del bloque...

en el evento create  pon:

probabilidad=10;  // 10% de probabilidad de dar "premio"...  o cambia a lo que gustes..

.. Y en el evento de colision con la bola   ..  o si quieres hasta que se destruya, en el evento destroy:

//----------------------------------------------------------------
var power_up;
power_up=irandom(100)


if power_up>0 and power_up<probabilidad+1{

   choose(
   instance_create(x,y,objPower1),
   instance_create(x,y,objPower2),
   instance_create(x,y,objPower3),
   instance_create(x,y,objPower4),
   )

}

//----------------------------------------------------------------

--  Bueno eso de objPower1 2, 3 y 4 son los diferentes poderes..  ya sea :
generar 3 bolas,  o que se quede pegada la bola a la barra,  agrandar la barra, etc
Título: Re:ayuda con los power-up de Arkanoid
Publicado por: max11thedrummer en Enero 04, 2015, 06:51:49 AM
Acabo de probar el codigo que mostraste, pero siempre me elige el ultimo objeto de la ultima linea de codigo. Para que me entiendas, de tu ejemplo el obj_Power_4 es el ultimo, ese objeto me crea siempre, los otros nunca aparecen. Probe de cambiar el valor de la variable probabilidad y tampoco  :-\
Título: Re:ayuda con los power-up de Arkanoid
Publicado por: penumbra en Enero 04, 2015, 07:09:10 AM
En lugar de esto:
[gml]
choose(
   instance_create(x,y,objPower1),
   instance_create(x,y,objPower2),
   instance_create(x,y,objPower3),
   instance_create(x,y,objPower4),
   )
[/gml]

Yo usaría:
[gml]instance_create(x,y,choose(obj_Power1, obj_Power2, obj_Power3, obj_Power4) )[/gml]

Quizás funcione de las dos formas, pero creo que más allá de eso, antes de power_up=irandom(100) SE DEBE agregar
[gml]randomize()[/gml]
para que realmente la elección sea aleatoria, de lo contrario, GM siempre va a elegir el mismo objeto
Título: Re:ayuda con los power-up de Arkanoid
Publicado por: max11thedrummer en Enero 04, 2015, 08:07:44 AM
Como andas Penumbra, jeje casualmente estaba viendo una duda similar que le sacaste a un compadre. De todas maneras pude resolver de la siguiente manera:

var power_up;
var elegir;

power_up = random(100)

if (power_up > 0 and power_up < probabilidad + 1)
{
 
    randomize(); // establecemos la semilla
    elegir = choose(1, 2, 3, 4, 5, 6, 7); // elegimos las posibilidades DE LOS POWER-UPS A APARECER...
    switch(elegir)
    {
        case 1:
              instance_create(x,y,obj_power_B);
              break;
        case 2:
              instance_create(x,y,obj_power_C);
              break;
        case 3:
              instance_create(x,y,obj_power_D);
              break;
        case 4:
              instance_create(x,y,obj_power_E);
              break;
        case 5:
              instance_create(x,y,obj_power_L);
              break;
        case 6:
              instance_create(x,y,obj_power_P);
              break;
        case 7:
              instance_create(x,y,obj_power_S);
              break;
    }
}

asi el codigo va perfecto ya que posibilidad tiene un valor de 15 (15% de probabilidad) MUCHAS GRACIAS A LOS DOS MAKEROS POR AYUDARME. LA VERDAD QUE SOY NUEVO EN LA COMUNIDAD Y ME AGRADA BASTANTE!!!

SALUDOS Y A SEGUIR PROGRAMANDO QUE ESTE HOBBIE ES HERMOSO.