Merge pull request #974 from mengxinzxz/PR-Branch

bugfix
This commit is contained in:
Spmario233 2024-02-21 20:40:41 +08:00 committed by GitHub
commit a717ffbc7b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 27 additions and 21 deletions

View File

@ -7192,6 +7192,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
mark:true, mark:true,
marktext:'阵', marktext:'阵',
intro:{ intro:{
markcount:()=>0,
content:function(storage,player,skill){ content:function(storage,player,skill){
if(storage.length) return '失效技能:'+get.translation(storage); if(storage.length) return '失效技能:'+get.translation(storage);
return '无失效技能'; return '无失效技能';
@ -7303,7 +7304,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
target.addAdditionalSkills('dczecai_effect','rejizhi'); target.addAdditionalSkills('dczecai_effect','rejizhi');
target.addTempSkill('dczecai_effect','roundStart'); target.addTempSkill('dczecai_effect','roundStart');
if(target==event.target){ if(target==event.target){
var evt=trigger._trigger; var evt=trigger;
target.insertPhase(); target.insertPhase();
if(evt.player!=target&&!evt._finished){ if(evt.player!=target&&!evt._finished){
evt.finish(); evt.finish();

View File

@ -29,7 +29,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
xin_huojun:['male','shu',4,['sidai','jieyu'],['character:tw_huojun','die_audio:tw_huojun']], xin_huojun:['male','shu',4,['sidai','jieyu'],['character:tw_huojun','die_audio:tw_huojun']],
muludawang:['male','qun','3/3/1',['shoufa','zhoulin','yuxiang']], muludawang:['male','qun','3/3/1',['shoufa','zhoulin','yuxiang']],
mb_chengui:['male','qun',3,['guimou','zhouxian']], mb_chengui:['male','qun',3,['guimou','zhouxian']],
mb_huban:['male','wei',4,['mbyilie']], mb_huban:['male','wei',3,['mbyilie']],
mb_xianglang:['male','shu',3,['naxue','yijie']], mb_xianglang:['male','shu',3,['naxue','yijie']],
yanxiang:['male','qun',3,['kujian','twruilian'],['die_audio:tw_yanxiang']], yanxiang:['male','qun',3,['kujian','twruilian'],['die_audio:tw_yanxiang']],
mb_sunluyu:['female','wu',3,['mbmeibu','mbmumu']], mb_sunluyu:['female','wu',3,['mbmeibu','mbmumu']],
@ -687,7 +687,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
} }
targets=targets.filter(target=>target!=player&&target.countCards('h')); targets=targets.filter(target=>target!=player&&target.countCards('h'));
if(targets.length){ if(targets.length){
var result=yield player.chooseTarget('请选择【诡谋】的目标','观看一名可选择的角色的手牌并选择其中至多三张牌,然后你可以将其中至多两张牌交给另一名其他角色,然后弃置剩余的牌',(card,player,target)=>{ var result=yield player.chooseTarget('请选择【诡谋】的目标','观看一名可选择的角色的手牌并选择其中至多两张牌,然后你可以将其中至多一张牌交给另一名其他角色,然后弃置剩余的牌',(card,player,target)=>{
return _status.event.targets.includes(target)&&target.countCards('h'); return _status.event.targets.includes(target)&&target.countCards('h');
},true).set('ai',target=>{ },true).set('ai',target=>{
return Math.sqrt(Math.min(3,target.countCards('h')))*get.effect(target,{name:'guohe_copy2'},player,player); return Math.sqrt(Math.min(3,target.countCards('h')))*get.effect(target,{name:'guohe_copy2'},player,player);
@ -696,12 +696,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
var target=result.targets[0]; var target=result.targets[0];
player.logSkill('guimou',target); player.logSkill('guimou',target);
player.addExpose(0.3); player.addExpose(0.3);
var result2=yield player.choosePlayerCard(target,'h','visible','<div class="text center">选择其中至多三张牌,然后你可以将其中至多两张牌交给另一名其他角色,然后弃置剩余的牌</div>',[1,3],true).set('ai',button=>get.value(button.link)); var result2=yield player.choosePlayerCard(target,'h','visible','<div class="text center">选择其中至多两张牌,然后你可以将其中至多一张牌交给另一名其他角色,然后弃置剩余的牌</div>',[1,2],true).set('ai',button=>get.value(button.link));
if(result2.bool){ if(result2.bool){
var cards=result2.links.slice(); var cards=result2.links.slice();
var result3; var result3;
if(!game.hasPlayer(targetx=>targetx!=player&&targetx!=target)) result3={bool:false}; if(!game.hasPlayer(targetx=>targetx!=player&&targetx!=target)) result3={bool:false};
else result3=yield player.chooseCardButton('是否将其中至多张牌交给另一名其他角色',cards,[1,Math.min(2,cards.length)]).set('ai',button=>{ else result3=yield player.chooseCardButton('是否将其中至多张牌交给另一名其他角色',cards).set('ai',button=>{
var player=_status.event.player; var player=_status.event.player;
if(!game.hasPlayer(target=>target!=player&&target!=_status.event.target&&get.attitude(player,target)>0)) return 0; if(!game.hasPlayer(target=>target!=player&&target!=_status.event.target&&get.attitude(player,target)>0)) return 0;
return get.value(button.link,_status.event.player); return get.value(button.link,_status.event.player);
@ -870,7 +870,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
logTarget:'player', logTarget:'player',
content:function*(event,map){ content:function*(event,map){
var player=map.player,trigger=map.trigger,target=trigger.player; var player=map.player,trigger=map.trigger,target=trigger.player;
var cards=get.cards(2); var cards=get.cards(3);
yield game.cardsDiscard(cards);
player.showCards(cards,get.translation(player)+'发动了【州贤】'); player.showCards(cards,get.translation(player)+'发动了【州贤】');
var result=yield target.chooseToDiscard('he','州贤:弃置一张其中有的类别的牌,或令此牌对'+get.translation(player)+'无效',(card,player)=>{ var result=yield target.chooseToDiscard('he','州贤:弃置一张其中有的类别的牌,或令此牌对'+get.translation(player)+'无效',(card,player)=>{
return _status.event.cards.some(cardx=>get.type2(cardx)==get.type2(card)); return _status.event.cards.some(cardx=>get.type2(cardx)==get.type2(card));
@ -890,7 +891,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
bs.remove(card); bs.remove(card);
if(card.cards) bs.removeArray(card.cards); if(card.cards) bs.removeArray(card.cards);
else bs.removeArray(ui.selected.cards); else bs.removeArray(ui.selected.cards);
var cardx=Array.from(ui.cardPile.childNodes).slice(0,2); var cardx=Array.from(ui.cardPile.childNodes).slice(0,3);
bs=bs.filter(i=>cardx.some(j=>get.type2(j)==get.type2(i))); bs=bs.filter(i=>cardx.some(j=>get.type2(j)==get.type2(i)));
if(!bs.length) return 'zerotarget'; if(!bs.length) return 'zerotarget';
if(bs.length<=2){ if(bs.length<=2){
@ -956,15 +957,19 @@ game.import('character',function(lib,game,ui,get,ai,_status){
mbyilie3:{ mbyilie3:{
audio:'mbyilie', audio:'mbyilie',
trigger:{player:'phaseEnd'}, trigger:{player:'phaseEnd'},
filter:function(event,player){ //filter:function(event,player){
return player.countMark('mbyilie'); // return player.countMark('mbyilie');
}, //},
forced:true, forced:true,
content:function(){ content:function(){
'step 0'
player.draw();
'step 1'
var num=player.countMark('mbyilie'); var num=player.countMark('mbyilie');
player.draw(num); if(num){
player.loseHp(num); player.loseHp(num);
player.removeMark('mbyilie',num); player.removeMark('mbyilie',num);
}
}, },
}, },
//向朗 //向朗
@ -16507,15 +16512,15 @@ game.import('character',function(lib,game,ui,get,ai,_status){
mb_chengui:'手杀陈珪', mb_chengui:'手杀陈珪',
mb_chengui_prefix:'手杀', mb_chengui_prefix:'手杀',
guimou:'诡谋', guimou:'诡谋',
guimou_info:'锁定技。游戏开始时/回合结束时,你随机/须选择以下一项直到你的下个准备阶段:①记录场上期间角色使用牌数;②记录期间场上角色弃置牌数;③记录期间场上角色获得牌数。准备阶段,你可以选择一名场上对应记录数值最少的其他角色,观看其手牌并选择其中至多三张牌,然后你可以将其中至多两张牌交给另一名其他角色,然后弃置其余牌。', guimou_info:'锁定技。游戏开始时/回合结束时,你随机/须选择以下一项直到你的下个准备阶段:①记录场上期间角色使用牌数;②记录期间场上角色弃置牌数;③记录期间场上角色获得牌数。准备阶段,你可以选择一名场上对应记录数值最少的其他角色,观看其手牌并选择其中至多两张牌,然后你可以将其中至多一张牌交给另一名其他角色,然后弃置其余牌。',
zhouxian:'州贤', zhouxian:'州贤',
zhouxian_info:'锁定技。当你成为其他角色使用的伤害类卡牌的目标后,你亮出牌堆顶的张牌,然后其须选择一项:①弃置一张与亮出牌之一类别相同的牌;②令此牌对你无效。', zhouxian_info:'锁定技。当你成为其他角色使用的伤害类卡牌的目标后,你亮出牌堆顶的张牌,然后其须选择一项:①弃置一张与亮出牌之一类别相同的牌;②令此牌对你无效。',
mb_huban:'手杀胡班', mb_huban:'手杀胡班',
mb_huban_prefix:'手杀', mb_huban_prefix:'手杀',
mbyilie:'义烈', mbyilie:'义烈',
mbyilie2:'义烈', mbyilie2:'义烈',
mbyilie3:'义烈', mbyilie3:'义烈',
mbyilie_info:'锁定技。①游戏开始时,你选择一名其他角色,然后你获得以下效果:其受到伤害时,若你的“烈”标记数小于2则你获得等同于伤害值的“烈”标记然后防止此伤害其对其他角色造成伤害后你回复1点体力。②结束阶段若你有“烈”标记你摸X张牌并失去X点体力然后移去所有“烈”标记X为你拥有的“烈”标记数。', mbyilie_info:'锁定技。①游戏开始时,你选择一名其他角色,然后你获得以下效果:其受到伤害时,若你没有“烈”则你获得等同于伤害值的“烈”标记然后防止此伤害其对其他角色造成伤害后你回复1点体力。②结束阶段你摸一张牌并失去X点体力然后移去所有“烈”X为你拥有的“烈”标记数。',
muludawang:'木鹿大王', muludawang:'木鹿大王',
shoufa:'兽法', shoufa:'兽法',
shoufa_info:'当你受到伤害后/于一回合首次造成伤害后,你可以选择一名与你距离大于/不大于2的角色令其随机执行以下一项令其受到1点无来源伤害你随机获得其一张牌你随机弃置其装备区的一张牌令其摸一张牌。', shoufa_info:'当你受到伤害后/于一回合首次造成伤害后,你可以选择一名与你距离大于/不大于2的角色令其随机执行以下一项令其受到1点无来源伤害你随机获得其一张牌你随机弃置其装备区的一张牌令其摸一张牌。',

View File

@ -1749,7 +1749,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
target.removeSkill(skills); target.removeSkill(skills);
num+=skills.length; num+=skills.length;
}); });
if(get.mode()=='versus'&&_status.mode=='two') num+=3; if(get.mode()!='identity') num+=2;
player.draw(num); player.draw(num);
}, },
}, },
@ -6675,8 +6675,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
sb_xiaoqiao:'谋小乔', sb_xiaoqiao:'谋小乔',
sb_xiaoqiao_prefix:'谋', sb_xiaoqiao_prefix:'谋',
sbtianxiang:'天香', sbtianxiang:'天香',
sbtianxiang_info:'①出牌阶段限三次你可以交给一名没有“天香”标记的其他角色一张红色牌然后令其获得此牌花色的“天香”标记。②当你受到伤害时你可以移去一名角色的“天香”标记若此“天香”标记为红桃你防止此伤害其受到伤害来源对其造成的1点伤害若没有伤害来源则改为无来源伤害方片其交给你两张牌。③准备阶段你移去场上所有的“天香”标记然后摸等量的牌。', sbtianxiang_info_identity:'①出牌阶段限三次你可以交给一名没有“天香”标记的其他角色一张红色牌然后令其获得此牌花色的“天香”标记。②当你受到伤害时你可以移去一名角色的“天香”标记若此“天香”标记为红桃你防止此伤害其受到伤害来源对其造成的1点伤害若没有伤害来源则改为无来源伤害方片其交给你两张牌。③准备阶段你移去场上所有的“天香”标记然后摸等量的牌。',
sbtianxiang_info_versus_two:'①出牌阶段限三次你可以交给一名没有“天香”标记的其他角色一张红色牌然后令其获得此牌花色的“天香”标记。②当你受到伤害时你可以移去一名角色的“天香”标记若此“天香”标记为红桃你防止此伤害其受到伤害来源对其造成的1点伤害若没有伤害来源则改为无来源伤害方片其交给你两张牌。③准备阶段你移去场上所有的“天香”标记然后摸X张牌X为移去的“天香”标记数+3)。', sbtianxiang_info:'①出牌阶段限三次你可以交给一名没有“天香”标记的其他角色一张红色牌然后令其获得此牌花色的“天香”标记。②当你受到伤害时你可以移去一名角色的“天香”标记若此“天香”标记为红桃你防止此伤害其受到伤害来源对其造成的1点伤害若没有伤害来源则改为无来源伤害方片其交给你两张牌。③准备阶段你移去场上所有的“天香”标记然后摸X张牌X为移去的“天香”标记数+2)。',
sb_sp_zhugeliang:'谋卧龙', sb_sp_zhugeliang:'谋卧龙',
sb_sp_zhugeliang_prefix:'谋', sb_sp_zhugeliang_prefix:'谋',
sb_zhugeliang:'谋诸葛亮', sb_zhugeliang:'谋诸葛亮',

View File

@ -1081,7 +1081,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
directHit_ai:true, directHit_ai:true,
skillTagFilter:function(player,tag,arg){ skillTagFilter:function(player,tag,arg){
if(player._olzhanjin_guanshi_temp||!player.hasEmptySlot(1)||!lib.card.guanshi||player.hasSkillTag('unequip_equip1')) return; if(player._olzhanjin_guanshi_temp||!player.hasEmptySlot(1)||!lib.card.guanshi||player.hasSkillTag('unequip_equip1')) return;
player._guanshi_temp=true; player._olzhanjin_guanshi_temp=true;
var bool=(get.attitude(player,arg.target)<0&&arg.card&&arg.card.name=='sha'&&player.countCards('he',card=>{ var bool=(get.attitude(player,arg.target)<0&&arg.card&&arg.card.name=='sha'&&player.countCards('he',card=>{
return card!=arg.card&&(!arg.card.cards||!arg.card.cards.includes(card))&&get.value(card)<5; return card!=arg.card&&(!arg.card.cards||!arg.card.cards.includes(card))&&get.value(card)<5;
})>1); })>1);

View File

@ -480,7 +480,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return game.getGlobalHistory('cardMove',function(evt){ return game.getGlobalHistory('cardMove',function(evt){
if(evt.name!='lose'||event!=evt.getParent()) return false; if(evt.name!='lose'||event!=evt.getParent()) return false;
for(var i in evt.gaintag_map){ for(var i in evt.gaintag_map){
if(evt.gaintag_map[i].includes('dclingxi')) return evt.player==player; if(evt.gaintag_map[i].includes('dclingxi')&&evt.player==player) return true;
} }
return false; return false;
}).length; }).length;