Mini batalla contra jefes
Componentes y suministros
| × | 1 | ||||
| × | 1 |
Aplicaciones y servicios en línea
|
Acerca de este proyecto
El es un juego que simula una batalla de jefes. Utiliza los botones para determinar sus ataques y cambiar entre pantallas. Tu oponente (un demonio) ataca usando un algoritmo aleatorio.
Decidí hacer esto porque es una idea divertida y un retroceso a los videojuegos antiguos y retro, como los juegos originales de Pokémon y Super Mario.
Las opciones para los ataques son:- La espada de Isin (2 daños) - El bastón de Kanas (1 daño, +1 ataque) - El hechizo de los conservadores (0 daño, +2 ataque) - La poción de Meseus (0 daño, +2 de salud) ¡Buena suerte y diviértete!
Código
- Código
- Código
Código Arduino
Este es el código. Cópielo y péguelo en Arduino IDE#includeLiquidCrystal lcd (8, 9, 4, 5, 6, 7); int turn =1; int pantalla =0; int salud =10; int ehealth =10; int ataquedaño =0; int stats =0; int totaldamage =attackdamage + stats; int eattackdamage =0; int estats =0; int etotaldamage =eattackdamage + fincas; int ataque enemigo =aleatorio (1, 5); int ataque =0; configuración de vacío () {totaldamage =attackdamage + stats; etotaldamage =eattackdamage + estats; lcd. comienzo (16, 2); Serial.begin (9600);} bucle vacío () {daño total =daño de ataque + estadísticas; etotaldamage =eattackdamage + estats; estats =0; stats =0; daño de ataque =0; eattackdamage =0; botón int =analogRead (A0); si (salud <=0) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Usted pierde"); } if (ehealth <=0) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("¡Tú ganas!"); } if (botón> =500 &&botón <=750) {pantalla =pantalla + 1; retraso (1000); ataque enemigo =aleatorio (1, 5); Serial.println ('5'); } if (pantalla> 4) {pantalla =0; turno =turno + 1; ataque enemigo =aleatorio (1, 5); } if (pantalla ==0) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Girar"); lcd.setCursor (0, 1); lcd.print (girar); } más si (pantalla ==1) {lcd.setCursor (0, 0); lcd.print ("Usó el"); lcd.setCursor (0, 1); if (botón> =0 &&botón <=50) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Usó el"); lcd.setCursor (0, 1); lcd.print ("Blade Of Isin"); daño de ataque =2; } más si (botón> =50 &&botón <=150) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Usó el"); lcd.setCursor (0, 1); lcd.print ("Bastón de Kanas"); daño de ataque =1; estadísticas =estadísticas + 1; retraso (1000); } más si (botón> =150 &&botón <=300) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Usó el"); lcd.setCursor (0, 1); lcd.print ("El hechizo de los conservadores"); daño de ataque =0; estadísticas =estadísticas + 2; retraso (1000); } más si (botón> =300 &&botón <=500) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Usó el"); lcd.setCursor (0, 1); lcd.print ("Poción de Meseus"); daño de ataque =0; salud =salud + 2; retraso (1000); }} más si (pantalla ==2) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("El demonio usado"); lcd.setCursor (0, 1); if (ataque enemigo ==1) {lcd.print ("La lanza de hueso"); eattackdamage =2; retraso (1000); } else if (ataque enemigo ==2) {lcd.print ("La espada maldita"); eattackdamage =1; estats =estats ++; retraso (1000); } else if (ataque enemigo ==3) {lcd.print ("El hechizo maldito"); eattackdamage =3; estats =estats - 2; retraso (1000); } else if (ataque enemigo ==4) {lcd.print ("El ritual del cráneo"); eattackdamage =0; estats =estats + 2; retraso (1000); } ehealth =ehealth - daño total; salud =salud - daño total; } más si (pantalla ==3) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Salud del jugador:"); lcd.setCursor (0, 1); lcd.print (salud); } más si (pantalla ==4) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Salud del enemigo:"); lcd.setCursor (0, 1); lcd.print (ehealth); } Serial.println (salud, ehealth);}
Código Arduino
Este es el código. Codifica cosas#includeLiquidCrystal lcd (8, 9, 4, 5, 6, 7); int turn =1; // establece las variables int screen =0; int salud =10; int ehealth =10; int ataquedaño =0; int stats =0; int totaldamage =attackdamage + stats; int eattackdamage =0; int estats =0; int etotaldamage =eattackdamage + fincas; int ataque enemigo =aleatorio (1, 5); int ataque =0; configuración de vacío () {totaldamage =attackdamage + stats; // redefine las fórmulas de cálculo de daños etotaldamage =eattackdamage + estats; lcd. comienzo (16, 2); // configura LCD} void loop () {totaldamage =attackdamage + stats; // redefine las fórmulas de cálculo de daños etotaldamage =eattackdamage + estats; estats =0; // redefine algunas variables stats =0; daño de ataque =0; eattackdamage =0; botón int =analogRead (A0); if (salud <=0) {// comprueba si pierde lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Usted pierde"); } if (ehealth <=0) {// comprueba si ganas lcd.clear (); lcd.setCursor (0, 0); lcd.print ("¡Tú ganas!"); } if (button> =500 &&button <=750) {// configura el botón utilizado para la transición entre pantallas screen =screen + 1; retraso (1000); ataque enemigo =aleatorio (1, 5); Serial.println ('5'); } if (pantalla> 4) {// restablece las pantallas si pasa la pantalla 4 pantalla =0; turno =turno + 1; ataque enemigo =aleatorio (1, 5); } if (screen ==0) {// muestra turn lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Girar"); lcd.setCursor (0, 1); lcd.print (girar); } else if (screen ==1) {// la pantalla de ataque lcd.setCursor (0, 0); lcd.print ("Usó el"); lcd.setCursor (0, 1); if (button> =0 &&button <=50) {// Determina los ataques lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Usó el"); lcd.setCursor (0, 1); lcd.print ("Blade Of Isin"); daño de ataque =2; } más si (botón> =50 &&botón <=150) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Usó el"); lcd.setCursor (0, 1); lcd.print ("Bastón de Kanas"); daño de ataque =1; estadísticas =estadísticas + 1; retraso (1000); } más si (botón> =150 &&botón <=300) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Usó el"); lcd.setCursor (0, 1); lcd.print ("El hechizo de los conservadores"); daño de ataque =0; estadísticas =estadísticas + 2; retraso (1000); } más si (botón> =300 &&botón <=500) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Usó el"); lcd.setCursor (0, 1); lcd.print ("Poción de Meseus"); daño de ataque =0; salud =salud + 2; retraso (1000); }} else if (screen ==2) {// el enemigo ataca lcd.clear (); lcd.setCursor (0, 0); lcd.print ("El demonio usado"); lcd.setCursor (0, 1); if (ataque enemigo ==1) {lcd.print ("La lanza de hueso"); eattackdamage =2; retraso (1000); } else if (ataque enemigo ==2) {lcd.print ("La espada maldita"); eattackdamage =1; estats =estats ++; retraso (1000); } else if (ataque enemigo ==3) {lcd.print ("El hechizo maldito"); eattackdamage =3; estats =estats - 2; retraso (1000); } else if (ataque enemigo ==4) {lcd.print ("El ritual del cráneo"); eattackdamage =0; estats =estats + 2; retraso (1000); } ehealth =ehealth - daño total; // cálculo de daño salud =salud - daño total; } else if (screen ==3) {// muestra la salud del jugador lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Salud del jugador:"); lcd.setCursor (0, 1); lcd.print (salud); } else if (screen ==4) {// muestra la salud del enemigo lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Salud del enemigo:"); lcd.setCursor (0, 1); lcd.print (ehealth); }} // finaliza el código
Esquemas
Coloque la pantalla LCD en los pines del ArduinoProceso de manufactura
- EMAR Mini - Robot de asistencia de emergencia
- Usos de las Mini Grúas
- Cómo operar una miniexcavadora
- Consejos de seguridad para miniexcavadoras
- Cómo transportar una miniexcavadora
- La soldadura por proyección es la jefa de los estampados
- ¿Qué es una máquina Mini VMC?
- ¿Qué es la mini máquina perforadora?
- ¿Qué es un mini torno CNC?
- ¿Cómo funcionan las minibombas sumergibles?
- ¿Qué es una mini sierra de cinta para corte de metal?