domingo, 7 de diciembre de 2014

Carun - Game

Hola gente a continuación les traigo el código de un juego, junto con su diagrama de clases y una presentación del juego que yo lo nombre Carun - Game y es para 2 jugadores, es parecido a 100 mexicanos dijeron pero con algunas reglas diferentes, este juego esta creado en Java.
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.





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