bugfix
This commit is contained in:
parent
f2ba375382
commit
c1e986e3ac
|
@ -393,11 +393,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
forced:true,
|
||||
notUseOrRespond(event,player){
|
||||
if(event.name==='cardsDiscard') return false;
|
||||
const evtx=event.getParent();
|
||||
if(evtx.name==='orderingDiscard') return false;
|
||||
const evt2=(evtx.relatedEvent||evtx.getParent());
|
||||
return !['useCard','respond'].includes(evt2.name)||evt2.player!==player;
|
||||
if (event.name !== 'cardsDiscard') return true;
|
||||
const evtx = event.getParent();
|
||||
if (evtx.name !== 'orderingDiscard') return true;
|
||||
const evt2 = (evtx.relatedEvent || evtx.getParent());
|
||||
return !['useCard', 'respond'].includes(evt2.name) || evt2.player !== player;
|
||||
},
|
||||
async content(event,trigger,player){
|
||||
const cards=[];
|
||||
|
@ -5347,7 +5347,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
'step 1'
|
||||
var num=player.getDamagedHp();
|
||||
if(!player.isIn()||!num) event.finish();
|
||||
else player.chooseTarget('御关:令'+get.cnNumber(num)+'名角色将手牌摸至体力上限',Math.min(game.countPlayer(),[1,num]),true).set('ai',target=>{
|
||||
else player.chooseTarget('御关:令至多'+get.cnNumber(num)+'名角色将手牌摸至体力上限',Math.min(game.countPlayer(),[1,num]),true).set('ai',target=>{
|
||||
return get.attitude(_status.event.player,target)*Math.max(0.1,target.maxHp-target.countCards('h'));
|
||||
});
|
||||
'step 2'
|
||||
|
@ -6872,8 +6872,17 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
disable:{
|
||||
charlotte:true,
|
||||
mod:{
|
||||
cardEnabled2:function(card){
|
||||
if(get.position(card)=='h') return false;
|
||||
cardEnabled(card, player){
|
||||
if (card.cards) {
|
||||
const hs = player.getCards('h');
|
||||
if (card.cards.some(card => hs.includes(card))) return false;
|
||||
}
|
||||
},
|
||||
cardSavable(card, player){
|
||||
if (card.cards) {
|
||||
const hs = player.getCards('h');
|
||||
if (card.cards.some(card => hs.includes(card))) return false;
|
||||
}
|
||||
},
|
||||
},
|
||||
mark:true,
|
||||
|
@ -10284,46 +10293,44 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
if(player==event.player||event.targets.length!=1) return false;
|
||||
return player.countCards('h')>=2;
|
||||
},
|
||||
direct:true,
|
||||
usable:2,
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseToDiscard('he',[2,Infinity],get.prompt('reshejian',trigger.player),'<div class="text center">弃置至少两张手牌,然后选择一项:<br>⒈弃置其等量的牌。⒉对其造成1点伤害。</div>').set('ai',function(card){
|
||||
if(_status.event.goon&&ui.selected.cards.length<2) return 5.6-get.value(card);
|
||||
async cost(event, trigger, player) {
|
||||
event.result = await player.chooseToDiscard('he', [2, Infinity], get.prompt('reshejian', trigger.player), '<div class="text center">弃置至少两张手牌,然后选择一项:<br>⒈弃置其等量的牌。⒉对其造成1点伤害。</div>').set('ai', function (card) {
|
||||
if (_status.event.goon && ui.selected.cards.length < 2) return 5.6 - get.value(card);
|
||||
return 0;
|
||||
}).set('goon',function(){
|
||||
var target=trigger.player;
|
||||
if(get.damageEffect(target,player,player)>0) return true;
|
||||
if(target.countCards('he',function(card){
|
||||
return get.value(card,target)>6;
|
||||
})>=2) return true;
|
||||
}, 'chooseonly').set('goon', function () {
|
||||
var target = trigger.player;
|
||||
if (get.damageEffect(target, player, player) > 0) return true;
|
||||
if (target.countCards('he', function (card) {
|
||||
return get.value(card, target) > 6;
|
||||
}) >= 2) return true;
|
||||
return false;
|
||||
}()).logSkill=['reshejian',trigger.player];
|
||||
}()).forResult();
|
||||
},
|
||||
logTarget: 'player',
|
||||
content: function () {
|
||||
'step 0'
|
||||
player.discard(cards);
|
||||
'step 1'
|
||||
if(!result.bool){
|
||||
player.storage.counttrigger.reshejian--;
|
||||
event.finish();
|
||||
return;
|
||||
}
|
||||
var num=result.cards.length;
|
||||
event.num=num;
|
||||
var target=trigger.player,str=get.translation(target);
|
||||
event.target=target;
|
||||
if(!target.isIn()) event.finish();
|
||||
else if(!target.hasCard(function(card){
|
||||
return lib.filter.canBeDiscarded(card,player,target);
|
||||
},'he')) event._result={index:1};
|
||||
else player.chooseControl().set('choiceList',[
|
||||
'弃置'+str+'的'+get.cnNumber(num)+'张牌',
|
||||
'对'+str+'造成1点伤害',
|
||||
]).set('ai',function(){
|
||||
var player=_status.event.player;
|
||||
var eff0=get.effect(target,{name:'guohe_copy2'},player,player)*Math.min(1.7,target.countCards('he'));
|
||||
var eff1=get.damageEffect(target,player,player);
|
||||
return eff0>eff1?0:1;
|
||||
var num = cards.length;
|
||||
event.num = num;
|
||||
var target = targets[0], str = get.translation(target);
|
||||
event.target = target;
|
||||
if (!target.isIn()) event.finish();
|
||||
else if (!target.hasCard(function (card) {
|
||||
return lib.filter.canBeDiscarded(card, player, target);
|
||||
}, 'he')) event._result = { index: 1 };
|
||||
else player.chooseControl().set('choiceList', [
|
||||
'弃置' + str + '的' + get.cnNumber(num) + '张牌',
|
||||
'对' + str + '造成1点伤害',
|
||||
]).set('ai', function () {
|
||||
var player = _status.event.player;
|
||||
var eff0 = get.effect(target, { name: 'guohe_copy2' }, player, player) * Math.min(1.7, target.countCards('he'));
|
||||
var eff1 = get.damageEffect(target, player, player);
|
||||
return eff0 > eff1 ? 0 : 1;
|
||||
});
|
||||
'step 2'
|
||||
if(result.index==0) player.discardPlayerCard(target,num,true,'he');
|
||||
if (result.index == 0) player.discardPlayerCard(target, num, true, 'he');
|
||||
else target.damage();
|
||||
},
|
||||
},
|
||||
|
@ -12666,7 +12673,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
refenglve:'锋略',
|
||||
refenglve_info:'出牌阶段限一次,你可以和一名其他角色进行拼点。若你赢,其将区域内的两张牌交给你;若平局,则你令此技能于本阶段内的发动次数上限+1;若你输,其获得你的拼点牌。',
|
||||
anyong:'暗涌',
|
||||
anyong_info:'当一名角色于其回合内第一次对其他角色造成伤害后,若伤害值为1,则你可弃置一张牌,并对受伤角色造成1点伤害。',
|
||||
anyong_info:'当一名角色于其回合内第一次对另一名其他角色造成伤害后,若伤害值为1,则你可弃置一张牌,并对受伤角色造成1点伤害。',
|
||||
wanniangongzhu:'万年公主',
|
||||
zhenge:'枕戈',
|
||||
zhenge_info:'准备阶段,你可以选择一名角色。该角色本局游戏的攻击范围+1(至多+5)。然后若所有其他角色都在该角色的攻击范围内,则你可以令其视为对另一名角色使用一张【杀】。',
|
||||
|
@ -12682,8 +12689,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
re_miheng:'祢衡',
|
||||
rekuangcai:'狂才',
|
||||
rekuangcai_info:'锁定技。①你于回合内使用牌无距离和次数限制。②弃牌阶段开始时,若你本回合内:未使用过牌,则你本局游戏的手牌上限+1;使用过牌但未造成过伤害,则你本局游戏的手牌上限-1。③结束阶段开始时,你摸X张牌(X为你本回合内造成的伤害且至多为5)。',
|
||||
reshejian:'舌箭',
|
||||
reshejian_info:'当你成为其他角色使用牌的唯一目标后,你可以弃置至少两张手牌。若如此做,你选择一项:⒈弃置其等量的牌。⒉对其造成1点伤害。',
|
||||
reshejian:'舌剑',
|
||||
reshejian_info:'每回合限两次。当你成为其他角色使用牌的唯一目标后,你可以弃置至少两张手牌。若如此做,你选择一项:⒈弃置其等量的牌。⒉对其造成1点伤害。',
|
||||
fengxi:'冯熙',
|
||||
yusui:'玉碎',
|
||||
yusui_info:'当你成为其他角色使用黑色牌的目标后,你可以失去1点体力,然后选择一项:⒈令其将手牌数弃置至与你相同;⒉令其失去Y点体力(Y为其的体力值减去你的体力值,不为正时不可选择)。',
|
||||
|
@ -12700,7 +12707,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
zhengding:'正订',
|
||||
zhengding_info:'锁定技。当你于回合外使用或打出牌响应其他角色使用的牌时,若这两张牌颜色相同,则你加1点体力上限并回复1点体力。',
|
||||
dc_jiben:'吉本',
|
||||
xunli:'寻疠',
|
||||
xunli:'询疠',
|
||||
xunli_info:'锁定技。①当有黑色牌因弃置而进入弃牌堆后,若X大于0,则你将其中的X张牌置于武将牌上作为“疠”(X=min(这些牌的数量,9-Y),Y=你的“疠”数)。②出牌阶段开始时,你可以用任意张黑色手牌交换等量的“疠”。',
|
||||
zhishi:'指誓',
|
||||
zhishi_info:'结束阶段,你可选择一名角色。当该角色于你的下回合开始前{成为【杀】的目标后或进入濒死状态时},你可移去任意张“疠”,然后其摸等量的牌。',
|
||||
|
@ -12768,7 +12775,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
dcyongbi_info:'限定技。出牌阶段,你可以将所有手牌交给一名其他男性角色。你将〖媵予〗的发动时机改为“准备阶段和结束阶段开始时”。然后若这些牌中包含的花色数:大于1,则你与其本局游戏的手牌上限+2;大于2,则当你或其于本局游戏内受到大于1的伤害时,此伤害-1。',
|
||||
dc_huangquan:'黄权',
|
||||
dcquanjian:'劝谏',
|
||||
dcquanjian_info:'出牌阶段每项各限一次。你可以选择一项流程并选择一名其他角色A:⒈令A对其攻击范围内的另一名角色B造成1点伤害。⒉令A将手牌数调整至手牌上限(至多摸至五张),且其本回合内不能使用或打出手牌。然后A选择一项:⒈执行此流程。⒉本回合下次受到的伤害+1。',
|
||||
dcquanjian_info:'出牌阶段每项各限一次。你可以选择一项流程并选择一名其他角色A:⒈令A对其攻击范围内的另一名角色B造成1点伤害。⒉令A将手牌数调整至手牌上限(至多摸至五张),且其本回合内不能使用手牌。然后A选择一项:⒈执行此流程。⒉本回合下次受到的伤害+1。',
|
||||
dctujue:'途绝',
|
||||
dctujue_info:'限定技。当你进入濒死状态时,你可以将所有牌交给一名其他角色。然后你回复等量的体力并摸等量的牌。',
|
||||
chengui:'陈珪',
|
||||
|
|
|
@ -3865,7 +3865,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
forced:true,
|
||||
charlotte:true,
|
||||
filter:function(event,player){
|
||||
return event.skill=='xiongmang'&&!player.hasHistory('sourceDamage',function(evt){
|
||||
return player.maxHp>1&&event.skill=='xiongmang'&&!player.hasHistory('sourceDamage',function(evt){
|
||||
return evt.card==event.card;
|
||||
});
|
||||
},
|
||||
|
@ -4289,18 +4289,18 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
trigger:{source:'damageBegin1'},
|
||||
direct:true,
|
||||
filter:function(event,player){
|
||||
return player.countCards('he')>0&&player.isPhaseUsing()&&!player.hasSkill('chaofeng2');
|
||||
return player.countCards('h')>0&&player.isPhaseUsing()&&!player.hasSkill('chaofeng2');
|
||||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
var str='弃置一张牌并摸一张牌',color,type;
|
||||
var str='弃置一张手牌并摸一张牌',color,type;
|
||||
if(trigger.card){
|
||||
type=get.type2(trigger.card,false);
|
||||
color=get.color(trigger.card,false);
|
||||
if(color!='none') str+=';若弃置'+get.translation(color)+'牌则改为摸两张牌';
|
||||
if(type) str+=';若弃置类型为'+get.translation(type)+'的牌则伤害+1';
|
||||
}
|
||||
var next=player.chooseToDiscard('he',get.prompt('chaofeng',trigger.player),str);
|
||||
var next=player.chooseToDiscard('h',get.prompt('chaofeng',trigger.player),str);
|
||||
next.set('ai',function(card){
|
||||
var player=_status.event.player,att=_status.event.att;
|
||||
var val=4.2-get.value(card);
|
||||
|
@ -6243,7 +6243,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
charlotte:true,
|
||||
filter:function(event,player){
|
||||
if(player!=_status.currentPhase) return false;
|
||||
if(player!=_status.currentPhase||event.targets.length!=1) return false;
|
||||
var card=event.card;
|
||||
if(card.name!='sha'&&get.type(card)!='trick')return false;
|
||||
var info=get.info(card);
|
||||
|
@ -11389,7 +11389,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
hfjieying:'节应',
|
||||
hfjieying2:'节应',
|
||||
hfjieying3:'节应',
|
||||
hfjieying_info:'结束阶段,你可以选择一名其他角色,该角色下回合使用【杀】或普通锦囊牌无距离限制且可多指定一个目标,且当其造成伤害后,其无法再使用牌直到回合结束。',
|
||||
hfjieying_info:'结束阶段,你可以选择一名其他角色,该角色下回合使用目标数为1的【杀】或普通锦囊牌无距离限制且可多指定一个目标,且当其造成伤害后,其无法再使用牌直到回合结束。',
|
||||
weipo:'危迫',
|
||||
weipo_info:'锁定技,其他角色使用【杀】或普通锦囊牌指定你为目标后,若你的手牌数小于X,则你将手牌摸至X张,并记录摸牌事件结算后的手牌数Y。此牌结算结束后,若你的手牌数小于Y,则你将一张手牌交给此牌的使用者,且此技能失效直到你的下回合开始。(X为你的体力上限且至多为5)',
|
||||
zhaozhong:'赵忠',
|
||||
|
@ -11499,7 +11499,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
fengshi_info:'当你使用牌指定第一个目标后,你可弃置你与其中一名手牌数小于你的目标角色的各一张牌,并令此牌对其造成的伤害+1;当你成为其他角色使用牌的目标后,若你的手牌数小于其,则你可以弃置你与其的各一张牌,并令此牌对你造成的伤害+1。',
|
||||
tongyuan:'童渊',
|
||||
chaofeng:'朝凤',
|
||||
chaofeng_info:'出牌阶段限一次。当你造成伤害时,你可以弃置一张牌,然后摸一张牌。若此伤害的渠道为牌且你弃置的牌:与此牌颜色相同,则你改为摸两张牌;与此牌类型相同,则此伤害+1。',
|
||||
chaofeng_info:'出牌阶段限一次。当你造成伤害时,你可以弃置一张手牌,然后摸一张牌。若此伤害的渠道为牌且你弃置的牌:与此牌颜色相同,则你改为摸两张牌;与此牌类型相同,则此伤害+1。',
|
||||
chuanshu:'传术',
|
||||
chuanshu_info:'限定技。准备阶段,若你已受伤;或当你死亡时,你可令一名其他角色获得〖朝凤〗。然后你获得〖龙胆〗、〖从谏〗和〖穿云〗。',
|
||||
chuanyun:'穿云',
|
||||
|
@ -11526,7 +11526,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
yinyi_info:'锁定技。每回合限一次,当你受到非属性伤害时,若你的手牌数和体力值与伤害来源均不相同,则你防止此伤害。',
|
||||
haomeng:'郝萌',
|
||||
xiongmang:'雄莽',
|
||||
xiongmang_info:'你可将任意张花色各不相同的手牌当做目标数上限为X的【杀】使用(X为此【杀】对应的实体牌数)。此【杀】使用结算结束后,若你未造成过渠道为此牌的伤害,则你减1点体力上限。',
|
||||
xiongmang_info:'你可将任意张花色各不相同的手牌当做目标数上限为X的【杀】使用(X为此【杀】对应的实体牌数)。此【杀】使用结算结束后,若你未造成过渠道为此牌的伤害且体力上限大于1,则你减1点体力上限。',
|
||||
yanfuren:'严夫人',
|
||||
channi:'谗逆',
|
||||
channi_info:'出牌阶段限一次。你可将任意张手牌交给一名其他角色,然后其可以将至多等量的手牌当做【决斗】使用。若其因此【决斗】造成了伤害,则其摸X张牌(X为此【决斗】对应的实体牌数)。若其因此【决斗】受到过伤害,则你弃置所有手牌。',
|
||||
|
@ -11572,7 +11572,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
dcruizhan:'锐战',
|
||||
dcruizhan_info:'其他角色的准备阶段开始时,若其的手牌数不小于其体力值,则你可以和其拼点。若你赢或拼点牌中有【杀】,则你视为对其使用一张【杀】。然后若此【杀】造成了伤害且以上两个条件均被满足,则你获得其一张牌。',
|
||||
dcshilie:'示烈',
|
||||
dcshilie_info:'①出牌阶段限一次。你可以选择一项:⒈回复1点体力,将两张牌置于武将牌上作为“示烈”。若“示烈”牌数大于存活人数,则你将最早的多余牌置入弃牌堆;⒉失去1点体力,获得两张“示烈”牌。(满血则不回血,无牌则不移动)②当你死亡时,你可以将所有“示烈”牌交给一名其他角色。',
|
||||
dcshilie_info:'①出牌阶段限一次。你可以选择一项:⒈回复1点体力,将两张牌置于武将牌上作为“示烈”。若“示烈”牌数大于存活人数,则你将最早的多余牌置入弃牌堆;⒉失去1点体力,获得两张“示烈”牌。(满血则不回血,无牌则不移动)②当你死亡时,你可以将所有“示烈”牌交给一名不为伤害来源的其他角色。',
|
||||
dc_zhaoyǎn:'赵俨',
|
||||
dcfuning:'抚宁',
|
||||
dcfuning_info:'当你使用牌时,你可以摸两张牌,然后弃置X张牌(X为你本回合内发动过〖抚宁〗的次数)。',
|
||||
|
|
|
@ -1288,7 +1288,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
audio:2,
|
||||
trigger:{player:'useCardToPlayered'},
|
||||
filter:function(event,player){
|
||||
return event.isFirstTarget;
|
||||
return event.isFirstTarget && event.targets.some(target => target != player);
|
||||
},
|
||||
usable:1,
|
||||
direct:true,
|
||||
|
@ -1985,42 +1985,59 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
if(!event.source||!event.source.isIn()) return false;
|
||||
return event.player.getExpansions('dcxiaoyin').length;
|
||||
},
|
||||
direct:true,
|
||||
content:function*(event,map){
|
||||
var player=map.player,trigger=map.trigger;
|
||||
var source=trigger.source,target=trigger.player;
|
||||
var cards=target.getExpansions('dcxiaoyin');
|
||||
if(trigger.hasNature('fire')){
|
||||
var types=cards.map(i=>get.type2(i,false));
|
||||
var str=get.translation(types).replace(/(.*)、/, '$1或');
|
||||
var result=yield source.chooseCard(`硝引:是否弃置一张${str}牌?`,`若如此做,将${get.translation(target)}的所有“硝引”牌置入弃牌堆,令你对其造成的伤害+1`,'he',function(card,player){
|
||||
if(!get.event('types').includes(get.type2(card))) return false;
|
||||
return lib.filter.cardDiscardable.apply(this,arguments);
|
||||
}).set('types',types).set('ai',card=>{
|
||||
if(get.event('goon')) return 7-get.value(card);
|
||||
//direct:true,
|
||||
async cost(event, trigger, player){
|
||||
const source = trigger.source, target = trigger.player;
|
||||
const cards = target.getExpansions('dcxiaoyin');
|
||||
if (trigger.hasNature('fire')) {
|
||||
const types = cards.map(i => get.type2(i, false));
|
||||
const str = get.translation(types).replace(/(.*)、/, '$1或');
|
||||
event.result = await source.chooseCard(`硝引:是否弃置一张${str}牌?`, `若如此做,将${get.translation(target)}的对应的“硝引”牌置入弃牌堆,令你对其造成的伤害+1`, 'he', function (card, player) {
|
||||
if (!get.event('types').includes(get.type2(card))) return false;
|
||||
return lib.filter.cardDiscardable.apply(this, arguments);
|
||||
}).set('types', types).set('ai', card => {
|
||||
if (get.event('goon')) return 7 - get.value(card);
|
||||
return 0;
|
||||
}).set('goon',get.damageEffect(target,player,player,'fire')>0&&get.attitude(player,target)<=0);
|
||||
if(result.bool){
|
||||
player.logSkill('dcxiaoyin_damage',source);
|
||||
source.line(target,'fire');
|
||||
source.discard(result.cards).discarder=source;
|
||||
game.delayex();
|
||||
target.loseToDiscardpile(cards);
|
||||
trigger.addNumber('num',1);
|
||||
}
|
||||
}).set('goon', get.damageEffect(target, player, player, 'fire') > 0 && get.attitude(player, target) <= 0).forResult();
|
||||
}
|
||||
else{
|
||||
var result=yield source.chooseBool(`###是否响应${get.translation(player)}的【硝引】?###获得${get.translation(target)}的“硝引”牌(${get.translation(cards)}),然后将你对其造成的此次伤害改为火焰伤害。`).set('choice',(()=>{
|
||||
if(get.damageEffect(target,source,source,'fire')<get.damageEffect(target,source,source)-5) return false;
|
||||
if(cards.map(i=>get.value(i)).reduce((p,c)=>p+c,0)>0) return true;
|
||||
else {
|
||||
event.result = await source.chooseBool(`###是否响应${get.translation(player)}的【硝引】?###获得${get.translation(target)}的一张“硝引”牌(${get.translation(cards)}),然后将你对其造成的此次伤害改为火焰伤害。`).set('choice', (() => {
|
||||
if (get.damageEffect(target, source, source, 'fire') < get.damageEffect(target, source, source) - 5) return false;
|
||||
if (cards.map(i => get.value(i)).reduce((p, c) => p + c, 0) > 0) return true;
|
||||
return false;
|
||||
})());
|
||||
if(result.bool){
|
||||
player.logSkill('dcxiaoyin_damage',source);
|
||||
source.line(target,'fire');
|
||||
source.gain(cards,target,'give');
|
||||
game.setNature(trigger,'fire');
|
||||
})()).forResult();
|
||||
}
|
||||
},
|
||||
async content(event, trigger, player){
|
||||
const source = trigger.source, target = trigger.player;
|
||||
if (trigger.hasNature('fire')) {
|
||||
source.line(target, 'fire');
|
||||
const type = get.type2(event.cards[0]);
|
||||
await source.discard(event.cards).set('discarder', source);
|
||||
//await game.asyncDelayx();
|
||||
const cardsToDiscard = target.getExpansions('dcxiaoyin').filter(card => get.type2(card, false) === type);
|
||||
if (cardsToDiscard.length === 1) await target.loseToDiscardpile(cardsToDiscard);
|
||||
else if (cardsToDiscard.length > 1) {
|
||||
const result = await source.chooseButton([
|
||||
`请选择移去${get.translation(source)}的一张“硝引”牌`,
|
||||
cardsToDiscard
|
||||
], true).forResult();
|
||||
await target.loseToDiscardpile(result.links);
|
||||
}
|
||||
trigger.addNumber('num', 1);
|
||||
}
|
||||
else {
|
||||
source.line(target, 'fire');
|
||||
const cards = target.getExpansions('dcxiaoyin');
|
||||
if (cards.length === 1) await source.gain(cards, target, 'give');
|
||||
else if (cards.length > 1) {
|
||||
const result = await source.chooseButton([
|
||||
`请选择获得${get.translation(source)}的一张“硝引”牌`,
|
||||
cards
|
||||
], true).forResult();
|
||||
await source.gain(result.links, target, 'give');
|
||||
}
|
||||
game.setNature(trigger, 'fire');
|
||||
}
|
||||
},
|
||||
},
|
||||
|
@ -14806,7 +14823,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
zhushi_info:'主公技。每回合限一次,其他魏势力角色于回合内回复体力时,其可令你摸一张牌。',
|
||||
laiyinger:'来莺儿',
|
||||
xiaowu:'绡舞',
|
||||
xiaowu_info:'出牌阶段限一次,你可以选择任意名座位连续且包含你的上家/下家的角色。这些角色依次选择一项:⒈令你摸一张牌;⒉其摸一张牌。然后若选择选项一的角色数大于选项二的角色数,则你获得一枚“沙”;若选择选项二的角色数大于选项一的角色数,则你对这些角色依次造成1点伤害。',
|
||||
xiaowu_info:'出牌阶段限一次,你可以选择任意名座位连续且包含你的上家/下家的其他角色。这些角色依次选择一项:⒈令你摸一张牌;⒉其摸一张牌。然后若选择选项一的角色数大于选项二的角色数,则你获得一枚“沙”;若选择选项二的角色数大于选项一的角色数,则你对这些角色依次造成1点伤害。',
|
||||
huaping:'化萍',
|
||||
huaping_info:'限定技。①一名其他角色死亡时,你可获得其当前拥有的所有不带有「Charlotte」标签的技能,然后你失去〖绡舞〗,移去所有“沙”并摸等量的牌。②当你死亡时,你可令一名其他角色获得〖沙舞〗和你的所有“沙”。',
|
||||
shawu:'沙舞',
|
||||
|
@ -14916,7 +14933,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
dcmengchi:'蒙斥',
|
||||
dcmengchi_info:'锁定技。若你未于当前回合得到过牌:你不能使用牌;当你横置前,取消之;当你受到无属性伤害后,回复1点体力。',
|
||||
dcfangdu:'芳妒',
|
||||
dcfangdu_info:'锁定技。当你于回合外受到伤害后,若此次伤害为你于本回合受到的:第一次无属性伤害,你回复1点体力;第一次属性伤害,你随机获得伤害来源的一张牌。',
|
||||
dcfangdu_info:'锁定技。当你于回合外受到伤害后,若此次伤害为你于本回合受到的:第一次无属性伤害,你回复1点体力;第一次属性伤害,你随机获得伤害来源的一张手牌。',
|
||||
dcjiexing:'节行',
|
||||
dcjiexing_info:'当你受到伤害后、失去体力后或回复体力后,你可以摸一张牌,且此牌不计入本回合的手牌上限。',
|
||||
dongguiren:'董贵人',
|
||||
|
@ -15110,7 +15127,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
dclima:'骊马',
|
||||
dclima_info:'锁定技。你计算至其他角色的距离-X(X为场上的坐骑牌数且至少为1)。',
|
||||
dcxiaoyin:'硝引',
|
||||
dcxiaoyin_info:'①准备阶段,你可以亮出牌堆顶的Y张牌(Y为你距离1以内的角色数),获得其中的红色牌,将其中任意张黑色牌置于等量名座次连续的其他角色的武将牌上,称为“硝引”。②当一名有“硝引”牌的角色受到伤害时,若此伤害为:火焰伤害,来源可以弃置一张其“硝引”牌包含的类型的牌,将其“硝引”置入弃牌堆,令此伤害+1;非火焰伤害,来源可以获得其“硝引”牌,将此伤害改为火焰伤害。',
|
||||
dcxiaoyin_info:'①准备阶段,你可以亮出牌堆顶的Y张牌(Y为你距离1以内的角色数),获得其中的红色牌,将其中任意张黑色牌置于等量名座次连续的其他角色的武将牌上,称为“硝引”。②当一名有“硝引”牌的角色受到伤害时,若此伤害为:火焰伤害,来源可以弃置其“硝引”牌包含的类型的牌,将一张对应的“硝引”置入弃牌堆,令此伤害+1;非火焰伤害,来源可以获得一张“硝引”牌,将此伤害改为火焰伤害。',
|
||||
dchuahuo:'花火',
|
||||
dchuahuo_info:'出牌阶段限一次。你可以将一张红色手牌当不计入次数的火【杀】使用。然后当你使用此牌指定第一个目标后,若目标角色有“硝引”牌,你可以将此【杀】的目标改为所有有“硝引”牌的角色。',
|
||||
caoyi:'曹轶',
|
||||
|
@ -15139,7 +15156,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
dcsbronghuo:'融火',
|
||||
dcsbronghuo_info:'锁定技,当你使用火【杀】或【火攻】时,此牌伤害基值改为场上势力数。',
|
||||
dcsbyingmou:'英谋',
|
||||
dcsbyingmou_info:'转换技,每回合限一次,当你使用牌指定第一个目标后,你可以选择一名目标角色:阴,你将手牌数摸至与其相同(至多摸五张),然后视为对其使用一张【火攻】;阳,令一名手牌数为全场最大的角色对其使用手牌中所有的【杀】和伤害类锦囊牌(若其没有可使用的牌则将手牌数弃至与你相同)。',
|
||||
dcsbyingmou_info:'转换技,每回合限一次,当你使用牌指定其他角色为目标后,你可以选择一名目标角色:阴,你将手牌数摸至与其相同(至多摸五张),然后视为对其使用一张【火攻】;阳,令一名手牌数为全场最大的角色对其使用手牌中所有的【杀】和伤害类锦囊牌(若其没有可使用的牌则将手牌数弃至与你相同)。',
|
||||
caoxian:'曹宪',
|
||||
dclingxi:'灵犀',
|
||||
dclingxi_info:'出牌阶段开始和结束时,你可以将至多X张牌称为“翼”置于你的武将牌上(X为你的体力上限)。当你失去武将牌上的“翼”时,你将手牌数调整至Y张(Y为你武将牌上的“翼”所含有的花色数的两倍)。',
|
||||
|
|
|
@ -4209,7 +4209,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
async content(event,trigger,player){
|
||||
const card=event.cards[0],target=event.targets[0];
|
||||
if(target!=player) player.$give(card,target,false);
|
||||
await target.equip(thisCard);
|
||||
await target.equip(card);
|
||||
},
|
||||
group:'fakehuyuan_discard',
|
||||
subSkill:{
|
||||
|
|
Loading…
Reference in New Issue