坐骑栏合并机制
This commit is contained in:
parent
dc30d1ff63
commit
15299819d8
217
game/game.js
217
game/game.js
|
@ -633,6 +633,12 @@
|
||||||
general:{
|
general:{
|
||||||
name:'通用',
|
name:'通用',
|
||||||
config:{
|
config:{
|
||||||
|
mount_combine:{
|
||||||
|
name:'合并坐骑栏',
|
||||||
|
init:false,
|
||||||
|
intro:'<li>将进攻坐骑栏和防御坐骑栏合并为同一个位置(重启后生效)。',
|
||||||
|
restart:true,
|
||||||
|
},
|
||||||
low_performance:{
|
low_performance:{
|
||||||
name:'流畅模式',
|
name:'流畅模式',
|
||||||
init:false,
|
init:false,
|
||||||
|
@ -12342,17 +12348,33 @@
|
||||||
'step 0'
|
'step 0'
|
||||||
event.cards=[];
|
event.cards=[];
|
||||||
event.num=0;
|
event.num=0;
|
||||||
event.slotsx=[...new Set(event.slots)].sort();
|
event.slotsx=[];
|
||||||
|
if(get.is.mountCombined()){
|
||||||
|
event.slots.forEach(type=>{
|
||||||
|
if(type=='equip3'||type=='equip4') event.slotsx.add('equip3_4');
|
||||||
|
else event.slotsx.add(type)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
event.slotsx.addArray(event.slots);
|
||||||
|
}
|
||||||
|
event.slotsx.sort();
|
||||||
if(!event.slots.length) event.finish();
|
if(!event.slots.length) event.finish();
|
||||||
'step 1'
|
'step 1'
|
||||||
var slot=event.slotsx[event.num];
|
var slot=event.slotsx[event.num];
|
||||||
var left=player.countEnabledSlot(slot),lose=Math.min(left,get.numOf(event.slots,slot));
|
var slot_key=slot;
|
||||||
|
var left=player.countEnabledSlot(slot),lose;
|
||||||
|
if(slot=='equip3_4'){
|
||||||
|
lose=Math.min(left,Math.max(get.numOf(event.slots,'equip3'),get.numOf(event.slots,'equip4')));
|
||||||
|
slot_key='equip3';
|
||||||
|
}
|
||||||
|
else lose=Math.min(left,get.numOf(event.slots,slot));
|
||||||
if(lose<=0) event.goto(3);
|
if(lose<=0) event.goto(3);
|
||||||
else{
|
else{
|
||||||
game.log(player,'废除了'+get.cnNumber(lose)+'个','#g'+get.translation(slot)+'栏');
|
game.log(player,'废除了'+get.cnNumber(lose)+'个','#g'+get.translation(slot)+'栏');
|
||||||
if(!player.disabledSlots) player.disabledSlots={};
|
if(!player.disabledSlots) player.disabledSlots={};
|
||||||
if(!player.disabledSlots[slot]) player.disabledSlots[slot]=0;
|
if(!player.disabledSlots[slot_key]) player.disabledSlots[slot_key]=0;
|
||||||
player.disabledSlots[slot]+=lose;
|
player.disabledSlots[slot_key]+=lose;
|
||||||
var cards=player.getEquips(slot).filter(card=>!event.cards.contains(card));
|
var cards=player.getEquips(slot).filter(card=>!event.cards.contains(card));
|
||||||
if(cards.length>0){
|
if(cards.length>0){
|
||||||
if(lose>=left){
|
if(lose>=left){
|
||||||
|
@ -12367,6 +12389,7 @@
|
||||||
],true,[1,num]).set('filterOk',function(){
|
],true,[1,num]).set('filterOk',function(){
|
||||||
var evt=_status.event;
|
var evt=_status.event;
|
||||||
return ui.selected.buttons.reduce(function(num,button){
|
return ui.selected.buttons.reduce(function(num,button){
|
||||||
|
if(evt.slot=='equip3_4') return num+Math.max(get.numOf(get.subtypes(button.link,false),'equip3'),get.numOf(get.subtypes(button.link,false),'equip4'));
|
||||||
return num+get.numOf(get.subtypes(button.link,false),evt.slot)
|
return num+get.numOf(get.subtypes(button.link,false),evt.slot)
|
||||||
},0)==evt.required;
|
},0)==evt.required;
|
||||||
}).set('required',num).set('slot',slot)
|
}).set('required',num).set('slot',slot)
|
||||||
|
@ -12402,13 +12425,27 @@
|
||||||
},
|
},
|
||||||
expandEquip:function(){
|
expandEquip:function(){
|
||||||
if(!event.slots.length) return;
|
if(!event.slots.length) return;
|
||||||
var slotsx=[...new Set(event.slots)].sort();
|
var slotsx=[];
|
||||||
|
if(get.is.mountCombined()){
|
||||||
|
event.slots.forEach(type=>{
|
||||||
|
if(type=='equip3'||type=='equip4') slotsx.add('equip3_4');
|
||||||
|
else slotsx.add(type)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
slotsx.addArray(event.slots);
|
||||||
|
}
|
||||||
|
slotsx.sort();
|
||||||
for(var slot of slotsx){
|
for(var slot of slotsx){
|
||||||
var expand=get.numOf(event.slots,slot);
|
var expand=get.numOf(event.slots,slot),slot_key=slot;
|
||||||
|
if(slot=='equip3_4'){
|
||||||
|
expand=Math.max(get.numOf(event.slots,'equip3'),get.numOf(event.slots,'equip4'));
|
||||||
|
slot_key='equip3';
|
||||||
|
}
|
||||||
game.log(player,'获得了'+get.cnNumber(expand)+'个额外的','#g'+get.translation(slot)+'栏');
|
game.log(player,'获得了'+get.cnNumber(expand)+'个额外的','#g'+get.translation(slot)+'栏');
|
||||||
if(!player.expandedSlots) player.expandedSlots={};
|
if(!player.expandedSlots) player.expandedSlots={};
|
||||||
if(!player.expandedSlots[slot]) player.expandedSlots[slot]=0;
|
if(!player.expandedSlots[slot_key]) player.expandedSlots[slot_key]=0;
|
||||||
player.expandedSlots[slot]+=expand;
|
player.expandedSlots[slot_key]+=expand;
|
||||||
}
|
}
|
||||||
player.$syncExpand();
|
player.$syncExpand();
|
||||||
},
|
},
|
||||||
|
@ -12428,13 +12465,25 @@
|
||||||
else{
|
else{
|
||||||
event.num=0;
|
event.num=0;
|
||||||
event.slots=types;
|
event.slots=types;
|
||||||
event.slotsx=[...new Set(event.slots)].sort();
|
event.slotsx=[];
|
||||||
|
if(get.is.mountCombined()){
|
||||||
|
event.slots.forEach(type=>{
|
||||||
|
if(type=='equip3'||type=='equip4') event.slotsx.add('equip3_4');
|
||||||
|
else event.slotsx.add(type)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
event.slotsx.addArray(event.slots);
|
||||||
|
}
|
||||||
|
event.slotsx.sort();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else event.goto(4);
|
else event.goto(4);
|
||||||
'step 1'
|
'step 1'
|
||||||
var slot=event.slotsx[event.num];
|
var slot=event.slotsx[event.num];
|
||||||
var left=player.countEquipableSlot(slot),lose=Math.min(left,get.numOf(event.slots,slot));
|
var left=player.countEquipableSlot(slot),lose;
|
||||||
|
if(slot=='equip3_4') lose=Math.min(left,Math.max(get.numOf(event.slots,'equip3'),get.numOf(event.slots,'equip4')));
|
||||||
|
else lose=Math.min(left,get.numOf(event.slots,slot));
|
||||||
if(lose<=0) event.goto(3);
|
if(lose<=0) event.goto(3);
|
||||||
else{
|
else{
|
||||||
var cards=player.getEquips(slot).filter(card=>{
|
var cards=player.getEquips(slot).filter(card=>{
|
||||||
|
@ -12453,6 +12502,7 @@
|
||||||
],true,[1,num]).set('filterOk',function(){
|
],true,[1,num]).set('filterOk',function(){
|
||||||
var evt=_status.event;
|
var evt=_status.event;
|
||||||
return ui.selected.buttons.reduce(function(num,button){
|
return ui.selected.buttons.reduce(function(num,button){
|
||||||
|
if(evt.slot=='equip3_4') return num+Math.max(get.numOf(get.subtypes(button.link,false),'equip3'),get.numOf(get.subtypes(button.link,false),'equip4'));
|
||||||
return num+get.numOf(get.subtypes(button.link,false),evt.slot)
|
return num+get.numOf(get.subtypes(button.link,false),evt.slot)
|
||||||
},0)==evt.required;
|
},0)==evt.required;
|
||||||
}).set('required',num).set('slot',slot)
|
}).set('required',num).set('slot',slot)
|
||||||
|
@ -13557,7 +13607,7 @@
|
||||||
if(player.hasEnabledSlot(i)) list.push('equip'+i);
|
if(player.hasEnabledSlot(i)) list.push('equip'+i);
|
||||||
}
|
}
|
||||||
if(event.horse){
|
if(event.horse){
|
||||||
if(list.contains('equip3')&&list.contains('equip4')) list.push('equip3_4');
|
if(list.contains('equip3')&&(get.is.mountCombined()||list.contains('equip4'))) list.push('equip3_4');
|
||||||
list.remove('equip3');
|
list.remove('equip3');
|
||||||
list.remove('equip4');
|
list.remove('equip4');
|
||||||
}
|
}
|
||||||
|
@ -20626,7 +20676,12 @@
|
||||||
//type为要判断的区域 若为空 则判断玩家是否有任意一个被废除的区域
|
//type为要判断的区域 若为空 则判断玩家是否有任意一个被废除的区域
|
||||||
hasDisabledSlot:function(type){
|
hasDisabledSlot:function(type){
|
||||||
var player=this;
|
var player=this;
|
||||||
if(type=='horse') return player.hasDisabledSlot(3)&&player.hasDisabledSlot(4);
|
if(type=='horse'||type=='equip3_4'){
|
||||||
|
return player.hasDisabledSlot(3)&&(get.is.mountCombined()||player.hasDisabledSlot(4));
|
||||||
|
}
|
||||||
|
else if(get.is.mountCombined()&&type=='equip4'){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
return player.countDisabledSlot(type)>0;
|
return player.countDisabledSlot(type)>0;
|
||||||
},
|
},
|
||||||
//判断一名角色的某个区域被废除的数量
|
//判断一名角色的某个区域被废除的数量
|
||||||
|
@ -20643,6 +20698,9 @@
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
if(typeof type=='number') type=('equip'+type);
|
if(typeof type=='number') type=('equip'+type);
|
||||||
|
if(get.is.mountCombined()&&type=='equip4'){
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
var num=map[type];
|
var num=map[type];
|
||||||
if(typeof num=='number'&&num>0) return num;
|
if(typeof num=='number'&&num>0) return num;
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -20651,7 +20709,12 @@
|
||||||
//判断一名角色是否有某个装备栏空着
|
//判断一名角色是否有某个装备栏空着
|
||||||
hasEmptySlot:function(type){
|
hasEmptySlot:function(type){
|
||||||
var player=this;
|
var player=this;
|
||||||
if(type=='horse') return player.hasEmptySlot(3)&&player.hasEmptySlot(4);
|
if(type=='horse'||type=='equip3_4'){
|
||||||
|
return player.hasEmptySlot(3)&&(get.is.mountCombined()||player.hasEmptySlot(4));
|
||||||
|
}
|
||||||
|
else if(get.is.mountCombined()&&type=='equip4'){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
return player.countEmptySlot(type)>0;
|
return player.countEmptySlot(type)>0;
|
||||||
},
|
},
|
||||||
//判断一名角色的某个装备栏空位的数量
|
//判断一名角色的某个装备栏空位的数量
|
||||||
|
@ -20659,6 +20722,9 @@
|
||||||
if(!type) return 0;
|
if(!type) return 0;
|
||||||
var player=this;
|
var player=this;
|
||||||
if(typeof type=='number') type=('equip'+type);
|
if(typeof type=='number') type=('equip'+type);
|
||||||
|
else if(type=='equip3_4'){
|
||||||
|
type='equip3';
|
||||||
|
}
|
||||||
return Math.max(0,player.countEnabledSlot(type)-player.getEquips(type).reduce(function(num,card){
|
return Math.max(0,player.countEnabledSlot(type)-player.getEquips(type).reduce(function(num,card){
|
||||||
var types=get.subtypes(card,false);
|
var types=get.subtypes(card,false);
|
||||||
return num+get.numOf(types,type);
|
return num+get.numOf(types,type);
|
||||||
|
@ -20675,6 +20741,12 @@
|
||||||
if(!type) return 0;
|
if(!type) return 0;
|
||||||
var player=this;
|
var player=this;
|
||||||
if(typeof type=='number') type=('equip'+type);
|
if(typeof type=='number') type=('equip'+type);
|
||||||
|
else if(type=='equip3_4'){
|
||||||
|
type='equip3';
|
||||||
|
}
|
||||||
|
else if(get.is.mountCombined()&&type=='equip4'){
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
return Math.max(0,player.countEnabledSlot(type)-player.getEquips(type).reduce(function(num,card){
|
return Math.max(0,player.countEnabledSlot(type)-player.getEquips(type).reduce(function(num,card){
|
||||||
var types=get.subtypes(card,false);
|
var types=get.subtypes(card,false);
|
||||||
if(!lib.filter.canBeReplaced(card,player)) num+=get.numOf(types,type);
|
if(!lib.filter.canBeReplaced(card,player)) num+=get.numOf(types,type);
|
||||||
|
@ -20685,7 +20757,15 @@
|
||||||
//type为要判断的区域 若为空 则判断玩家是否有任意一个未被废除的区域
|
//type为要判断的区域 若为空 则判断玩家是否有任意一个未被废除的区域
|
||||||
hasEnabledSlot:function(type){
|
hasEnabledSlot:function(type){
|
||||||
var player=this;
|
var player=this;
|
||||||
if(type=='horse') return player.hasEnabledSlot(3)&&player.hasEnabledSlot(4);
|
if(type=='horse'||type=='equip3_4'){
|
||||||
|
return player.hasEnabledSlot(3)&&(get.is.mountCombined()||player.hasEnabledSlot(4));
|
||||||
|
}
|
||||||
|
else if(type=='equip3_4'){
|
||||||
|
type='equip3';
|
||||||
|
}
|
||||||
|
else if(get.is.mountCombined()&&type=='equip4'){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
return player.countEnabledSlot(type)>0;
|
return player.countEnabledSlot(type)>0;
|
||||||
},
|
},
|
||||||
//判断一名角色的某个区域未被废除的数量
|
//判断一名角色的某个区域未被废除的数量
|
||||||
|
@ -20702,6 +20782,9 @@
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
if(typeof type=='number') type=('equip'+type);
|
if(typeof type=='number') type=('equip'+type);
|
||||||
|
if(get.is.mountCombined()&&type=='equip4'){
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
var slots=1;
|
var slots=1;
|
||||||
var num=map[type];
|
var num=map[type];
|
||||||
if(typeof num=='number'&&num>0) slots+=num;
|
if(typeof num=='number'&&num>0) slots+=num;
|
||||||
|
@ -20715,7 +20798,13 @@
|
||||||
var type=(typeof subtype);
|
var type=(typeof subtype);
|
||||||
switch(type){
|
switch(type){
|
||||||
case 'string':
|
case 'string':
|
||||||
if(subtype.startsWith('equip')&&parseInt(subtype.slice(5))>0){
|
if(subtype=='equip3_4'){
|
||||||
|
const cards=[];
|
||||||
|
cards.addArray(this.getEquips(3));
|
||||||
|
cards.addArray(this.getEquips(4));
|
||||||
|
return cards;
|
||||||
|
}
|
||||||
|
else if(subtype.startsWith('equip')&&parseInt(subtype.slice(5))>0){
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
else if(lib.card[subtype]){
|
else if(lib.card[subtype]){
|
||||||
|
@ -20853,8 +20942,9 @@
|
||||||
},
|
},
|
||||||
//同步装备区废除牌显示状态
|
//同步装备区废除牌显示状态
|
||||||
$syncDisable:function(map){
|
$syncDisable:function(map){
|
||||||
var player=this;
|
const player=this;
|
||||||
var suits={equip3:'+1马栏',equip4:'-1马栏',equip6:'特殊栏'};
|
const suits={equip3:'+1马栏',equip4:'-1马栏',equip6:'特殊栏'};
|
||||||
|
if(get.is.mountCombined()) suits.equip3='坐骑栏';
|
||||||
if(!map){
|
if(!map){
|
||||||
map=(player.disabledSlots||{});
|
map=(player.disabledSlots||{});
|
||||||
}
|
}
|
||||||
|
@ -20863,29 +20953,29 @@
|
||||||
player.disabledSlots=map;
|
player.disabledSlots=map;
|
||||||
player.$syncDisable(map);
|
player.$syncDisable(map);
|
||||||
},player,map)
|
},player,map)
|
||||||
var map2=get.copy(map);
|
const map2=get.copy(map);
|
||||||
var cards=Array.from(player.node.equips.childNodes);
|
const cards=Array.from(player.node.equips.childNodes);
|
||||||
for(var card of cards){
|
for(const card of cards){
|
||||||
if(card.name.startsWith('feichu_')){
|
if(card.name.startsWith('feichu_')){
|
||||||
var index=card.name.slice(7);
|
const index=card.name.slice(7);
|
||||||
if(!map2[index]) map2[index]=0;
|
if(!map2[index]) map2[index]=0;
|
||||||
map2[index]--;
|
map2[index]--;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for(var index in map2){
|
for(const index in map2){
|
||||||
if(!index.startsWith('equip')||!(parseInt(index.slice(5))>0)) continue;
|
if(!index.startsWith('equip')||!(parseInt(index.slice(5))>0)) continue;
|
||||||
var num=map2[index];
|
const num=map2[index];
|
||||||
if(num>0){
|
if(num>0){
|
||||||
for(var i=0;i<num;i++){
|
for(let i=0;i<num;i++){
|
||||||
var card=game.createCard('feichu_'+index,(suits[index]||(get.translation(index)+'栏')),'');
|
const card=game.createCard('feichu_'+index,(suits[index]||(get.translation(index)+'栏')),'');
|
||||||
card.fix();
|
card.fix();
|
||||||
card.style.transform='';
|
card.style.transform='';
|
||||||
card.classList.remove('drawinghidden');
|
card.classList.remove('drawinghidden');
|
||||||
card.classList.add('feichu');
|
card.classList.add('feichu');
|
||||||
delete card._transform;
|
delete card._transform;
|
||||||
var equipNum=get.equipNum(card);
|
const equipNum=get.equipNum(card);
|
||||||
var equipped=false;
|
let equipped=false;
|
||||||
for(var j=0;j<player.node.equips.childNodes.length;j++){
|
for(let j=0;j<player.node.equips.childNodes.length;j++){
|
||||||
if(get.equipNum(player.node.equips.childNodes[j])>=equipNum){
|
if(get.equipNum(player.node.equips.childNodes[j])>=equipNum){
|
||||||
player.node.equips.insertBefore(card,player.node.equips.childNodes[j]);
|
player.node.equips.insertBefore(card,player.node.equips.childNodes[j]);
|
||||||
equipped=true;
|
equipped=true;
|
||||||
|
@ -20901,8 +20991,8 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if(num<0){
|
else if(num<0){
|
||||||
for(var i=0;i>num;i--){
|
for(let i=0;i>num;i--){
|
||||||
var card=cards.find(card=>card.name=='feichu_'+index);
|
const card=cards.find(card=>card.name=='feichu_'+index);
|
||||||
if(card){
|
if(card){
|
||||||
player.node.equips.removeChild(card);
|
player.node.equips.removeChild(card);
|
||||||
cards.remove(card);
|
cards.remove(card);
|
||||||
|
@ -20913,10 +21003,19 @@
|
||||||
},
|
},
|
||||||
//以下函数涉及到本次更新内容而进行修改
|
//以下函数涉及到本次更新内容而进行修改
|
||||||
canEquip:function(name,replace){
|
canEquip:function(name,replace){
|
||||||
var ranges=get.subtypes(name),rangex=[...new Set(ranges)],player=this;
|
const ranges=get.subtypes(name),rangex=[],player=this,combined=get.is.mountCombined();
|
||||||
for(var range of rangex){
|
if(combined){
|
||||||
var num=this.countEquipableSlot(range);
|
ranges.forEach(type=>{
|
||||||
var num2=get.numOf(rangex,range);
|
if(type=='equip3'||type=='equip4') rangex.add('equip3_4');
|
||||||
|
else rangex.add(type)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
rangex.push(...new Set(ranges));
|
||||||
|
}
|
||||||
|
for(let range of rangex){
|
||||||
|
let num=this.countEquipableSlot(range);
|
||||||
|
let num2=get.numOf(rangex,range);
|
||||||
if(!replace) num-=this.getEquips(range).filter(card=>lib.filter.canBeReplaced(card,player)).length;
|
if(!replace) num-=this.getEquips(range).filter(card=>lib.filter.canBeReplaced(card,player)).length;
|
||||||
if(num<num2) return false;
|
if(num<num2) return false;
|
||||||
}
|
}
|
||||||
|
@ -23538,7 +23637,7 @@
|
||||||
else if(get.itemtype(arguments[i])=='select'||typeof arguments[i]=='number') select=arguments[i];
|
else if(get.itemtype(arguments[i])=='select'||typeof arguments[i]=='number') select=arguments[i];
|
||||||
}
|
}
|
||||||
for(var i=0;i<list.length;i++){
|
for(var i=0;i<list.length;i++){
|
||||||
list[i]=[notype?'':(get.subtype(list[i])||get.type(list[i])),'',list[i]];
|
list[i]=[notype?'':(get.subtype(list[i],false)||get.type(list[i])),'',list[i]];
|
||||||
}
|
}
|
||||||
if(prompt==undefined) prompt='请选择卡牌';
|
if(prompt==undefined) prompt='请选择卡牌';
|
||||||
return this.chooseButton(forced,select,'hidden',[prompt,[list,'vcard'],'hidden']);
|
return this.chooseButton(forced,select,'hidden',[prompt,[list,'vcard'],'hidden']);
|
||||||
|
@ -29506,7 +29605,7 @@
|
||||||
this.classList.remove('gold');
|
this.classList.remove('gold');
|
||||||
this.classList.remove('unique');
|
this.classList.remove('unique');
|
||||||
this.style.background='';
|
this.style.background='';
|
||||||
var subtype=get.subtype(this);
|
var subtype=get.subtype(this,false);
|
||||||
if(subtype){
|
if(subtype){
|
||||||
this.classList.remove(subtype);
|
this.classList.remove(subtype);
|
||||||
}
|
}
|
||||||
|
@ -29759,7 +29858,7 @@
|
||||||
}
|
}
|
||||||
if(typeof info.init=='function') info.init();
|
if(typeof info.init=='function') info.init();
|
||||||
this.node.range.innerHTML='';
|
this.node.range.innerHTML='';
|
||||||
switch(get.subtype(this)){
|
switch(get.subtype(this,false)){
|
||||||
case 'equip1':
|
case 'equip1':
|
||||||
var added=false;
|
var added=false;
|
||||||
if(lib.card[this.name]&&lib.card[this.name].distance){
|
if(lib.card[this.name]&&lib.card[this.name].distance){
|
||||||
|
@ -31568,7 +31667,7 @@
|
||||||
if(type=='trick') return 0;
|
if(type=='trick') return 0;
|
||||||
if(type=='delay') return 1;
|
if(type=='delay') return 1;
|
||||||
if(type=='equip'){
|
if(type=='equip'){
|
||||||
var type2=get.subtype(name);
|
var type2=get.subtype(name,false);
|
||||||
if(type2&&type2.slice) return 1+parseInt(type2.slice(5)||7);
|
if(type2&&type2.slice) return 1+parseInt(type2.slice(5)||7);
|
||||||
return 8.5
|
return 8.5
|
||||||
}
|
}
|
||||||
|
@ -31657,12 +31756,14 @@
|
||||||
content:function(storage,player){
|
content:function(storage,player){
|
||||||
storage=player.expandedSlots;
|
storage=player.expandedSlots;
|
||||||
if(!storage) return '当前没有扩展装备栏';
|
if(!storage) return '当前没有扩展装备栏';
|
||||||
var keys=Object.keys(storage).sort();
|
const keys=Object.keys(storage).sort(),combined=get.is.mountCombined();
|
||||||
var str='';
|
let str='';
|
||||||
for(var key of keys){
|
for(const key of keys){
|
||||||
var num=storage[key];
|
const num=storage[key];
|
||||||
if(typeof num=='number'&&num>0){
|
if(typeof num=='number'&&num>0){
|
||||||
str+='<li>'+get.translation(key)+'栏:'+num+'个<br>'
|
let trans=get.translation(key);
|
||||||
|
if(combined&&key=='equip3') trans='坐骑栏';
|
||||||
|
str+='<li>'+trans+'栏:'+num+'个<br>'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(str.length) return str.slice(0,str.length-4);
|
if(str.length) return str.slice(0,str.length-4);
|
||||||
|
@ -56546,8 +56647,14 @@
|
||||||
if(typeof obj!='object') return;
|
if(typeof obj!='object') return;
|
||||||
var name=get.name(obj,player);
|
var name=get.name(obj,player);
|
||||||
if(!lib.card[name]) return [];
|
if(!lib.card[name]) return [];
|
||||||
if(lib.card[name].subtypes) return get.copy(lib.card[name].subtypes);
|
if(lib.card[name].subtypes){
|
||||||
else if(lib.card[name].subtype) return [lib.card[name].subtype];
|
const subtypes=get.copy(lib.card[name].subtypes);
|
||||||
|
return subtypes;
|
||||||
|
}
|
||||||
|
else if(lib.card[name].subtype){
|
||||||
|
const subtype=lib.card[name].subtype;
|
||||||
|
return [subtype];
|
||||||
|
}
|
||||||
return [];
|
return [];
|
||||||
},
|
},
|
||||||
//装备栏 END
|
//装备栏 END
|
||||||
|
@ -56699,6 +56806,15 @@
|
||||||
return 0;
|
return 0;
|
||||||
},
|
},
|
||||||
is:{
|
is:{
|
||||||
|
/**
|
||||||
|
* 判断坐骑栏是否被合并
|
||||||
|
*/
|
||||||
|
mountCombined:function(){
|
||||||
|
if(typeof _status.mountCombined!='boolean'){
|
||||||
|
_status.mountCombined=lib.config.mount_combine;
|
||||||
|
}
|
||||||
|
return _status.mountCombined;
|
||||||
|
},
|
||||||
/**
|
/**
|
||||||
* 判断传入的参数的属性是否相同(参数可以为卡牌、卡牌信息、属性等)
|
* 判断传入的参数的属性是否相同(参数可以为卡牌、卡牌信息、属性等)
|
||||||
* @param ...infos 要判断的属性列表
|
* @param ...infos 要判断的属性列表
|
||||||
|
@ -58202,9 +58318,10 @@
|
||||||
subtype:(obj,player)=>{
|
subtype:(obj,player)=>{
|
||||||
if(typeof obj=='string') obj={name:obj};
|
if(typeof obj=='string') obj={name:obj};
|
||||||
if(typeof obj!='object') return;
|
if(typeof obj!='object') return;
|
||||||
var name=get.name(obj,player);
|
const name=get.name(obj,player);
|
||||||
if(!lib.card[name]) return;
|
if(!lib.card[name]) return;
|
||||||
return lib.card[name].subtype;
|
let subtype=lib.card[name].subtype;
|
||||||
|
return subtype;
|
||||||
},
|
},
|
||||||
equiptype:(card,player)=>{
|
equiptype:(card,player)=>{
|
||||||
var subtype=get.subtype(card,player);
|
var subtype=get.subtype(card,player);
|
||||||
|
@ -59829,7 +59946,7 @@
|
||||||
else{
|
else{
|
||||||
if(lib.translate[name+'_info']){
|
if(lib.translate[name+'_info']){
|
||||||
if(!uiintro.nosub){
|
if(!uiintro.nosub){
|
||||||
if(get.subtype(name)=='equip1'){
|
if(get.subtype(name,false)=='equip1'){
|
||||||
var added=false;
|
var added=false;
|
||||||
if(lib.card[node.name]&&lib.card[node.name].distance){
|
if(lib.card[node.name]&&lib.card[node.name].distance){
|
||||||
var dist=lib.card[node.name].distance;
|
var dist=lib.card[node.name].distance;
|
||||||
|
@ -59842,8 +59959,8 @@
|
||||||
uiintro.add('<div class="text center">攻击范围:1</div>');
|
uiintro.add('<div class="text center">攻击范围:1</div>');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if(get.subtype(name)){
|
else if(get.subtype(name,false)){
|
||||||
uiintro.add('<div class="text center">'+get.translation(get.subtype(name))+'</div>');
|
uiintro.add('<div class="text center">'+get.translation(get.subtype(name,false))+'</div>');
|
||||||
}
|
}
|
||||||
else if(lib.card[name]&&lib.card[name].addinfomenu){
|
else if(lib.card[name]&&lib.card[name].addinfomenu){
|
||||||
uiintro.add('<div class="text center">'+lib.card[name].addinfomenu+'</div>');
|
uiintro.add('<div class="text center">'+lib.card[name].addinfomenu+'</div>');
|
||||||
|
|
Loading…
Reference in New Issue