展开全部

public class Player {

// 模拟交战

public static void Engage(){

62616964757a686964616fe58685e5aeb931333337383932

System.out.println("战斗开始!");

new Player("悟空",200,50,10).Attack(new Player("八戒",300,40,6));

System.out.println("战斗结束!");

}

// 名字

private String name;

// 生命值

private int hp;

// 伤害

private int damage;

// 护甲

private int armor;

public Player(String name,int hp,int damage,int armor){

this.name = name;

this.hp = hp;

this.damage = damage;

this.armor = armor;

}

public String GetName(){

return this.name;

}

// 进攻

public void Attack(Player target){

System.out.println(String.format("%1$s正在攻击%2$s!",this.GetName(),target.GetName()));

target.HurtFrom(this, this.damage);

}

// 反击

public void CounterAttack(Player enemy){

System.out.println(String.format("%1$s正在反击%2$s!",this.GetName(),enemy.GetName()));

this.Attack(enemy);

}

// 计算伤害

public void HurtFrom(Player enemy,int damage){

int realDamage = damage - this.armor;

this.hp = this.hp - realDamage;

System.out.println(String.format("%1$s受到%2$s的攻击,伤害%3$s,真实伤害%4$s,当前血量%5$s!",this.GetName(),enemy.GetName(),damage,realDamage,this.hp));

if(this.hp<50)

System.out.println(String.format("哈哈,%1$s快死了!", this.GetName()));

if(this.hp

System.out.println(String.format("%1$s已死亡!", this.GetName()));

return;

}

this.CounterAttack(enemy);

}

}

public class Application {

public static void main(String[] args) {

// 模拟交战

Player.Engage();

}

}

// 战斗记录

/*

战斗开始!

悟空正在攻击八戒!

八戒受到悟空的攻击,伤害50,真实伤害44,当前血量256!

八戒正在反击悟空!

八戒正在攻击悟空!

悟空受到八戒的攻击,伤害40,真实伤害30,当前血量170!

悟空正在反击八戒!

悟空正在攻击八戒!

八戒受到悟空的攻击,伤害50,真实伤害44,当前血量212!

八戒正在反击悟空!

八戒正在攻击悟空!

悟空受到八戒的攻击,伤害40,真实伤害30,当前血量140!

悟空正在反击八戒!

悟空正在攻击八戒!

八戒受到悟空的攻击,伤害50,真实伤害44,当前血量168!

八戒正在反击悟空!

八戒正在攻击悟空!

悟空受到八戒的攻击,伤害40,真实伤害30,当前血量110!

悟空正在反击八戒!

悟空正在攻击八戒!

八戒受到悟空的攻击,伤害50,真实伤害44,当前血量124!

八戒正在反击悟空!

八戒正在攻击悟空!

悟空受到八戒的攻击,伤害40,真实伤害30,当前血量80!

悟空正在反击八戒!

悟空正在攻击八戒!

八戒受到悟空的攻击,伤害50,真实伤害44,当前血量80!

八戒正在反击悟空!

八戒正在攻击悟空!

悟空受到八戒的攻击,伤害40,真实伤害30,当前血量50!

悟空正在反击八戒!

悟空正在攻击八戒!

八戒受到悟空的攻击,伤害50,真实伤害44,当前血量36!

哈哈,八戒快死了!

八戒正在反击悟空!

八戒正在攻击悟空!

悟空受到八戒的攻击,伤害40,真实伤害30,当前血量20!

哈哈,悟空快死了!

悟空正在反击八戒!

悟空正在攻击八戒!

八戒受到悟空的攻击,伤害50,真实伤害44,当前血量-8!

哈哈,八戒快死了!

八戒已死亡!

战斗结束!

*/

java血条_java编写两玩家对打程序,需要生命值,攻击和防御,生命为0则死亡。...相关推荐

  1. java 定时删除_Java编写定时删除文件程序

    Java编写定时删除文件程序 /*Java教程:http://www.javaweb.cc*/ import java.io.File; import java.util.Calendar; impo ...

  2. java钱币换算_Java编写钱币转换为大写程序

    import java.text.DecimalFormat; public class ChangeMonney { private static final String[] STR_UNIT = ...

  3. java血条_TankWar 单机(JAVA版)版本2.3~版本2.4 为坦克画血条

    运行结果: 为了在坦克上方画血条 .血条首先要有坐标x,y  宽和高width和height 血量的多少life也要有. 所以新建类Life要有这些参数 Life类如下: package tankWa ...

  4. java打印扑克牌_JAVA入门第三季-简易扑克牌程序-个人编写-源代码(含截图)

    整体思路 创建Card类,定义单张扑克的属性(点数,花色),行为(比较大小),以及比较大小的规则: 创建Poker类,定义一副扑克牌,采用List集合框架: 创建Player类,定义玩家属性(id,名 ...

  5. java制造病毒_java编写病毒的可行性分析

    java编写病毒的可行性分析 最近心情十分郁闷,查阅一些病毒的资料消遣一下,居然发现这样的论调讲 java语言不可能编写病毒,在此特地反驳一下. 1 可执行 论调1:java需要依赖jre,无法在无j ...

  6. java 月份间隔_java计算两个日期之间相隔的月份(向下取整)

    最近需求里面有个需要计算两个日期之间相隔的月份,写起来还挺繁琐,需要将各种情况都要考虑到,写了一个作为以后自己的工具吧. //获取哪一天 public static int getDay(Date d ...

  7. java 加法 溢出_java实现两个大数相加,可能出现溢出错误

    java实现两个大数相加,可能存在溢出,如123456789 + 987654321 返回 1111111110 用BigInteger 三行就完事啊. 不用这个类也可以实现 public BigIn ...

  8. java 间隔分钟_java 计算两个 日期时间 相间隔多少天小时分钟 等

    1.时间转换data默认有toString() 输出格林威治时间,比如说Date date = new Date(); String toStr = date.toString(); 输出的结果类似于 ...

  9. java文件比较_Java 比较两个任意文件是否相同

    一.比较规则 先比较两个文件的长度,如果不一样则文件肯定不一样. 否则将文件读取出来,一个字节一个字节的比较二者内容是否相同. import java.io.*; public class FileC ...

  10. java保留小数_java保留两位小数4种方法

    java保留两位小数4种方法 方法一:String的format方法(推荐) double f = 111231.5585; System.out.println(String.format(&quo ...

最新文章

  1. 参加java培训,要避免这几个误区!
  2. Visual Studio中断NPM套件库服务
  3. python输出杨辉三角啊二维数组_Java输出杨辉三角形(使用二维数组)
  4. 商城项目使用到的主要技术分析
  5. android 回调函数一:基本概念
  6. ORACLE 执行计划2
  7. Spring AOP 本质
  8. ios 简书 获取通讯录信息_iOS-授权获取通讯录
  9. jeesite中activiti中的流程表梳理
  10. arcgis for javascript ArcGISDynamicMapServiceLayer 过滤图层点
  11. 单位启用人脸识别考勤
  12. 第三方组件曝多个严重漏洞,飞利浦 Vue PACS 医学成像系统受影响
  13. IOS小工具以及精彩的博客
  14. c++编程求解二元二次方程组_二元一次方程组及其解法
  15. 中间件学习——J2EE中间件四步曲
  16. OLED屏幕应用实验
  17. Hive窗口函数之preceding and following
  18. 十三、学习分布式爬虫之字体反爬
  19. python毕业设计 深度学习抽烟行为检测系统 - yolo opencv
  20. 《Composing Programs》学习笔记(0)目录(关键词:软件工程)

热门文章

  1. JS基础知识(十一)DOM0和DOM2级事件
  2. Odoo 页面-‘动作’-官方文档解释
  3. mysql数据库崩溃时事务恢复机制_mysql数据库 InnoDB崩溃恢复机制总结
  4. 解决RaspberryPi刷OpenWrt做硬路由时LAN口无网络问题
  5. gitlab的使用(详细版)
  6. HDUOJ 2121 Ice_cream’s world II(不定根的最小树形图-好题)
  7. 电商第一站——大学生创业几率最大的几个行业~!
  8. Linux中有关用户管理命令以及相关介绍
  9. 力扣 824山羊拉丁文
  10. 计算机基础知识的论文,初级计算机论文范文