v1.9.97.6

This commit is contained in:
Spmario233 2020-02-04 13:31:47 +08:00 committed by GitHub
parent 5960ae60d3
commit 55cddbc6c1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
57 changed files with 1553 additions and 1394 deletions

BIN
audio/skill/diancai1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/diancai2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/diaodu1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/diaodu2.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/skill/gzzongyu1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/gzzongyu2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/hongfa1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/hongfa2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/hongfa_hp.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/skill/huibian1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/huibian2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/jiahe1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/jiahe2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/jiahe_put1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/jiahe_put2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/jianan1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/jianan2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/jizhao1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/jizhao2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/jubao1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/jubao2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/lianzi1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/lianzi2.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/skill/wendao1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/wendao2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/wuxin1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/wuxin2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/zhangwu1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/zhangwu2.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -12,7 +12,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
key_haruko:['female','key',4,['haruko_haofang','haruko_zhuishi']],
key_umi:['female','key',3,['umi_chaofan','umi_lunhui','umi_qihuan']],
key_umi2:['female','key',3,[],['unseen']],
key_kagari:['female','shen',3,['kagari_zongsi']],
key_kagari:['female','shen',3,['kagari_zongsi'],['key']],
key_rei:['male','key',4,['xiandeng','shulv','xisheng']],
key_komari:['female','key',3,['komari_tiankou','komari_xueshang']],
// diy_caocao:['male','wei',4,['xicai','diyjianxiong','hujia']],
@ -4305,8 +4305,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
discard:false,
prompt:'将一张装备牌置入弃牌堆并摸一张牌',
delay:0.5,
loseTo:'discardPile',
prepare:function(cards,player){
player.$throw(cards,1000);
game.log(player,'将',cards,'置入了弃牌堆');
},
ai:{
basic:{

View File

@ -77,6 +77,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
characterIntro:{
re_gongsunzan:'群雄之一。出身贵族,因母地位卑贱,只当了郡中小吏。他貌美,声音洪亮,机智善辩。后随卢植于缑氏山中读书,粗通经传。',
re_lidian:'字曼成,曹操麾下将领。李典深明大义,不与人争功,崇尚学习与高贵儒雅,尊重博学之士,在军中被称为长者。李典有长者之风,官至破虏将军,三十六岁去世。魏文帝曹丕继位后追谥号为愍侯。',
sunben:' ',
},
characterFilter:{
re_zuoci:function(mode){
@ -1350,13 +1351,19 @@ game.import('character',function(lib,game,ui,get,ai,_status){
else if(event.count<trigger.num){
delete event.temp;
event.count++;
event.goto(1);
player.chooseBool(get.prompt2(event.name)).set('frequentSkill',event.name);
}
else event.finish();
}
else if(event.count<trigger.num){
delete event.temp;
event.num=1;
event.count++;
player.chooseBool(get.prompt2(event.name)).set('frequentSkill',event.name);
}
else event.finish();
"step 4"
if(result.bool){
player.logSkill(event.name);
event.goto(1);
}
},
@ -2187,7 +2194,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
]).ai=function(){return 1};
'step 1'
if(result.index==0){
player.$give(cards,target);
player.$give(cards,target,false);
target.equip(cards[0]);
}
else{
@ -2405,6 +2412,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
rerende:{
audio:2,
group:['rerende1'],
audioname:['gz_jun_liubei'],
enable:'phaseUse',
filterCard:true,
selectCard:[1,Infinity],
@ -2707,7 +2715,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return (event.source&&event.source.countGainableCards(player,'he')&&event.num>0&&event.source!=player);
},
content:function(){
player.gainPlayerCard([1,trigger.num],get.prompt('fankui',trigger.source),trigger.source,get.buttonValue,'he').set('logSkill',['refankui',trigger.source]);
"step 0"
event.count=trigger.num;
"step 1"
event.count--;
player.gainPlayerCard(get.prompt('refankui',trigger.source),trigger.source,get.buttonValue,'he').set('logSkill',['refankui',trigger.source]);
"step 2"
if(result.bool&&event.count>0&&event.source.countGainableCards(player,'he')>0) event.goto(1);
},
ai:{
maixie_defend:true,
@ -2868,8 +2882,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(result.bool){
player.storage.qingjian++;
player.logSkill('qingjian',result.targets);
result.targets[0].gain(result.cards,player);
player.$give(result.cards.length,result.targets[0]);
result.targets[0].gain(result.cards,player,'give');
for(var i=0;i<result.cards.length;i++){
event.cards.remove(result.cards[i]);
}
@ -3310,7 +3323,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
result.targets[0].addSkill('reyiji2');
result.targets[0].storage.reyiji2=result.cards;
}
player.$give(result.cards.length,result.targets[0]);
player.$give(result.cards.length,result.targets[0],false);
player.line(result.targets,'green');
game.addVideo('storage',result.targets[0],['reyiji2',get.cardsInfo(result.targets[0].storage.reyiji2),'cards']);
if(num==1){

View File

@ -3870,7 +3870,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
},
juxiang:{
unique:true,
//unique:true,
locked:true,
audio:"juxiang1",
audioname:['re_zhurong'],
@ -4948,7 +4948,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
direct:true,
content:function(){
"step 0"
player.chooseTarget(get.prompt2('jieming'),[1,trigger.num],function(card,player,target){
event.count=trigger.num;
"step 1"
event.count--;
player.chooseTarget(get.prompt2('jieming'),function(card,player,target){
return target.countCards('h')<Math.min(target.maxHp,5);
}).set('ai',function(target){
var att=get.attitude(_status.event.player,target);
@ -4957,12 +4960,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
return att/3;
});
"step 1"
"step 2"
if(result.bool){
player.logSkill('jieming',result.targets);
for(var i=0;i<result.targets.length;i++){
result.targets[i].draw(Math.min(5,result.targets[i].maxHp)-result.targets[i].countCards('h'));
result.targets[i].drawTo(Math.min(5,result.targets[i].maxHp));
}
if(event.count) event.goto(1);
}
},
ai:{
@ -6641,7 +6645,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
zhurong:'祝融',
menghuo:'孟获',
caopi:'曹丕',
re_xuhuang:'徐晃',
re_xuhuang:'徐晃',
lusu:'旧鲁肃',
sunjian:'孙坚',
dongzhuo:'董卓',
@ -6702,7 +6706,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
taishici:'太史慈',
yanwen:'颜良文丑',
yuanshao:'旧袁绍',
re_pangde:'庞德',
re_pangde:'庞德',
huoji:'火计',
bazhen:'八阵',
kanpo:'看破',

View File

@ -3307,7 +3307,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(result.bool){
player.logSkill('new_xingwu');
if(player.storage.new_xingwu.length<2){
player.$give(result.cards,player);
player.$give(result.cards,player,false);
}
player.lose(result.cards,ui.special,'toStorage');
player.storage.new_xingwu=player.storage.new_xingwu.concat(result.cards);
@ -5029,10 +5029,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
audio:2,
trigger:{player:'phaseUseBegin'},
filter:function(event,player){
return !event.player.isMad()&&!_status.connectMode;
return !event.player.isMad();
},
content:function(){
player.forceCountChoose={chooseToUse:5,default:5};
game.broadcastAll(function(player){
player.forceCountChoose={phaseUse:5};
},player)
player.addSkill('kuangcai_use');
player.addSkill('kuangcai_cancel');
//ui.auto.hide();
@ -5047,9 +5049,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
targetInRange:function(){
return true;
},
cardEnabled:function(card,player){
if(player.forceCountChoose&&player.forceCountChoose.chooseToUse<=0) return false;
},
},
trigger:{player:'useCard'},
forced:true,
@ -5065,7 +5064,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
content:function(){
player.draw();
player.forceCountChoose.chooseToUse--;
if(player.forceCountChoose.phaseUse==1){
var evt=event.getParent('phaseUse');
if(evt) evt.skipped=true;
}
else game.broadcastAll(function(player){
player.forceCountChoose.phaseUse--;
},player);
},
ai:{
presha:true,
@ -5077,7 +5082,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
priority:50,
silent:true,
content:function(){
delete player.forceCountChoose;
game.broadcastAll(function(player){
delete player.forceCountChoose;
},player);
//ui.auto.show();
player.removeSkill('kuangcai_use');
player.removeSkill('kuangcai_cancel');
@ -5396,11 +5403,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){
logTarget:'player',
check:function(event,player){
if(get.mode()=='guozhan'){
if(get.guozhanRank(event.player.name2)<4) return false;
if(!event.player.isUnseen(1)&&get.guozhanRank(event.player.name2)<4) return false;
}
if(event.player.hasSkill('subplayer')) return false;
if(get.attitude(player,event.player)<0){
if(event.player.hp==1) return false;
if(event.player.hp==1&&event.player.countCards('e')<2&&event.player.name2!='gz_pangtong') return false;
return true;
}
return false;
@ -5410,7 +5417,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
trigger.cancel();
if(trigger.player.countCards('e')){
trigger.player.chooseControl(function(event,player){
if(get.mode()=='guozhan'&&get.guozhanRank(event.player.name2)<4) return 1;
if(get.mode()=='guozhan'&&get.guozhanRank(player.name2)<4) return 1;
if(player.hp==1) return 1;
if(player.hp==2&&player.countCards('e')>=2) return 1;
return 0;
@ -7214,7 +7221,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(result.bool){
player.logSkill('tuifeng');
player.lose(result.cards,ui.special,'toStorage');
player.$give(result.cards,player);
player.$give(result.cards,player,false);
for(var i=0;i<result.cards.length;i++){
player.storage.tuifeng.push(result.cards[i]);
}
@ -7659,7 +7666,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.storage.shefu.push(card);
player.syncStorage('shefu');
player.markSkill('shefu');
player.$give(card,player);
player.$give(card,player,false);
}
},
group:['shefu2']
@ -8650,7 +8657,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
});
}
else{
player.chooseBool().set('createDialog',[get.prompt('junwei'),'hidden',player.storage.yinling]).set('dialogselectx',true);
player.chooseBool().set('createDialog',[get.prompt('junwei'),'hidden',player.storage.yinling]).set('dialogselectx',true).set('choice',true);
event.cards=player.storage.yinling.slice(0);
}
'step 1'
@ -8793,7 +8800,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.choosePlayerCard('hej',target,true);
'step 1'
if(result.bool&&result.links&&result.links.length){
target.$give(result.links,player);
target.$give(result.links,player,false);
target.lose(result.links,ui.special,'toStorage');
player.storage.yinling.push(result.links[0]);
player.markSkill('yinling');
@ -9406,7 +9413,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
'step 2'
if(result.bool){
event.target.$give(result.links,player);
event.target.$give(result.links,player,false);
event.target.lose(result.links,ui.special,'toStorage');
player.storage.fentian=player.storage.fentian.concat(result.links);
player.syncStorage('fentian');
@ -10111,7 +10118,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
event.count--;
var card=event.history.shift().card;
card={name:card.name,nature:card.nature};
if(lib.filter.cardEnabled(card)){
if(card.name!='jiu'&&lib.filter.cardEnabled(card)){
if(game.hasPlayer(function(current){
return player.canUse(card,current);
})){
@ -11844,13 +11851,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
next.set('nono',nono);
"step 1"
if(result.bool){
trigger.player.damage();
trigger.player.chooseUseTarget({name:'jiu'},true,'noTargetDelay','nodelayx');
}
else{
event.finish();
}
"step 2"
trigger.player.useCard({name:'jiu'},trigger.player);
if(result.bool) trigger.player.damage();
},
ai:{
threaten:2,
@ -12015,10 +12022,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
guixiu:{
audio:2,
trigger:{target:'shaBegin'},
trigger:{target:'useCardToTargeted'},
frequent:true,
filter:function(event,player){
return player.countCards('h')<player.hp;
return event.card.name=='sha'&&player.countCards('h')<player.hp;
},
content:function(){
player.draw();
@ -12330,20 +12337,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
order:6
}
},
junbing2:{
audio:'junbing',
forceaudio:true,
trigger:{player:'phaseJieshuBegin'},
junbing:{
audio:2,
trigger:{global:'phaseJieshuBegin'},
filter:function(event,player){
if(player.countCards('h')>1) return false;
return game.hasPlayer(function(current){
return current.hasSkill('junbing');
});
return event.player.countCards('h')<=1;
},
check:function(event,player){
var target=game.findPlayer(function(current){
return current.hasSkill('junbing');
});
direct:true,
checkx:function(target,player){
if(target){
var num=target.countCards('h');
var att=get.attitude(player,target);
@ -12356,33 +12357,27 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
content:function(){
"step 0"
player.draw();
if(player.hasSkill('junbing')){
event.finish();
}
else{
event.target=game.findPlayer(function(current){
return current.hasSkill('junbing');
});
}
event.target=player;
event.player=trigger.player;
event.player.chooseBool('是否对'+get.translation(event.target)+'发动【郡兵】?',event.player==event.target?'摸一张牌':'摸一张牌,将所有手牌交给该角色,然后该角色交给你等量的手牌').set('choice',lib.skill.junbing.checkx(event.target,event.player));
"step 1"
if(!result.bool){event.finish();return}
target.logSkill('junbing',player);
if(player==target) event.finish();
player.draw();
"step 2"
var cards=player.getCards('h');
target.gain(cards,player,'giveAuto');
event.num=cards.length;
game.delay();
"step 2"
"step 3"
target.chooseCard('选择还给'+get.translation(player)+'的牌',true,event.num);
game.delay(0.2);
"step 3"
"step 4"
player.gain(result.cards,target,'giveAuto');
game.delay();
}
},
junbing:{
},
audio:2,
global:'junbing2',
unique:true,
forceunique:true
},
xiongyi:{
skillAnimation:true,
@ -12966,8 +12961,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
event.count--;
"step 2"
if(event.count){
if(lib.config.autoskilllist.contains('mingzhe')) player.chooseBool(get.prompt2('mingzhe'));
else event._result={bool:true};
player.chooseBool(get.prompt2('mingzhe')).set('frequentSkill','mingzhe');
}
else event.finish();
"step 3"
@ -13130,7 +13124,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
result.targets[0].addSkill('bifa2');
result.targets[0].storage.bifa=[result.cards[0],player];
player.lose(result.cards[0],result.targets[0].node.special,'toStorage');
player.$give(1,result.targets[0]);
player.$give(1,result.targets[0],false);
}
},
ai:{
@ -13224,7 +13218,25 @@ game.import('character',function(lib,game,ui,get,ai,_status){
trigger:{player:['phaseBefore','changeHp']},
forced:true,
popup:false,
unique:true,
//unique:true,
init:function(player){
if(game.online) return;
player.removeAdditionalSkill('baobian');
var list=[];
if(player.hp<=3){
if(trigger.num!=undefined&&trigger.num<0&&player.hp-trigger.num>1) player.logSkill('baobian');
list.push('retiaoxin');
}
if(player.hp<=2){
list.push('new_repaoxiao');
}
if(player.hp<=1){
list.push('xinshensu');
}
if(list.length){
player.addAdditionalSkill('baobian',list);
}
},
derivation:['retiaoxin','new_repaoxiao','xinshensu'],
content:function(){
player.removeAdditionalSkill('baobian');
@ -13397,7 +13409,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
thisTarget.equip(thisCard);
event.target=thisTarget;
if(thisTarget!=player){
player.$give(thisCard,thisTarget);
player.$give(thisCard,thisTarget,false);
}
switch(get.subtype(thisCard)){
case 'equip1':{
@ -13745,7 +13757,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
else event.finish();
"step 2"
if(result.bool){
trigger.player.$give(event.card,player);
trigger.player.$give(event.card,player,false);
player.equip(event.card);
}
else trigger.player.discard(event.card);
@ -14146,7 +14158,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
yirang:'揖让',
yirang_info:'出牌阶段开始时你可以将所有非基本牌交给一名体力上限大于你的其他角色然后调整体力上限至与该角色相同你回复X点体力X为你以此法交给其的牌的类别数',
kuangcai:'狂才',
kuangcai_info:'出牌阶段开始时你可以令你此阶段内的主动出牌时间变为5秒响应出牌时间也变为5秒。若如此做,你使用牌没距离和次数限制,且每当你于此阶段内使用牌时,你摸一张牌且主动出牌时间-1秒。你一回合通过狂才最多获得5张牌',
kuangcai_info:'出牌阶段开始时你可以令你此阶段内的主动出牌时间变为5秒。若如此做,你使用牌没距离和次数限制,且每当你于此阶段内使用牌时,你摸一张牌且主动出牌时间-1秒。你一回合通过狂才最多获得5张牌',
shejian:'舌剑',
shejian_info:'弃牌阶段结束时,若你于此阶段弃置的所有牌花色均不相同,你可以弃置一名其他角色的一张牌',
fenyue:'奋钺',
@ -14304,49 +14316,49 @@ game.import('character',function(lib,game,ui,get,ai,_status){
luoyan:'落雁',
luoyan_info:'锁定技。若你的武将牌上有“星舞牌”,你拥有“天香”和“流离”',
yinbing:'引兵',
yinbing_info:'结束阶段开始时,你可以将至少一张非基本牌置于武将牌上。每当你受到【杀】或【决斗】的伤害后,你移去一张“引兵牌”',
yinbing_info:'结束阶段开始时,你可以将至少一张非基本牌置于武将牌上。每当你受到【杀】或【决斗】的伤害后,你移去一张「引兵」牌。',
juedi:'绝地',
juedi_info:'锁定技,准备阶段,你选择一项1.移去“引兵”牌将手牌补至体力上限数2.将“引兵”牌交给一名体力值不大于你的其他角色其回复1点体力摸等量的牌',
juedi_info:'锁定技,准备阶段,若你的武将牌上有「引兵」牌你选择一项1.移去「引兵」牌将手牌补至体力上限数2.将「引兵」牌交给一名体力值不大于你的其他角色其回复1点体力并摸等量的牌。',
kuangfu:'狂斧',
kuangfu_info:'每当你使用杀造成伤害,可以将对方的一张装备牌移到你的装备区或弃置之。',
kuangfu_info:'当你使用【杀】造成伤害时,你可以选择一项:弃置其装备区内的一张牌,或将其装备区内的一张牌移动到你的装备区内。',
xintan:'心惔',
xintan_info:'出牌阶段限一次,你可以移去两张“焚”并选择一名角色,该角色失去一点体力',
xintan_info:'出牌阶段限一次,你可以移去两张「焚」并选择一名角色,该角色失去一点体力',
fentian:'焚天',
fentian_info:'锁定技,结束阶段开始时,若你的手牌数少于体力值,你须选择一名攻击范围内的角色,将其一张牌置于你的武将牌上,称为“焚”。锁定技,你的攻击范围+XX为“焚”的数量)',
fentian_info:'锁定技,结束阶段开始时,若你的手牌数少于体力值,你须选择一名攻击范围内的角色,将其一张牌置于你的武将牌上,称为「焚」。锁定技,你的攻击范围+XX为「焚」的数量)',
zhiri:'炙日',
zhiri_info:'觉醒技,准备阶段开始时,若“焚”数不小于3你减1点体力上限然后获得技能“心惔”',
zhiri_info:'觉醒技,准备阶段开始时,若你的「焚」的数量不小于3你减1点体力上限然后获得技能〖心惔〗',
meibu:'魅步',
meibu_info:'一名其他角色的出牌阶段开始时,若你不在其攻击范围内,你可以令该角色的锦囊牌均视为【杀】,直到该角色以此法使用了一张【杀】或回合结束。若如此做,则直到回合结束,视为你在其攻击范围内',
meibu_info:'其他角色的出牌阶段开始时,若你不在其攻击范围内,你可以令该角色的锦囊牌均视为【杀】,直到该角色以此法使用了一张【杀】或回合结束。若如此做,则直到回合结束,视为你在其攻击范围内',
mumu:'穆穆',
mumu_info:'出牌阶段限一次,你可以弃置一张【杀】或黑色锦囊牌,然后选择一项:弃置场上一张武器牌,然后摸一张牌;或将场上的一张防具牌移动到你的装备区里(可替换原防具)',
mumu_info:'出牌阶段限一次,你可以弃置一张【杀】或黑色锦囊牌,然后选择一项:弃置场上一张武器牌,然后摸一张牌;或将场上的一张防具牌移动到你的装备区里(可替换原防具)',
zhanyi:'战意',
zhanyi_basic_sha:'战杀',
zhanyi_basic_jiu:'战酒',
zhanyi_basic_tao:'战桃',
zhanyi_info:'出牌阶段限一次你可以弃置一张牌并失去1点体力然后根据你弃置的牌获得以下效果直到回合结束基本牌你可以将一张基本牌当作杀、酒或桃使用;锦囊牌,摸两张牌且你使用的牌无距离限制;装备牌,你使用【杀】指定目标角色后,其弃置两张牌',
zhanyi_info:'出牌阶段限一次你可以弃置一张牌并失去1点体力然后根据你弃置的牌获得以下效果直到回合结束基本牌你可以将一张基本牌当作使用;锦囊牌,摸两张牌且你使用的牌无距离限制;装备牌,你使用【杀】指定目标角色后,其弃置两张牌',
nuzhan:'怒斩',
nuzhan2:'怒斩',
nuzhan_info:'锁定技,你每当你使用由一张锦囊牌转化而来的【杀】时,你可以额外使用一张杀;锁定技,你使用的由一张装备牌转化而来的【杀】的伤害值基数+1',
nuzhan_info:'锁定技,你使用的由一张锦囊牌转化的【杀】不计入出牌阶段的次数限制;锁定技,你使用的由一张装备牌转化的【杀】的伤害值基数+1',
danji:'单骑',
danji_info:'觉醒技准备阶段开始时若你的手牌数大于你的体力值且本局游戏的主公不为刘备你减1点体力上限然后获得“马术”和“怒斩”',
danji_info:'觉醒技准备阶段开始时若你的手牌数大于你的体力值且本局游戏的主公不为刘备你减1点体力上限然后获得〖马术〗和〖怒斩〗',
tunchu:'屯储',
tunchu_info:'摸牌阶段摸牌时,若你没有“粮”,你可以额外摸两张牌,然后可以将任意张手牌置于你的武将上,称为“粮”,只要你的武将牌上有“粮”,你便不能使用【杀】',
tunchu_info:'摸牌阶段,若你没有「粮」,你可以多摸两张牌。若如此做,摸牌阶段结束时,你可以将任意张手牌置于你的武将上,称为「粮」,只要你的武将牌上有「粮」,你便不能使用【杀】',
shuliang:'输粮',
shuliang_info:'每当一名角色的结束阶段开始时,若其手牌数少于体力值,你可以移去一张“粮”,然后该角色摸两张牌',
shuliang_info:'一名角色的结束阶段开始时,若其手牌数少于体力值,你可以移去一张「粮」,然后该角色摸两张牌',
jieyuan:'竭缘',
jieyuan_more:'竭缘',
jieyuan_less:'竭缘',
jieyuan_info:'当你对一名其他角色造成伤害时,若其体力值大于或等于你的体力值,你可弃置一张黑色手牌令此伤害+1当你受到一名其他角色造成的伤害时若其体力值大于或等于你的体力值你可弃置一张红色手牌令此伤害-1。',
jieyuan_info:'当你对一名其他角色造成伤害时,若其体力值大于或等于你的体力值,你可弃置一张黑色手牌令此伤害+1当你受到一名其他角色造成的伤害时若其体力值大于或等于你的体力值你可弃置一张红色手牌令此伤害-1。',
fenxin:'焚心',
fenxin_old:'焚心',
fenxin_info:'锁定技,一名其他角色死亡后,若其身份为:忠臣,你发动“竭缘”减少伤害无体力值限制;反贼,你发动“竭缘”增加伤害无体力值限制;内奸,将“竭缘”中的黑色手牌和红色手牌改为一张牌。',
fenxin_old_info:'限定技,当你杀死一名非主公角色时,在其翻开身份牌之前,你可以与该角色交换身份牌。(你的身份为主公时不能发动此技能)',
fenxin_info:'锁定技,一名其他角色死亡后,若其身份为:忠臣,你本局内发动〖竭缘〗减少伤害时无视体力值限制;反贼,你本局内发动〖竭缘〗增加伤害时无视体力值限制;内奸,你本局内选择发动〖竭缘〗的牌时无颜色限制。',
fenxin_old_info:'限定技,当你杀死一名非主公角色时,你可以与其交换未翻开的身份牌。(你的身份为主公时不能发动此技能)',
shixin:'释衅',
shixin_info:'锁定技,当你受到火属性伤害时,你防止此伤害',
shixin_info:'锁定技,当你受到火属性伤害时,你防止此伤害',
qingyi:'轻逸',
qingyi1:'轻逸',
qingyi2:'轻逸',
qingyi_info:'你可以跳过判定阶段和摸牌阶段,视为对任意一名角色使用一张【杀】。',
qingyi_info:'你可以跳过判定阶段和摸牌阶段。若如此做,视为对一名角色使用一张无距离限制的【杀】。',
xiandeng:'先登',
xiandeng_info:'锁定技,出牌阶段,你使用的第一张【杀】不计入次数且无距离限制。',
shulv:'熟虑',
@ -14354,33 +14366,33 @@ game.import('character',function(lib,game,ui,get,ai,_status){
xisheng:'牺牲',
xisheng_info:'每名其他角色的回合限一次,你可以将两张牌当做【桃】使用。',
dujin:'独进',
dujin_info:'摸牌阶段,你可以额外摸X+1张牌X为你装备区里牌数的一半且向下取整',
dujin_info:'摸牌阶段,你可以多摸X+1张牌。X为你装备区里牌数的一半且向下取整',
yuhua:'羽化',
yuhua_info:'锁定技,弃牌阶段内,你的非基本牌不计入手牌数,且你不能弃置你的非基本牌',
yuhua_info:'锁定技,弃牌阶段内,你的非基本牌不计入手牌上限。',
qirang:'祈禳',
qirang_info:'当有装备牌进入你的装备区时,你可以获得牌堆中的一张锦囊牌',
qirang_info:'当有装备牌进入你的装备区时,你可以随机获得牌堆中的一张锦囊牌',
biluan:'避乱',
biluan_info:'摸牌阶段开始时,若有其他角色与你距离不大于1你可以放弃摸牌。若如此做,你的防御距离+XX为势力数',
biluan_info:'摸牌阶段开始时,若有与你距离不大于1的其他角色,你可以放弃摸牌。若如此做,本局内其他角色计算与你的距离+XX为势力数',
lixia:'礼下',
lixia_info:'锁定技,其他角色结束阶段开始时,若你不在其攻击范围内,你摸一张牌或令其摸一张牌。若如此做,你的防御距离-1',
lixia_info:'锁定技,其他角色结束阶段开始时,若你不在其攻击范围内,你摸一张牌或令其摸一张牌。本局内其他角色计算与你的距离时-1。',
yishe:'义舍',
yishe_bg:'米',
yishe_info:'结束阶段开始时,若你的武将牌上没有你可以摸两张牌。若如此做你将两张牌置于武将牌上称为“米”当“米”移至其他区域后若你的武将牌上没有“米”你回复1点体力',
yishe_info:'结束阶段开始时,若你的武将牌上没有「米」则你可以摸两张牌。若如此做你将两张牌置于武将牌上称为「米」当有「米」移至其他区域后若你的武将牌上没有「米」则你回复1点体力。',
bushi:'布施',
midao:'米道',
bushi_info:'当你受到1点伤害后或其他角色受到你造成的1点伤害后受到伤害的角色可以获得一张“米”',
midao_info:'当一张判定牌生效前,你可以打出一张“米”代替之',
bushi_info:'当你受到1点伤害后或其他角色受到你造成的1点伤害后受到伤害的角色可以获得你的一张「米」',
midao_info:'一名角色的判定牌生效前,你可以打出一张「米」代替之。',
fengpo:'凤魄',
fengpo_info:'当你于出牌阶段内使用第一张【杀】或【决斗】指定目标后若目标角色数为1你可以选择一项1.摸X张牌2.此牌造成的伤害+XX为其手牌中方牌的数量',
fengpo_info:'当你于出牌阶段内使用第一张【杀】或【决斗】指定目标后若目标角色数为1你可以选择一项1.摸X张牌2.此牌的伤害值基数+XX为其手牌中方牌的数量',
chenqing:'陈情',
chenqing_info:'每轮限一次,当一名角色处于濒死状态时,你可以令另一名其他角色摸四张牌,然后弃置四张牌。若其以此法弃置的四张牌花色各不相同,则视为该角色对濒死的角色使用一张【桃】',
chenqing_info:'每轮限一次,当一名角色处于濒死状态时,你可以令另一名其他角色摸四张牌,然后弃置四张牌。若其以此法弃置的四张牌花色各不相同,则视为该角色对濒死的角色使用一张【桃】',
mozhi:'默识',
mozhi_info:'结束阶段开始时,你可以将一张手牌当你本回合出牌阶段使用的第一张基本或普通锦囊牌使用。然后,你可以将一张手牌当你本回合出牌阶段使用的第二张基本或普通锦囊牌使用',
mozhi_info:'结束阶段开始时,你可以将一张手牌当你本回合出牌阶段使用的第一张基本或普通锦囊牌使用。然后,你可以将一张手牌当你本回合出牌阶段使用的第二张基本或普通锦囊牌使用。(你不能通过此技能使用【酒】)',
ranshang:'燃殇',
ranshang2:'燃殇',
ranshang_info:'锁定技当你受到1点火焰伤害后你获得1枚“燃”标记结束阶段开始时你失去X点体力X为“燃”标记的数量',
hanyong:'悍勇',
hanyong_info:'当你使用【南蛮入侵】或【万箭齐发】时,若你的体力值小于游戏轮数,你可以令此牌造成的伤害+1',
hanyong_info:'当你使用【南蛮入侵】或【万箭齐发】时,若你的体力值小于游戏轮数,你可以令此牌的伤害值基数+1',
yicong:'义从',
yongsi:'庸肆',
@ -14470,113 +14482,113 @@ game.import('character',function(lib,game,ui,get,ai,_status){
xunzhi:'殉志',
yingjian:'影箭',
fanxiang:'返乡',
fanxiang_info:'觉醒技,准备阶段开始时,若全场有至少一名已受伤且你曾发动【良助】令其摸牌的角色则你回复1点体力和体力上限失去技能【良助】并获得技能【枭姬】',
yingjian_info:'准备阶段,你可以视为使用一张无距离的杀',
xunzhi_info:'准备阶段开始时若你的上家和下家与你的体力值均不相等你可以失去1点体力。若如此做的手牌上限+2',
yawang_info:'锁定技,摸牌阶段开始时,你改为摸x张牌然后你于出牌阶段内至多使用x张牌x为与你体力值相等的角色数)',
fenyin_info:'你的回合内,当你使用牌时,若此牌与你于此回合内使用的上一张牌颜色不同,则你可以摸一张牌。',
fuji_info:'当一名角色造成雷电伤害时,你可以令其进行一次判定,若结果为黑色,此伤害+1若结果为红色该角色获得此牌。',
fulu_info:'你可以将【杀】当雷【杀】使用。',
jilei_info:'当你受到有来源的伤害后,你可以声明一种牌的类别。若如此做,你令伤害来源不能使用、打出或弃置此类别的手牌,直到其下个回合开始。',
fanxiang_info:'觉醒技,准备阶段开始时,若场上有已受伤且你发动过〖良助〗的选项二的角色则你加1点体力上限并回复1点体力失去技能〖良助〗并获得技能〖枭姬〗',
yingjian_info:'准备阶段开始时,你可以视为使用一张无距离限制】。',
xunzhi_info:'准备阶段开始时若你的上家和下家与你的体力值均不相等你可以失去1点体力。若如此做本局内手牌上限+2。',
yawang_info:'锁定技,摸牌阶段开始时,你改为摸X张牌然后你于本回合的出牌阶段内至多使用X张牌X为与你体力值相等的角色数)',
fenyin_info:'你的回合内,当你使用牌时,若此牌与你于此回合内使用的上一张牌颜色不同,则你可以摸一张牌。',
fuji_info:'当一名角色造成雷属性伤害时,你可以令其进行判定,若结果为黑色,此伤害+1若结果为红色该角色获得判定牌。',
fulu_info:'你可以将【杀】当雷【杀】使用。',
jilei_info:'当你受到有来源的伤害后,你可以声明一种牌的类别。若如此做,你令伤害来源不能使用、打出或弃置此类别的手牌,直到其下个回合开始。',
danlao:'啖酪',
danlao_info:'当你成为一张指定了多个目标的【杀】或普通锦囊牌的目标时,你可以摸一张牌令此牌对你无效。',
danlao_info:'当你成为一张指定了多个目标的【杀】或普通锦囊牌的目标时,你可以摸一张牌令此牌对你无效。',
gongao:'功獒',
zhuiji:'追击',
chouhai:'仇海',
chouhai_info:'锁定技,当你每次受到伤害时,若你没有手牌,此伤害+1。',
chouhai_info:'锁定技,当你受到伤害时,若你没有手牌,此伤害+1。',
guiming:'归命',
guiming_info:'主公技,锁定技,你将残蚀描述中的“已受伤角色”改为“已受伤角色或其他吴势力角色”',
chixin:'赤心',
chixin1:'赤心',
chixin2:'赤心',
chixin_info:'你可以将♦牌当【杀】或【闪】使用或打出。出牌阶段,你对你攻击范围内的每名角色均可使用一张【杀】。',
chixin_info:'你可以将♦牌当【杀】或【闪】使用或打出。出牌阶段,你对在你攻击范围内且本回合内未成为过你使用的【杀】的目标的角色使用的【杀】没有次数限制。',
suiren:'随仁',
suiren_info:'限定技,准备阶段开始时,你可以失去技能“义从”然后加1点体力上限并回复1点体力令一名角色摸三张牌。',
suiren_info:'限定技,准备阶段开始时,你可以失去技能〖义从〗然后加1点体力上限并回复1点体力然后令一名角色摸三张牌。',
canshi:'残蚀',
canshi2:'残蚀',
canshi_info:'摸牌阶段开始时,你可以改为摸x张牌x为已受伤的角色数若如此做当你与此回合内使用基本牌或锦囊牌时,你弃置一张牌。',
zhuiji_info:'锁定技,你与体力值不大于你的角色距离为1。',
canshi_info:'摸牌阶段开始时,你可以改为摸X张牌X为已受伤的角色数若如此做当你于此回合内使用基本牌或锦囊牌时,你弃置一张牌。',
zhuiji_info:'锁定技,你与体力值不大于你的角色距离为1。',
kunfen:'困奋',
kunfen_info:'锁定技,结束阶段开始时,你失去1点体力,然后摸两张牌',
kunfen_info:'锁定技,结束阶段开始时,你失去1点体力然后摸两张牌。',
fengliang:'逢亮',
fengliang_info:'觉醒技,当你进入濒死状态时,你减1点体力上限并将体力值回复至2点,然后获得技能挑衅,将困奋改为非锁定技',
fengliang_info:'觉醒技,当你进入濒死状态时,你减1点体力上限将体力值回复至2点获得技能〖挑衅〗并将〖困奋〗改为非锁定技。',
oldcihuai:'刺槐',
oldcihuai2:'刺槐',
oldcihuai_info:'出牌阶段开始时,你可以展示手牌。若其中没有【杀】,则当你于此阶段内手牌数变化之前/有角色死亡之前需要使用【杀】时,你可以使用无对应实体牌的【杀】。',
cihuai:'刺槐',
cihuai_info:'出牌阶段开始时,若你的手牌中没有【杀】,则你可以展示你的手牌,视为对一名角色使用一张【杀】。',
gongao_info:'锁定技,当一名角色死亡后,你增加一点体力上限,回复一点体力。',
cihuai_info:'出牌阶段开始时,若你的手牌中没有【杀】,则你可以展示你的手牌,视为对一名角色使用一张【杀】。',
gongao_info:'锁定技,当一名角色死亡后,你增加一点体力上限,回复一点体力。',
juyi:'举义',
juyi_info:'觉醒技,准备阶段开始时,若你已受伤且体力上限大于存活角色数,你须将手牌摸至体力上限,然后获得技能“崩坏”和“威重”。',
juyi_info:'觉醒技,准备阶段开始时,若你已受伤且体力上限大于存活角色数,你须将手牌摸至体力上限,然后获得技能〖崩坏〗和〖威重〗。',
weizhong:'威重',
weizhong_info:'锁定技,当你的体力上限增加或减少时,你摸一张牌。',
taichen_info:'出牌阶段限一次,你可以自减一点体力,视为对一名角色使用一张杀(不计入回合内出杀限制)',
manjuan_info:'其他角色的牌因弃置而进入弃牌堆后,你可以弃置一张花色与之不同的牌,然后获得',
weizhong_info:'锁定技,当你的体力上限增加或减少时,你摸一张牌。',
taichen_info:'出牌阶段限一次,你可以失去1点体力视为对一名角色使用一张【杀】。不计入出牌阶段的使用次数限制)',
manjuan_info:'其他角色的牌因弃置而进入弃牌堆后,你可以弃置一张花色与之不同的牌,然后获得此牌。',
xinmanjuan:'漫卷',
xinmanjuan_info:'锁定技,当你不因【漫卷】或【醉乡】而获得牌时,你将此牌置入弃牌堆。然后若此时处于你的回合内,则你可以从弃牌堆中选择获得一张与此牌点数相同的其他牌。',
zuixiang_info:'限定技准备阶段开始时你可以展示牌堆顶的3张牌并置于你的武将牌上。你不可使用或打出与该些牌同类的牌,所有同类牌对你无效。之后每个你的准备阶段,你须重复展示一次,直至这些牌中任意两张点数相同时,将你武将牌上的全部牌置于你的手上。',
naman_info:'你可以获得其他角色打出的杀',
xiemu_info:'出牌阶段限一次,你可以弃置一张【杀】并选择一个势力。若如此做,直到你的下回合开始时,当你成为该势力的其他角色使用的黑色牌的目标,你摸两张牌。',
oldxiemu_info:'每当你成为其他角色的黑色牌的目标,可以弃置一张杀并摸两张牌',
spmengjin_info:'每当你使用一张杀,可以弃置目标一张牌',
fenxun_info:'出牌阶段限一次,你可以弃置一张牌并选择一名其他角色,然后本回合你计算与其的距离视为1',
yingbin_info:'锁定技,有“咒”的角色使用与“咒”花色相同的牌时,你摸一张牌;当你因同一名角色的同一张“咒”的效果摸第二张牌时,移去该“咒”',
zhoufu_info:'出牌阶段限一次,你可以将一张手牌置于一名没有"咒"的其他角色武将牌旁,称为"咒"。当有“咒”的角色判定时,将"咒"作为判定牌;一名角色回合结束时若有角色于此回合因判定移除过“咒”则你令这些角色各失去1点体力',
yanzheng_info:'若你的手牌数大于你的体力值,你可以将你装备区内的牌当【无懈可击】使用',
kuiwei_info:'结束阶段开始时你可以摸2+X张牌,然后将你的武将牌翻面。你的下个摸牌阶段开始时,你弃置X张牌。X等于当时场上装备区内的武器牌的数量',
tongji_info:'锁定技。若你的手牌数大于你的体力值,则只要你在任一其他角色的攻击范围内,该角色使用【杀】时便不能指定你以外的角色为目标',
wangzun_info:'其他角色的准备阶段,你可以摸一张牌,然后令该角色此回合的手牌上限-1直到你的回合开始你不能再次发动此技',
kaikang_info:'每当你距离1以内的角色成为杀的目标后你可以摸一张牌。若如此做你交给其一张牌并展示之若该牌为装备牌,该角色可以使用此牌。',
liangzhu_info:'当一名角色于其出牌阶段内回复体力时你可以选择一项1、摸一张牌2、令该角色摸两张牌 ',
mingshi_info:'当你即将受到伤害时,若伤害来源的体力值大于你,你可以弃置一张黑色手牌令伤害-1 ',
lirang_info:'当你的牌因弃置而置入弃牌堆,你可以将其中的任意张牌交给其他角色',
moukui_info:'当你使用【杀】指定一名角色为目标后,你可以选择一项:摸一张牌,或弃置其一张牌。若如此做,此【杀】被【闪】抵消时,该角色弃置你的一张牌。 ',
qiangwu_info:'出牌阶段,你可以进行一次判定。若如此做,则直到回合结束,你使用点数小于判定牌的 【杀】时不受距离限制,且你使用点数大于判定牌的【杀】时不计入出牌阶段的使用次数。',
shenxian_info:'每名角色的回合限一次,你的回合外,当有其他角色因弃置而失去牌时,若其中有基本牌,你可以摸一张牌。',
oldshenxian_info:'你的回合外,每当有其他角色因弃置而失去牌时,若其中有基本牌,你可以摸一张牌。',
qiluan_info:'每当你杀死一名角色后,可以在此回合结束时摸三张牌。',
qiluan_info_guozhan:'当你杀死一名角色后,你可于此回合结束后摸三张牌',
zhendu_info:'其他角色的出牌阶段开始时,你可以弃置一张手牌,视为该角色使用一张【酒】,然后你对其造成一点伤害。',
shangyi_info:'出牌阶段限一次,你可以观看一名其他角色的手牌,然后弃置其中的一张黑色牌',
shoucheng_info:'每当一名其他角色在其回合外失去最后的手牌时,你可令该角色摸一张牌。',
shengxi_info:'若你于出牌阶段未造成伤害,你可在弃牌阶段开始时摸两张牌。',
hengzheng_info:'摸牌阶段开始时若你的体力值为1或你没有手牌你可以改为获得每名其他角色区域里的一张牌。',
cunsi_info:'限定技,出牌阶段,你可以将所有手牌交给一名男性角色,令该角色获得技能【勇决】,然后将武将牌翻面',
yongjue_info:'每当其他角色于回合内使用一张杀,若目标不是你,你可以获得之,每回合限一次',
guixiu_info:'当你成为杀的目标,若你的手牌数小于体力值,可以摸一张牌',
fenming_info:'结束阶段开始时,若你处于连环状态,你可以弃置处于连环状态的每名角色的一张牌。',
duanxie_info:'出牌阶段限一次,你可以令一名其他角色横置武将牌,若如此做,你横置武将牌。',
xiaoguo_info:'其他角色的结束阶段开始时你可以弃置一张基本牌令该角色选择一项1.弃置一张装备牌并令你摸一张牌2.受到你对其造成的1点伤害。',
zuixiang_info:'限定技准备阶段开始时你可以展示牌堆顶的3张牌并置于你的武将牌上。你不能使用或打出与该些牌同类的牌,所有同类牌对你无效。之后的每个准备阶段,你须重复展示一次,直到这些牌中任意两张点数相同。然后,你获得这些牌。',
naman_info:'当其他角色打出的【杀】进入弃牌堆时,你可以获得之。',
xiemu_info:'出牌阶段限一次,你可以弃置一张【杀】并选择一个势力。若如此做,直到你的下回合开始时,当你成为该势力的其他角色使用的黑色牌的目标,你摸两张牌。',
oldxiemu_info:'当你成为其他角色使用的黑色牌的目标后,你可以弃置一张【杀】,然后摸两张牌。',
spmengjin_info:'当你使用【杀】指定目标后,你可以弃置目标角色的一张牌。',
fenxun_info:'出牌阶段限一次,你可以弃置一张牌并选择一名其他角色,你于本回合内至其的距离视为1。',
yingbin_info:'锁定技,有“咒”的角色使用与“咒”花色相同的牌时,你摸一张牌;当你因同一名角色的同一张“咒”的效果摸第二张牌时,移去该“咒”',
zhoufu_info:'出牌阶段限一次,你可以将一张手牌置于一名没有“咒”的其他角色的武将牌旁,称为“咒”。当有“咒”的角色判定时,其改为将“咒”作为判定牌;一名角色的回合结束时,若有角色于此回合因判定移除过“咒”则你令这些角色各失去1点体力',
yanzheng_info:'若你的手牌数大于你的体力值,你可以将你装备区内的牌当【无懈可击】使用',
kuiwei_info:'结束阶段开始时你可以摸2+X张牌并记录X,然后将你的武将牌翻面X为场上所有角色装备区内武器牌数目之和。你的下个摸牌阶段开始时你弃置X张牌。',
tongji_info:'锁定技。若你的手牌数大于你的体力值,则攻击范围包含你的其他角色使用【杀】时不能指定你以外的角色为目标。',
wangzun_info:'其他角色的准备阶段开始时,你可以摸一张牌。若如此做,该角色此回合的手牌上限-1。然后你不能再发动〖妄尊〗直到回合开始。',
kaikang_info:'当一名角色成为【杀】的目标后若你至该角色的距离为1你可以摸一张牌。若如此做你交给其一张牌并展示之。若为装备牌,该角色可以使用此牌。',
liangzhu_info:'当一名角色于其出牌阶段内回复体力时你可以选择一项1、摸一张牌2、令该角色摸两张牌',
mingshi_info:'当你受到伤害时,若伤害来源的体力值大于你,你可以弃置一张黑色手牌,令伤害值-1。',
lirang_info:'当你的牌因弃置而置入弃牌堆,你可以将其中的任意张牌交给其他角色',
moukui_info:'当你使用【杀】指定目标后,你可以选择一项:摸一张牌,或弃置其一张牌。若如此做,当此【杀】被【闪】抵消时,目标角色弃置你的一张牌。 ',
qiangwu_info:'出牌阶段,你可以进行判定。若如此做,直到回合结束,你使用点数小于判定结果的【杀】时不受距离限制,且你使用点数大于判定结果的【杀】时不计入出牌阶段的使用次数限制。',
shenxian_info:'每名角色的回合限一次,你的回合外,当有其他角色因弃置而失去基本牌,你可以摸一张牌。',
oldshenxian_info:'你的回合外,每当有其他角色因弃置而失去基本牌,你可以摸一张牌。',
qiluan_info:'一名角色的回合结束时你可以摸3X张牌。X为你本回合内杀死过的角色数',
qiluan_info_guozhan:'一名角色的回合结束时,若你于回合内杀死过角色,则你可以摸三张牌。',
zhendu_info:'其他角色的出牌阶段开始时,你可以弃置一张手牌,视为该角色使用一张【酒】。若如此做,你对其造成一点伤害。',
shangyi_info:'出牌阶段限一次,你可以观看一名其他角色的手牌,然后弃置其中的一张黑色牌',
shoucheng_info:'当一名其他角色于其回合外失去手牌时,若其没有手牌,则你可令该角色摸一张牌。',
shengxi_info:'弃牌阶段开始时,若你本回合内未造成过伤害,则你可以摸两张牌。',
hengzheng_info:'摸牌阶段开始时若你的体力值为1或你没有手牌则你可以放弃摸牌,改为获得每名其他角色区域内的一张牌。',
cunsi_info:'限定技,出牌阶段,你可以将所有手牌交给一名男性角色。该角色获得技能【勇决】,然后你将武将牌翻面。',
yongjue_info:'每回合限一次。当其他角色于回合内使用的【杀】结算完成后,若你不是此【杀】的目标角色,则你可以获得之。',
guixiu_info:'当你成为的目标,若你的手牌数小于体力值,则你可以摸一张牌',
fenming_info:'结束阶段开始时,若你处于横置状态,你可以弃置所有处于横置状态的角色的各一张牌。',
duanxie_info:'出牌阶段限一次,你可以令一名其他角色横置,若如此做,你横置。',
xiaoguo_info:'其他角色的结束阶段开始时你可以弃置一张基本牌令该角色选择一项1.弃置一张装备牌,然后你摸一张牌2.受到你对其造成的1点伤害。',
sijian_info:'当你失去最后的手牌时,你可以弃置一名其他角色的一张牌。',
suishi_info:'当其他角色进入濒死状态时,伤害来源可以令你摸一张牌;当其他角色死亡时伤害来源可以令你失去1点体力',
suishi_info:'当其他角色进入濒死状态时伤害来源可以令你摸一张牌当其他角色死亡时伤害来源可以令你失去1点体力',
quji_info:'出牌阶段限一次你可以弃置X张牌X为你已损失的体力值然后令至多X名已受伤的角色各回复1点体力。若你以此法弃置的牌中有黑色牌你失去一点体力。',
junbing_info:'一名角色的结束阶段开始时,若其手牌数少于或者等于1该角色可以摸一张牌。若如此做该角色将所有手牌交给你,然后你交给其等量的牌。',
xiongyi_info:'限定技,出牌阶段,你可以指定至多三名角色各摸三张牌;若你指定的角色数不超过2你回复1点体力',
xiongyi_info_guozhan:'限定技出牌阶段你可以令与你势力相同的所有角色各摸三张牌然后若你的势力是角色最少的势力或之一则你回复1点体力',
shenzhi_info:'准备阶段开始时,你可以弃置所有手牌若你以此法弃置的牌的张数不小于X你回复1点体力X为你当前的体力值)。',
shushen_info:'当你回复1点体力时你可以令一名其他角色回复1点体力或摸两张牌',
wuji_info:'觉醒技,结束阶段若你于此回合内造成过3点或更多伤害你加1点体力上限并回复1点体力失去"虎啸",然后从场上、牌堆或弃牌堆中获得【青龙偃月刀】',
xueji_info:'出牌阶段限一次你可以弃置一张红色牌然后选择至多X名角色横置这些角色并对其中一名角色造成1点火焰伤害。X为你已损失的体力值且至少为1',
huxiao_info:'锁定技,当你造成火焰伤害后,受到此伤害的角色各摸一张牌,本回合你对这些角色使用牌没有次数限制',
junbing_info:'一名角色的结束阶段开始时,若其手牌数不大于1该角色可以摸一张牌。若如此做该角色将所有手牌交给你然后你交给其等量的牌。',
xiongyi_info:'限定技,出牌阶段,你可以选择至多三名角色,这些角色各摸三张牌;若你选择的角色数不超过2你回复1点体力',
xiongyi_info_guozhan:'限定技出牌阶段你可以令与你势力相同的所有角色各摸三张牌然后若你的势力是角色最少的势力或之一则你回复1点体力',
shenzhi_info:'准备阶段开始时,你可以弃置所有手牌。若你以此法弃置的牌数不小于X你回复1点体力X为你的体力值)。',
shushen_info:'当你回复1点体力时你可以令一名其他角色选择回复1点体力或摸两张牌',
wuji_info:'觉醒技,结束阶段开始时若你于此回合内造成过3点或更多伤害你加1点体力上限并回复1点体力失去〖虎啸〗,然后从场上、牌堆或弃牌堆中获得【青龙偃月刀】',
xueji_info:'出牌阶段限一次你可以弃置一张红色牌然后选择至多X名角色横置这些角色并对其中一名角色造成1点火焰伤害。X为你已损失的体力值且至少为1',
huxiao_info:'锁定技,当你造成火属性伤害时,该角色摸一张牌。然后,你于此回合内对其使用牌没有次数和距离限制。',
aocai_info:'当你于回合外需要使用或打出一张基本牌时,你可以观看牌堆顶的两张牌。若你观看的牌中有此牌,你可以使用打出之。',
hongyuan_info:'摸牌阶段摸牌时,你可以少摸一张牌,然后指定至多两名其他角色各摸一张牌。',
hongyuan_info_combat:'摸牌阶段摸牌时,你可以少摸一张牌,然后令其他友方角色各摸一张牌',
huanshi_info:'一名角色的判定牌生效前,你可令其观看你的手牌。若如此做,该角色选择你的一张牌,你打出此牌代替之。',
mingzhe_info:'你的回合外,每当你因使用、打出或弃置而失去一张红色牌时,你可以摸一张牌。',
duwu_info:'出牌阶段你可以弃置X张牌对你攻击范围内的一名其他角色造成1点伤害(X为该角色的体力值)。若你以此法令该角色进入濒死状态则濒死状态结算后你失去1点体力且本回合不能再发动黩武。',
tianming_info:'当你成为【杀】的目标时,你可以弃置两张牌(不足则全弃,无牌则不弃),然后摸两张牌;若此时全场体力值最多的角色仅有一名(且不是你),该角色也可以如此做。',
mizhao_info:'出牌阶段,你可以将所有手牌(至少一张)交给一名其他角色。若如此做,你令该角色与你指定的另一名有手牌的角色拼点视为拼点赢的角色对没赢的角色使用一张【杀】。每阶段限一次。',
yuanhu_info:'结束阶段开始时,你可以将一张装备牌置于一名角色的装备区里,然后根据此装备牌的类执行以下效果。武器牌:弃置距离该角色1以内的一名角色区域中的一张牌防具牌该角色摸一张牌坐骑牌该角色回复1点体力。',
lihun_info:'出牌阶段,你可以弃置一张牌并将你的武将牌翻面,若如此做,你指定一名男性角色,获得其所有手牌。出牌阶段结束时,你需为该角色每一点体力分配给其一张牌。每回合限一次。',
chongzhen_info:'每当你发动“龙胆”使用或打出一张手牌时,你可以立即获得对方的一张手牌。',
bifa_info:'结束阶段开始时,你可以将一张手牌移出游戏并指定一名其他角色。该角色的准备阶段,其观看你移出游戏的牌并选择一项:交给你一张与此牌类型的手牌并获得此牌或将此牌置入弃牌堆然后失去1点体力。',
songci_info:'出牌阶段,你可以选择一项:令一名手牌数小于其体力值的角色摸两张牌;或令一名手牌数大于其体力值的角色弃置两张牌。此技能对每名角色只能使用一次。',
yongsi_info:'锁定技,摸牌阶段,你额外摸X张牌X为场上现存势力数。弃牌阶段你至少须弃置等同于场上现存势力数的牌不足则全弃',
yicong_info:'锁定技,只要你的体力值大于2点你的进攻距离+1只要你的体力值为2点或更低你的防御距离+1',
baobian_info:'锁定技若你的体力值为3或更少你视为拥有技能“挑衅”若你的体力值为2或更少你视为拥有技能“咆哮”若你的体力值为1你视为拥有技能“神速”。',
hongyuan_info:'摸牌阶段,你可以少摸一张牌并指定至多两名其他角色。若如此做,这些角色各摸一张牌。',
hongyuan_info_combat:'摸牌阶段,你可以少摸一张牌。若如此做,其他友方角色各摸一张牌',
huanshi_info:'一名角色的判定牌生效前,你可令其观看你的手牌。若如此做,该角色选择你的一张牌,你打出此牌代替之。',
mingzhe_info:'当你于回合外使用或打出红色牌,或因弃置失去一张红色牌后,你可以摸一张牌。',
duwu_info:'出牌阶段你可以弃置X张牌对你攻击范围内的一名其他角色造成1点伤害X为该角色的体力值。若该角色因此法进入濒死状态则你于濒死状态结算后失去1点体力且本回合不能再发动〖黩武〗。',
tianming_info:'当你成为【杀】的目标时,你可以弃置两张牌(不足则全弃,无牌则不弃),然后摸两张牌;若此时全场体力值最多的角色仅有一名且不是你,该角色也可以如此做。',
mizhao_info:'出牌阶段限一次,你可以将所有手牌交给一名其他角色。若如此做,你令该角色与你指定的另一名有手牌的角色拼点视为拼点赢的角色对没赢的角色使用一张【杀】。',
yuanhu_info:'结束阶段开始时,你可以将一张装备牌置于一名角色的装备区里,然后根据此装备牌的执行以下对应效果。武器牌:弃置该角色距离1以内的一名角色区域中的一张牌防具牌该角色摸一张牌坐骑牌该角色回复1点体力。',
lihun_info:'出牌阶段限一次你可以弃置一张牌并选择一名其他男性角色。若如此做你将武将牌翻面并获得其一张手牌。出牌阶段结束时你交给其X张牌。X为该角色的体力值',
chongzhen_info:'当你发动〖龙胆〗使用或打出一张牌时,你可以获得对方的一张手牌。',
bifa_info:'结束阶段开始时,你可以将一张手牌移出游戏并指定一名其他角色。该角色的准备阶段开始时,其观看你移出游戏的牌并选择一项:交给你一张与此牌类型相同的手牌并获得此牌或将此牌置入弃牌堆然后失去1点体力。',
songci_info:'出牌阶段,你可以选择一项:令一名手牌数小于其体力值的角色摸两张牌;或令一名手牌数大于其体力值的角色弃置两张牌。每局游戏每名角色限一次。',
yongsi_info:'锁定技,摸牌阶段,你多摸X张牌。弃牌阶段开始时你弃置X张牌。X为场上势力数',
yicong_info:'锁定技,当你的体力值大于2时你计算与其他角色的距离时-1当你的体力值不大于2时其他角色计算与你的距离时+1。',
baobian_info:'锁定技若你的体力值为3或更少你视为拥有技能〖挑衅〗若你的体力值为2或更少你视为拥有技能〖咆哮〗若你的体力值为1你视为拥有技能〖神速〗。',
bingzhao:'秉诏',
bingzhao_info:'主公技,游戏开始时,你选择一个其他势力,该势力有“傀”标记的角色受到伤害后,可令你因“骨疽”额外摸一张牌。',
bingzhao_info:'主公技,游戏开始时,你选择一个其他势力。当你对该势力的角色发动〖骨疽〗时,其可令你额外摸一张牌。',
sp_default:"常规",
sp_whlw:"文和乱武",

View File

@ -390,8 +390,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
content:function(){
"step 0"
event.cards=get.cards(2*trigger.num);
event.count=trigger.num;
"step 1"
event.count--;
event.cards=get.cards(2);
"step 2"
if(event.cards.length>1){
player.chooseCardButton('将“遗计”牌分配给任意角色',true,event.cards,[1,event.cards.length]).set('ai',function(button){
if(ui.selected.buttons.length==0) return 1;
@ -402,9 +405,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
event._result={links:event.cards.slice(0),bool:true};
}
else{
event.finish();
event.goto(5);
}
"step 2"
"step 3"
if(result.bool){
for(var i=0;i<result.links.length;i++){
event.cards.remove(result.links[i]);
@ -421,13 +424,21 @@ game.import('character',function(lib,game,ui,get,ai,_status){
else{
return att/100;
}
}).set('enemy',get.value(event.togive[0])<0);
}).set('enemy',get.value(event.togive[0],player,'raw')<0);
}
"step 3"
"step 4"
if(result.targets.length){
result.targets[0].gain(event.togive,'draw');
player.line(result.targets[0],'green');
game.log(result.targets[0],'获得了'+get.cnNumber(event.togive.length)+'张牌');
event.goto(2);
}
"step 5"
if(event.count>0) player.chooseBool(get.prompt2(event.name)).set('frequentSkill',event.name);
else event.finish();
"step 6"
if(result.bool){
player.logSkill(event.name);
event.goto(1);
}
},
@ -1333,6 +1344,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
},
group:'kongcheng1',
audio:'kongcheng1',
audioname:['re_zhugeliang'],
ai:{
noh:true,
skillTagFilter:function(player,tag){
@ -1634,6 +1647,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
zhiheng:{
audio:2,
audioname:['gz_jun_sunquan'],
enable:'phaseUse',
usable:1,
position:'he',
@ -2431,7 +2445,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
translate:{
caocao:'曹操',
hujia:'护驾',
hujia_info:'主公技,当你需要使用或打出一张【闪】时,你可以令其他魏势力角色选择是否打出一张【闪】。若有角色应,则你视为使用或打出了一张【闪】。',
hujia_info:'主公技,当你需要使用或打出一张【闪】时,你可以令其他魏势力角色选择是否打出一张【闪】。若有角色应,则你视为使用或打出了一张【闪】。',
jianxiong:'奸雄',
jianxiong_info:'当你受到伤害后,你可以获得对你造成伤害的牌。',

View File

@ -515,7 +515,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
"xinfu_qianxin":{
audio:2,
group:["qianxin_effect"],
group:["xinfu_qianxin2"],
enable:"phaseUse",
usable:1,
onChooseToUse:function(event){
@ -556,8 +556,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content:function (){
'step 0'
player.$throw(cards.length);
player.storage.xinfu_qianxin=cards;
player.storage.xinfu_qianxin_target=target;
player.storage.xinfu_qianxin=cards.slice(0);
player.storage.xinfu_qianxin2=target;
var num1=game.players.length;
var num2=ui.cardPile.childElementCount;
for(var i=0;i<event.cards.length;i++){
@ -579,29 +579,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
target:-1,
},
},
},
"qianxin_effect":{
trigger:{
global:"gainAfter",
},
silent:true,
forced:true,
popup:false,
filter:function (event,player){
if(!player.storage.xinfu_qianxin||!player.storage.xinfu_qianxin_target) return false;
if(event.player==player) return false;
if(_status.currentPhase!=event.player) return false;
if(player.storage.xinfu_qianxin_target!=event.player) return false;
for(var i=0;i<event.cards.length;i++){
if(player.storage.xinfu_qianxin.contains(event.cards[i])) return true;
}
return false;
},
content:function (){
trigger.player.storage.xinfu_qianxin_source=player;
trigger.player.addTempSkill('xinfu_qianxin2');
},
},
"xinfu_qianxin2":{
subSkill:{
@ -615,31 +592,40 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
},
forced:true,
silent:true,
popup:false,
locked:false,
audio:'xinfu_qianxin',
logTarget:'player',
trigger:{
player:"phaseDiscardBefore",
global:"phaseDiscardBegin",
},
filter:function (event,player){
return true;
if(player.storage.xinfu_qianxin2!=event.player) return false;
if(!player.storage.xinfu_qianxin) return false;
var hs=event.player.getCards('h');
var cs=player.storage.xinfu_qianxin;
var bool=false;
var history=event.player.getHistory('gain')
for(var i=0;i<history.length;i++){
for(var j=0;j<history[i].cards.length;j++){
var card=history[i].cards[j];
if(hs.contains(card)&&cs.contains(card)) return true;
}
}
return false;
},
content:function (){
'step 0'
event.source=player.storage.xinfu_qianxin_source;
event.source.logSkill('xinfu_qianxin',player);
event.source.line(player,'thunder');
delete event.source.storage.xinfu_qianxin_target;
delete player.storage.xinfu_qianxin_source;
if(event.source.countCards('h')>=4){
delete player.storage.xinfu_qianxin2;
if(player.countCards('h')>=4){
event._result={index:1};
}
else{
player.chooseControl().set('choiceList',[
'令'+get.translation(event.source)+'将手牌摸至四张',
trigger.player.chooseControl().set('choiceList',[
'令'+get.translation(player)+'将手牌摸至四张',
'令自己本回合的手牌上限-2'
]).set('ai',function(){
var player=_status.event.player;
var source=_status.event.getParent().source;
var source=_status.event.getParent().player;
if(get.attitude(player,source)>0) return 0;
if(player.hp-player.countCards('h')>1) return 1;
return [0,1].randomGet();
@ -647,10 +633,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
'step 1'
if(result.index==0){
event.source.draw(4-event.source.countCards('h'));
player.drawTo(4);
}
else{
player.addTempSkill('xinfu_qianxin2_dis');
trigger.player.addTempSkill('xinfu_qianxin2_dis');
}
},
},
@ -687,18 +673,41 @@ game.import('character',function(lib,game,ui,get,ai,_status){
event.finish();
return;
}
var next=event.current[event.side];
if(get.attitude(event.current,player)>0){
if(get.attitude(next,target)<=0||next.countCards('h')==0||player.countCards('h')==1){
event.stopm=true;
event.stopt=true
}
else{
event.stopm=false;
event.stopt=false;
}
}
else{
if(get.attitude(next,target)>=0){
event.stopt=true;
event.stopm=false;
}
else{
event.stopt=false;
event.stopm=false;
}
}
player.markSkill('xinfu_fuhai');
player.line(event.current,'green');
player.chooseCard('请选择要展示的牌',true).set('ai',function(){
return 1+Math.random();
});
player.chooseCard('请选择要展示的牌',true).set('ai',function(card){
if(_status.event.stop) return 14-get.number(card);
return get.number(card)
}).set('stop',event.stopm);
'step 2'
event.mes=result.cards[0];
player.showCards(event.mes);
'step 3'
event.current.chooseCard('请选择要展示的牌',true).set('ai',function(){
return 1+Math.random();
});
event.current.chooseCard('请选择要展示的牌',true).set('ai',function(card){
if(_status.event.stop) return get.number(card);
return 14-get.number(card);
}).set('stop',event.stopt);
'step 4'
event.tes=result.cards[0];
event.current.showCards(event.tes);
@ -722,7 +731,17 @@ game.import('character',function(lib,game,ui,get,ai,_status){
ai:{
order:1,
result:{
player:1,
player:function(player,target){
var hs=player.countCards('h');
var side=target==player.next?'next':'previous';
var current=player;
for(var i=0;i<hs;i++){
current=current[side];
if(current==player||!current.countCards('h')) return 0;
if(get.attitude(current,player)>0) return 1;
}
return 0;
},
},
},
},
@ -1915,7 +1934,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(!event.nature) return false;
return player.hasMark('xinfu_falu_diamond');
},
prompt2:'弃置“勾陈”标记,从牌堆中获得每种类型的牌各一张。',
prompt2:'弃置「勾陈♦」标记,从牌堆中获得每种类型的牌各一张。',
content:function (){
'step 0'
player.removeMark('xinfu_falu_diamond');
@ -1950,7 +1969,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content:function (){
"step 0"
var str=get.translation(trigger.player)+'的'+(trigger.judgestr||'')+'判定为'+
get.translation(trigger.player.judging[0])+',是否发动【真仪】,弃置“紫薇”标记并修改判定结果?';
get.translation(trigger.player.judging[0])+',是否发动【真仪】,弃置「紫薇♠」标记并修改判定结果?';
player.chooseControl('黑桃5','红桃5','取消').set('prompt',str).set('ai',function(){
//return '取消';
var judging=_status.event.judging;
@ -2013,7 +2032,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
viewAs:{
name:"tao",
},
prompt:"弃置“后土”标记将一张手牌当桃使用",
prompt:"弃置「后土♣」标记,将一张手牌当桃使用",
check:function (card){return 15-get.value(card)},
precontent:function (){
player.removeMark('xinfu_falu_club');
@ -2035,10 +2054,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return player.hasMark('xinfu_falu_heart');
},
check:function (event,player){
return false;
if(get.attitude(player,event.player>0)) return false;
if(event.player.getEquip('baiyin')||event.player.getEquip('rewrite_baiyin')) return false;
return player.hasMark('xinfu_falu_spade')||get.color(ui.cardPile.firstChild)=='black';
},
prompt2:function(event){
return '弃置“玉清”标记,然后进行判定。若结果为黑色,则对'+get.translation(event.player)+'即将造成的伤害+1。';
return '弃置「玉清♥」标记,然后进行判定。若结果为黑色,则对'+get.translation(event.player)+'即将造成的伤害+1。';
},
logTarget:"player",
content:function (){
@ -2093,8 +2114,33 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content:function (){
'step 0'
player.chooseToDiscard(get.prompt('xinfu_yanyu'),get.translation('xinfu_yanyu_info'),'he').set('ai',function(card){
return 5-get.value(card);
}).set('logSkill','xinfu_yanyu');
var map=_status.event.goon;
var type=get.type(card,'trick');
if(!map[type]) return -1;
return map[type]-get.value(card);
}).set('logSkill','xinfu_yanyu').set('goon',function(){
var map={
basic:0,
trick:0.1,
};
var hs=trigger.player.getCards('h');
var sha=false;
var jiu=false;
for(var i=0;i<hs.length;i++){
if(game.hasPlayer(function(current){
return trigger.player.canUse(hs[i],current)&&get.effect(current,hs[i],trigger.player,trigger.player)>0;
})){
if(hs[i].name=='sha'&&!sha){
sha=true;
map.basic+=2;
}
if(hs[i].name=='tao') map.basic+=6;
if(hs[i].name=='jiu'){jiu=true;map.basic+=2.5;}
if(get.type(hs[i])=='trick') map.trick+=get.value(hs[i],player,'raw');
}
}
return map;
}());
'step 1'
if(result.bool){
player.storage.xinfu_yanyu=get.type(result.cards[0],'trick');
@ -2116,8 +2162,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
direct:true,
filter:function (event,player){
if(player.storage.xinfu_yanyu2>=3) return false;
var evt=event.getParent();
if(evt&&(evt.name=='useCard'||evt.name=='respond')) return false;
//var evt=event.getParent();
//if(evt&&(evt.name=='useCard'||evt.name=='respond')) return false;
var type=player.storage.xinfu_yanyu;
var cards=event.cards;
for(var i=0;i<cards.length;i++){
@ -2151,9 +2197,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
event.cards.remove(event.togain);
player.chooseTarget(true,'请选择要获得'+get.translation(event.togain)+'的角色').set('ai',function(target){
var att=get.attitude(_status.event.player,target);
if(_status.event.du) return -att;
return att;
}).set('du',event.togain.name=='du');
var card=_status.event.card;
var val=get.value(card);
if(target==_status.currentPhase&&game.hasPlayer(function(current){
return target.canUse(card,current)&&get.effect(current,card,target,target)>0;
})) att=att*2;
return att*val;
}).set('card',event.togain);
}
else event.finish();
'step 3'
@ -2971,7 +3021,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
lose:true,
content:function (){
player.awakenSkill('xinfu_zengdao');
player.$give(cards,target);
player.$give(cards,target,false);
target.storage.xinfu_zengdao2=cards;
target.addSkill('xinfu_zengdao2');
},
@ -3105,12 +3155,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player:"damageBegin4",
},
filter:function (event,player){
return (event.source&&event.source.countCards('h'));
return get.itemtype(event.source)=='player';
},
logTarget:"source",
content:function (){
"step 0"
trigger.source.chooseControlList(
if(!trigger.source.countCards('h')) event._result={index:1};
else trigger.source.chooseControlList(
['令'+get.translation(player)+'观看你的手牌,并获得其中所有的红桃牌。',
'防止即将对'+get.translation(player)+'造成的伤害,并使自己本回合内的红桃手牌不计入手牌上限。'],
true).set('ai',function(event,player){
@ -3164,7 +3215,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
player.logSkill('xinfu_yingshi',result.targets);
player.lose(togain,ui.special,'toStorage');
player.$give(togain,result.targets[0]);
player.$give(togain,result.targets[0],false);
result.targets[0].storage.yingshi_heart=togain;
result.targets[0].addSkill('yingshi_heart');
}
@ -4153,7 +4204,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(get.position(link)=='e') event.targets[1].equip(link);
else if(link.viewAs) event.targets[1].addJudge({name:link.viewAs},[link]);
else event.targets[1].addJudge(link);
event.targets[0].$give(link,event.targets[1])
event.targets[0].$give(link,event.targets[1],false)
game.delay();
}
},
@ -4814,7 +4865,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content:function (){
'step 0'
player.lose(cards,ui.special,'toStorage')
player.$give(cards,player);
player.$give(cards,player,false);
player.storage.xinfu_zhaoxin=player.storage.xinfu_zhaoxin.concat(cards);
player.markSkill('xinfu_zhaoxin');
'step 1'

View File

@ -4341,7 +4341,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
});
'step 1'
if(result.bool){
target.$give(result.cards.length,player);
target.$give(result.cards.length,player,false);
target.lose(result.cards,ui.special,'toStorage');
if(!player.storage.kuangbi_draw) player.storage.kuangbi_draw=[];
player.storage.kuangbi_draw.push([result.cards,target]);
@ -4783,7 +4783,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
'step 2'
if(result.bool&&result.cards&&result.cards.length){
event.target.$give(result.cards,player);
event.target.$give(result.cards,player,false);
player.storage.jieyue2=result.cards[0];
event.target.lose(result.cards[0],ui.special,'toStorage');
player.syncStorage('jieyue2');
@ -5095,7 +5095,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.syncStorage('chunlao');
player.markSkill('chunlao');
player.lose(result.cards,ui.special,'toStorage');
player.$give(result.cards,player);
player.$give(result.cards,player,false);
}
},
ai:{
@ -8336,7 +8336,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
"step 2"
if(result&&result.links&&result.links.length){
game.delay(2);
trigger.player.$give(result.links[0],player);
trigger.player.$give(result.links[0],player,false);
player.equip(result.links[0]);
player.addExpose(0.2);
}
@ -10390,7 +10390,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.markSkill('xiansi');
player.syncStorage('xiansi');
event.current.lose(result.links,ui.special,'toStorage');
event.current.$give(result.links,player);
event.current.$give(result.links,player,false);
event.goto(2);
}
},
@ -10643,7 +10643,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(result.bool){
player.logSkill('zzhenggong',trigger.source);
player.equip(result.links[0]);
trigger.source.$give(result.links[0],player);
trigger.source.$give(result.links[0],player,false);
}
},
ai:{
@ -10827,7 +10827,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
game.addVideo('storage',player,['zyexin',get.cardsInfo(player.storage.zyexin),'cards']);
game.delay();
if(get.type(event.card)=='equip'){
player.$give(event.card,result.targets[0]);
player.$give(event.card,result.targets[0],false);
result.targets[0].equip(event.card);
}
else if(get.type(event.card)=='delay'){

View File

@ -1968,9 +1968,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
enable:'phaseUse',
usable:1,
filterCard:true,
filterTarget:function(card,player,target){
return player!=target;
},
filterTarget:true,
check:function(card){
return 8-get.value(card);
},

View File

@ -1,5 +1,5 @@
window.noname_asset_list=[
'1.9.97.5',
'1.9.97.6',
'audio/background/aozhan_chaoming.mp3',
'audio/background/aozhan_online.mp3',
'audio/background/aozhan_rewrite.mp3',
@ -2090,6 +2090,43 @@ window.noname_asset_list=[
'audio/skill/zhanyuan2.mp3',
'audio/skill/zhiba2_re_sunben1.mp3',
'audio/skill/zhiba2_re_sunben2.mp3',
'audio/skill/diancai1.mp3',
'audio/skill/diancai2.mp3',
'audio/skill/diaodu1.mp3',
'audio/skill/diaodu2.mp3',
'audio/skill/gz_jun_liubei.mp3',
'audio/skill/gz_jun_sunquan.mp3',
'audio/skill/gzzongyu1.mp3',
'audio/skill/gzzongyu2.mp3',
'audio/skill/hongfa_hp.mp3',
'audio/skill/hongfa1.mp3',
'audio/skill/hongfa2.mp3',
'audio/skill/huangjintianbingfu1.mp3',
'audio/skill/huangjintianbingfu2.mp3',
'audio/skill/huibian1.mp3',
'audio/skill/huibian2.mp3',
'audio/skill/jiahe_put1.mp3',
'audio/skill/jiahe_put2.mp3',
'audio/skill/jiahe1.mp3',
'audio/skill/jiahe2.mp3',
'audio/skill/jianan1.mp3',
'audio/skill/jianan2.mp3',
'audio/skill/jizhao1.mp3',
'audio/skill/jizhao2.mp3',
'audio/skill/jubao1.mp3',
'audio/skill/jubao2.mp3',
'audio/skill/lianzi1.mp3',
'audio/skill/lianzi2.mp3',
'audio/skill/rerende_gz_jun_liubei1.mp3',
'audio/skill/rerende_gz_jun_liubei2.mp3',
'audio/skill/wendao1.mp3',
'audio/skill/wendao2.mp3',
'audio/skill/wuxin1.mp3',
'audio/skill/wuxin2.mp3',
'audio/skill/zhangwu1.mp3',
'audio/skill/zhangwu2.mp3',
'audio/skill/zhiheng_gz_jun_sunquan1.mp3',
'audio/skill/zhiheng_gz_jun_sunquan2.mp3',
'font/huangcao.ttf',
'font/shousha.ttf',

View File

@ -1,5 +1,5 @@
window.config={
forbidai:['ns_liuzhang','xin_yuji'],
forbidai:['ns_liuzhang','xin_yuji','re_yuji'],
forbidai_user:[],
forbidall:[],
forbidstone:['zhugedan','pal_xuanxiao','hs_malfurion','lusu','chenlin','hs_siwangzhiyi',

View File

@ -9703,6 +9703,8 @@
if(event.nopopup) next.nopopup=true;
if(event.animate===false) next.animate=false;
if(event.addCount===false) next.addCount=false;
if(event.noTargetDelay) next.targetDelay=false;
if(event.nodelayx) next.delayx=false;
}
},
chooseToDuiben:function(){
@ -10618,9 +10620,6 @@
event._result={bool:true};
event._direct=true;
}
else if(checkFrequent(info)&&!lib.config.autoskilllist.contains(event.skill)){
event._result={bool:true};
}
else if(info.direct){
event._result={bool:true};
event._direct=true;
@ -10630,6 +10629,9 @@
event._direct=true;
}
else{
if(checkFrequent(info)){
event.frequentSkill=true;
}
var str;
var check=info.check;
if(info.prompt) str=info.prompt;
@ -10646,6 +10648,7 @@
}
if(typeof str=='function'){str=str(trigger,player)}
var next=player.chooseBool(str);
if(event.frequentSkill) next.set('frequentSkill',event.skill);
next.set('forceDie',true);
next.ai=function(){
return !check||check(trigger,player);
@ -12520,6 +12523,10 @@
chooseBool:function(){
"step 0"
if(event.isMine()){
if(event.frequentSkill&&!lib.config.autoskilllist.contains(event.frequentSkill)){
ui.click.ok();
return;
}
ui.create.confirm('oc');
if(event.createDialog&&!event.dialog){
if(Array.isArray(event.createDialog)){
@ -15702,7 +15709,10 @@
this.node.hp.innerHTML='';
this.node.count.innerHTML='0';
if(this.name2){
delete this.singleHp;
this.node.avatar2.hide();
this.node.name2.innerHTML='';
this.classList.remove('fullskin2')
delete this.name2;
this.node.count.classList.remove('p2');
}
@ -17286,6 +17296,12 @@
else if(arguments[i]=='nodistance'){
next.nodistance=true;
}
else if(arguments[i]=='noTargetDelay'){
next.noTargetDelay=true;
}
else if(arguments[i]=='nodelayx'){
next.nodelayx=true;
}
else if(lib.card[arguments[i]]&&!next.card){
next.card={name:arguments[i]};
}
@ -25916,7 +25932,13 @@
if(_status.connectMode&&!_status.countDown){
ui.timer.show();
var num;
if(_status.connectMode){
//这么一大行都是为了祢衡
if(_status.event&&_status.event.name=='chooseToUse'&&_status.event.type=='phase'&&
_status.event.player&&_status.event.player.forceCountChoose&&
typeof _status.event.player.forceCountChoose.phaseUse=='number'){
num=_status.event.player.forceCountChoose.phaseUse;
}
else if(_status.connectMode){
num=lib.configOL.choose_timeout;
}
else{
@ -25941,12 +25963,16 @@
else if(_status.event.player.forceCountChoose&&_status.event.isMine()&&!_status.countDown){
var info=_status.event.player.forceCountChoose;
var num;
if(typeof info[_status.event.name]=='number'){
if(_status.event.name=='chooseToUse'&&_status.event.type=='phase'&&typeof info.phaseUse=='number'){
num=info.phaseUse;
}
else if(typeof info[_status.event.name]=='number'){
num=info[_status.event.name]
}
else{
else if(info.default){
num=info.default;
}
else return;
var finish=function(){
if(_status.event.endButton){
if(_status.event.skill){
@ -45196,6 +45222,7 @@
intro2.innerHTML='<span style="font-weight:bold;margin-right:5px">'+get.translation(this.link)+'</span>'+get.skillInfoTranslation(this.link);
var info=get.info(this.link);
var skill=this.link;
var playername=this.linkname;
var skillnode=this;
if(info.derivation){
var derivation=info.derivation;
@ -45270,12 +45297,15 @@
audioinfo=audioinfo[1];
}
if(typeof audioinfo=='number'){
if(Array.isArray(info.audioname)&&info.audioname.contains(playername)) audioname=audioname+'_'+playername;
game.playAudio('skill',audioname+getIndex(audioinfo));
}
else if(audioinfo){
if(Array.isArray(info.audioname)&&info.audioname.contains(playername)) audioname=audioname+'_'+playername;
game.playAudio('skill',audioname);
}
else if(true&&info.audio!==false){
if(Array.isArray(info.audioname)&&info.audioname.contains(playername)) audioname=audioname+'_'+playername;
game.playSkillAudio(audioname,getIndex(2));
}
}
@ -45290,6 +45320,7 @@
}
var current=ui.create.div('.menubutton.large',skills,clickSkill,skilltrans);
current.link=list[i];
current.linkname=name;
if(!initskill){
initskill=true;
clickSkill.call(current,'init');

View File

@ -1,8 +1,7 @@
window.noname_update={
version:'1.9.97.5',
update:'1.9.97.4',
version:'1.9.97.6',
update:'1.9.97.5',
changeLog:[
'手杀张恭,许贡,卫温诸葛直',
'BUG修复',
],
files:[
@ -13,37 +12,37 @@ window.noname_update={
//'card/swd.js',
//'card/guozhan.js',
//'card/gwent.js',
//'character/diy.js',
'character/diy.js',
//'character/extra.js',
//'character/hearth.js',
//'character/gujian.js',
'character/gwent.js',
'character/mobile.js',
//'character/gwent.js',
//'character/mobile.js',
//'character/mtg.js',
//'character/old.js',
//'character/refresh.js',
//'character/shenhua.js',
'character/refresh.js',
'character/shenhua.js',
'character/sp.js',
//'character/tw.js',
//'character/standard.js',
'character/standard.js',
//'character/swd.js',
//'character/xianjian.js',
'character/xinghuoliaoyuan.js',
'character/yijiang.js',
//'character/yxs.js',
'character/yxs.js',
//'extension/boss/extension.js',
//'layout/default/layout.css',
//'mode/identity.js',
//'mode/doudizhu.js',
//'mode/guozhan.js',
//'mode/single.js',
'mode/identity.js',
'mode/doudizhu.js',
'mode/guozhan.js',
'mode/single.js',
//'mode/stone.js',
//'mode/brawl.js',
//'mode/versus.js',
//'mode/boss.js',
'game/game.js',
//'game/NoSleep.js',
//'game/config.js',
'game/config.js',
//'game/package.js',
//'game/asset.js',
//'game/source.js',

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 87 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 79 KiB

View File

@ -634,7 +634,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
for(var i=0;i<lib.configOL.characterPack.length;i++){
var pack=lib.characterPack[lib.configOL.characterPack[i]];
for(var j in pack){
if(j=='zuoci'||j=='miheng') continue;
if(j=='zuoci') continue;
if(lib.character[j]) libCharacter[j]=pack[j];
}
}

View File

@ -784,8 +784,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
if(result.bool){
var target=result.targets[0];
player.line(target,'green');
target.gain(card,player)
player.$give(card,target);
target.gain(card,player,'give');
}
},
},
@ -921,8 +920,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
if(result.index==0) target.carryOutJunling(player,event.junling,targets);
else if(target!=player&&target.countCards('h')) {
event.num=target.countCards('h');
player.gain(target.getCards('h'),target);
target.$give(event.num,player);
player.gain(target.getCards('h'),target,'giveAuto');
player.chooseCard('交给'+get.translation(target)+get.cnNumber(event.num)+'张牌','he',event.num,true).set('ai',function(card){
return -get.value(card);
});
@ -930,8 +928,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
else event.finish();
'step 3'
if(result.cards){
target.gain(result.cards,player);
player.$give(num,target);
target.gain(result.cards,player,'giveAuto');
}
},
group:['gzweidi_ft','gzweidi_ftc'],
@ -1053,8 +1050,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
'step 1'
if(result.cards){
player.logSkill('gzfudi',trigger.source);
trigger.source.gain(result.cards,player);
player.$give(1,trigger.source);
trigger.source.gain(result.cards,player,'giveAuto');
if(event.players.length==1) event.target=event.players[0];
else if(event.players.length) player.chooseTarget('附敌</br></br><div class="center text">对'+get.translation(event.players)+'中的一名角色造成一点伤害</div>',function(card,player,target){
return target.isFriendOf(trigger.source)&&target.hp>=player.hp
@ -1104,6 +1100,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
}
},
jianan:{
audio:2,
unique:true,
forceunique:true,
group:'wuziliangjiangdao',
@ -1111,7 +1108,11 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
global:'g_jianan',
},
g_jianan:{
trigger:{player:['phaseZhunbeiBegin','phaseBefore','dieBegin']},
trigger:{
player:['phaseZhunbeiBegin','phaseBefore','dieBegin'],
},
audio:'jianan',
forceaudio:true,
filter:function(event,player,name){
if(name!='phaseZhunbeiBegin') return get.is.jun(player)&&player.identity=='wei';
return this.filter2.apply(this,arguments);
@ -1209,6 +1210,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
},
huibian:{
enable:'phaseUse',
audio:2,
usable:1,
filter:function(event,player){
return game.countPlayer(function(current){
@ -1246,6 +1248,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
}
},
gzzongyu:{
audio:2,
unique:true,
forceunique:true,
group:['gzzongyu_others','gzzongyu_player'],
@ -1269,7 +1272,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
player.chooseBool('是否发动【总御】,与'+get.translation(trigger.player)+'交换装备区内坐骑牌?');
'step 1'
if(result.bool){
player.logSkill('gzzongyu_others',trigger.player);
player.logSkill('gzzongyu',trigger.player);
event.cards=[player.getCards('e',{subtype:['equip3','equip4']}),trigger.player.getCards('e',{name:'liulongcanjia'})];
player.lose(event.cards[0],ui.special);
trigger.player.lose(event.cards[1],ui.special);
@ -1283,6 +1286,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
},
},
player:{
audio:'gzzongyu',
trigger:{player:'equipAfter'},
forced:true,
filter:function(event,player){
@ -1386,8 +1390,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
player.line(result.targets,'green');
if(result.cards.length){
event.cards=result.cards;
result.targets[0].gain(result.cards,player);
player.$give(result.cards,result.targets[0]);
result.targets[0].gain(result.cards,player,'give');
}
else{
player.storage.gzzhengbi_eff1=result.targets[0];
@ -1408,8 +1411,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
else{
if(target.countCards('h')){
var cards=target.getCards('h');
player.gain(cards,target);
target.$giveAuto(cards,player);
player.gain(cards,target,'giveAuto');
event.finish();
}
else event.finish();
@ -1419,8 +1421,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
target.chooseCard('he',(check?1:2),{type:(check?['trick','delay','equip']:'basic')},true);
'step 5'
if(result.cards){
player.gain(result.cards,target);
target.$giveAuto(result.cards,player);
player.gain(result.cards,target,'giveAuto');
}
},
subSkill:{
@ -1565,8 +1566,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
if(result.bool){
event.target=result.targets[0];
player.logSkill('gzjieyue',result.targets);
result.targets[0].gain(result.cards[0],player);
player.$give(1,result.targets[0]);
result.targets[0].gain(result.cards[0],player,'giveAuto');
player.chooseJunlingFor(result.targets[0]);
}
else event.finish();
@ -1782,10 +1782,10 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
},
subSkill:{
gain:{
trigger:{global:'useCard'},
trigger:{target:'useCardToTargeted'},
forced:true,
filter:function(event,player){
return event.card.name=='tao'&&event.player!=player&&event.targets.contains(player);
return event.card.name=='tao'&&event.player!=player;
},
logTarget:'player',
content:function(){trigger.player.draw()},
@ -1809,8 +1809,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
});
'step 2'
if(result.bool){
player.gain(result.cards[0],trigger.source);
trigger.source.$give(1,player);
player.gain(result.cards[0],trigger.source,'giveAuto');
}
else trigger.source.loseHp();
if(event.num>0) event.goto(1);
@ -1839,23 +1838,13 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
}).set('filterCard',lib.filter.cardDiscardable);
'step 2'
if(result.bool&&result.cards.length){
if(get.type(result.cards[0])=='equip'&&player.canEquip(result.cards[0],true)){
player.$give(result.cards,player);
player.lose(result.cards,ui.special);
event.toequip=result.cards[0];
if(get.type(result.cards[0])=='equip'&&player.hasUseTarget(result.cards[0])){
player.chooseUseTarget(result.cards[0],true,'nopopup');
}
else{
player.discard(result.cards[0]);
}
}
'step 3'
if(event.toequip){
game.delay();
}
'step 4'
if(event.toequip){
player.equip(event.toequip);
}
},
ai:{
effect:{
@ -3027,27 +3016,12 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
},
hmkguishu:{
audio:'bmcanshi',
group:["hmkguishu_reset"],
subSkill:{
reset:{
sub:true,
silent:true,
forced:true,
popup:false,
trigger:{
player:"phaseBefore",
},
content:function (){
player.storage.hmkguishu=0;
},
},
},
enable:"phaseUse",
filter:function (event,player){
return player.countCards('h',{suit:'spade'})>0;
},
init:function (player){
player.storage.hmkguishu=0;
if(!player.storage.hmkguishu) player.storage.hmkguishu=0;
},
chooseButton:{
dialog:function (event,player){
@ -3514,7 +3488,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
var card=result.cards[0]
player.storage.qianhuan.add(card);
player.lose(card,ui.special);
player.$give(card,player);
player.$give(card,player,false);
player.markSkill('qianhuan',true);
player.logSkill('qianhuan');
}
@ -3951,7 +3925,8 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
},
jiahe_put:{
enable:'phaseUse',
audio:"jiahe",
audio:2,
forceaudio:true,
filter:function(event,player){
var zhu=get.zhu(player,'jiahe');
if(zhu&&zhu.storage.yuanjiangfenghuotu){
@ -3986,7 +3961,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
toStorage:true,
prepare:function(cards,player){
var zhu=get.zhu(player,'jiahe');
player.$give(cards,zhu);
player.$give(cards,zhu,false);
player.line(zhu);
},
content:function(){
@ -4006,7 +3981,8 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
jiahe_skill:{
trigger:{player:'phaseZhunbeiBegin'},
direct:true,
audio:"jiahe",
audio:"jiahe_put",
forceaudio:true,
filter:function(event,player){
var zhu=get.zhu(player,'jiahe');
if(zhu&&zhu.storage.yuanjiangfenghuotu&&zhu.storage.yuanjiangfenghuotu.length){
@ -4064,7 +4040,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
'step 2'
if(result.control!='cancel2'){
player.addTempSkill(result.control);
if(!event.done) player.logSkill('jiahe');
if(!event.done) player.logSkill('jiahe_put');
game.log(player,'获得了技能','【'+get.translation(result.control)+'】');
if(event.num>=5&&!event.done){
event.done=true;
@ -4635,6 +4611,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
audio:'suishi',
trigger:{global:'dieAfter'},
forced:true,
check:function(){return false},
filter:function(event,player){
return event.player.isFriendOf(player);
},
@ -4643,7 +4620,8 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
}
},
hongfa_respond:{
audio:'hongfa',
audio:'huangjintianbingfu',
forceaudio:true,
trigger:{player:'chooseToRespondBegin'},
direct:true,
filter:function(event,player){
@ -4677,7 +4655,8 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
}
},
hongfa_use:{
audio:'hongfa',
audio:'huangjintianbingfu',
forceaudio:true,
enable:'chooseToUse',
filter:function(event,player){
if(!event.filterCard({name:'sha'},player)) return false;
@ -4761,6 +4740,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
global:['hongfa_use','hongfa_respond'],
subSkill:{
hp:{
audio:true,
trigger:{player:'loseHpBefore'},
filter:function(event,player){
return player.storage.huangjintianbingfu.length>0;
@ -4780,7 +4760,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
player.updateMarks('huangjintianbingfu');
player.syncStorage('huangjintianbingfu');
trigger.cancel();
player.logSkill('hongfa');
player.logSkill('hongfa_hp');
game.delay();
}
}
@ -4799,13 +4779,19 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
check:function(card){
return 6-get.value(card);
},
onChooseToUse:function(event){
if(game.online) return;
event.set('wendao',function(){
for(var i=0;i<ui.discardPile.childElementCount;i++){
if(ui.discardPile.childNodes[i].name=='taipingyaoshu') return true;
}
return game.hasPlayer(function(current){
return current!=event.player&&current.countCards('ej','taipingyaoshu');
});
}());
},
filter:function(event,player){
for(var i=0;i<ui.discardPile.childElementCount;i++){
if(ui.discardPile.childNodes[i].name=='taipingyaoshu') return true;
}
return game.hasPlayer(function(current){
return current!=player&&current.countCards('ej','taipingyaoshu');
});
return event.wendao==true;
},
content:function(){
var list=[];
@ -4826,8 +4812,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
var card=list.randomGet();
var owner=get.owner(card);
if(owner){
player.gain(card,owner);
owner.$give(card,player);
player.gain(card,owner,'give');
player.line(owner,'green');
}
else{
@ -4844,6 +4829,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
}
},
huangjintianbingfu:{
audio:2,
unique:true,
forceunique:true,
nopop:true,
@ -5132,6 +5118,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
jizhao:{
derivation:'rerende',
unique:true,
audio:2,
enable:'chooseToUse',
mark:true,
skillAnimation:true,
@ -5286,7 +5273,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
event.current=target;
target.equip(result.cards[0]);
if(target!=player){
player.$give(result.cards,target);
player.$give(result.cards,target,false);
}
game.delay(2);
player.chooseTarget('弃置一名角色的一张牌',function(card,player,target){
@ -5687,8 +5674,12 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
}
else{
player.chooseControl('主将','副将',function(){
return Math.random()<0.5?'主将':'副将';
}).set('prompt','令'+get.translation(trigger.source)+'失去一张武将牌的所有技能').set('forceDie',true);
return _status.event.choice;
}).set('prompt','令'+get.translation(trigger.source)+'失去一张武将牌的所有技能').set('forceDie',true).set('choice',function(){
var rank=get.guozhanRank(trigger.source.name1)-get.guozhanRank(trigger.source.name2);
if(rank==0) rank=Math.random()>0.5?1:-1;
return (rank*get.attitude(player,trigger.source))>0?'副将':'主将';
}());
}
'step 1'
var skills;
@ -6148,7 +6139,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
if(_status.connectMode){
if(!lib.configOL.junzhu) return false;
}
else if(!get.config('junzhu')) return false;;
else if(!get.config('junzhu')) return false;
return true;
},
content:function(){
@ -6165,6 +6156,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
var to='gz_jun_'+player.name1.slice(3);
event.maxHp=player.maxHp;
player.reinit(from,to,4);
if(lib.skill[to]) game.trySkillAudio(to,player);
player.showCharacter(0);
}
else event.finish();
@ -6172,6 +6164,10 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
if(player.maxHp>event.maxHp) player.recover(player.maxHp-event.maxHp);
}
},
gz_jun_liubei:{audio:true},
gz_jun_caocao:{audio:true},
gz_jun_sunquan:{audio:true},
gz_jun_zhangjiao:{audio:true},
_zhenfazhaohuan:{
enable:'phaseUse',
usable:1,
@ -7036,7 +7032,8 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
gzjieyue:'节钺',
gzjieyue_info:'准备阶段开始时,你可以将一张手牌交给一名非魏势力角色,然后选择一个“军令”,然后令其选择一项:执行该军令,然后你摸一张牌;或令你于此回合摸牌阶段摸牌时,额外摸三张牌。',
gz_wangping:'王平',
jianglue:'将略',
jianglue:'将略',
jianglue_info:'限定技出牌阶段你可以选择一个“军令”然后与你势力相同的其他角色可以执行该军令未确定势力角色可以在此时明置一张武将牌。你与每名执行该军令的角色增加一点体力上限然后回复一点体力然后你摸X张牌X为以此法回复了体力的角色数。',
gz_fazheng:'法正',
gzxuanhuo:'眩惑',
@ -7574,8 +7571,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
'step 2'
if(event.junling=='junling2'&&source!=player){
if(result.cards.length&&event.ing){
source.gain(result.cards,player);
player.$give(1,source);
source.gain(result.cards,player,'giveAuto');
}
event.num++;
if(event.num<3){

View File

@ -1377,7 +1377,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
for(var i=0;i<lib.configOL.characterPack.length;i++){
var pack=lib.characterPack[lib.configOL.characterPack[i]];
for(var j in pack){
if(j=='zuoci'||j=='miheng') continue;
if(j=='zuoci') continue;
if(lib.character[j]) libCharacter[j]=pack[j];
}
}

View File

@ -555,7 +555,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
for(var i=0;i<lib.configOL.characterPack.length;i++){
var pack=lib.characterPack[lib.configOL.characterPack[i]];
for(var j in pack){
if(j=='zuoci'||j=='miheng') continue;
if(j=='zuoci') continue;
if(lib.character[j]) libCharacter[j]=pack[j];
}
}
@ -578,6 +578,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
"step 2"
game.broadcastAll(function(player,character,id){
player.init(character);
if(player==game.me) game.addRecentCharacter(character);
},game.zhu,result.links[0]);
game.fan.chooseButton(true).set('ai',function(button){
return Math.random();
@ -590,6 +591,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
dialog.close();
}
player.init(character);
if(player==game.me) game.addRecentCharacter(character);
setTimeout(function(){
ui.arena.classList.remove('choose-character');
},500);