Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Mini Boss Battle

Componenten en benodigdheden

Arduino UNO
× 1
Arduino-compatibele 2 X 16 LCD-controllermodule
× 1

Apps en online services

Arduino IDE

Over dit project

Het is een spel dat een eindbaasgevecht simuleert. Je gebruikt de knoppen om je aanvallen te bepalen en tussen schermen te wisselen. Je tegenstander (een demon) valt aan met een willekeurig algoritme.

Ik besloot dit te maken omdat het een leuk idee is en een terugkeer naar oude en retro videogames zoals de originele Pokemon- en Super Mario-games.

De keuzes voor aanvallen zijn:- The Blade Of Isin (2 Damage) - The Staff Of Kanas (1 Damage, +1 Attack) - The Spell Of Tories (0 Damage, +2 Attack) - The Potion Of Meseus (0 Damage, +2 Gezondheid) Veel succes en plezier!

Code

  • Code
  • Code
CodeArduino
Dit is de code. Kopieer en plak het in de Arduino IDE
#include LiquidCrystal lcd (8, 9, 4, 5, 6, 7); int beurt =1; int-scherm =0; int gezondheid =10; int egezondheid =10; int aanvalsschade =0; int-statistieken =0; int totale schade =aanvalsschade + statistieken; int eattackdamage =0; int-standen =0; int etotaldamage =eattackdamage + estats; int vijandaanval =willekeurig (1, 5); int aanval =0; ongeldige setup () { totale schade =aanvalsschade + statistieken; etotaldamage =eattackdamage + estats; lcd.begin (16, 2); Serial.begin(9600);}void loop() { totale schade =aanvalsschade + statistieken; etotaldamage =eattackdamage + estats; stand =0; statistieken =0; aanvalsschade =0; eetkopschade =0; int-knop =analoog lezen (A0); if (gezondheid <=0) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("Je verliest"); } if (ehealth <=0) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("Je wint!"); } if(knop>
=500&&knop<=750) { scherm =scherm + 1; vertraging (1000); vijandaanval =willekeurig (1, 5); Serieel.println('5'); } if (scherm> 4) { scherm =0; draai =draai + 1; vijandaanval =willekeurig (1, 5); } if (scherm ==0) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("Draaien"); lcd.setCursor(0, 1); lcd.print(draai); } else if (scherm ==1) { lcd.setCursor (0, 0); lcd.print("Je gebruikte de"); lcd.setCursor(0, 1); if(button>=0&&button<=50) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("Je gebruikte de"); lcd.setCursor(0, 1); lcd.print("Blade Of Isin"); aanvalsschade =2; } else if(button>=50&&button<=150) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("Je gebruikte de"); lcd.setCursor(0, 1); lcd.print("Personeel van Kanas"); aanvalsschade =1; statistieken =statistieken + 1; vertraging (1000); } else if(button>=150&&button<=300) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("Je gebruikte de"); lcd.setCursor(0, 1); lcd.print("Spell Of Tories"); aanvalsschade =0; statistieken =statistieken + 2; vertraging (1000); } else if(button>=300&&button<=500) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("Je gebruikte de"); lcd.setCursor(0, 1); lcd.print("Drank van Meseus"); aanvalsschade =0; gezondheid =gezondheid + 2; vertraging (1000); } } else if (scherm ==2) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("De gebruikte demon"); lcd.setCursor(0, 1); if (vijandelijke aanval ==1) { lcd.print("The Bone Spear"); eetkopschade =2; vertraging (1000); } else if (vijandelijke aanval ==2){ lcd.print("The Cursed Blade"); eetkopschade =1; standen =standen ++; vertraging (1000); } else if (vijandelijke aanval ==3){ lcd.print("The Cursed Spell"); eetkopschade =3; standplaatsen =standplaatsen - 2; vertraging (1000); } else if (vijandelijke aanval ==4){ lcd.print("The Skull Ritual"); eetkopschade =0; standplaatsen =standplaatsen + 2; vertraging (1000); } ehealth =ehealth - totale schade; gezondheid =gezondheid - totale schade; } else if (scherm ==3) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("Spelergezondheid:"); lcd.setCursor(0, 1); lcd.print(gezondheid); } else if (scherm ==4) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("Vijandelijke gezondheid:"); lcd.setCursor(0, 1); lcd.print(e-gezondheid); } Serial.println(health, ehealth);}
CodeArduino
Dit is de code. Het codeert dingen
#include LiquidCrystal lcd (8, 9, 4, 5, 6, 7); int beurt =1; // stelt de variabelen int screen =0 in; int gezondheid =10; int egezondheid =10; int aanvalsschade =0; int-statistieken =0; int totale schade =aanvalsschade + statistieken; int eattackdamage =0; int-standen =0; int etotaldamage =eattackdamage + estats; int vijandaanval =willekeurig (1, 5); int aanval =0; ongeldige setup () { totale schade =aanvalsschade + statistieken; // herdefinieert de schadeberekeningsformules etotaldamage =eattackdamage + estats; lcd.begin (16, 2); // stelt LCD in} ongeldige lus () { totale schade =aanvalsschade + statistieken; // herdefinieert de formules voor schadeberekening etotaldamage =eattackdamage + estats; stand =0; // herdefinieert enkele variabelen stats =0; aanvalsschade =0; eetkopschade =0; int-knop =analoog lezen (A0); if (health <=0) { // controleert of je lcd.clear(); lcd.setCursor(0, 0); lcd.print("Je verliest"); } if (ehealth <=0) { //controleert of je lcd.clear(); lcd.setCursor(0, 0); lcd.print("Je wint!"); } if(button>=500&&button<=750) { // stelt de knop in die wordt gebruikt voor de overgang tussen schermen scherm =scherm + 1; vertraging (1000); vijandaanval =willekeurig (1, 5); Serieel.println('5'); } if (scherm> 4) { // reset de schermen als het scherm 4 passeert scherm =0; draai =draai + 1; vijandaanval =willekeurig (1, 5); } if (screen ==0) {//displays turn lcd.clear(); lcd.setCursor(0, 0); lcd.print("Draaien"); lcd.setCursor(0, 1); lcd.print(draai); } else if (screen ==1) {//het aanvalsscherm lcd.setCursor(0, 0); lcd.print("Je gebruikte de"); lcd.setCursor(0, 1); if(button>=0&&button<=50) {// Bepaalt de aanvallen lcd.clear(); lcd.setCursor(0, 0); lcd.print("Je gebruikte de"); lcd.setCursor(0, 1); lcd.print("Blade Of Isin"); aanvalsschade =2; } else if(button>=50&&button<=150) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("Je gebruikte de"); lcd.setCursor(0, 1); lcd.print("Personeel van Kanas"); aanvalsschade =1; statistieken =statistieken + 1; vertraging (1000); } else if(button>=150&&button<=300) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("Je gebruikte de"); lcd.setCursor(0, 1); lcd.print("Spell Of Tories"); aanvalsschade =0; statistieken =statistieken + 2; vertraging (1000); } else if(button>=300&&button<=500) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("Je gebruikte de"); lcd.setCursor(0, 1); lcd.print("Drank van Meseus"); aanvalsschade =0; gezondheid =gezondheid + 2; vertraging (1000); } } else if (screen ==2) {//vijand valt lcd.clear(); lcd.setCursor(0, 0); lcd.print("De gebruikte demon"); lcd.setCursor(0, 1); if (vijandelijke aanval ==1) { lcd.print("The Bone Spear"); eetkopschade =2; vertraging (1000); } else if (vijandelijke aanval ==2){ lcd.print("The Cursed Blade"); eetkopschade =1; standen =standen ++; vertraging (1000); } else if (vijandelijke aanval ==3){ lcd.print("The Cursed Spell"); eetkopschade =3; standplaatsen =standplaatsen - 2; vertraging (1000); } else if (vijandelijke aanval ==4){ lcd.print("The Skull Ritual"); eetkopschade =0; standplaatsen =standplaatsen + 2; vertraging (1000); } ehealth =ehealth - totale schade; // schadeberekening gezondheid =gezondheid - totale schade; } else if (scherm ==3) {//geeft de gezondheid van de speler lcd.clear(); lcd.setCursor(0, 0); lcd.print("Spelergezondheid:"); lcd.setCursor(0, 1); lcd.print(gezondheid); } else if (scherm ==4) {//toont vijandelijke gezondheid lcd.clear(); lcd.setCursor(0, 0); lcd.print("Vijandelijke gezondheid:"); lcd.setCursor(0, 1); lcd.print(e-gezondheid); }}//maakt de code af

Schema's

Plaats het LCD-scherm in de pinnen op de Arduino

Productieproces

  1. EMAR Mini – Noodhulprobot
  2. Gebruik van minikranen
  3. Een minigraafmachine bedienen
  4. Veiligheidstips voor minigraafmachines
  5. Een minigraafmachine vervoeren
  6. Projectielassen is de baas van reliëfs
  7. Wat is een Mini VMC-machine?
  8. Wat is de mini-boormachine?
  9. Wat is een mini-cnc-draaibank?
  10. Hoe werken mini-dompelpompen?
  11. Wat is een mini-metaalzaagbandzaag?