Videojuego multijugador de Damas Chinas Espaciales con Unity 馃寣
La aplicaci贸n deber谩 poder invitar a otros usuarios registrados a una partida, ya sea por correo electr贸nico o link de invitaci贸n
La aplicaci贸n deber谩 poder registrar nuevos usuarios
La aplicaci贸n deber谩 poder ingresar a la aplicaci贸n si es que tiene una cuenta registrada
La aplicaci贸n deber谩 tener un chat dentro de la partida para la comunicaci贸n entre los jugadores
La aplicaci贸n deber谩 permitir jugar entre varios jugadores (m谩ximo 6) una partida de damas chinas
La aplicaci贸n deber谩 permitir a los jugadores en la partida mover sus piezas respectivas con base a los movimientos permitidos
La aplicaci贸n deber谩 mostrar al jugador en turno los movimientos posibles que puede hacer con una determinada pieza (si es que tiene la opci贸n activada)
El videojuego est谩 disponible para instalarse en distintos sistemas operativos desde la p谩gina de Releases en Github
Para la versi贸n de Mac se incluye el binario de la aplicaci贸n .app |
Se incluye el instalador con extensi贸n .exe para arquitectura x86_64 |
Inicialmente, instalar los m贸dulos necesarios para el Servidor desde la ra铆z
npm install
Posteriormente cargar al script de generaci贸n de la Base de Datos en MySQL
SOURCE database.sql;
Para iniciar el servidor se ejecuta el comando
node .
En la consola se puede visualizar un log de los eventos
> node .
socket.io escuchando en 5000
Servidor listo...
Las clases encontradas en la carpeta Scripts
del proyecto de Unity est谩n programadas seg煤n el est谩ndar establecido, documentando de la siguiente forma:
/// <summary>Evento en caso de que el mouse haga hover sobre el bot贸n</summary>
/// <param name="eventData">Informaci贸n del evento de mouse</param>
public void OnPointerEnter(PointerEventData eventData)
{
inBounds = true;
}
Se sigui贸 el mismo criterio para la programaci贸n en Java Script del servidor, documentando de la siguiente forma:
// Evento llamado por cliente al hacer un movimiento en su turno correspondiente
cliente.on("moverPieza", function(datos) {
var movimiento = JSON.parse(datos);
var stringmovimiento = JSON.stringify(movimiento);
console.log("Movimiento pieza "+ movimiento['Ficha'] + " a la casilla " + movimiento['Casilla'] + " en el lobby " + movimiento['Lobby']);
io.sockets.in(movimiento['Lobby']).emit("moverPiezaCliente", stringmovimiento); //codigo del lobby
});
En caso de configurar el cliente para jugar en entorno de red, es necesario especificar la direcci贸n y el puerto para conectar en el archivo config.json
ubicado en client/Assets/StreamingAssets/Config
{"items":
[
{"key":"address","value":"localhost:5000"}
]
}