作业:
结果:
代码部分:
Hunter类 //猎人类
public class Hunter {
String name; //猎人的名字
int life; //猎人的生命值
String weapon; //猎人的武器
boolean isLive; //猎人是否活着
public void fight(Monster monster){ //猎人的动作
System.out.print("打");
}
public void injured(){ //猎人被攻击
System.out.println("受伤");
}
public void dead(){ //猎人死亡
System.out.println("猎人死亡");
}
public void show(Hunter h){ //猎人的状态显示
System.out.print(h.name); //猎人的名字
System.out.println("状态显示:");
System.out.println("HP:"+h.life);//猎人的生命值 HP=生命值
}
}
Monster //僵尸类
public class Monster {
String type; //僵尸的类型
boolean isLive; //僵尸是否活着
int life; //僵尸的生命值
public void injured(){ //僵尸被攻击
System.out.println("受伤");
}
public void kill(Hunter hunter){//僵尸的动作
System.out.print("还击");
}
public void dead(){ //僵尸死亡
System.out.println("千年僵尸死亡");
}
public void show(Monster m){ //僵尸的显示状态
System.out.print(m.type); //僵尸的名字
System.out.println("状态显示:");
System.out.println("HP:"+m.life);//僵尸的生命值 HP=生命值
}
}
TestGame //测试游戏类
public class TestGame {
public static void main(String[] args) {
Hunter h = new Hunter();//创建一个猎人对象
h.name="猎人"; //猎人的名字
h.life=100; //猎人的生命值
h.weapon="猎枪"; //猎人的武器
h.isLive=true; //猎人是否活着
Monster m = new Monster();//创建一个僵尸对象
m.type="千年僵尸"; //僵尸的类型
m.life=1000; //僵尸的生命值
m.isLive=true; //僵尸是否活着
int shotgunHarm = 500; //设置一个猎人武器的伤害
int zombieHarm = 40; //设置一个僵尸的伤害
int i = 0; //回合次数 初始是0
while(m.life>0&&h.life>0){//循环条件是 猎人和僵尸生命值大于0的时候 才进行循环
i+=1; //让i 每次循环自增1
System.out.println("第"+i+"回合");
m.life-=shotgunHarm; //每一回合僵尸的生命值减去猎人武器的伤害
h.life-=zombieHarm; //每一回合猎人的生命值减去僵尸的伤害
System.out.print(h.name+"用"+h.weapon);
h.fight(m); //猎人的动作
System.out.println(m.type);
System.out.print(m.type);
m.injured(); //僵尸的被攻击
if(m.life<=0){//判断如果僵尸生命值小于等于0僵尸死亡 Game Over
m.isLive=false;
System.out.println(m.type+"是否活着:"+m.isLive);
h.show(h); //显示猎人状态
m.show(m); //显示僵尸状态
m.dead(); //
System.out.println("Game Over");
}else{
m.isLive=true;
System.out.println(m.type+"是否活着"+m.isLive);
System.out.print(m.type);
m.kill(h);
System.out.println(h.name);
System.out.print(h.name);
h.injured();
System.out.print(h.name);
if(h.life<=0){//如果猎人的生命值小于等于0 猎人死亡 Game Over
h.isLive=false;
System.out.println(h.name+"是否活着:"+h.isLive);
h.show(h); //显示猎人状态
m.show(m); //显示僵尸状态
h.dead();
System.out.println("Game Over");
}else{
h.isLive=true;
System.out.println(h.name+"是否活着:"+h.isLive);
h.show(h); //显示猎人状态
m.show(m); //显示僵尸状态
}
}
}
}
}