v1.9.9.2.2(Part 2)
This commit is contained in:
parent
aebff71b78
commit
a6c10eb1ff
|
@ -6,8 +6,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
connect:true,
|
||||
characterSort:{
|
||||
mobile:{
|
||||
mobile_default:["miheng","taoqian","liuzan","lingcao","sunru","lifeng","zhuling","liuye","zhaotongzhaoguang","majun","simazhao","wangyuanji","pangdegong"],
|
||||
mobile_default:["miheng","taoqian","liuzan","lingcao","sunru","lifeng","zhuling","liuye","zhaotongzhaoguang","majun","simazhao","wangyuanji","pangdegong","shenpei"],
|
||||
mobile_fire:["re_sp_zhugeliang","re_xunyu","re_dianwei","re_yanwen","re_pangtong","xin_yuanshao"],
|
||||
mobile_forest:['re_zhurong','re_menghuo'],
|
||||
mobile_others:["re_jikang","old_bulianshi","old_caochun","old_yuanshu"],
|
||||
},
|
||||
},
|
||||
|
@ -19,7 +20,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
liuzan:['male','wu',4,['fenyin']],lingcao:['male','wu',4,['dujin']],
|
||||
sunru:['female','wu',3,['yingjian','shixin']],
|
||||
lifeng:['male','shu',3,['tunchu','shuliang']],
|
||||
zhuling:['male','wei',4,['zhanyi']],
|
||||
zhuling:['male','wei',4,['xinzhanyi']],
|
||||
liuye:['male','wei',3,['polu','choulve']],
|
||||
zhaotongzhaoguang:["male","shu",4,["yizan_use","xinfu_longyuan"],[]],
|
||||
majun:["male","wei",3,["xinfu_jingxie1","xinfu_qiaosi"],[]],
|
||||
|
@ -34,16 +35,466 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
xin_yuanshao:['male','qun',4,['reluanji','xueyi'],['zhu']],
|
||||
old_caochun:['male','wei',4,['shanjia']],
|
||||
old_yuanshu:['male','qun',4,['xinyongsi','yjixi']],
|
||||
|
||||
shenpei:["male","qun","2/3",["shouye","liezhi"],[]],
|
||||
re_zhurong:['female','shu',4,['juxiang','relieren']],
|
||||
re_menghuo:['male','shu',4,['huoshou','rezaiqi']],
|
||||
},
|
||||
characterIntro:{
|
||||
shenpei:'审配(?-204年),字正南,魏郡阴安(今河北清丰北)人。为人正直, 袁绍领冀州,审配被委以腹心之任,并总幕府。河北平定,袁绍以审配、逢纪统军事,审配恃其强盛,力主与曹操决战。曾率领弓弩手大破曹军于官渡。官渡战败,审配二子被俘,反因此受谮见疑,幸得逢纪力保。袁绍病死,审配等矫诏立袁尚为嗣,导致兄弟相争,被曹操各个击破。曹操围邺,审配死守数月,终城破被擒,拒不投降,慷慨受死。',
|
||||
},
|
||||
card:{
|
||||
pss_paper:{
|
||||
type:'pss',
|
||||
derivation:'shenpei',
|
||||
},
|
||||
pss_scissor:{
|
||||
type:'pss',
|
||||
derivation:'shenpei',
|
||||
},
|
||||
pss_stone:{
|
||||
type:'pss',
|
||||
derivation:'shenpei',
|
||||
},
|
||||
},
|
||||
characterFilter:{},
|
||||
skill:{},
|
||||
skill:{
|
||||
relieren:{
|
||||
audio:'lieren',
|
||||
audioname:['boss_lvbu3'],
|
||||
trigger:{player:'shaBegin'},
|
||||
filter:function(event,player){
|
||||
return player.canCompare(event.target);
|
||||
},
|
||||
check:function(event,player){
|
||||
return get.attitude(player,event.target)<0;
|
||||
},
|
||||
priority:5,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseToCompare(trigger.target);
|
||||
"step 1"
|
||||
if(result.bool&&trigger.target.countGainableCards(player,'he')){
|
||||
player.gainPlayerCard(trigger.target,true,'he');
|
||||
}
|
||||
else{
|
||||
var card1=result.player;
|
||||
var card2=result.target;
|
||||
if(get.position(card1)=='d') trigger.target.gain(card1,'gain2');
|
||||
if(get.position(card2)=='d') player.gain(card2,'gain2');
|
||||
}
|
||||
}
|
||||
},
|
||||
rezaiqi:{
|
||||
init:function(player,skill){
|
||||
player.storage[skill]=0;
|
||||
},
|
||||
audio:'zaiqi',
|
||||
direct:true,
|
||||
filter:function(event,player){
|
||||
return player.storage.rezaiqi>0;
|
||||
},
|
||||
trigger:{
|
||||
player:'phaseDiscardBegin'
|
||||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget([1,player.storage.rezaiqi],get.prompt2('rezaiqi')).ai=function(target){
|
||||
return get.attitude(_status.event.player,target);
|
||||
};
|
||||
'step 1'
|
||||
if(result.bool){
|
||||
var targets=result.targets;
|
||||
targets.sortBySeat();
|
||||
player.line(targets,'fire');
|
||||
player.logSkill('rezaiqi',targets);
|
||||
event.targets=targets;
|
||||
}
|
||||
else event.finish();
|
||||
'step 2'
|
||||
event.current=targets.shift();
|
||||
if(player.isHealthy()) event._result={index:0};
|
||||
else event.current.chooseControl().set('choiceList',[
|
||||
'摸一张牌',
|
||||
'令'+get.translation(player)+'回复一点体力',
|
||||
]).set('ai',function(){
|
||||
if(get.attitude(event.current,player)>0) return 1;
|
||||
return 0;
|
||||
});
|
||||
'step 3'
|
||||
if(result.index==1){
|
||||
event.current.line(player);
|
||||
player.recover();
|
||||
}
|
||||
else event.current.draw();
|
||||
game.delay();
|
||||
if(targets.length) event.goto(2);
|
||||
},
|
||||
group:'rezaiqi_count',
|
||||
},
|
||||
rezaiqi_count:{
|
||||
trigger:{
|
||||
global:["loseEnd","cardsDiscardEnd"],
|
||||
player:'phaseAfter',
|
||||
},
|
||||
silent:true,
|
||||
forced:true,
|
||||
popup:false,
|
||||
filter:function (event,player,name){
|
||||
if(name=='phaseAfter') return true;
|
||||
if(_status.currentPhase!=player) return false;
|
||||
var evt=event.getParent();
|
||||
if(evt&&evt.name=='useCard'&&evt.card&&['equip','delay'].contains(get.type(evt.card))) return false;
|
||||
var cards=event.cards;
|
||||
for(var i=0;i<cards.length;i++){
|
||||
if(get.suit(cards[i])=='heart'&&get.position(cards[i])=='d') return true;
|
||||
}
|
||||
return false;
|
||||
},
|
||||
content:function(){
|
||||
if(event.triggername=='phaseAfter') player.storage.rezaiqi=0;
|
||||
else{
|
||||
var cards=trigger.cards;
|
||||
for(var i=0;i<cards.length;i++){
|
||||
if(get.suit(cards[i])=='heart'&&get.position(cards[i])=='d') player.storage.rezaiqi++;
|
||||
}
|
||||
}
|
||||
},
|
||||
},
|
||||
shouye:{
|
||||
group:'shouye_after',
|
||||
trigger:{global:"useCard"},
|
||||
filter:function(event,player){
|
||||
return event.player!=player&&event.targets&&
|
||||
event.targets[0]==player&&event.targets.length==1;
|
||||
},
|
||||
check:function(event,player){
|
||||
return get.effect(player,event.card,event.player,player)<0;
|
||||
},
|
||||
usable:1,
|
||||
logTarget:'player',
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.line(trigger.player,'green');
|
||||
player.chooseToPSS(trigger.player);
|
||||
'step 1'
|
||||
if(result.tie){
|
||||
event.goto(0);
|
||||
}
|
||||
else if(result.bool){
|
||||
trigger.excluded.add(player);
|
||||
trigger.shouyeer=player;
|
||||
}
|
||||
},
|
||||
subSkill:{
|
||||
after:{
|
||||
sub:true,
|
||||
trigger:{global:'useCardAfter'},
|
||||
forced:true,
|
||||
silent:true,
|
||||
popup:false,
|
||||
filter:function(event,player){
|
||||
if(event.shouyeer!=player) return false;
|
||||
if(event.cards){
|
||||
for(var i=0;i<event.cards.length;i++){
|
||||
if(event.cards[i].isInPile()) return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
},
|
||||
content:function(){
|
||||
var list=[];
|
||||
for(var i=0;i<trigger.cards.length;i++){
|
||||
if(trigger.cards[i].isInPile()){
|
||||
list.push(trigger.cards[i]);
|
||||
}
|
||||
}
|
||||
player.gain(list,'gain2');
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
liezhi:{
|
||||
group:'liezhi_damage',
|
||||
trigger:{player:'phaseBegin'},
|
||||
direct:true,
|
||||
filter:function(event,player){
|
||||
return !player.hasSkill('liezhi_disable');
|
||||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('liezhi'),'弃置至多两名角色区域内的各一张牌',[1,2],function(card,player,target){
|
||||
return target!=player&&target.countDiscardableCards(player,'hej')>0;
|
||||
}).ai=function(target){
|
||||
var player=_status.event.player;
|
||||
return get.effect(player,{name:'guohe'},target,player);
|
||||
};
|
||||
'step 1'
|
||||
if(result.bool){
|
||||
result.targets.sortBySeat();
|
||||
event.targets=result.targets;
|
||||
player.line(result.targets,'green');
|
||||
player.logSkill('liezhi',result.targets);
|
||||
}
|
||||
else event.finish();
|
||||
'step 2'
|
||||
event.current=targets.shift();
|
||||
player.discardPlayerCard(event.current,'hej',true)
|
||||
if(targets.length) event.redo();
|
||||
'step 3'
|
||||
if(player.storage.liezhi){
|
||||
trigger.liezhi=true;
|
||||
player.addSkill('liezhi_disable');
|
||||
}
|
||||
},
|
||||
subSkill:{
|
||||
disable:{
|
||||
sub:true,
|
||||
trigger:{player:'phaseAfter'},
|
||||
forced:true,
|
||||
silent:true,
|
||||
popup:false,
|
||||
charlotte:true,
|
||||
filter:function(event){return !event.liezhi},
|
||||
content:function(){player.removeSkill('liezhi_disable')},
|
||||
},
|
||||
damage:{
|
||||
trigger:{player:'damage'},
|
||||
forced:true,
|
||||
silent:true,
|
||||
popup:false,
|
||||
content:function(){player.storage.liezhi=true}
|
||||
},
|
||||
},
|
||||
},
|
||||
xinzhanyi:{
|
||||
audio:'zhanyi',
|
||||
enable:'phaseUse',
|
||||
usable:1,
|
||||
filterCard:true,
|
||||
position:'he',
|
||||
check:function(card){
|
||||
var player=_status.event.player;
|
||||
if(player.hp<3) return 0;
|
||||
var type=get.type(card,'trick');
|
||||
if(type=='trick'){
|
||||
return 6-get.value(card);
|
||||
}
|
||||
else if(type=='equip'){
|
||||
if(player.hasSha()&&game.hasPlayer(function(current){
|
||||
return (player.canUse('sha',current)&&
|
||||
get.attitude(player,current)<0&&
|
||||
get.effect(current,{name:'sha'},player,player)>0)
|
||||
})){
|
||||
return 6-get.value(card);
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
},
|
||||
content:function(){
|
||||
player.loseHp();
|
||||
switch(get.type(cards[0],'trick')){
|
||||
case 'basic':player.addTempSkill('xinzhanyi_basic');break;
|
||||
case 'equip':player.addTempSkill('xinzhanyi_equip');break;
|
||||
case 'trick':player.addTempSkill('xinzhanyi_trick');player.draw(3);break;
|
||||
}
|
||||
},
|
||||
ai:{
|
||||
order:9.1,
|
||||
result:{
|
||||
player:1
|
||||
}
|
||||
}
|
||||
},
|
||||
xinzhanyi_basic1:{
|
||||
trigger:{player:"useCard"},
|
||||
filter:function(event,player){
|
||||
return event.skill=='xinzhanyi_basic_backup'&&!player.storage.xinzhanyi_basic1;
|
||||
},
|
||||
forced:true,
|
||||
silent:true,
|
||||
popup:false,
|
||||
onremove:true,
|
||||
content:function(){
|
||||
trigger.xinzhanyi=true;
|
||||
player.storage.xinzhanyi_basic1=true;
|
||||
},
|
||||
},
|
||||
xinzhanyi_basic2:{
|
||||
trigger:{source:['damageBegin','recoverBegin']},
|
||||
forced:true,
|
||||
silent:true,
|
||||
popup:false,
|
||||
filter:function(event){
|
||||
return event.getParent(2).xinzhanyi==true;
|
||||
},
|
||||
content:function(){
|
||||
trigger.num++
|
||||
},
|
||||
},
|
||||
xinzhanyi_basic:{
|
||||
group:['xinzhanyi_basic1','xinzhanyi_basic2'],
|
||||
enable:"chooseToUse",
|
||||
filter:function (event,player){
|
||||
if(event.filterCard({name:'sha'},player,event)||
|
||||
event.filterCard({name:'jiu'},player,event)||
|
||||
event.filterCard({name:'tao'},player,event)){
|
||||
return player.hasCard(function(card){
|
||||
return get.type(card)=='basic';
|
||||
},'h');
|
||||
}
|
||||
return false;
|
||||
},
|
||||
chooseButton:{
|
||||
dialog:function (event,player){
|
||||
var list=[];
|
||||
if(event.filterCard({name:'sha'},player,event)){
|
||||
list.push(['基本','','sha']);
|
||||
list.push(['基本','','sha','fire']);
|
||||
list.push(['基本','','sha','thunder']);
|
||||
}
|
||||
if(event.filterCard({name:'tao'},player,event)){
|
||||
list.push(['基本','','tao']);
|
||||
}
|
||||
if(event.filterCard({name:'jiu'},player,event)){
|
||||
list.push(['基本','','jiu']);
|
||||
}
|
||||
return ui.create.dialog('战意',[list,'vcard'],'hidden');
|
||||
},
|
||||
check:function (button){
|
||||
var player=_status.event.player;
|
||||
var card={name:button.link[2],nature:button.link[3]};
|
||||
if(game.hasPlayer(function(current){
|
||||
return player.canUse(card,current)&&get.effect(current,card,player,player)>0;
|
||||
})){
|
||||
switch(button.link[2]){
|
||||
case 'tao':return 5;
|
||||
case 'jiu':{
|
||||
if(player.countCards('h',{type:'basic'})>=2) return 3;
|
||||
};
|
||||
case 'sha':
|
||||
if(button.link[3]=='fire') return 2.95;
|
||||
else if(button.link[3]=='thunder') return 2.92;
|
||||
else return 2.9;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
},
|
||||
backup:function (links,player){
|
||||
return {
|
||||
audio:'zhanyi',
|
||||
filterCard:function(card,player,target){
|
||||
return get.type(card)=='basic';
|
||||
},
|
||||
check:function(card,player,target){
|
||||
return 9-get.value(card);
|
||||
},
|
||||
viewAs:{name:links[0][2],nature:links[0][3]},
|
||||
position:'he',
|
||||
popname:true,
|
||||
}
|
||||
},
|
||||
prompt:function (links,player){
|
||||
return '将一张基本牌当做'+get.translation(links[0][3]||'')+get.translation(links[0][2])+'使用';
|
||||
},
|
||||
},
|
||||
ai:{
|
||||
order:function (){
|
||||
var player=_status.event.player;
|
||||
var event=_status.event;
|
||||
if(event.filterCard({name:'jiu'},player,event)&&get.effect(player,{name:'jiu'})>0&&player.countCards('h',{type:'basic'})>=2){
|
||||
return 3.3;
|
||||
}
|
||||
return 3.1;
|
||||
},
|
||||
save:true,
|
||||
respondSha:true,
|
||||
skillTagFilter:function (player,tag,arg){
|
||||
if(player.hasCard(function(card){
|
||||
return get.type(card)=='basic';
|
||||
},'he')){
|
||||
if(tag=='respondSha'){
|
||||
if(arg!='use') return false;
|
||||
}
|
||||
}
|
||||
else{
|
||||
return false;
|
||||
}
|
||||
},
|
||||
result:{
|
||||
player:1,
|
||||
},
|
||||
},
|
||||
},
|
||||
xinzhanyi_equip:{
|
||||
audio:'zhanyi',
|
||||
trigger:{player:'shaBegin'},
|
||||
forced:true,
|
||||
filter:function(event,player){
|
||||
return event.target.countCards('he')>0;
|
||||
},
|
||||
check:function(event,player){
|
||||
return get.attitude(player,event.target)<0;
|
||||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
trigger.target.chooseToDiscard('he',true,2);
|
||||
'step 1'
|
||||
if(result.bool&&result.cards&&result.cards.length){
|
||||
if(result.cards.length==1){
|
||||
event._result={bool:true,links:result.cards.slice(0)};
|
||||
}
|
||||
else player.chooseButton(['选择获得其中的一张牌',result.cards.slice(0)],true).ai=function(button){
|
||||
return get.value(button.link);
|
||||
};
|
||||
}
|
||||
else event.finish();
|
||||
'step 2'
|
||||
if(result.links) player.gain(result.links,'gain2');
|
||||
}
|
||||
},
|
||||
xinzhanyi_trick:{
|
||||
mod:{
|
||||
wuxieRespondable:function(){
|
||||
return false;
|
||||
}
|
||||
}
|
||||
},
|
||||
},
|
||||
translate:{
|
||||
re_jikang:"新嵇康",
|
||||
old_bulianshi:'新步练师',
|
||||
old_caochun:'旧曹纯',
|
||||
shenpei:'审配',
|
||||
re_zhurong:'界祝融',
|
||||
re_menghuo:'界孟获',
|
||||
mobile_default:'常规',
|
||||
mobile_fire:'界限突破•火',
|
||||
mobile_forest:'界限突破•林',
|
||||
mobile_others:'其他',
|
||||
|
||||
pss:'手势',
|
||||
pss_paper:'布',
|
||||
pss_scissor:'剪刀',
|
||||
pss_stone:'石头',
|
||||
pss_paper_info:'石头剪刀布时的一种手势。克制石头,但被剪刀克制。',
|
||||
pss_scissor_info:'石头剪刀布时的一种手势。克制布,但被石头克制。',
|
||||
pss_stone_info:'石头剪刀布时的一种手势。克制剪刀,但被布克制。',
|
||||
|
||||
shouye:'守邺',
|
||||
shouye_info:'每回合限一次。当其他角色使用牌指定你为唯一目标时,你可以与其进行石头剪刀布(若出现平局则重来)。若你赢,则此牌对你无效,且你于此牌结算完成后获得其对应的所有实体牌。',
|
||||
liezhi:'烈直',
|
||||
liezhi_info:'准备阶段,你可以依次弃置至多两名角色区域内的各一张牌。若你受到过伤害,则〖烈直〗于你的下个回合无效。',
|
||||
relieren:'烈刃',
|
||||
relieren_info:'当你使用【杀】指定目标时,你可以和目标角色进行拼点。若你赢,你获得其一张牌。若你没赢,你获得对方的拼点牌,其获得你的拼点牌。',
|
||||
rezaiqi:'再起',
|
||||
rezaiqi_info:'弃牌阶段开始时,你可以令至多X名角色选择一项:1.摸一张牌,2.令你回复1点体力(X为本回合进入弃牌堆的红桃牌数)',
|
||||
|
||||
xinzhanyi:'战意',
|
||||
xinzhanyi_info:'出牌阶段限一次,你可以弃置一张牌并失去1点体力,然后根据你弃置的牌获得以下效果直到回合结束:基本牌,你可以将一张基本牌当作杀、酒或桃使用,且你本回合第一次以此法使用的牌的回复值/伤害值+1;锦囊牌,摸三张牌且你使用的牌不能被【无懈可击】响应;装备牌,你使用【杀】指定目标角色后,其弃置两张牌,然后你获得其中的一张。',
|
||||
xinzhanyi_basic_backup:'战意',
|
||||
xinzhanyi_basic:'战意',
|
||||
xinzhanyi_equip:'战意',
|
||||
}
|
||||
};
|
||||
});
|
||||
|
|
|
@ -37,7 +37,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
|
||||
old_machao:['male','qun',4,['zhuiji','cihuai']],
|
||||
old_zhugezhan:["male","shu",3,["old_zuilun","old_fuyin"]],
|
||||
zhangliang:["male","qun",3,["old_jijun","old_fangtong"]],
|
||||
zhangliang:["male","qun",4,["old_jijun","old_fangtong"]],
|
||||
},
|
||||
characterFilter:{
|
||||
old_lingju:function(mode){
|
||||
|
|
|
@ -195,7 +195,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
"step 0"
|
||||
event.count=trigger.num;
|
||||
"step 1"
|
||||
player.chooseTarget(get.prompt('rejieming')).set('ai',function(target){
|
||||
player.chooseTarget(get.prompt('rejieming'),'令一名角色摸两张牌。然后若其手牌数少于体力上限,你摸一张牌').set('ai',function(target){
|
||||
var att=get.attitude(_status.event.player,target);
|
||||
if(att>2){
|
||||
if((target.maxHp-target.countCards('h'))>2) return 2*att;
|
||||
|
@ -390,7 +390,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function (){
|
||||
'step 0'
|
||||
player.gainPlayerCard(get.prompt('new_liyu',trigger.player),trigger.player,'he','visibleMove').set('ai',function(card){
|
||||
player.gainPlayerCard(get.prompt2('new_liyu',trigger.player),trigger.player,'he','visibleMove').set('ai',function(card){
|
||||
var player=_status.event.player;
|
||||
var evt=_status.event.target;
|
||||
if(get.type(card)=='equip'){
|
||||
|
@ -418,7 +418,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
trigger.player.chooseTarget(true,function(card,player,target){
|
||||
var evt=_status.event.getParent();
|
||||
return evt.player.canUse({name:'juedou'},target)&&target!=_status.event.player;
|
||||
},get.prompt('liyu')).set('ai',function(target){
|
||||
},'请选择一名角色,视为'+get.translation(player)+'对其使用【决斗】').set('ai',function(target){
|
||||
var evt=_status.event.getParent();
|
||||
return get.effect(target,{name:'juedou'},evt.player,_status.event.player)-2;
|
||||
});
|
||||
|
@ -446,7 +446,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function (){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('new_retuxi'),[1,trigger.num],function(card,player,target){
|
||||
player.chooseTarget(get.prompt('new_retuxi'),'获得至多'+get.translation(trigger.num)+'名角色的各一张手牌,然后少摸等量的牌',[1,trigger.num],function(card,player,target){
|
||||
return target.countCards('h')>0&&player!=target;
|
||||
},function(target){
|
||||
var att=get.attitude(_status.event.player,target);
|
||||
|
@ -1339,13 +1339,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
if(event.list.length){
|
||||
var current=event.list.shift();
|
||||
event.current=current;
|
||||
player.chooseBool(get.prompt('rejiuyuan',current)).set('choice',get.attitude(player,current)>0);
|
||||
player.chooseBool(get.prompt2('rejiuyuan',current)).set('choice',get.attitude(player,current)>0);
|
||||
}
|
||||
else{
|
||||
event.finish();
|
||||
}
|
||||
'step 2'
|
||||
if(result.bool){
|
||||
trigger.cancel();
|
||||
player.logSkill('rejiuyuan',event.current);
|
||||
event.current.recover();
|
||||
player.draw();
|
||||
|
|
|
@ -134,7 +134,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
"guanqiujian":"毌丘俭,字仲恭,河东闻喜(今山西闻喜县)人。三国时期曹魏后期的重要将领。继承父毌丘兴爵位高阳乡侯,任平原侯文学。魏明帝即位后,上疏劝魏明帝停止加建皇宫的工程,升为荆州刺史。景初二年(238年)从司马懿攻灭公孙渊;正始五年(244年)至正始六年(245年)两次率兵征讨高句丽,攻破丸都,几亡其国,刻石纪功而还;253年击退吴国诸葛恪的大举进犯,战功累累。司马师废帝,毌丘俭感昔日魏明帝之恩,为曹魏政权做拼死一搏,于正元二年(255年)发动兵变,即后人所谓“淮南三叛”(王淩、毌丘俭、诸葛诞)之一,惜准备不足,兵败身亡。",
|
||||
"haozhao":"郝昭(生卒年不详),字伯道,太原人,中国东汉末年至曹魏初年著名将领。郝昭少年从军,屡立战功,逐渐晋升为杂号将军,后受曹真的推荐镇守陈仓(在小说三国演义中是司马懿推荐),防御蜀汉。太和二年(228年),诸葛亮率军北伐,为郝昭所阻,劝降不成,昼夜相攻二十余日后被迫退军。魏明帝因此封其为关内侯。不久因染疾而病死。",
|
||||
"zhugezhan":"诸葛瞻,字思远,琅邪阳都(今山东沂南县)人。三国时期蜀汉大臣,蜀汉丞相诸葛亮之子。邓艾伐蜀时,他与长子诸葛尚及蜀将张遵、李球、黄崇等人防御绵竹(今四川德阳),因不听黄崇速占险要的建议而坐失良机,后来出城与邓艾决战,在交战时阵亡,绵竹也随后失守。",
|
||||
"zhoufei":"周妃(210年?—?),一说本名周彻 [1-2] 。周瑜独女,生母无载,疑为汉末美女小乔,因嫁孙登为太子妃,故称周妃。周瑜英年早逝,其遗孤都得到孙权厚遇,除却她本人在黄武四年(225年)嫁予太子外,兄长周循亦娶孙权长女孙鲁班为妻。",
|
||||
"zhoufei":"周妃(210年?—?),一说本名周彻。周瑜独女,生母无载,疑为汉末美女小乔,因嫁孙登为太子妃,故称周妃。周瑜英年早逝,其遗孤都得到孙权厚遇,除却她本人在黄武四年(225年)嫁予太子外,兄长周循亦娶孙权长女孙鲁班为妻。",
|
||||
"lukang":"陆抗,字幼节,吴郡吴县(今江苏苏州)人。三国时期吴国名将,丞相陆逊次子。陆抗袭父爵为江陵侯,为建武校尉,领其父众五千人。后迁立节中郎将、镇军将军等。孙皓为帝,任镇军大将军、都督西陵、信陵、夷道、乐乡、公安诸军事,驻乐乡(今湖北江陵西南)。凤凰元年(272年),击退晋将羊祜进攻,并攻杀叛将西陵督步阐。后拜大司马、荆州牧,卒于官,终年49岁。与陆逊皆是吴国的中流砥柱,并称“逊抗 ”,被誉为吴国最后的名将。",
|
||||
"zhangxiu":"张绣,武威祖厉(今甘肃靖远)人。骠骑将军张济的从子。东汉末年割据宛城的军阀,汉末群雄之一。初随张济征伐,张济死后与刘表联合。后降曹操,因曹操调戏其嫂而突袭曹操,复与刘表连和。官渡之战前夕,听从贾诩的建议再次投降曹操,参加官渡之战,官至破羌将军,封宣威侯。在北征乌桓(207年)途中去世(一说为曹丕逼死),谥定侯。",
|
||||
"chendao":"陈到,字叔至,生卒年不详,豫州汝南(今河南驻马店平舆县)人。三国时期蜀汉将领,刘备帐下白毦兵统领,名位常亚于赵云,以忠勇著称。蜀汉建兴年间,任征西将军、永安都督,封亭侯。在任期间去世。",
|
||||
|
@ -274,7 +274,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('drlt_zhenggu'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('drlt_zhenggu'),function(card,player,target){
|
||||
return target!=player;
|
||||
}).ai=function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -626,6 +626,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
"drlt_weidi":{
|
||||
audio:2,
|
||||
forceaudio:true,
|
||||
unique:true,
|
||||
zhuSkill:true,
|
||||
trigger:{
|
||||
|
@ -795,7 +796,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
return att-3;
|
||||
},
|
||||
prompt:get.prompt('drlt_congjian'),
|
||||
prompt:get.prompt2('drlt_congjian'),
|
||||
});
|
||||
'step 1'
|
||||
if(result.bool){
|
||||
|
@ -952,7 +953,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function (){
|
||||
'step 0'
|
||||
player.chooseCard(get.prompt('kongsheng'),'he',[1,player.countCards('he')]).set('ai',function(card){
|
||||
player.chooseCard(get.prompt2('kongsheng'),'he',[1,player.countCards('he')]).set('ai',function(card){
|
||||
if(card.name=='shan'||card.name=='du') return 1;
|
||||
return 5-get.value(card);
|
||||
});
|
||||
|
@ -1230,7 +1231,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function (){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('nzry_yili'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('nzry_yili'),"移去一个【橘】或失去1点体力,然后令一名其他角色获得一个【橘】",function(card,player,target){
|
||||
return target!=player
|
||||
}).ai=function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -1301,11 +1302,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
'step 0'
|
||||
event.str1='令至多'+trigger.num+'名角色摸一张牌';
|
||||
event.str2='对任意名体力值之和为'+trigger.num+'的角色造成一点伤害';
|
||||
player.chooseControl().set('ai',function(){
|
||||
player.chooseControl('cancel2').set('ai',function(){
|
||||
if(game.countPlayer(function(current){return get.attitude(player,current)<0&¤t.hp==trigger.num})>0&&trigger.num<=3) return 1;
|
||||
return 0;
|
||||
}).set('choiceList',[event.str1,event.str2]).set('prompt','是否发动【溃诛】?');
|
||||
'step 1'
|
||||
if(result.control=='cancel2') event.finish();
|
||||
event.control=[event.str1,event.str2][result.index];
|
||||
'step 2'
|
||||
var str='请选择【溃诛】的目标';
|
||||
|
@ -1402,7 +1404,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt2('nzry_zhizheng'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('nzry_zhizheng'),"弃置一名攻击范围内不包含你的角色的一张牌",function(card,player,target){
|
||||
return get.distance(target,player,'attack')>1&&target.countDiscardableCards(player,'he');
|
||||
}).ai=function(target){
|
||||
return -get.attitude(player,target);
|
||||
|
@ -1426,6 +1428,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
nzry_lijun2:{},
|
||||
"nzry_lijun1":{
|
||||
audio:2,
|
||||
forceaudio:true,
|
||||
trigger:{
|
||||
player:'useCardAfter'
|
||||
},
|
||||
|
@ -1447,7 +1450,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('nzry_lijun'),function(card,player,target){
|
||||
var list=game.filterPlayer(function(target){
|
||||
return player!=target&&target.hasZhuSkill('nzry_lijun',player);
|
||||
});
|
||||
player.chooseTarget(get.prompt('nzry_lijun'),'将'+get.translation(trigger.cards)+'交给'+get.translation(list)+(list.length>1?'中的一人':''),function(card,player,target){
|
||||
return player!=target&&target.hasZhuSkill('nzry_lijun',player);
|
||||
}).ai=function(target){
|
||||
return get.attitude(_status.event.player,target);
|
||||
|
@ -1742,7 +1748,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('nzry_zhenliang')).ai=function(target){
|
||||
player.chooseTarget(get.prompt('nzry_zhenliang'),'令一名角色摸一张牌').ai=function(target){
|
||||
return get.attitude(player,target)
|
||||
};
|
||||
"step 1"
|
||||
|
@ -1769,7 +1775,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('nzry_jianxiang'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('nzry_jianxiang'),'令场上手牌数最少的一名角色摸一张牌',function(card,player,target){
|
||||
return target.isMinHandcard();
|
||||
}).ai=function(target){
|
||||
return get.attitude(player,target)
|
||||
|
@ -2439,7 +2445,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
'step 0'
|
||||
event.num=trigger.num;
|
||||
'step 1'
|
||||
player.chooseDrawRecover(get.prompt('xinkuanggu')).set('logSkill','xinkuanggu');
|
||||
player.chooseDrawRecover(get.prompt('xinkuanggu'),'摸一张牌或回复1点体力').set('logSkill','xinkuanggu');
|
||||
'step 2'
|
||||
if(result.control!='cancel2'){
|
||||
event.num--;
|
||||
|
@ -2596,7 +2602,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
content:function(){
|
||||
"step 0"
|
||||
var fang=player.hp>=2&&player.countCards('h')<=player.hp+1;
|
||||
player.chooseTarget(get.prompt('fangquan'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('fangquan'),function(card,player,target){
|
||||
return target!=player;
|
||||
}).set('ai',function(target){
|
||||
if(!_status.event.fang) return -1;
|
||||
|
@ -3293,7 +3299,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
"step 0"
|
||||
var next=player.chooseToDiscard('he',get.prompt('beige'));
|
||||
var next=player.chooseToDiscard('he',get.prompt2('beige',trigger.player));
|
||||
var check=lib.skill.beige.checkx(trigger,player);
|
||||
next.set('ai',function(card){
|
||||
if(_status.event.goon) return 8-get.value(card);
|
||||
|
@ -3899,7 +3905,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('fangzhu'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('fangzhu'),'令一名其他角色将武将牌翻面并摸'+get.cnNumber(player.maxHp-player.hp)+'张牌',function(card,player,target){
|
||||
return player!=target
|
||||
}).ai=function(target){
|
||||
if(target.hasSkillTag('noturn')) return 0;
|
||||
|
@ -3981,7 +3987,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
if(event.list.length){
|
||||
var current=event.list.shift();
|
||||
event.current=current;
|
||||
player.chooseBool(get.prompt('songwei',current)).set('choice',get.attitude(player,current)>0);
|
||||
player.chooseBool('是否发动【颂威】,令'+get.translation(current)+'摸一张牌?').set('choice',get.attitude(player,current)>0);
|
||||
}
|
||||
else{
|
||||
event.finish();
|
||||
|
@ -4215,7 +4221,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('yinghun'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('yinghun'),function(card,player,target){
|
||||
return player!=target;
|
||||
}).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -4292,7 +4298,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('yinghun'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('gzyinghun'),function(card,player,target){
|
||||
return player!=target;
|
||||
}).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -4904,7 +4910,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('jieming'),[1,trigger.num],function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('jieming'),[1,trigger.num],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);
|
||||
|
@ -5321,7 +5327,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
"step 0";
|
||||
player.chooseTarget(get.prompt('releiji')).ai=function(target){
|
||||
player.chooseTarget(get.prompt2('releiji')).ai=function(target){
|
||||
if(target.hasSkill('hongyan')) return 0;
|
||||
return get.damageEffect(target,_status.event.player,_status.event.player,'thunder');
|
||||
};
|
||||
|
@ -5394,12 +5400,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
shensu1:{
|
||||
audio:2,
|
||||
audioname:['xiahouba'],
|
||||
trigger:{player:'phaseBegin'},
|
||||
trigger:{player:'phaseJudgeBefore'},
|
||||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
var check= player.countCards('h')>2;
|
||||
player.chooseTarget(get.prompt('shensu'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt("shensu"),"跳过判定阶段和摸牌阶段,视为对一名其他角色使用一张【杀】",function(card,player,target){
|
||||
if(player==target) return false;
|
||||
return player.canUse({name:'sha'},target,false);
|
||||
}).set('check',check).set('ai',function(target){
|
||||
|
@ -5410,7 +5416,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
if(result.bool){
|
||||
player.logSkill('shensu1',result.targets);
|
||||
player.useCard({name:'sha'},result.targets[0],false);
|
||||
player.skip('phaseJudge');
|
||||
trigger.cancel();
|
||||
player.skip('phaseDraw');
|
||||
}
|
||||
}
|
||||
|
@ -5428,6 +5434,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
var check=player.needsToDiscard();
|
||||
player.chooseCardTarget({
|
||||
prompt:get.prompt('shensu'),
|
||||
prompt2:"弃置一张装备牌并跳过出牌阶段,视为对一名其他角色使用一张【杀】",
|
||||
filterCard:function(card,player){
|
||||
return get.type(card)=='equip'&&lib.filter.cardDiscardable(card,player)
|
||||
},
|
||||
|
@ -5463,7 +5470,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
content:function(){
|
||||
"step 0"
|
||||
var check=player.needsToDiscard()||player.isTurnedOver();
|
||||
player.chooseTarget(get.prompt('shensu'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('shensu'),"跳过弃牌阶段并将武将牌翻面,视为对一名其他角色使用一张【杀】",function(card,player,target){
|
||||
if(player==target) return false;
|
||||
return player.canUse({name:'sha'},target,false);
|
||||
}).set('check',check).set('ai',function(target){
|
||||
|
@ -5579,7 +5586,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
return att/2+da;
|
||||
},
|
||||
prompt:get.prompt('tianxiang')
|
||||
prompt:get.prompt2('tianxiang')
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
|
@ -5803,7 +5810,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
return att/2+da;
|
||||
},
|
||||
prompt:get.prompt('tianxiang')
|
||||
prompt:get.prompt2('xintianxiang')
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
|
@ -6121,7 +6128,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
"step 0";
|
||||
player.chooseTarget(get.prompt('leiji')).ai=function(target){
|
||||
player.chooseTarget(get.prompt2('leiji')).ai=function(target){
|
||||
if(target.hasSkill('hongyan')) return 0;
|
||||
return get.damageEffect(target,_status.event.player,_status.event.player,'thunder');
|
||||
};
|
||||
|
|
239
character/sp.js
239
character/sp.js
|
@ -5,10 +5,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
connect:true,
|
||||
characterSort:{
|
||||
sp:{
|
||||
sp_default:["caoying","simahui","baosanniang","yangxiu","chenlin","caohong","xiahouba","yuanshu","sp_diaochan","sp_zhaoyun","liuxie","zhugejin","zhugeke","guanyinping","simalang","zhangxingcai","fuwan","sp_sunshangxiang","caoang","sp_caoren","zhangbao","maliang","zhugedan","sp_jiangwei","sp_machao","sunhao","shixie","mayunlu","zhanglu","wutugu","sp_caiwenji","zhugeguo","lingju","jsp_guanyu","jsp_huangyueying","sunluyu","zumao","wenpin","daxiaoqiao","guansuo","tadun","yanbaihu","chengyu","wanglang","sp_pangde","sp_jiaxu","litong","mizhu","buzhi","caochun","dongbai","zhaoxiang","mazhong","dongyun","kanze","heqi","wangyun","sunqian","xizhicai","quyi","luzhi","mangyachang","xugong","zhangchangpu"],
|
||||
sp_default:["caoying","simahui","baosanniang","yangxiu","chenlin","caohong","xiahouba","yuanshu","sp_diaochan","sp_zhaoyun","liuxie","zhugejin","zhugeke","guanyinping","simalang","zhangxingcai","fuwan","sp_sunshangxiang","caoang","sp_caoren","zhangbao","maliang","zhugedan","sp_jiangwei","sp_machao","sunhao","shixie","mayunlu","zhanglu","wutugu","sp_caiwenji","zhugeguo","lingju","jsp_guanyu","jsp_huangyueying","sunluyu","zumao","wenpin","daxiaoqiao","guansuo","tadun","yanbaihu","chengyu","wanglang","sp_pangde","sp_jiaxu","litong","mizhu","buzhi","caochun","dongbai","zhaoxiang","mazhong","dongyun","kanze","heqi","wangyun","sunqian","xizhicai","quyi","luzhi"],
|
||||
sp_whlw:["xurong","lijue","zhangji","fanchou","guosi"],
|
||||
sp_zlzy:["zhangqiying","lvkai","zhanggong","weiwenzhugezhi","beimihu"],
|
||||
sp_longzhou:["xf_tangzi","xf_huangquan","xf_sufei","sp_liuqi"],
|
||||
sp_zizouqi:["mangyachang","xugong","zhangchangpu"],
|
||||
sp_zhongdan:["cuiyan","huangfusong"],
|
||||
sp_star:["sp_xiahoushi","jsp_zhaoyun","huangjinleishi","sp_pangtong","sp_daqiao","sp_ganning","sp_xiahoudun","sp_lvmeng","sp_zhangfei","sp_liubei"],
|
||||
sp_guozhan:["shamoke","ganfuren","yuejin","hetaihou","dingfeng","panfeng"],
|
||||
|
@ -18,7 +19,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
character:{
|
||||
mangyachang:["male","qun",4,["spjiedao"],[]],
|
||||
xugong:["male","wu",4,["biaozhao","yechou"],[]],
|
||||
xugong:["male","wu",3,["biaozhao","yechou"],[]],
|
||||
zhangchangpu:["female","wei",3,["yanjiao","xingshen"],[]],
|
||||
lijue:["male","qun","4/6",["xinfu_langxi","xinfu_yisuan"],[]],
|
||||
zhangji:["male","qun",4,["xinfu_lveming","xinfu_tunjun"],[]],
|
||||
|
@ -453,7 +454,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
order:9.5,
|
||||
equipValue:function (card,player){
|
||||
if(player.hp==player.maxHp) return 5;
|
||||
if(player.countCards('h','baiyin')) return 6;
|
||||
if(player.countCards('h','rewrite_baiyin')) return 6;
|
||||
return 0;
|
||||
},
|
||||
basic:{
|
||||
|
@ -753,7 +754,16 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
player.addTempSkill('yanjiao2');
|
||||
event.finish();
|
||||
}
|
||||
else{
|
||||
"step 2"
|
||||
target.chooseControl("自动分配","手动分配").set("prompt","【严教】:是否让系统自动分配方案?").ai=function(){
|
||||
return "自动分配";
|
||||
};
|
||||
"step 3"
|
||||
if(result.control=="手动分配"){
|
||||
event.map=[cards,[],[]];
|
||||
event.goto(8);
|
||||
}
|
||||
else if(!_status.connectMode){
|
||||
var choiceList=ui.create.dialog('请选择一种方案','hidden','forcebutton');
|
||||
for(var i=0;i<event.preResult.length;i++){
|
||||
var str='<div class="popup text" style="width:calc(100% - 10px);display:inline-block">方案'+get.cnNumber(i+1,true);
|
||||
|
@ -780,24 +790,134 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
return true;
|
||||
});
|
||||
}
|
||||
"step 2"
|
||||
"step 4"
|
||||
event.index=result.links[0]||0;
|
||||
event.togain=event.preResult[event.index];
|
||||
target.showCards(event.togain[0],get.translation(target)+'分出的第一份牌');
|
||||
"step 3"
|
||||
"step 5"
|
||||
target.showCards(event.togain[1],get.translation(target)+'分出的第二份牌');
|
||||
"step 4"
|
||||
player.chooseControl().set('choiceList',[
|
||||
"step 6"
|
||||
target.chooseControl().set('choiceList',[
|
||||
'获得'+get.translation(event.togain[0]),
|
||||
'获得'+get.translation(event.togain[1])
|
||||
]).ai=function(){return Math.random()<0.5?1:0};
|
||||
"step 5"
|
||||
player.gain(event.togain[result.index],'gain2');
|
||||
target.gain(event.togain[1-result.index],'gain2');
|
||||
"step 7"
|
||||
target.gain(event.togain[result.index],'gain2');
|
||||
player.gain(event.togain[1-result.index],'gain2');
|
||||
if(event.togain[2].length){
|
||||
game.cardsDiscard(event.togain[2]);
|
||||
if(event.togain[2].length>1) player.addTempSkill('yanjiao2');
|
||||
}
|
||||
event.finish();
|
||||
|
||||
"step 8"
|
||||
event.videoId=lib.status.videoId++;
|
||||
var dialogx=['严教:选择要移动的牌'];
|
||||
var name=["未分配","第一组","第二组"];
|
||||
for(var i=0;i<event.map.length;i++){
|
||||
if(event.map[i].length>0){
|
||||
dialogx.push('<div class="text center">'+name[i]+'</div>');
|
||||
dialogx.push(event.map[i])
|
||||
}
|
||||
}
|
||||
if(target.isOnline2()){
|
||||
target.send(function(dialogx,id){
|
||||
ui.create.dialog.apply(null,dialogx).videoId=id;
|
||||
},dialogx,event.videoId);
|
||||
}
|
||||
event.dialog=ui.create.dialog.apply(null,dialogx);
|
||||
event.dialog.videoId=event.videoId;
|
||||
if(target!=game.me||_status.auto){
|
||||
event.dialog.style.display='none';
|
||||
}
|
||||
var next=target.chooseButton();
|
||||
next.set('selectButton',function(){
|
||||
if(!_status.event.map[1].length||!_status.event.map[2].length) return 1;
|
||||
var num1=0;
|
||||
for(var i=0;i<_status.event.map[1].length;i++){
|
||||
num1+=_status.event.map[1][i].number;
|
||||
}
|
||||
var num2=0;
|
||||
for(var j=0;j<_status.event.map[2].length;j++){
|
||||
num2+=_status.event.map[2][j].number;
|
||||
}
|
||||
return (num1==num2?[0,1]:1);
|
||||
});
|
||||
next.set('map',event.map);
|
||||
next.set('dialog',event.videoId);
|
||||
next.set('ai',function(){return -1});
|
||||
next.set('forceAuto',true);
|
||||
"step 9"
|
||||
if(result.bool){
|
||||
if(!result.links.length){
|
||||
if(target.isOnline2()){
|
||||
target.send('closeDialog',event.videoId);
|
||||
}
|
||||
event.dialog.close();
|
||||
|
||||
event.togain=[event.map[1],event.map[2],event.map[0]];
|
||||
target.showCards(event.togain[0],get.translation(target)+'分出的第一份牌');
|
||||
event.goto(5);
|
||||
}
|
||||
else{
|
||||
event.card=result.links[0];
|
||||
var controls=["取消分组","移动到第一组","移动到第二组"];
|
||||
for(var i=0;i<event.map.length;i++){
|
||||
if(event.map[i].contains(event.card)){
|
||||
controls.splice(i,1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
var func=function(card,id){
|
||||
var dialog=get.idDialog(id);
|
||||
if(dialog){
|
||||
for(var i=0;i<dialog.buttons.length;i++){
|
||||
if(dialog.buttons[i].link==card){
|
||||
dialog.buttons[i].classList.add('glow');
|
||||
}
|
||||
else{
|
||||
dialog.buttons[i].classList.add('unselectable');
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if(target.isOnline2()){
|
||||
target.send(func,event.card,event.videoId);
|
||||
}
|
||||
else if(target==game.me&&!_status.auto){
|
||||
func(event.card,event.videoId);
|
||||
}
|
||||
target.chooseControl(controls);
|
||||
}
|
||||
}
|
||||
else{
|
||||
if(target.isOnline2()){
|
||||
target.send('closeDialog',event.videoId);
|
||||
}
|
||||
event.dialog.close();
|
||||
game.cardsDiscard(cards);
|
||||
player.addTempSkill('yanjiao2');
|
||||
event.finish();
|
||||
}
|
||||
"step 10"
|
||||
if(target.isOnline2()){
|
||||
target.send('closeDialog',event.videoId);
|
||||
}
|
||||
event.dialog.close();
|
||||
|
||||
var position={
|
||||
"取消分组":0,
|
||||
"移动到第一组":1,
|
||||
"移动到第二组":2,
|
||||
}[result.control||"取消分组"];
|
||||
for(var i=0;i<event.map.length;i++){
|
||||
if(event.map[i].contains(card)){
|
||||
event.map[i].remove(card);
|
||||
event.map[position].push(card);
|
||||
break;
|
||||
}
|
||||
}
|
||||
event.goto(8);
|
||||
},
|
||||
getResult:function (cards){
|
||||
var cl=cards.length;
|
||||
|
@ -1519,7 +1639,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function (){
|
||||
'step 0'
|
||||
player.chooseCard(get.prompt('new_xingwu')).set('ai',function(card){
|
||||
player.chooseCard(get.prompt2('new_xingwu')).set('ai',function(card){
|
||||
var player=_status.event.player;
|
||||
for(var i=0;i<player.storage.new_xingwu.length;i++){
|
||||
if(get.suit(player.storage.new_xingwu[i])==get.suit(card)) return 0;
|
||||
|
@ -1636,7 +1756,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
global:"phaseUseBegin",
|
||||
},
|
||||
filter:function (event,player){
|
||||
return event.player!=player&&get.distance(event.player,player,'attack')<=1;
|
||||
return event.player!=player&&event.player.isAlive()&&get.distance(event.player,player,'attack')<=1;
|
||||
},
|
||||
direct:true,
|
||||
derivation:["new_zhixi"],
|
||||
|
@ -1652,7 +1772,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
content:function (){
|
||||
"step 0"
|
||||
var check=lib.skill.new_meibu.checkx(trigger,player);
|
||||
player.chooseToDiscard(get.prompt('new_meibu',trigger.player),'he').set('ai',function(card){
|
||||
player.chooseToDiscard(get.prompt2('new_meibu',trigger.player),'he').set('ai',function(card){
|
||||
if(_status.event.check) return 6-get.value(card);
|
||||
return 0;
|
||||
}).set('check',check).set('logSkill','new_meibu');
|
||||
|
@ -1733,7 +1853,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function (){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('new_mumu'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('new_mumu'),'弃置一名角色装备区内的一张牌,或者获得一名角色装备区内的防具牌',function(card,player,target){
|
||||
if(target==player) return false;
|
||||
return target.countCards('e')>0;
|
||||
}).set('ai',function(target){
|
||||
|
@ -2273,7 +2393,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('yingyuan'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('yingyuan'),'将'+get.translation(trigger.cards)+'交给一名其他角色',function(card,player,target){
|
||||
return target!=player;
|
||||
}).set('ai',function(target){
|
||||
if(target.hasJudge('lebu')) return 0;
|
||||
|
@ -2435,7 +2555,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('shuimeng'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('shuimeng'),function(card,player,target){
|
||||
return player.canCompare(target);
|
||||
}).set('ai',function(target){
|
||||
if(!_status.event.goon) return 0;
|
||||
|
@ -2551,7 +2671,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
shuimeng:trigger.getParent(2).name=='shuimeng',
|
||||
nh:nh,
|
||||
cardname:trigger.card.name,
|
||||
prompt:get.prompt('qianya')
|
||||
prompt:get.prompt2('qianya')
|
||||
});
|
||||
'step 1'
|
||||
if(result.bool){
|
||||
|
@ -3114,7 +3234,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('lizhan'),[1,Infinity],function(card,player,target){
|
||||
player.chooseTarget(get.prompt('lizhan'),'令任意名已受伤的角色各摸一张牌',[1,Infinity],function(card,player,target){
|
||||
return target.isDamaged();
|
||||
}).set('ai',function(target){
|
||||
return get.attitude(player,target);
|
||||
|
@ -3199,7 +3319,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('yirang'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('yirang'),function(card,player,target){
|
||||
return target.maxHp>player.maxHp;
|
||||
}).set('ai',function(target){
|
||||
return (get.attitude(_status.event.player,target)-2)*target.maxHp;
|
||||
|
@ -3309,7 +3429,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('shejian'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('shejian'),'弃置一名其他角色的一张牌',function(card,player,target){
|
||||
if(player==target) return false;
|
||||
return target.countCards('he')>0;
|
||||
}).ai=function(target){
|
||||
|
@ -3622,7 +3742,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
return (card.number>=9&&get.value(card)<=5)||get.value(card)<=3;
|
||||
});
|
||||
}
|
||||
player.chooseTarget(get.prompt('shuangren'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('shuangren'),function(card,player,target){
|
||||
return player.canCompare(target);
|
||||
}).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -3688,7 +3808,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('kuanshi')).set('ai',function(target){
|
||||
player.chooseTarget(get.prompt2('kuanshi')).set('ai',function(target){
|
||||
if(get.attitude(_status.event.player,target)>0){
|
||||
return 1/Math.sqrt(target.hp+1);
|
||||
}
|
||||
|
@ -3749,7 +3869,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
for(var i=0;i<hs.length;i++){
|
||||
maxval=Math.max(maxval,get.value(hs[i]));
|
||||
}
|
||||
player.chooseTarget(get.prompt('xiashu'),lib.filter.notMe).set('ai',function(target){
|
||||
player.chooseTarget(get.prompt2('xiashu'),lib.filter.notMe).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
var maxval=_status.event.maxval;
|
||||
var dh=target.countCards('h')-player.countCards('h');
|
||||
|
@ -3942,7 +4062,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('bingzheng'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('bingzheng'),function(card,player,target){
|
||||
return target.countCards('h')!=target.hp;
|
||||
}).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -4237,7 +4357,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('duanbing'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('duanbing'),'为'+get.translation(trigger.card)+'增加一个目标',function(card,player,target){
|
||||
return !_status.event.source.contains(target)&&get.distance(player,target)<=1&&player.canUse('sha',target);
|
||||
}).set('source',trigger.targets).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -4983,7 +5103,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('zhaolie'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('zhaolie'),function(card,player,target){
|
||||
return target!=player&&get.distance(player,target,'attack')<=1;
|
||||
}).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -5091,7 +5211,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('yingjian'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('yingjian'),'视为使用一张没有距离限制的【杀】',function(card,player,target){
|
||||
return lib.filter.targetEnabled({name:'sha'},player,target);
|
||||
}).set('ai',function(target){
|
||||
return get.effect(target,{name:'sha'},_status.event.player);
|
||||
|
@ -5194,7 +5314,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('hongde'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('hongde'),'令一名其他角色摸一张牌',function(card,player,target){
|
||||
return target!=player;
|
||||
}).set('ai',function(target){
|
||||
return get.attitude(player,target);
|
||||
|
@ -5306,7 +5426,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseCard(get.prompt('tuifeng'),'he',[1,trigger.num]).set('ai',function(card){
|
||||
player.chooseCard(get.prompt2('tuifeng'),'he',[1,trigger.num]).set('ai',function(card){
|
||||
if(card.name=='du') return 20;
|
||||
return 7-get.useful(card);
|
||||
});
|
||||
|
@ -5479,7 +5599,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('yongdi'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('yongdi'),function(card,player,target){
|
||||
return target.sex=='male'&&target!=player;
|
||||
}).set('ai',function(target){
|
||||
if(!_status.event.goon) return 0;
|
||||
|
@ -5892,7 +6012,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
else{
|
||||
event.draw=true;
|
||||
event.num=Math.min(num2,5)-num1;
|
||||
player.chooseBool(get.prompt('benyu'));
|
||||
player.chooseBool(get.prompt2('benyu'));
|
||||
}
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
|
@ -6096,7 +6216,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('qizhi'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('qizhi'),'弃置一名角色的一张牌,然后其摸一张牌',function(card,player,target){
|
||||
return !_status.event.getTrigger().targets.contains(target)&&target.countCards('he')>0;
|
||||
}).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -6290,7 +6410,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseToDiscard(get.prompt('jiqiao'),[1,player.countCards('he',{type:'equip'})],'he',function(card){
|
||||
player.chooseToDiscard(get.prompt2('jiqiao'),[1,player.countCards('he',{type:'equip'})],'he',function(card){
|
||||
return get.type(card)=='equip';
|
||||
}).set('ai',function(card){
|
||||
if(card.name=='bagua') return 10;
|
||||
|
@ -6480,7 +6600,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
save=true;
|
||||
}
|
||||
}
|
||||
var next=player.chooseToDiscard('he',get.prompt('zhenwei'));
|
||||
var next=player.chooseToDiscard('he',get.prompt2('zhenwei'));
|
||||
next.logSkill=['zhenwei',trigger.target];
|
||||
next.set('ai',function(card){
|
||||
if(_status.event.aisave){
|
||||
|
@ -6992,7 +7112,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
"step 0"
|
||||
var next=player.chooseToDiscard(get.prompt('anxian'));
|
||||
var next=player.chooseToDiscard(get.prompt2('anxian'));
|
||||
next.set('ai',function(card){
|
||||
var player=_status.event.player;
|
||||
var trigger=_status.event.getTrigger();
|
||||
|
@ -7230,7 +7350,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
audio:2,
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('juedi'),true,function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('juedi'),true,function(card,player,target){
|
||||
return player.hp>=target.hp;
|
||||
}).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -7861,7 +7981,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
"step 0"
|
||||
player.addSkill('qingyi3');
|
||||
var check= player.countCards('h')>2;
|
||||
player.chooseTarget(get.prompt('qingyi'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('qingyi'),function(card,player,target){
|
||||
if(player==target) return false;
|
||||
return player.canUse({name:'sha'},target);
|
||||
}).ai=function(target){
|
||||
|
@ -7890,7 +8010,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
player.addSkill('qingyi3');
|
||||
var check=player.countCards('h')<=player.hp;
|
||||
player.chooseCardTarget({
|
||||
prompt:get.prompt('qingyi'),
|
||||
prompt:get.prompt2('qingyi'),
|
||||
filterCard:function(card,player){
|
||||
return get.type(card)=='equip'&&lib.filter.cardDiscardable(card,player);
|
||||
},
|
||||
|
@ -8040,7 +8160,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('chenqing'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('chenqing'),function(card,player,target){
|
||||
return target!=player&&target!=_status.event.getTrigger().player;
|
||||
}).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -8377,7 +8497,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
content:function(){
|
||||
'step 0'
|
||||
player.addTempSkill('fengpo3');
|
||||
player.chooseControl('draw_card','加伤害','cancel2').set('prompt',get.prompt('fengpo'));
|
||||
player.chooseControl('draw_card','加伤害','cancel2').set('prompt',get.prompt2('fengpo'));
|
||||
'step 1'
|
||||
if(result.control&&result.control!='cancel2'){
|
||||
player.logSkill('fengpo');
|
||||
|
@ -8619,7 +8739,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
if(!player.storage.kunfen){
|
||||
event.skillHidden=true;
|
||||
}
|
||||
player.chooseBool(get.prompt('kunfen')).set('ai',function(){
|
||||
player.chooseBool(get.prompt2('kunfen')).set('ai',function(){
|
||||
var player=_status.event.player;
|
||||
if(player.hp>3) return true;
|
||||
if(player.hp==3&&player.countCards('h')<3) return true;
|
||||
|
@ -8685,7 +8805,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('cihuai'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('cihuai'),function(card,player,target){
|
||||
return player.canUse({name:'sha'},target);
|
||||
}).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -8718,7 +8838,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
if(_status.currentPhase!=source) return 'trick';
|
||||
if(lib.filter.cardUsable({name:'sha'},source)&&source.countCards('h')>=2) return 'basic';
|
||||
return 'trick';
|
||||
}).set('prompt',get.prompt('jilei',trigger.source)).set('source',trigger.source);
|
||||
}).set('prompt',get.prompt2('jilei',trigger.source)).set('source',trigger.source);
|
||||
'step 1'
|
||||
if(result.control!='cancel2'){
|
||||
player.logSkill('jilei',trigger.source);
|
||||
|
@ -9138,7 +9258,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
var player=_status.event.player;
|
||||
return get.effect(target,trigger.card,player,player);
|
||||
},
|
||||
prompt:get.prompt('fenxun')
|
||||
prompt:get.prompt2('fenxun')
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
|
@ -9450,11 +9570,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
if(player==trigger.player){
|
||||
player.chooseControl('摸一张','摸两张','cancel2',function(){
|
||||
return '摸两张';
|
||||
}).set('prompt',get.prompt('liangzhu'));
|
||||
}).set('prompt',get.prompt2('liangzhu'));
|
||||
event.single=true;
|
||||
}
|
||||
else{
|
||||
player.chooseTarget(get.prompt('liangzhu'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('liangzhu'),function(card,player,target){
|
||||
return target==_status.event.player||target==_status.event.target;
|
||||
}).set('target',trigger.player).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -9530,7 +9650,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
"step 0"
|
||||
var next=player.chooseToDiscard(get.prompt('mingshi'),{color:'black'});
|
||||
var next=player.chooseToDiscard(get.prompt2('mingshi'),{color:'black'});
|
||||
next.set('ai',function(card){
|
||||
return 9-get.value(card);
|
||||
});
|
||||
|
@ -9655,7 +9775,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
else{
|
||||
return 'draw_card';
|
||||
}
|
||||
}).set('prompt',get.prompt('moukui'));
|
||||
}).set('prompt',get.prompt2('moukui'));
|
||||
"step 1"
|
||||
if(result.control=='draw_card'){
|
||||
player.draw();
|
||||
|
@ -9779,7 +9899,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
else if(trigger.player.canUse('sha',player)&&!player.countCards('h','shan')&&trigger.player.countCards('h')>=3){
|
||||
nono=true;
|
||||
}
|
||||
var next=player.chooseToDiscard(get.prompt('zhendu',trigger.player));
|
||||
var next=player.chooseToDiscard(get.prompt2('zhendu',trigger.player));
|
||||
next.set('ai',function(card){
|
||||
if(_status.event.nono) return -1;
|
||||
return 7-get.useful(card);
|
||||
|
@ -10258,7 +10378,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('sijian'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('sijian'),'弃置一名其他角色的一张牌',function(card,player,target){
|
||||
return player!=target&&target.countCards('he')>0;
|
||||
}).set('ai',function(target){
|
||||
return -get.attitude(_status.event.player,target);
|
||||
|
@ -10478,7 +10598,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('shushen'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('shushen'),'令一名其他角色选择摸两张牌或回复1点体力',function(card,player,target){
|
||||
return target!=player;
|
||||
}).set('ai',function(target){
|
||||
return get.attitude(_status.event.player,target);
|
||||
|
@ -10829,14 +10949,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
if(get.is.versus()){
|
||||
event.versus=true;
|
||||
player.chooseBool(get.prompt('hongyuan')).ai=function(){
|
||||
player.chooseBool(get.prompt2('hongyuan')).ai=function(){
|
||||
return game.countPlayer(function(current){
|
||||
return player.side==current.side;
|
||||
})>2;
|
||||
};
|
||||
}
|
||||
else{
|
||||
player.chooseTarget(get.prompt('hongyuan'),[1,2],function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('hongyuan'),[1,2],function(card,player,target){
|
||||
return player!=target;
|
||||
},function(target){
|
||||
if(!_status.event.check) return 0;
|
||||
|
@ -11106,7 +11226,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
var num=target.hasSkillTag('maixie')?2:0;
|
||||
return -get.attitude(_status.event.player,target)-num;
|
||||
},
|
||||
prompt:get.prompt('bifa')
|
||||
prompt:get.prompt2('bifa')
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
|
@ -11373,7 +11493,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
ai2:function(target){
|
||||
return get.attitude(_status.event.player,target)-3;
|
||||
},
|
||||
prompt:get.prompt('yuanhu')
|
||||
prompt:get.prompt2('yuanhu')
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
|
@ -11446,7 +11566,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
return b.hp-a.hp;
|
||||
});
|
||||
if(players[0].hp>players[1].hp&&players[0]!=player){
|
||||
players[0].chooseBool(get.prompt('tianming'));
|
||||
players[0].chooseBool(get.prompt2('tianming'));
|
||||
event.player=players[0];
|
||||
}
|
||||
else{
|
||||
|
@ -11679,7 +11799,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
content:function(){
|
||||
"step 0"
|
||||
var check=(player.hp==1||(player.hp==2&&player.countCards('h')<=1));
|
||||
player.chooseTarget(get.prompt('suiren')).set('ai',function(target){
|
||||
player.chooseTarget(get.prompt2('suiren')).set('ai',function(target){
|
||||
if(!_status.event.check) return 0;
|
||||
return get.attitude(_status.event.player,target);
|
||||
}).set('check',check);
|
||||
|
@ -11866,7 +11986,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
|
||||
mangyachang:"忙牙长",
|
||||
xugong:"许贡",
|
||||
zhangchangpu:"张菖蒲",
|
||||
zhangchangpu:"张昌蒲",
|
||||
|
||||
spjiedao:"截刀",
|
||||
"spjiedao_info":"当你每回合第一次造成伤害时,你可令此伤害至多+X(X为你损失的体力值)。然后若受到此伤害的角色没有死亡,你弃置等同于此伤害加值的牌。",
|
||||
|
@ -12432,6 +12552,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
sp_whlw:"文和乱武",
|
||||
sp_zlzy:"逐鹿中原",
|
||||
sp_longzhou:"同舟共济",
|
||||
sp_zizouqi:"自走棋",
|
||||
sp_zhongdan:"忠胆英杰",
|
||||
sp_star:"☆SP系列",
|
||||
sp_guozhan:"国战",
|
||||
|
|
|
@ -155,8 +155,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
return get.itemtype(event.cards)=='cards'&&get.position(event.cards[0])=='d';
|
||||
},
|
||||
content:function(){
|
||||
player.gain(trigger.cards);
|
||||
player.$gain2(trigger.cards);
|
||||
player.gain(trigger.cards,'gain2');
|
||||
},
|
||||
ai:{
|
||||
maixie:true,
|
||||
|
@ -301,7 +300,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
return current!=player&¤t.countCards('h')&&get.attitude(player,current)<=0;
|
||||
});
|
||||
check=(num>=2);
|
||||
player.chooseTarget(get.prompt('tuxi'),[1,2],function(card,player,target){
|
||||
player.chooseTarget(get.prompt('tuxi'),'获得其他一至两名角色的各一张手牌',[1,2],function(card,player,target){
|
||||
return target.countCards('h')>0&&player!=target;
|
||||
},function(target){
|
||||
if(!_status.event.aicheck) return 0;
|
||||
|
@ -1027,7 +1026,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
content:function(){
|
||||
'step 0'
|
||||
event.num=Math.min(5,game.countPlayer());
|
||||
if(player.hasSkill('yizhi')) event.num=5;
|
||||
if(event.name!='yizhi'&&player.hasSkill('yizhi')) event.num=5;
|
||||
event.cards=get.cards(event.num);
|
||||
event.chosen=[];
|
||||
event.num1=0;
|
||||
|
@ -1873,7 +1872,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
return -1;
|
||||
},
|
||||
prompt:get.prompt2('liuli')
|
||||
prompt:get.prompt('liuli'),
|
||||
prompt2:'弃置一张牌,将此【杀】转移给攻击范围内的一名其他角色',
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
|
|
|
@ -51,7 +51,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function (){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('xinfu_langxi'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('xinfu_langxi'),'对一名其他角色造成0-2点随机伤害',function(card,player,target){
|
||||
return target.hp<=player.hp&&target!=player;
|
||||
}).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -223,7 +223,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
intro:{
|
||||
content:"limited",
|
||||
},
|
||||
init:function (player){
|
||||
init:function (player){
|
||||
player.storage.xinfu_tunjun=false;
|
||||
},
|
||||
},
|
||||
|
@ -323,7 +323,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
filter:function (event,player){
|
||||
return (event.targets&&event.targets.length);
|
||||
},
|
||||
content:function (){
|
||||
content:function (){
|
||||
for(var i=0;i<game.players.length;i++){
|
||||
if(game.players[i]==player) continue;
|
||||
if(game.players[i].storage.sidao){
|
||||
|
@ -594,7 +594,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function (){
|
||||
'step 0'
|
||||
player.chooseCard(get.prompt('xinfu_bijing'),'h').set('ai',function(card){
|
||||
player.chooseCard(get.prompt2('xinfu_bijing'),'h').set('ai',function(card){
|
||||
if(card.name=='shan') return 6;
|
||||
return 6-get.value(card);
|
||||
});
|
||||
|
@ -1058,7 +1058,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
if(!event.ablers.length) event.goto(4);
|
||||
else{
|
||||
player.chooseBool(get.prompt('xinfu_lianpian')).set('ai',function(){
|
||||
player.chooseBool(get.prompt2('xinfu_lianpian')).set('ai',function(){
|
||||
return true;
|
||||
}).set('prompt2',get.translation('xinfu_lianpian_info'));
|
||||
}
|
||||
|
@ -1102,7 +1102,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function (){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('xinfu_lingren'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('xinfu_lingren'),function(card,player,target){
|
||||
return trigger.targets.contains(target);
|
||||
}).set('ai',function(target){
|
||||
return -get.attitude(_status.event.player,target);
|
||||
|
@ -1959,7 +1959,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function (){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('xinfu_wuniang'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('xinfu_wuniang'),'获得一名其他角色的一张牌,然后其和场上所有的“关索”摸一张牌。',function(card,player,target){
|
||||
if(player==target) return false;
|
||||
return target.countGainableCards(player,'he')>0;
|
||||
}).set('ai',function(target){
|
||||
|
@ -2129,6 +2129,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
if(!event.nature) return false;
|
||||
return player.storage.xinfu_falu_map.diamond;
|
||||
},
|
||||
prompt2:'弃置“勾陈”标记,从牌堆中获得每种类型的牌各一张。',
|
||||
content:function (){
|
||||
'step 0'
|
||||
player.storage.xinfu_falu_map.diamond=false;
|
||||
|
@ -2187,7 +2188,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;
|
||||
|
@ -2251,7 +2252,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.logSkill('xinfu_zhenyi');
|
||||
|
@ -2270,71 +2271,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
save:true,
|
||||
respondTao:true,
|
||||
basic:{
|
||||
order:function (card,player){
|
||||
if(player.hasSkillTag('pretao')) return 5;
|
||||
return 2;
|
||||
},
|
||||
useful:[8,6.5,5,4],
|
||||
value:[8,6.5,5,4],
|
||||
},
|
||||
result:{
|
||||
target:function (player,target){
|
||||
// if(player==target&&player.hp<=0) return 2;
|
||||
var nd=player.needsToDiscard();
|
||||
var keep=false;
|
||||
if(nd<=0){
|
||||
keep=true;
|
||||
}
|
||||
else if(nd==1&&target.hp>=2&&target.countCards('h','tao')<=1){
|
||||
keep=true;
|
||||
}
|
||||
var mode=get.mode();
|
||||
if(target.hp>=2&&keep&&target.hasFriend()){
|
||||
if(target.hp>2||nd==0) return 0;
|
||||
if(target.hp==2){
|
||||
if(game.hasPlayer(function(current){
|
||||
if(target!=current&&get.attitude(target,current)>=3){
|
||||
if(current.hp<=1) return true;
|
||||
if((mode=='identity'||mode=='versus'||mode=='chess')&¤t.identity=='zhu'&¤t.hp<=2) return true;
|
||||
}
|
||||
})){
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
if(target.hp<0&&target!=player&&target.identity!='zhu') return 0;
|
||||
var att=get.attitude(player,target);
|
||||
if(att<3&&att>=0&&player!=target) return 0;
|
||||
var tri=_status.event.getTrigger();
|
||||
if(mode=='identity'&&player.identity=='fan'&&target.identity=='fan'){
|
||||
if(tri&&tri.name=='dying'&&tri.source&&tri.source.identity=='fan'&&tri.source!=target){
|
||||
var num=game.countPlayer(function(current){
|
||||
if(current.identity=='fan'){
|
||||
return current.countCards('h','tao');
|
||||
}
|
||||
});
|
||||
if(num>1&&player==target) return 2;
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
if(mode=='identity'&&player.identity=='zhu'&&target.identity=='nei'){
|
||||
if(tri&&tri.name=='dying'&&tri.source&&tri.source.identity=='zhong'){
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
if(mode=='stone'&&target.isMin()&&
|
||||
player!=target&&tri&&tri.name=='dying'&&player.side==target.side&&
|
||||
tri.source!=target.getEnemy()){
|
||||
return 0;
|
||||
}
|
||||
return 2;
|
||||
},
|
||||
},
|
||||
tag:{
|
||||
recover:1,
|
||||
save:1,
|
||||
},
|
||||
},
|
||||
},
|
||||
"zhenyi_heart":{
|
||||
|
@ -2347,10 +2283,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
check:function (event,player){
|
||||
return false;
|
||||
},
|
||||
prompt:function (event){
|
||||
return '即将对'+get.translation(event.player)+'造成伤害,'+get.prompt('xinfu_zhenyi');
|
||||
prompt2:function(event){
|
||||
return '弃置“玉清”标记,然后进行判定。若结果为黑色,则对'+get.translation(event.player)+'即将造成的伤害+1。';
|
||||
},
|
||||
logTarget:"source",
|
||||
logTarget:"player",
|
||||
content:function (){
|
||||
"step 0"
|
||||
player.storage.xinfu_falu_map.heart=false;
|
||||
|
@ -2382,7 +2318,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function (){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('xinfu_zhennan'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('xinfu_zhennan'),'对一名其他角色造成1-3点随机伤害',function(card,player,target){
|
||||
return target!=player;
|
||||
}).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -2730,7 +2666,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
var num=game.countPlayer(function(current){
|
||||
return current!=player&¤t.hp==target.hp&&(raweffect(player,current)*get.attitude(player,current))>0
|
||||
});
|
||||
return raweffect(player,target)*(num-1);
|
||||
return raweffect(player,target)*Math.max(0,num-1);
|
||||
},
|
||||
},
|
||||
expose:0.4,
|
||||
|
@ -2981,7 +2917,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function (){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('xinfu_qinguo'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('xinfu_qinguo'),'视为对一名其他角色使用一张【杀】',function(card,player,target){
|
||||
if(player==target) return false;
|
||||
return player.canUse({name:'sha'},target);
|
||||
}).set('ai',function(target){
|
||||
|
@ -3529,7 +3465,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function (){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('xinfu_yingshi'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('xinfu_yingshi'),function(card,player,target){
|
||||
return target!=player;
|
||||
}).set('ai',function(){
|
||||
return -1;
|
||||
|
@ -3658,7 +3594,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function (){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('xinfu_youdi'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('xinfu_youdi'),function(card,player,target){
|
||||
return player!=target;
|
||||
}).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -3770,7 +3706,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
content:function (){
|
||||
'step 0'
|
||||
var list=['递增','递减','取消'];
|
||||
player.chooseControl(list).set('prompt',get.prompt('xinfu_guanchao')).set('ai',function(){
|
||||
player.chooseControl(list).set('prompt',get.prompt2('xinfu_guanchao')).set('ai',function(){
|
||||
return [0,1].randomGet();
|
||||
});
|
||||
'step 1'
|
||||
|
@ -3809,7 +3745,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function (){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('xinfu_xunxian'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('xinfu_xunxian'),function(card,player,target){
|
||||
return target!=player&&target.countCards('h')>player.countCards('h');
|
||||
}).set('ai',function(target){
|
||||
var att=get.attitude(_status.event.player,target);
|
||||
|
@ -4061,7 +3997,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
},
|
||||
prompt:function (links,player){
|
||||
return '将一张手牌当'+get.translation(links[0][2])+'使用';
|
||||
return '将一张手牌做当'+get.translation(links[0][2])+'使用';
|
||||
},
|
||||
},
|
||||
ai:{save:true},
|
||||
|
|
|
@ -3,7 +3,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
return {
|
||||
name:'yijiang',
|
||||
connect:true,
|
||||
connectBanned:['qinmi'],
|
||||
//connectBanned:['qinmi'],
|
||||
characterSort:{
|
||||
yijiang:{
|
||||
yijiang_2011:['caozhi','re_yujin','zhangchunhua','xin_fazheng','xin_masu','xin_xushu','xusheng','lingtong','wuguotai','chengong','gaoshun'],
|
||||
|
@ -871,22 +871,19 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
tianbian:{
|
||||
audio:2,
|
||||
trigger:{player:'chooseCardBegin'},
|
||||
enable:"chooseCard",
|
||||
check:function(event,player){
|
||||
return !player.hasCard(function(card){
|
||||
var player=_status.event.player;
|
||||
return (!player.hasCard(function(card){
|
||||
var val=get.value(card);
|
||||
return val<0||(val<=4&&card.number>=11);
|
||||
},'h');
|
||||
},'h'))?20:0;
|
||||
},
|
||||
filter:function(event){
|
||||
return event.type=='compare'&&!event.directresult;
|
||||
},
|
||||
content:function(){
|
||||
var cards=get.cards();
|
||||
cards[0].discard();
|
||||
cards[0].vanishtag.add('tianbian');
|
||||
trigger.directresult=cards;
|
||||
trigger.untrigger();
|
||||
onCompare:function(player){
|
||||
return get.cards();
|
||||
},
|
||||
group:'tianbian_number',
|
||||
subSkill:{
|
||||
|
@ -1129,7 +1126,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
animationColor:'thunder',
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('juexiang'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('juexiang'),function(card,player,target){
|
||||
return target!=player;
|
||||
}).set('ai',function(target){
|
||||
return get.attitude(_status.event.player,target)/Math.sqrt(target.hp+1);
|
||||
|
@ -1507,7 +1504,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
trigger:{target:'shaBefore'},
|
||||
direct:true,
|
||||
init:function(player){
|
||||
player.storage.shouxi=[];
|
||||
if(!player.storage.shouxi) player.storage.shouxi=[];
|
||||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
|
@ -1861,7 +1858,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('daiyan'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('daiyan'),function(card,player,target){
|
||||
return target!=player;
|
||||
}).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -2350,7 +2347,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
if(color.length==2) color='all';
|
||||
else color=color[0];
|
||||
player.chooseToDiscard(get.prompt('xinsidi',trigger.player),'he',function(card){
|
||||
player.chooseToDiscard(get.prompt2('xinsidi',trigger.player),'he',function(card){
|
||||
if(get.type(card)=='basic') return false;
|
||||
if(_status.event.color=='all') return true;
|
||||
return get.color(card)==_status.event.color;
|
||||
|
@ -2681,7 +2678,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
var num=game.countPlayer(function(current){
|
||||
return !current.isLinked();
|
||||
});
|
||||
player.chooseTarget(get.prompt('jishe'),[1,Math.min(num,player.hp)],function(card,player,target){
|
||||
player.chooseTarget(get.prompt('jishe'),'横置至多'+get.cnNumber(Math.min(num,player.hp))+'名未横置的角色',[1,Math.min(num,player.hp)],function(card,player,target){
|
||||
return !target.isLinked();
|
||||
}).set('ai',function(target){
|
||||
return -get.attitude(_status.event.player,target);
|
||||
|
@ -2823,7 +2820,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('qinqing'),[1,Infinity],function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('qinqing'),[1,Infinity],function(card,player,target){
|
||||
var zhu=get.zhu(player);
|
||||
if(target==zhu) return false;
|
||||
return get.distance(target,zhu,'attack')<=1;
|
||||
|
@ -2896,7 +2893,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
return false;
|
||||
},
|
||||
content:function(){
|
||||
player.chooseDrawRecover(get.prompt('guizao')).logSkill='guizao';
|
||||
player.chooseDrawRecover(get.prompt('guizao'),'摸一张牌或回复一点体力').logSkill='guizao';
|
||||
},
|
||||
},
|
||||
jiyu:{
|
||||
|
@ -2904,9 +2901,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
enable:'phaseUse',
|
||||
locked:false,
|
||||
filter:function(event,player){
|
||||
if(!player.getStat().skill.jiyu) return true;
|
||||
var hs=player.getCards('h');
|
||||
for(var i=0;i<hs.length;i++){
|
||||
if(event.filterCard(hs[i],player)){
|
||||
if(!player.storage.jiyu2.contains(get.suit(hs[i]))){
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -3549,7 +3547,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('xinjuece'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('xinjuece'),'对一名没有手牌的其他角色造成1点伤害',function(card,player,target){
|
||||
return target.countCards('h')==0;
|
||||
}).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -3681,7 +3679,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
ai2:function(target){
|
||||
return 1-get.attitude(_status.event.player,target);
|
||||
},
|
||||
prompt:get.prompt('jieyue')
|
||||
prompt:get.prompt2('jieyue')
|
||||
});
|
||||
'step 1'
|
||||
if(result.bool){
|
||||
|
@ -4073,7 +4071,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
'step 1'
|
||||
if(event.cards.length){
|
||||
player.chooseTarget(get.prompt('shenduan'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('shenduan'),'将'+get.translation(event.cards)+(event.cards.length>1?'中的一张牌':'')+'当做【兵粮寸断】对一名其他角色使用',function(card,player,target){
|
||||
return player.canUse({name:'bingliang'},target,false);
|
||||
}).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
|
@ -4345,7 +4343,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
event.jiu=true;
|
||||
}
|
||||
player.chooseToUse('是否对'+get.translation(trigger.target)+'再使用一张杀?',
|
||||
{name:'sha'},trigger.target,-1).logSkill='qinglong_skill';
|
||||
{name:'sha'},trigger.target,-1);
|
||||
"step 3"
|
||||
if(result.bool);
|
||||
else if(event.jiu){
|
||||
|
@ -4366,7 +4364,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
if(trigger.responded&&trigger.responded.cards&&trigger.responded.cards.length){
|
||||
event.cards2=trigger.responded.cards.slice(0);
|
||||
}
|
||||
player.chooseTarget(get.prompt('zhongyong'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('zhongyong'),function(card,player,target){
|
||||
return target!=_status.event.getTrigger().target&&target!=player;
|
||||
}).set('ai',function(target){
|
||||
return get.attitude(_status.event.player,target);
|
||||
|
@ -4484,7 +4482,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
}
|
||||
}
|
||||
var next=player.chooseToDiscard(get.prompt('longyin'),'he');
|
||||
var next=player.chooseToDiscard(get.prompt('longyin'),'弃置一张牌'+(get.color(trigger.card)=='red'?'并摸一张牌':'')+',令'+get.translation(trigger.player)+'本次使用的【杀】不计入使用次数','he');
|
||||
next.logSkill=['longyin',trigger.player];
|
||||
next.set('ai',function(card){
|
||||
if(_status.event.go){
|
||||
|
@ -4535,6 +4533,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
audio:2,
|
||||
trigger:{player:'chooseToRespondBegin'},
|
||||
filter:function(event,player){
|
||||
if(!_status.currentPhase) return false;
|
||||
if(event.responded) return false;
|
||||
if(!event.filterCard({name:'shan'})) return false;
|
||||
return true;
|
||||
|
@ -4555,21 +4554,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
player.line(_status.currentPhase,'green');
|
||||
_status.currentPhase.draw();
|
||||
'step 1'
|
||||
var nh=_status.currentPhase.countCards('h');
|
||||
var nmax=nh+1;
|
||||
var targets=[];
|
||||
var players=game.filterPlayer();
|
||||
for(var i=0;i<players.length;i++){
|
||||
var nh2=players[i].countCards('h');
|
||||
if(nh2>nmax){
|
||||
nmax=nh2;
|
||||
targets.length=0;
|
||||
targets.push(players[i]);
|
||||
}
|
||||
else if(nh2==nmax){
|
||||
targets.push(players[i]);
|
||||
}
|
||||
if(_status.currentPhase.isMaxHandcard()){
|
||||
event.finish();
|
||||
return;
|
||||
}
|
||||
var targets=game.filterPlayer(function(current){
|
||||
return current.isMaxHandcard();
|
||||
})
|
||||
if(targets.length==1){
|
||||
event.onlytarget=targets[0];
|
||||
}
|
||||
|
@ -4693,7 +4684,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
content:function(){
|
||||
'step 0'
|
||||
var nh=player.countCards('h');
|
||||
player.chooseTarget(get.prompt('yaoming'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('yaoming'),function(card,player,target){
|
||||
return _status.event.nh!=target.countCards('h');
|
||||
}).set('ai',function(target){
|
||||
var att=get.attitude(_status.event.player,target);
|
||||
|
@ -4794,7 +4785,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
if(!player.hasSkill('yanzhu')){
|
||||
num=player.maxHp;
|
||||
}
|
||||
player.chooseTarget([1,num],get.prompt('xingxue')).set('ai',function(target){
|
||||
player.chooseTarget([1,num],get.prompt2('xingxue')).set('ai',function(target){
|
||||
var att=get.attitude(_status.event.player,target);
|
||||
if(target.countCards('he')) return att;
|
||||
return att/10;
|
||||
|
@ -5188,7 +5179,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
}
|
||||
}
|
||||
var next=player.chooseToDiscard(get.prompt('qinwang'),'he');
|
||||
var next=player.chooseToDiscard(get.prompt('qinwang'),'弃置一张牌并发动【激将】','he');
|
||||
next.set('ai',function(card){
|
||||
if(_status.event.yep) return 5-get.value(card);
|
||||
return 0;
|
||||
|
@ -5340,7 +5331,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('zuoding'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('zuoding'),'令一名目标角色摸一张牌',function(card,player,target){
|
||||
return _status.event.getTrigger().targets.contains(target);
|
||||
}).set('ai',function(target){
|
||||
return get.attitude(_status.event.player,target);
|
||||
|
@ -5385,7 +5376,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseCard(get.prompt('huomo'),'he',function(card){
|
||||
player.chooseCard(get.prompt2('huomo'),'he',function(card){
|
||||
return get.type(card)!='basic'&&get.color(card)=='black';
|
||||
}).set('ai',function(card){
|
||||
if(!_status.event.player.countCards('h','shan')){
|
||||
|
@ -5769,7 +5760,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
content:function(){
|
||||
'step 0'
|
||||
var go=Math.random()<0.5;
|
||||
player.chooseTarget(get.prompt('mingjian'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('mingjian_old'),function(card,player,target){
|
||||
return player!=target
|
||||
}).ai=function(target){
|
||||
var att=get.attitude(player,target);
|
||||
|
@ -5781,10 +5772,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
'step 1'
|
||||
if(result.bool){
|
||||
player.logSkill('mingjian',result.targets);
|
||||
player.logSkill('mingjian_old',result.targets);
|
||||
trigger.cancel();
|
||||
var target=result.targets[0];
|
||||
target.addSkill('mingjian2');
|
||||
target.addSkill('mingjian2_old');
|
||||
var hs=player.getCards('h');
|
||||
target.gain(hs,player);
|
||||
player.$give(hs.length,target);
|
||||
|
@ -5808,7 +5799,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
player.ai.tempIgnore=[];
|
||||
player.stat.push({card:{},skill:{}});
|
||||
player.phaseUse();
|
||||
player.removeSkill('mingjian2');
|
||||
player.removeSkill('mingjian2_old');
|
||||
}
|
||||
},
|
||||
huituo:{
|
||||
|
@ -5817,7 +5808,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('huituo')).set('ai',function(target){
|
||||
player.chooseTarget(get.prompt2('huituo')).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
if(get.attitude(player,target)>0){
|
||||
return get.recoverEffect(target,player,player)+1;
|
||||
|
@ -5866,7 +5857,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
audio:2,
|
||||
content:function(){
|
||||
'step 0'
|
||||
var next=player.chooseToDiscard('he',get.prompt('duodao'));
|
||||
var next=player.chooseToDiscard('he',get.prompt('duodao'),'弃置一张牌,然后获得'+get.translation(trigger.source)+'装备区中的'+trigger.source.getEquip(1));
|
||||
next.logSkill=['duodao',trigger.source];
|
||||
next.set('ai',function(card){
|
||||
if(get.attitude(_status.event.player,_status.event.getTrigger().source)<=0){
|
||||
|
@ -6014,7 +6005,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('yanyu'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('yanyu'),'令一名男性角色摸两张牌',function(card,player,target){
|
||||
return target.sex=='male'&&target!=player;
|
||||
}).set('ai',function(target){
|
||||
return get.attitude(_status.event.player,target);
|
||||
|
@ -6189,7 +6180,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
position:'he',
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('mieji'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('mieji'),'为'+get.translation(trigger.card)+'增加一个额外目标',function(card,player,target){
|
||||
var trigger=_status.event.getTrigger();
|
||||
return lib.filter.filterTarget(trigger.card,player,target)&&target!=trigger.targets[0];
|
||||
}).set('autodelay',true).set('ai',function(target){
|
||||
|
@ -6501,7 +6492,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('qiaoshui'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('qiaoshui'),function(card,player,target){
|
||||
return player.canCompare(target);
|
||||
}).set('ai',function(target){
|
||||
return -get.attitude(_status.event.player,target)/target.countCards('h');
|
||||
|
@ -6659,7 +6650,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('bingyi'),[1,player.countCards('h')],function(card,player,target){
|
||||
player.chooseTarget(get.prompt('bingyi'),'令至多'+get.cnNumber(player.countCards('h'))+'名角色各摸一张牌',[1,player.countCards('h')],function(card,player,target){
|
||||
return true;
|
||||
}).set('ai',function(target){
|
||||
return get.attitude(_status.event.player,target);
|
||||
|
@ -6757,7 +6748,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('qiangzhi'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('qiangzhi'),function(card,player,target){
|
||||
return target!=player&&target.countCards('h')>0;
|
||||
}).set('ai',function(){
|
||||
return Math.random();
|
||||
|
@ -6911,7 +6902,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('chanhui'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('chanhui'),function(card,player,target){
|
||||
if(player==target) return false;
|
||||
var trigger=_status.event.getTrigger();
|
||||
return player.canUse(trigger.card,target)&&trigger.targets.contains(target)==false;
|
||||
|
@ -7265,7 +7256,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
priority:11,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('qiuyuan'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('qiuyuan'),function(card,player,target){
|
||||
return target!=player&&_status.event.getTrigger().player.canUse('sha',target,false);
|
||||
}).set('ai',function(target){
|
||||
var trigger=_status.event.getTrigger();
|
||||
|
@ -7619,7 +7610,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('xinxuanhuo'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('xinxuanhuo'),function(card,player,target){
|
||||
return player!=target;
|
||||
}).set('ai',function(target){
|
||||
var att=get.attitude(_status.event.player,target);
|
||||
|
@ -7738,7 +7729,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('zhiyan')).set('ai',function(target){
|
||||
player.chooseTarget(get.prompt('zhiyan'),'令一名角色摸一张牌并展示之。若为装备牌,则其回复1点体力').set('ai',function(target){
|
||||
return get.attitude(_status.event.player,target);
|
||||
});
|
||||
"step 1"
|
||||
|
@ -7954,7 +7945,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
return att;
|
||||
},
|
||||
position:'he',
|
||||
prompt:get.prompt('xinjujian')
|
||||
prompt:get.prompt2('xinjujian')
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
|
@ -8541,7 +8532,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
"step 0"
|
||||
event.count=2;
|
||||
"step 1"
|
||||
player.chooseTarget(get.prompt('xuanfeng'),function(card,player,target){
|
||||
player.chooseTarget(get.prompt('xuanfeng'),'弃置一名其他角色的一张牌',function(card,player,target){
|
||||
if(player==target) return false;
|
||||
return target.countDiscardableCards(player,'he');
|
||||
}).set('ai',function(target){
|
||||
|
@ -9077,7 +9068,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
var next=player.chooseToDiscard(get.prompt('renxin',trigger.player),{type:'equip'},'he');
|
||||
var next=player.chooseToDiscard(get.prompt('renxin',trigger.player),'弃置一张装备牌并将武将牌翻面,然后防止'+get.translation(trigger.player)+'受到的伤害',{type:'equip'},'he');
|
||||
next.logSkill=['renxin',trigger.player];
|
||||
next.set('ai',function(card){
|
||||
var player=_status.event.player;
|
||||
|
@ -9109,13 +9100,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
"step 0"
|
||||
var next=player.chooseCard(get.prompt('yuce'));
|
||||
var next=player.chooseCard(get.prompt2('yuce'));
|
||||
next.set('ai',function(card){
|
||||
if(get.type(card)=='basic') return 1;
|
||||
return get.value(card);
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
player.logSkill('yuce');
|
||||
player.showCards(result.cards);
|
||||
var type=get.type(result.cards[0],'trick');
|
||||
if(trigger.source){
|
||||
|
@ -9165,7 +9157,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt('xiansi'),[1,2],function(card,player,target){
|
||||
player.chooseTarget(get.prompt2('xiansi'),[1,2],function(card,player,target){
|
||||
return target.countCards('he')>0;
|
||||
},function(target){
|
||||
return -get.attitude(_status.event.player,target);
|
||||
|
@ -9820,7 +9812,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
guizao:'瑰藻',
|
||||
guizao_info:'弃牌阶段结束时,若你于此阶段弃置牌的数量不小于2且它们的花色各不相同,你可以回复1点体力或摸一张牌',
|
||||
jiyu:'讥谀',
|
||||
jiyu_info:'出牌阶段每名角色限一次,若你有可以使用的手牌,你可以令一名角色弃置一张手牌。若如此做,你不能使用与之相同花色的牌,直到回合结束。若其以此法弃置的牌为黑桃,你翻面并令其失去1点体力',
|
||||
jiyu_info:'出牌阶段限一次,你可以令一名角色弃置一张手牌。若如此做,你不能使用与之相同花色的牌,直到回合结束。若其以此法弃置的牌为黑桃,你翻面并令其失去1点体力。若你有未被【讥谀】限制的手牌,则你可以继续发动此技能,但不能选择本回合已经选择过的目标。',
|
||||
qinqing:'寝情',
|
||||
qinqing_info:'结束阶段,你可以选择任意名攻击范围内含有主公的角色,然后弃置这些角色各一张牌并令其摸一张牌(无牌则不弃),若如此做,你摸X张牌(X为其中手牌比主公多的角色数)',
|
||||
huisheng:'贿生',
|
||||
|
|
Loading…
Reference in New Issue