From 4aaae853a523c5ed8b2a95bc3f332fe5267f0636 Mon Sep 17 00:00:00 2001 From: diegval <diego.valladolid@estudiantes.uva.es> Date: Sun, 24 Nov 2024 15:28:30 +0100 Subject: [PATCH] =?UTF-8?q?Feature:=20A=C3=B1adida=20nuevo=20evento=20reli?= =?UTF-8?q?quia?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ModalDetallesEnemigo.kt | 2 +- .../model/GeneradorDeEventos.kt | 4 +- .../model/GestorCombate.kt | 2 +- .../model/eventoFactory/ReliquiaFactory.kt | 54 +++++++++++++++---- .../repositorios/RepositorioObjetos.kt | 6 +++ 5 files changed, 53 insertions(+), 15 deletions(-) diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/ModalDetallesEnemigo.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/ModalDetallesEnemigo.kt index 4984118..125b422 100644 --- a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/ModalDetallesEnemigo.kt +++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/ModalDetallesEnemigo.kt @@ -47,7 +47,7 @@ class ModalDetallesEnemigo : DialogFragment() { } } - if(GameState.jugador.atributos[Atributo.Investigacion]!! >= GameState.eventoActual.resistenciaActual/3){ + if(GameState.jugador.atributos[Atributo.Investigacion]!! >= GameState.eventoActual.resistenciaActual/2){ view.findViewById<TextView>(R.id.textoVidaMaxima).text = buildString { append("Vida: ") append(GameState.eventoActual.resistenciaActual) 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 47eec6f..822b190 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 @@ -37,9 +37,9 @@ object GeneradorDeEventos { while (eventosGenerados.size < CANTIDAD) { val tipoSeleccionado = seleccionarTipoEvento() println(historialTipos) - if (historialTipos.isNotEmpty() && tipoSeleccionado == historialTipos.last()) { + /*if (historialTipos.isNotEmpty() && tipoSeleccionado == historialTipos.last()) { continue - } + }*/ val nuevoEvento = EventoFactorySelector.obtenerFactory(tipoSeleccionado).generarEvento() 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 6977a60..1a66b31 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 @@ -186,7 +186,7 @@ object GestorCombate { evento.acciones.filterNot { it is EfectoRevivirEnemigo }.random() } else { evento.acciones.filterNot { - it is EfectoRegeneracionEnemigo + it is EfectoRegeneracionEnemigo || it is EfectoRevivirEnemigo }.random() } diff --git a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/ReliquiaFactory.kt b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/ReliquiaFactory.kt index f8ff455..85cb64b 100644 --- a/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/ReliquiaFactory.kt +++ b/app/src/main/java/com/example/ellegadodepintia/exploradoresDePintia/model/eventoFactory/ReliquiaFactory.kt @@ -17,7 +17,7 @@ class ReliquiaFactory : EventoFactory { descripcion = "Investigar", atributoRequerida = Atributo.Investigacion, EfectoInvestigar( - 70, + 90, "Al observar los grabados y la técnica de cocción, descubres que el vaso es una pieza de los vacceos, una cultura prerromana que habitó el valle del Duero.", 1 ) @@ -25,7 +25,7 @@ class ReliquiaFactory : EventoFactory { descripcion = "Reparar", atributoRequerida = Atributo.Investigacion, EfectoReparar( - 65, + 80, "Tras aplicar con cuidado una mezcla de resina especial, consigues unir las piezas del vasito, restaurando su forma original. Has preservado una pieza valiosa de la historia vaccea.", "Al intentar reparar el vasito, accidentalmente lo rompes aún más. Ahora, no solo está dañado, sino que se ha perdido una pieza esencial que no puede ser reconstruida.", 1, @@ -50,16 +50,16 @@ class ReliquiaFactory : EventoFactory { descripcion = "Investigar", atributoRequerida = Atributo.Investigacion, EfectoInvestigar( - 60, + 80, "Tras examinar minuciosamente la jabonera, descubres que el sÃmbolo representado es un lobo, figura clave en la mitologÃa vaccea, simbolizando miedo y veneración.", - 1 + 2 ) ), Opcion( descripcion = "Reparar", atributoRequerida = Atributo.Investigacion, EfectoReparar( - 55, + 80, "Con un toque experto, las partes rotas encajan perfectamente. Has dado nueva vida a una jabonera vaccea, permitiéndote estudiar sus detalles con mayor precisión.", "El intento de reparación es un desastre: la jabonera se rompe aún más, y el sÃmbolo se desintegra. Ahora, solo quedan fragmentos de lo que antes fue una obra de arte.", 1, @@ -83,16 +83,16 @@ class ReliquiaFactory : EventoFactory { descripcion = "Investigar", atributoRequerida = Atributo.Investigacion, EfectoInvestigar( - 60, + 80, "Tras examinar minuciosamente la copa, encuentras patrones geométricos que podrÃan relacionarse con antiguos ritos funerarios o de sacrificio. ", - 1 + 2 ) ), Opcion( descripcion = "Reparar", atributoRequerida = Atributo.Investigacion, EfectoReparar( - 55, + 75, "Reparas la copa con éxito y descubres un patrón o sÃmbolo oculto bajo las grietas, aportando nueva información sobre su origen o uso.", "El trabajo improvisado falla, y la copa queda aún más dañada o inutilizable, reduciendo su valor cultural o práctico.", 1, @@ -110,7 +110,7 @@ class ReliquiaFactory : EventoFactory { ) ) ), - "Encuentra una tapadera de cerámica con una figura zoomorfa tallada en su superficie. Mmuestra el detalle de un animal: un lobo" to Pair( + "Encuentras una tapadera de cerámica con una figura zoomorfa tallada en su superficie. Muestra el detalle de un animal: un lobo" to Pair( R.drawable.asi_minijuego_3_tapadera_zoomorfo, listOf( Opcion( descripcion = "Investigar", @@ -118,14 +118,14 @@ class ReliquiaFactory : EventoFactory { EfectoInvestigar( 60, "Descubres que la tapadera representa a un animal sagrado en la cultura vaccea, podrÃa estar relacionado con rituales de protección o iniciación. ", - 1 + 3 ) ), Opcion( descripcion = "Reparar", atributoRequerida = Atributo.Investigacion, EfectoReparar( - 55, + 70, "Logras repararla cuidadosamente, las marcas en la cerámica se conecten con un ritual funerario o de veneración, lo que incrementa el valor histórico de la pieza.", "Intentas repararla, pero sin las herramientas adecuadas o la técnica correcta, la tapadera queda más dañada.", 1, @@ -143,6 +143,38 @@ class ReliquiaFactory : EventoFactory { ) ) ), + "Encuentras lo que parece ser un sonajero redondo" to Pair( + R.drawable.asi_minijuego_3_sonajero_redondo, listOf( + Opcion( + descripcion = "Investigar", + atributoRequerida = Atributo.Investigacion, + EfectoInvestigar( + 95, + "Descubres que es un modelo perteneciente a los muebles de la tumba 153 de la necrópolis de Las Ruedas", + 1 + ) + ), Opcion( + descripcion = "Reparar", + atributoRequerida = Atributo.Investigacion, + EfectoReparar( + 90, + "Restauras el sonajero con gran precisión. Su sonido ahora es claro, y encuentras inscripciones que parecen ser representaciones simbólicas de protección o buena fortuna.", + "Intentas repararlo, pero el material es más frágil de lo esperado, y el sonajero se rompe aún más, perdiendo su valor arqueológico.", + 1, + RepositorioObjetos.obtenerObjetoPorNombre("Sonajero Redondo")!! + ) + + ), Opcion( + descripcion = "Destruir", + atributoRequerida = Atributo.Ataque, + EfectoDestruir(80) + ), Opcion( + descripcion = "Ignorar", + atributoRequerida = Atributo.Nula, + EfectoIgnorar(100) + ) + ) + ), ) override fun generarDescripcion(): String { 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 60823ae..af7a134 100644 --- a/app/src/main/java/com/example/ellegadodepintia/repositorios/RepositorioObjetos.kt +++ b/app/src/main/java/com/example/ellegadodepintia/repositorios/RepositorioObjetos.kt @@ -96,6 +96,12 @@ object RepositorioObjetos { 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 + ), + ObjetoDeValor( + nombre= "Sonajero Redondo", + descripcion = "Pequeño artefacto de cerámica utilizado en rituales funerarios o ceremonias. Su diseño y sonido caracterÃstico eran sÃmbolos de protección y conexión espiritual en la cultura celtÃbera.", + imagen = R.drawable.asi_minijuego_3_sonajero_redondo, + coste = 15 ) ).associateBy { it.nombre } } -- GitLab