javabeen代码
import java.util.Random;
public class Roles {
//定义属性
private String name;
private int blood;
private String gander;
private String face;
//相貌描述
String[] boyFace = {"风流倜傥", "英俊潇洒", "才华横溢", "平平无奇", "凶神恶煞", "面目可憎"};
String[] girlFace = {"惊为天人", "亭亭玉立", "倾国倾城", "平平无奇", "奇丑无比", "不堪入目"};
//攻击描述
String[] attackDes = {"%s使用了坤坤的成名绝技“铁山靠”,以迅雷不及掩耳之势撞上了%s",
"%s使用了“律师函警告”,甩出一张律师函,律师函以雷霆之势冲向%s",
"%s使用了练习了一坤年的“坤拳”,突然绕到身后,一拳击向%s",
"%s后退一步,一记“你最好是”识破了%s的招式并对其发出一道音波功击"};
String[] attackedDes = {"%s后退十步,一口鲜血喷出",
"%s被击飞数米,翻滚一圈才稳住身形",
"%s识破意图,向右一闪毫发无伤",
"%s不慎中招,倒地不省人事"
};
//受伤描述
public Roles(String name, int blood, String gander) {
this.name = name;
this.blood = blood;
this.gander = gander;
setFace(gander);
}
public Roles() {
}
public String getFace() {
return face;
}
public void setFace(String gander) {
Random r = new Random();
if (gander == "男") {
int index = r.nextInt(boyFace.length);
this.face = boyFace[index];
} else if (gander == "女") {
int index = r.nextInt(girlFace.length);
this.face = girlFace[index];
} else this.face = "平平无奇";
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public int getBlood() {
return blood;
}
public void setBlood(int blood) {
this.blood = blood;
}
public String getGander() {
return gander;
}
public void setGander(String gander) {
this.gander = gander;
}
//定义行为
public void attack(Roles role) {
Random r = new Random();
int index = r.nextInt(attackDes.length);
String Kunfu = attackDes[index];
System.out.printf(Kunfu, this.getName(), role.getName());//随机使用招式
System.out.println();//换行
int damage = r.nextInt(0, 10);//随机生成伤害
int remainBlood = role.getBlood() - damage;//算出剩余血量
remainBlood = remainBlood > 0 ? remainBlood : 0;//判断剩余血量
role.setBlood(remainBlood);//修改剩余血量
//根据伤害使用描述语句
if (remainBlood == 0) System.out.printf(attackedDes[3], role.getName());
else if (damage == 0) System.out.printf(attackedDes[2], role.getName());
else if (damage <= 5 && damage > 0) System.out.printf(attackedDes[1], role.getName());
else if (damage > 5) System.out.printf(attackedDes[0], role.getName());
System.out.println();//换行
}
//展示人物面板
public void showRoleInformation() {
System.out.println("姓名:" + getName());
System.out.println("血量:" + getBlood());
System.out.println("性别:" + getGander());
System.out.println("外貌:" + getFace());
}
}
测试代码
public class RolesTest {
public static void main(String[] args) {
Roles r1=new Roles("坤哥",100,"男");
Roles r2=new Roles("小黑子",100,"沃尔玛购物袋");
r1.showRoleInformation();
r2.showRoleInformation();
while(true){
r1.attack(r2);
if(r2.getBlood()==0){
System.out.println(r1.getName()+"击败了"+r2.getName());
break;
}
r2.attack(r1);
if(r1.getBlood()==0){
System.out.println(r2.getName()+"击败了"+r1.getName());
break;
}
}
}
}
运行结果
姓名:坤哥
血量:100
性别:男
外貌:才华横溢
姓名:小黑子
血量:100
性别:沃尔玛购物袋
外貌:平平无奇
坤哥后退一步,一记“你最好是”识破了小黑子的招式并对其发出一道音波功击
小黑子被击飞数米,翻滚一圈才稳住身形
小黑子后退一步,一记“你最好是”识破了坤哥的招式并对其发出一道音波功击
坤哥被击飞数米,翻滚一圈才稳住身形
坤哥后退一步,一记“你最好是”识破了小黑子的招式并对其发出一道音波功击
小黑子识破意图,向右一闪毫发无伤
小黑子使用了练习了一坤年的“坤拳”,突然绕到身后,一拳击向坤哥
坤哥被击飞数米,翻滚一圈才稳住身形
坤哥后退一步,一记“你最好是”识破了小黑子的招式并对其发出一道音波功击
小黑子后退十步,一口鲜血喷出
小黑子使用了“律师函警告”,甩出一张律师函,律师函以雷霆之势冲向坤哥
坤哥后退十步,一口鲜血喷出
坤哥使用了练习了一坤年的“坤拳”,突然绕到身后,一拳击向小黑子
小黑子被击飞数米,翻滚一圈才稳住身形
小黑子使用了练习了一坤年的“坤拳”,突然绕到身后,一拳击向坤哥
坤哥识破意图,向右一闪毫发无伤
坤哥使用了坤坤的成名绝技“铁山靠”,以迅雷不及掩耳之势撞上了小黑子
小黑子被击飞数米,翻滚一圈才稳住身形
小黑子后退一步,一记“你最好是”识破了坤哥的招式并对其发出一道音波功击
坤哥被击飞数米,翻滚一圈才稳住身形
坤哥使用了“律师函警告”,甩出一张律师函,律师函以雷霆之势冲向小黑子
小黑子被击飞数米,翻滚一圈才稳住身形
小黑子使用了坤坤的成名绝技“铁山靠”,以迅雷不及掩耳之势撞上了坤哥
坤哥后退十步,一口鲜血喷出
坤哥使用了练习了一坤年的“坤拳”,突然绕到身后,一拳击向小黑子
小黑子被击飞数米,翻滚一圈才稳住身形
小黑子使用了坤坤的成名绝技“铁山靠”,以迅雷不及掩耳之势撞上了坤哥
坤哥被击飞数米,翻滚一圈才稳住身形
坤哥使用了练习了一坤年的“坤拳”,突然绕到身后,一拳击向小黑子
小黑子被击飞数米,翻滚一圈才稳住身形
小黑子后退一步,一记“你最好是”识破了坤哥的招式并对其发出一道音波功击
坤哥后退十步,一口鲜血喷出
坤哥使用了“律师函警告”,甩出一张律师函,律师函以雷霆之势冲向小黑子
小黑子识破意图,向右一闪毫发无伤
小黑子使用了“律师函警告”,甩出一张律师函,律师函以雷霆之势冲向坤哥
坤哥识破意图,向右一闪毫发无伤
坤哥使用了“律师函警告”,甩出一张律师函,律师函以雷霆之势冲向小黑子
小黑子后退十步,一口鲜血喷出
小黑子使用了“律师函警告”,甩出一张律师函,律师函以雷霆之势冲向坤哥
坤哥被击飞数米,翻滚一圈才稳住身形
坤哥使用了“律师函警告”,甩出一张律师函,律师函以雷霆之势冲向小黑子
小黑子被击飞数米,翻滚一圈才稳住身形
小黑子使用了练习了一坤年的“坤拳”,突然绕到身后,一拳击向坤哥
坤哥后退十步,一口鲜血喷出
坤哥使用了“律师函警告”,甩出一张律师函,律师函以雷霆之势冲向小黑子
小黑子后退十步,一口鲜血喷出
小黑子使用了“律师函警告”,甩出一张律师函,律师函以雷霆之势冲向坤哥
坤哥被击飞数米,翻滚一圈才稳住身形
坤哥使用了“律师函警告”,甩出一张律师函,律师函以雷霆之势冲向小黑子
小黑子被击飞数米,翻滚一圈才稳住身形
小黑子使用了坤坤的成名绝技“铁山靠”,以迅雷不及掩耳之势撞上了坤哥
坤哥识破意图,向右一闪毫发无伤
坤哥后退一步,一记“你最好是”识破了小黑子的招式并对其发出一道音波功击
小黑子后退十步,一口鲜血喷出
小黑子使用了“律师函警告”,甩出一张律师函,律师函以雷霆之势冲向坤哥
坤哥被击飞数米,翻滚一圈才稳住身形
坤哥使用了“律师函警告”,甩出一张律师函,律师函以雷霆之势冲向小黑子
小黑子被击飞数米,翻滚一圈才稳住身形
小黑子使用了练习了一坤年的“坤拳”,突然绕到身后,一拳击向坤哥
坤哥被击飞数米,翻滚一圈才稳住身形
坤哥后退一步,一记“你最好是”识破了小黑子的招式并对其发出一道音波功击
小黑子后退十步,一口鲜血喷出
小黑子使用了坤坤的成名绝技“铁山靠”,以迅雷不及掩耳之势撞上了坤哥
坤哥后退十步,一口鲜血喷出
坤哥使用了练习了一坤年的“坤拳”,突然绕到身后,一拳击向小黑子
小黑子被击飞数米,翻滚一圈才稳住身形
小黑子使用了坤坤的成名绝技“铁山靠”,以迅雷不及掩耳之势撞上了坤哥
坤哥后退十步,一口鲜血喷出
坤哥使用了“律师函警告”,甩出一张律师函,律师函以雷霆之势冲向小黑子
小黑子被击飞数米,翻滚一圈才稳住身形
小黑子后退一步,一记“你最好是”识破了坤哥的招式并对其发出一道音波功击
坤哥后退十步,一口鲜血喷出
坤哥使用了“律师函警告”,甩出一张律师函,律师函以雷霆之势冲向小黑子
小黑子被击飞数米,翻滚一圈才稳住身形
小黑子使用了坤坤的成名绝技“铁山靠”,以迅雷不及掩耳之势撞上了坤哥
坤哥后退十步,一口鲜血喷出
坤哥使用了练习了一坤年的“坤拳”,突然绕到身后,一拳击向小黑子
小黑子后退十步,一口鲜血喷出
小黑子使用了练习了一坤年的“坤拳”,突然绕到身后,一拳击向坤哥
坤哥后退十步,一口鲜血喷出
坤哥后退一步,一记“你最好是”识破了小黑子的招式并对其发出一道音波功击
小黑子被击飞数米,翻滚一圈才稳住身形
小黑子后退一步,一记“你最好是”识破了坤哥的招式并对其发出一道音波功击
坤哥后退十步,一口鲜血喷出
坤哥使用了练习了一坤年的“坤拳”,突然绕到身后,一拳击向小黑子
小黑子被击飞数米,翻滚一圈才稳住身形
小黑子使用了坤坤的成名绝技“铁山靠”,以迅雷不及掩耳之势撞上了坤哥
坤哥不慎中招,倒地不省人事
小黑子击败了坤哥