Clash of Clans 游戏中的药剂、金币等资源与宝石,时间与宝石之间的数值转换实现公式?
以下算法是根据
网站提供的coc计算器,我翻阅了其实现的源代码后整理的公式:一、资源(药剂、金币)to宝石的计算方法 资源档位:ranges=[100,,0];//6档资源[100,1000,1万,10万,100万,1000万]
ranges.length=6宝石档位:gems=[1,5,25,125,600,3000];//6档宝石
gems.length=6仓库最大存储量:storagemax=8001000;//800万零1000根据需要的资源(假设为resources),用不同的计算方式来计算需要的宝石数量result:1、如果需要的资源resources&=ranges[0](即100)result=gems[0]2、如果需要的资源ranges[0]&resources&=ranges[4] (即100&resources&=100w之间,计算得到对应的档位值,假设为i=(0或1或2或3或4))result=Math.round((resources-ranges[i-1])/((ranges[i]-ranges[i-1])/(gems[i]-gems[i-1]))+gems[i-1])Math.round函数表示四舍五入取整数3、如果需要的资源ranges[4]&resources&=storagemax(即100w&resources&=800w零1000 之间)result=Math.round((resources-ranges[ranges.length-2])/((ranges[ranges.length-1]-ranges[ranges.length-2])/(gems[gems.length-1]-gems[gems.length-2]))+gems[gems.length-2])Math.round函数表示四舍五入取整数4、如果需要的资源storagemax&resources&=ranges[5] (即800w零1000&resources&=1000w之间,计算得到对应的档位值,假设为i,i=5)result=Math.round((resources-ranges[i-1])/((ranges[i]-ranges[i-1])/(gems[i]-gems[i-1]))+gems[i-1])Math.round函数表示四舍五入取整数5、如果需要的资源resources&ranges[5](即resources&1000w)递归1234计算(resources%storagemax) + resources/storagemax * 递归计算1234(storagemax)二、计算宝石to时间的方法时间档位:timerange=[60,,604800](1分钟,1小时,1天,1周)宝石档位:gemsrange=[1,20,260,1000]假设需要的宝石数量为gems1、如果gems=0seconds=02、如果gems&=gemsrange[0](相当于1个宝石)seconds=246秒3、如果gems&gemsrange[0],则:gems=gems+1;根据gems值计算得到处于哪个最大宝石档位内,假设该档位为i,则计算公式如下:seconds=Math.ceil((gems-gemsrange[i-1])*((timerange[i]-timerange[i-1])/(gemsrange[i]-gemsrange[i-1]))+timerange[i-1])-1;Math.ceil函数表示向上取整,取大于或等于括号内计算值的整数三、时间to宝石的计算方法1、时间档位:ranges=[60,,604800];//时间档位(单位秒,相当于1分钟、1小时、1天、1周)宝石档位:gems=[1,20,260,1000];//宝石档位2、根据需要的时间(假设为seconds),用不同的计算方式来计算需要的宝石数量result如果需要的时间seconds&=ranges[0](1分钟即60秒)result=gems[0]如果需要的时间seconds&ranges[0],则根据需要的时间计算所处于的最大时间档位,假设为iresult = Math.floor((seconds-ranges[i-1])/((ranges[i]-ranges[i-1])/(gems[i]-gems[i-1]))+gems[i-1])Math.floor函数,求一个浮点数的地板,就是求一个最接近它的整数,它的值小于或等于这个浮点数。
已有帐号?
无法登录?
社交帐号登录宝石升级药水如何得到?_百度知道与宝石怎么升级,炫舞宝石升级,QQ炫舞宝石相关的文章
·······
·········
游戏信息:游戏名称:QQ炫舞2 | 目前状态:封测 | 游戏类型:音乐舞蹈 | 运营公司:腾讯 | 国服官网:
友情链接: |