新人,在线求帮助!!!!
午夜末班车 2015-08-11 09:09:06 public static void main(String[] args) {
System.out.println("欢迎进入魔幻世界");
System.out.println("==================");
// 人物角色
int HPa = 15;
int ATKa = 2;
int ACa = 1;
String Career1 = "战士";
String Name1 = "奥拉夫";
System.out.println("你的职业" + Career1);
System.out.println("你的名字" + Name1);
System.out.println("你的生命值" + HPa);
System.out.println("你的攻击力" + ATKa);
System.out.println("你的防御力" + ACa);
System.out.println("-------------------");
// 怪物角色
int HPb = 10;
int ATKb = 2;
int ACb = 1;
String Career2 = "亡灵";
String Name2 = "骷髅鸡";
System.out.println("怪物的种族" + Career2);
System.out.println("怪物的名字" + Name2);
System.out.println("怪物的生命值" + HPb);
System.out.println("怪物的伤害" + ATKb);
System.out.println("怪物的护甲" + ACb);
System.out.println("-------------------");
int hpa = HPa / 2; // 人的半血状态为:hpa=8
int hpb = HPb / 5; // 怪物的半血状态为:hpb=2
int a = 1, b = 1; // 用来控制血量警告的次数
String flag; // 用来判断阵亡的是哪一方
if (HPa > 0 && HPb > 0) {
do{
for (; (HPa > 0 && HPb > 0);) {
HPa = HPa - (ATKb - ACa);
HPb = HPb - (ATKa - ACb);
if (HPa <= hpa || HPb <= hpb) {
if ((HPa <= hpb) && a == 2) {
System.out.println("警告!!您的血量已不足50%");
System.out.println("此时您的剩余血量为:" + HPa);
System.out.println("此时怪物的剩余血量为:" + HPb);
System.out.println("-------------------");
a--;
}
if ((HPb <= hpb) && b == 1) {
System.out.println("加油!!" + Name2+ "的血量已不足20%,干掉他!");
System.out.println("此时您的剩余血量为:" + HPa);
System.out.println("此时怪物的剩余血量为:" + HPb);
System.out.println("-------------------");
b--;
}
}
}
}while(HPa>=0);
if(HPa<=0){
System.out.println("您已经阵亡!");
}
flag = (HPa > 0) ? Name1 : Name2;//判定死亡的一方.
System.out.println(flag + " 获得了胜利");
}
}
}
能帮我看看那个地方错了吗?为什么这样不能进行循环,我想让这个游戏一直战斗,直到战士血为0时停止.......才开始学Java2天 希望能得到帮助!谢谢!!!