慢吞云雾缓吐愁 发表于 2025-2-24 14:55:53

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

//一创建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;
            }
      }
    }
}

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 回合制文字版格斗游戏(类的运用)