这是我第一次写代码类的博客,也是我上学的第一个项目,希望各位朋友们能给小的点个赞什么的,有什么问题的欢迎指正 。。。代码随意使用,只求能在用的时候给个赞。。。

打怪兽小游戏

GS类
public class GS {int curLife;int attack;    //攻击力int defend;  //防御int maxLife;String type; boolean isLive=true;int agile;          //敏捷int hideRate;  public GS(int Gs){switch(Gs){case 1: type = "怪兽祖先";maxLife = 80; curLife = 80;attack = 25;defend = 15;agile = 30;hideRate = 80;   break;case 2: type = "怪兽霸主";maxLife = 80; curLife = 60;attack = 28;defend = 10;agile = 40;hideRate = 70;   break;case 3: type = "怪兽之王";maxLife = 80; curLife = 40;attack = 10;defend = 5;agile = 30;hideRate = 60;   break;case 4: type = "怪兽"; maxLife = 80; curLife = 60;attack = 20; defend = 8; agile = 30;hideRate = 60;}}public void injured(WJ wj){   //掉血//增加躲避的判断if(process.hidden(this.agile,this.hideRate)){System.out.println(""+type+":你砍我啊!qwq");show();kill(wj);return;}System.out.println(""+type+"又被砍了一刀"+"");int lostLife = process.calLostLife(wj.attack, this.defend);curLife-=lostLife;if(curLife<0){curLife=0;died(wj);return;}show();kill(wj);}public void died(WJ wj){this.isLive = false;System.out.println(""+type+"被砍的快凉了"+""+isLive);wj.expAdd(this);    //this}public void kill(WJ wj){if(isLive){System.out.println(""+type+"冲上去咬了"+wj.name+"一大口"+"");wj.injured(this);}else{System.out.println(""+type+"已经被砍的四分五裂了"+"");}}public void show(){System.out.println(""+type+"  "+"生命值"+curLife+"  "+"生命状态"+isLive+"");}}
WJ(玩家)类
public class WJ {String name;int maxLife;int curLife;boolean isLive;String weapon;int attack;         //攻击力int defend;         //防御力int level;int exp;int agile;int hideRate;public WJ(String name,String weapon){this.name = name;this.weapon = weapon;maxLife = 100;curLife = maxLife;isLive = true;attack = 25;defend = 8;level = 1;exp = 0;agile = 35;hideRate = 60; }public void fight(GS gs){     //战斗if(gs.isLive){if(isLive){System.out.println(""+name+"无情的拿起"+weapon+"杀向"+gs.type+"");gs.injured(this);}else{System.out.println(""+"我们的主角"+name+"已经牺牲了"+"");}}else{System.out.println("拜托啊!这个怪兽已经被你打死啦!");}}public void injured(GS gs){   //掉血//增加躲避的判断if(gs.type == "怪兽"){if(process.hidden(this.agile,this.hideRate)){System.out.println(""+name+":小样,打不到我");show();fight(gs);return;}System.out.println(""+name+":疼死了,打死你个龟孙"+"");int lostLife = process.calLostLife(gs.attack, this.defend);curLife-=lostLife;if(curLife<0){curLife=0;died();return;}gs.curLife+=this.curLife/10;show();fight(gs);}else{if(process.hidden(this.agile,this.hideRate)){System.out.println(""+name+":小样,打不到我");show();fight(gs);return;}System.out.println(""+name+":疼死了,打死你个龟孙"+"");int lostLife = process.calLostLife(gs.attack, this.defend);curLife-=lostLife;if(curLife<0){curLife=0;died();return;}show();fight(gs);}}public void expAdd(GS gs){this.exp+=gs.maxLife;int needExp = 0;for(int i=1;i<=level;i++){needExp+=i*50;}if(exp>=needExp){upgrade();}}public void upgrade(){attack+=4;defend+=3;maxLife+=20;curLife+=maxLife;level++;System.out.println("--------------------------分割线-------------------------");System.out.println("系统提示:升级啦,目前等级"+level+"血量"+curLife+"攻击力"+attack+"防御力"+defend);}public void died(){System.out.println(""+name+"被丧尸咬死了"+"");isLive = false;show();}public void show(){System.out.println(""+name+"  "+"生命值:"+curLife+"  "+"生命状态"+isLive+"   "+"等级"+level+"" +"");}}
process类
public class process {public static int randomaRange(int start,int end){return (int)(Math.random()*(end-start)+start);}public static boolean hidden(int agile,int hideRate){int sucRate = agile*hideRate/100;int ran = process.randomaRange(1,101);if(ran<sucRate){return true;}return false;}static int lostBasicLife = 10;public static int calLostLife(int attack,int defend){int lostLife = attack-defend;int rel = 0;if(lostLife<=0){rel = lostBasicLife;}else{rel = (lostLife+lostBasicLife);}return rel;}
}
Start类
public class Start {WJ wj;GS gs1,gs2,gs3,gs4,gs5;public Start(){wj = new WJ("凹凸曼","杀猪刀");gs1 = new GS(4);gs2 = new GS(3);gs3 = new GS(3);gs4 = new GS(2);gs5 = new GS(4);}public void start(){while(wj.isLive && (gs1.isLive || gs2.isLive || gs3.isLive || gs4.isLive || gs5.isLive)){System.out.println("对手寻找中"); /**让程序休息3秒钟**/try{Thread.sleep(3000);         }catch(Exception e){}  int ran = process.randomaRange(1,6);     // 产生随机数,随机寻找僵尸进行战斗switch(ran){case 1: wj.fight(gs1);   break;case 2: wj.fight(gs2);   break;case 3: wj.fight(gs3);   break;case 4: wj.fight(gs4);   break;case 5: wj.fight(gs5);   break;default:System.out.println("拜托啊!你要找个正常一点的战斗");   break;   }}end();}public void end(){if(wj.isLive == true){System.out.println("恭喜你!过关啦");}else{System.out.println("哈哈哈哈哈哈,被怪兽打死了吧");}}}
game类(测试类)
public class game {public static void main(String[] args) {// TODO Auto-generated method stubnew Start().start();}}

卑微小张再次求赞。。。。

经典打怪兽小游戏分析相关推荐

  1. Unity引擎Fps打怪兽小游戏

    自制了一款Unity的枪战打怪兽小游戏 游戏演示视频已上传至B站:https://www.bilibili.com/video/BV1wt4y187ic 一些截图展示: 可以找博主索要源码~

  2. Java打怪兽小游戏

    要求如下: 基本要求: 1.角色可以怪物实施攻击,一次攻击后,怪物损失部分HealthPoint,当HealthPoint损失完后,怪物死亡. 2.角色可装备不同武器:木剑.铁剑和魔剑三种. 3.角色 ...

  3. 扫雷游戏是一款十分经典的单机小游戏。 问题 H: 扫雷游戏

    题目描述 扫雷游戏是一款十分经典的单机小游戏.在n行m列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格).玩家翻开一个非地雷格时,该格将会出现一个数字--提示周围格子中有 ...

  4. Java实现的经典坦克大战小游戏

    Java实现的经典坦克大战小游戏 先看一下游戏结构: 有点多,没有耐心的可以不用看,这里先给出链接吧! 云链接:经典坦克大战 提取码:s9ai 这里就不介绍功能了,贴了一张游戏运行的截图,具体的功能自 ...

  5. java太阳系_Java太阳系小游戏分析和源代码

    Java太阳系小游戏分析和源代码 -20150809 近期看了面向对象的一些知识.然后跟着老师的解说做了一个太阳系各行星绕太阳转的小游戏,来练习巩固一下近期学的知识: 用到知识点:类的继承.方法的重载 ...

  6. Python奥特曼打怪兽射击游戏(基于海龟画图创作的作品,来自Python创意编程100例sprites篇_Python精灵模块)

    相信这竟然是Python用海龟画图制作的作品吗? sprites模块就是用python的turtle模块开发的!所以本作品仍属于Python海龟画图作品 """奥特曼打怪 ...

  7. Python奥特曼打怪兽射击游戏,基于海龟画图创作的作品

    相信这竟然是Python用海龟画图制作的作品吗? sprites模块就是用python的turtle模块开发的!所以本作品仍属于Python海龟画图作品 """奥特曼打怪 ...

  8. html实现经典坦克大战小游戏

    文章目录 1.设计来源 1.1 游戏主界面 1.2 游戏界面 2.效果和源码 2.1 动态效果 2.2 源代码 源码下载 作者:xcLeigh 文章地址:https://blog.csdn.net/w ...

  9. html实现经典打方块小游戏

    文章目录 1.设计来源 1.1 主界面 1.2 游戏界面 1.3 游戏结束界面 2.效果和源码 2.1 动态效果 2.2 源代码 源码下载 作者:xcLeigh 文章地址:https://blog.c ...

最新文章

  1. 被讨厌的勇气(讨厌我的人多了,你算老几)
  2. (SpringMVC)数据处理及跳转
  3. oracle函数 trunc(x[,y])
  4. 基础网络爬虫(Web crawler)相关技术浅析
  5. vue中使用v-on绑定事件中,获取$event.currentTarget,日志打印为null
  6. 全国计算机等级考试 备考,全国计算机等级考试经验:如何调整备考心态
  7. 架构师之路 扩充字段_扩大您作为设计师的业务影响力的四个基础
  8. HDU 6343.Problem L. Graph Theory Homework-数学 (2018 Multi-University Training Contest 4 1012)
  9. Java的GUI学习九(列出指定目录内容)
  10. python定时任务_Python 定时任务的实现方式
  11. java后台截图_Java+Selenium实现后台截图网页,可运行在树莓派上
  12. Android 颜色对照表
  13. 手机百度脑图app_百度脑图下载-百度脑图app手机安卓版下载-沧浪手游
  14. 快手发布二季度及中期业绩:Q2收入191亿元 同比劲增48.8%
  15. 少侠1216资源共享
  16. Hazelcast源码剖析之Eviction
  17. 聚焦新零售 阿里云重磅推出零售云
  18. 商业需求文档该如何去写?
  19. html5 2种布局模式
  20. 如何自学UI设计?如何成为UI设计师?

热门文章

  1. 发现内网存活主机的各种姿势
  2. android epg界面实现,一种EPG引擎及页面解析方法与流程
  3. 从零开始学习音视频编程技术(二十一) 录屏软件开发之最终完善
  4. kad连接不上解决方法
  5. java简单atm_Java实现简单银行ATM功能
  6. 黑客入侵你的电脑,你怕吗?
  7. 电子词典软件也能跨平台--介绍我创造的LAVA
  8. 数字系统的测试与可测试设计(DFT)
  9. 布隆过滤器在区块链中的应用
  10. sql 导出,解决sheet表大小限制