Skip to content
Snippets Groups Projects
Commit 3ef14403 authored by victor's avatar victor
Browse files

Feature:

fun fun fun
parent c0f1a42d
Branches
No related tags found
1 merge request!65Feature:
......@@ -129,7 +129,9 @@ class TiendaActivity : AppCompatActivity() {
val texto = findViewById<TextView>(R.id.textoInformacion)
var soundManager: SoundManager
soundManager = SoundManager(this)
if (GameState.jugador.monedas < coste){
if(GameState.jugador.inventario.size >= 9){
"No hay espacio".also { texto.text = it }
}else if (GameState.jugador.monedas < coste){
"No hay dinero".also { texto.text = it }
}else{
GameState.jugador.actualizarMonedas(GameState.jugador.monedas - coste)
......@@ -139,5 +141,6 @@ class TiendaActivity : AppCompatActivity() {
"Objeto comprado y añadido al inventario".also { texto.text = it }
soundManager.playSound(R.raw.sound_dineros,100)
}
}
}
......@@ -100,7 +100,7 @@ class ModalDetallesFragment : DialogFragment() {
return
}
}
if(GameState.jugador.equipables.size == 3){
if(GameState.jugador.equipables.size == 3 && objeto is ObjetoEquipable){
val mensaje = "No te queda espacio para equipar nada más"
view?.findViewById<TextView>(R.id.textoResultadoUso)?.text = mensaje
}else{
......
......@@ -6,6 +6,9 @@ abstract class Objeto (
val nombre: String,
val descripcion: String,
val imagen : Int,
val coste: Int): Serializable {
val coste: Int): Serializable , Cloneable{
abstract fun usar()
public override fun clone(): Objeto {
return super.clone() as Objeto
}
}
......@@ -88,51 +88,51 @@ object RepositorioObjetos {
//**********************************
ObjetoDeValor(
nombre = "Vasito de barro cocido",
descripcion = "Objeto de gran valor. Se convierte en 10 monedas si consigues completar la partida.",
coste = 10,
descripcion = "Objeto de gran valor. Se convierte en 50 monedas si consigues completar la partida.",
coste = 50,
imagen = R.drawable.asi_exploradores_vasito
),
ObjetoDeValor(
nombre = "Jabonera de cerámica",
descripcion = "Objeto de gran valor. Se convierte en 15 monedas si consigues completar la partida.",
coste = 15,
descripcion = "Objeto de gran valor. Se convierte en 55 monedas si consigues completar la partida.",
coste = 55,
imagen = R.drawable.asi_exploradores_jabonera
),
ObjetoDeValor(
nombre = "Copa negra con inscripciones",
descripcion = "Objeto de gran valor. Se convierte en 15 monedas si consigues completar la partida.",
coste = 15,
descripcion = "Objeto de gran valor. Se convierte en 55 monedas si consigues completar la partida.",
coste = 55,
imagen = R.drawable.asi_minijuego_3_copa_negra_brunida
),
ObjetoDeValor(
nombre = "Tapadera de cerámica zoomorfa",
descripcion = "Objeto de gran valor. Se convierte en 30 monedas si consigues completar la partida.",
coste = 30,
descripcion = "Objeto de gran valor. Se convierte en 100 monedas si consigues completar la partida.",
coste = 100,
imagen = R.drawable.asi_minijuego_3_tapadera_zoomorfo
),
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
coste = 55
),
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
coste = 55
),
ObjetoDeValor(
nombre= "Piel del Gran Lobo",
descripcion = "Piel obtenida del lobo que representa parte de la mitología vaccea. Está valorado en 100 monedas",
descripcion = "Piel obtenida del lobo que representa parte de la mitología vaccea. Está valorado en 120 monedas",
imagen = R.drawable.asi_objeto_piel,
coste = 100
coste = 120
),
ObjetoDeValor(
nombre = "Fragmento de reliquia",
descripcion = "Los restos de una reliquia. Hay algunos comerciantes que los buscan. Tiene un valor de 5 monedas.",
descripcion = "Los restos de una reliquia. Hay algunos comerciantes que los buscan. Tiene un valor de 33 monedas.",
imagen = R.drawable.asi_fragmento_reliquia,
coste = 5
coste = 33
),
//**********************************************
// D E U T I L I D A D
......@@ -158,10 +158,11 @@ object RepositorioObjetos {
).associateBy { it.nombre }
}
fun obtenerObjetoPorNombre(nombre: String): Objeto? {
return objetos[nombre]
fun obtenerObjetoPorNombre(nombre: String): Objeto {
return objetos[nombre]!!.clone()
}
fun obtenerObjetoPorCoste(coste: Int): Objeto? {
val objetosFiltrados = objetos.values
.filterIsInstance<ObjetoDeValor>()
......@@ -177,7 +178,7 @@ object RepositorioObjetos {
.maxOrNull()
val objetosConCosteMasCercano = objetosFiltrados[costeMasCercano] ?: return null
return objetosConCosteMasCercano.random()
return objetosConCosteMasCercano.random().clone()
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment