v1.9.92.1(Part 2)
This commit is contained in:
parent
a51ee6c5df
commit
84be63df00
|
@ -836,16 +836,16 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
wushen:{
|
||||
mod:{
|
||||
cardEnabled:function(card,player){
|
||||
if(_status.event.skill!='wushen'&&card.name!='sha'&&get.suit(card)=='heart') return false;
|
||||
if(_status.event.skill==undefined&&card.name!='sha'&&get.suit(card)=='heart') return false;
|
||||
},
|
||||
cardUsable:function(card,player){
|
||||
if(_status.event.skill!='wushen'&&card.name!='sha'&&get.suit(card)=='heart') return false;
|
||||
if(_status.event.skill==undefined&&card.name!='sha'&&get.suit(card)=='heart') return false;
|
||||
},
|
||||
cardRespondable:function(card,player){
|
||||
if(_status.event.skill!='wushen'&&card.name!='sha'&&get.suit(card)=='heart') return false;
|
||||
if(_status.event.skill==undefined&&card.name!='sha'&&get.suit(card)=='heart') return false;
|
||||
},
|
||||
cardSavable:function(card,player){
|
||||
if(_status.event.skill!='wushen'&&card.name!='sha'&&get.suit(card)=='heart') return false;
|
||||
if(_status.event.skill==undefined&&card.name!='sha'&&get.suit(card)=='heart') return false;
|
||||
},
|
||||
targetInRange:function(card){
|
||||
if(get.suit(card)=='heart'||_status.event.skill=='wushen') return true;
|
||||
|
@ -2416,26 +2416,64 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
},
|
||||
},
|
||||
'drlt_jieying':{
|
||||
audio:2,
|
||||
drlt_jieying_mark:{
|
||||
init:function(player){
|
||||
game.log(player,'获得了“营”标记');
|
||||
},
|
||||
onremove:function(player){
|
||||
game.log(player,'失去了“营”标记');
|
||||
},
|
||||
mark:true,
|
||||
marktext:"营",
|
||||
intro:{
|
||||
content:function(storage){
|
||||
return '已获得“营”标记';
|
||||
},
|
||||
},
|
||||
mod:{
|
||||
cardUsable:function (card,player,num){
|
||||
if(game.hasPlayer(function(current){
|
||||
return current.hasSkill('drlt_jieying');
|
||||
})&&card.name=='sha') return num+1;
|
||||
},
|
||||
maxHandcard:function (player,num){
|
||||
if(game.hasPlayer(function(current){
|
||||
return current.hasSkill('drlt_jieying');
|
||||
})) return num+1;
|
||||
},
|
||||
},
|
||||
audio:'drlt_jieying',
|
||||
trigger:{
|
||||
player:'phaseDrawBegin'
|
||||
},
|
||||
forced:true,
|
||||
filter:function(event,player){
|
||||
return game.hasPlayer(function(current){
|
||||
return current.hasSkill('drlt_jieying');
|
||||
});
|
||||
},
|
||||
content:function(){
|
||||
trigger.num++;
|
||||
},
|
||||
},
|
||||
'drlt_jieying':{
|
||||
audio:2,
|
||||
locked:false,
|
||||
group:["drlt_jieying_1","drlt_jieying_2","drlt_jieying_3"],
|
||||
subSkill:{
|
||||
'1':{
|
||||
audio:'drlt_jieying',
|
||||
trigger:{
|
||||
global:'gameStart'
|
||||
player:'phaseBegin'
|
||||
},
|
||||
forced:true,
|
||||
filter:function(event,player){
|
||||
return !game.hasPlayer(function(current){
|
||||
return current.hasSkill('drlt_jieying_mark');
|
||||
});
|
||||
},
|
||||
content:function(){
|
||||
player.storage.drlt_jieying=player;
|
||||
player.markSkill('drlt_jieying');
|
||||
game.log(player,'获得了“营”标记');
|
||||
player.addSkill('drlt_jieying_mark');
|
||||
},
|
||||
},
|
||||
'2':{
|
||||
|
@ -2444,6 +2482,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
player:"phaseEnd",
|
||||
},
|
||||
direct:true,
|
||||
filter:function(event,player){
|
||||
return player.hasSkill('drlt_jieying_mark');
|
||||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseTarget(get.prompt('drlt_jieying'),function(card,player,target){
|
||||
|
@ -2463,63 +2504,29 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
if(result.bool){
|
||||
var target=result.targets[0];
|
||||
player.line(target);
|
||||
player.logSkill('drlt_jieying');
|
||||
player.storage.drlt_jieying=target;
|
||||
target.storage.drlt_jieying2=player;
|
||||
player.unmarkSkill('drlt_jieying');
|
||||
game.log(player,'失去了“营”标记');
|
||||
target.markSkill('drlt_jieying');
|
||||
game.log(target,'获得了“营”标记');
|
||||
player.logSkill('drlt_jieying',target);
|
||||
target.addSkill('drlt_jieying_mark');
|
||||
};
|
||||
},
|
||||
},
|
||||
'3':{
|
||||
audio:'drlt_jieying',
|
||||
trigger:{
|
||||
global:['phaseAfter','dieAfter']
|
||||
global:'phaseAfter',
|
||||
},
|
||||
forced:true,
|
||||
filter:function(event,player){
|
||||
return player.storage.drlt_jieying==event.player&&player!=event.player;
|
||||
return player!=event.player&&event.player.hasSkill('drlt_jieying_mark')&&event.player.isAlive();
|
||||
},
|
||||
logTarget:'player',
|
||||
content:function(){
|
||||
if(trigger.player.isAlive()){
|
||||
if(trigger.player.countCards('h')>0){
|
||||
trigger.player.give(trigger.player.getCards('h'),player);
|
||||
}
|
||||
delete trigger.player.storage.drlt_jieying2;
|
||||
trigger.player.unmarkSkill('drlt_jieying');
|
||||
game.log(trigger.player,'失去了“营”标记');
|
||||
content:function(){
|
||||
if(trigger.player.countCards('h')>0){
|
||||
trigger.player.give(trigger.player.getCards('h'),player);
|
||||
}
|
||||
player.storage.drlt_jieying=player;
|
||||
player.markSkill('drlt_jieying');
|
||||
game.log(player,'获得了“营”标记');
|
||||
trigger.player.removeSkill('drlt_jieying_mark');
|
||||
},
|
||||
},
|
||||
},
|
||||
global:'g_drlt_jieying',
|
||||
},
|
||||
'g_drlt_jieying':{
|
||||
mod:{
|
||||
cardUsable:function (card,player,num){
|
||||
if((player.storage.drlt_jieying==player||(player.storage.drlt_jieying2&&player.storage.drlt_jieying2.isAlive()&&player.storage.drlt_jieying2.storage.drlt_jieying==player))&&card.name=='sha') return num+1;
|
||||
},
|
||||
maxHandcard:function (player,num){
|
||||
if(player.storage.drlt_jieying==player||(player.storage.drlt_jieying2&&player.storage.drlt_jieying2.isAlive()&&player.storage.drlt_jieying2.storage.drlt_jieying==player)) return num+1;
|
||||
},
|
||||
},
|
||||
audio:'drlt_jieying',
|
||||
trigger:{
|
||||
player:'phaseDrawBegin'
|
||||
},
|
||||
forced:true,
|
||||
filter:function(event,player){
|
||||
return player.storage.drlt_jieying==player||(player.storage.drlt_jieying2&&player.storage.drlt_jieying2.isAlive()&&player.storage.drlt_jieying2.storage.drlt_jieying==player);
|
||||
},
|
||||
content:function(){
|
||||
trigger.num++;
|
||||
},
|
||||
},
|
||||
},
|
||||
translate:{
|
||||
|
@ -2542,7 +2549,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
"drlt_poxi":"魄袭",
|
||||
"drlt_poxi_info":"出牌阶段限一次,你可以观看一名其他角色的手牌,然后你可以弃置你与其手牌中的四张花色不同的牌。若如此做,根据此次弃置你的牌的数量执行以下效果:1.没有,扣减一点体力上限;2.一张,立即结束出牌阶段且本回合手牌上限-1;三张,恢复一点体力;四张,摸四张牌",
|
||||
"drlt_jieying":"劫营",
|
||||
"drlt_jieying_info":"游戏开始时,你获得一个“营”标记。结束阶段,你可以将“营”标记置于一名角色的武将牌旁;有“营”标记的角色摸牌阶段多摸一张牌、出牌阶段可多使用一张【杀】、手牌上限+1。有“营”标记的其他角色的回合结束后,你获得其所有手牌并收回“营”标记。",
|
||||
"drlt_jieying_info":"回合开始时,若没有角色有“营”标记,你获得1个“营”标记;结束阶段,你可以将你的“营”交给一名角色;有“营”标记的角色摸牌阶段多摸一张牌,其于出牌阶段使用【杀】的次数上限+1,其手牌上限+1。有“营”的其他角色回合结束后,其移去“营”标记,然后你获得其所有手牌。",
|
||||
drlt_jieying_mark:"劫营",
|
||||
"drlt_duorui1":"失效技能",
|
||||
"drlt_duorui1_bg":"锐",
|
||||
"drlt_duorui":"夺锐",
|
||||
|
|
|
@ -4,6 +4,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
name:'mobile',
|
||||
connectBanned:['miheng'],
|
||||
connect:true,
|
||||
characterSort:{
|
||||
mobile:{
|
||||
mobile_default:["miheng","taoqian","liuzan","lingcao","sunru","lifeng","zhuling","liuye","zhaotongzhaoguang","majun","simazhao","wangyuanji","pangdegong"],
|
||||
mobile_fire:["re_sp_zhugeliang","re_xunyu","re_dianwei","re_yanwen","re_pangtong","xin_yuanshao"],
|
||||
mobile_others:["re_jikang","old_bulianshi","old_caochun","old_yuanshu"],
|
||||
},
|
||||
},
|
||||
character:{
|
||||
re_jikang:["male","wei",3,["new_qingxian","new_juexiang"]],
|
||||
old_bulianshi:['female','wu',3,['anxu','zhuiyi']],
|
||||
|
@ -36,6 +43,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
re_jikang:"新嵇康",
|
||||
old_bulianshi:'新步练师',
|
||||
old_caochun:'旧曹纯',
|
||||
mobile_default:'常规',
|
||||
mobile_fire:'界限突破•火',
|
||||
mobile_others:'其他',
|
||||
}
|
||||
};
|
||||
});
|
||||
|
|
|
@ -2,6 +2,13 @@
|
|||
game.import('character',function(lib,game,ui,get,ai,_status){
|
||||
return {
|
||||
name:'old',
|
||||
characterSort:{
|
||||
old:{
|
||||
old_shenhua:["yuji","zhangjiao","old_zhugezhan","old_chenqun","old_zhuhuan","old_zhuzhi"],
|
||||
old_yijiang:["masu","xushu","fazheng","liru","yujin","xin_yujin","old_zhonghui","old_xusheng","old_zhuran","old_lingtong","old_madai","old_caoxiu","old_wangyi","old_caozhen","old_quancong"],
|
||||
old_sp:["old_lingju","old_maliang","old_machao","zhangliang"],
|
||||
},
|
||||
},
|
||||
character:{
|
||||
yuji:['male','qun',3,['old_guhuo'],['forbidai']],
|
||||
zhangjiao:['male','qun',3,['leiji','guidao','huangtian'],['zhu']],
|
||||
|
@ -836,6 +843,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
oldqianxi_info:'当你使用【杀】对距离为1的目标角色造成伤害时,你可以进行一次判定,若判定结果不为红桃,你防止此伤害,令其减1点体力上限',
|
||||
oldxuanfeng:'旋风',
|
||||
oldxuanfeng_info:'每当你失去一次装备区里的牌时,你可以执行下列两项中的一项:1.视为对任意一名其他角色使用一张【杀】(此【杀】不计入每回合的使用限制);2.对与你距离1以内的一名其他角色造成一点伤害',
|
||||
|
||||
old_shenhua:'神话再临',
|
||||
old_yijiang:'一将成名',
|
||||
old_sp:'SP',
|
||||
}
|
||||
};
|
||||
});
|
||||
|
|
|
@ -1206,7 +1206,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
cardDiscardable:function(card,player,name){
|
||||
if(name=='phaseDiscard'&&player.storage.reluoshen&&player.storage.reluoshen.contains(card)){
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
},
|
||||
},
|
||||
|
@ -2945,6 +2945,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
event.player.isAlive()&&event.source.isAlive()&&event.source!=event.player;
|
||||
},
|
||||
check:function(event,player){
|
||||
if(player.isPhaseUsing()) return true;
|
||||
if(event.player==player) return get.attitude(player,event.source)>-3;
|
||||
return get.attitude(player,event.player)>-3;
|
||||
},
|
||||
|
@ -2954,9 +2955,22 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function(){
|
||||
"step 0"
|
||||
game.asyncDraw([trigger.player,trigger.source],trigger.num);
|
||||
event.count=trigger.num;
|
||||
"step 1"
|
||||
game.asyncDraw([trigger.player,trigger.source]);
|
||||
event.count--;
|
||||
"step 2"
|
||||
game.delay();
|
||||
"step 3"
|
||||
if(event.count){
|
||||
player.chooseBool(get.prompt2('wangxi',lib.skill.wangxi.logTarget(trigger,player)))
|
||||
}
|
||||
else event.finish();
|
||||
"step 4"
|
||||
if(result.bool){
|
||||
player.logSkill('wangxi',lib.skill.wangxi.logTarget(trigger,player));
|
||||
event.goto(1);
|
||||
}
|
||||
},
|
||||
ai:{
|
||||
maixie:true,
|
||||
|
|
|
@ -4,6 +4,16 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
name:'shenhua',
|
||||
connect:true,
|
||||
connectBanned:['zuoci'],
|
||||
characterSort:{
|
||||
shenhua:{
|
||||
shenhua_feng:['caoren','xiahouyuan','huangzhong','weiyan','xiaoqiao','zhoutai','sp_zhangjiao','re_yuji'],
|
||||
shenhua_huo:['dianwei','xunyu','pangtong','sp_zhugeliang','taishici','yanwen','re_yuanshao','pangde'],
|
||||
shenhua_lin:['caopi','xuhuang','menghuo','zhurong','re_lusu','sunjian','dongzhuo','jiaxu'],
|
||||
shenhua_shan:['dengai','zhanghe','liushan','jiangwei','zhangzhang','sunce','caiwenji','zuoci'],
|
||||
shenhua_yin:['wangji','kuailiangkuaiyue','yanyan','wangping','sunliang','luji','xuyou','yl_luzhi'],
|
||||
shenhua_lei:['haozhao','guanqiujian','chendao','zhugezhan','lukang','zhoufei','zhangxiu','yl_yuanshu'],
|
||||
},
|
||||
},
|
||||
character:{
|
||||
xiahouyuan:['male','wei',4,['xinshensu']],
|
||||
caoren:['male','wei',4,['xinjushou','xinjiewei']],
|
||||
|
@ -1924,7 +1934,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
'step 4'
|
||||
if(event.toequip){
|
||||
player.useCard(event.toequip,player).nopopup=true;
|
||||
player.useCard(event.toequip,player).set('animate',false).nopopup=true;
|
||||
}
|
||||
},
|
||||
ai:{
|
||||
|
@ -6694,6 +6704,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
huangtian_info:'主公技,其他群势力角色的出牌阶段限一次,其可以交给你一张【闪】或【闪电】。',
|
||||
guhuo_info:'每名角色的回合限一次,你可以扣置一张手牌当一张基本牌或普通锦囊牌使用或打出。其他角色依次选择是否质疑。一旦有其他角色质疑则翻开此牌:若为假则此牌作废,若为真,则质疑角色获得技能“缠怨”(锁定技,你不能质疑于吉,只要你的体力值为1,你失去你的武将技能)',
|
||||
fenji_info:'每当一名角色的手牌于回合外被其他角色弃置或获得时,你可以失去1点体力,然后令该角色摸两张牌。',
|
||||
|
||||
shenhua_feng:'神话再临•风',
|
||||
shenhua_huo:'神话再临•火',
|
||||
shenhua_lin:'神话再临•林',
|
||||
shenhua_shan:'神话再临•山',
|
||||
shenhua_yin:'神话再临•阴',
|
||||
shenhua_lei:'神话再临•雷',
|
||||
},
|
||||
};
|
||||
});
|
||||
|
|
560
character/sp.js
560
character/sp.js
|
@ -3,7 +3,23 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
return {
|
||||
name:'sp',
|
||||
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_whlw:["xurong","lijue","zhangji","fanchou","guosi"],
|
||||
sp_zlzy:["zhangqiying","lvkai","zhanggong","weiwenzhugezhi","beimihu"],
|
||||
sp_longzhou:["xf_tangzi","xf_huangquan","xf_sufei","sp_liuqi"],
|
||||
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"],
|
||||
sp_guozhan2:["mifuren","mateng","tianfeng","chendong","sp_dongzhuo","jiangfei","jiangqing","kongrong","bianfuren","liqueguosi","lvfan","cuimao","jiling","zangba","zhangren","zoushi"],
|
||||
sp_others:["kaisa","hanba"],
|
||||
},
|
||||
},
|
||||
character:{
|
||||
mangyachang:["male","qun",4,["spjiedao"],[]],
|
||||
xugong:["male","wu",4,["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"],[]],
|
||||
fanchou:["male","qun",4,["xinfu_xingluan"],[]],
|
||||
|
@ -136,6 +152,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
kaisa:["male","western",4,["zhengfu"]],
|
||||
},
|
||||
characterIntro:{
|
||||
zhangchangpu:"钟会的母亲。《母夫人张氏传》:夫人张氏,字昌蒲,太原兹氏人,太傅定陵成侯之命妇也。",
|
||||
xugong:"许贡是东汉末官吏。先后任吴郡都尉、太守,欲送密信给曹操,要曹操注意孙策,却被孙策发现而被杀。许贡生前招揽了一些门客,当中有三人不忘故主,千方百计想要手刃仇人。建安五年(公元200年),广陵太守陈登派人秘密联系孙策治下的山贼余党,企图颠覆孙策在江东的统治。孙策决定讨伐陈登,行军到丹徒时,许贡门客终于找到了机会。因为孙策有单骑出猎,在野外思考的习惯,三门客趁孙策轻装外出打猎时,放冷箭射中孙策面颊。这些门客后来在与孙策的搏斗中,被赶到的侍卫杀死。孙策此后因为伤口感染,并且俊美的容貌被毁,终于不治身亡,去世时年仅26岁。",
|
||||
mangyachang:"南蛮王孟获的部将,使一口截头大刀,骑一匹黄骠马。率军与蜀军交战,战败王平。后被平北将军马岱斩杀。只出现在《三国演义》里,正史中无此人。",
|
||||
huangjinleishi:"黄巾军中负责施法的女祭司二人组。",
|
||||
lijue:"李傕(jué,一说“傕”读音“què”)(?—198年),字稚然。北地郡泥阳县(今陕西省耀县)人,汉末群雄之一。东汉末年汉献帝时的军阀、权臣,官至大司马、车骑将军、开府、领司隶校尉、假节。<br>李傕本为董卓部将,后被董卓的女婿牛辅派遣至中牟与朱儁交战,大破朱儁,进而至陈留、颍川等地劫掠。初平三年(192年)董卓和牛辅被杀后,李傕归无所依,于是采用贾诩之谋,伙同郭汜、张济、樊稠等原董卓部曲将攻向长安。击败吕布,杀死王允等人,占领长安,把持朝廷大权。后诸将不和,李傕在会议上杀死了樊稠,又与郭汜分别劫持了汉献帝和众臣,相互交战,张济率兵赶来和解,于是二人罢兵,李傕出屯池阳黄白城,郭汜、张济等人随汉献帝东归前往弘农。<br>后来,李傕、郭汜、张济反悔,联合起来追击汉献帝,与杨奉、董承等人几番交战。汉献帝一路逃亡,狼狈不堪,到达安邑,与李傕等人讲和。不久,汉献帝被曹操迎往许都。建安三年(198年),曹操派谒者仆射裴茂召集关西诸将段煨等人征讨李傕,灭其三族。",
|
||||
zhangji:"张济(?-196年),武威郡祖厉县(今甘肃靖远东南)人。东汉末年割据军阀之一。 张济原为董卓部将,董卓被诛杀后,张济与李傕一同率军攻破长安,任中郎将。不久,升任镇东将军,封平阳侯,出屯弘农。献帝东迁时,张济升任骠骑将军,率军护卫献帝,后来因与董承等人有矛盾,便与李傕、郭汜一同追赶献帝。 建安元年(196年),张济因军队缺粮而进攻穰城,中流矢而死。死后,部队由侄儿张绣接管。",
|
||||
|
@ -772,6 +791,329 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
},
|
||||
skill:{
|
||||
//和沙摩柯一起上线的新服三将
|
||||
spjiedao:{
|
||||
audio:2,
|
||||
trigger:{
|
||||
source:"damageBegin",
|
||||
},
|
||||
usable:1,
|
||||
direct:true,
|
||||
popup:false,
|
||||
content:function (){
|
||||
'step 0'
|
||||
event.num=player.maxHp-player.hp;
|
||||
if(event.num>0) player.chooseBool(get.prompt2('spjiedao',trigger.player)).ai=function(){
|
||||
if(get.attitude(player,trigger.player)>=-1) return false;
|
||||
return !trigger.player.getEquip('baiyin')&&!trigger.player.getEquip('rewrite_baiyin');
|
||||
};
|
||||
'step 1'
|
||||
if(result.bool){
|
||||
player.logSkill('spjiedao',trigger.player);
|
||||
trigger.num+=num;
|
||||
var next=game.createEvent('spjiedao_after',null,trigger.getParent());
|
||||
next.player=player;
|
||||
next.target=trigger.player;
|
||||
next.num=num;
|
||||
next.setContent(function(){
|
||||
if(target.isAlive()) player.chooseToDiscard(num,true);
|
||||
});
|
||||
}
|
||||
},
|
||||
},
|
||||
biaozhao:{
|
||||
audio:2,
|
||||
group:["biaozhao2","biaozhao3"],
|
||||
intro:{
|
||||
content:"cards",
|
||||
},
|
||||
trigger:{
|
||||
player:"phaseEnd",
|
||||
},
|
||||
direct:true,
|
||||
filter:function (event,player){
|
||||
return player.countCards('he')>0&&!player.storage.biaozhao;
|
||||
},
|
||||
content:function (){
|
||||
'step 0'
|
||||
player.chooseCard('he',get.prompt2('biaozhao')).ai=function(card){
|
||||
return 6-get.value(card);
|
||||
}
|
||||
'step 1'
|
||||
if(result.bool){
|
||||
player.logSkill('biaozhao');
|
||||
player.lose(result.cards,ui.special,'toStorage');
|
||||
player.storage.biaozhao=result.cards;
|
||||
player.markSkill('biaozhao');
|
||||
}
|
||||
},
|
||||
},
|
||||
"biaozhao2":{
|
||||
trigger:{
|
||||
global:["loseEnd","cardsDiscardEnd"],
|
||||
},
|
||||
forced:true,
|
||||
audio:"biaozhao",
|
||||
filter:function (event,player){
|
||||
if(!player.storage.biaozhao) return false;
|
||||
if(event.getParent().name=='biaozhao2') return false;
|
||||
var suit=get.suit(player.storage.biaozhao[0]);
|
||||
var num=get.number(player.storage.biaozhao[0]);
|
||||
for(var i=0;i<event.cards.length;i++){
|
||||
if(get.position(event.cards[i])=='d'&&get.suit(event.cards[i])==suit
|
||||
&&get.number(event.cards[i])==num) return true;
|
||||
}
|
||||
return false;
|
||||
},
|
||||
content:function (){
|
||||
"step 0"
|
||||
var card=player.storage.biaozhao[0];
|
||||
delete player.storage.biaozhao;
|
||||
if(trigger.getParent().name=='discard'){
|
||||
trigger.player.gain(card,'fromStorage');
|
||||
player.$give(card,trigger.player);
|
||||
}
|
||||
else{
|
||||
player.$throw(card);
|
||||
game.cardsDiscard(card);
|
||||
player.loseHp();
|
||||
}
|
||||
"step 1"
|
||||
player.unmarkSkill('biaozhao');
|
||||
game.delay();
|
||||
},
|
||||
},
|
||||
"biaozhao3":{
|
||||
trigger:{
|
||||
player:"phaseBegin",
|
||||
},
|
||||
forced:true,
|
||||
audio:"biaozhao",
|
||||
filter:function (event,player){
|
||||
return player.storage.biaozhao!=undefined;
|
||||
},
|
||||
content:function (){
|
||||
"step 0"
|
||||
var card=player.storage.biaozhao[0];
|
||||
delete player.storage.biaozhao;
|
||||
player.unmarkSkill('biaozhao');
|
||||
game.cardsDiscard(card);
|
||||
event.num=0;
|
||||
game.countPlayer(function(current){
|
||||
if(current.countCards('h')>event.num) event.num=current.countCards('h');
|
||||
});
|
||||
player.chooseTarget('是否令一名角色将手牌摸至'+event.num+'张并回复1点体力?').ai=function(target){
|
||||
var num=Math.min(event.num-target.countCards('h'),5);
|
||||
if(target.isDamaged()) num++;
|
||||
return num*get.attitude(_status.event.player,target);
|
||||
};
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
var target=result.targets[0];
|
||||
player.line(target,'green');
|
||||
var draw=Math.min(num-target.countCards('h'),5);
|
||||
if(draw) target.draw(draw);
|
||||
target.recover();
|
||||
}
|
||||
},
|
||||
},
|
||||
yechou:{
|
||||
audio:2,
|
||||
trigger:{
|
||||
player:"dieBegin",
|
||||
},
|
||||
direct:true,
|
||||
skillAnimation:true,
|
||||
content:function (){
|
||||
var next=game.createEvent('yechou',null,trigger.parent);
|
||||
next.forceDie=true;
|
||||
next.player=player;
|
||||
next.setContent(lib.skill.yechou.contentx);
|
||||
},
|
||||
contentx:function (){
|
||||
"step 0"
|
||||
player.chooseTarget(get.prompt2('yechou'),function(card,player,target){
|
||||
return player!=target&&target.maxHp-target.hp>1
|
||||
}).set('forceDie',true).set('ai',function(target){
|
||||
var num=get.attitude(_status.event.player,target);
|
||||
return -num;
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
var target=result.targets[0];
|
||||
player.logSkill('yechou',target);
|
||||
player.line(target,'green');
|
||||
target.addTempSkill('yechou2',{player:'phaseBeginStart'});
|
||||
}
|
||||
},
|
||||
ai:{
|
||||
expose:0.5,
|
||||
},
|
||||
},
|
||||
"yechou2":{
|
||||
mark:true,
|
||||
marktext:"仇",
|
||||
intro:{
|
||||
content:"每个回合结束时失去1点体力直到回合开始",
|
||||
},
|
||||
trigger:{
|
||||
global:"phaseAfter",
|
||||
},
|
||||
forced:true,
|
||||
content:function (){player.loseHp()},
|
||||
},
|
||||
yanjiao:{
|
||||
audio:2,
|
||||
ai:{
|
||||
order:10,
|
||||
result:{
|
||||
player:1,
|
||||
target:1.1,
|
||||
},
|
||||
},
|
||||
enable:"phaseUse",
|
||||
usable:1,
|
||||
filterTarget:function (card,player,target){
|
||||
return target!=player;
|
||||
},
|
||||
content:function (){
|
||||
"step 0"
|
||||
var num=4;
|
||||
if(player.storage.xingshen){
|
||||
num+=player.storage.xingshen;
|
||||
player.storage.xingshen=0;
|
||||
player.unmarkSkill('xingshen');
|
||||
}
|
||||
event.cards=get.cards(num);
|
||||
player.showCards(event.cards);
|
||||
"step 1"
|
||||
event.preResult=lib.skill.yanjiao.getResult(cards);
|
||||
if(!event.preResult.length){
|
||||
game.cardsDiscard(cards);
|
||||
player.addTempSkill('yanjiao2');
|
||||
event.finish();
|
||||
}
|
||||
else{
|
||||
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);
|
||||
str+='<br>第一组:';
|
||||
var current=event.preResult[i];
|
||||
str+=get.translation(current[0]);
|
||||
str+='<br>第二组:';
|
||||
str+=get.translation(current[1]);
|
||||
if(current[2].length){
|
||||
str+='<br>剩余:';
|
||||
str+=get.translation(current[2]);
|
||||
}
|
||||
str+='</div>';
|
||||
var next=choiceList.add(str);
|
||||
next.firstChild.addEventListener(lib.config.touchscreen?'touchend':'click',ui.click.button);
|
||||
next.firstChild.link=i;
|
||||
for(var j in lib.element.button){
|
||||
next[j]=lib.element.button[i];
|
||||
}
|
||||
choiceList.buttons.add(next.firstChild);
|
||||
}
|
||||
event.choiceList=choiceList;
|
||||
target.chooseButton(choiceList,true,function(button){
|
||||
return true;
|
||||
});
|
||||
}
|
||||
"step 2"
|
||||
event.index=result.links[0]||0;
|
||||
event.togain=event.preResult[event.index];
|
||||
target.showCards(event.togain[0],get.translation(target)+'分出的第一份牌');
|
||||
"step 3"
|
||||
target.showCards(event.togain[1],get.translation(target)+'分出的第二份牌');
|
||||
"step 4"
|
||||
player.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');
|
||||
if(event.togain[2].length){
|
||||
game.cardsDiscard(event.togain[2]);
|
||||
if(event.togain[2].length>1) player.addTempSkill('yanjiao2');
|
||||
}
|
||||
},
|
||||
getResult:function (cards){
|
||||
var cl=cards.length;
|
||||
var maxmium=Math.pow(3,cl);
|
||||
var filter=function(list){
|
||||
if(!list[1].length||!list[0].length) return false;
|
||||
var num1=0;
|
||||
for(var i=0;i<list[1].length;i++){
|
||||
num1+=list[1][i].number;
|
||||
}
|
||||
var num2=0;
|
||||
for(var j=0;j<list[0].length;j++){
|
||||
num2+=list[0][j].number;
|
||||
}
|
||||
return num1==num2
|
||||
};
|
||||
var results=[];
|
||||
for(var i=0;i<maxmium;i++){
|
||||
var result=[[],[],[]];
|
||||
for(var j=0;j<cl;j++){
|
||||
result[Math.floor((i%Math.pow(3,j+1))/Math.pow(3,j))].push(cards[j]);
|
||||
}
|
||||
if(filter(result)) results.push(result);
|
||||
}
|
||||
var filterSame=function(list1,list2){
|
||||
if(list1[1].length==list2[0].length&&list1[0].length==list2[1].length){
|
||||
for(var i=0;i<list1[0].length;i++){
|
||||
if(!list2[1].contains(list1[0][i])) return false;
|
||||
}
|
||||
for(var i=0;i<list1[1].length;i++){
|
||||
if(!list2[0].contains(list1[1][i])) return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
for(var i=0;i<results.length;i++){
|
||||
for(var j=i+1;j<results.length;j++){
|
||||
if(filterSame(results[i],results[j])) results.splice(j--,1);
|
||||
}
|
||||
}
|
||||
results.sort(function(a,b){
|
||||
return a[2].length-b[2].length;
|
||||
});
|
||||
return results;
|
||||
},
|
||||
},
|
||||
"yanjiao2":{
|
||||
marktext:"教",
|
||||
mark:true,
|
||||
intro:{
|
||||
content:"本回合手牌上限-1",
|
||||
},
|
||||
mod:{
|
||||
maxHandcard:function (player,num){
|
||||
return num-1;
|
||||
},
|
||||
},
|
||||
},
|
||||
xingshen:{
|
||||
audio:2,
|
||||
intro:{
|
||||
content:"下一次发动【严教】时多展示#张牌",
|
||||
},
|
||||
trigger:{
|
||||
player:"damageEnd",
|
||||
},
|
||||
frequent:true,
|
||||
content:function (){
|
||||
player.draw(player.isMinHandcard()?2:1);
|
||||
if(!player.storage.xingshen) player.storage.xingshen=0;
|
||||
player.storage.xingshen+=player.isMinHp()?2:1;
|
||||
if(player.storage.xingshen>4) player.storage.xingshen=4;
|
||||
player.markSkill('xingshen');
|
||||
},
|
||||
},
|
||||
//统率三军诸葛瑾和文聘
|
||||
"zhenwei_three":{
|
||||
global:"zhenwei_three_others",
|
||||
|
@ -1470,9 +1812,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
'step 3'
|
||||
if(result.links){
|
||||
player.$throw(result.links);
|
||||
player.storage.new_xingwu=[];
|
||||
for(var i=0;i<result.links.length;i++) player.storage.new_xingwu.remove(result.links[i]);
|
||||
game.cardsDiscard(result.links);
|
||||
player.syncStorage();
|
||||
player.syncStorage('new_xingwu');
|
||||
player.updateMarks('new_xingwu');
|
||||
if(!player.storage.new_xingwu.length) player.unmarkSkill('new_xingwu');
|
||||
player.chooseTarget(function(card,player,target){
|
||||
return target!=player;
|
||||
|
@ -1513,97 +1856,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
filter:function (event,player){
|
||||
if(!player.storage.new_xingwu||!player.storage.new_xingwu.length) return false;
|
||||
if(player.hasSkill('retianxiang')||player.hasSkill('tianxiang')) return false;
|
||||
return lib.skill.tianxiang.filter(event,player);
|
||||
return lib.skill.retianxiang.filter(event,player);
|
||||
},
|
||||
audio:"tianxiang",
|
||||
trigger:{
|
||||
player:"damageBefore",
|
||||
},
|
||||
direct:true,
|
||||
content:function (){
|
||||
"step 0"
|
||||
player.chooseCardTarget({
|
||||
filterCard:function(card,player){
|
||||
return get.suit(card)=='heart'&&lib.filter.cardDiscardable(card,player);
|
||||
},
|
||||
filterTarget:function(card,player,target){
|
||||
return player!=target;
|
||||
},
|
||||
// position:'he',
|
||||
ai1:function(card){
|
||||
return 10-get.value(card);
|
||||
},
|
||||
ai2:function(target){
|
||||
var att=get.attitude(_status.event.player,target);
|
||||
var trigger=_status.event.getTrigger();
|
||||
var da=0;
|
||||
if(_status.event.player.hp==1){
|
||||
da=10;
|
||||
}
|
||||
var eff=get.damageEffect(target,trigger.source,target);
|
||||
if(att==0) return 0.1+da;
|
||||
if(eff>=0&&att>0){
|
||||
return att+da;
|
||||
}
|
||||
if(att>0&&target.hp>1){
|
||||
if(target.maxHp-target.hp>=3) return att*1.1+da;
|
||||
if(target.maxHp-target.hp>=2) return att*0.9+da;
|
||||
}
|
||||
return -att+da;
|
||||
},
|
||||
prompt:get.prompt('retianxiang'),
|
||||
prompt2:lib.translate.retianxiang_info
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
player.discard(result.cards,ui.special);
|
||||
var target=result.targets[0];
|
||||
player.chooseControlList(true,function(event,player){
|
||||
var target=_status.event.target;
|
||||
var att=get.attitude(player,target);
|
||||
if(target.hasSkillTag('maihp')) att=-att;
|
||||
if(att>0){
|
||||
return 0;
|
||||
}
|
||||
else{
|
||||
return 1;
|
||||
}
|
||||
},
|
||||
['令'+get.translation(target)+'受到伤害来源对其造成的1点伤害,然后摸X张牌(X为其已损失体力值且至多为5)',
|
||||
'令'+get.translation(target)+'失去1点体力,然后获得'+get.translation(result.cards)]).set('target',target);
|
||||
player.logSkill(event.name,target);
|
||||
trigger.cancel();
|
||||
event.target=target;
|
||||
event.card=result.cards[0];
|
||||
}
|
||||
else{
|
||||
event.finish();
|
||||
}
|
||||
"step 2"
|
||||
if(typeof result.index=='number'){
|
||||
if(result.index){
|
||||
event.target.loseHp().type='retianxiang';
|
||||
event.target.addSkill('retianxiang3');
|
||||
event.target.storage.retianxiang3=event.card;
|
||||
}
|
||||
else{
|
||||
event.target.damage(trigger.source).type='retianxiang';
|
||||
event.target.addSkill('retianxiang2');
|
||||
if(get.position(event.card)=='s'){
|
||||
game.cardsDiscard(event.card);
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
ai:{
|
||||
"maixie_defend":true,
|
||||
effect:{
|
||||
target:function (card,player,target){
|
||||
if(player.hasSkillTag('jueqing',false,target)) return;
|
||||
if(get.tag(card,'damage')&&target.countCards('he')>1) return 0.7;
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
"new_luoyan_liuli":{
|
||||
inherit:"liuli",
|
||||
|
@ -1613,87 +1868,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
return lib.skill.liuli.filter(event,player);
|
||||
},
|
||||
audio:"liuli",
|
||||
trigger:{
|
||||
target:"shaBefore",
|
||||
},
|
||||
direct:true,
|
||||
priority:5,
|
||||
content:function (){
|
||||
"step 0"
|
||||
var next=player.chooseCardTarget({
|
||||
position:'he',
|
||||
filterCard:lib.filter.cardDiscardable,
|
||||
filterTarget:function(card,player,target){
|
||||
var trigger=_status.event.getTrigger();
|
||||
if(get.distance(player,target,'attack')<=1&&
|
||||
target!=trigger.player&&target!=player){
|
||||
if(player.canUse(trigger.card,target)) return true;
|
||||
}
|
||||
return false;
|
||||
},
|
||||
ai1:function(card){
|
||||
return get.unuseful(card)+9;
|
||||
},
|
||||
ai2:function(target){
|
||||
if(_status.event.player.countCards('h','shan')){
|
||||
return -get.attitude(_status.event.player,target);
|
||||
}
|
||||
if(get.attitude(_status.event.player,target)<5){
|
||||
return 6-get.attitude(_status.event.player,target);
|
||||
}
|
||||
if(_status.event.player.hp==1&&player.countCards('h','shan')==0){
|
||||
return 10-get.attitude(_status.event.player,target);
|
||||
}
|
||||
if(_status.event.player.hp==2&&player.countCards('h','shan')==0){
|
||||
return 8-get.attitude(_status.event.player,target);
|
||||
}
|
||||
return -1;
|
||||
},
|
||||
prompt:get.prompt('liuli')
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
player.discard(result.cards);
|
||||
player.logSkill(event.name,result.targets);
|
||||
trigger.target=result.targets[0];
|
||||
trigger.targets.remove(player);
|
||||
trigger.targets.push(result.targets[0]);
|
||||
}
|
||||
else{
|
||||
event.finish();
|
||||
}
|
||||
"step 2"
|
||||
trigger.untrigger();
|
||||
trigger.trigger('useCardToBefore');
|
||||
trigger.trigger('shaBefore');
|
||||
game.delay();
|
||||
},
|
||||
ai:{
|
||||
effect:{
|
||||
target:function (card,player,target){
|
||||
if(target.countCards('he')==0) return;
|
||||
if(card.name!='sha') return;
|
||||
var min=1;
|
||||
var friend=get.attitude(player,target)>0;
|
||||
var vcard={name:'shacopy',nature:card.nature,suit:card.suit};
|
||||
var players=game.filterPlayer();
|
||||
for(var i=0;i<players.length;i++){
|
||||
if(player!=players[i]&&
|
||||
get.attitude(target,players[i])<0&&
|
||||
target.canUse(card,players[i])){
|
||||
if(!friend) return 0;
|
||||
if(get.effect(players[i],vcard,player,player)>0){
|
||||
if(!player.canUse(card,players[0])){
|
||||
return [0,0.1];
|
||||
}
|
||||
min=0;
|
||||
}
|
||||
}
|
||||
}
|
||||
return min;
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
//新孙鲁育
|
||||
"new_meibu":{
|
||||
|
@ -2714,7 +2888,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
player.chooseTarget(get.prompt2('bmcanshi'),[1,Infinity],function(card,player,target){
|
||||
if(!target.hasSkill('zongkui_mark')) return false;
|
||||
var trigger=_status.event.getTrigger();
|
||||
return !trigger.targets.contains(target)&&lib.filter.filterTarget2(trigger.card,player,target);
|
||||
return !trigger.targets.contains(target)&&lib.filter.targetEnabled2(trigger.card,player,target);
|
||||
}).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
return get.effect(target,_status.event.getTrigger().card,player,player);
|
||||
|
@ -2762,7 +2936,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
intro:{
|
||||
content:'已因此技能获得#张牌'
|
||||
},
|
||||
trigger:{global:'damageAfter'},
|
||||
trigger:{global:'damageEnd'},
|
||||
forced:true,
|
||||
filter:function(event,player){
|
||||
return event.player!=player&&event.player.hasSkill('zongkui_mark');
|
||||
|
@ -8959,7 +9133,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
var result=trigger.judge(card)-trigger.judge(judging);
|
||||
var attitude=get.attitude(player,trigger.player);
|
||||
return result*attitude;
|
||||
}).set('judging',trigger.player.judging);
|
||||
}).set('judging',trigger.player.judging[0]);
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
player.logSkill('midao',trigger.player);
|
||||
|
@ -10030,6 +10204,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
check:function(event,player){
|
||||
return get.attitude(player,event.target)>=0;
|
||||
},
|
||||
priority:7,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.draw();
|
||||
|
@ -10065,7 +10240,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
"step 3"
|
||||
if(result.bool){
|
||||
trigger.target.useCard(event.card).nopopup=true;
|
||||
trigger.target.useCard(event.card,trigger.target).nopopup=true;
|
||||
}
|
||||
},
|
||||
ai:{
|
||||
|
@ -12497,6 +12672,29 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
majun:"马钧",
|
||||
simazhao:"司马昭",
|
||||
wangyuanji:"王元姬",
|
||||
|
||||
mangyachang:"忙牙长",
|
||||
xugong:"许贡",
|
||||
zhangchangpu:"张菖蒲",
|
||||
|
||||
spjiedao:"截刀",
|
||||
"spjiedao_info":"当你每回合第一次造成伤害时,你可令此伤害至多+X(X为你损失的体力值)。然后若受到此伤害的角色没有死亡,你弃置等同于此伤害加值的牌。",
|
||||
biaozhao:"表召",
|
||||
"biaozhao_info":"结束阶段,你可以将一张牌置于武将牌上,称为“表”。当有一张与“表”花色点数均相同的牌进入弃牌堆时,移去“表”且你失去1点体力,若此牌是其他角色因弃置而进入弃牌堆的,则改为该角色获得“表”。准备阶段,若你的武将牌上有“表”,则移去“表”然后你选择一名角色,该角色回复1点体力且将手牌摸至与全场手牌数最多的人相同(最多摸五张)。",
|
||||
"biaozhao2":"表召",
|
||||
"biaozhao2_info":"",
|
||||
"biaozhao3":"表召",
|
||||
"biaozhao3_info":"",
|
||||
yechou:"业仇",
|
||||
"yechou_info":"你死亡时,可以选择一名已损失体力值大于1的角色。每个回合结束时,该角色失去1点体力直到其回合开始",
|
||||
"yechou2":"业仇",
|
||||
"yechou2_info":"",
|
||||
yanjiao:"严教",
|
||||
"yanjiao_info":"出牌阶段限一次,你可以选择一名其他角色。从牌堆顶亮出四张牌,该角色将这些牌分成点数之和相等的两组,你与其各获得其中一组,然后将剩余未分组的牌置入弃牌堆。若未分组的牌超过一张,你本回合手牌上限-1。",
|
||||
"yanjiao2":"严教",
|
||||
"yanjiao2_info":"",
|
||||
xingshen:"省身",
|
||||
"xingshen_info":"当你受到伤害后,你可以摸一张牌且下一次发动“严教”亮出的牌数+1。若你的手牌数为全场最少,则改为摸两张牌;若你的体力值为全场最少,则“严教”亮出的牌数改为+2(加值总数不能超过4)。",
|
||||
|
||||
xinshanjia:"缮甲",
|
||||
"xinshanjia_info":"出牌阶段开始时,你可以摸三张牌,然后弃置3-X张牌(X为你本局游戏内失去过的装备区内的牌的数目且至多为3)。若你没有以此法弃置基本牌或锦囊牌,则你可以视为使用了一张不计入出牌阶段使用次数的【杀】。",
|
||||
|
@ -13038,6 +13236,16 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
yongsi_info:'锁定技,摸牌阶段,你额外摸X张牌,X为场上现存势力数。弃牌阶段,你至少须弃置等同于场上现存势力数的牌(不足则全弃)。',
|
||||
yicong_info:'锁定技,只要你的体力值大于2点,你的进攻距离+1;只要你的体力值为2点或更低,你的防御距离+1',
|
||||
baobian_info:'锁定技,若你的体力值为3或更少,你视为拥有技能“挑衅”;若你的体力值为2或更少;你视为拥有技能“咆哮”;若你的体力值为1,你视为拥有技能“神速”。',
|
||||
|
||||
sp_default:"常规",
|
||||
sp_whlw:"文和乱武",
|
||||
sp_zlzy:"逐鹿中原",
|
||||
sp_longzhou:"同舟共济",
|
||||
sp_zhongdan:"忠胆英杰",
|
||||
sp_star:"☆SP系列",
|
||||
sp_guozhan:"国战",
|
||||
sp_guozhan2:"国战移植",
|
||||
sp_others:"其他",
|
||||
},
|
||||
};
|
||||
});
|
||||
|
|
|
@ -3,6 +3,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
return {
|
||||
name:'standard',
|
||||
connect:true,
|
||||
characterSort:{
|
||||
standard:{
|
||||
standard_2008:["caocao","simayi","xiahoudun","zhangliao","xuzhu","guojia","zhenji","liubei","guanyu","zhangfei","zhugeliang","zhaoyun","machao","huangyueying","sunquan","ganning","lvmeng","huanggai","zhouyu","daqiao","luxun","sunshangxiang","huatuo","lvbu","diaochan",],
|
||||
standard_2013:["huaxiong","re_yuanshu"],
|
||||
standard_2019:["gongsunzan","caozhang","xf_yiji"],
|
||||
},
|
||||
},
|
||||
character:{
|
||||
caocao:['male','wei',4,['hujia','jianxiong'],['zhu']],
|
||||
simayi:['male','wei',3,['fankui','guicai']],
|
||||
|
@ -1712,7 +1719,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
audioname:['re_lvmeng','sp_lvmeng'],
|
||||
trigger:{player:'phaseDiscardBefore'},
|
||||
frequent:function(event,player){
|
||||
return !player.needsToDiscard();
|
||||
return player.needsToDiscard();
|
||||
},
|
||||
filter:function(event,player){
|
||||
return player.countUsed('sha')==0;
|
||||
|
@ -2554,6 +2561,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
yaowu_info:'锁定技,当任意一名角色使用红色【杀】对你造成伤害时,该角色回复1点体力或摸一张牌。',
|
||||
"new_jiangchi":"将驰",
|
||||
"new_jiangchi_info":"摸牌阶段结束时,你可以选择一项:1、摸一张牌,若如此做,你本回合内不能使用或打出【杀】。 2、弃置一张牌,若如此做,出牌阶段你使用【杀】无距离限制且你可以额外使用一张【杀】,直到回合结束。",
|
||||
|
||||
standard_2008:"2008版标准包",
|
||||
standard_2013:"2013版标准包",
|
||||
standard_2019:"2019版标准包",
|
||||
},
|
||||
};
|
||||
});
|
||||
|
|
|
@ -4,6 +4,17 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
name:'yijiang',
|
||||
connect:true,
|
||||
connectBanned:['qinmi'],
|
||||
characterSort:{
|
||||
yijiang:{
|
||||
yijiang_2011:['caozhi','re_yujin','zhangchunhua','xin_fazheng','xin_masu','xin_xushu','xusheng','lingtong','wuguotai','chengong','gaoshun'],
|
||||
yijiang_2012:['wangyi','xunyou','zhonghui','madai','liaohua','guanzhang','bulianshi','handang','chengpu','liubiao','old_huaxiong'],
|
||||
yijiang_2013:['manchong','guohuai','caochong','guanping','liufeng','jianyong','yufan','panzhangmazhong','zhuran','xin_liru','fuhuanghou'],
|
||||
yijiang_2014:['hanhaoshihuan','chenqun','caozhen','zhangsong','wuyi','zhoucang','zhuhuan','guyong','sunluban','yj_jushou','caifuren'],
|
||||
yijiang_2015:['caoxiu','caorui','zhongyao','xiahoushi','liuchen','zhangyi','zhuzhi','quancong','sunxiu','gongsunyuan','guotufengji'],
|
||||
yijiang_2016:['guohuanghou','sunziliufang','huanghao','liyan','sundeng','cenhun','zhangrang','liuyu'],
|
||||
yijiang_2017:['xinxianying','jikang','wuxian','qinmi','xuezong','xushi','caiyong','caojie',],
|
||||
},
|
||||
},
|
||||
character:{
|
||||
guohuai:['male','wei',4,['jingce']],
|
||||
zhangchunhua:['female','wei',3,['jueqing','shangshi']],
|
||||
|
@ -714,13 +725,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
logTarget:'player',
|
||||
check:function(event,player){
|
||||
if(get.attitude(player,event.player)>=0) return true;
|
||||
if(player.hasSkill('funan_jiexun')&&player.storage.funan_jiexun==event.player) return true;
|
||||
if(player.hasSkill('funan_jiexun')) return true;
|
||||
if(event.cards.length>1) return true;
|
||||
return get.value(event.cards[0])>get.value(event.respondTo[1]);
|
||||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
if(!player.hasSkill('funan_jiexun')||player.storage.funan_jiexun!=trigger.player){
|
||||
if(!player.hasSkill('funan_jiexun')){
|
||||
trigger.player.gain(trigger.respondTo[1],'gain2');
|
||||
trigger.player.addTempSkill('funan_use');
|
||||
if(!trigger.player.storage.funan_use){
|
||||
|
@ -733,19 +744,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
subSkill:{
|
||||
jiexun:{
|
||||
mark:'character',
|
||||
mark:true,
|
||||
intro:{
|
||||
content:'你发动“复难”时,无须令$获得你使用的牌'
|
||||
content:'你发动“复难”时,无须令其他角色获得你使用的牌'
|
||||
},
|
||||
trigger:{global:'dieAfter'},
|
||||
silent:true,
|
||||
filter:function(event,player){
|
||||
return player.storage.funan_jiexun==event.player;
|
||||
},
|
||||
onremove:true,
|
||||
content:function(){
|
||||
player.removeSkill('funan_jiexun');
|
||||
}
|
||||
},
|
||||
use:{
|
||||
onremove:true,
|
||||
|
@ -812,7 +814,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
'step 3'
|
||||
if(!event.target.countCards('he')){
|
||||
player.removeSkill('jiexun');
|
||||
player.storage.funan_jiexun=event.target;
|
||||
player.addSkill('funan_jiexun');
|
||||
}
|
||||
}
|
||||
|
@ -2419,10 +2420,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
taoluan:{
|
||||
enable:'chooseToUse',
|
||||
filter:function(event,player){
|
||||
return !player.hasSkill('taoluan3')&&player.countCards('he')>0&&!_status.dying.length;
|
||||
return event.type!='wuxie'&&!player.hasSkill('taoluan3')&&player.countCards('he')>0&&!_status.dying.length;
|
||||
},
|
||||
init:function(player){
|
||||
player.storage.taoluan=[];
|
||||
if(!player.storage.taoluan) player.storage.taoluan=[];
|
||||
},
|
||||
chooseButton:{
|
||||
dialog:function(event,player){
|
||||
|
@ -2517,7 +2518,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
},
|
||||
prompt:function(links,player){
|
||||
return '选择'+(get.translation(links[0][3])||'')+get.translation(links[0][2])+'的目标';
|
||||
return '将一张牌当做'+(get.translation(links[0][3])||'')+get.translation(links[0][2])+'使用';
|
||||
}
|
||||
},
|
||||
ai:{
|
||||
|
@ -2539,7 +2540,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
threaten:1.9,
|
||||
},
|
||||
group:['taoluan2','taoluan4']
|
||||
group:['taoluan2','taoluan4','taoluan5']
|
||||
},
|
||||
taoluan2:{
|
||||
trigger:{player:['useCardAfter','respondAfter']},
|
||||
|
@ -2611,24 +2612,19 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
},
|
||||
taoluan5:{
|
||||
/*enable:'chooseToUse',
|
||||
audio:'taoluan',
|
||||
enable:'chooseToUse',
|
||||
prompt:'将一张牌当做无懈可击使用',
|
||||
filter:function(event,player){
|
||||
return event.type=='dying'&&!player.storage.taoluan.contains('tao');
|
||||
return !player.storage.taoluan.contains('wuxie');
|
||||
},
|
||||
onuse:function(result,player){
|
||||
player.storage.taoluan.add('tao');
|
||||
player.storage.taoluan.add('wuxie');
|
||||
},
|
||||
filterCard:true,
|
||||
position:'he',
|
||||
selectCard:1,
|
||||
viewAs:{name:'tao'},
|
||||
ai:{
|
||||
skillTagFilter:function(player){
|
||||
return !player.storage.taoluan.contains('tao');
|
||||
},
|
||||
threaten:1.5,
|
||||
save:true,
|
||||
}*/
|
||||
viewAs:{name:'wuxie'},
|
||||
},
|
||||
taoluan_backup:{},
|
||||
jishe:{
|
||||
|
@ -10138,6 +10134,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
zhichi_info:'锁定技,你的回合外,你每受到一次伤害,任何【杀】或普通锦囊牌均对你无效,直到该回合结束。',
|
||||
zhichi2_info:'智迟已发动',
|
||||
pojun_info:'你每使用【杀】造成一次伤害,可令受到该伤害的角色多摸X张牌,X为该角色当前的体力值(X最多为5),然后该角色将其武将牌翻面。',
|
||||
|
||||
yijiang_2011:'一将成名2011',
|
||||
yijiang_2012:'一将成名2012',
|
||||
yijiang_2013:'一将成名2013',
|
||||
yijiang_2014:'一将成名2014',
|
||||
yijiang_2015:'一将成名2015',
|
||||
yijiang_2016:'原创设计2016',
|
||||
yijiang_2017:'原创设计2017',
|
||||
},
|
||||
};
|
||||
});
|
||||
|
|
Loading…
Reference in New Issue