小小游戏之——英雄联盟
影流之主大战暗裔剑魔
FIGHT
Who is the winner ?
1 package com.bingbing.blogs;
2
3 public class Hero {
4
5 private int hp;// 英雄的生命值
6 private int defence;// 每回合的随机防御加成
7 private int attac;// 每回合的随机伤害加成
8 private String name;// 英雄名字
9
10 // 构造方法
11 public Hero(int hp, int defence, int attac, String name) {
12 this.hp = hp;
13 this.defence = defence;
14 this.attac = attac;
15 this.name = name;
16 }
17
18 // 攻击方法
19 public void att(Hero hero) {
20 this.attac = (int) (Math.random() * this.attac) + 40;
21 if (this.attac < 60) {
22 System.out.println(this.name + "说:才打出" + this.attac
23 + "点伤害,没办法打野老是来gank装备太差");
24 }
25 System.out.println(this.name + "砍下一刀," + "伤害为:" + this.attac);
26 hero.defend(this);
27 }
28
29 // 防御方法
30 public void defend(Hero hero) {
31 this.defence = (int) (Math.random() * this.defence) + 40;
32 System.out.println(this.name + "的当前防御力为" + this.defence);
33 int temp = hero.attac - this.defence;
34 if (temp > 55) {
35 System.out.println(this.name + "说:这个" + hero.name + "打人真疼,老子想挂机!");
36 }
37 if (temp <= 0) {
38 temp = 0;
39 System.out.println(this.name + "通过走位躲过一次来自" + hero.name + "的攻击");
40 }
41 if ((this.hp -= temp) <= 0) {
42 this.hp = 0;
43 }
44 System.out.println(this.name + "血量损失" + temp + "剩余血量" + this.hp + "\n");
45
46 }
47
48 // 判断英雄是否成为烈士
49 public boolean isAlive() {
50 if (hp == 0) {
51 System.out.println(this.name + "说:mlgb死得真亏,忘了交闪现了");
52 return false;
53 }
54 return true;
55 }
56 }
///////////////////////////////////////////////////////////////////////////////////////
1 package com.bingbing.blogs; 2 3 public class PlayGame { 4 5 public static void main(String[] args) { 6 7 Hero hero1 = new Hero(3000, 200, 150, "暗裔剑魔"); 8 Hero hero2 = new Hero(2500, 150, 230, "影流之主"); 9 10 while (hero1.isAlive() && hero2.isAlive()) { 11 12 hero1.att(hero2); 13 14 if (hero2.isAlive()) { 15 16 hero2.att(hero1); 17 18 } else { 19 // 防止重复判断hero2造成两次打印"影流之主说:mlgb死得真亏,忘了交闪现了" 20 // 因为如果不return,while的条件还会再执行一次 21 return; 22 } 23 } 24 } 25 }
/////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////
暗裔剑魔砍下一刀,伤害为:90
影流之主的当前防御力为185
影流之主通过走位躲过一次来自暗裔剑魔的攻击
影流之主血量损失0剩余血量2500
影流之主砍下一刀,伤害为:200
暗裔剑魔的当前防御力为108
暗裔剑魔说:这个影流之主打人真疼,老子想挂机!
暗裔剑魔血量损失92剩余血量2908
暗裔剑魔砍下一刀,伤害为:107
影流之主的当前防御力为185
影流之主通过走位躲过一次来自暗裔剑魔的攻击
影流之主血量损失0剩余血量2500
影流之主说:才打出41点伤害,没办法打野老是来gank装备太差
影流之主砍下一刀,伤害为:41
暗裔剑魔的当前防御力为62
暗裔剑魔通过走位躲过一次来自影流之主的攻击
暗裔剑魔血量损失0剩余血量2908
暗裔剑魔砍下一刀,伤害为:105
影流之主的当前防御力为146
影流之主通过走位躲过一次来自暗裔剑魔的攻击
影流之主血量损失0剩余血量2500
影流之主砍下一刀,伤害为:77
暗裔剑魔的当前防御力为72
暗裔剑魔血量损失5剩余血量2903
暗裔剑魔砍下一刀,伤害为:61
影流之主的当前防御力为108
影流之主通过走位躲过一次来自暗裔剑魔的攻击
影流之主血量损失0剩余血量2500
影流之主说:才打出41点伤害,没办法打野老是来gank装备太差
影流之主砍下一刀,伤害为:41
暗裔剑魔的当前防御力为50
暗裔剑魔通过走位躲过一次来自影流之主的攻击
暗裔剑魔血量损失0剩余血量2903
暗裔剑魔砍下一刀,伤害为:91
影流之主的当前防御力为112
影流之主通过走位躲过一次来自暗裔剑魔的攻击
影流之主血量损失0剩余血量2500
影流之主砍下一刀,伤害为:75
暗裔剑魔的当前防御力为57
暗裔剑魔血量损失18剩余血量2885
暗裔剑魔砍下一刀,伤害为:76
影流之主的当前防御力为81
影流之主通过走位躲过一次来自暗裔剑魔的攻击
影流之主血量损失0剩余血量2500
影流之主说:才打出49点伤害,没办法打野老是来gank装备太差
影流之主砍下一刀,伤害为:49
暗裔剑魔的当前防御力为74
暗裔剑魔通过走位躲过一次来自影流之主的攻击
暗裔剑魔血量损失0剩余血量2885
暗裔剑魔砍下一刀,伤害为:79
影流之主的当前防御力为48
影流之主血量损失31剩余血量2469
影流之主砍下一刀,伤害为:79
暗裔剑魔的当前防御力为52
暗裔剑魔血量损失27剩余血量2858
暗裔剑魔砍下一刀,伤害为:102
影流之主的当前防御力为56
影流之主血量损失46剩余血量2423
影流之主说:才打出48点伤害,没办法打野老是来gank装备太差
影流之主砍下一刀,伤害为:48
暗裔剑魔的当前防御力为50
暗裔剑魔通过走位躲过一次来自影流之主的攻击
暗裔剑魔血量损失0剩余血量2858
........//省略部分战斗过程,真是一场激烈的持久战
影流之主说:才打出52点伤害,没办法打野老是来gank装备太差
影流之主砍下一刀,伤害为:52
暗裔剑魔的当前防御力为95
暗裔剑魔通过走位躲过一次来自影流之主的攻击
暗裔剑魔血量损失0剩余血量751
暗裔剑魔砍下一刀,伤害为:150
影流之主的当前防御力为51
影流之主说:这个暗裔剑魔打人真疼,老子想挂机!
影流之主血量损失99剩余血量0
影流之主说:mlgb死得真亏,忘了交闪现了