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 c7e364b5e5c488a148f3c8cef6132f77dafc82d8..08c59f3f7804b9c7c2d96d23748347342f19e9e8 100644
--- a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/ExploradoresDePintia.kt
+++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/ExploradoresDePintia.kt
@@ -19,9 +19,11 @@ import com.example.ellegadodepintia.exploradoresDePintia.model.GameState
 import com.example.ellegadodepintia.exploradoresDePintia.model.GeneradorDeEventos
 import com.example.ellegadodepintia.exploradoresDePintia.model.LayoutUtils
 import com.example.ellegadodepintia.exploradoresDePintia.model.GestorDeEventos
+import com.example.ellegadodepintia.soundManager.SoundManager
 import java.lang.ref.WeakReference
 
 class ExploradoresDePintia : AppCompatActivity() {
+    private lateinit var soundManager: SoundManager
     private var dificultad = 0
     private lateinit var startForResult: ActivityResultLauncher<Intent>
 
@@ -30,6 +32,8 @@ class ExploradoresDePintia : AppCompatActivity() {
         super.onCreate(savedInstanceState)
         setContentView(R.layout.activity_exploradores_de_pintia)
 
+        soundManager = SoundManager(this)
+        soundManager.playSoundLoop(R.raw.sound_exploradores_idle,100)
         startForResult =
             registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result ->
                 if (result.resultCode == Activity.RESULT_OK) {
@@ -102,5 +106,10 @@ class ExploradoresDePintia : AppCompatActivity() {
 
     }
 
+    override fun onDestroy() {
+        super.onDestroy()
+        soundManager.stopSound()
+    }
+
 
 }
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 9ea2addde61575a1e7bb1f1a2e3877466b05bc19..b5672f5b2a378717cf68b76b998e571b1298926e 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
@@ -32,9 +32,10 @@ object GeneradorDeEventos {
         val eventosGenerados = ArrayList<Evento>()
         historialTipos = mutableListOf()
 
+
         while (eventosGenerados.size < CANTIDAD) {
             val tipoSeleccionado = seleccionarTipoEvento()
-
+            println(historialTipos)
             if (historialTipos.isNotEmpty() && tipoSeleccionado == historialTipos.last()) {
                 continue
             }
@@ -120,7 +121,7 @@ object GeneradorDeEventos {
 
     private fun filtrarEventosPorDificultad(eventos: ArrayList<Evento>, dificultad: Int): Evento {
         val eventosFiltrados = eventos.filter { it.dificultad == dificultad }
-        return eventosFiltrados[eventosFiltrados.indices.random()]
+        return eventosFiltrados[eventosFiltrados.indices.first]
     }
 
 
diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/GestorCombate.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/GestorCombate.kt
index 69984783516e636f0122d01877f9fde0ccbdc496..f8f1ae086d47b6b7355bb945c3f28ab3d0d6f5ec 100644
--- a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/GestorCombate.kt
+++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/GestorCombate.kt
@@ -101,9 +101,15 @@ object GestorCombate {
         } else {
             evento.actualizarFinalizado(true)
             turnoJugador = true
-            "¡Enhorabuena has acabado con el monstruo!".also {
-                context!!.findViewById<TextView>(R.id.textoResultado).text = it
+            if(evento.resistenciaActual <= 0) {
+                GameState.jugador.conseguirObjeto(evento.recompensa)
+                Handler(Looper.getMainLooper()).postDelayed({
+                    "¡Enhorabuena has acabado con el monstruo!\n Te das cuenta que defendía un/una ${evento.recompensa.nombre}".also {
+                        context!!.findViewById<TextView>(R.id.textoResultado).text = it
+                    }
+                }, 200)
             }
+
         }
     }
 
@@ -156,12 +162,13 @@ object GestorCombate {
         }
     }
 
-    private fun seleccionarAccionEnemigo(): Efecto{
-        val tieneRecuperacion = evento.acciones.any {it is EfectoRegeneracionEnemigo }
-        val porcentajeVida = GameState.eventoActual.resistenciaActual/GameState.eventoActual.resistenciaMax.toDouble()
-        return if(tieneRecuperacion && porcentajeVida <= 0.3){
+    private fun seleccionarAccionEnemigo(): Efecto {
+        val tieneRecuperacion = evento.acciones.any { it is EfectoRegeneracionEnemigo }
+        val porcentajeVida =
+            GameState.eventoActual.resistenciaActual / GameState.eventoActual.resistenciaMax.toDouble()
+        return if (tieneRecuperacion && porcentajeVida <= 0.3) {
             evento.acciones.random()
-        }else{
+        } else {
             evento.acciones.filterNot { it is EfectoRegeneracionEnemigo }.random()
         }
     }
diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/efecto/EfectoAtaqueProtagonista.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/efecto/EfectoAtaqueProtagonista.kt
index 98ef0631da7edf17005c7b726fd3a2ade4e8da29..50da27b81c9bd3825a8b500adc0e78491fdedb41 100644
--- a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/efecto/EfectoAtaqueProtagonista.kt
+++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/efecto/EfectoAtaqueProtagonista.kt
@@ -15,7 +15,7 @@ class EfectoAtaqueProtagonista(probabilidadExito: Int) : Efecto(probabilidadExit
             GameState.eventoActual.actualizarResistencia(-ataqueReal)
             mensaje = "¡Ataque realizado con éxito has hecho $ataqueReal de daño"
         } else {
-            mensaje = "El enemigo ha aguantado el golpe, recibe 0 de daño"
+            mensaje = "Has fallado el golpe, recibe 0 de daño"
         }
         return mensaje
     }
diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/CombateFactory.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/CombateFactory.kt
index 91a89b69ac9170228a844bb050279b7347288843..9d2ccef3749a14d325e73395a27d820fc4d54fee 100644
--- a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/CombateFactory.kt
+++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/CombateFactory.kt
@@ -12,12 +12,15 @@ import com.example.ellegadodepintia.exploradoresDePintia.model.efecto.EfectoHabi
 import com.example.ellegadodepintia.exploradoresDePintia.model.efecto.EfectoHuirProtagonista
 import com.example.ellegadodepintia.exploradoresDePintia.model.efecto.EfectoInvestigarEnemigo
 import com.example.ellegadodepintia.exploradoresDePintia.model.efecto.EfectoRegeneracionEnemigo
+import com.example.ellegadodepintia.exploradoresDePintia.model.objeto.Objeto
+import com.example.ellegadodepintia.repositorios.RepositorioObjetos
 
 data class CombateInfo(
     val imagenIdle: Int,
     val imagenAtaque: Int,
     val opciones: List<Opcion>,
-    val habilidades: List<Efecto>
+    val habilidades: List<Efecto>,
+    val recompensa: Objeto
 )
 
 class CombateFactory : EventoFactory {
@@ -51,7 +54,8 @@ class CombateFactory : EventoFactory {
             listOf(
                 EfectoAtaqueEnemigo(80),
                 EfectoRegeneracionEnemigo("El metal reconfigura sus fragmentos recuperando parte de su vida", (1..2).random())
-            )
+            ),
+            RepositorioObjetos.obtenerObjetoPorNombre("Moneda de plata Vaccea")!!
         ),
     )
 
@@ -72,7 +76,8 @@ class CombateFactory : EventoFactory {
             resistenciaMax = (5..10).random(),
             ataque = (1..2).random(),
             finalizado = false,
-            acciones = combateInfo.habilidades.toMutableList()
+            acciones = combateInfo.habilidades.toMutableList(),
+            recompensa = combateInfo.recompensa
         )
     }
 
diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/EventoCombate.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/EventoCombate.kt
index 5c42d31a6f20b47634a8f94683424fff423ffac3..5545d623ce49ed4e23366fecc626722905ad1697 100644
--- a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/EventoCombate.kt
+++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/EventoCombate.kt
@@ -2,8 +2,11 @@ package com.example.ellegadodepintia.exploradoresDePintia.model.eventoFactory
 
 import com.example.ellegadodepintia.exploradoresDePintia.model.Opcion
 import com.example.ellegadodepintia.exploradoresDePintia.model.efecto.Efecto
+import com.example.ellegadodepintia.exploradoresDePintia.model.objeto.Objeto
+import java.util.UUID
 
 class EventoCombate(
+
     override val descripcion: String,
     override val dificultad: Int,
     override val opciones: MutableList<Opcion>,
@@ -12,4 +15,18 @@ class EventoCombate(
     var ataque: Int,
     val imagenAtaque : Int,
     val acciones: MutableList<Efecto>,
-) : Evento(descripcion, dificultad, opciones, imagen, resistenciaMax, resistenciaMax, finalizado)
\ No newline at end of file
+    val recompensa : Objeto
+) : Evento(descripcion, dificultad, opciones, imagen, resistenciaMax, resistenciaMax, finalizado){
+    val id: String = UUID.randomUUID().toString()
+    override fun equals(other: Any?): Boolean {
+        if (this === other) return true
+        if (other == null || javaClass != other.javaClass) return false
+        other as EventoCombate
+
+        return id == other.id
+    }
+
+    override fun hashCode(): Int {
+        return 31 * id.hashCode()
+    }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/objeto/ObjetoDeValor.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/objeto/ObjetoDeValor.kt
index 176b7f0e11fcd36d6dc111ba2f59e87e24340580..c434380705674280cdd816e23dada73ec6e4acf8 100644
--- a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/objeto/ObjetoDeValor.kt
+++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/objeto/ObjetoDeValor.kt
@@ -2,7 +2,7 @@ package com.example.ellegadodepintia.exploradoresDePintia.model.objeto
 
 import com.example.ellegadodepintia.exploradoresDePintia.model.objeto.efectoObjeto.EfectoVender
 
-class ObjetoDeValor(
+open class ObjetoDeValor(
     nombre: String,
     descripcion: String,
     imagen: Int,
diff --git a/app/src/main/java/com/example/ellegadodepintia/repositorios/RepositorioObjetos.kt b/app/src/main/java/com/example/ellegadodepintia/repositorios/RepositorioObjetos.kt
index 29cf1d55e9375e7ec8dd1fdf2c1ee0b00b11b874..bf91a4596e31d3fa0ae64c5402b6d50f2bde8c8f 100644
--- a/app/src/main/java/com/example/ellegadodepintia/repositorios/RepositorioObjetos.kt
+++ b/app/src/main/java/com/example/ellegadodepintia/repositorios/RepositorioObjetos.kt
@@ -78,6 +78,12 @@ object RepositorioObjetos {
                 nombre = "Ticket",
                 descripcion = "Representa una invitación a un evento relacionado con la cultura vaccea, como una feria arqueológica o un festival cultural",
                 imagen = R.drawable.asi_objeto_ticket
+            ),
+            ObjetoDeValor(
+                nombre= "Moneda de plata Vaccea",
+                descripcion = "Pequeño denario con símbolos celtíberos, utilizadas para el comercio. Su circulación refleja una economía organizada en torno a la élite guerrera",
+                imagen = R.drawable.asi_objeto_moneda,
+                coste = 15
             )
         ).associateBy { it.nombre }
     }
diff --git a/app/src/main/res/drawable-nodpi/asi_objeto_moneda.JPG b/app/src/main/res/drawable-nodpi/asi_objeto_moneda.JPG
new file mode 100644
index 0000000000000000000000000000000000000000..00d4e625af26a461291d568eeebbab83c70b3f6b
Binary files /dev/null and b/app/src/main/res/drawable-nodpi/asi_objeto_moneda.JPG differ
diff --git a/app/src/main/res/drawable/asi_objeto_tesoro.jpg b/app/src/main/res/drawable/asi_objeto_tesoro.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..830886700eac2926108f9e2b89c3b824edff0df7
Binary files /dev/null and b/app/src/main/res/drawable/asi_objeto_tesoro.jpg differ
diff --git a/app/src/main/res/raw/sound_battle.mp3 b/app/src/main/res/raw/sound_battle.mp3
new file mode 100644
index 0000000000000000000000000000000000000000..588f4a2749b70c22dc422170eb5ce329364d3eaa
Binary files /dev/null and b/app/src/main/res/raw/sound_battle.mp3 differ
diff --git a/app/src/main/res/raw/sound_exploradores_idle.mp3 b/app/src/main/res/raw/sound_exploradores_idle.mp3
new file mode 100644
index 0000000000000000000000000000000000000000..ee993bc43e6b2909544974f29d827dc14a223443
Binary files /dev/null and b/app/src/main/res/raw/sound_exploradores_idle.mp3 differ