public class GameDemo01 {
public static void main(String[] args) {
Random life = new Random();
Scanner sc = new Scanner(System.in);
System.out.println("勇士,请告诉我你的名字:");
String name = sc.nextLine();
int lifeNum = life.nextInt(9000) + 1001;
System.out.println("Boss的生命值为:" + lifeNum);
while (true) {
System.out.println("请选择您要进行的攻击方式(1:物理攻击 2:魔法攻击):");
int attackType = sc.nextInt(); //
switch (attackType) {
case 1:
Random r1 = new Random();
int ad = r1.nextInt(2000)+1; //物理攻击伤害值(1~2000)
lifeNum -= ad;
System.out.println("你对BOSS造成了"+ad+"点"+"物理伤害");
break;
case 2:
Random r2 = new Random();
int ap = r2.nextInt(2000)+1001;//魔法攻击伤害值(1001~3000)
lifeNum -= ap;
System.out.println("你对BOSS造成了"+ap+"点"+"魔法伤害");
break;
default:
System.out.println("请确认您的攻击方式是否有误。");
break;
}
if(lifeNum>0) {
System.out.println("BOSS剩余生命值:"+lifeNum);
}else {
System.out.println(name+"阁下"+",你终结了BOSS。");
break;
}
public class BossGame02 {
public static void main(String[] args) {
Random life = new Random();
Scanner sc = new Scanner(System.in);
System.out.println("勇士,请告诉我你的名字:");
String name = sc.nextLine();// 取名
while (true) {
System.out.println(name + ",请选择您的职业(1:战士;2:法师;3 牧师):");
System.out.println("战士:普通攻击有30%概率暴击!");
System.out.println("法师:可以使用炎爆术!");
System.out.println("牧师:可以治疗自己!");
int job = sc.nextInt();
int lifeNum = 1;// 定义boss血量
int hp = 1;// 定义人物血量
int mp = 100;// 定义魔法值
switch (job) {
case 1:
System.out.println("您选择的职业为:一个威武的战士!开始战斗吧!");
lifeNum = life.nextInt(1000) + 9000;
hp = life.nextInt(1000) + 4000;
System.out.println("Boss的生命值为:" + lifeNum);
System.out.println("你的生命值为:" + hp);
while (true) {
System.out.println("请选择您要进行的攻击方式(1:物理攻击 ):");
int attackType = sc.nextInt();
switch (attackType) {
case 1:
Random r1 = new Random();
Random r2 = new Random();
int ad = r1.nextInt(300) + 1000; // 物理攻击伤害值(1000~1299)
int prob = r2.nextInt(101);// 定义概率变量,值为0~100
if (prob >= 70) {
ad *= 2;
System.out.println("你的物理攻击暴击了!");
}
lifeNum -= ad;
System.out.println("你对BOSS造成了" + ad + "点" + "物理伤害");
break;
default:
System.out.println("你挥舞拳头对boss造成了0点伤害!");
break;
}
/*
* if (lifeNum <= 0) { break; }
*/
Random r = new Random();
int at = r.nextInt(150) + 500;
System.out.println("boss对你造成了" + at + "伤害!");
hp -= at;
case 3:
System.out.println("您选择的职业为:一个仁慈的牧师!开始战斗吧!");
lifeNum = life.nextInt(1000) + 9000;
System.out.println("您的技能将耗费魔法值,满值为100,每回合回复10.");
System.out.println("Boss的生命值为:" + lifeNum);
hp = life.nextInt(1000) + 2000;
int hp1 = hp;
System.out.println("你的生命值为:" + hp);
while (true) {
System.out.println("请选择您要进行的攻击方式(1:神圣惩击 2:快速治疗):");
int attackType = sc.nextInt();
Random r1 = new Random();
int ad;
switch (attackType) {
case 1:
ad = r1.nextInt(300) + 1200; // 神圣惩击伤害值(1000~1299)
lifeNum -= ad;
System.out.println("您的神圣惩击对BOSS造成了" + ad + "点" + "伤害");
break;
case 2:
if(hp<hp1){
if (mp >= 30) {
ad = r1.nextInt(300) + 1500;// 节能伤害基础值(1500~1799)
int ap = ad * 1;// 技能伤害数值
hp += ap;
mp -= 30;
System.out.println("您的快速治疗恢复了" + ap + "点" + "血量");
break;
} else {
System.out.println("魔法值不够!");
break;
}
}else{
System.out.println("您的血量已满!");
}
default:
System.out.println("你挥舞拳头对boss造成了0点伤害!");
break;
}
/*
* if (lifeNum <= 0) { break; }
*/
Random r = new Random();
int at = r.nextInt(150) + 500;
System.out.println("boss对你造成了" + at + "伤害!");
hp -= at;