49 lines
2.4 KiB
Markdown
49 lines
2.4 KiB
Markdown
# Resumen de Reglas Implementadas
|
|
|
|
Este documento detalla las reglas del juego de mesa **Warhammer Quest** que han sido traducidas a código en el motor actual.
|
|
|
|
## 1. Generación de Mazmorra
|
|
|
|
### El Mazo de Mazmorra (`DungeonDeck.js`)
|
|
El mazo define la duración y estructura de la misión. Se ha implementado la siguiente lógica de construcción:
|
|
* **Total de Cartas**: Se usan **13 cartas** para una partida estándar.
|
|
* **Composición**:
|
|
* Se mezclan cartas de *Habitación de Mazmorra* y *Pasillos* (Rectos, Esquinas, T, Escaleras).
|
|
* **La Habitación Objetivo**:
|
|
* El mazo se divide en dos mitades.
|
|
* La carta de *Habitación Objetivo* se baraja **únicamente en las 6 últimas cartas**.
|
|
* Esto garantiza que el objetivo no aparezca demasiado pronto, forzando una exploración mínima.
|
|
|
|
### Colocación de Baldosas (`DungeonGenerator.js` & `GridSystem.js`)
|
|
* **Flujo**:
|
|
1. Se revela una carta del mazo.
|
|
2. Se intenta colocar la baldosa correspondiente en una "Salida Abierta" existente.
|
|
3. **Validación**: Si la nueva baldosa choca con una existente (superposición), se descarta y se intenta otra salida o se descarta la carta (según reglas de "callejón sin salida").
|
|
* **Conexiones**:
|
|
* Las baldosas se conectan "puerta con puerta" (o "borde con borde").
|
|
* El motor alinea automáticamente la entrada de la nueva baldosa con la salida de la anterior.
|
|
|
|
## 2. Tipos de Baldosas (`TileDefinitions.js`)
|
|
|
|
Se han definido las siguientes piezas con sus reglas de movimiento y conexión:
|
|
|
|
### Pasillos (Corridors)
|
|
* **Pasillo Recto**: 2 casillas de ancho. Conexión frontal y trasera.
|
|
* **Esquina (Corner)**: Giro en L.
|
|
* **Intersección T (T-Junction)**: Permite bifurcar el camino.
|
|
* **Escaleras**: Cuentan como pasillo, pero visualmente distintas.
|
|
|
|
### Habitaciones (Rooms)
|
|
* **Habitación de Mazmorra**: 4x4 casillas.
|
|
* Solo tiene 2 accesos enfrentados (Norte y Sur). Es una sala de paso.
|
|
* **Habitación Objetivo**: 4x8 casillas (Grande).
|
|
* Es el final de la misión. Solo tiene 1 entrada.
|
|
|
|
## 3. Misiones (`MissionConfig.js`)
|
|
Actualmente soportamos:
|
|
* **Tipo ESCAPE**: El objetivo es encontrar la salida.
|
|
* **Configuración**: Se define un número mínimo de baldosas antes de que pueda aparecer el objetivo (gestionado por el mazo).
|
|
|
|
---
|
|
*Nota: Este sistema es agnóstico a la visualización. La lógica de reglas ocurre en memoria antes de pintarse en 3D.*
|