Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: WeGame en Octubre 09, 2011, 10:52:00 AM

Título: (SOLUCIONADO) Juego de mesa
Publicado por: WeGame en Octubre 09, 2011, 10:52:00 AM
Estoy haciendo un juego de mesa.
El juego consiste en conquistar mundos/casillas.
Se lanzar?n los dados (haciendo clic) y aleatoriamente aparecer? un n?mero. Arrastras tu ficha hasta la casilla que te corresponda manualmente. Hay varias casillas:
LAS MARRONES te llevan a la c?rcel (es la isla gris)
LAS BLANCAS: si no hay ningun mundo conquistado todavia: no ocurre nada. si ya hay al menos un mundo conquistado: permite retar a un duelo a otra persona que tenga un mundo, de forma que si gana (a piedra papel o tijera o a pares/nones) se queda con ese territorio, y el otro lo pierde.
LAS DEM?S pueden conquistarse de esta forma:
cuando caigas en esa casilla, aparecer? una prueba aleatoria de las que pondr?. Si consigues pasar la prueba, esa casilla/mundo ser? tuya.
si est? conquistada ya, ir?s a la c?rcel (donde pierdes un turno, y luego, vas a la casilla 3, y ya despu?s juegas normalmente)
Si tienes tres casillas de un mismo color, al finalizar el juego se te sumar? un punto (Entonces, si consigues por ejemplo, las tres casillas verdes, al final no tendr?s 3 puntos, si no 4)

cuando se llegue al centro, se ir? marcha atr?s para continuar conquistando, cuando vuelvas de nuevo al principio, ir?s hacia delante... es decir, como si "rebotases" en los extremos.

el juego termina cuando est?n todas las casillas conquistadas, y gana quien tenga m?s puntos (1 casilla conquistada= 1 punto. 3 casillas conquistadas de un mismo color = +1 punto extra)

(ESTOS NO SON LOS GRAFICOS DE VERDAD, ES SOLO UN BOCETO):
(http://s2.subirimagenes.com/privadas/previo/thump_1635758campamento-web2.png) (http://www.subirimagenes.com/privadas-campamentoweb2-1635758.html)
la duda es:
- ?como hacer un dado? (no entiendo mucho de programacion. sobre todo se variables a ver si entiendo lo que me dicen  :-[)
- que al principio del juego se pidan los nombres de los dos jugadores y se muestren en donde corresponde (en la barra)

(como el manejo de fichas es manual arrastrando con el rat?n, no tengo problemas en eso ;))
gracias  :)
Título: Re: Juego de mesa
Publicado por: j.luis en Octubre 09, 2011, 01:05:12 PM
Encontre esto en la seccion de descargas.
http://www.comunidadgm.org/index.php?page=verdescargas&accion=descargaD&download_id=2146
Título: Re: Juego de mesa
Publicado por: WeGame en Octubre 09, 2011, 09:21:21 PM
Ya lo vi, pero me pone que no puede probarse el juego. ?No hay otro ejemplo? ?Me pod?is explicar, porfa?
Título: Re: Juego de mesa
Publicado por: Texic en Octubre 10, 2011, 12:54:50 AM
Empecemos por lo del dado, necesit?s un sprite de dado con las im?genes del dado ordenadas (1,2,3,4,5,6)
Luego cuando quieras tirar el dado simplemente pon?s [gml]dado.image_index=irandom_range(0,5)[/gml]
Ahora para lo de los nombres tienes que usar get_string(str,def) y asignarlo a variables, as?
[gml]nombre1=get_string("Nombre del jugador 1","Jugador 1")
nombre2=get_string("Nombre del jugador 2","Jugador 2")[/gml]
Luego en el evento draw usas la siguiente funci?n
[gml]draw_text(x,y,nombre1)[/gml]
Reemplaza x e y por las coordenadas donde quieras que aparezca el nombre del jugador uno, lo mismo hac? con el jugador 2
Suertens!
Título: Re: Juego de mesa
Publicado por: sulcan en Octubre 10, 2011, 02:36:53 AM
hola, hice un ejemplo de un dado espero te sirva, si tienes dudas no dudes en  dec?rmelo saludos...
Título: Re: Juego de mesa
Publicado por: WeGame en Octubre 10, 2011, 03:37:14 PM
Guau! Muchisimas gracias a los dos, est? perfecto. Como no aparecereis en los creditos en agradecimiento especiales  ;)
Título: Re: Juego de mesa
Publicado por: CrazyGuyGames:) en Octubre 10, 2011, 04:46:22 PM
Amigo nose si tu duda ya ha sido respuesta pero te tengo un metodo facil
simple
1._crea un sprite que es un dado, pon los numeros aleatoriamente no en orden y repitelos tambien
2._en el objeto dado pon en el evento de creacion este codigo
image_speed=0
clicked=0
3._en el evento left presedd del mouse pon
if clicked=0
{image_speed=1 clicked=1 exit;}
else
{image_speed=0 clicked=0}
listo probema solucionado
Título: Re: Juego de mesa
Publicado por: WeGame en Octubre 10, 2011, 06:33:45 PM
Cita de: CrazyGuyGames:) en Octubre 10, 2011, 04:46:22 PM
Amigo nose si tu duda ya ha sido respuesta pero te tengo un metodo facil
simple
1._crea un sprite que es un dado, pon los numeros aleatoriamente no en orden y repitelos tambien
2._en el objeto dado pon en el evento de creacion este codigo
image_speed=0
clicked=0
3._en el evento left presedd del mouse pon
if clicked=0
{image_speed=1 clicked=1 exit;}
else
{image_speed=0 clicked=0}
listo probema solucionado

Ya me hab?an respondido, pero tu c?digo es el que utilizar? porque es el m?s simple y el que mejor me ha funcionado  :)
Igualmente, gracias a los dem?s.

Bueno si no es molestia tengo otra duda... ?c?mo hago para hacer aparecer una imagen al azar? No una room, si no una imagen. Creo que ser?a mediante display.image pero no estoy seguro... ?me pod?is dar el c?digo? es decir, que salga una imagen al azar de las que haya en un sprite.

gracias por adelantado
Título: Re: Juego de mesa
Publicado por: MaanuRP en Octubre 10, 2011, 08:11:09 PM
Ejemplo:

[gml]
//Buscamos un numero random que este entre lo soportado por el numero de subimages que tenga el sprite, por ejemplo, si tenemos un sprite con 5 subimages seria:
subimagen = random(6) // Sino me equivoco, el numero que va adentro del random no esta includo, siempre salen menores.
//Asignamos el numero de la subimage que salio al azar en la funcion correcta:
image_index = subimagen
[/gml]
Título: Re: Juego de mesa
Publicado por: WeGame en Octubre 10, 2011, 08:29:53 PM
Cita de: MaanuRP en Octubre 10, 2011, 08:11:09 PM
Ejemplo:

[gml]
//Buscamos un numero random que este entre lo soportado por el numero de subimages que tenga el sprite, por ejemplo, si tenemos un sprite con 5 subimages seria:
subimagen = random(6) // Sino me equivoco, el numero que va adentro del random no esta includo, siempre salen menores.
//Asignamos el numero de la subimage que salio al azar en la funcion correcta:
image_index = subimagen
[/gml]

Gracias. ?Y si fuese para ir a otra room, pero que todo siga como antes? Es decir que no se vayan los cambios.  :-[
Título: Re: Juego de mesa
Publicado por: MaanuRP en Octubre 10, 2011, 09:26:01 PM
Haz la room persistente, cosa de que cuando vuelvas todo siga exactamente como estaba.
Título: Re: Juego de mesa
Publicado por: WeGame en Octubre 13, 2011, 04:04:37 PM
Muchas gracias  :)