diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/GestorDeEventos.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/GestorDeEventos.kt index e84c7c29bc9d01ad05d2cbb1f74d064a7f63d4d8..37342e4f77f800296b8551645a2217e03b9e2b34 100644 --- a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/GestorDeEventos.kt +++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/GestorDeEventos.kt @@ -43,6 +43,7 @@ object GestorDeEventos{ Atributo.Vida -> ContextCompat.getDrawable(context, R.drawable.icon_vida) Atributo.Ataque -> ContextCompat.getDrawable(context, R.drawable.icon_espada) Atributo.Investigacion -> ContextCompat.getDrawable(context, R.drawable.icon_vasija) + Atributo.Energia -> ContextCompat.getDrawable(context, R.drawable.icon_energia) else -> null } diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/efecto/EfectoEscalar.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/efecto/EfectoEscalar.kt new file mode 100644 index 0000000000000000000000000000000000000000..74c9051fc9cd120793d27c4fab8c02bc58415551 --- /dev/null +++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/efecto/EfectoEscalar.kt @@ -0,0 +1,22 @@ +package com.example.ellegadodepintia.exploradoresDePintia.model.efecto + +import com.example.ellegadodepintia.exploradoresDePintia.model.Atributo +import com.example.ellegadodepintia.exploradoresDePintia.model.GameState + + +class EfectoEscalar() : Efecto(100) { + override fun ejecutar(): String { + if (GameState.jugador.atributos[Atributo.Energia]!!<2){ + return "No tienes energÃa suficiente para intentar escapar escalando. Necesitas al menos 2 puntos" + }else{ + GameState.jugador.actualizarAtributo(Atributo.Energia, -2) + if ((1..100).random() <= 40){ + GameState.eventoActual.actualizarFinalizado(true) + return "Logras escalar la montaña de piedras y escapar. El esfuerzo no ha sido en vano" + }else{ + return "Al escalar la montaña de piedras, sufres un resbalo y vuelves a caer, gastando inútilmente energÃa" + } + } + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/efecto/EfectoFuerzaBruta.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/efecto/EfectoFuerzaBruta.kt index 0316c2c2ef072966267a23ee75cfb65c0c03ac74..118fd34315ac4d8fb3762a1d5e704f4734fc7bb6 100644 --- a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/efecto/EfectoFuerzaBruta.kt +++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/efecto/EfectoFuerzaBruta.kt @@ -8,9 +8,9 @@ class EfectoFuerzaBruta() : Efecto(100) { GameState.jugador.actualizarAtributo(Atributo.Vida, -1) if ((1..100).random() <= 25){ GameState.eventoActual.actualizarFinalizado(true) - return "Con un esfuerzo descomunal, logras escapar y te abres paso, agotado pero libre." + return "Con un esfuerzo descomunal, logras mover las piedras con tus manos y escapar, haciendote daño en el acto" }else{ - return "A pesar de tu esfuerzo, no logras escapar y sigues atrapado" + return "A pesar de tu esfuerzo, no logras escapar y sigues atrapado. Has sufrido daño" } } } \ No newline at end of file diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/TrampaFactory.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/TrampaFactory.kt index 12655ef9e3017998a7ca7f04beac6da889297792..45d6bc7cc3cea724048f83641d3a6a7177c50f83 100644 --- a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/TrampaFactory.kt +++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/TrampaFactory.kt @@ -3,6 +3,7 @@ package com.example.ellegadodepintia.exploradoresDePintia.model.eventoFactory import com.example.ellegadodepintia.R import com.example.ellegadodepintia.exploradoresDePintia.model.Atributo import com.example.ellegadodepintia.exploradoresDePintia.model.Opcion +import com.example.ellegadodepintia.exploradoresDePintia.model.efecto.EfectoEscalar import com.example.ellegadodepintia.exploradoresDePintia.model.efecto.EfectoExplorar import com.example.ellegadodepintia.exploradoresDePintia.model.efecto.EfectoFuerzaBruta import com.example.ellegadodepintia.exploradoresDePintia.model.efecto.EfectoPico @@ -23,6 +24,10 @@ class TrampaFactory : EventoFactory { descripcion = "Explorar", atributoRequerida = Atributo.Investigacion, EfectoExplorar() + ), Opcion( + descripcion = "Escalar", + atributoRequerida = Atributo.Energia, + EfectoEscalar() ) ) ), @@ -34,7 +39,7 @@ class TrampaFactory : EventoFactory { } override fun generarOpciones(descripcion: String): MutableList<Opcion> { - return trampasMap[descripcion]?.second?.shuffled()?.take(3)?.toMutableList() + return trampasMap[descripcion]?.second?.shuffled()?.take(4)?.toMutableList() ?: mutableListOf() }