Skip to content

Instantly share code, notes, and snippets.

@Klerith
Created February 26, 2025 21:17

Revisions

  1. Klerith created this gist Feb 26, 2025.
    110 changes: 110 additions & 0 deletions blacksmith.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,110 @@
    # Blacksmith - Juego de Aventura Basado en Texto

    ## Objetivo

    Utiliza lo que has aprendido para crear un juego simple basado en texto, jugado completamente en la consola.

    ## Cómo Empezar

    1. Clona el repositorio.

    ## Jugabilidad

    Como herrero, puedes fabricar armas utilizando mineral, madera y fuego. Luego, las venderás para obtener oro. El oro se usará para comprar más mineral y madera, permitiéndote fabricar más armas.

    ## Comandos del Juego

    Utiliza los siguientes comandos para interactuar con el juego:

    ### 🔥 `fire()`

    - **Función:** Encender o apagar el fuego.
    - **Condiciones:**
    - Se encenderá si no hay fuego ardiendo y hay suficiente madera.
    - Se apagará si hay un fuego encendido.
    - **Costo:** Encender un fuego consume **1 pieza de madera**.

    ### 🛒 `buy(itemName)`

    - **Función:** Comprar suministros.
    - **Condiciones:**
    - Solo se puede comprar **un ítem a la vez** en cantidades individuales.
    - No se podrá comprar si el herrero **no tiene suficiente oro** o si el **fuego está encendido**.
    - **Tasas de cambio:**
    - **1 pieza de mineral** cuesta **3 piezas de oro**.
    - **1 pieza de madera** cuesta **1 pieza de oro**.

    ### ⚒️ `make(weaponName)`

    - **Función:** Fabricar armas usando mineral, madera y fuego.
    - **Condiciones:**
    - Se debe especificar el arma a fabricar.
    - Solo se puede fabricar **una arma a la vez** en cantidades individuales.
    - No se podrá fabricar si el herrero **no tiene suficiente mineral o madera** o si **el fuego no está encendido**.
    - **Tasas de cambio:**
    - **1 espada** requiere **2 piezas de mineral y 1 pieza de madera**.
    - **1 hacha** requiere **1 pieza de mineral y 2 piezas de madera**.

    ### 💰 `sell(weaponName)`

    - **Función:** Vender armas del inventario.
    - **Condiciones:**
    - Se debe especificar el arma a vender.
    - Solo se puede vender **una arma a la vez** en cantidades individuales.
    - No se podrá vender si el herrero **no tiene el arma seleccionada** o si **el fuego está encendido**.
    - **Tasas de cambio:**
    - **1 espada** se vende por **5 piezas de oro**.
    - **1 hacha** se vende por **4 piezas de oro**.

    ### 📦 `inventory()`

    - **Función:** Mostrar el inventario actual del herrero.
    - **Formato sugerido:**
    - Muestra el inventario de

    ```
    Inventario Actual: Oro: X, Mineral: X, Madera: X, Espadas: X, Hachas: X.
    ```

    ### 📖 `help()`

    - **Función:** Mostrar las instrucciones del juego.
    - **Ejemplo de salida:**

    ```
    INSTRUCCIONES:
    Blacksmith es un juego simple basado en texto.
    Como herrero, conviertes mineral y madera en espadas y hachas.
    Compras recursos usando oro y vendes armas para obtener más oro.
    COMANDOS:
    • fire()
    • buy(itemName)
    • make(weaponName)
    • sell(itemName)
    • inventory()
    • help()
    ```

    ## Tasas de Cambio

    - **Comprar:**
    - 1 pieza de mineral = **3 piezas de oro**.
    - 1 pieza de madera = **1 pieza de oro**.
    - **Fabricar:**
    - 1 espada = **2 piezas de mineral + 1 pieza de madera**.
    - 1 hacha = **1 pieza de mineral + 2 piezas de madera**.
    - **Vender:**
    - 1 espada = **5 piezas de oro**.
    - 1 hacha = **4 piezas de oro**.
    - **Encender fuego:** Consume **1 pieza de madera**.

    ## Estado inicial

    - Inicialmente, el herrero tiene
    - **Oro: 10**
    - **Mineral: 0**
    - **Madera: 0**
    - **Espadas: 0**
    - **Hachas: 0**