From ee7e0a03e4c25b065d61db563ce01522a30a0f56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9E=AB=E8=B0=B7=E5=89=91=E4=BB=99?= Date: Wed, 16 Oct 2019 19:14:20 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=94=9F=E5=91=BD=E5=80=BC?= =?UTF-8?q?=E5=92=8C=E5=9B=9E=E5=A4=8D=E5=80=BC=E7=9A=84=E6=80=BB=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- languages/en.css | 6 +++++ languages/ja.css | 6 +++++ languages/ko.css | 6 +++++ languages/zh-TW.css | 6 +++++ languages/zh.css | 6 +++++ monsters-info/official-API/test-mon.html | 26 +++++++++++++++++----- monsters-info/official-API/test-skill.html | 15 +++++++++++-- script.js | 23 +++++++++++++++---- solo.html | 1 + style.css | 7 ++++++ universal_function.js | 4 ++-- 11 files changed, 93 insertions(+), 13 deletions(-) diff --git a/languages/en.css b/languages/en.css index 1858cef6..7e7328cf 100644 --- a/languages/en.css +++ b/languages/en.css @@ -147,6 +147,12 @@ .not-show-mon-id .control-box .btn-show-mon-id::before{ content: "Show monster ID"; } +.team-info .tIf-total-hp::before{ + content: "Total HP: "; +} +.team-info .tIf-total-rcv::before{ + content: "Total RCV: "; +} /*Some icons, style different from the Japanese version*/ .awoken-40, diff --git a/languages/ja.css b/languages/ja.css index ce4c5e80..3fc084cf 100644 --- a/languages/ja.css +++ b/languages/ja.css @@ -139,4 +139,10 @@ } .not-show-mon-id .control-box .btn-show-mon-id::before{ content: "モンスターIDを表示"; +} +.team-info .tIf-total-hp::before{ + content: "合計HP:"; +} +.team-info .tIf-total-rcv::before{ + content: "合計回復:"; } \ No newline at end of file diff --git a/languages/ko.css b/languages/ko.css index 7fa630e9..84657002 100644 --- a/languages/ko.css +++ b/languages/ko.css @@ -140,6 +140,12 @@ .not-show-mon-id .control-box .btn-show-mon-id::before{ content: "괴물 ID 표시"; } +.team-info .tIf-total-hp::before{ + content: "총 HP:"; +} +.team-info .tIf-total-rcv::before{ + content: "총 회복:"; +} /*Some icons, style different from the Japanese version*/ .awoken-40, diff --git a/languages/zh-TW.css b/languages/zh-TW.css index d60a840c..a375a4d3 100644 --- a/languages/zh-TW.css +++ b/languages/zh-TW.css @@ -143,6 +143,12 @@ .not-show-mon-id .control-box .btn-show-mon-id::before{ content: "顯示怪物ID"; } +.team-info .tIf-total-hp::before{ + content: "總HP:"; +} +.team-info .tIf-total-rcv::before{ + content: "總回復:"; +} /*Some icons, style different from the Japanese version*/ .awoken-46, diff --git a/languages/zh.css b/languages/zh.css index 5f138d25..78232745 100644 --- a/languages/zh.css +++ b/languages/zh.css @@ -143,6 +143,12 @@ .not-show-mon-id .control-box .btn-show-mon-id::before{ content: "显示怪物ID"; } +.team-info .tIf-total-hp::before{ + content: "总HP:"; +} +.team-info .tIf-total-rcv::before{ + content: "总回复:"; +} /*Some icons, style different from the Japanese version*/ .awoken-46, diff --git a/monsters-info/official-API/test-mon.html b/monsters-info/official-API/test-mon.html index e4775690..dcaef382 100644 --- a/monsters-info/official-API/test-mon.html +++ b/monsters-info/official-API/test-mon.html @@ -44,14 +44,11 @@ function g(id) type.push(tn[m[6]]); if (m[superAwokenIdx+3]!=-1) //第三个type要倒着来 type.push(tn[m[superAwokenIdx+3]]); - console.log("%oNo.%d %s [%s/%s],Lv%d,%s究极退化为%d,类型:%s,%d星,COST%d,%s个觉醒,三维%s,110级增长%d%%,%s当二技,1级吃经验%d,1级卖¥%d,%dMP,成长类型%d,升2级经验%d,技能编号%d,队长%d", - m, //对象 + console.log("No.%d %s [%s/%s],Lv%d,类型:%s,%d星,COST%d,%s个觉醒,三维%s,110级增长%d%%,%s当二技,1级吃经验%d,1级卖¥%d,%dMP,成长类型%d,升2级经验%d,技能编号%d,队长%d,进化链根%d,%s究极退化为%d,进化素材ID[%d,%d,%d,%d,%d]\n%o", m[0], //ID m[1], //名字 p[0],p[1], //属性 m[10], //最大等级 - m[4]?"可":"不可", //可退化? - m[40], //可退化? type.join("|"), //类型 m[7], //星级 m[8], //cost @@ -65,8 +62,27 @@ function g(id) m[23], //成长类型 Math.round(m[23] * Math.pow((2 - 1) / 98,m[24])), //1级升2级经验 m[25], //技能编号 - m[26] //队长技能编号 + m[26], //队长技能编号 + m[superAwokenIdx+1], //进化根编号 + m[4]?"可":"不可", //可退化? + m[40], //可退化? + m[41],m[42],m[43],m[44],m[45], //进化素材ID 1-5 + m //原始对象 ); + //if (m[57]>0) console.log("[57]="+m[57]); + /* + m[superAwokenIdx+1], //进化根编号 + m[superAwokenIdx+2], // + m[superAwokenIdx+3], //第三个type + m[superAwokenIdx+4], //卖MP + m[superAwokenIdx+5], // + m[superAwokenIdx+6], // + m[superAwokenIdx+7], //是否能当二技 + m[superAwokenIdx+8], //怀疑是区分怪物所属合作的文字 + m[superAwokenIdx+9], //110级增长 + m[superAwokenIdx+10], // + m[superAwokenIdx+11], // + */ } GM_xmlhttpRequest({ method: "GET", diff --git a/monsters-info/official-API/test-skill.html b/monsters-info/official-API/test-skill.html index 3da9fe55..40fd41cc 100644 --- a/monsters-info/official-API/test-skill.html +++ b/monsters-info/official-API/test-skill.html @@ -51,7 +51,10 @@ function g(id) function skillDetail(si) { - var sk = skill[si]; + skillDataDetail(skill[si]); +} +function skillDataDetail(sk) +{ var str = null; //珠子名数组 var pna = ["火","水","木","光","暗","回复","废","毒","剧毒","炸弹"]; @@ -65,6 +68,14 @@ function skillDetail(si) function tn(i){return tna[i] || ("未知类型" + i);} //返回觉醒名 function an(i){return ana[i-1] || ("未知觉醒" + i);} + //从二进制的数字中获得布尔值数组 + function getBooleanFromBinary(num,reverse=true) + { /*num是输入的数字,2的N次方在2进制下表示1后面跟着N个0。 + 如果num和2的N次方同时存在某位1,则返回这个数,逻辑上转换为true。*/ + let arr = num.toString(2).split("").map(c=>{return parseInt(c);}); + if (reverse) arr.reverse(); + return arr; + } //从二进制的数字中获得有哪些内容 function getNamesFromBinary(num,dataArr) { /*num是输入的数字,2的N次方在2进制下表示1后面跟着N个0。 @@ -313,7 +324,7 @@ function skillDetail(si) case 176: //●◉○◍◯ var table = [sk[6],sk[7],sk[8],sk[9],sk[10]]; - str = "以如下形状生成" + pn(sk[11]) + "宝珠\n"; + str = "以如下形状生成" + pn(sk[11]||0) + "宝珠\n"; str += table.map(r=>{ var rArr = []; for(var c=0;c<=5;c++) diff --git a/script.js b/script.js index b6b5a80d..553a399b 100644 --- a/script.js +++ b/script.js @@ -49,6 +49,7 @@ MemberAssist.prototype.constructor = MemberAssist //正式队伍 var MemberTeam = function(){ this.latent = []; + this.ability = [0,0,0]; MemberAssist.call(this); //sawoken作为可选项目,默认不在内 } @@ -65,8 +66,8 @@ var Formation = function(teamCount,memberCount){ var team = [[],[]]; for (var mi=0;mi 0 && ms[mainMD.id].ppt[0]==ms[assistMD.id].ppt[0]) ?calculateAbility(assistMD.id,assistMD.level,assistMD.plus,null,null) :[0,0,0]; + for (let ai=0;ai<3;ai++) + { + mainMD.ability[ai] = mainAbility[ai] + Math.round(assistAbility[ai]*bonusScale[ai]); + } var hpDom = ali.querySelector(".hp"); var atkDom = ali.querySelector(".atk"); var rcvDom = ali.querySelector(".rcv"); @@ -1027,11 +1032,21 @@ function refreshAbility(dom,team,idx){ if (mainAbility) { div.classList.remove("display-none"); - div.innerHTML = mainAbility[ai] + Math.round(assistAbility[ai]*bonusScale[ai]); + div.innerHTML = mainMD.ability[ai]; }else { div.classList.add("display-none"); div.innerHTML = 0; } - }) + }); + + //计算总的生命值 + var tHpDom = document.querySelector(".formation-box .team-info .tIf-total-hp"); + var tRcvDom = document.querySelector(".formation-box .team-info .tIf-total-rcv"); + tHpDom.innerHTML = team[0].reduce(function(value,mon){ + return value += mon.ability[0]; + },0); + tRcvDom.innerHTML = team[0].reduce(function(value,mon){ + return value += mon.ability[2]; + },0); } \ No newline at end of file diff --git a/solo.html b/solo.html index a8c33bec..74c8823b 100644 --- a/solo.html +++ b/solo.html @@ -44,6 +44,7 @@ var formation = new Formation(1,6); +