Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: kaliman777 en Julio 12, 2012, 08:47:13 PM

Título: Cómo programo órdenes de acciones con GML?
Publicado por: kaliman777 en Julio 12, 2012, 08:47:13 PM
Hola:

Casi termino un juego de poker que es así para que me entiendan: Cuando se hace la apuesta, para que salgan las 5 cartas, hice 5 objetos cada uno con el mazo de 52 cartas y cada mazo descubre una carta.

Mi duda es para los pagos. ¿cómo programo esto, con pocos códigos?  "si el mazo1 tiene un AS (mazo1.image_index=0) y el mazo2 tambien y el 3 y el 4 ESTO ES POKER DE ASES. Pero, son 5 cartas y los 4 ases pueden salir en cualquier orden, por ejemplo pueden salir mazo2, mazo3, mazo4 y mazo 5 o puede ser mazo 1, mazo 3, mazo 4 y mazo5 etc. Un poker de 4 ases puede salir de diferentes ordenes, es aquí donde quiero programar que sea reconocido de la forma que salga. Talvez usando un ciclo switch, pero soy algo lento usandolos.

Ayuda por favor, con algun breve ejemplo.

Gracias
Título: Re:Cómo programo órdenes de acciones con GML?
Publicado por: Mgbu en Julio 12, 2012, 09:44:42 PM
Podes chequearlo con diferentes condiciones, no se me ocurre otra, para el poker creo que sería:
if mazo1.image_index=mazo2.image_index and mazo1.image_index=mazo3.image_index0 and mazo1.image_index=mazo4.image_index0
{
poker :-)
}
Título: Re:Cómo programo órdenes de acciones con GML?
Publicado por: kaliman777 en Julio 12, 2012, 09:54:43 PM
Cita de: Mgbu en Julio 12, 2012, 09:44:42 PM
Podes chequearlo con diferentes condiciones, no se me ocurre otra, para el poker creo que sería:
if mazo1.image_index=mazo2.image_index and mazo1.image_index=mazo3.image_index0 and mazo1.image_index=mazo4.image_index0
{
poker :-)
}

No funcionaría, porque eso implica que las cuatro ASES son idénticas y en el poker las 4 son diferentes. Es decir, cada AS es una image_index diferente. Podría ser if floor(mazo1.image_index)=floor(mazo2.image_index)..... pero todos los poker serían identificados por igual, y en el poker unos poker valen mas que otros, al menos en este mio.

Gracias. Espero alguna ayuda mas
Título: Re:Cómo programo órdenes de acciones con GML?
Publicado por: Gunslito en Julio 12, 2012, 10:47:00 PM
Juegue con las variables, sin miedo!
(O sea lo que podrias intentar hacer es poner en variables todas las cartas y distintas maneras de hacer el poker) A lo casero, si hay maneras de simplificarlo ni idea xD
Título: Re:Cómo programo órdenes de acciones con GML?
Publicado por: Mgbu en Julio 12, 2012, 11:26:07 PM
Ah si, podés guardar una variable carta para comparar luego. También como son 5 cartas en vez de 4 vas a tener que usar un for para comparar.
Se me ocurre:


for (i=0;i<5;i+=1)
{
ind=0
for (h=0;h<5;h+=1)
{
if i!=h pos[ind]=h
ind+=1
}
if
mazo[pos[0]].carta=mazo[pos[1]].carta and mazo[pos[0]].carta=mazo[pos[2]].carta
and
mazo[pos[0]].carta=mazo[pos[3]].carta
{
poker :-)
}
}
Es todo lo que puedo hacer viajando con el celular
Título: Re:Cómo programo órdenes de acciones con GML?
Publicado por: kaliman777 en Julio 13, 2012, 01:22:01 AM
Cita de: Mgbu en Julio 12, 2012, 11:26:07 PM
Ah si, podés guardar una variable carta para comparar luego. También como son 5 cartas en vez de 4 vas a tener que usar un for para comparar.
Se me ocurre:


for (i=0;i<5;i+=1)
{
ind=0
for (h=0;h<5;h+=1)
{
if i!=h pos[ind]=h
ind+=1
}
if
mazo[pos[0]].carta=mazo[pos[1]].carta and mazo[pos[0]].carta=mazo[pos[2]].carta
and
mazo[pos[0]].carta=mazo[pos[3]].carta
{
poker :-)
}
}
Es todo lo que puedo hacer viajando con el celular

Gracias, la verdad me despertaron nuevas posibilidades. Probaré a ver si me sale.

Gracias