首页 >> 大全

氪金游戏的抽卡代码

2023-08-21 大全 29 作者:考证青年

文章目录

项目介绍

通过java语言,编写了一个氪金游戏的抽卡系统,具备充值,抽卡,查看卡池详情的功能

整体架构流程

板块分析

1.充值板块

import java.util.Scanner;
import java.util.Random;
public class Dram {public static int yuanShi=0;static Scanner sc=new Scanner(System.in);public static void Spend(){	//此方法封装着充值板块	System.out.println("------------------------");System.out.println("请输入您的充值金额(元)");int money=sc.nextInt();		int yuanShiC=money*10;System.out.println("邮箱提醒:到账原石"+yuanShiC);yuanShi+=yuanShiC;System.out.println("原石:"+yuanShi);System.out.println("------------------------");}

需求1:用户需要输入数据

方案:类,关键字,静态方法.in打开输入流,()方法获取充值金额

需求2:系统需要保存数据

方案:关键字,创建静态变量,运行全过程可被操作

创建int类型数据,,标记为用户,通过充值渠道,获取的游戏货币

根据货币与虚拟货币1:10的比例,建立公式,通过+=自加运算符,记录到变量

需求3:此板块需要简单的UI设计

方案:方法,打印出“---”,对板块进行分隔,打印出引导充值语,充值获得反馈

在每个板块下打印出,静态变量,实时显示用户拥有的虚拟货币数量

_学妹氪金抽卡_好玩的抽卡游戏

2.抽卡板块

public static void Draw() {//此方法封装着抽卡板块Random num=new Random();String pool[]=new String[100];for(int a=0;a<=21;a++) {pool[a]="新手剑";}for(int b=22;b<=43;b++) {pool[b]="新手长弓";}for(int c=44;c<=65;c++) {pool[c]="新手大剑";}for(int d=66;d<=89;d++) {pool[d]="新手长枪";}pool[90]="\u001B[35m西风长枪\u001B[0m";pool[91]="\u001B[35m西风大剑\u001B[0m";pool[92]="\u001B[35m西风剑\u001B[0m";pool[93]="\u001B[35m西风长弓\u001B[0m";pool[94]="\u001B[35m安柏\u001B[0m";pool[95]="\u001B[35m诺艾尔\u001B[0m";pool[96]="\u001B[35m凯亚\u001B[0m";pool[97]="\u001B[35m香菱\u001B[0m";pool[98]="\u001B[33m迪卢克\u001B[0m";pool[99]="\u001B[33m胡桃\u001B[0m";System.out.println("------------------------");System.out.println("抽一次请按1,抽十次请按10");int time=sc.nextInt();if(time==1) {if(yuanShi>=160) {yuanShi-=160;System.out.println(pool[num.nextInt(100)]);System.out.println("原石:"+yuanShi);}else {System.out.println("抱歉,您的原石已不足");}}if(time==10) {if(yuanShi>=1600) {yuanShi-=1600;for(int i=1;i<=10;i++){System.out.print("--"+pool[num.nextInt(100)] );}System.out.println();System.out.println("原石:"+yuanShi);}else {System.out.println("抱歉,您的原石已不足");}}System.out.println("------------------------");}

需求1:抽卡池子需要100个空缺,并且装上对应的游戏道具

方案:建立类型数组,创建数组容量为100,通过for循环,根据业务需要,填充相应比例的等级道具的字符串

需求2:抽卡池子需要随机生成出玩家的抽卡结果

方案:类,创建对象,标定生成数字的范围在0-99,通过打印出

需求3:抽卡池子需要具备抽一次和抽十次的功能

方案:通过类中的()方法,获取用户选定的抽取次数

通过if条件判断,抽一次,静态变量,-=自减160,用打印出一次随机结果

抽十次,静态变量,-=自减1600,用for循环十次,用print打印出十次随机结果

需求4:游戏道具需要根据对应等级,显示对应颜色

方案:通过\u001B[色号数字m文案\u001B[0m 显示紫色,金色

3.查询详情板块

public static void Check() {//此方法封装着查询详情板块/*	三星武器掉率		90%四星武器|角色掉率	 8%五星常驻角色|活动角色掉率	 2%	*/System.out.println("------------------------");System.out.println("该池为活动池");System.out.println("活动角色:胡桃");System.out.println("四星武器|角色掉率: 8%");System.out.println("五星活动角色掉率:  1%");System.out.println("注:该活动池没有保底机制");System.out.println("-------------------------");}

需求:系统需要显示卡池物品掉率等信息

方案:通过方法,逐条显示用户想要查询的内容

4.抽卡主板块

_好玩的抽卡游戏_学妹氪金抽卡

public static void main(String[] args){Scanner scan=new Scanner(System.in);System.out.println("胡桃活动池(模拟抽卡)");for(int j=0;j<1000000000;j++) {		System.out.println("充值请按1,抽卡请按2,查看池子详情请按3");int choose=scan.nextInt();if(choose==1) {Spend();}if(choose==2) {Draw();}if(choose==3) {Check();}}scan.close();	}
}

需求1:系统需要判断用户想使用的板块

方案:通过类的()方法获取用户的选择,根据选择,if语句调用对应的方法

需求2:抽卡主板块需要重复的运行

方案:通过for循环将主板块核心代码进行嵌套

需求3:用户需要知道活动池的主题

方案:通过方法于开头打印活动池主题

实操展示

1.充值板块

2.抽卡板块

3.查询详情板块

4.整体展示

注:概率没有问题,只不过我运气很好罢了

小结

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了