废话不多说,直接上代码。可复制下方两部分代码到任意在线JS平台运行,测试次数较大时容易卡死,以下以千次刷闪为例。函数准备: *name :
废话不多说,直接上代码。
可复制下方两部分代码到任意在线JS平台运行,测试次数较大时容易卡死,以下以千次刷闪为例。
/*
name ::精灵名称
返回闪光标识,便于测试时跳出循环
*/
function getPokemon(name){
//随机生成个体和闪光标识
var HP = randIV();
var GJ = randIV();
var FY = randIV();
var TG = randIV();
var TF = randIV();
var SD = randIV();
var SHINY = randShiny();
//闪光随机一项个体为31,1-6依次对应HP 攻击 防御 特攻 特防 速度
if(SHINY!=''){
var item = rand(6,1);
if(item==1){ HP = 31;}
if(item==2){ GJ = 31;}
if(item==3){ FY = 31;}
if(item==4){ TG = 31;}
if(item==5){ TF = 31;}
if(item==6){ SD = 31;}
//输出个体,循环测试时务必注释该行,避免卡死单次测试时直接调用即可查看每次捕捉精灵个体值
//console.log(SHINY+name+"\nHP\t:"+HP+"\n攻击\t:"+GJ+"\n防御\t:"+FY+"\n特攻\t:"+TG+"\n特防\t:"+TF+"\n速度\t:"+SD);
}
return SHINY ;
}
//随机函数,随机生成n-m之间的一个随机数
function rand(m,n){
return Math.floor(Math.random()*(m - n) + n);
}
//随机生成个体值0-31之间
function randIV(){
return rand(31,0);
}
//随机生成闪光标识,范围为1-30000 ,当随机数=1时视为闪光
function randShiny(){
//基准出闪率 1/30000 ,设定base = 30000 ,
//若有捐赠,按照官方1/27000的概念,则base*0.9即可
var base = 30000;
var num = rand(base,1);
//随机生成1-30000的数 =1 时为闪光,返回字符串,方便拼接精灵名称
if(num==1){return "闪光";}
return "";
}
//计数器
var n=1;
//测试次数
var csTimes =1000;
//每日刷怪数
var numDay = 1000;
//循环模拟,若模拟单次,修改csTimes值即可
for(var i = 0 ,day = 0; i while(n){ if(getPokemon("阿勃梭鲁")!='') { break; } n++; } day += Math.floor(n/1000)+1; //出闪后 计怪数重置为1 n=1; } alert(day/csTimes);
菜鸟下载发布此文仅为传递信息,不代表菜鸟下载认同其观点或证实其描述。
版权投诉请发邮件到 cn486com#outlook.com (把#改成@),我们会尽快处理
Copyright © 2019-2020 菜鸟下载(www.cn486.com).All Reserved | 备案号:湘ICP备2023003002号-8
本站资源均收集整理于互联网,其著作权归原作者所有,如有侵犯你的版权,请来信告知,我们将及时下架删除相应资源