Commit 483af2ce by Miguel Do Carmo

parche para la escalera que no estaba detectando correctamente

parent 4e714a8f
...@@ -51,7 +51,8 @@ fun encuentraRepetidos(cartasMesa: String) : Boolean{ ...@@ -51,7 +51,8 @@ fun encuentraRepetidos(cartasMesa: String) : Boolean{
var mantieneCorrecto = false var mantieneCorrecto = false
for (caracteres in 0..4 step 2){ for (caracteres in 0..4 step 2){
for (caracteresRepite in caracteres+2..8 step 2){ for (caracteresRepite in caracteres+2..8 step 2){
if ((cartasMesa[caracteres] == cartasMesa[caracteresRepite]) && (cartasMesa[caracteres+1] == cartasMesa[caracteresRepite+1])){ if ((cartasMesa[caracteres] == cartasMesa[caracteresRepite]) &&
(cartasMesa[caracteres+1] == cartasMesa[caracteresRepite+1])){
mantieneCorrecto = true mantieneCorrecto = true
} }
} }
...@@ -90,10 +91,11 @@ fun analizaJugadaOrdenada(jugadaOrdenada : List<CartaJugada>): String{ ...@@ -90,10 +91,11 @@ fun analizaJugadaOrdenada(jugadaOrdenada : List<CartaJugada>): String{
'K' -> valoresJugados[12]++ 'K' -> valoresJugados[12]++
} }
} }
var noEsColor =true
for (palo in palosJugados){ for (palo in palosJugados){
if (palo == 5){ if (palo == 5){
result = "COLOR" result = "COLOR"
noEsColor = false
for (position in valoresJugados.indices){ for (position in valoresJugados.indices){
result = if (position < 9){ result = if (position < 9){
if (1 == valoresJugados[position] && 1 == valoresJugados[position+1] && 1 == valoresJugados[position+2] && 1 == valoresJugados[position+3] && 1 == valoresJugados[position+4]) "ESCALERA COLOR" else continue if (1 == valoresJugados[position] && 1 == valoresJugados[position+1] && 1 == valoresJugados[position+2] && 1 == valoresJugados[position+3] && 1 == valoresJugados[position+4]) "ESCALERA COLOR" else continue
...@@ -103,31 +105,39 @@ fun analizaJugadaOrdenada(jugadaOrdenada : List<CartaJugada>): String{ ...@@ -103,31 +105,39 @@ fun analizaJugadaOrdenada(jugadaOrdenada : List<CartaJugada>): String{
} }
} }
} // Jugadas posibles para 5 palos iguales } // Jugadas posibles para 5 palos iguales
if (noEsColor) {
var tieneTrio = false var tieneTrio = false
var cantDobles = 0 var cantDobles = 0
for (position in valoresJugados.indices) { for (position in valoresJugados.indices) {
if (valoresJugados[position] == 4){ if (valoresJugados[position] == 4) {
result = "POKER" result = "POKER"
break break
} else { } else if (valoresJugados[position] == 1 && position <= 9) {
if (valoresJugados[position] == 3) tieneTrio = true if (position < 9) {
if (valoresJugados[position] == 2) cantDobles++ if (1 == valoresJugados[position] && 1 == valoresJugados[position + 1] && 1 == valoresJugados[position + 2] && 1 == valoresJugados[position + 3] && 1 == valoresJugados[position + 4]) {
result = if ((cantDobles == 1) && tieneTrio) "FULL" result = "ESCALERA"
else if ((cantDobles == 0) && tieneTrio) "TRIO" break
else if (cantDobles == 1) "PAREJA" } else {
else if (cantDobles == 2) "PAREJA DOBLE" continue
else "CARTA ALTA" }
if (valoresJugados[position] == 1 && position <= 9) {
result = if (position < 9) {
if (1 == valoresJugados[position] && 1 == valoresJugados[position + 1] && 1 == valoresJugados[position + 2] && 1 == valoresJugados[position + 3] && 1 == valoresJugados[position + 4]) "ESCALERA" else continue
} else if (position == 9) { } else if (position == 9) {
if (1 == valoresJugados[position] && 1 == valoresJugados[position + 1] && 1 == valoresJugados[position + 2] && 1 == valoresJugados[position + 3] && 1 == valoresJugados[0]) "ESCALERA FIGURAS" else break if (1 == valoresJugados[position] && 1 == valoresJugados[position + 1] && 1 == valoresJugados[position + 2] && 1 == valoresJugados[position + 3] && 1 == valoresJugados[0]) {
result = "ESCALERA FIGURAS"
break
} else break
} else break } else break
} // Controla para ESCALERA } // Controla para ESCALERA
else {
if (valoresJugados[position] == 3) tieneTrio = true
if (valoresJugados[position] == 2) cantDobles++
result = if ((cantDobles == 1) && tieneTrio) "FULL"
else if ((cantDobles == 0) && tieneTrio) "TRIO"
else if (cantDobles == 1) "PAREJA"
else if (cantDobles == 2) "PAREJA DOBLE"
else "CARTA ALTA"
}
} }
} }
return result return result
} }
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment