Implementado Tri

master
Araozu 2020-10-16 14:33:21 -05:00
parent af38681e2f
commit 2fc732cb96
4 changed files with 17 additions and 4 deletions

View File

@ -89,7 +89,7 @@ object GestorJuegos {
suspend fun manejarLlamarSeq(idJuego: String, idUsuario: String, cartaDescartada: Int, combinacion: Pair<Int, Int>) {
val juego = juegos[idJuego]!!
juego.manejarSeq(idUsuario, cartaDescartada, combinacion)
juego.manejarSeqTri(idUsuario, cartaDescartada, combinacion)
}
}

View File

@ -36,7 +36,7 @@ fun Routing.juegows() {
val datos = gson.fromJson(sol.datos, DatosIgnorarOportunidad::class.java)
GestorJuegos.manejarIgnorarOportunidad(datos.idJuego, datos.idUsuario)
}
"llamar_seq" -> {
"llamar_seq", "llamar_tri" -> {
val datos = gson.fromJson(sol.datos, DatosLlamarSeq::class.java)
GestorJuegos.manejarLlamarSeq(
datos.idJuego,

View File

@ -214,8 +214,16 @@ class Juego(val usuarios: ArrayList<Pair<String, Boolean>>) {
enviarDatosATodos()
}
suspend fun manejarSeq(idUsuario: String, cartaDescartada: Int, combinacion: Pair<Int, Int>) {
private fun cambiarTurnoSegunIdUsuario(idUsuario: String) {
for ((posJugador, i) in ordenJugadores.withIndex()) {
if (i == idUsuario) {
turnoActual = posJugador
break
}
}
}
suspend fun manejarSeqTri(idUsuario: String, cartaDescartada: Int, combinacion: Pair<Int, Int>) {
val manoJugadorDescarte = manos[ordenJugadores[turnoActual]]!!
val descartesJ = manoJugadorDescarte.descartes
@ -241,13 +249,16 @@ class Juego(val usuarios: ArrayList<Pair<String, Boolean>>) {
cartasRobador.remove(vCarta1)
cartasRobador.remove(vCarta2)
val seq = arrayListOf(cartaDescartada, vCarta1, vCarta2)
seq.sort()
manoRobador.cartasReveladas.add(seq)
// Eliminar las oportunidades
manoRobador.oportunidades = arrayListOf()
// Cambiar turno al robador sin dar carta
turnoActual = (turnoActual + 1) % 4
// turnoActual = (turnoActual + 1) % 4
cambiarTurnoSegunIdUsuario(idUsuario)
gestorDora!!.actualizarDoraCerrado()
enviarDatosATodos()

View File

@ -18,4 +18,6 @@ data class Mano(
)
}
}