当前位置: 首页 > article >正文

回合制文字版格斗游戏(类的运用)

//一创建java文件1,命名为playGame

import java.util.Random;

public class playGame {
    //格斗游戏,每个游戏角色的姓名,血量,都不相同,在选定人物的时候(new对象的时候),这些信息就应该被确定下来
    //eg:姓名:乔峰 血量:100        姓名:鸠磨章 血量:100
    private String name;
    private int blood;
    public playGame()
    {
    }

    public playGame(String name, int blood) {
        this.name = name;
        this.blood = blood;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getBlood() {
        return blood;
    }

    public void setBlood(int blood) {
        this.blood = blood;
    }
    //定义攻击别人
    //谁攻击谁 r1攻击r2 r1调用者 攻击参数r2
    public void attack(playGame role)
    {
        //造成的伤害
        Random r=new Random();
        int hurt=r.nextInt(20)+1;
        //修改剩余血量  remainBoold(剩余血量)
        int remainBoold=role.getBlood()-hurt;
        //当血量为负数时,修整为0
        remainBoold=remainBoold<0?0:remainBoold;
        //修改role的血量
        role.setBlood(remainBoold);
        System.out.println(this.getName()+"举起拳头打了"+role.getName()+"一下," +
                "造成了"+hurt+"伤害,"+role.getName()+"还剩"+remainBoold+"多少血量");
    }
}

//二创建java文件2,命名为GameTest

//主要用来运行类playGame

public class GameTest {
    public static void main(String[] args) {


        //创建第一个角色
        playGame r1 = new playGame("乔峰", 100);
        playGame r2 = new playGame("鸠磨章", 100);
        //开始决斗,回合制
        while (true)
        {//r1开始攻击r2
            r1.attack(r2);
            //判断r2的剩余血量
            if (r2.getBlood() == 0) {
                System.out.println(r1.getName() + "K.O了" + r2.getName());
                break;
            }
            r2.attack(r1);
            if(r1.getBlood()==0)
            {
                System.out.println(r2.getName() + "K.O了" + r1.getName());
           break;
            }
        }
    }
}

http://www.kler.cn/a/558924.html

相关文章:

  • 复刻Dummy机械臂保姆教程
  • 二、Spring Framework基础:IoC(控制反转)和DI(依赖注入)
  • 正则表达式常用记录
  • Mac (M1) 本地使用DockerDesktop 安装Kafka,SpringBoot整合Kafka
  • 2024大模型技术全景解构:从开源生态到商业落地的深度博弈
  • 【Java虚拟机】垃圾回收器
  • 【MySQL 一 数据库基础】深入解析 MySQL 的索引(3)
  • 智能交通系统(Intelligent Transportation Systems):智慧城市中的交通革新
  • 光明谷推出AT指令版本的蓝牙音箱SOC 开启便捷智能音频开发新体验
  • 图片爬取案例
  • 基于ffmpeg+openGL ES实现的视频编辑工具-添加滤镜(七)
  • 第二十四周:OpenPose:使用部分亲和场的实时多人2D姿态估计
  • java中ArrayList用法
  • 深度学习入门:从零开始理解神经网络
  • DeepSeek使用从入门到精通
  • 研发管理APQP软件系统:助力制造业数字化转型与高效研发管理——汽车电子、半导体等高端制造行业
  • 便携式动平衡仪Qt应用层详细设计方案
  • 第N6周:中文文本分类-Pytorch实现
  • MFC中CString的Format、与XML中的XML_SETTEXT格式化注意
  • 安全生产月安全知识竞赛主持稿串词