Dados de los colonos de Catán
Componentes y suministros
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Acerca de este proyecto
Me encanta un buen juego de Settlers of Catan, así que ¿por qué no construir un dado digital? Utilicé por primera vez siete LED rojos, cuando me di cuenta de que necesitas dos dados para Catan. Decidí usar una pantalla LCD.
Configurar la pantalla
Configure la pantalla LCD como lo haría normalmente. Si no sabe cómo, siga estas instrucciones.
Agregar un botón
Agrega un botón que presionarás cada vez que quieras lanzar los dados. También puede utilizar un sensor de inclinación para imitar el movimiento de lanzar los dados.
El código y el texto inicial
Ahora está listo para agregar el código. No olvide incluir la biblioteca de cristal líquido. En la configuración, configuré el texto inicial en la pantalla como "¡Tira los dados!" Puede hacer todos los textos que desee.
Aumenta la tensión
Escribí una función llamada buildUp para usar cada vez que se presiona el botón, para aumentar la tensión de los números que mostrarán los dados. Mi pantalla tiene dos filas de 16 caracteres. Quería llenar ambas filas con números aleatorios (hasta seis, como dados reales) que vendrían más rápido con cada número. Para eso es el bucle for en la función buildUp. Si su pantalla tiene más filas o caracteres, puede ajustar este código.
Establecí el retraso en 220 milisegundos y lo dividí por 16. El número que obtienes es el número que restarás del countDelay cada vez que se ejecute el bucle. Si desea que los números se muestren más rápido o más lento, estos son los números que debe ajustar.
Muestre los números de los dados
Ahora para los dados reales. Quería mostrar un número en cada fila, parecido a los dos dados que necesitas con Catan. Usé setCursor para colocar los números en el medio de la pantalla. Puede colocarlos en cualquier lugar que desee.
El ladrón
Como el siete es un número especial en Colonos de Catan, agregué un mensaje adicional a este número. Cada vez que saques siete, verás "El ladrón" debajo. De esta manera, puede asegurarse de que todos sepan cómo contar sus cartas. Si desea utilizar este dado con otro juego, puede eliminar este código o ajustar el mensaje o el número.
¡Disfruta!
¡Invita a tus amigos, juega a Settlers of Catan y diviértete!
Código
- Código de dados de los colonos de Catan
Código de dados de los colonos de Catán Arduino
No olvide incluir la biblioteca Liquid Crystal.#includeLiquidCrystal lcd (12, 11, 5, 4, 3, 2); int diceButton =10; int reply; int count =0; dados largos uno; dados largos dos; configuración vacía () {lcd.begin (16, 2); pinMode (diceButton, ENTRADA); randomSeed (analogRead (0)); lcd.setCursor (1, 0); lcd.print ("¡Tira los dados!");} void buildUp () {lcd.clear (); int countDelay =220; int setColumn =0; para (recuento =0; recuento <=16; recuento ++) {lcd.setCursor (setColumn, 0); lcd.print (aleatorio (1, 7)); lcd.setCursor (setColumn, 1); lcd.print (aleatorio (1, 7)); delay (countDelay); countDelay - =13; setColumn + =1; }} bucle vacío () {diceButton =digitalRead (10); diceOne =aleatorio (1, 7); diceTwo =aleatorio (1, 7); if (diceButton ==HIGH) {buildUp (); lcd.clear (); lcd.setCursor (7, 0); lcd.print (diceOne); lcd.setCursor (7, 1); lcd.print (diceTwo); if (diceOne + diceTwo ==7) {lcd.clear (); lcd.setCursor (7, 0); lcd.print ("7"); lcd.setCursor (3, 1); lcd.print ("El ladrón"); }}}
Proceso de manufactura