我的编程空间,编程开发者的网络收藏夹
学习永远不晚

如何使用java实现王者荣耀的皮肤和英雄技能

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

如何使用java实现王者荣耀的皮肤和英雄技能

这篇文章主要介绍如何使用java实现王者荣耀的皮肤和英雄技能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

一、前期准备

我们需要创建一个Menu包,来定义一些操作的界面;

如何使用java实现王者荣耀的皮肤和英雄技能

Menulogin是游戏选择英雄皮肤,铭文和进入游戏的界面;代码简单易懂,我就不解释了

package Menu;import java.util.Scanner;public class Menulogin {    public  static  int Menulogin(){        System.out.println("*****备战选择*****");        System.out.println("按1 :选择皮肤");        System.out.println("按2 :选择铭文");        System.out.println("按3 :进入游戏");        System.out.println("*****************");        Scanner sc = new Scanner(System.in);        int res = sc.nextInt();        switch (res){            case 1: return 1;            case 2: return 2;            case 3: return 3;            default:                System.out.println("参数错误,尝试重新连接"); Menulogin();break;        }        return 0;    }}

Menuable是英雄技能释放界面

package Menu;import java.util.Scanner;public class Menuable {    //技能菜单    public  static  int Menuable(){        System.out.println("***************");        System.out.println("按1 :技能一(控制)");        System.out.println("按2 :技能二(伤害)");        System.out.println("按3 :技能三(控制)");        System.out.println("按0 :自动平A");        System.out.println("按10 :攻击野怪");        System.out.println("按11 :购买装备");        System.out.println("***************");        Scanner sc = new Scanner(System.in);        int res = sc.nextInt();        switch (res){            case 1: return 1;            case 2: return 2;            case 3: return 3;            case 0: return 0;            case 10: return 10;            case 11: return 11;            default:return 4;        }    }}

Menuyeguai是攻击目标野怪的菜单,主要是通过选择野怪,并且完成击杀,获得金币

package Menu;import yeguai.*;import java.util.Scanner;public class Menuyeguai {    //刷野菜单    public static  int Menuyeguai(){        System.out.println("******选择要攻击的野怪******");        System.out.println("1.野猪");        System.out.println("2.小鸟");        System.out.println("3.河蟹");        System.out.println("4.小兵");        System.out.println("5.炮车");        System.out.println("6.红buff");        System.out.println("7.蓝buff");        System.out.println("10.进入技能页面");        System.out.println("11.进入装备页面");        Scanner sc = new Scanner(System.in);        int res = sc.nextInt();        switch (res){            case 1: Pig pig = new Pig(); return pig.getNum();            case 2:                Bird bird = new Bird();return bird.getNum();            case 3:                Heixie heixie = new Heixie();return heixie.getNum();            case 4:                Xiaobing xiaobing = new Xiaobing();return xiaobing.getNum();            case 5:                Paocar paocar = new Paocar();return  paocar.getMoney();            case 6:return 1;            case 7:return 0;            case 10:return 10;            case 11:return 11;            default:                System.out.println("无效操作"); return 12;        }    }}

Menuzhuangbei是玩家是进入装备页面,购买装备,增加全方位属性,目前只实现了抵抗之靴,反甲,暗影战斧

package Menu;import java.util.Scanner;public class Menuzhuangbei {    //装备页面    public static  int Menuzhuangbei(){        System.out.println("++++++++++++++++++++++");        System.out.println("1.抵抗之靴");        System.out.println("2.反甲");        System.out.println("3.暗影战斧");        System.out.println("4.极寒风暴");        System.out.println("5.破军");        System.out.println("6.碎星锤");        System.out.println("7.魔女斗篷");        System.out.println("10.进入技能页面");        System.out.println("11.进入刷怪页面");        System.out.println("++++++++++++++++++++++");        Scanner sc = new Scanner(System.in);        int res = sc.nextInt();        switch (res){            case 1: return 1;            case 2: return 2;            case 3: return 3;            case 4: return 4;            case 5: return 5;            case 6: return 6;            case 7: return 7;            case 10:return 10;            case 11:return 11;            default:return 12;        }    }}

二、没有钱买皮肤,我就自己造!

2.1 皮肤选择界面设计

我们主要是后端设计,所有我们分析分析一下,如何实现一个皮肤。

如果友友玩过王者荣耀,那么你一定知道,不管一个皮肤有多贵,它可以固定给穿戴的英雄加20点的攻击力,我是亚瑟的皮肤,所以加20点物理攻击。如果创建了一个法师英雄,那么加20点法术攻击。花里胡哨的皮肤,其实底层实现很容易,就是建模,美工比较折磨人。

如何使用java实现王者荣耀的皮肤和英雄技能

package skin;import yeguai.*;import zhuangbei.Fajia;import java.util.Scanner;public class Yaseisskin {    public  static  int Yaseisskin(){        System.out.println("_________________________");        System.out.println("    1. 亚瑟-圣骑之力       ");        System.out.println("    2. 亚瑟-死亡骑士       ");        System.out.println("    3. 亚瑟-狮心王         ");        System.out.println("    4. 亚瑟-心灵战警       ");        System.out.println("_________________________");        Scanner sc = new Scanner(System.in);        int res = sc.nextInt();        if(res==1){           int add = Yuanshenskin();           return add;        }        if(res==2){            int add = Firstskin();            return add;        }        if(res==3){            int add = Secondskin();            return add;        }        if(res==4){            int add = Thirdskin();            return add;        }        return 0;    }    private static int Yuanshenskin(){        System.out.println("亚瑟穿上了“亚瑟-圣骑之力”皮肤");        int phyattack =20;        return phyattack;    }    private static int Firstskin(){        System.out.println("亚瑟穿上了“亚瑟-死亡骑士”皮肤");        int phyattack =20;        return phyattack;    }    private  static  int Secondskin(){        System.out.println("亚瑟穿上了“亚瑟-狮心王 ”皮肤");        int phyattack =20;        return phyattack;    }    private  static  int Thirdskin(){        System.out.println("亚瑟穿上了“亚瑟-心灵战警 ”皮肤");        int phyattack =20;        return phyattack;    }}

没错,这是我的想法,如果你感兴趣,可以在自己创造新的,牛逼,开挂的皮肤。哈哈哈

2.2 如何将皮肤属性赋给英雄

这个十分简单,我们只需要拿到所选的皮肤返回值,然后将该返回值赋给英雄的基础攻击力就实现了属性赋予。
代码如下:

 if(menulogin.Menulogin()==1){          int num = Yaseisskin.Yaseisskin();          yase.setPhyattack(yase.getPhyattack()+num);            System.out.println("皮肤穿戴成功!");            System.out.println(yase.getName()+"当前属性为"+" 金币 "+yase.getMoney()+" 物理攻击 "+yase.getPhyattack()+" 血量                  "+yase.getBlood()+" 移速 "+yase.getMove()            );        }

如何使用java实现王者荣耀的皮肤和英雄技能

四个皮肤具体实现:
原皮 :亚瑟-圣骑之力 无加成

private static int Yuanshenskin(){        System.out.println("亚瑟穿上了“亚瑟-圣骑之力”皮肤");        int phyattack =0;        return phyattack;    }

赛季皮肤:亚瑟-狮心王

  private  static  int Secondskin(){        System.out.println("亚瑟穿上了“亚瑟-狮心王 ”皮肤");        int phyattack =20;        return phyattack;    }

活动皮肤:亚瑟-死亡骑士

  private static int Firstskin(){        System.out.println("亚瑟穿上了“亚瑟-死亡骑士”皮肤");        int phyattack =20;        return phyattack;    }

碎片兑换皮肤:亚瑟-心灵战警

 private  static  int Thirdskin(){        System.out.println("亚瑟穿上了“亚瑟-心灵战警 ”皮肤");        int phyattack =20;        return phyattack;    }

三、没有牛逼的英雄技能,玩个锤子!

3.1 确定英雄技能效果

 我们实现好皮肤后,点击进入游戏,那么,我们玩什么,当然是刷怪,打人,推塔(打人,推塔在系列三开始实现)。我现在创建的英雄是亚瑟。   亚瑟有三个技能和一个被动技能;(被动技能我没有实现,因为木有好想法,友友快快帮忙!)   **第一个技能:**
//亚瑟的一技能    public static  int[] Firstable(boolean Redbuff){  //给技能一个参数,如果有红buff或蓝buff,那么技能属性就会提升        int[] res = new int[4];        if(Redbuff){ //有红buff            int phyattack = 120;//输出的伤害            int blood = 200;            int move = 100; //一技能效果加速            res[0]=120;            res[1]=200;            res[2]=100;        }else{ //无红buff            int phyattack = 100;            int blood = 0;            int move = 100;            res[0]=100;            res[1]=0;            res[2]=100;        }        //一技能特殊属性,沉默英雄,也就是说,被击中的英雄2s内无法释放技能。        res[3] = 1;//标志1为该技能的效果是可以沉默;        return res;    }

第二个技能实现:

//亚瑟的二技能    public static int[] Secondable(boolean Redbuff,boolean bluebuff){  //给技能一个参数,如果有红buff,那么技能属性就会提升        int[] res1 = new int[4];        int phyattack = 300;        int blood = 0;        int move = 50;        int time1 = 7000; // 每7s ,一个二技能        res1[0]=phyattack;        res1[1]=blood;        res1[2]=move ;        res1[3]=time1;        if(Redbuff){ //有红buff            phyattack = 400;            blood = 200;            move = 50;            res1[0]=phyattack;            res1[1]=blood;            res1[2]=move;            res1[3]=time1;        }        if(bluebuff){ //有蓝buff           time1 = 6000;            res1[3]=time1;        }        return res1;    }

第三个技能实现:

//亚瑟的三技能    public static int[] Thirdable(boolean Redbuff,boolean bluebuff){  //给技能一个参数,如果有红buff,那么技能属性就会提升        int[] res2 = new int[4];        int phyattack = 600;        int blood = 0;        int move = 50;        int time2 = 12000;  //每12s一个三技能        res2[0]=phyattack;        res2[1]=blood;        res2[2]=move ;        res2[3]=time2;        if(Redbuff){ //有红buff            phyattack = 800;            blood = 400;            move = 50;            res2[0]=phyattack;            res2[1]=blood;            res2[2]=move ;            res2[3]=time2;        }        if(bluebuff){ //有蓝buff             time2 = 10000;            res2[0]=phyattack ;            res2[1]=blood ;            res2[2]=move ;            res2[3]=time2;        }        return res2;    }

3.2 英雄技能使用

**利用技能菜单,完成技能的使用,**
int flag=menulogin.Menulogin(); //游戏开始标记符;        Boolean red = false;        Boolean blue = false; //默认英雄初始是没有buff的        while (flag==3) {            Menuable menuable = new Menuable();            Menuyeguai menuyeguai = new Menuyeguai();            Menuzhuangbei menuzhuangbei = new Menuzhuangbei();            int res = menuable.Menuable(); //技能菜单            int[] arr = new int[4];            switch (res) {   //技能生效操作                case 1:                    System.out.println("当前使用一技能誓约之盾!");                    arr = Firstable(red);                    break;                case 2:                    System.out.println("当前使用二技能回旋打击!");                    arr = Secondable(red, blue);                    break;                case 3:                    System.out.println("当前使用二技能圣剑裁决!");                    arr = Thirdable(red, blue);                    break;                case 10:                    int res1 = menuyeguai.Menuyeguai();                    switch (res1){  //刷野生效操作                        case 80:                        case 100:                        case 150:                        case 200:                        case 250:yase.setMoney(yase.getMoney()+res1);break;                        case 1: red = true;break;                        case 0: blue = true;break;                        case 10:;                        case 11:;                        default:                            System.out.println("系统错误");                    }                    break;                case 11:                    int res2 = menuzhuangbei.Menuzhuangbei();                    switch (res2){  //进入装备购买页面                        case 1:                            Shoe shoe = new Shoe();                            if(yase.getMoney()>=200){                            System.out.println(yase.name+"购买了"+shoe.name);                            yase.phyfangyu+=shoe.getPhyattack();                            yase.move+=shoe.getMove();                            yase.money=yase.money-200;                        }else{                                System.out.println("金币不足,无法购买"+shoe.name);                            };break;                        case 2:                            Fajia fajia = new Fajia();                            if(yase.getMoney()>=1200){                            System.out.println(yase.name+"购买了"+fajia.name);                            yase.phyattack+=fajia.getPhyattack(); //攻击力+                            yase.phyfangyu+=fajia.getPhyfanyu();  //防御力+                            yase.money=yase.money-1200;                        }else {                                System.out.println("金币不足,无法购买"+fajia.name);                            };break;                        case 3:                            Anyinzhanfu anyinzhanfu = new Anyinzhanfu();                            if(yase.getMoney()>=2000){                            System.out.println(yase.name+"购买了"+anyinzhanfu.name);                            yase.phyattack+=anyinzhanfu.getPhyattack(); //攻击力+                            yase.blood+=anyinzhanfu.getBlood();  //生命力+                            yase.money=yase.money-2000;                        }else {                                System.out.println("金币不足,无法购买"+anyinzhanfu.name);                            }                            break;                        case 10:                        case 11:                        default:                            System.out.println("系统错误");                    }                    break;                case 4:                    return;                default:                    System.out.println("自动平A中。。。。");                    break;            }            yase.setPhyattack(yase.getPhyattack()+arr[0]);            yase.setBlood(yase.getBlood()+arr[1]);            yase.setMove(yase.getMove()+arr[2]);            System.out.println(yase.getName()+"当前属性为"+" 金币 "+yase.getMoney()+" 物理攻击 "+yase.getPhyattack()+" 血量 "+yase.getBlood()+" 移速 "+yase.getMove()            +" 当前技能冷却时间 "+arr[3]+"ms");        }

里面嵌套了装备购买和刷怪的代码实现,代码十分基础,聪明的友友你一定看的懂。
刷野怪主要是给每个野怪设定了不同的金币数量,然后通过Switch,进行判断。
buff是根据返回值,来确定当前是否有buff;
装备购买的代码原理一样,调用装备类,在购买装备前先判断经济是否满足条件;

3.3 技能释放演示

如何使用java实现王者荣耀的皮肤和英雄技能

使用一技能:

如何使用java实现王者荣耀的皮肤和英雄技能
如何使用java实现王者荣耀的皮肤和英雄技能
如何使用java实现王者荣耀的皮肤和英雄技能

四、光放技能有什么用,刷怪买装备!

4.1 刷怪实现的方法

int res1 = menuyeguai.Menuyeguai();                    switch (res1){  //刷野生效操作                        case 80:                        case 100:                        case 150:                        case 200:                        case 250:yase.setMoney(yase.getMoney()+res1);break;                        case 1: red = true;break;                        case 0: blue = true;break;                        default:                            System.out.println("系统错误");                    }                    break;

程序运行演示:

如何使用java实现王者荣耀的皮肤和英雄技能
如何使用java实现王者荣耀的皮肤和英雄技能
如何使用java实现王者荣耀的皮肤和英雄技能

4.2 购买装备!

int res2 = menuzhuangbei.Menuzhuangbei();                    switch (res2){  //进入装备购买页面                        case 1:                            Shoe shoe = new Shoe();                            if(yase.getMoney()>=200){                            System.out.println(yase.name+"购买了"+shoe.name);                            yase.phyfangyu+=shoe.getPhyattack();                            yase.move+=shoe.getMove();                            yase.money=yase.money-200;                        }else{                                System.out.println("金币不足,无法购买"+shoe.name);                            };break;                        case 2:                            Fajia fajia = new Fajia();                            if(yase.getMoney()>=1200){                            System.out.println(yase.name+"购买了"+fajia.name);                            yase.phyattack+=fajia.getPhyattack(); //攻击力+                            yase.phyfangyu+=fajia.getPhyfanyu();  //防御力+                            yase.money=yase.money-1200;                        }else {                                System.out.println("金币不足,无法购买"+fajia.name);                            };break;                        case 3:                            Anyinzhanfu anyinzhanfu = new Anyinzhanfu();                            if(yase.getMoney()>=2000){                            System.out.println(yase.name+"购买了"+anyinzhanfu.name);                            yase.phyattack+=anyinzhanfu.getPhyattack(); //攻击力+                            yase.blood+=anyinzhanfu.getBlood();  //生命力+                            yase.money=yase.money-2000;                        }else {                                System.out.println("金币不足,无法购买"+anyinzhanfu.name);                            }                            break;                        case 10:                        case 11:                        default:                            System.out.println("系统错误");                    }                    break;

如何使用java实现王者荣耀的皮肤和英雄技能
如何使用java实现王者荣耀的皮肤和英雄技能
如何使用java实现王者荣耀的皮肤和英雄技能
如何使用java实现王者荣耀的皮肤和英雄技能

Java可以用来干什么

Java主要应用于:1. web开发;2. Android开发;3. 客户端开发;4. 网页开发;5. 企业级应用开发;6. Java大数据开发;7.游戏开发等。

以上是“如何使用java实现王者荣耀的皮肤和英雄技能”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网行业资讯频道!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

如何使用java实现王者荣耀的皮肤和英雄技能

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

如何使用java实现王者荣耀的皮肤和英雄技能

这篇文章主要介绍如何使用java实现王者荣耀的皮肤和英雄技能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、前期准备我们需要创建一个Menu包,来定义一些操作的界面;Menulogin是游戏选择英雄皮肤,铭文和进入
2023-06-15

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录