迷你 Boss 战
组件和用品
| × | 1 | ||||
| × | 1 |
应用和在线服务
|
关于这个项目
这是一款模拟boss战的游戏。您使用按钮来确定您的攻击并在屏幕之间切换。您的对手(恶魔)使用随机算法进行攻击。
我决定做这个,因为这是一个有趣的想法,并且是对旧的和复古的电子游戏的回归,例如原始的口袋妖怪和超级马里奥游戏。
攻击的选择是:- 伊辛之刃(2 伤害)- 喀纳斯之杖(1 伤害,+1 攻击)- 托利党的咒语(0 伤害,+2 攻击)- 墨修斯的药水(0 伤害, +2 健康)祝你好运,玩得开心!
代码
- 代码
- 代码
代码Arduino
这是代码。将其复制并粘贴到 Arduino IDE#includeLiquidCrystal lcd(8, 9, 4, 5, 6, 7); int 转 =1; INT屏幕=0;整数健康 =10;国际电子健康=10; int 攻击伤害 =0; INT统计=0; int totaldamage =攻击力 + 统计数据; inteattackdamage =0;内部统计=0; int etotaldamage =eattackdamage + stats; int 敌人攻击 =随机 (1, 5); int Attack =0;void setup() { totaldamage =attackdamage + stats; etotaldamage =eattackdamage + stats;液晶显示器。开始(16, 2); Serial.begin(9600);}void loop() { totaldamage =attackdamage + stats; etotaldamage =eattackdamage + stats;统计=0;统计=0;攻击伤害 =0;攻击伤害 =0; int button=analogRead(A0); if (health <=0) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("你输了"); } if (ehealth <=0) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("你赢了!"); } if(button>=500&&button<=750) { screen =screen + 1;延迟(1000);敌人攻击 =随机 (1, 5); Serial.println('5'); } 如果(屏幕> 4){ 屏幕 =0;转 =转 + 1;敌人攻击 =随机 (1, 5); } if (screen ==0) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("转"); lcd.setCursor(0, 1);液晶显示(转); } else if (screen ==1) { lcd.setCursor(0, 0); lcd.print("你用过"); lcd.setCursor(0, 1); if(button>=0&&button<=50) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("你用过"); lcd.setCursor(0, 1); lcd.print("伊辛之刃");攻击伤害 =2; } else if(button>=50&&button<=150) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("你用过"); lcd.setCursor(0, 1); lcd.print("喀纳斯员工");攻击伤害 =1;统计 =统计 + 1;延迟(1000); } else if(button>=150&&button<=300) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("你用过"); lcd.setCursor(0, 1); lcd.print(“保守党的咒语”);攻击伤害 =0;统计数据 =统计数据 + 2;延迟(1000); } else if(button>=300&&button<=500) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("你用过"); lcd.setCursor(0, 1); lcd.print("米修斯的药水");攻击伤害 =0;健康 =健康 + 2;延迟(1000); } } else if (screen ==2) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("使用的恶魔"); lcd.setCursor(0, 1); if (enemyattack ==1) { lcd.print("The Bone Spear");攻击伤害 =2;延迟(1000); } else if (enemyattack ==2){ lcd.print("诅咒之刃");攻击伤害 =1;统计=统计++;延迟(1000); } else if (enemyattack ==3){ lcd.print("被诅咒的咒语");攻击伤害 =3;统计数据 =统计数据 - 2;延迟(1000); } else if (enemyattack ==4){ lcd.print("骷髅仪式");攻击伤害 =0;统计数据 =统计数据 + 2;延迟(1000); } ehealth =ehealth - 总伤害;健康 =健康 - 总伤害; } else if (screen ==3) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("玩家健康:"); lcd.setCursor(0, 1);液晶打印(健康); } else if (screen ==4) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("敌人生命值:"); lcd.setCursor(0, 1);液晶打印(电子健康); } Serial.println(health, ehealth);}
代码Arduino
这是代码。它执行代码操作#includeLiquidCrystal lcd(8, 9, 4, 5, 6, 7); int 转 =1; //设置变量 int screen =0;整数健康 =10;国际电子健康=10; int 攻击伤害 =0; INT统计=0; int totaldamage =攻击力 + 统计数据; inteattackdamage =0;内部统计=0; int etotaldamage =eattackdamage + stats; int 敌人攻击 =随机 (1, 5); int Attack =0;void setup() { totaldamage =attackdamage + stats; //重新定义伤害计算公式 etotaldamage =eattackdamage + estats; lcd.begin(16, 2); //设置LCD}void loop() { totaldamage =attackdamage + stats; //重新定义伤害计算公式 etotaldamage =eattackdamage + estats;统计=0; //重新定义一些变量 stats =0;攻击伤害 =0;攻击伤害 =0; int button=analogRead(A0); if (health <=0) { //检查你是否丢失了 lcd.clear(); lcd.setCursor(0, 0); lcd.print("你输了"); } if (ehealth <=0) { //检查你是否赢了 lcd.clear(); lcd.setCursor(0, 0); lcd.print("你赢了!"); } if(button>=500&&button<=750) { //设置用于在屏幕之间转换的按钮 screen =screen + 1;延迟(1000);敌人攻击 =随机 (1, 5); Serial.println('5'); } if (screen> 4) { //如果通过screen 4 screen =0,则重置屏幕;转 =转 + 1;敌人攻击 =随机 (1, 5); } if (screen ==0) {//displays turn lcd.clear(); lcd.setCursor(0, 0); lcd.print("转"); lcd.setCursor(0, 1);液晶显示(转); } else if (screen ==1) {//攻击画面lcd.setCursor(0, 0); lcd.print("你用过"); lcd.setCursor(0, 1); if(button>=0&&button<=50) {//确定攻击 lcd.clear(); lcd.setCursor(0, 0); lcd.print("你用过"); lcd.setCursor(0, 1); lcd.print("伊辛之刃");攻击伤害 =2; } else if(button>=50&&button<=150) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("你用过"); lcd.setCursor(0, 1); lcd.print("喀纳斯员工");攻击伤害 =1;统计 =统计 + 1;延迟(1000); } else if(button>=150&&button<=300) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("你用过"); lcd.setCursor(0, 1); lcd.print(“保守党的咒语”);攻击伤害 =0;统计数据 =统计数据 + 2;延迟(1000); } else if(button>=300&&button<=500) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("你用过"); lcd.setCursor(0, 1); lcd.print("米修斯的药水");攻击伤害 =0;健康 =健康 + 2;延迟(1000); } } else if (screen ==2) {//敌人攻击lcd.clear(); lcd.setCursor(0, 0); lcd.print("使用的恶魔"); lcd.setCursor(0, 1); if (enemyattack ==1) { lcd.print("The Bone Spear");攻击伤害 =2;延迟(1000); } else if (enemyattack ==2){ lcd.print("诅咒之刃");攻击伤害 =1;统计=统计++;延迟(1000); } else if (enemyattack ==3){ lcd.print("被诅咒的咒语");攻击伤害 =3;统计数据 =统计数据 - 2;延迟(1000); } else if (enemyattack ==4){ lcd.print("骷髅仪式");攻击伤害 =0;统计数据 =统计数据 + 2;延迟(1000); } ehealth =ehealth - 总伤害; //伤害计算health =health - totaldamage; } else if (screen ==3) {//显示玩家健康状况lcd.clear(); lcd.setCursor(0, 0); lcd.print("玩家健康:"); lcd.setCursor(0, 1);液晶打印(健康); } else if (screen ==4) {//显示敌人的生命值lcd.clear(); lcd.setCursor(0, 0); lcd.print("敌人生命值:"); lcd.setCursor(0, 1);液晶打印(电子健康); }}//完成代码
示意图
将 LCD 放入 Arduino 上的引脚制造工艺