diff --git a/.idea/deploymentTargetSelector.xml b/.idea/deploymentTargetSelector.xml
index b268ef36cd2de3a14ddddf25aa9f5d4e95731e18..2159e853647dc794a0b2787150f89d2bdea8f8d1 100644
--- a/.idea/deploymentTargetSelector.xml
+++ b/.idea/deploymentTargetSelector.xml
@@ -2,7 +2,7 @@
 <project version="4">
   <component name="deploymentTargetSelector">
     <selectionStates>
-      <SelectionState runConfigName="app">
+      <SelectionState runConfigName="MainActivity">
         <option name="selectionMode" value="DROPDOWN" />
       </SelectionState>
     </selectionStates>
diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/ExploradoresDePintia.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/ExploradoresDePintia.kt
index d9e365369cf31d68c616e9011fff40c08548cd40..b40dc864f7cd173aa7125ef169e26de603be494a 100644
--- a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/ExploradoresDePintia.kt
+++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/ExploradoresDePintia.kt
@@ -13,6 +13,7 @@ import androidx.activity.result.ActivityResultLauncher
 import androidx.activity.result.contract.ActivityResultContracts
 import androidx.appcompat.app.AppCompatActivity
 import com.example.ellegadodepintia.R
+import com.example.ellegadodepintia.exploradoresDePintia.model.Atributo
 import com.example.ellegadodepintia.exploradoresDePintia.model.GameState
 
 import com.example.ellegadodepintia.exploradoresDePintia.model.GeneradorDeEventos
@@ -75,9 +76,16 @@ class ExploradoresDePintia : AppCompatActivity() {
     override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
         super.onActivityResult(requestCode, resultCode, data)
         if (requestCode == 100 && resultCode == RESULT_OK) {
-            val resultado = data?.getStringExtra("resultado")
-            Toast.makeText(this, resultado, Toast.LENGTH_SHORT).show()
-            // Aquí puedes realizar acciones según el resultado
+            if (data?.getStringExtra("PUNTUACION") != ""){
+                val puntuacion = data?.getStringExtra("PUNTUACION")!!.toInt()
+                GameState.jugador.actualizarAtributo(Atributo.Energia, puntuacion)
+                GameState.jugador.actualizarAtributo(Atributo.Vida, puntuacion)
+
+            }else{
+                val resultado = data.getStringExtra("resultado")
+                Toast.makeText(this, resultado, Toast.LENGTH_SHORT).show()
+            }
+
         }
     }
 
diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/GeneradorDeEventos.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/GeneradorDeEventos.kt
index eff38d902fd9b6f53c88cd3962bf21213bd642d2..58e4db798f15124c5976f47685a235db6b17e4dc 100644
--- a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/GeneradorDeEventos.kt
+++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/GeneradorDeEventos.kt
@@ -11,7 +11,7 @@ import com.example.ellegadodepintia.exploradoresDePintia.model.eventoFactory.Eve
 
 
 object GeneradorDeEventos {
-    private const val CANTIDAD = 6 // Numero de eventos generados
+    private const val CANTIDAD = 2 // Numero de eventos generados
     private var eventos = ArrayList<Evento>()
 
     private fun crearEvento(): Evento {
diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/Jugador.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/Jugador.kt
index 510704a719aebd5586501429faa35fe740822733..2b016ae3c781f30e0a5ee18bd9b07233b046fd56 100644
--- a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/Jugador.kt
+++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/Jugador.kt
@@ -94,6 +94,12 @@ class Jugador {
 
     fun actualizarAtributo(atributo: Atributo, valor: Int) {
         atributos[atributo] = atributos[atributo]!!.plus(valor)
+        if (atributo == Atributo.Vida && atributos[atributo]!! >= vidaMax){
+            atributos[atributo] = vidaMax
+        }
+        if (atributo == Atributo.Energia && atributos[atributo]!! >= energiaMax){
+            atributos[atributo] = energiaMax
+        }
         notifyObservers()
         if (atributo == Atributo.Vida && atributos[atributo]!! <= 0){
             "¡Has sido derrotado!".also { context!!.findViewById<TextView>(R.id.textoResultado).text = it }
diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/TipoEvento.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/TipoEvento.kt
index 41b62f9b94168f9144e5914b7ac1e470b5a983e3..9dd0640f4783e1fbc30530e3d1e71fcbf7eebd6d 100644
--- a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/TipoEvento.kt
+++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/TipoEvento.kt
@@ -6,6 +6,7 @@ enum class TipoEvento {
     Tienda,
     Trampa,
     Riesgo,
+    Descanso,
     /*Trampa,
     Aliado,
     Misterio,
diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/efecto/EfectoNubeVaccea.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/efecto/EfectoNubeVaccea.kt
new file mode 100644
index 0000000000000000000000000000000000000000..3984778a8834fb5afc9cd5ae219db13f0138ce73
--- /dev/null
+++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/efecto/EfectoNubeVaccea.kt
@@ -0,0 +1,24 @@
+package com.example.ellegadodepintia.exploradoresDePintia.model.efecto
+
+import android.content.Intent
+import com.example.ellegadodepintia.exploradoresDePintia.model.Atributo
+import com.example.ellegadodepintia.exploradoresDePintia.model.GameState
+import com.example.ellegadodepintia.exploradoresDePintia.model.GameState.context
+import com.example.ellegadodepintia.minijuego2.Minijuego2
+
+
+class EfectoNubeVaccea() : Efecto(100) {
+    override fun ejecutar(): String {
+        if (GameState.jugador.atributos[Atributo.Energia] == GameState.jugador.energiaMax &&
+            GameState.jugador.atributos[Atributo.Vida] == GameState.jugador.vidaMax){
+            return "Tienes la vida y la energía al máximo. ¡No necesitas descansar!"
+        }
+
+        val intent = Intent(context, Minijuego2::class.java)
+        context!!.startActivityForResult(intent, 100)
+
+        GameState.eventoActual.actualizarFinalizado(true)
+        return "Has descansado"
+
+    }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/DescansoFactory.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/DescansoFactory.kt
new file mode 100644
index 0000000000000000000000000000000000000000..20f6e438be2a7feaa632d5f94736289f3e302e54
--- /dev/null
+++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/DescansoFactory.kt
@@ -0,0 +1,51 @@
+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.EfectoIgnorar
+import com.example.ellegadodepintia.exploradoresDePintia.model.efecto.EfectoNubeVaccea
+
+class DescansoFactory : EventoFactory {
+    private val descansosMap = mapOf(
+        "Llegaste a un campamento vacceo, con un gran fuego en el centro y chozas hechas de madera y barro. Aquí puedes descansar, recuperar energía y estar listo para nuevas aventuras." to Pair(
+            R.drawable.asi_exploradores_campamento, listOf(
+                Opcion(
+                    descripcion = "Descansar",
+                    atributoRequerida = Atributo.Energia,
+                    EfectoNubeVaccea()
+
+                ), Opcion(
+                    descripcion = "Continuar",
+                    atributoRequerida = Atributo.Nula,
+                    EfectoIgnorar(100)
+                )
+            )
+        )
+    )
+
+    override fun generarDescripcion(): String {
+        return descansosMap.keys.random()
+    }
+
+    override fun generarOpciones(descripcion: String): MutableList<Opcion> {
+        return descansosMap[descripcion]?.second?.toMutableList()
+            ?: mutableListOf()
+    }
+
+    override fun generarImagen(descripcion: String): Int {
+        return descansosMap[descripcion]?.first!!
+    }
+
+    override fun generarEvento(): EventoDescanso {
+        val descripcion = generarDescripcion()
+        return EventoDescanso(
+            descripcion = descripcion,
+            dificultad = 0,
+            opciones = generarOpciones(descripcion),
+            imagen = generarImagen(descripcion),
+            resistenciaMax = (2..8).random(),
+            finalizado = false
+        )
+    }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/EventoDescanso.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/EventoDescanso.kt
new file mode 100644
index 0000000000000000000000000000000000000000..d30a839cc13c4ebba9023266ef6ccd4bbd4b473c
--- /dev/null
+++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/EventoDescanso.kt
@@ -0,0 +1,11 @@
+package com.example.ellegadodepintia.exploradoresDePintia.model.eventoFactory
+
+import com.example.ellegadodepintia.exploradoresDePintia.model.Opcion
+
+class EventoDescanso(
+    override val descripcion: String,
+    override val dificultad: Int,
+    override val opciones: MutableList<Opcion>,
+    override val imagen: Int, resistenciaMax: Int,
+    override var finalizado: Boolean,
+) : Evento(descripcion, dificultad, opciones, imagen, resistenciaMax, resistenciaMax, finalizado)
\ No newline at end of file
diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/EventoFactorySelector.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/EventoFactorySelector.kt
index 74217d6ec4833ee489055b96b4ef7b9737ce7180..2291d141578fa669876117c9fdb6616367366cef 100644
--- a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/EventoFactorySelector.kt
+++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/EventoFactorySelector.kt
@@ -13,6 +13,7 @@ object EventoFactorySelector {
             TipoEvento.Tienda -> TiendaFactory()
             TipoEvento.Trampa -> TrampaFactory()
             TipoEvento.Riesgo -> RiesgoFactory()
+            TipoEvento.Descanso -> DescansoFactory()
         }
     }
 
@@ -20,9 +21,10 @@ object EventoFactorySelector {
         val probabilidades = mapOf(
             TipoEvento.Reliquia to 0.3,
             TipoEvento.Tienda to 0.1,
-            TipoEvento.Riesgo to 0.3,
+            TipoEvento.Riesgo to 0.2,
             TipoEvento.Trampa to 0.1,
-            TipoEvento.Combate to 0.2
+            TipoEvento.Combate to 0.2,
+            TipoEvento.Descanso to 0.1
         )
 
         val acumulado = probabilidades.entries.fold(mutableListOf<Pair<Double, TipoEvento>>()) { acc, entry ->
diff --git a/app/src/main/java/com/example/ellegadodepintia/minijuego2/Minijuego2.kt b/app/src/main/java/com/example/ellegadodepintia/minijuego2/Minijuego2.kt
index c554c42ab43e8e18dd0a26cb55144ae8dfc6cc0b..d2ed23e353a2beb7e8549b890a04beb711709c17 100644
--- a/app/src/main/java/com/example/ellegadodepintia/minijuego2/Minijuego2.kt
+++ b/app/src/main/java/com/example/ellegadodepintia/minijuego2/Minijuego2.kt
@@ -1,5 +1,6 @@
 package com.example.ellegadodepintia.minijuego2
 
+import android.content.Intent
 import android.os.Bundle
 import android.os.Handler
 import android.os.Looper
@@ -248,21 +249,29 @@ class Minijuego2 : AppCompatActivity() {
     private fun detenerJuego() {
         jugando = false
         soundManager.stopSound()
-        soundManager.playSound(R.raw.sound_over,100)
+        soundManager.playSound(R.raw.sound_over, 100)
+
         protagonista.clearAnimation()
         val animacionMuerte = AnimationUtils.loadAnimation(this, R.anim.caida)
-        obstacleTimer?.let { handler.removeCallbacks(it) } // Detener el temporizador de obstáculos
         protagonista.startAnimation(animacionMuerte)
-        protagonista.visibility = View.GONE
-        botonReinicio.visibility = View.VISIBLE // Mostrar botón de reinicio
+
+        // Mostrar botón de reinicio
+        botonReinicio.visibility = View.VISIBLE
         val animacion = AnimationUtils.loadAnimation(this, R.anim.animatitu)
         botonReinicio.startAnimation(animacion)
+
+        // Configurar el comportamiento del botón de reinicio
         botonReinicio.setOnClickListener {
-            botonReinicio.clearAnimation()
-            reiniciarJuego()
+            // Devuelve la puntuación actual y finaliza la actividad
+            val resultadoIntent = Intent()
+            resultadoIntent.putExtra("PUNTUACION", puntuacion.toString())
+            setResult(RESULT_OK, resultadoIntent)
+            finish()
         }
     }
 
+
+    /*
     private fun reiniciarJuego() {
         // Reiniciar variables del juego
         puntuacion = 0
@@ -275,7 +284,7 @@ class Minijuego2 : AppCompatActivity() {
         }
         botonReinicio.visibility = View.GONE // Ocultar botón de reinicio
         iniciarJuego() // Reiniciar el juego
-    }
+    }*/
 
     private fun moverFondo() {
         // Mueve ambos fondos hacia la izquierda
diff --git a/app/src/main/res/drawable/asi_exploradores_campamento.png b/app/src/main/res/drawable/asi_exploradores_campamento.png
new file mode 100644
index 0000000000000000000000000000000000000000..fcfdf8fab44ae57cb82d102faaf535be81fd9635
Binary files /dev/null and b/app/src/main/res/drawable/asi_exploradores_campamento.png differ