微件:SvtExpCalc

来自Mooncell - 玩家共同构筑的FGO中文Wiki
跳转到导航 跳转到搜索

<script language="javascript" type="text/javascript"> var exp = [

 0, 100, 300, 600, 1000, 1500, 2100, 2800, 3600, 4500, 5500, 6600, 7800, 9100,
 10500, 12000, 13600, 15300, 17100, 19000, 21000, 23100, 25300, 27600, 30000,
 32500, 35100, 37800, 40600, 43500, 46500, 49600, 52800, 56100, 59500, 63000,
 66600, 70300, 74100, 78000, 82000, 86100, 90300, 94600, 99000, 103500, 108100,
 112800, 117600, 122500, 127500, 132600, 137800, 143100, 148500, 154000,
 159600, 165300, 171100, 177000, 183000, 189100, 195300, 201600, 208000,
 214500, 221100, 227800, 234600, 241500, 248500, 255600, 262800, 270100,
 277500, 285000, 292600, 300300, 308100, 316000, 324000, 332100, 340300,
 348600, 357000, 365500, 374100, 382800, 391600, 400500, 418500, 454900,
 510100, 584500, 678500, 792500, 926900, 1082100, 1258500, 1456500, 20311500,
 20311500, 20311500, 20311500, 20311500, 20311500, 20311500, 20311500,
 20311500, 20311500, 20311500, 20311500, 20311500, 20311500, 20311500,
 20311500, 20311500, 20311500, 20311500, 20311500,

];

var Rate = new Array(6); Rate[5] = [

 0, 50, 60, 70, 80, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108, 110, 112, 114,
 116, 118, 120,

]; Rate[4] = [

 0, 40, 50, 60, 70, 80, 85, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108, 110,
 112, 114, 116, 118, 120,

]; Rate[3] = [

 0, 30, 40, 50, 60, 70, 75, 80, 85, 90, 92, 94, 96, 98, 100, 102, 104, 106,
 108, 110, 112, 114, 116, 118, 120,

]; Rate[2] = [

 0, 25, 35, 45, 55, 65, 70, 80, 85, 90, 92, 94, 96, 98, 100, 102, 104, 106,
 108, 110, 112, 114, 116, 118, 120,

]; Rate[1] = [

 0, 20, 30, 40, 50, 60, 70, 80, 85, 90, 92, 94, 96, 98, 100, 102, 104, 106,
 108, 110, 112, 114, 116, 118, 120,

]; Rate[0] = [

 0, 25, 35, 45, 55, 65, 70, 80, 85, 90, 92, 94, 96, 98, 100, 102, 104, 106,
 108, 110, 112, 114, 116, 118, 120,

];

var exptext = "";

var jin1 = 32400; var jin2 = 27000; var jin3 = 97200; var jin4 = 81000; var yin1 = jin1 / 3; var yin2 = jin2 / 3;

function NNext(obj) {

 var level1 = obj.value / 1;
 document.getElementById("nex").value = exp[level1];

}

function wgexpcalc() {

 var level1 = document.getElementById("L1").value / 1;
 var level2 = document.getElementById("L2").value / 1;
 var R = document.getElementById("R").value / 1;
 var nex = document.getElementById("nex").value / 1;
 var num = 0;
 for (var i = level1 + 1; i<level2; i++) {
   num += exp[i];
 }
 if (level1 + 1 <= level2) {
   num += nex;
 }
 document.getElementById("nextt").value = num;
 if (level1<level2) {
   exptext =

"等级 同属性5星金狗粮 同属性4星金狗粮 同属性银狗粮 异属性5星金狗粮 异属性4星金狗粮 异属性银狗粮";

   CodeCalc(level1, level2, R, nex);
 }

}

function CodeCalc(L1, L2, R, nex) {

 var L11 = 0;
 var L21 = 0;
 for (var i = 1; i <= Rate[R].length - 1; i++) {
   if (L1 >= Rate[R][i]) {
     L11++;
   }
   if (L2 > Rate[R][i]) {
     L21++;
   }
 }
 var expp = new Array();
 expp[1] = L1;
 for (var i = 1; i <= L21 - L11; i++) {
   expp[i + 1] = Rate[R][L11 + i];
 }
 expp[L21 - L11 + 2] = L2;
 for (i = 1; i <= L21 - L11 + 1; i++) {
   var expnum = 0;
   for (j = expp[i]; j<expp[i + 1]; j++) {
     expnum += exp[j];
   }
   if (i == 1) {
     expnum = expnum - exp[expp[1]] + nex;
   }
   CalcEXP(i, expnum, expp[i], expp[i + 1]);
 }

}

function CalcEXP(l, exp, L1, L2) {

 var exp1 = exp;
 var g11 = 0;
 var g21 = 0;
 var g31 = 0;
 var g41 = 0;
 var s11 = 0;
 var s21 = 0;
 if (exp1 > jin3) {
   do {
     exp1 -= jin3;
     g31++;
   } while (exp1 > jin3);
 }
 if (exp1 > jin1) {
   do {
     exp1 -= jin1;
     g11++;
   } while (exp1 > jin1);
 }
 if (exp1 > 0) {
   do {
     exp1 -= yin1;
     s11++;
   } while (exp1 > 0);
 }
 exp1 = exp;
 if (exp1 > jin4) {
   do {
     exp1 -= jin4;
     g41++;
   } while (exp1 > jin4);
 }
 if (exp1 > jin2) {
   do {
     exp1 -= jin2;
     g21++;
   } while (exp1 > jin2);
 }
 if (exp1 > 0) {
   do {
     exp1 -= yin2;
     s21++;
   } while (exp1 > 0);
 }
 exptext +=

"" +

   L1 +
   "—>" +
   L2 +

" " +

   g31 +

" " +

   g11 +

" " +

   s11 +

" " +

   g41 +

" " +

   g21 +

" " +

   s21 +

""; document.getElementById("result").innerHTML = exptext; }</script>

   
简易狗粮计算器
当前等级 目标等级
<input type="text" class="mw-ui-input" value="1" id="L1" onchange="NNext(this)"> <input type="text" class="mw-ui-input" value="1" id="L2">
稀有度 距离下一级
<input type="text" class="mw-ui-input" value="5" id="R"> <input type="text" class="mw-ui-input" value="100" id="nex">
总计需要经验<input type="button" class="mw-ui-button" value="计算" onclick="wgexpcalc()" />
<input type="text" value="100" id="nextt">