zmud之潜能武学技能计算器。

#tri {归去来兮机器狗} { #say 技能需要潜能计算器格式:10to20for30count4,即表示从4项技能从10级升级到20级按30悟性需要的潜能数目。将得到提示:从10级升级4项技能到20级,以30的悟性,需要660点潜能,685点武学。 #say 潜能支持技能计算器格式:qn1000from20for30count2,即表示以1000的潜能,30的悟性从20能够学习2项技能到多少级别。将得到提示:1000点潜能以30的悟性,可以将2项技能从20级升级到30级,需要2438点武学支持,剩余128点潜能. #say 武学支持技能计算器格式:武学10000,将计算能支持的最大技能数,将得到提示:10000点武学最大支持技能47级 #say 技能需要武学计算器格式:skills200,将计算200级技能需要的武学,将得到提示:200的技能需要788059点武学。 } #tri {(%d)to(%d)for(%d)count(%d)} {#var aux_sk_l %1;#var aux_sk_h %2;#var aux_int %3;#var aux_sk_count %4;#read cmd_qn_wx.txt} #tri {qn(%d)from(%d)for(%d)count(%d)} {#var aux_qn %1;#var aux_int %3;#var aux_sk_l %2;#var aux_sk_count %4;#read cmd_qn_sk.txt} #tri {skills(%d)} {#var aux_wx [(%1-1)*(%1-1)*(%1-1)/10];#say %1级的技能需要@aux_wx点武学。} #tri {武学(%d)} {#var hp_wx %1;#var max_sk @maxlevel(1,@hp_wx);#say %1点武学最大支持技能@max_sk级} 自定义一个函数计算武学最大支持的技能: #func maxlevel {%if((%1*%1*%1/10)<%2,@maxlevel(%eval(%1+1),%2),%1)} cmd_qn_wx.txt的内容为: #var aux_str 0 #if (@aux_int<10) {#var aux_str "悟性太低了,不如自杀算了."} #if (@aux_sk_l>=@aux_sk_h) {#say 2;#var aux_str "越练越回去了,佩服佩服."} #if (@aux_sk_l>=1000|@aux_sk_h>=1000|@aux_sk_l<0|@aux_sk_h<0) {#var aux_str "超出范围(0-1000)"} #var aux_wx [(@aux_sk_h-1)*(@aux_sk_h-1)*(@aux_sk_h-1)/10] #var aux_temp_sk @aux_sk_h #var aux_qn 0 #WHILE (@aux_temp_sk > @aux_sk_l) {#var aux_qn_xishu 2;#if ((@aux_temp_sk<=450) & (@aux_temp_sk>=0)) {aux_qn_xishu=2};#if ((@aux_temp_sk<=700) & (@aux_temp_sk>450)) {aux_qn_xishu=4};#if (@aux_temp_sk<=750 & @aux_temp_sk>700) {aux_qn_xishu=5};#if (@aux_temp_sk<=800 & @aux_temp_sk>750) {aux_qn_xishu=6};#if (@aux_temp_sk<=850 & @aux_temp_sk>800) {aux_qn_xishu=8};#if (@aux_temp_sk<=900 & @aux_temp_sk>850) {aux_qn_xishu=10};#if (@aux_temp_sk<=950 & @aux_temp_sk>900) {aux_qn_xishu=12};#if (@aux_temp_sk<=1000 & @aux_temp_sk>950) {aux_qn_xishu=14};#add aux_qn (@aux_temp_sk*@aux_temp_sk*@aux_qn_xishu/2);#add aux_temp_sk -1;} #math aux_qn (@aux_qn*2/@aux_int*@aux_sk_count) #if (%isnumber(@aux_str)) {#say 从@aux_sk_l级升级@aux_sk_count项技能到@aux_sk_h级,以@aux_int的悟性,需要@aux_qn点潜能,@aux_wx点武学} {#say @aux_str} cmd_qn_sk.txt的内容为: #var aux_temp_qn 0 #var aux_temp_sk @aux_sk_l #var aux_saved_qn @aux_qn #WHILE (@aux_qn > @aux_temp_qn) {#var aux_qn_xishu 2;#if ((@aux_temp_sk<=450) & (@aux_temp_sk>=0)) {aux_qn_xishu=2};#if ((@aux_temp_sk<=700) & (@aux_temp_sk>450)) {aux_qn_xishu=4};#if (@aux_temp_sk<=750 & @aux_temp_sk>700) {aux_qn_xishu=5};#if (@aux_temp_sk<=800 & @aux_temp_sk>750) {aux_qn_xishu=6};#if (@aux_temp_sk<=850 & @aux_temp_sk>800) {aux_qn_xishu=8};#if (@aux_temp_sk<=900 & @aux_temp_sk>850) {aux_qn_xishu=10};#if (@aux_temp_sk<=950 & @aux_temp_sk>900) {aux_qn_xishu=12};#if (@aux_temp_sk<=1000 & @aux_temp_sk>950) {aux_qn_xishu=14};#add aux_qn -@aux_temp_qn;#add aux_temp_sk 1;#math aux_temp_qn (@aux_temp_sk*@aux_temp_sk*@aux_qn_xishu/@aux_int*@aux_sk_count);} #add aux_temp_sk -1 #if (@aux_temp_sk=@aux_sk_l) {#var aux_qn 0} #if (@aux_sk_>=1000|@aux_sk_l<0) {#var aux_qn "skills超出范围(0-1000)"} #var aux_wx [(@aux_temp_sk-1)*(@aux_temp_sk-1)*(@aux_temp_sk-1)/10] #if (%isnumber(@aux_qn)) {#say @aux_saved_qn点潜能以@aux_int的悟性,可以将@aux_sk_count项技能从@aux_sk_l级升级到@aux_temp_sk级,需要@aux_wx点武学支持,剩余@aux_qn点潜能.} {#say @aux_qn} 补充: 1。至于4倍潜能只需要在得出需要潜能基础上乘上4即可,这里没有列出。 2。skill需要的道行数目,是通过道行的点数转换的,定义如下函数即可: #func convertdh {[%1/1000]年[(%1-(%1/1000)*1000)/4]天[((%1-(%1/1000)*1000)-(%1-(%1/1000)*1000)/4*4)*3]时辰} 如200的技能需要788059点武学,对应的道行值是%eval(@convertdh(788059))

你可能感兴趣的:(cmd,HP)