diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 92ef36bae55d477e1868e24402b11d36fcf75f0c..a6e64bbb1bd96a794b6dc89cf937808671f286f6 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -35,6 +35,7 @@
         <activity android:name=".minijuegoReparacion.MinijuegoReparacion" android:exported="true"/>
         <activity android:name=".exploradoresDePintia.Resumen" android:exported="true"/>
         <activity android:name=".TabernaActivity" android:exported="true"/>
+        <activity android:name=".TiendaActivity" android:exported="true"/>
     </application>
 
 </manifest>
\ No newline at end of file
diff --git a/app/src/main/java/com/example/ellegadodepintia/MapActivity.kt b/app/src/main/java/com/example/ellegadodepintia/MapActivity.kt
index e78b901e8890527bfcf4e095ffd8c0b1ea2ef8d1..13553b83c27286554208f21d74dc692545cddaa8 100644
--- a/app/src/main/java/com/example/ellegadodepintia/MapActivity.kt
+++ b/app/src/main/java/com/example/ellegadodepintia/MapActivity.kt
@@ -42,5 +42,11 @@ class MapActivity : AppCompatActivity() {
             val intent = Intent(this, TabernaActivity::class.java)
             startActivity(intent)
         }
+
+        val tienda = findViewById<ImageButton>(R.id.botonTienda)
+        tienda.setOnClickListener {
+            val intent = Intent(this, TiendaActivity::class.java)
+            startActivity(intent)
+        }
     }
 }
diff --git a/app/src/main/java/com/example/ellegadodepintia/TiendaActivity.kt b/app/src/main/java/com/example/ellegadodepintia/TiendaActivity.kt
new file mode 100644
index 0000000000000000000000000000000000000000..6db47be7ebcc82c8de5735fdc5dbc04d78e13b9c
--- /dev/null
+++ b/app/src/main/java/com/example/ellegadodepintia/TiendaActivity.kt
@@ -0,0 +1,29 @@
+package com.example.ellegadodepintia
+
+import android.os.Bundle
+import android.widget.ImageView
+import androidx.appcompat.app.AppCompatActivity
+import com.example.ellegadodepintia.repositorios.RepositorioObjetos
+
+class TiendaActivity : AppCompatActivity() {
+    override fun onCreate(savedInstanceState: Bundle?) {
+        super.onCreate(savedInstanceState)
+        setContentView(R.layout.activity_tienda)
+
+        val objetos = RepositorioObjetos.obtenerObjetosAleatoriosTienda(6)
+
+        //TODO hay que hacer que dependiendo del nivel de la ciudad haga más cosas
+        val slots = listOf(
+            findViewById<ImageView>(R.id.slot01),
+            findViewById(R.id.slot02),
+            findViewById(R.id.slot03),
+            findViewById(R.id.slot04),
+            findViewById(R.id.slot05),
+            findViewById(R.id.slot06)
+        )
+
+        slots.forEachIndexed { index, slot ->
+            slot.setImageResource(objetos[index].imagen)
+        }
+    }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/ellegadodepintia/repositorios/RepositorioObjetos.kt b/app/src/main/java/com/example/ellegadodepintia/repositorios/RepositorioObjetos.kt
new file mode 100644
index 0000000000000000000000000000000000000000..59f514ec9b7bed8b6b7b859532dc452ae45b33b3
--- /dev/null
+++ b/app/src/main/java/com/example/ellegadodepintia/repositorios/RepositorioObjetos.kt
@@ -0,0 +1,88 @@
+package com.example.ellegadodepintia.repositorios
+
+import com.example.ellegadodepintia.R
+import com.example.ellegadodepintia.exploradoresDePintia.model.Atributo
+import com.example.ellegadodepintia.exploradoresDePintia.model.objeto.*
+import com.example.ellegadodepintia.exploradoresDePintia.model.objeto.efectoObjeto.EfectoEquipableAumento
+import com.example.ellegadodepintia.exploradoresDePintia.model.objeto.efectoObjeto.EfectoObjetoCura
+
+object RepositorioObjetos {
+    private val objetos: Map<String, Objeto> by lazy {
+        listOf(
+            ObjetoDeValor(
+                nombre = "Vasito de barro cocido",
+                descripcion = "Objeto de gran valor. Se convierte en 20 monedas si consigues completar la partida.",
+                coste = 20,
+                imagen = R.drawable.asi_exploradores_vasito
+            ),
+            ObjetoDeValor(
+                nombre = "Jabonera de cerámica",
+                descripcion = "Objeto de gran valor. Se convierte en 20 monedas si consigues completar la partida.",
+                coste = 20,
+                imagen = R.drawable.asi_exploradores_jabonera
+            ),
+            ObjetoDeValor(
+                nombre = "Copa negra con inscripciones",
+                descripcion = "Objeto de gran valor. Se convierte en 20 monedas si consigues completar la partida.",
+                coste = 20,
+                imagen = R.drawable.asi_minijuego_3_copa_negra_brunida
+            ),
+            ObjetoDeValor(
+                nombre = "Tapadera de cerámica zoomorfa",
+                descripcion = "Objeto de gran valor. Se convierte en 20 monedas si consigues completar la partida.",
+                coste = 20,
+                imagen = R.drawable.asi_minijuego_3_tapadera_zoomorfo
+            ),
+            ObjetoEquipable(
+                nombre = "Espada de Hierro",
+                descripcion = "Una espada de hierro sencilla y confiable perfecta para un aventurero novato. Otorga 1 de daño extra",
+                efecto = EfectoEquipableAumento(1, Atributo.Ataque),
+                imagen = R.drawable.asi_objeto_espadadefault
+            ),
+            ObjetoConsumible(
+                nombre = "Elixir Menor de la Necrópolis",
+                descripcion = "Un frasco pequeño con un líquido granate y brillante, que destella con un resplandor profundo, capaz de restaurar 3 puntos de vida al instante.",
+                efecto = EfectoObjetoCura(3),
+                imagen = R.drawable.asi_objeto_pocima_vida_5
+            ),
+            ObjetoConsumible(
+                nombre = "Elixir Mediano de la Necrópolis",
+                descripcion = "Un frasco robusto con un líquido amarillo brillante, que resplandece como el sol al mediodía, capaz de restaurar 5 puntos de vida al instante.",
+                efecto = EfectoObjetoCura(5),
+                imagen = R.drawable.asi_objeto_pocima_vida_10
+            ),
+            ObjetoConsumible(
+                nombre = "Elixir Supremo de la Necrópolis",
+                descripcion = "Frasco supremo forjado con los secretos de los vacceos, restaura toda tu vitalidad al instante, ¡la poción de cura más poderosa de Pintia!",
+                efecto = EfectoObjetoCura(999),
+                imagen = R.drawable.asi_objeto_pocima_vida_all
+            ),
+            ObjetoEquipable(
+                nombre = "Escudo Caetrae",
+                descripcion = "La caetrae es un escudo redondo vacceo, forjado para la defensa en combate, que aumenta tu vida máxima en 10 puntos.",
+                efecto = EfectoEquipableAumento(10, Atributo.Vida),
+                imagen = R.drawable.asi_objeto_escudo
+            ),
+            ObjetoEquipable(
+                nombre = "Casco Ceremonial",
+                descripcion = "Casco ceremonial de oro de los vacceos decorado con intrincados patrones que simboliza el estatus social. Aumenta tu vida máxima en 8 puntos",
+                efecto = EfectoEquipableAumento(8, Atributo.Vida),
+                imagen = R.drawable.asi_objeto_casco
+            ),
+            ObjetoUtilidad(
+                nombre = "Pico Vacceo",
+                descripcion = "Un pico viejo y oscuro con dibujos extraños que parecen brillar cerca de las piedras, como si estuviera esperando que lo uses para algo importante.",
+                imagen = R.drawable.asi_objeto_pico
+            )
+        ).associateBy { it.nombre }
+    }
+
+    fun obtenerObjetoPorNombre(nombre: String): Objeto? {
+        return objetos[nombre]
+    }
+
+    fun obtenerObjetosAleatoriosTienda(cantidad: Int): List<ObjetoConsumible> {
+        val consumibles = objetos.values.filterIsInstance<ObjetoConsumible>()
+        return List(cantidad) { consumibles.random() }
+    }
+}
\ No newline at end of file
diff --git a/app/src/main/res/drawable/background_tienda.png b/app/src/main/res/drawable/background_tienda.png
new file mode 100644
index 0000000000000000000000000000000000000000..94fc1be3349351b10df8f5518bafa66a53909417
Binary files /dev/null and b/app/src/main/res/drawable/background_tienda.png differ
diff --git a/app/src/main/res/layout/activity_tienda.xml b/app/src/main/res/layout/activity_tienda.xml
new file mode 100644
index 0000000000000000000000000000000000000000..72bf1c15f040f8dc3321a42ff214aa6fe2563ef4
--- /dev/null
+++ b/app/src/main/res/layout/activity_tienda.xml
@@ -0,0 +1,429 @@
+<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:background="@color/pintiaBackground"
+    tools:context=".exploradoresDePintia.ExploradoresDePintia"
+    tools:ignore="HardcodedText, UseCompoundDrawables">
+
+    <ImageView
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:contentDescription="Taberna"
+        android:src="@drawable/background_tienda"
+        android:scaleType="centerCrop" />
+
+    <ImageView
+        android:id="@+id/tituloJuego"
+        android:layout_width="wrap_content"
+        android:layout_height="120dp"
+        android:layout_centerHorizontal="true"
+        android:contentDescription="Titulo del minijuego"
+        android:src="@drawable/texto_tienda"
+        android:textColor="#401201"
+        app:layout_constraintEnd_toEndOf="parent"
+        app:layout_constraintStart_toStartOf="parent"
+        app:layout_constraintTop_toTopOf="parent" />
+
+    <GridLayout
+        android:id="@+id/inventarioGrid"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="20dp"
+        android:layout_marginStart="5dp"
+        android:layout_marginEnd="5dp"
+        android:background="@drawable/style_texto_border"
+        android:columnCount="2"
+        android:padding="12dp"
+        android:rowCount="3"
+        app:layout_constraintEnd_toEndOf="parent"
+        app:layout_constraintStart_toStartOf="parent"
+        app:layout_constraintTop_toBottomOf="@id/tituloJuego">
+
+        <LinearLayout
+            android:orientation="vertical"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:gravity="center_horizontal">
+
+            <androidx.cardview.widget.CardView
+                android:layout_width="100dp"
+                android:layout_height="100dp"
+                android:elevation="0dp"
+                app:cardCornerRadius="10dp"
+                android:layout_marginEnd="15dp"
+                android:layout_marginStart="15dp"
+                android:layout_marginTop="15dp"
+                android:layout_marginBottom="5dp"
+                android:backgroundTint="#F2CDA0">
+
+                <ImageView
+                    android:id="@+id/slot01"
+                    android:layout_width="100dp"
+                    android:layout_height="100dp"
+                    android:contentDescription="Imagen que sobresale de Slot 1"
+                    android:scaleType="centerCrop"
+                    android:src="@drawable/asi_exploradores_jabonera" />
+
+            </androidx.cardview.widget.CardView>
+
+            <LinearLayout
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="center_horizontal|bottom"
+                android:orientation="horizontal"
+                android:gravity="center"
+                android:layout_marginBottom="8dp">
+
+                <TextView
+                    android:id="@+id/precio01"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:fontFamily="@font/pixeled"
+                    android:text="100"
+                    android:textColor="#401201"
+                    android:textSize="20sp" />
+
+                <ImageView
+                    android:layout_width="20dp"
+                    android:layout_height="20dp"
+                    android:layout_marginStart="4dp"
+                    android:contentDescription="Icono de moneda"
+                    android:src="@drawable/logo_pintia"
+                    android:scaleType="centerCrop" />
+            </LinearLayout>
+
+        </LinearLayout>
+
+        <LinearLayout
+            android:orientation="vertical"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:gravity="center_horizontal">
+
+            <androidx.cardview.widget.CardView
+                android:layout_width="100dp"
+                android:layout_height="100dp"
+                android:elevation="0dp"
+                app:cardCornerRadius="10dp"
+                android:layout_marginEnd="15dp"
+                android:layout_marginStart="15dp"
+                android:layout_marginTop="15dp"
+                android:layout_marginBottom="5dp"
+                android:backgroundTint="#F2CDA0">
+
+
+                <ImageView
+                    android:id="@+id/slot02"
+                    android:layout_width="100dp"
+                    android:layout_height="100dp"
+                    android:contentDescription="Imagen que sobresale de Slot 1"
+                    android:scaleType="centerCrop"
+                    android:src="@drawable/asi_exploradores_jabonera" />
+
+            </androidx.cardview.widget.CardView>
+
+            <LinearLayout
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="center_horizontal|bottom"
+                android:orientation="horizontal"
+                android:gravity="center"
+                android:layout_marginBottom="8dp">
+
+                <TextView
+                    android:id="@+id/precio02"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:fontFamily="@font/pixeled"
+                    android:text="100"
+                    android:textColor="#401201"
+                    android:textSize="20sp" />
+
+                <ImageView
+                    android:layout_width="20dp"
+                    android:layout_height="20dp"
+                    android:layout_marginStart="4dp"
+                    android:contentDescription="Icono de moneda"
+                    android:src="@drawable/logo_pintia"
+                    android:scaleType="centerCrop" />
+            </LinearLayout>
+
+
+        </LinearLayout>
+
+
+        <LinearLayout
+            android:orientation="vertical"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:gravity="center_horizontal">
+
+            <androidx.cardview.widget.CardView
+                android:layout_width="100dp"
+                android:layout_height="100dp"
+                android:elevation="0dp"
+                app:cardCornerRadius="10dp"
+                android:layout_marginEnd="15dp"
+                android:layout_marginStart="15dp"
+                android:layout_marginTop="15dp"
+                android:layout_marginBottom="5dp"
+                android:backgroundTint="#F2CDA0">
+
+
+                <ImageView
+                    android:id="@+id/slot03"
+                    android:layout_width="100dp"
+                    android:layout_height="100dp"
+                    android:contentDescription="Imagen que sobresale de Slot 1"
+                    android:scaleType="centerCrop"
+                    android:src="@drawable/asi_exploradores_jabonera" />
+
+            </androidx.cardview.widget.CardView>
+
+            <LinearLayout
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="center_horizontal|bottom"
+                android:orientation="horizontal"
+                android:gravity="center"
+                android:layout_marginBottom="8dp">
+
+                <TextView
+                    android:id="@+id/precio03"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:fontFamily="@font/pixeled"
+                    android:text="100"
+                    android:textColor="#401201"
+                    android:textSize="20sp" />
+
+                <ImageView
+                    android:layout_width="20dp"
+                    android:layout_height="20dp"
+                    android:layout_marginStart="4dp"
+                    android:contentDescription="Icono de moneda"
+                    android:src="@drawable/logo_pintia"
+                    android:scaleType="centerCrop" />
+            </LinearLayout>
+
+        </LinearLayout>
+
+        <LinearLayout
+            android:orientation="vertical"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:gravity="center_horizontal">
+
+            <androidx.cardview.widget.CardView
+                android:layout_width="100dp"
+                android:layout_height="100dp"
+                android:elevation="0dp"
+                app:cardCornerRadius="10dp"
+                android:layout_marginEnd="15dp"
+                android:layout_marginStart="15dp"
+                android:layout_marginTop="15dp"
+                android:layout_marginBottom="5dp"
+                android:backgroundTint="#F2CDA0">
+
+
+                <ImageView
+                    android:id="@+id/slot04"
+                    android:layout_width="100dp"
+                    android:layout_height="100dp"
+                    android:contentDescription="Imagen que sobresale de Slot 1"
+                    android:scaleType="centerCrop"
+                    android:src="@drawable/asi_exploradores_jabonera" />
+
+            </androidx.cardview.widget.CardView>
+
+            <LinearLayout
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="center_horizontal|bottom"
+                android:orientation="horizontal"
+                android:gravity="center"
+                android:layout_marginBottom="8dp">
+
+                <TextView
+                    android:id="@+id/precio04"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:fontFamily="@font/pixeled"
+                    android:text="100"
+                    android:textColor="#401201"
+                    android:textSize="20sp" />
+
+                <ImageView
+                    android:layout_width="20dp"
+                    android:layout_height="20dp"
+                    android:layout_marginStart="4dp"
+                    android:contentDescription="Icono de moneda"
+                    android:src="@drawable/logo_pintia"
+                    android:scaleType="centerCrop" />
+            </LinearLayout>
+
+        </LinearLayout>
+
+        <LinearLayout
+            android:orientation="vertical"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:gravity="center_horizontal">
+
+            <androidx.cardview.widget.CardView
+                android:layout_width="100dp"
+                android:layout_height="100dp"
+                android:elevation="0dp"
+                app:cardCornerRadius="10dp"
+                android:layout_marginEnd="15dp"
+                android:layout_marginStart="15dp"
+                android:layout_marginTop="15dp"
+                android:layout_marginBottom="5dp"
+                android:backgroundTint="#F2CDA0">
+
+
+                <ImageView
+                    android:id="@+id/slot05"
+                    android:layout_width="100dp"
+                    android:layout_height="100dp"
+                    android:contentDescription="Imagen que sobresale de Slot 1"
+                    android:scaleType="centerCrop"
+                    android:src="@drawable/asi_exploradores_jabonera" />
+
+            </androidx.cardview.widget.CardView>
+
+            <LinearLayout
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="center_horizontal|bottom"
+                android:orientation="horizontal"
+                android:gravity="center"
+                android:layout_marginBottom="8dp">
+
+                <TextView
+                    android:id="@+id/precio05"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:fontFamily="@font/pixeled"
+                    android:text="100"
+                    android:textColor="#401201"
+                    android:textSize="20sp" />
+
+                <ImageView
+                    android:layout_width="20dp"
+                    android:layout_height="20dp"
+                    android:layout_marginStart="4dp"
+                    android:contentDescription="Icono de moneda"
+                    android:src="@drawable/logo_pintia"
+                    android:scaleType="centerCrop" />
+            </LinearLayout>
+
+        </LinearLayout>
+
+
+        <LinearLayout
+            android:orientation="vertical"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:gravity="center_horizontal">
+
+            <androidx.cardview.widget.CardView
+                android:layout_width="100dp"
+                android:layout_height="100dp"
+                android:elevation="0dp"
+                app:cardCornerRadius="10dp"
+                android:layout_marginEnd="15dp"
+                android:layout_marginStart="15dp"
+                android:layout_marginTop="15dp"
+                android:layout_marginBottom="5dp"
+                android:backgroundTint="#F2CDA0">
+
+                <ImageView
+                    android:id="@+id/slot06"
+                    android:layout_width="100dp"
+                    android:layout_height="100dp"
+                    android:contentDescription="Imagen que sobresale de Slot 1"
+                    android:scaleType="centerCrop"
+                    android:src="@drawable/asi_exploradores_jabonera" />
+
+            </androidx.cardview.widget.CardView>
+
+            <LinearLayout
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="center_horizontal|bottom"
+                android:orientation="horizontal"
+                android:gravity="center"
+                android:layout_marginBottom="8dp">
+
+                <TextView
+                    android:id="@+id/precio06"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:fontFamily="@font/pixeled"
+                    android:text="100"
+                    android:textColor="#401201"
+                    android:textSize="20sp" />
+
+                <ImageView
+                    android:layout_width="20dp"
+                    android:layout_height="20dp"
+                    android:layout_marginStart="4dp"
+                    android:contentDescription="Icono de moneda"
+                    android:src="@drawable/logo_pintia"
+                    android:scaleType="centerCrop" />
+            </LinearLayout>
+
+        </LinearLayout>
+
+    </GridLayout>
+
+    <LinearLayout
+        android:id="@+id/bottom_navigation"
+        style="?android:attr/buttonBarStyle"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:background="@drawable/style_background_gradiente"
+        android:orientation="horizontal"
+        app:layout_constraintStart_toStartOf="parent"
+        app:layout_constraintEnd_toEndOf="parent"
+        app:layout_constraintBottom_toBottomOf="parent">
+
+        <ImageButton
+            android:id="@+id/leaderboardButton"
+            android:layout_width="0dp"
+            android:layout_height="60dp"
+            android:layout_weight="1"
+            android:background="?attr/selectableItemBackground"
+            android:src="@drawable/icon_leaderboard"
+            android:contentDescription="Abre el mapa"
+            android:padding="5dp"
+            android:scaleType="fitCenter" />
+
+        <ImageButton
+            android:id="@+id/mapButton"
+            android:layout_width="0dp"
+            android:layout_height="60dp"
+            android:layout_weight="1"
+            android:background="?attr/selectableItemBackground"
+            android:src="@drawable/icon_map"
+            android:contentDescription="Abre el ranking"
+            android:layout_marginEnd="40dp"
+            android:layout_marginStart="40dp"
+            android:scaleType="fitCenter" />
+
+        <ImageButton
+            android:id="@+id/shopButton"
+            android:layout_width="0dp"
+            android:layout_height="60dp"
+            android:layout_weight="1"
+            android:background="?attr/selectableItemBackground"
+            android:src="@drawable/icon_shop"
+            android:contentDescription="Abre la tienda"
+            android:padding="5dp"
+            android:scaleType="fitCenter" />
+    </LinearLayout>
+
+</androidx.constraintlayout.widget.ConstraintLayout>