增加生命值和回复值的总计

This commit is contained in:
枫谷剑仙 2019-10-16 19:14:20 +08:00
parent ed08bc6a3e
commit 25bca3c949
11 changed files with 93 additions and 13 deletions

View File

@ -147,6 +147,12 @@
.not-show-mon-id .control-box .btn-show-mon-id::before{ .not-show-mon-id .control-box .btn-show-mon-id::before{
content: "Show monster ID"; 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*/ /*Some icons, style different from the Japanese version*/
.awoken-40, .awoken-40,

View File

@ -139,4 +139,10 @@
} }
.not-show-mon-id .control-box .btn-show-mon-id::before{ .not-show-mon-id .control-box .btn-show-mon-id::before{
content: "モンスターIDを表示"; content: "モンスターIDを表示";
}
.team-info .tIf-total-hp::before{
content: "合計HP";
}
.team-info .tIf-total-rcv::before{
content: "合計回復:";
} }

View File

@ -140,6 +140,12 @@
.not-show-mon-id .control-box .btn-show-mon-id::before{ .not-show-mon-id .control-box .btn-show-mon-id::before{
content: "괴물 ID 표시"; 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*/ /*Some icons, style different from the Japanese version*/
.awoken-40, .awoken-40,

View File

@ -143,6 +143,12 @@
.not-show-mon-id .control-box .btn-show-mon-id::before{ .not-show-mon-id .control-box .btn-show-mon-id::before{
content: "顯示怪物ID"; 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*/ /*Some icons, style different from the Japanese version*/
.awoken-46, .awoken-46,

View File

@ -143,6 +143,12 @@
.not-show-mon-id .control-box .btn-show-mon-id::before{ .not-show-mon-id .control-box .btn-show-mon-id::before{
content: "显示怪物ID"; 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*/ /*Some icons, style different from the Japanese version*/
.awoken-46, .awoken-46,

View File

@ -44,14 +44,11 @@ function g(id)
type.push(tn[m[6]]); type.push(tn[m[6]]);
if (m[superAwokenIdx+3]!=-1) //第三个type要倒着来 if (m[superAwokenIdx+3]!=-1) //第三个type要倒着来
type.push(tn[m[superAwokenIdx+3]]); type.push(tn[m[superAwokenIdx+3]]);
console.log("%oNo.%d %s [%s/%s]Lv%d%s究极退化为%d类型%s%d星COST%d%s个觉醒三维%s110级增长%d%%%s当二技1级吃经验%d1级卖¥%d%dMP成长类型%d升2级经验%d技能编号%d队长%d", console.log("No.%d %s [%s/%s]Lv%d类型%s%d星COST%d%s个觉醒三维%s110级增长%d%%%s当二技1级吃经验%d1级卖¥%d%dMP成长类型%d升2级经验%d技能编号%d队长%d进化链根%d%s究极退化为%d进化素材ID[%d,%d,%d,%d,%d]\n%o",
m, //对象
m[0], //ID m[0], //ID
m[1], //名字 m[1], //名字
p[0],p[1], //属性 p[0],p[1], //属性
m[10], //最大等级 m[10], //最大等级
m[4]?"可":"不可", //可退化?
m[40], //可退化?
type.join("|"), //类型 type.join("|"), //类型
m[7], //星级 m[7], //星级
m[8], //cost m[8], //cost
@ -65,8 +62,27 @@ function g(id)
m[23], //成长类型 m[23], //成长类型
Math.round(m[23] * Math.pow((2 - 1) / 98,m[24])), //1级升2级经验 Math.round(m[23] * Math.pow((2 - 1) / 98,m[24])), //1级升2级经验
m[25], //技能编号 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({ GM_xmlhttpRequest({
method: "GET", method: "GET",

View File

@ -51,7 +51,10 @@ function g(id)
function skillDetail(si) function skillDetail(si)
{ {
var sk = skill[si]; skillDataDetail(skill[si]);
}
function skillDataDetail(sk)
{
var str = null; var str = null;
//珠子名数组 //珠子名数组
var pna = ["火","水","木","光","暗","回复","废","毒","剧毒","炸弹"]; var pna = ["火","水","木","光","暗","回复","废","毒","剧毒","炸弹"];
@ -65,6 +68,14 @@ function skillDetail(si)
function tn(i){return tna[i] || ("未知类型" + i);} function tn(i){return tna[i] || ("未知类型" + i);}
//返回觉醒名 //返回觉醒名
function an(i){return ana[i-1] || ("未知觉醒" + 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) function getNamesFromBinary(num,dataArr)
{ /*num是输入的数字2的N次方在2进制下表示1后面跟着N个0。 { /*num是输入的数字2的N次方在2进制下表示1后面跟着N个0。
@ -313,7 +324,7 @@ function skillDetail(si)
case 176: case 176:
//●◉○◍◯ //●◉○◍◯
var table = [sk[6],sk[7],sk[8],sk[9],sk[10]]; 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=>{ str += table.map(r=>{
var rArr = []; var rArr = [];
for(var c=0;c<=5;c++) for(var c=0;c<=5;c++)

View File

@ -49,6 +49,7 @@ MemberAssist.prototype.constructor = MemberAssist
//正式队伍 //正式队伍
var MemberTeam = function(){ var MemberTeam = function(){
this.latent = []; this.latent = [];
this.ability = [0,0,0];
MemberAssist.call(this); MemberAssist.call(this);
//sawoken作为可选项目默认不在内 //sawoken作为可选项目默认不在内
} }
@ -65,8 +66,8 @@ var Formation = function(teamCount,memberCount){
var team = [[],[]]; var team = [[],[]];
for (var mi=0;mi<memberCount;mi++) for (var mi=0;mi<memberCount;mi++)
{ {
team[0].push(new Member()); team[0].push(new MemberTeam());
team[1].push(new Member()); team[1].push(new MemberAssist());
} }
this.team.push(team); this.team.push(team);
} }
@ -1020,6 +1021,10 @@ function refreshAbility(dom,team,idx){
var assistAbility = (assistMD.id > 0 && ms[mainMD.id].ppt[0]==ms[assistMD.id].ppt[0]) var assistAbility = (assistMD.id > 0 && ms[mainMD.id].ppt[0]==ms[assistMD.id].ppt[0])
?calculateAbility(assistMD.id,assistMD.level,assistMD.plus,null,null) ?calculateAbility(assistMD.id,assistMD.level,assistMD.plus,null,null)
:[0,0,0]; :[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 hpDom = ali.querySelector(".hp");
var atkDom = ali.querySelector(".atk"); var atkDom = ali.querySelector(".atk");
var rcvDom = ali.querySelector(".rcv"); var rcvDom = ali.querySelector(".rcv");
@ -1027,11 +1032,21 @@ function refreshAbility(dom,team,idx){
if (mainAbility) if (mainAbility)
{ {
div.classList.remove("display-none"); div.classList.remove("display-none");
div.innerHTML = mainAbility[ai] + Math.round(assistAbility[ai]*bonusScale[ai]); div.innerHTML = mainMD.ability[ai];
}else }else
{ {
div.classList.add("display-none"); div.classList.add("display-none");
div.innerHTML = 0; 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);
} }

View File

@ -44,6 +44,7 @@ var formation = new Formation(1,6);
<li class="badge-bg display-none"><div class="badge badge-11"></div></li> <li class="badge-bg display-none"><div class="badge badge-11"></div></li>
<li class="badge-bg display-none"><div class="badge badge-12"></div></li> <li class="badge-bg display-none"><div class="badge badge-12"></div></li>
<li class="badge-bg display-none"><div class="badge badge-13"></div></li> <li class="badge-bg display-none"><div class="badge badge-13"></div></li>
<div class="team-info"><div class="tIf-total-hp"></div><div class="tIf-total-rcv"></div></div>
</ul> </ul>
<ul class="formation-assist"> <ul class="formation-assist">
<li class="member member-1 null"> <li class="member member-1 null">

View File

@ -294,6 +294,13 @@ ul{
/*content: "▲辅助";*/ /*content: "▲辅助";*/
} }
.formation-box .team-info{
font-size: 15px;
}
.team-info .tIf-total-hp,.team-info .tIf-total-rcv{
display:inline-block;
}
/*队伍的潜觉*/ /*队伍的潜觉*/
.formation-latents .latents{ .formation-latents .latents{
width: 108px; width: 108px;

View File

@ -95,8 +95,8 @@ function awokenCountInTeam(formationTeam,ak,solo)
var enableAwoken = mdAwoken.slice(0,m.awoken); var enableAwoken = mdAwoken.slice(0,m.awoken);
//相同的觉醒数 //相同的觉醒数
var hasAwoken = enableAwoken.filter(function(a){return a == ak;}).length; var hasAwoken = enableAwoken.filter(function(a){return a == ak;}).length;
//如果有超觉醒且超觉醒id和计数的id相同 //如果是单人,有超觉醒且超觉醒id和计数的id相同
if (mdSAwoken && (mdSAwoken[m.sawoken] == ak)) if (solo && mdSAwoken && (mdSAwoken[m.sawoken] == ak))
{ {
hasAwoken++; hasAwoken++;
} }