java版怪物攻击力的简单介绍

博主:adminadmin 2022-11-26 13:15:05 60

今天给各位分享java版怪物攻击力的知识,其中也会对进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

JAVA写一个怪物的类,类中有属性姓名,攻击力,有打人的方法。

//filename:Monster.java

public interface Monster {

    public String getName();

    public Integer getAttack();

    public String doAttack();

}

//filename:RedPig.java

public class RedPig implements Monster {

    public String getName() {

        return this.name;

    }

    public void setName(String name) {

        this.name = name;

    }

    public String getColor() {

        return this.color;

    }

    public void setColor(String color) {

        this.color = color;

    }

    public Integer getAttack() {

        return this.attack;

    }

    public void setAttack(Integer attack) {

        this.attack = attack;

    }

    public String doAttack() {

        String str = getName() + "猪是"

            + getColor() +"颜色的,打掉了人"

            + getAttack() +"点血";

        System.out.println(str);

        return str;

    }

    public RedPig() {}

    public RedPig(String name, String color,

            Integer attack) {

        this.name = name;

        this.color = color;

        this.attack = attack;

    }

    private String name;

    private String color;

    private Integer attack;

}

//filename:Snake.java

public class Snake implements Monster {

    public String getName() {

        return this.name;

    }

    public void setName(String name) {

        this.name = name;

    }

    public Integer getLegs() {

        return this.color;

    }

    public void setLegs(Integer color) {

        this.color = color;

    }

    public Integer getAttack() {

        return this.attack;

    }

    public void setAttack(Integer attack) {

        this.attack = attack;

    }

    public String doAttack() {

        String str = getName() + "蛇用"

            + getLegs() 

            +"条脚跑到人面前去打人,打掉了人"

            + getAttack() +"点血";

        System.out.println(str);

        return str;

    }

    public Snake() {}

    public Snake(String name, Integer legs, 

            Integer attack) {

        this.name = name;

        this.legs = legs;

        this.attack = attack;

    }

    private String name;

    private Integer legs;

    private Integer attack;

}

//filename:Test.java

public class Test {

    @Test // 用的junit 记得导包

    public void test() {

        String pname = "pigpig";

        String pcolor = "red";

        Integer pattack = 500;

        String pdoattack = pname + "猪是"

            + pcolor +"颜色的,打掉了人"

            + pattack +"点血";

        Monster m = new RedPig(name, pcolor, pattack);

        String doStrPig = m.doAttack();

        assertEquals(doStrPig, pdoattack);

        

        String sname = "snasnake";

        Integer slegs = 4;

        Integer sattack = 50000;

        String sdoattack = sname + "蛇用"

            + slegs 

            +"条脚跑到人面前去打人,打掉了人"

            + sdoattack +"点血";

        m = new Snake(sname, slegs, sattack);

        String doStrSnake = m.doAttack();

        assertEquals(doStrSnake, sdoattack);

    }

}

java 创建一个LOL中的英雄类和怪物类 初学者,求大神指点

static class Hero{ //英雄类

    private String name;//英雄的名字

    private Integer experience;//经验值

    private Integer level; //英雄等级

    private Integer attack; //攻击力

    public Hero(String name){ //新建英雄的构造方法

        this.name = name;//输入名字

        this.experience = 0;//初始经验值为0

        this.level = 1;//初始等级为1

        this.attack = 100;//初始攻击力为100

    }

    public void AttackMonster(Monster monster){ //攻击怪物的方法

        System.out.println("英雄"+this.name+"攻击"+monster.getName()+"造成"+this.attack+"点伤害");

        Integer hp = monster.getHealthPoint();//怪物被攻击前血量

        if (hp  this.attack) { //判断 如果怪物的血量大于攻击力

            hp = hp - this.attack;//怪物的血量 就减少攻击力的点数

        } else { //如果怪物的血量 等于或者小于攻击力

            hp = 0; //怪物血量为0 死亡

        }

        monster.setHealthPoint(hp); //改变怪物被攻击后的血量

        System.out.println("怪物剩余血量"+hp);

        if (hp == 0  this.level 18){ //如果怪物死亡 且英雄等级没有达到最高的18级

            System.out.println("英雄"+this.name+"的经验值增加"+monster.getExperience()+"点");

            this.experience = this.experience + monster.getExperience(); //英雄的经验值 增加

            if (this.experience = level * 100){ //设定 英雄升级所需经验值为 等级*100  如果英雄增加后的经验值达到升级条件

                this.experience = this.experience - level*100; //经验值减去当前升级需要的经验值 溢出的进入下一个等级经验

                this.level = this.level + 1;//英雄等级 +1

                this.attack = this.attack + 20; //设定 每升一级英雄攻击力 +20

                System.out.println("英雄"+this.name+"升级了,等级+1,攻击力+20,当前等级"+this.level+",当前攻击力"+this.attack);

            }

        }

    }

    //获取英雄名字的方法

    public String getName() {

        return name;

    }

    //改变英雄名字的方法

    public void setName(String name) {

        this.name = name;

    }

    //获取英雄当前经验值的方法

    public Integer getExperience() {

        return experience;

    }

    //改变英雄当前经验值的方法

    public void setExperience(Integer experience) {

        this.experience = experience;

    }

    //获取英雄当前等级的方法

    public Integer getLevel() {

        return level;

    }

    //改变英雄当前等级的方法

    public void setLevel(Integer level) {

        this.level = level;

    }

    //获取英雄当前攻击力的方法

    public Integer getAttack() {

        return attack;

    }

    //改变英雄当前攻击力的方法

    public void setAttack(Integer attack) {

        this.attack = attack;

    }

}

static class Monster{ //怪物类

    private String name; //怪物的名字

    private Integer healthPoint;//生命值

    private Integer level;//怪物等级

    private Integer experience; //怪物的经验值

    public Monster(String name,Integer level){ //创建怪物的构造方法 参数 名字,等级

        this.name = name; //初始化怪物的名字

        this.level = level; //初始化怪物的等级

        this.healthPoint = level * 1000; //初始化怪物的血量

        this.experience = level * 10;//初始化怪物的经验,英雄杀死后可获得,设定怪物经验值为等级*10

    }

    public Integer getHealthPoint() {

        return healthPoint;

    }

    public void setHealthPoint(Integer healthPoint) {

        this.healthPoint = healthPoint;

    }

    public Integer getLevel() {

        return level;

    }

    public void setLevel(Integer level) {

        this.level = level;

    }

    public String getName() {

        return name;

    }

    public void setName(String name) {

        this.name = name;

    }

    public Integer getExperience() {

        return experience;

    }

    public void setExperience(Integer experience) {

        this.experience = experience;

    }

}

public static void main(String[] args) throws Exception {

    Hero hero = new Hero("德玛西亚之力"); //新建一个英雄

    Monster monster = new Monster("小兵",1);//新建一个小兵

    do {

        hero.AttackMonster(monster); //攻击怪物

    }while (monster.getHealthPoint() != 0);  //如果怪物没死 一直攻击

}

我的世界所有怪和它们的攻击,血量,攻击范围

僵尸(僵尸村民):20滴血 10颗心 攻击力:僵尸的血:16–20  简单 2 普通 3 困难  血 11-15 简单3 普通4 困难6  血6-10 简单3 普通5 困难7 血1-5 简单4 普通6 困难9 僵尸没有攻击范围。

骷髅(小白):20滴血 10颗心 攻击力 弓:简单:2心 普通:3 心- 4 心困难:4 心 - 6心  剑:简单:2 心 普通:2 心困难:3 心 当他们看到你他们的攻击范围是无限的。。不好解释啊。

蜘蛛:16滴血 8心 攻击力:简单: 2 心 普通: 2 心 困难: 3 心 他们都是看到你才攻击你的 所以根本就没有攻击范围这个词。。。

洞穴蜘蛛:12滴血 6心 攻击力:简单: 1心 普通: 2   难: 3心   毒: 1心(周期约每 1.5 秒)

持续:7秒(普通);15秒(困难)

史莱姆:大:16心 小:4心 微小:1心 攻击力:大:4心 小:2心 微小:0 心(仅能推动)

爬行者:20 滴血   10心 攻击力:根据距离变化   最大伤害:普通:24.5心 被雷击中后:48.5心

蠹虫:8心 攻击力:1

女巫:26滴血 13心(带恢复效果)攻击力:简单:4 () 普通:7 () 困难:10 () 毒: 1 () (周期约每 1.5 秒) 持续:7秒(普通);15秒(困难)

蜘蛛骑士:骷髅:20滴血 10颗心 蜘蛛: 16滴血 8心 直接接触: 3心

鸡骑士:小僵尸:20滴血 10血 鸡:4滴血 2心 僵尸的血16–20   简单2 普通3 困难4 血11-15 简单3 普通4 困难6 血6-10 简单3 普通5 困难7 血1-5 简单4 普通6 困难9

凋零骷髅:20滴血 10心 攻击力:简单:5心普通:8心困难:12 心 攻击都附有凋零状态。

烈焰人:20滴血 10心 火球攻击 简单:4心 普通:6心 困难:8心 接触:简单:3心 普通:5心 困难:7心

恶魂:20滴血 10心 根据距离变化 最大伤害:8.5心

岩浆怪:巨型: 16心 中型: 4心 小型: 1心 护甲:巨型: 12心 中型: 6心 小型: 3心 攻击力:

巨型: 6心 中型: 4心 小型: 2心

末影人:40滴血 20心 攻击力:简单:2心 普通:3.5心 困难:5心

末影龙:生命值100心 200滴血 攻击力 简单:6心 普通:10心 困难:15心

凋零:(300 ( × 150

关于java版怪物攻击力和的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-11-26,除非注明,否则均为首码项目网原创文章,转载请注明出处。