第26天

文字版格斗游戏

 代码实现

对象类

package 文字格斗游戏;

import java.util.Random;

public class Role {
    private String name;
    private int 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;
    }

    public Role() {
    }

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

//role受到了攻击
    public void attack(Role role) {
        // 定义类对象一次出手所造成的伤害,我们定义每次所造成的伤害在15~20之间。
        Random r = new Random();
        int hurt = r.nextInt(6) + 15;
        // 定义一个变量保存role受到攻击后所剩余的血量。
        int remain = role.getBlood() - hurt;
        // 判断血量是否还足够支持战斗。
        remain = remain < 0 ? 0 : remain;
        // 修改对象中此时的剩余血量。
        role.setBlood(remain);
        // 打印出我们所需要的语音播报
        System.out.println(this.name + "对" + role.getName() + "出拳,对" + role.getName() + "造成了" + hurt + "点伤害,此时倒霉的"
                + role.getName() + "还剩余" + remain + "点血量。");
    }
}

main代码实现

package 文字格斗游戏;

public class RoleTest {
    public static void main(String[] args) {
        Role r1 = new Role("山鸡哥", 100);
        Role r2 = new Role("卖瓜的刘华强", 100);
        while (true) {
            r1.attack(r2);
            // 判断是否胜利
            if (r2.getBlood() == 0) {
                System.out.println(r1.getName() + "获胜,打败了" + r2.getName());
                break;
            }
            r2.attack(r1);
            // 判断是否胜利
            if (r1.getBlood() == 0) {
                System.out.println(r2.getName() + "获胜,打败了" + r1.getName());
                break;
            }
        }
    }
}

结果

山鸡哥对卖瓜的刘华强出拳,对卖瓜的刘华强造成了18点伤害,此时倒霉的卖瓜的刘华强还剩余82点血量。
卖瓜的刘华强对山鸡哥出拳,对山鸡哥造成了18点伤害,此时倒霉的山鸡哥还剩余82点血量。
山鸡哥对卖瓜的刘华强出拳,对卖瓜的刘华强造成了20点伤害,此时倒霉的卖瓜的刘华强还剩余62点血量。
卖瓜的刘华强对山鸡哥出拳,对山鸡哥造成了18点伤害,此时倒霉的山鸡哥还剩余64点血量。
山鸡哥对卖瓜的刘华强出拳,对卖瓜的刘华强造成了19点伤害,此时倒霉的卖瓜的刘华强还剩余43点血量。
卖瓜的刘华强对山鸡哥出拳,对山鸡哥造成了18点伤害,此时倒霉的山鸡哥还剩余46点血量。
山鸡哥对卖瓜的刘华强出拳,对卖瓜的刘华强造成了17点伤害,此时倒霉的卖瓜的刘华强还剩余26点血量。
卖瓜的刘华强对山鸡哥出拳,对山鸡哥造成了16点伤害,此时倒霉的山鸡哥还剩余30点血量。
山鸡哥对卖瓜的刘华强出拳,对卖瓜的刘华强造成了17点伤害,此时倒霉的卖瓜的刘华强还剩余9点血量。
卖瓜的刘华强对山鸡哥出拳,对山鸡哥造成了16点伤害,此时倒霉的山鸡哥还剩余14点血量。
山鸡哥对卖瓜的刘华强出拳,对卖瓜的刘华强造成了19点伤害,此时倒霉的卖瓜的刘华强还剩余0点血量。
山鸡哥获胜,打败了卖瓜的刘华强

 

posted @ 2023-07-27 20:57  七安。  阅读(8)  评论(0编辑  收藏  举报