game.washCard

This commit is contained in:
Spmario233 2023-09-13 19:36:33 +08:00
parent 7caa701806
commit 5f8c320b22
3 changed files with 54 additions and 81 deletions

View File

@ -4305,7 +4305,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
skillAnimation:true,
animationColor:'wood',
onWash:function(){
_status.event.getParent('fuzhu').washed=false;
_status.event.getParent('fuzhu').washed=true;
return 'remove';
},
content:function(){
@ -4319,19 +4319,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return card.name=='sha'&&player.canUse(card,trigger.player,false);
});
if(card){
card.remove();
game.updateRoundNumber();
player.useCard(card,trigger.player,false);
}
'step 2'
if(event.total>0&&!event.washed&&ui.cardPile.childElementCount<=player.hp*10&&trigger.player.isIn()) event.goto(1);
'step 3'
lib.onwash.remove(lib.skill.fuzhu.onWash);
var cards=get.cards(ui.cardPile.childElementCount+1);
for(var i=0;i<cards.length;i++){
ui.cardPile.insertBefore(cards[i],ui.cardPile.childNodes[get.rand(ui.cardPile.childElementCount)]);
}
game.updateRoundNumber();
game.washCard();
},
ai:{
threaten:1.5

View File

@ -3057,7 +3057,7 @@
cardtempname:{
name:'视为卡牌名称显示',
intro:'显示强制视为类卡牌(如武魂),包括拆顺对话框内的判定牌(国色)转换等名称的显示方式',
init:'default',
init:'image',
unfrequent:true,
item:{
default:'纵向',
@ -32412,6 +32412,37 @@
}
};
const game={
//洗牌
washCard:()=>{
if(_status.maxShuffle!=undefined){
if(_status.maxShuffle==0){
if(_status.maxShuffleCheck){
game.over(_status.maxShuffleCheck());
}
else{
game.over('平局');
}
return [];
}
_status.maxShuffle--;
}
game.shuffleNumber++;
const cards=Array.from(ui.cardPile);
if(_status.discarded){
_status.discarded.length=0;
}
for(let i=0;i<ui.discardPile.childNodes.length;i++){
var currentcard=ui.discardPile.childNodes[i];
currentcard.vanishtag.length=0;
if(get.info(currentcard).vanish||currentcard.storage.vanish){
currentcard.remove();
continue;
}
cards.push(currentcard);
}
cards.randomSort();
game.cardsGotoPile(cards,'triggeronly','washCard')
},
//addGroup
//基于钩子的添加势力方法
addGroup:(id,short,name,config)=>{
@ -54512,34 +54543,7 @@
if(num<0) num=1;
while(num--){
if(ui.cardPile.hasChildNodes()==false){
if(_status.maxShuffle!=undefined){
if(_status.maxShuffle==0){
if(_status.maxShuffleCheck){
game.over(_status.maxShuffleCheck());
}
else{
game.over('平局');
}
return [];
}
_status.maxShuffle--;
}
game.shuffleNumber++;
var cards=[],i;
if(_status.discarded){
_status.discarded.length=0;
}
for(i=0;i<ui.discardPile.childNodes.length;i++){
var currentcard=ui.discardPile.childNodes[i];
currentcard.vanishtag.length=0;
if(get.info(currentcard).vanish||currentcard.storage.vanish){
currentcard.remove();
continue;
}
cards.push(currentcard);
}
cards.randomSort();
game.cardsGotoPile(cards,'triggeronly','washCard')
game.washCard();
}
if(ui.cardPile.hasChildNodes()==false){
game.over('平局');
@ -56001,34 +56005,7 @@
if(num<0) num=1;
while(num--){
if(ui.cardPile.hasChildNodes()==false){
if(_status.maxShuffle!=undefined){
if(_status.maxShuffle==0){
if(_status.maxShuffleCheck){
game.over(_status.maxShuffleCheck());
}
else{
game.over('平局');
}
return [];
}
_status.maxShuffle--;
}
game.shuffleNumber++;
var cards=[],i;
if(_status.discarded){
_status.discarded.length=0;
}
for(i=0;i<ui.discardPile.childNodes.length;i++){
var currentcard=ui.discardPile.childNodes[i];
currentcard.vanishtag.length=0;
if(get.info(currentcard).vanish||currentcard.storage.vanish){
currentcard.remove();
continue;
}
cards.push(currentcard);
}
cards.randomSort();
game.cardsGotoPile(cards,'triggeronly','washCard')
game.washCard();
}
if(ui.cardPile.hasChildNodes()==false){
game.over('平局');

View File

@ -3149,23 +3149,25 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
},
group:'boss_diting_init',
subSkill:{
trigger:{
global:'gameStart',
player:'enterGame',
},
forced:true,
filter:function(event,player){
return player.hasEnabledSlot(3)||player.hasEnabledSlot(4);
},
content:function(){
var disables=[];
for(var i=3;i<=4;i++){
for(var j=0;j<player.countEnabledSlot(i);j++){
disables.push(i);
init:{
trigger:{
global:'gameStart',
player:'enterGame',
},
forced:true,
filter:function(event,player){
return player.hasEnabledSlot(3)||player.hasEnabledSlot(4);
},
content:function(){
var disables=[];
for(var i=3;i<=4;i++){
for(var j=0;j<player.countEnabledSlot(i);j++){
disables.push(i);
}
}
}
if(disables.length>0) player.disableEquip(disables);
},
if(disables.length>0) player.disableEquip(disables);
},
}
},
},
/*