simplemente utilizando:
- Sockets: Para crear un cliente y un servidor
- Thread: Que actúa como el interprete
- Interfaces: que son las encargadas de pasar la información de un usuario al otro
Primero comenzare publicando mi prototipo del juego que realice en WireFrame que me ayudo mucho para poder terminar mi juego, bueno aqui lo tienen.
La primer pantalla que aparece al correr el juego es la siguiente que te pregunta cual es tu nombre de usuario y lo ingresas.
Despues de ver ingresado tu nombre de usuario te aparecera la ventana que contiene la informacion del modo de juego y ya que comprendas el juego pulsas el boton de iniciar.
Ya que estas listo y pulsas el boton iniciar te aparece el siguiente mensaje
Cuando ambos jugadores estan listos y los dos dieron clic en iniciar comienza el juego y aparece el boton "ok" y "responde" si ganas el clic en el boton "ok" para responder.
Si tu ganas ah presionar "ok" tu tablero se mirara como la imagen de arriba y al otro jugador lo mirara así como la imagen de abajo y no podrá responder asta que el otro jugador se falle en su respuesta.
Ya que alguno de los jugadores consiga los 500 puntos les aparecerá los siguientes mensajes:
Derrota: al jugador que no cumpla con los 500 puntos
Victoria: si conseguiste los 500 puntos o si el otro jugador abandona la partida durante el proceso del juego también te aparecerá victoria ya que ganaras automáticamente.
Ya que das clic en "ok" en el mensaje de victoria o derrota, les aparecerá este mensaje a cada jugador si le das clic en que si quieres jugar otra partida, se actualizara el mensaje y ahora dira "esperando al otro jugador".
En el caso de que el jugador no acepte jugar otra partida va aparecer el siguiente mensaje:
A qui les dejo un video mostrando como se juega y pues mostrando cual es el juego del que les hablo en este post del blog!
si les gusta abajo esta el codigo del juego
A qui les dejo el diagrama de arquitectura explicando un poco como esta conformado el juego y con que clases cuenta para poder hacer la comunicación entre los usuarios a través de un interprete y maquina de estados.
Primero comenzare publicando mi prototipo del juego que realice en WireFrame que me ayudo mucho para poder terminar mi juego, bueno aqui lo tienen.
La primer pantalla que aparece al correr el juego es la siguiente que te pregunta cual es tu nombre de usuario y lo ingresas.
Despues de ver ingresado tu nombre de usuario te aparecera la ventana que contiene la informacion del modo de juego y ya que comprendas el juego pulsas el boton de iniciar.
Ya que estas listo y pulsas el boton iniciar te aparece el siguiente mensaje
Cuando ambos jugadores estan listos y los dos dieron clic en iniciar comienza el juego y aparece el boton "ok" y "responde" si ganas el clic en el boton "ok" para responder.
Si tu ganas ah presionar "ok" tu tablero se mirara como la imagen de arriba y al otro jugador lo mirara así como la imagen de abajo y no podrá responder asta que el otro jugador se falle en su respuesta.
Ya que alguno de los jugadores consiga los 500 puntos les aparecerá los siguientes mensajes:
Derrota: al jugador que no cumpla con los 500 puntos
Ya que das clic en "ok" en el mensaje de victoria o derrota, les aparecerá este mensaje a cada jugador si le das clic en que si quieres jugar otra partida, se actualizara el mensaje y ahora dira "esperando al otro jugador".
En el caso de que el jugador no acepte jugar otra partida va aparecer el siguiente mensaje:
A qui les dejo un video mostrando como se juega y pues mostrando cual es el juego del que les hablo en este post del blog!
si les gusta abajo esta el codigo del juego
A qui les dejo el diagrama de arquitectura explicando un poco como esta conformado el juego y con que clases cuenta para poder hacer la comunicación entre los usuarios a través de un interprete y maquina de estados.
Clase
|
Capa
|
Referencia
|
Usuario
|
Chat
|
Envía el nombre de
usuario al otro jugador para diferenciarse en el chat.
|
Interfas
|
Engine
|
En esta clase
depende de lo que le mande el intérprete cambiara el estado del juego o el
del chat
|
Pregun
|
Juego
|
Es una interfaz que
se encarga de cambiar la pregunta que están resolviendo los jugadores
|
Responde
|
Juego
|
Es una interfaz que
diferencia que jugador es el que puede responder la pregunta y si este se
equivoca pasara el turno al otro jugador
|
Cliente
|
Cliente
|
Cliente
es la salida de la arquitectura ya que esta se encarga de mandar los
mensajes
|
Server
|
Servidor
|
Representa
el escuchador de mensajes en nuestra arquitectura, esta es la entrada.
|
Interprete
|
Interprete
|
Interprete es el
intérprete que recibe el mensaje del cliente y él se encarga de diferenciar
si es un mensaje para el chat o para cambiar el estado del juego
|
Carun
|
Engine
|
Es la primer
pantalla que aparece donde registra tu usuario que se usara en la partida
|
Client
|
Juego
|
Es parte de la
ejecución del juego, donde se realizan todas las actividades. Es el que se
comunica con el intérprete para cambiar el estado del chat o del juego
|
PreInicio
|
Engine
|
Te muestra el modo
de juego y si estás listo para comenzar, inicias el juego
|
Victoria
|
Engine
|
Cuando un jugador
cumple con los puntos que se piden para ganar aparecerá un mensaje dándole la
victoria o la derrota
|
Maquina
|
Juego
|
Maquina de estados
es la que se encarga de realizar todas las ejecuciones del juego y mantiene
comunicación con el interprete
|
Para comprender mas claro como esta estructurado el juego a continuacion les dejo el diagrama de clases para ver si les sirve un poco para entender el juego
A continuación les proporciono el código del juego.
Esta clase es la que contiene el primer objeto y es con la que se ejecuta el juego como su nombre lo indica.
--------------------- Clase Ejecutable ---------------------
Carun: es una clase que imprime el inicio del juego donde ingresas tu nombre de usuario para el juego
--------------------- Clase Carun --------------------------
PreInicio: es la clase que te mostrara como jugar y cuando estés listo pulsas "iniciar" y podrás iniciar a jugar cuando ambos jugadores estén listos
--------------------- Clase PreInicio ------------------------
La clase que esta aquí abajo es la vista donde se encuentra todo el proceso del juego y la que mantiene comunicación con el interprete y la maquina de estados, una de las clases mas importantes
----------------------- Clase Client ------------------------
La clase Victoria: es la que contiene se llama cuando algún jugador gana o pierde la partida
-------------------- Clase Victoria ------------------------
Estas son las interfaces que se utilizan para el intercambio de datos entre un usuario y el otro
--------------------- Interface Interfaz ---------------------
-------------------- Interface Pregun -----------------------
-------------------- Interface Responde ---------------------
--------------------- Interface Usuario ------------------------
Esta es la clase cliente que es la que se encarga de mandar el mensaje que emitirá el usuario
--------------------- Clase Cliente ----------------------------
A continuación este es el código del cliente que es donde los usuarios se conectan a través de el se comunican
---------------------- Clase Server --------------------------
EL interprete es el encargado de distinguir entre todos los mensajes que envía el cliente hacia donde debe dirigirte su mensaje entre todas las opciones del juego
------------------------ Clase Interprete -----------------------
La maquina de estados es donde se llevan acabo todos los procesos del juego como operaciones y entre otras cosas, se podría decir que es una de las clases mas importantes en el juego para su ejecucion
----------------------- Clase Maquina --------------------------
No hay comentarios.:
Publicar un comentario