noname/character/mobile.js

4740 lines
158 KiB
JavaScript
Raw Normal View History

2019-07-17 08:25:58 +00:00
'use strict';
game.import('character',function(lib,game,ui,get,ai,_status){
return {
name:'mobile',
connectBanned:['miheng'],
connect:true,
2019-08-23 15:03:21 +00:00
characterSort:{
mobile:{
mobile_default:["miheng","taoqian","lingcao","sunru","lifeng","zhuling","liuye","zhaotongzhaoguang","majun","simazhao","wangyuanji","pangdegong","shenpei","hujinding","zhangyì","jiakui","yangbiao","chendeng","dongcheng","yangyi","dengzhi","zhengxuan"],
Our Song. 马上就要高考了,这次的版本更新应该是考前的最后一次更新了。 真的很感谢这段时间以来身边的大家。身边的老师和同学也好,Key圈的各位键子们也好,无名杀玩家们也好,正是有了你们的陪伴和支持,我才能够坚持下来,走到今天的这一步。 祝愿包括我自己在内的所有考生高考顺利,金榜题名吧! 最后,在这里复制粘贴一下《Angel Beats!》TV版的ED,某种意义上也是仲村ゆり的角色歌的《Brave Song》的歌词: ``` いつもひとりで歩いてた 振り返るとみんなは遠く 一路走来形单影只 转身回首望去 大家已经远去 それでもあたしは歩いた それが強さだった 即使如此我依然前行 这正是我的坚强 もう何も恐くない そう呟いてみせる 经历 使我无所畏惧 再多冷漠也是一句叹息 いつか人は一人になって 思い出の中に生きてくだけ 总有一天人将学会独立 在回忆中寻找自己的影子 孤独さえ愛し笑ってられるように あたしは戦うんだ 为了那笑容下与孤独作伴的勇气 我决定战斗到底 涙なんて見せないんだ 我已不再哭泣 いつもひとりで歩いてた 行く先には崖が待ってた 一路走来形单影只 而前方等着的却是山崖 それでもあたしは歩いた 強さの証明のため 即使如此我依然前行 为了证明这份坚强 吹き付ける強い風 汗でシャツが張りつく 强风吹过 汗水将衣服粘湿 いつか忘れてしまえるなら 生きることそれはたやすいもの 若有一天将一切尽数忘掉的话 生存其实并不困难 忘却の彼方へと落ちていくなら それは逃げることだろう 而若坠落在那忘却的彼端的话 那便成了逃避吧 生きた意味すら消えるだろう 就连生存的意义也会消失殆尽吧 風はやがて凪いでた 汗も乾いて 风终于停息 汗也干了 お腹が空いてきたな 何かあったっけ 肚子也饿了啊 有什么可吃的吗 賑やかな声と共にいい匂いがやってきた 同熙攘的声音一道 喷香的味道也传了过来 いつもひとりで歩いてた みんなが待っていた 一路走来形单影只 大家在前方等着我 いつか人は一人になって 思い出の中に生きてくだけ 总有一天人将学会独立 在回忆中寻找自己的影子 それでもいい 安らかなこの気持ちは それを仲間と呼ぶんだ 这倒也没什么 这种安宁的感情 称之为伙伴 いつかみんなと過ごした日々も忘れてどこかで生きてるよ 有一天我会忘掉和大家在一起度过的日子而生活在他乡 その時はもう強くなんかないよ 到了那时 我不会再坚强了 普通の女の子の弱さで涙を零すよ 像普通的女孩一样流下柔弱的泪水 ```
2020-07-03 05:22:31 +00:00
mobile_yijiang:["yj_zhanghe","yj_zhangliao","yj_xuhuang","yj_ganning"],
mobile_others:["re_jikang","old_bulianshi","old_yuanshu","re_wangyun","re_baosanniang","re_weiwenzhugezhi","re_zhanggong","re_xugong","xin_yuanshao","re_liushan","xin_xiahoudun","re_sp_zhugeliang","re_heqi","re_guanqiujian","re_pangtong","old_liuzan","xin_chengpu","re_sunjian"],
2020-02-23 05:45:11 +00:00
mobile_sunben:["re_sunben"],
2019-08-23 15:03:21 +00:00
},
},
2019-07-17 08:25:58 +00:00
character:{
Our Song. 马上就要高考了,这次的版本更新应该是考前的最后一次更新了。 真的很感谢这段时间以来身边的大家。身边的老师和同学也好,Key圈的各位键子们也好,无名杀玩家们也好,正是有了你们的陪伴和支持,我才能够坚持下来,走到今天的这一步。 祝愿包括我自己在内的所有考生高考顺利,金榜题名吧! 最后,在这里复制粘贴一下《Angel Beats!》TV版的ED,某种意义上也是仲村ゆり的角色歌的《Brave Song》的歌词: ``` いつもひとりで歩いてた 振り返るとみんなは遠く 一路走来形单影只 转身回首望去 大家已经远去 それでもあたしは歩いた それが強さだった 即使如此我依然前行 这正是我的坚强 もう何も恐くない そう呟いてみせる 经历 使我无所畏惧 再多冷漠也是一句叹息 いつか人は一人になって 思い出の中に生きてくだけ 总有一天人将学会独立 在回忆中寻找自己的影子 孤独さえ愛し笑ってられるように あたしは戦うんだ 为了那笑容下与孤独作伴的勇气 我决定战斗到底 涙なんて見せないんだ 我已不再哭泣 いつもひとりで歩いてた 行く先には崖が待ってた 一路走来形单影只 而前方等着的却是山崖 それでもあたしは歩いた 強さの証明のため 即使如此我依然前行 为了证明这份坚强 吹き付ける強い風 汗でシャツが張りつく 强风吹过 汗水将衣服粘湿 いつか忘れてしまえるなら 生きることそれはたやすいもの 若有一天将一切尽数忘掉的话 生存其实并不困难 忘却の彼方へと落ちていくなら それは逃げることだろう 而若坠落在那忘却的彼端的话 那便成了逃避吧 生きた意味すら消えるだろう 就连生存的意义也会消失殆尽吧 風はやがて凪いでた 汗も乾いて 风终于停息 汗也干了 お腹が空いてきたな 何かあったっけ 肚子也饿了啊 有什么可吃的吗 賑やかな声と共にいい匂いがやってきた 同熙攘的声音一道 喷香的味道也传了过来 いつもひとりで歩いてた みんなが待っていた 一路走来形单影只 大家在前方等着我 いつか人は一人になって 思い出の中に生きてくだけ 总有一天人将学会独立 在回忆中寻找自己的影子 それでもいい 安らかなこの気持ちは それを仲間と呼ぶんだ 这倒也没什么 这种安宁的感情 称之为伙伴 いつかみんなと過ごした日々も忘れてどこかで生きてるよ 有一天我会忘掉和大家在一起度过的日子而生活在他乡 その時はもう強くなんかないよ 到了那时 我不会再坚强了 普通の女の子の弱さで涙を零すよ 像普通的女孩一样流下柔弱的泪水 ```
2020-07-03 05:22:31 +00:00
yj_zhanghe:['male','qun',4,['zhilve']],
yj_xuhuang:['male','qun',4,['xhzhiyan']],
re_sunjian:['male','wu',4,['gzyinghun','repolu']],
2020-06-21 05:28:27 +00:00
zhengxuan:['male','qun',3,['zhengjing']],
2020-06-20 04:53:15 +00:00
dengzhi:['male','shu',3,['jimeng','shuaiyan']],
xin_chengpu:['male','wu',4,['relihuo','chunlao']],
2020-05-23 04:37:37 +00:00
yangyi:['male','shu',3,['duoduan','gongsun']],
dongcheng:['male','qun',4,['chengzhao']],
2020-04-25 05:40:05 +00:00
re_pangtong:['male','shu',3,['xinlianhuan','niepan'],[]],
re_guanqiujian:['male','wei',4,['rezhengrong','rehongju']],
2020-04-18 05:32:41 +00:00
chendeng:['male','qun',3,['zhouxuan','fengji']],
re_heqi:['male','wu',4,['reqizhou','reshanxi']],
yangbiao:['male','qun',3,['zhaohan','rangjie','yizheng']],
re_sp_zhugeliang:["male","shu",3,["bazhen","rehuoji","rekanpo"],[]],
2020-03-14 11:25:06 +00:00
xin_xiahoudun:['male','wei',4,['reganglie','xinqingjian']],
2020-03-13 10:02:18 +00:00
zhangyì:['male','shu',4,['zhiyi']],
jiakui:['male','wei',3,['zhongzuo','wanlan']],
2019-07-17 08:25:58 +00:00
re_jikang:["male","wei",3,["new_qingxian","new_juexiang"]],
old_bulianshi:['female','wu',3,['anxu','zhuiyi']],
miheng:['male','qun',3,['kuangcai','shejian']],
taoqian:['male','qun',3,['zhaohuo','yixiang','yirang']],
2020-05-23 04:37:37 +00:00
old_liuzan:['male','wu',4,['fenyin']],lingcao:['male','wu',4,['dujin']],
2019-07-17 08:25:58 +00:00
sunru:['female','wu',3,['yingjian','shixin']],
lifeng:['male','shu',3,['tunchu','shuliang']],
2019-08-30 15:02:50 +00:00
zhuling:['male','wei',4,['xinzhanyi']],
2019-07-17 08:25:58 +00:00
liuye:['male','wei',3,['polu','choulve']],
zhaotongzhaoguang:["male","shu",4,["yizan_use","xinfu_longyuan"],[]],
2020-02-06 11:51:46 +00:00
majun:["male","wei",3,["xinfu_jingxie1","qiaosi"],[]],
2019-07-17 08:25:58 +00:00
simazhao:["male","wei",3,["xinfu_daigong","xinfu_zhaoxin"],[]],
wangyuanji:["female","wei",3,["xinfu_qianchong","xinfu_shangjian"],[]],
pangdegong:["male","qun",3,["xinfu_pingcai","xinfu_pdgyingshi"],[]],
2019-08-24 15:41:12 +00:00
old_yuanshu:['male','qun',4,['xinyongsi','yjixi']],
2019-08-30 15:02:50 +00:00
shenpei:["male","qun","2/3",["shouye","liezhi"],[]],
2019-10-09 14:31:43 +00:00
re_wangyun:['male','qun',3,['relianji','remoucheng']],
2019-11-23 12:41:07 +00:00
re_baosanniang:['female','shu',3,['meiyong','rexushen','rezhennan']],
2019-12-25 05:21:37 +00:00
hujinding:['female','shu','2/6',['renshi','wuyuan','huaizi']],
2020-01-31 09:50:48 +00:00
re_zhanggong:['male','wei',3,['reqianxin','xinfu_zhenxing']],
re_xugong:['male','wu',3,['rebiaozhao','yechou']],
re_weiwenzhugezhi:['male','wu',4,['refuhai']],
2020-02-23 05:45:11 +00:00
2020-03-05 13:10:37 +00:00
xin_yuanshao:['male','qun',4,['reluanji','xueyi'],['zhu']],
re_liushan:['male','shu',3,['xiangle','refangquan','ruoyu'],['zhu']],
2020-02-23 05:45:11 +00:00
re_sunben:['male','wu',4,['jiang','rehunzi','zhiba'],['zhu']],
2019-08-30 15:02:50 +00:00
},
characterIntro:{
2020-06-21 05:28:27 +00:00
zhengxuan:'郑玄127年200年字康成。北海郡高密县今山东省高密市人。东汉末年儒家学者、经学大师。郑玄曾入太学攻《京氏易》、《公羊春秋》及《三统历》、《九章算术》又从张恭祖学《古文尚书》、《周礼》和《左传》等最后从马融学古文经。游学归里之后复客耕东莱聚徒授课弟子达数千人家贫好学终为大儒。党锢之祸起遭禁锢杜门注疏潜心著述。晚年守节不仕却遭逼迫从军最终病逝于元城年七十四。郑玄治学以古文经学为主兼采今文经学。他遍注儒家经典以毕生精力整理古代文化遗产使经学进入了一个“小统一时代”。著有《天文七政论》、《中侯》等书共百万余言世称“郑学”为汉代经学的集大成者。唐贞观年间列郑玄于二十二“先师”之列配享孔庙。宋代时被追封为高密伯。后人建有郑公祠以纪念。',
2020-06-20 04:53:15 +00:00
dengzhi:'邓芝178年251年字伯苗。义阳郡新野县今河南新野人。东汉名将邓禹之后三国时期蜀汉重臣。邓芝早年曾被预言能位至大将后被刘备任为郫令升迁为广汉太守。因任官公廉且有治绩被征入朝为尚书。刘备逝世后奉命出使吴国成功修复两国关系并深为吴大帝孙权所赏识。建兴六年228年丞相诸葛亮策划北伐命邓芝与大将赵云佯攻郿城以吸引魏国曹真军主力。建兴十二年234年迁前军师、前将军领兖州刺史封阳武亭侯不久督领江州。延熙六年243年迁车骑将军后授假节。又率军平定涪陵叛乱。延熙十四年251年邓芝病逝。邓芝性格正直、简单不刻意修饰情绪。他为将二十多年赏罚明断体恤士卒。身上的衣食取自官府从未经营过私产妻儿甚至还有忍饥挨饿之时死时家中也没有多余财物。',
2020-05-23 04:37:37 +00:00
yangyi:'杨仪235年字威公襄阳今湖北襄阳三国时期蜀汉官员。最初为荆州刺史傅群的主簿后投奔关羽任为功曹。关羽遣其至成都大受刘备赞赏擢为尚书。因与尚书令刘巴不和调为弘农太守。建兴三年225年任丞相参军此后一直跟随诸葛亮战斗。亮卒他部署安全退军。诸葛亮在生前定蒋琬继己任杨仪仅拜中军师。建兴十三年235年因多出怨言被削职流放至汉嘉郡。但杨仪仍不自省又上书诽谤言辞激烈最后下狱自杀身亡。',
dongcheng:'董承(?~200年字号不详冀州河间人今河北献县人。东汉末年外戚大臣汉灵帝母亲董太后侄子汉献帝嫔妃董贵人之父。初从西凉军为董卓女婿牛辅部曲。护卫汉献帝刘协从长安东归洛阳拜为卫将军受封列侯。建安四年199年拜车骑将军。自称领受汉献帝衣带诏联合刘备、种辑、吴子兰、王子服、吴硕等人密谋诛杀曹操。五年正月图谋泄露董承诸人及董贵人全部遇害。',
2020-04-18 05:32:41 +00:00
chendeng:'陈登163—201字元龙下邳淮浦今江苏涟水西人。东汉末年将领、官员。沛相陈珪之子。为人爽朗性格沈静智谋过人少年时有扶世济民之志并且博览群书学识渊博。二十五岁时举孝廉任东阳县长。虽然年轻但他能够体察民情抚弱育孤深得百姓敬重。后来徐州牧陶谦提拔他为典农校尉主管一州农业生产。他亲自考察徐州的土壤状况开发水利发展农田灌溉使汉末迭遭破坏的徐州农业得到一定程度的恢复百姓们安居乐业“秔稻丰积”。建安初奉使赴许向曹操献灭吕布之策被授广陵太守。以灭吕布有功加伏波将军。又迁东城太守。年三十九卒。其子陈肃魏文帝时追陈登之功为郎中。',
yangbiao:'杨彪142年225年字文先。弘农郡华阴县今陕西华阴人。东汉末年名臣太尉杨赐之子、名士杨修之父。杨彪少年时受家学熏陶初举孝廉、茂才。其后征拜为议郎参与续写《东观汉记》。任京兆尹时揭发黄门令王甫的贪赃行为使其被定罪诛杀。累任侍中、五官中郎将、卫尉等职。汉献帝时遍历三公司空、司徒、太尉之职。权臣董卓意图迁都时他据理力争。献帝东迁时杨彪尽节护主。曹操挟献帝定都许县后将杨彪下狱获释后又任太常。他见汉室衰微便诈称脚疾不理世事。曹魏建立后拒绝出任太尉改光禄大夫待以客礼。黄初六年225年杨彪去世年八十四。其著作现仅存《答曹公书》一篇。',
2020-03-13 10:02:18 +00:00
zhangyì:'张翼264年字伯恭益州犍为郡武阳县人。三国时期蜀汉将领。历任梓潼、广汉、蜀郡三郡太守出任庲降都督后随诸葛亮和姜维北伐官至左车骑将军领冀州刺史。初封关内侯进爵都亭侯。蜀汉灭亡后魏将钟会密谋造反成都大乱张翼亦为乱兵所杀。张翼是蜀汉第三任庲降都督由于执法严厉不得南夷欢心。在北伐上张翼认为国小民疲不应滥用武力是蜀汉朝廷当时极少敢当朝和姜维争辩北伐问题的大臣。',
jiakui:'贾逵174年—228年本名贾衢字梁道河东襄陵人今山西临汾县。汉末三国时期魏国名臣西晋开国功臣贾充父亲。初为并州郡吏迁渑池县令拜弘农太守历仕曹操、曹丕、曹叡三世是曹魏政权中具有军政才干的人物终其一生为魏国统一事业作出卓越贡献。担任豫州刺史期间兴修水利凿通运河二百余里时称“贾侯渠”便利民生。随同曹丕伐吴进封阳里亭侯加号建威将军。石亭之战率军救出曹休。太和二年去世赠本官谥号为肃《唐会要》将其尊为魏晋八君子之一。',
2019-08-30 15:02:50 +00:00
shenpei:'审配204年字正南魏郡阴安今河北清丰北人。为人正直 袁绍领冀州,审配被委以腹心之任,并总幕府。河北平定,袁绍以审配、逢纪统军事,审配恃其强盛,力主与曹操决战。曾率领弓弩手大破曹军于官渡。官渡战败,审配二子被俘,反因此受谮见疑,幸得逢纪力保。袁绍病死,审配等矫诏立袁尚为嗣,导致兄弟相争,被曹操各个击破。曹操围邺,审配死守数月,终城破被擒,拒不投降,慷慨受死。',
2019-12-25 05:21:37 +00:00
hujinding:'胡金定,女,传说中关羽之妻。关索之母,配偶关羽,出处《花关索传》和元代《三国志评话》民间传说人物。',
2019-08-30 15:02:50 +00:00
},
card:{
pss_paper:{
type:'pss',
2019-08-31 05:48:22 +00:00
fullskin:true,
2020-01-22 06:04:55 +00:00
//derivation:'shenpei',
2019-08-30 15:02:50 +00:00
},
pss_scissor:{
type:'pss',
2019-08-31 05:48:22 +00:00
fullskin:true,
2020-01-22 06:04:55 +00:00
//derivation:'shenpei',
2019-08-30 15:02:50 +00:00
},
pss_stone:{
type:'pss',
2019-08-31 05:48:22 +00:00
fullskin:true,
2020-01-22 06:04:55 +00:00
//derivation:'shenpei',
2019-08-31 05:48:22 +00:00
},
db_atk1:{
type:'db_atk',
fullimage:true,
2020-01-22 06:04:55 +00:00
//derivation:'shenpei',
2019-08-31 05:48:22 +00:00
},
db_atk2:{
type:'db_atk',
fullimage:true,
2020-01-22 06:04:55 +00:00
//derivation:'shenpei',
2019-08-31 05:48:22 +00:00
},
db_def1:{
type:'db_def',
fullimage:true,
2020-01-22 06:04:55 +00:00
//derivation:'shenpei',
2019-08-31 05:48:22 +00:00
},
db_def2:{
type:'db_def',
fullimage:true,
2020-01-22 06:04:55 +00:00
//derivation:'shenpei',
2019-08-30 15:02:50 +00:00
},
2020-03-25 12:27:23 +00:00
ly_piliche:{
fullskin:true,
vanish:true,
derivation:'liuye',
type:'equip',
subtype:'equip1',
distance:{attackFrom:-8},
skills:['ly_piliche'],
destroy:'polu'
},
"wolong_card":{
type:"takaramono",
fullskin:true,
//derivation:"pangdegong",
},
"fengchu_card":{
type:"takaramono",
fullskin:true,
//derivation:"pangdegong",
},
"xuanjian_card":{
fullskin:true,
type:"takaramono",
//derivation:"pangdegong",
},
"shuijing_card":{
fullskin:true,
type:"takaramono",
//derivation:"pangdegong",
},
"rewrite_bagua":{
derivation:"majun",
//cardimage:"bagua",
fullskin:true,
type:"equip",
subtype:"equip2",
ai:{
basic:{
equipValue:7.5,
},
},
skills:["rw_bagua_skill"],
},
"rewrite_baiyin":{
derivation:"majun",
fullskin:true,
//cardimage:"baiyin",
type:"equip",
subtype:"equip2",
filterLose:function(card,player){
if(player.hasSkillTag('unequip2')) return false;
return true;
},
2020-03-27 05:30:48 +00:00
loseDelay:false,
onLose:function(){
player.logSkill('rw_baiyin_skill');
var next=game.createEvent('rw_baiyin_recover');
event.next.remove(next);
event.getParent().after.push(next);
next.player=player;
next.setContent(function(){
player.draw(2);
player.recover();
});
2020-03-25 12:27:23 +00:00
},
skills:["rw_baiyin_skill"],
tag:{
recover:1,
},
ai:{
order:9.5,
equipValue:function (card,player){
if(player.hp==player.maxHp) return 5;
if(player.countCards('h','rewrite_baiyin')) return 6;
return 0;
},
basic:{
equipValue:5,
},
},
},
"rewrite_lanyinjia":{
derivation:"majun",
//cardimage:"lanyinjia",
fullskin:true,
type:"equip",
subtype:"equip2",
skills:["rw_lanyinjia","lanyinjia2"],
ai:{
equipValue:6,
basic:{
equipValue:1,
},
},
},
"rewrite_renwang":{
derivation:"majun",
//cardimage:"renwang",
fullskin:true,
type:"equip",
subtype:"equip2",
skills:["rw_renwang_skill"],
ai:{
basic:{
equipValue:7.5,
},
},
},
"rewrite_tengjia":{
derivation:"majun",
//cardimage:"tengjia",
fullskin:true,
type:"equip",
subtype:"equip2",
cardnature:"fire",
ai:{
equipValue:function (card,player){
if(player.hasSkillTag('maixie')&&player.hp>1) return 0;
if(player.hasSkillTag('noDirectDamage')) return 10;
if(get.damageEffect(player,player,player,'fire')>=0) return 10;
var num=3-game.countPlayer(function(current){
return get.attitude(current,player)<0;
});
if(player.hp==1) num+=4;
if(player.hp==2) num+=1;
if(player.hp==3) num--;
if(player.hp>3) num-=4;
return num;
},
basic:{
equipValue:3,
},
},
skills:["rw_tengjia1","rw_tengjia2","rw_tengjia3","rw_tengjia4"],
},
"rewrite_zhuge":{
derivation:"majun",
//cardimage:"zhuge",
distance:{
attackFrom:-2,
},
fullskin:true,
type:"equip",
subtype:"equip1",
ai:{
equipValue:function (card,player){
if(!game.hasPlayer(function(current){
return player.canUse('sha',current)&&get.effect(current,{name:'sha'},player,player)>0;
})){
return 1;
}
if(player.hasSha()&&_status.currentPhase==player){
if(player.getEquip('zhuge')||player.getCardUsable('sha')==0){
return 10;
}
}
var num=player.countCards('h','sha');
if(num>1) return 6+num;
return 3+num;
},
basic:{
equipValue:5,
},
tag:{
valueswap:1,
},
},
2020-03-27 05:30:48 +00:00
skills:["rw_zhuge_skill"],
2020-03-25 12:27:23 +00:00
},
2019-07-17 08:25:58 +00:00
},
2019-08-24 15:41:12 +00:00
characterFilter:{},
2019-08-30 15:02:50 +00:00
skill:{
Our Song. 马上就要高考了,这次的版本更新应该是考前的最后一次更新了。 真的很感谢这段时间以来身边的大家。身边的老师和同学也好,Key圈的各位键子们也好,无名杀玩家们也好,正是有了你们的陪伴和支持,我才能够坚持下来,走到今天的这一步。 祝愿包括我自己在内的所有考生高考顺利,金榜题名吧! 最后,在这里复制粘贴一下《Angel Beats!》TV版的ED,某种意义上也是仲村ゆり的角色歌的《Brave Song》的歌词: ``` いつもひとりで歩いてた 振り返るとみんなは遠く 一路走来形单影只 转身回首望去 大家已经远去 それでもあたしは歩いた それが強さだった 即使如此我依然前行 这正是我的坚强 もう何も恐くない そう呟いてみせる 经历 使我无所畏惧 再多冷漠也是一句叹息 いつか人は一人になって 思い出の中に生きてくだけ 总有一天人将学会独立 在回忆中寻找自己的影子 孤独さえ愛し笑ってられるように あたしは戦うんだ 为了那笑容下与孤独作伴的勇气 我决定战斗到底 涙なんて見せないんだ 我已不再哭泣 いつもひとりで歩いてた 行く先には崖が待ってた 一路走来形单影只 而前方等着的却是山崖 それでもあたしは歩いた 強さの証明のため 即使如此我依然前行 为了证明这份坚强 吹き付ける強い風 汗でシャツが張りつく 强风吹过 汗水将衣服粘湿 いつか忘れてしまえるなら 生きることそれはたやすいもの 若有一天将一切尽数忘掉的话 生存其实并不困难 忘却の彼方へと落ちていくなら それは逃げることだろう 而若坠落在那忘却的彼端的话 那便成了逃避吧 生きた意味すら消えるだろう 就连生存的意义也会消失殆尽吧 風はやがて凪いでた 汗も乾いて 风终于停息 汗也干了 お腹が空いてきたな 何かあったっけ 肚子也饿了啊 有什么可吃的吗 賑やかな声と共にいい匂いがやってきた 同熙攘的声音一道 喷香的味道也传了过来 いつもひとりで歩いてた みんなが待っていた 一路走来形单影只 大家在前方等着我 いつか人は一人になって 思い出の中に生きてくだけ 总有一天人将学会独立 在回忆中寻找自己的影子 それでもいい 安らかなこの気持ちは それを仲間と呼ぶんだ 这倒也没什么 这种安宁的感情 称之为伙伴 いつかみんなと過ごした日々も忘れてどこかで生きてるよ 有一天我会忘掉和大家在一起度过的日子而生活在他乡 その時はもう強くなんかないよ 到了那时 我不会再坚强了 普通の女の子の弱さで涙を零すよ 像普通的女孩一样流下柔弱的泪水 ```
2020-07-03 05:22:31 +00:00
//一 将 成 名
zhilve:{
trigger:{player:'phaseZhunbeiBegin'},
forced:true,
content:function(){
'step 0'
if(!player.canMoveCard()) event._result={index:1};
else player.chooseControl().set('choiceList',[
'移动场上的一张牌',
'本回合的摸牌阶段多摸一张牌且第一张杀无距离次数限制',
]).set('ai',function(){return 1});
'step 1'
if(result.index==1){
player.addTempSkill('zhilve_yingzi');
if(!player.getHistory('useCard',function(card){
return card.card.name=='sha';
}).length) player.addTempSkill('zhilve_xiandeng');
event.finish();
}
else player.moveCard(true);
'step 2'
if(result.position=='e') player.loseHp();
else player.addTempSkill('zhilve_dis');
},
subSkill:{
dis:{
mod:{
maxHandcard:function(player,num){
return num-1;
},
},
},
yingzi:{
trigger:{player:'phaseDrawBegin2'},
popup:false,
forced:true,
filter:function(event,player){
return !event.numFixed;
},
content:function(){trigger.num++},
},
xiandeng:{
mod:{
targetInRange:function(card,player){
if(card.name=='sha') return true;
},
},
trigger:{player:'useCard1'},
forced:true,
popup:false,
firstDo:true,
filter:function(event,player){
return event.card.name=='sha';
},
content:function(){
player.removeSkill(event.name);
if(trigger.addCount!==false){
trigger.addCount=false;
var stat=player.getStat('card');
if(stat&&stat.sha) stat.sha--;
}
},
},
},
},
xhzhiyan:{
enable:'phaseUse',
filter:function(event,player){
return player.countCards('h')!=player.maxHp;
},
filterCard:true,
selectCard:function(){
var player=_status.event.player;
var num=Math.max(0,player.countCards('h')-player.maxHp);
return [num,num];
},
check:function(card){
var player=_status.event.player;
if(player.getUseValue(card)<=0&&game.hasPlayer(function(current){
return current!=player&&get.value(card,current)*get.attitude(player,current)>0;
})) return 1;
return 0;
},
content:function(){
'step 0'
if(!cards.length){
player.draw(player.maxHp-player.countCards('h'));
player.addTempSkill('zishou2');
event.finish();
}
else{
cards=cards.filterInD('d');
if(cards.length) player.chooseButton(['是否将其中的一张牌交给一名其他角色?',cards]).set('',function(button){
var player=_status.event.player;
if(game.hasPlayer(function(current){
return current!=player&&get.value(button.link,current)*get.attitude(player,current)>0;
})) return Math.abs(get.value(button.link));
return 0;
});
else event.finish();
}
'step 1'
if(result.bool){
event.card=result.links[0];
player.chooseTarget(true,lib.filter.notMe,'选择一名其他角色获得'+get.translation(event.card)).set('ai',function(target){
return get.value(_status.event.getParent().card,target)*get.attitude(_status.event.player,target);
});
}
else event.finish();
'step 2'
var target=result.targets[0];
player.line(target,'green');
target.gain(card,'gain2','log');
},
ai:{
order:function(obj,player){
if(player.countCards('h')>player.maxHp) return 10;
return 0.5;
},
result:{
player:1,
},
},
},
2020-06-21 05:28:27 +00:00
//水 果 忍 者
zhengjing_guanju:{audio:true},
zhengjing:{
audio:2,
enable:'phaseUse',
usable:1,
filter:function(event,player){
return !player.hasSkill('zhengjing3');
},
content:function(){
"step 0"
//game.trySkillAudio('zhengjing_guanju',player);
if(_status.connectMode) event.time=lib.configOL.choose_timeout;
var cards=[];
var names=[];
while(true){
var card=get.cardPile(function(carde){
return carde.name!='du'&&!names.contains(carde.name);
});
if(card){
cards.push(card);
names.push(card.name);
if(cards.length==3&&!get.isLuckyStar(player)&&Math.random()<0.33) break;
if(cards.length==4&&!get.isLuckyStar(player)&&Math.random()<0.5) break;
if(cards.length==5) break;
2020-06-21 05:28:27 +00:00
if(cards.length>=6) break;
}
else break;
};
event.cards=cards;
if(!cards.length){event.finish();return;};
names.push('du');
var names2=names.slice(0);
for(var i=0;i<4;i++){
names=names.concat(names2);
}
names.randomSort();
event.videoId=lib.status.videoId++;
if(player.isUnderControl()){
game.modeSwapPlayer(player);
}
var switchToAuto=function(){
names.remove('du');
game.pause();
game.countChoose();
setTimeout(function(){
_status.imchoosing=false;
event._result={
bool:true,
links:names.slice(0),
};
if(event.dialog) event.dialog.close();
if(event.control) event.control.close();
game.resume();
},5000);
};
var createDialog=function(player,id){
if(_status.connectMode) lib.configOL.choose_timeout='30';
if(player==game.me) return;
var str=get.translation(player)+'正在整理经书...<br>';
ui.create.dialog(str).videoId=id;
};
var chooseButton=function(list){
var event=_status.event;
event.settleed=false;
event.finishedx=[];
event.map={};
event.zhengjing=list;
event.zhengjing_nodes=[];
event.map=[];
event.dialog=ui.create.dialog('forcebutton','hidden');
event.dialog.textPrompt=event.dialog.addText('及时点击卡牌,但不要点到毒了!');
event.switchToAuto=function(){
event._result={
bool:true,
links:event.finishedx.slice(0),
};
event.dialog.close();
game.resume();
_status.imchoosing=false;
};
event.dialog.classList.add('fixed');
event.dialog.classList.add('scroll1');
event.dialog.classList.add('scroll2');
event.dialog.classList.add('fullwidth');
event.dialog.classList.add('fullheight');
event.dialog.classList.add('noupdate');
event.dialog.open();
event.settle=function(du){
if(event.settleed) return;
event.settleed=true;
if(du){
if(lib.config.background_speak) game.playAudio('skill','zhengjing_boom');
event.dialog.textPrompt.innerHTML=' <br>叫你别点毒你非得点 这下翻车了吧';
}
else {
if(lib.config.background_speak) game.playAudio('skill','zhengjing_finish');
event.dialog.textPrompt.innerHTML=' <br>整理经典结束!共整理出'+get.cnNumber(event.finishedx.length)+'份经典';
2020-06-21 05:28:27 +00:00
}
while(event.zhengjing_nodes.length){
event.zhengjing_nodes.shift().delete();
}
setTimeout(function(){
event.switchToAuto();
},1000);
};
var click=function(){
var name=this.name;
if(name=='du'){
event.zhengjing.length=0;
event.settle(true);
}
else{
if(lib.config.background_speak) game.playAudio('skill','zhengjing_click');
if(!event.map[name]) event.map[name]=0;
event.map[name]++;
if(event.map[name]>1) event.finishedx.add(name);
}
event.zhengjing_nodes.remove(this);
this.style.transition='all 0.5s';
this.style.transform='scale(1.2)';
this.delete();
};
var addNode=function(){
if(event.zhengjing.length){
var card=ui.create.card(ui.special,'noclick',true);
card.init(['','',event.zhengjing.shift()]);
card.addEventListener(lib.config.touchscreen?'touchend':'click',click);
event.zhengjing_nodes.push(card);
card.style.position='absolute';
var rand1=Math.round(Math.random()*100);
var rand2=Math.round(Math.random()*100);
var rand3=Math.round(Math.random()*40)-20;
card.style.left='calc('+rand1+'% - '+rand1+'px)';
card.style.top='calc('+rand2+'% - '+rand2+'px)';
card.style.transform='scale(0.8) rotate('+rand3+'deg)';
card.style.opacity=0;
event.dialog.appendChild(card);
ui.refresh(card);
card.style.opacity=1;
card.style.transform='scale(1) rotate('+rand3+'deg)';
}
if(event.zhengjing_nodes.length>(event.zhengjing.length>0?2:0)) event.zhengjing_nodes.shift().delete();
if(event.zhengjing.length||event.zhengjing_nodes.length) setTimeout(function(){
addNode();
},800);
else event.settle();
};
game.pause();
game.countChoose();
addNode();
};
//event.switchToAuto=switchToAuto;
game.broadcastAll(createDialog,player,event.videoId);
if(event.isMine()){
chooseButton(names);
}
else if(event.isOnline()){
event.player.send(chooseButton,names);
event.player.wait();
game.pause();
}
else{
switchToAuto();
}
"step 1"
game.broadcastAll(function(id,time){
if(_status.connectMode) lib.configOL.choose_timeout=time;
var dialog=get.idDialog(id);
if(dialog){
dialog.close();
}
},event.videoId,event.time);
var result=event.result||result;
for(var i=0;i<cards.length;i++){
//if(cards.length==1) break;
2020-06-21 05:28:27 +00:00
if(!result.links.contains(cards[i].name)) cards.splice(i--,1);
}
if(cards.length) player.showCards(cards,get.translation(player)+'整理出了以下经典');
else{
game.log(player,'并没有整理出经典');
player.popup('杯具');
event.finish();
}
2020-06-21 05:28:27 +00:00
"step 2"
player.chooseTarget(true,'将整理出的经典置于一名角色的武将牌上').set('ai',function(target){
if(target.hasSkill('xinfu_pdgyingshi')) return 0;
var player=_status.event.player;
var cards=_status.event.getParent().cards;
var att=get.attitude(player,target);
if(cards.length==1) return -att;
if(player==target) att/=2;
if(target.hasSkill('pingkou')) att*=1.4;
att*=(1+target.countCards('j')/2);
return att;
});
"step 3"
if(result.bool){
var target=result.targets[0];
player.line(target,'thunder');
target.addSkill('zhengjing2');
target.markAuto('zhengjing2',cards);
game.cardsGotoSpecial(cards);
game.log(player,'将',cards,'置于了',target,'的武将牌上');
}
},
ai:{
order:10,
result:{player:1},
threaten:3.2,
}
},
//恁就是仲村由理?
zhengjing2:{
trigger:{player:'phaseZhunbeiBegin'},
forced:true,
intro:{content:'cards'},
content:function(){
player.gain(player.storage.zhengjing2,'gain2','log','fromStorage');
delete player.storage.zhengjing2;
player.removeSkill('zhengjing2');
player.addTempSkill('zhengjing3');
player.skip('phaseJudge');
player.skip('phaseDraw');
},
},
zhengjing3:{},
//邓芝
2020-06-20 04:53:15 +00:00
jimeng:{
audio:2,
trigger:{player:'phaseUseBegin'},
direct:true,
filter:function(event,player){
return game.hasPlayer(function(current){
return current.countGainableCards(player,'he')>0;
})
},
content:function(){
'step 0'
player.chooseTarget(get.prompt2('jimeng'),function(card,player,target){
return target!=player&&target.countGainableCards(player,'he')>0;
}).set('ai',function(target){
var player=_status.event.player;
if(player.hp>1&&get.attitude(player,target)<2) return 0;
return get.effect(target,{name:'shunshou'},player,player);
});
'step 1'
if(result.bool){
var target=result.targets[0];
event.target=target;
player.logSkill('jimeng',target);
player.gainPlayerCard(target,'he',true);
}
else event.finish();
'step 2'
var hs=player.getCards('he');
if(player.hp>0&&hs.length){
if(hs.length<=player.hp) event._result={bool:true,cards:hs};
else player.chooseCard(player.hp,true,'交给'+get.translation(target)+get.cnNumber(player.hp)+'张牌','he',true);
}
else event.finish();
'step 3'
target.gain(result.cards,player,'giveAuto');
},
},
shuaiyan:{
audio:2,
trigger:{player:'phaseDiscardBegin'},
filter:function(event,player){
return player.countCards('h')>1;
},
check:function(event,player){
return game.hasPlayer(function(current){
return current!=player&&current.countCards('he')&&lib.skill.shuaiyan.check2(current,player);
});
},
check2:function(target,player){
if(get.itemtype(player)!='player') player=_status.event.player;
return -get.attitude(player,target)/target.countCards('he');
},
content:function(){
'step 0'
player.showHandcards(get.translation(player)+'发动了【率言】');
'step 1'
var filter=function(card,player,target){
return player!=target&&target.countCards('he')>0;
};
if(game.hasPlayer(function(current){
return filter('我约等于白板',player,current);
})){
player.chooseTarget(true,filter,'选择一名其他角色,令其交给你一张牌').set('ai',lib.skill.shuaiyan.check2);
}
else event.finish();
'step 2'
var target=result.targets[0];
event.target=target;
player.line(target,'green');
target.chooseCard('he',true,'交给'+get.translation(player)+'一张牌');
'step 3'
player.gain(result.cards,target,'giveAuto')
},
},
relihuo:{
audio:2,
group:['relihuo_baigei','relihuo_damage'],
trigger:{player:'useCard1'},
filter:function(event,player){
if(event.card.name=='sha'&&!event.card.nature) return true;
},
check:function(event,player){
return false;
},
content:function(){
trigger.card.nature='fire';
trigger.relihuo=true;
},
},
relihuo_damage:{
trigger:{source:'damageBegin1'},
forced:true,
audio:'relihuo',
filter:function(event,player){
return event.getParent(2).relihuo==true;
},
content:function(){
trigger.num++;
},
},
relihuo_baigei:{
trigger:{player:'useCardAfter'},
forced:true,
audio:'relihuo',
filter:function(event,player){
if(event.card.name!='sha'||event.card.nature!='fire') return false;
2020-06-20 04:53:15 +00:00
var num=0;
player.getHistory('sourceDamage',function(evt){
if(evt.card==event.card) num+=evt.num;
});
return num>1;
},
content:function(){
var num=0;
player.getHistory('sourceDamage',function(evt){
if(evt.card==trigger.card) num+=evt.num;
});
player.loseHp(Math.floor(num/2));
},
},
2020-05-23 04:37:37 +00:00
gongsun:{
audio:2,
trigger:{player:'phaseUseBegin'},
direct:true,
filter:function(event,player){
return player.countCards('he')>1;
},
content:function(){
'step 0'
player.chooseCardTarget({
prompt:get.prompt2('gongsun'),
selectCard:2,
filterCard:lib.filter.cardDiscardable,
filterTarget:lib.filter.notMe,
position:'he',
ai1:function(){return -1},
});
'step 1'
if(result.bool){
var target=result.targets[0];
event.target=target;
player.logSkill('gongsun',target);
player.discard(result.cards);
player.addTempSkill('gongsun_shadow',{player:['phaseBegin','die']});
var list=[];
for(var i=0;i<lib.inpile.length;i++){
var name=lib.inpile[i];
if(get.type(name)=='trick') list.push(['锦囊','',name]);
else if(get.type(name)=='basic') list.push(['基本','',name]);
}
player.chooseButton(['请选择一个牌名',[list,'vcard'],true]);
}
else event.finish();
'step 2'
player.storage.gongsun_shadow.push([target,result.links[0][2]]);
player.popup(result.links[0][2],'soil');
game.log(player,'选择了',''+get.translation(result.links[0][2]));
player.markSkill('gongsun_shadow');
},
},
gongsun_shadow:{
global:'gongsun_shadow2',
init:function(player,skill){
if(!player.storage[skill]) player.storage[skill]=[];
},
marktext:'损',
onremove:true,
intro:{
content:function(shadow){
var str='';
for(var i=0;i<shadow.length;i++){
if(i>0) str+='<br>'
str+=get.translation(shadow[i][0]);
str+='';
str+=get.translation(shadow[i][1]);
}
return str;
},
},
mod:{
cardEnabled:function(card,player){
var list=player.storage.gongsun_shadow;
for(var i=0;i<list.length;i++){
if(list[i][1]==card.name) return false;
}
},
cardRespondable:function(card,player){
var list=player.storage.gongsun_shadow;
for(var i=0;i<list.length;i++){
if(list[i][1]==card.name) return false;
}
},
cardSavable:function(card,player){
var list=player.storage.gongsun_shadow;
for(var i=0;i<list.length;i++){
if(list[i][1]==card.name) return false;
}
},
cardDiscardable:function(card,player){
var list=player.storage.gongsun_shadow;
for(var i=0;i<list.length;i++){
if(list[i][1]==card.name) return false;
}
},
},
},
gongsun_shadow2:{
mod:{
cardEnabled:function(card,player){
if(game.hasPlayer(function(current){
var list=current.storage.gongsun_shadow;
if(!list) return false;
for(var i=0;i<list.length;i++){
if(list[i][0]==player&&list[i][1]==card.name) return true;
}
return false;
})) return false;
},
cardSavable:function(card,player){
if(game.hasPlayer(function(current){
var list=current.storage.gongsun_shadow;
if(!list) return false;
for(var i=0;i<list.length;i++){
if(list[i][0]==player&&list[i][1]==card.name) return true;
}
return false;
})) return false;
},
cardRespondable:function(card,player){
if(game.hasPlayer(function(current){
var list=current.storage.gongsun_shadow;
if(!list) return false;
for(var i=0;i<list.length;i++){
if(list[i][0]==player&&list[i][1]==card.name) return true;
}
return false;
})) return false;
},
cardDiscardable:function(card,player){
if(game.hasPlayer(function(current){
var list=current.storage.gongsun_shadow;
if(!list) return false;
for(var i=0;i<list.length;i++){
if(list[i][0]==player&&list[i][1]==card.name) return true;
}
return false;
})) return false;
},
},
},
duoduan:{
audio:2,
trigger:{target:'useCardToTargeted'},
direct:true,
filter:function(event,player){
return event.card.name=='sha'&&player.countCards('he')>0&&!player.hasSkill('duoduan_im');
},
content:function(){
'step 0'
player.chooseCard('he',get.prompt2('duoduan')).set('ai',function(card){
if(_status.event.goon) return 8-get.value(card);
return 0;
}).set('goon',function(){
if(get.attitude(trigger.player,player)>0) return true;
if(!player.hasShan()) return true;
return event.getRand()<0.5;
}());
'step 1'
if(result.bool){
player.addTempSkill('duoduan_im');
var card=result.cards[0];
player.logSkill('duoduan',trigger.player);
player.lose(card,ui.discardPile,'visible');
player.$throw(card,1000);
game.log(player,'将',card,'置入弃牌堆');
player.draw();
}
else event.finish();
'step 2'
trigger.player.chooseToDiscard('弃置一张牌令'+get.translation(player)+'不能闪避此【杀】,或点「取消」摸两张牌并令此【杀】对其无效').set('ai',function(card){
if(_status.event.goon) return 6-get.value(card);
return 0;
}).set('goon',get.attitude(trigger.player,player)<0);
'step 3'
if(result.bool){
trigger.directHit.add(player);
}
else{
trigger.player.draw(2);
trigger.excluded.add(player);
}
},
},
duoduan_im:{
//'im' refers to 'Iwasawa Masami' in 'Angel Beats!'
//Although she disappeared in the Episode 3 of the anime, but her route in the game is really worth to play.
},
chengzhao:{
audio:2,
trigger:{global:'phaseJieshuBegin'},
filter:function(event,player){
var num=0;
player.getHistory('gain',function(evt){
num+=evt.cards.length;
});
if(num<2) return false;
return player.countCards('h')>0&&game.hasPlayer(function(current){
return player!=current&&player.canCompare(current);
});
},
direct:true,
content:function(){
'step 0'
player.chooseTarget(get.prompt2('chengzhao'),function(card,player,target){
return player.canCompare(target);
}).set('ai',function(target){
return -get.attitude(_status.event.player,target)/target.countCards('h');
});
'step 1'
if(result.bool){
var target=result.targets[0];
event.target=target;
player.logSkill('chengzhao',target);
player.chooseToCompare(target);
}
else event.finish();
'step 2'
if(result.bool){
var card={name:'sha',isCard:true};
if(player.canUse(card,target,false)) player.useCard(card,target,false).card.chengzhao=true;
}
},
ai:{
unequip:true,
skillTagFilter:function(player,tag,arg){
if(!arg||!arg.card||arg.card.chengzhao!=true) return false;
},
},
},
2020-04-25 05:40:05 +00:00
rezhengrong:{
trigger:{player:'useCardAfter'},
direct:true,
audio:'drlt_zhenrong',
filter:function(event,player){
if(!event.targets) return false;
if(!event.isPhaseUsing(player)) return false;
var bool=false;
for(var i=0;i<event.targets.length;i++){
if(event.targets[i]!=player){bool=true;break}
}
if(!bool) return false;
return player.getAllHistory('useCard',function(evt){
if(!evt.isPhaseUsing(player)) return false;
for(var i=0;i<evt.targets.length;i++){
if(evt.targets[i]!=player) return true;
}
return false;
}).indexOf(event)%2==1;
},
content:function(){
'step 0'
player.chooseTarget(get.prompt('rezhengrong'),'将一名其他角色的随机一张牌置于你的武将牌上,成为「荣」',function(card,player,target){
return target!=player&&target.countCards('he')>0;
}).set('ai',function(target){
return (1-get.attitude(_status.event.player,target))/target.countCards('he');
});
'step 1'
if(result.bool){
var target=result.targets[0];
event.target=result.targets[0];
player.logSkill('rezhengrong',target);
var card=target.getCards('he').randomGet();
game.log(player,'选择了',card);
target.$give(card,player,false);
target.lose(card,ui.special,'toStorage');
if(!player.storage.rezhengrong) player.storage.rezhengrong=[];
player.storage.rezhengrong.push(card);
player.markSkill('rezhengrong');
game.delayx();
}
},
marktext:'荣',
intro:{
content:'cards',
onunmark:'throw',
},
},
rehongju:{
trigger:{player:'phaseZhunbeiBegin'},
audio:'drlt_hongju',
forced:true,
unique:true,
juexingji:true,
skillAnimation:true,
animationColor:'thunder',
derivation:'reqingce',
filter:function(event,player){
return player.storage.rezhengrong&&player.storage.rezhengrong.length>=3&&game.dead.length>0;
},
content:function(){
'step 0'
player.awakenSkill('rehongju');
player.draw(player.storage.rezhengrong.length);
'step 1'
if(player.countCards('h')==0) event.goto(3);
else{
var dialog=['请选择要交换的手牌和「荣」,或点「取消」','<div class="text center">「征荣」牌</div>',player.storage.rezhengrong,'<div class="text center">手牌区</div>',player.getCards('h')];
var next=player.chooseButton(dialog);
next.set('filterButton',function(button){
var ss=_status.event.player.storage.rezhengrong;
var hs=_status.event.player.getCards('h');
var sn=0;
var hn=0;
var ub=ui.selected.buttons;
for(var i=0;i<ub.length;i++){
if(ss.contains(ub[i].link)) sn++;
else hn++;
}
return !(sn>=hs.length&&ss.contains(button.link)||hn>=ss.length&&hs.contains(button.link));
});
next.set('selectButton',function(){
if(ui.selected.buttons.length==0) return 2;
var ss=_status.event.player.storage.rezhengrong;
var hs=_status.event.player.getCards('h');
var sn=0;
var hn=0;
var ub=ui.selected.buttons;
for(var i=0;i<ub.length;i++){
if(ss.contains(ub[i].link)) sn++;
else hn++;
}
if(sn!=hn) return 2*Math.max(sn,hn);
else{
if(sn==ss.length||hn==hs.length||sn==hs.length||hn==ss.length) return ub.length;
return [ub.length,ub.length+1];
}
});
next.set('ai',function(){return -1});
}
'step 2'
if(result.bool){
var gains=[];
var pushs=[];
for(var i=0;i<result.links.length;i++){
var card=result.links[i];
if(player.storage.rezhengrong.contains(card)) gains.push(card);
else pushs.push(card);
}
player.lose(pushs,ui.special,'toStorage');
game.log(player,'将',pushs,'放在了武将牌上');
player.gain(gains,'gain2','log','fromStorage');
player.storage.rezhengrong.addArray(pushs);
player.storage.rezhengrong.removeArray(gains);
player.markSkill('rezhengrong');
}
'step 3'
player.addSkill('reqingce');
game.log(player,'获得了技能','#g【清侧】');
player.loseMaxHp();
},
},
reqingce:{
enable:'phaseUse',
audio:'drlt_qingce',
filter:function(event,player){
return player.storage.rezhengrong&&player.storage.rezhengrong.length>0;
},
chooseButton:{
dialog:function(event,player){
return ui.create.dialog('请选择要移去的「荣」',player.storage.rezhengrong,'hidden');
},
backup:function(links,player){
return {
card:links[0],
filterCard:function(){return false},
selectCard:-1,
filterTarget:function(card,player,target){
return target.countDiscardableCards(player,'ej')>0;
},
delay:false,
audio:'drlt_qingce',
content:lib.skill.reqingce.contentx,
ai:{
result:{
target:function(player,target){
var att=get.attitude(player,target);
if(att>0&&(target.countCards('j')>0||target.countCards('e',function(card){
return get.value(card,target)<0;
}))) return 2;
if(att<0&&target.countCards('e')>0&&!target.hasSkillTag('noe')) return -1;
return 0;
},
},
},
}
},
prompt:function(links,player){
return '弃置一名角色装备区或判定区内的一张牌';
},
},
contentx:function(){
'step 0'
var card=lib.skill.reqingce_backup.card;
player.$throw(card);
game.cardsDiscard(card);
player.storage.rezhengrong.remove(card);
player[player.storage.rezhengrong.length>0?'markSkill':'unmarkSkill']('rezhengrong');
'step 1'
if(target.countDiscardableCards(player,'ej')>0){
player.discardPlayerCard('ej',true,target);
}
},
ai:{
order:8,
result:{
player:function(player){
if(game.hasPlayer(function(current){
var att=get.attitude(player,current);
if((att>0&&current.countCards('j')>0)||(att<0&&current.countCards('e')>0)) return true;
return false;
})) return 1;
return 0;
},
},
},
},
2020-04-18 05:32:41 +00:00
fengji:{
audio:2,
trigger:{player:'phaseBegin'},
forced:true,
filter:function(event,player){
return typeof player.storage.fengji=='number'&&player.countCards('h')>=player.storage.fengji;
},
content:function(){
player.draw(2);
player.addTempSkill('fengji3');
},
group:'fengji2',
intro:{
content:'上回合结束时的手牌数:#',
},
},
fengji2:{
trigger:{player:'phaseEnd'},
silent:true,
content:function(){
player.storage.fengji=player.countCards('h');
if(player.hasSkill('fengji')) player.markSkill('fengji');
},
},
fengji3:{
mod:{
2020-05-23 04:37:37 +00:00
maxHandcardBase:function(player,num){
return player.maxHp;
2020-04-18 05:32:41 +00:00
},
},
},
zhouxuan:{
audio:2,
trigger:{player:'phaseJieshuBegin'},
direct:true,
filter:function(event,player){
return player.countCards('he')>0;
},
content:function(){
'step 0'
player.chooseCardTarget({
prompt:get.prompt2('zhouxuan'),
filterCard:lib.filter.cardDiscardable,
filterTarget:lib.filter.notMe,
position:'he',
ai1:function(card){
return 6-get.value(card);
},
ai2:function(target){
var player=_status.event.player;
if(get.attitude(player,target)>0) return Math.max(1,target.hp)*target.countCards('h',function(card){
return target.getUseValue(card)>0;
});
return 0;
},
});
'step 1'
if(result.bool){
player.logSkill('zhouxuan',result.targets[0]);
player.discard(result.cards);
player.addSkill('zhouxuan2');
result.targets[0].addTempSkill('zhouxuan_ai',{player:'phaseUseAfter'});
player.storage.zhouxuan2={};
player.storage.zhouxuan2.player=result.targets[0];
var list=[];
var basic=[];
for(var i=0;i<lib.inpile.length;i++){
var name=lib.inpile[i];
var type=get.type(name,'trick');
if(type=='basic'){
list.push(name);
basic.push(name);
}
else list.add(type);
}
event.basic=basic;
player.chooseControl(list).set('prompt','请选择一种基本牌的名称或非基本牌的类别').set('ai',function(){
var player=_status.event.player;
var target=player.storage.zhouxuan2.player;
var cards=target.getCards('h',function(card){
return target.hasUseTarget(card);
});
var map={};
for(var i=0;i<cards.length;i++){
var type=get.type(cards[i],'trick');
map[type=='basic'?get.name(cards[i]):type]=true;
}
if(map.equip) return 'equip';
if(map.trick) return 'trick';
if(map.sha) return 'sha';
if(map.tao) return 'tao';
return 0;
});
}
else event.finish();
'step 2'
player.storage.zhouxuan2.card=result.control;
if(event.basic.contains(result.control)) player.storage.zhouxuan2.isbasic=true;
player.markSkill('zhouxuan2');
},
},
zhouxuan_ai:{
mod:{
aiOrder:function(player,card,num){
if(game.hasPlayer(function(current){
return current.storage.zhouxuan2&&current.storage.zhouxuan2.player==player&&get.attitude(player,current)>0&&(current.storage.zhouxuan2.isbasic?card.name:get.type(card,'trick'))==current.storage.zhouxuan2.card;
})) return num+10;
}
},
},
zhouxuan2:{
intro:{
mark:function(player,storage){
return get.translation(storage.player)+'使用或打出下一张牌时,若此牌为'+get.translation(storage.card)+(storage.isbasic?'':'牌')+',你观看牌堆顶的三张牌并分配给任意角色';
},
},
audio:'zhouxuan',
forced:true,
charlotte:true,
trigger:{global:['useCard','respond']},
filter:function(event,player){
if(event.zhouxuanable) return true;
if(player.storage.zhouxuan2){
var map=player.storage.zhouxuan2;
if(map.player!=event.player) return false;
delete player.storage.zhouxuan2;
player.unmarkSkill('zhouxuan2');
if(map.card!=(map.isbasic?event.card.name:get.type(event.card,'trick'))) return false;
event.zhouxuanable=true;
return true;
}
return false;
},
logTarget:'player',
content:function(){
"step 0"
event.cards=game.cardsGotoOrdering(get.cards(3)).cards;
"step 1"
if(event.cards.length>1){
player.chooseCardButton('周旋:请选择要分配的牌',true,event.cards,[1,event.cards.length]).set('ai',function(button){
if(ui.selected.buttons.length==0) return 1;
return 0;
});
}
else if(event.cards.length==1){
event._result={links:event.cards.slice(0),bool:true};
}
else{
event.finish();
}
"step 2"
if(result.bool){
for(var i=0;i<result.links.length;i++){
event.cards.remove(result.links[i]);
}
event.togive=result.links.slice(0);
player.chooseTarget('将'+get.translation(result.links)+'交给一名角色',true).set('ai',function(target){
var att=get.attitude(_status.event.player,target);
if(_status.event.enemy){
return -att;
}
else if(att>0){
return att/(1+target.countCards('h'));
}
else{
return att/100;
}
}).set('enemy',get.value(event.togive[0],player,'raw')<0);
}
"step 3"
if(result.targets.length){
result.targets[0].gain(event.togive,'draw');
player.line(result.targets[0],'green');
game.log(result.targets[0],'获得了'+get.cnNumber(event.togive.length)+'张牌');
event.goto(1);
}
},
},
reshanxi:{
audio:'shanxi',
trigger:{player:'phaseUseBegin'},
direct:true,
filter:function(event,player){
return player.hp>0&&player.countCards('h',function(card){
if(_status.connectMode) return true;
return get.color(card)=='red'&&get.type(card)=='basic';
})>0;
},
content:function(){
'step 0'
player.chooseCardTarget({
filterCard:function(card){
return get.color(card)=='red'&&get.type(card)=='basic'&&lib.filter.cardDiscardable.apply(this,arguments);
},
filterTarget:function(card,player,target){
return player!=target&&target.countCards('he')>0;
},
prompt:get.prompt('reshanxi'),
prompt2:'弃置一张红色基本牌并选择一名其他角色将其的至多X张牌置于其武将牌上直到回合结束。X为你的体力值',
ai1:function(){return -1},
});
'step 1'
if(result.bool){
event.target=result.targets[0];
player.logSkill('reshanxi',event.target);
player.discard(result.cards);
}
else event.finish();
'step 2'
var max=Math.min(player.hp,target.countCards('he'));
if(max>0){
player.choosePlayerCard('he',target,true,[1,max]).set('forceAuto',true).set('prompt','将'+get.translation(target)+'的至多'+get.cnNumber(max)+'张牌置于其武将牌上');
}
else event.finish();
'step 3'
target.addSkill('reshanxi2');
target.storage.reshanxi2.addArray(result.cards);
target.lose(result.cards,ui.special,'toStorage');
game.log(target,'失去了'+get.cnNumber(result.cards.length)+'张牌');
target.markSkill('reshanxi2');
},
},
reshanxi2:{
init:function(player,skill){
if(!player.storage[skill]) player.storage[skill]=[];
},
trigger:{global:'phaseEnd'},
forced:true,
popup:false,
charlotte:true,
filter:function(event,player){
return player.storage.reshanxi2&&player.storage.reshanxi2.length>0;
},
content:function(){
game.log(player,'收回了'+get.cnNumber(player.gain(player.storage.reshanxi2,'draw','fromStorage').cards.length)+'张〖闪袭〗牌');
player.storage.reshanxi2.length=0;
player.removeSkill('reshanxi2');
},
intro:{
onunmark:'throw',
content:'cardCount',
},
},
reqizhou:{
trigger:{player:['equipEnd','loseEnd']},
forced:true,
popup:false,
2020-05-23 04:37:37 +00:00
derivation:['reyingzi','qixi','rexuanfeng'],
2020-04-18 05:32:41 +00:00
filter:function(event,player){
if(player.equiping) return false;
var suits=[];
var es=player.getCards('e');
for(var i=0;i<es.length;i++){
suits.add(get.suit(es[i]));
}
if(suits.length>3) suits.length=3;
if(player.additionalSkills.reqizhou){
return player.additionalSkills.reqizhou.length!=suits.length;
}
else{
return suits.length>0;
}
},
content:function(){
lib.skill.reqizhou.init(player,'reqizhou');
},
init:function(player,skill){
var suits=[];
var es=player.getCards('e');
for(var i=0;i<es.length;i++){
suits.add(get.suit(es[i]));
}
if(suits.length>3) suits.length=3;
player.removeAdditionalSkill(skill);
switch(suits.length){
case 1:player.addAdditionalSkill(skill,['reyingzi']);break;
case 2:player.addAdditionalSkill(skill,['reyingzi','qixi']);break;
2020-05-23 04:37:37 +00:00
case 3:player.addAdditionalSkill(skill,['reyingzi','qixi','rexuanfeng']);break;
2020-04-18 05:32:41 +00:00
}
},
ai:{
threaten:1.2
}
},
zhaohan:{
audio:2,
trigger:{player:'phaseZhunbeiBegin'},
forced:true,
filter:function(event,player){
return player.phaseNumber<8;
},
check:function(event,player){
return player.phaseNumber<3;
},
content:function(){
if(player.phaseNumber<5){
player.gainMaxHp();
player.recover();
}
else player.loseMaxHp();
},
},
rangjie:{
audio:2,
trigger:{player:'damageEnd'},
direct:true,
content:function(){
'step 0'
event.count=trigger.num;
'step 1'
event.count--;
var choiceList=['获得一张指定类型的牌'];
if(player.canMoveCard()) choiceList.push('移动场上的一张牌');
player.chooseControl('cancel2').set('choiceList',choiceList).set('prompt',get.prompt('rangjie')).set('ai',function(){
var player=_status.event.player;
if(player.canMoveCard(true)) return 1;
return 0;
});
'step 2'
if(result.control=='cancel2') event.finish();
else{
player.logSkill('rangjie');
player.draw();
if(result.index==0){
player.chooseControl('basic','trick','equip').set('prompt','选择获得一种类型的牌').set('ai',function(){
var player=_status.event.player;
if(player.hp<=3&&!player.countCards('h',{name:['shan','tao']})) return 'basic';
if(player.countCards('he',{type:'equip'})<2) return 'equip';
return 'trick';
});
}
else{
player.moveCard(true);
event.goto(4);
}
}
'step 3'
var card=get.cardPile2(function(card){
return get.type(card,'trick')==result.control;
});
if(card) player.gain(card,'gain2','log');
'step 4'
if(event.count>0) event.goto(1);
},
ai:{
maixie:true,
"maixie_hp":true,
effect:{
target:function (card,player,target){
if(get.tag(card,'damage')){
if(player.hasSkillTag('jueqing',false,target)) return [1,-2];
if(!target.hasFriend()) return;
var num=1;
if(get.attitude(player,target)>0){
if(player.needsToDiscard()){
num=0.7;
}
else{
num=0.5;
}
}
if(target.hp>=4) return [1,num*2];
if(target.hp==3) return [1,num*1.5];
if(target.hp==2) return [1,num*0.5];
}
},
},
},
},
yizheng:{
audio:2,
enable:'phaseUse',
usable:1,
filter:function(event,player){
return game.hasPlayer(function(current){
return current.hp<=player.hp&&player.canCompare(current);
});
},
filterTarget:function(card,player,current){
return current.hp<=player.hp&&player.canCompare(current);
},
content:function(){
'step 0'
player.chooseToCompare(target);
'step 1'
if(result.bool){
target.skip('phaseDraw');
target.addTempSkill('yizheng2',{player:'phaseDrawSkipped'});
}
else player.loseMaxHp();
},
ai:{
order:1,
result:{
target:function(player,target){
if(target.skipList.contains('phaseDraw')||target.hasSkill('pingkou')) return 0;
var hs=player.getCards('h').sort(function(a,b){
return b.number-a.number;
});
var ts=target.getCards('h').sort(function(a,b){
return b.number-a.number;
});
2020-04-25 05:40:05 +00:00
if(!hs.length||!ts.length) return 0;
2020-04-18 05:32:41 +00:00
if(hs[0].number>ts[0].number) return -1;
return 0;
},
},
},
},
yizheng2:{
mark:true,
intro:{content:'跳过下回合的摸牌阶段'},
},
2020-03-27 05:30:48 +00:00
rw_zhuge_skill:{
equipSkill:true,
audio:true,
firstDo:true,
trigger:{player:'useCard1'},
forced:true,
filter:function(event,player){
return !event.audioed&&event.card.name=='sha'&&player.countUsed('sha',true)>1&&event.getParent().type=='phase';
},
content:function(){
trigger.audioed=true;
},
mod:{
cardUsable:function(card,player,num){
if(card.name=='sha'){
return Infinity;
}
}
},
},
2020-03-14 11:25:06 +00:00
xinqingjian:{
audio:'qingjian',
trigger:{player:'gainEnd'},
direct:true,
usable:1,
filter:function(event,player){
return event.getParent('phaseDraw').player!=player&&player.countCards('he')>0;
},
content:function(){
'step 0'
player.chooseCard(get.prompt2('xinqingjian'),'he',[1,player.countCards('he')]).ai=function(){return -1};
'step 1'
if(result.bool){
player.logSkill('xinqingjian');
2020-03-14 11:25:06 +00:00
player.addSkill('xinqingjian2');
player.storage.xinqingjian2.addArray(result.cards);
game.log(player,'将'+get.cnNumber(player.lose(result.cards,ui.special,'toStorage').cards.length)+'张牌置于其武将牌上');
player.markSkill('xinqingjian2');
}
else player.storage.counttrigger.xinqingjian--;
},
},
xinqingjian2:{
audio:'xinqingjian',
charlotte:true,
trigger:{global:'phaseEnd'},
forced:true,
filter:function(event,player){
return player.storage.xinqingjian2&&player.storage.xinqingjian2.length>0;
},
init:function(player){
if(!player.storage.xinqingjian2) player.storage.xinqingjian2=[];
},
content:function(){
'step 0'
player.chooseTarget(true,lib.filter.notMe).set('createDialog',['清俭:选择一名角色获得这些牌'+(player.storage.xinqingjian2.length>1?',然后摸一张牌':''),player.storage.xinqingjian2]);
'step 1'
if(result.bool){
var target=result.targets[0];
player.line(target,'thunder');
if(target.gain(player.storage.xinqingjian2,player,'giveAuto','fromStorage').cards.length>1) player.draw();
player.storage.xinqingjian2.length=0;
player.removeSkill('xinqingjian2');
}
},
intro:{
onunmark:'throw',mark:function(dialog,content,player){
if(content&&content.length){
if(player==game.me||player.isUnderControl()){
dialog.addAuto(content);
}
else{
return '共有'+get.cnNumber(content.length)+'张牌';
}
}
},
content:function(content,player){
if(content&&content.length){
if(player==game.me||player.isUnderControl()){
return get.translation(content);
}
return '共有'+get.cnNumber(content.length)+'张牌';
}
}
},
},
2020-03-13 10:02:18 +00:00
zhongzuo:{
audio:2,
trigger:{global:'phaseJieshuBegin'},
2020-03-13 10:02:18 +00:00
direct:true,
filter:function(event,player){
return player.getHistory('damage').length>0||player.getHistory('sourceDamage').length>0;
},
content:function(){
'step 0'
player.chooseTarget(get.prompt('zhongzuo'),'令一名角色摸两张牌。若其已受伤,则你摸一张牌。').set('ai',function(target){
if(target.hasSkillTag('nogain')&&target!=_status.currentPhase) return target.isDamaged()?0:1;
var att=get.attitude(_status.event.player,target);
if(target.isDamaged()) att=att*1.2;
return att;
});
'step 1'
if(result.bool){
var target=result.targets[0];
player.logSkill('zhongzuo',target);
target.draw(2);
if(target.isDamaged()) player.draw();
}
},
},
wanlan:{
audio:2,
trigger:{global:'dying'},
2020-03-27 05:30:48 +00:00
check:function(event,player){
if(get.attitude(player,event.player)<4) return false;
if(player.countCards('h',function(card){
var mod2=game.checkMod(card,player,'unchanged','cardEnabled2',player);
if(mod2!='unchanged') return mod2;
var mod=game.checkMod(card,player,'unchanged','cardSavable',player);
if(mod!='unchanged') return mod;
var savable=get.info(card).savable;
if(typeof savable=='function') savable=savable(card,player,event.player);
return savable;
})>=1-event.player.hp) return false;
if(event.player==player||event.player==get.zhu(player)) return true;
if(_status.currentPhase&&get.damageEffect(_status.currentPhase,player,player)<0) return false;
return !player.hasUnknown();
},
2020-03-13 10:02:18 +00:00
limited:true,
unique:true,
filter:function(event,player){
2020-03-14 11:25:06 +00:00
return event.player.hp<=0;
2020-03-13 10:02:18 +00:00
},
skillAnimation:true,
animationColor:'thunder',
logTarget:'player',
content:function(){
'step 0'
player.awakenSkill('wanlan');
2020-03-14 11:25:06 +00:00
var hs=player.getCards('h')
if(hs.length) player.discard(hs);
2020-03-13 10:02:18 +00:00
'step 1'
var num=1-trigger.player.hp;
if(num) trigger.player.recover(num);
'step 2'
if(_status.currentPhase&&_status.currentPhase.isAlive()){
var next=_status.currentPhase.damage();
event.next.remove(next);
trigger.after.push(next);
}
2020-03-13 10:02:18 +00:00
},
},
zhiyi:{
audio:2,
trigger:{player:['useCard','respond']},
forced:true,
filter:function(event,player){
if(get.type(event.card)!='basic') return false;
var history=player.getHistory('useCard',function(evt){
return get.type(evt.card)=='basic';
}).concat(player.getHistory('respond',function(evt){
return get.type(evt.card)=='basic';
}));
return history.length==1&&history[0]==event;
},
content:function(){
'step 0'
var info=get.info(trigger.card);
if(!info||!info.enable) event._result={index:0};
else{
var evt=trigger;
if(evt.respondTo&&evt.getParent('useCard').name=='useCard') evt=evt.getParent('useCard');
event.evt=evt;
player.chooseControl().set('prompt','执义:请选择一项').set('choiceList',[
'摸一张牌',
'于'+get.translation(evt.card)+'的使用结算结束之后视为使用一张'+get.translation({name:trigger.card.name,nature:trigger.card.nature,isCard:true}),
]).set('ai',function(){return _status.event.choice}).set('choice',function(){
var card={name:trigger.card.name,nature:trigger.card.nature,isCard:true};
if(card.name=='sha'){
if(player.getUseValue(card)>0) return 1;
}
else if(card.name=='tao'){
var hp=player.maxHp-player.hp;
if(trigger.targets.contains(player)) hp--;
return hp>0?1:0;
}
return 0;
}());
}
'step 1'
if(result.index==0){
player.draw();
}
else{
2020-06-06 04:40:45 +00:00
var next=player.chooseUseTarget({name:trigger.card.name,nature:trigger.card.nature,isCard:true},false,true);
2020-03-13 10:02:18 +00:00
_status.event.next.remove(next);
event.evt.after.push(next);
next.logSkill='zhiyi';
}
},
},
2020-02-06 11:51:46 +00:00
//表演测试
qiaosi_map:{charlotte:true},
qiaosi:{
audio:'xinfu_qiaosi',
derivation:'qiaosi_map',
enable:'phaseUse',
usable:1,
content:function(){
"step 0"
2020-02-08 03:39:33 +00:00
event.videoId=lib.status.videoId++;
2020-02-06 11:51:46 +00:00
if(player.isUnderControl()){
game.modeSwapPlayer(player);
}
var switchToAuto=function(){
2020-02-08 03:39:33 +00:00
game.pause();
game.countChoose();
setTimeout(function(){
_status.imchoosing=false;
event._result={
bool:true,
links:['qiaosi_c1','qiaosi_c6'].concat(['qiaosi_c2','qiaosi_c3','qiaosi_c4','qiaosi_c5'].randomGets(1)),
2020-02-08 03:39:33 +00:00
};
if(event.dialog) event.dialog.close();
if(event.control) event.control.close();
game.resume();
},5000);
};
var createDialog=function(player,id){
if(player==game.me) return;
var str=get.translation(player)+'正在表演...<br>';
for(var i=1;i<7;i++){
str+=get.translation('qiaosi_c'+i);
2020-02-23 05:45:11 +00:00
if(i%3!=0) str+='  ';
2020-02-08 03:39:33 +00:00
if(i==3) str+='<br>';
}
ui.create.dialog(str,'forcebutton').videoId=id;
2020-02-06 11:51:46 +00:00
};
var chooseButton=function(player){
var event=_status.event;
player=player||event.player;
event.status={
qiaosi_c1:0,
qiaosi_c2:0,
qiaosi_c3:0,
qiaosi_c4:0,
qiaosi_c5:0,
qiaosi_c6:0,
}
event.map={
qiaosi_c1:[10,15],
qiaosi_c2:[20,35],
qiaosi_c3:[40,60],
qiaosi_c4:[40,60],
qiaosi_c5:[20,35],
qiaosi_c6:[10,15],
}
event.finishedx=[];
2020-02-08 03:39:33 +00:00
event.str='请开始你的表演<br><img src="'+lib.assetURL+'image/card/qiaosi_card1.png" width="60" height="60">qiaosi_c1% <img src="'+lib.assetURL+'image/card/qiaosi_card2.png" width="60" height="60">qiaosi_c2% <img src="'+lib.assetURL+'image/card/qiaosi_card3.png" width="60" height="60">qiaosi_c3%<br><img src="'+lib.assetURL+'image/card/qiaosi_card4.png" width="60" height="60">qiaosi_c4%<img src="'+lib.assetURL+'image/card/qiaosi_card5.png" width="60" height="60">qiaosi_c5% <img src="'+lib.assetURL+'image/card/qiaosi_card6.png" width="60" height="60">qiaosi_c6%';
event.dialog=ui.create.dialog(event.str,'forcebutton','hidden');
event.dialog.addText('<li>点击下方的按钮可以增加按钮对应的角色的「表演完成度」。对于不同的角色点击时增加的完成度不同最终获得的牌也不同。一次表演最多只能完成3名角色的进度。',false);
event.dialog.open();
2020-02-06 11:51:46 +00:00
for(var i in event.status){
event.dialog.content.childNodes[0].innerHTML=event.dialog.content.childNodes[0].innerHTML.replace(i,event.status[i]);
}
for(var i=0;i<event.dialog.buttons.length;i++){
event.dialog.buttons[i].classList.add('pointerdiv');
}
event.switchToAuto=function(){
event._result={
bool:true,
links:event.finishedx.slice(0),
};
event.dialog.close();
event.control.close();
game.resume();
_status.imchoosing=false;
},
event.control=ui.create.control('qiaosi_c1','qiaosi_c2','qiaosi_c3','qiaosi_c4','qiaosi_c5','qiaosi_c6',function(link){
var event=_status.event;
if(event.finishedx.contains(link)) return;
event.status[link]+=get.rand.apply(get,event.map[link]);
if(event.status[link]>=100){
event.status[link]=100;
var str=event.str.slice(0);
for(var i in event.status){
str=str.replace(i,event.status[i]);
}
event.dialog.content.childNodes[0].innerHTML=str;
event.finishedx.push(link);
if(event.finishedx.length>=3){
event._result={
bool:true,
links:event.finishedx.slice(0),
};
event.dialog.close();
event.control.close();
game.resume();
_status.imchoosing=false;
}
}
else{
var str=event.str.slice(0);
for(var i in event.status){
str=str.replace(i,event.status[i]);
}
event.dialog.content.childNodes[0].innerHTML=str;
}
});
for(var i=0;i<event.dialog.buttons.length;i++){
event.dialog.buttons[i].classList.add('selectable');
}
game.pause();
game.countChoose();
};
2020-02-08 03:39:33 +00:00
//event.switchToAuto=switchToAuto;
game.broadcastAll(createDialog,player,event.videoId);
2020-02-06 11:51:46 +00:00
if(event.isMine()){
chooseButton();
}
else if(event.isOnline()){
event.player.send(chooseButton,event.player);
event.player.wait();
game.pause();
}
else{
2020-02-08 03:39:33 +00:00
switchToAuto();
2020-02-06 11:51:46 +00:00
}
"step 1"
2020-02-08 03:39:33 +00:00
game.broadcastAll('closeDialog',event.videoId);
2020-02-06 11:51:46 +00:00
var map=event.result||result;
2020-02-08 03:39:33 +00:00
//game.print(map);
2020-02-06 11:51:46 +00:00
if(!map||!map.bool||!map.links){
game.log(player,'表演失败');
event.finish();
return;
}
var list=map.links;
if(!list.length){
game.log(player,'表演失败');
event.finish();
return;
}
var cards=[];
var list2=[];
if(list.contains('qiaosi_c1')){
list2.push('trick');
list2.push('trick');
}
if(list.contains('qiaosi_c2')){
if(list.contains('qiaosi_c1')) list2.push(['sha','jiu']);
else list2.push(Math.random()<0.66?'equip':['sha','jiu']);
}
if(list.contains('qiaosi_c3')){
list2.push([Math.random()<0.66?'sha':'jiu'])
}
if(list.contains('qiaosi_c4')){
list2.push([Math.random()<0.66?'shan':'tao'])
}
if(list.contains('qiaosi_c5')){
if(list.contains('qiaosi_c6')) list2.push(['shan','tao']);
else list2.push(Math.random()<0.66?'trick':['shan','tao']);
}
if(list.contains('qiaosi_c6')){
list2.push('equip');
list2.push('equip');
}
while(list2.length){
var filter=list2.shift();
var card=get.cardPile(function(x){
if(cards.contains(x)) return false;
if(typeof filter=='string'&&get.type(x,'trick')==filter) return true;
if(typeof filter=='object'&&filter.contains(x.name)) return true;
});
if(card) cards.push(card);
else{
var card=get.cardPile(function(x){
return !cards.contains(card);
});
if(card) cards.push(card);
}
}
if(cards.length){
event.cards=cards;
event.num=cards.length;
player.showCards(cards);
}
else event.finish();
"step 2"
player.gain(event.cards,'gain2');
player.chooseControl().set('choiceList',[
'将'+get.cnNumber(event.num)+'张牌交给一名其他角色',
'弃置'+get.cnNumber(event.num)+'张牌',
]).set('ai',function(){
if(game.hasPlayer(function(current){
return current!=player&&get.attitude(player,current)>2;
})) return 0;
return 1;
});
"step 3"
if(result.index==0){
player.chooseCardTarget({
position:'he',
filterCard:true,
selectCard:event.num,
filterTarget:function(card,player,target){
return player!=target;
},
ai1:function(card){
return 1;
},
ai2:function(target){
var att=get.attitude(_status.event.player,target);
return att;
},
prompt:'选择'+get.cnNumber(event.num)+'张牌,交给一名其他角色。',
forced:true,
});
}
else{
player.chooseToDiscard(event.num,true,'he');
event.finish();
}
"step 4"
if(result.bool){
var target=result.targets[0];
player.give(result.cards,target);
}
},
ai:{
order:10,
result:{player:1},
threaten:3.2,
}
},
2020-01-31 09:50:48 +00:00
refuhai:{
audio:'xinfu_fuhai',
enable:'phaseUse',
usable:1,
content:function(){
'step 0'
event.current=player.next;
event.upper=[];
event.lower=[];
event.acted=[];
event.num=0;
event.stopped=false;
'step 1'
event.acted.push(event.current);
event.current.chooseControl('潮起','潮落').set('prompt','潮鸣起乎?潮鸣落乎?').ai=function(){
return Math.random()<0.5?0:1;
};
'step 2'
if(!event.chosen) event.chosen=result.control;
if(event.chosen!=result.control) event.stopped=true;
if(!event.stopped) event.num++;
if(result.control=='潮起'){
event.upper.push(event.current)
}
else event.lower.push(event.current);
event.current=event.current.next;
if(event.current!=player&&!event.acted.contains(event.current)) event.goto(1);
'step 3'
for(var i=0;i<event.acted.length;i++){
var bool=event.upper.contains(event.acted[i]);
game.log(event.acted[i],'选择了',bool?'#g潮起':'#y潮落');
event.acted[i].popup(bool?'潮起':'潮落',bool?'wood':'orange');
}
game.delay(1);
'step 4'
if(num>1) player.draw(num);
},
ai:{
2020-03-30 11:56:37 +00:00
order:10,
2020-01-31 09:50:48 +00:00
result:{player:1},
},
},
rebiaozhao:{
audio:'biaozhao',
intro:{
content:"cards",
},
trigger:{
player:"phaseJieshuBegin",
},
direct:true,
filter:function (event,player){
return player.countCards('he')>0&&!player.storage.rebiaozhao;
},
content:function (){
'step 0'
player.chooseCard('he',get.prompt2('rebiaozhao')).ai=function(card){
return 6-get.value(card);
}
'step 1'
if(result.bool){
player.addSkill('rebiaozhao2');
player.addSkill('rebiaozhao3');
player.logSkill('rebiaozhao');
player.$give(result.cards,player,false);
player.lose(result.cards,ui.special,'toStorage','visible');
player.storage.rebiaozhao=result.cards;
player.markSkill('rebiaozhao');
}
},
},
"rebiaozhao2":{
trigger:{
global:["loseEnd","cardsDiscardEnd"],
},
charlotte:true,
forced:true,
audio:"biaozhao",
filter:function (event,player){
if(!player.storage.rebiaozhao) return false;
var num=get.number(player.storage.rebiaozhao[0]);
for(var i=0;i<event.cards.length;i++){
if(get.position(event.cards[i],true)=='d'&&get.number(event.cards[i])==num) return true;
}
return false;
},
content:function (){
"step 0"
var card=player.storage.rebiaozhao[0];
delete player.storage.rebiaozhao;
player.$throw(card);
game.cardsDiscard(card);
"step 1"
player.unmarkSkill('rebiaozhao');
player.loseHp();
},
},
"rebiaozhao3":{
trigger:{
player:"phaseZhunbeiBegin",
},
forced:true,
charlotte:true,
audio:"biaozhao",
filter:function (event,player){
return player.storage.rebiaozhao!=undefined;
},
content:function (){
"step 0"
var card=player.storage.rebiaozhao[0];
delete player.storage.rebiaozhao;
player.unmarkSkill('rebiaozhao');
game.cardsDiscard(card);
player.chooseTarget('令一名角色摸三张牌并回复1点体力',true).ai=function(target){
var num=2;
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');
target.draw(3);
target.recover();
}
},
},
reqianxin:{
audio:'xinfu_qianxin',
enable:'phaseUse',
usable:1,
filterCard:true,
selectCard:function(){
return [1,Math.min(2,game.players.length-1)];
},
check:function(card){
return 6-get.value(card);
},
discard:false,
lose:false,
delay:0,
content:function(){
var targets=game.filterPlayer(function(current){
return current!=player;
}).randomGets(cards.length);
for(var i=0;i<targets.length;i++){
var target=targets[i];
target.addSkill('reqianxin2');
target.storage.reqianxin2.push([cards[i],player]);
player.$give(1,target);
target.gain(cards[i],player);
}
},
ai:{
order:1,
result:{
player:1,
},
},
},
reqianxin2:{
trigger:{player:'phaseZhunbeiBegin'},
forced:true,
popup:false,
charlotte:true,
init:function(player,skill){
if(!player.storage[skill]) player.storage[skill]=[];
},
onremove:true,
filter:function(event,player){
var list=player.storage.reqianxin2;
if(Array.isArray(list)){
var hs=player.getCards('h');
for(var i=0;i<list.length;i++){
if(hs.contains(list[i][0])&&list[i][1].isIn()) return true;
}
}
return false;
},
content:function(){
'step 0'
var current=player.storage.reqianxin2.shift();
event.source=current[1];
if(!event.source.isIn()||!player.getCards('h').contains(current[0])) event.goto(3);
'step 1'
source.logSkill('reqianxin',player);
player.chooseControl().set('choiceList',[
'令'+get.translation(source)+'摸两张牌',
'令自己本回合的手牌上限-2',
]).set('prompt',get.translation(source)+'发动了【遣信】,请选择一项').set('source',source).set('ai',function(){
var player=_status.event.player;
if(get.attitude(player,_status.event.source)>0) return 0;
if(player.maxHp-player.countCards('h')>1) return 1;
return Math.random()>0.5?0:1;
});
'step 2'
if(result.index==0) source.draw(2);
else{
player.addTempSkill('reqianxin3')
player.addMark('reqianxin3',2,false)
}
'step 3'
if(player.storage.reqianxin2.length) event.goto(0);
else player.removeSkill('reqianxin2');
},
},
reqianxin3:{
onremove:true,
mod:{
maxHandcard:function(player,num){
return num-player.countMark('reqianxin3');
},
},
},
2019-12-25 05:21:37 +00:00
renshi:{
audio:2,
trigger:{player:'damageBegin4'},
forced:true,
filter:function(event,player){
return player.isDamaged()&&event.card&&event.card.name=='sha';
2019-12-25 05:21:37 +00:00
},
content:function(){
'step 0'
trigger.cancel();
var cards=trigger.cards.filterInD();
if(cards.length) player.gain(cards,'gain2','log');
2019-12-25 05:21:37 +00:00
'step 1'
player.loseMaxHp();
},
ai:{
filterDamage:true,
skillTagFilter:function(player,tag,arg){
if(arg&&arg.card&&arg.card.name=='sha') return true;
return false;
},
},
2019-12-25 05:21:37 +00:00
},
wuyuan:{
audio:2,
enable:'phaseUse',
usable:1,
filter:function(event,player){
return player.countCards('h','sha')>0;
},
filterCard:{name:'sha'},
filterTarget:lib.filter.notMe,
check:function(card){
var player=_status.event.player;
if(get.color(card)=='red'&&game.hasPlayer(function(current){
return current!=player&&current.isDamaged()&&get.attitude(player,current)>2;
})) return 2;
2019-12-25 15:16:51 +00:00
if(get.nature(card)) return 1.5;
2019-12-25 05:21:37 +00:00
return 1;
},
discard:false,
content:function(){
'step 0'
2020-06-06 04:40:45 +00:00
target.gain(cards,player,'giveAuto');
2019-12-25 05:21:37 +00:00
player.recover();
'step 1'
var num=1;
2019-12-25 15:16:51 +00:00
if(get.nature(cards[0])) num++;
2019-12-25 05:21:37 +00:00
target.draw(num);
2019-12-25 15:16:51 +00:00
if(get.color(cards[0])=='red') target.recover();
2019-12-25 05:21:37 +00:00
},
ai:{
order:1,
result:{
player:function(player,target){
if(player.isDamaged()) return 1;
return 0;
},
target:function(player,target){
if(ui.selected.cards.length){
2019-12-25 15:16:51 +00:00
var num=1;
if(get.nature(ui.selected.cards[0])) num++;
2019-12-25 05:21:37 +00:00
if(target.hasSkillTag('nogain')) num=0;
if(get.color(ui.selected.cards[0])=='red') return num+2
else return num+1;
}
return 1;
},
},
},
},
huaizi:{
mod:{
2020-05-23 04:37:37 +00:00
maxHandcardBase:function(player,num){
return player.maxHp;
2019-12-25 05:21:37 +00:00
},
},
2020-01-26 11:35:17 +00:00
//audio:2,
//trigger:{player:'phaseDiscardBegin'},
2019-12-25 05:21:37 +00:00
forced:true,
firstDo:true,
filter:function(event,player){
return player.isDamaged()&&player.countCards('h')>player.hp;
},
content:function(){},
},
2019-11-23 12:41:07 +00:00
rexushen:{
derivation:['new_rewusheng','xindangxian'],
audio:'xinfu_xushen',
limited:true,
enable:'phaseUse',
filter:function(event,player){
return game.hasPlayer(function(current){
return current.sex=='male';
})
},
skillAnimation:true,
animationColor:'fire',
content:function(){
player.addSkill('rexushen2');
player.awakenSkill('rexushen');
player.loseHp(game.countPlayer(function(current){
return current.sex=='male';
}));
},
2019-11-26 05:15:06 +00:00
ai:{
order:10,
result:{
player:function(player){
if(player.hp!=game.countPlayer(function(current){
return current.sex=='male';
})) return 0;
return game.hasPlayer(function(current){
return get.attitude(player,current)>4&&current.countCards('h','tao')
})?1:0;
},
},
},
2019-11-23 12:41:07 +00:00
},
rexushen2:{
charlotte:true,
subSkill:{
count:{
trigger:{
player:"recoverBegin",
},
forced:true,
silent:true,
popup:false,
filter:function (event,player){
if(!event.source) return false;
if(!player.isDying()) return false;
var evt=event.getParent('dying').getParent(2);
return evt.name=='rexushen'&&evt.player==player;
},
content:function (){
trigger.rexushen=true;
},
sub:true,
},
},
group:["rexushen2_count"],
trigger:{
player:"recoverAfter",
},
filter:function (event,player){
if(player.isDying()) return false;
return event.rexushen==true;
},
direct:true,
silent:true,
popup:false,
content:function (){
'step 0'
player.removeSkill('rexushen2');
player.chooseBool('是否令'+get.translation(trigger.source)+'获得技能〖武圣〗和〖当先〗').ai=function(){
return get.attitude(player,trigger.source)>0;
};
'step 1'
if(result.bool){
player.line(trigger.source,'fire');
trigger.source.addSkillLog('new_rewusheng');
trigger.source.addSkillLog('xindangxian');
2020-03-30 11:56:37 +00:00
trigger.source.storage.xinfuli=true;
2019-11-23 12:41:07 +00:00
}
},
},
rezhennan:{
audio:'xinfu_zhennan',
trigger:{target:'useCardToTargeted'},
filter:function(event,player){
return event.player!=player&&event.targets&&event.targets.length&&event.targets.length>event.player.hp;
},
direct:true,
content:function(){
'step 0'
var next=player.chooseToDiscard(get.prompt('rezhennan',trigger.player),'弃置一张牌并对其造成1点伤害','he');
next.set('logSkill',['rezhennan',trigger.player]);
next.set('ai',function(card){
var player=_status.event.player;
var target=_status.event.getTrigger().player;
if(get.damageEffect(target,player,player)>0) return 7-get.value(card);
return -1;
});
'step 1'
if(result.bool) trigger.player.damage();
},
},
meiyong:{
inherit:'xinfu_wuniang',
audio:'xinfu_wuniang',
content:function (){
'step 0'
2020-03-27 05:30:48 +00:00
player.chooseTarget(get.prompt('meiyong'),'获得一名其他角色的一张牌,然后其摸一张牌。',function(card,player,target){
2019-11-23 12:41:07 +00:00
if(player==target) return false;
return target.countGainableCards(player,'he')>0;
}).set('ai',function(target){
return 10-get.attitude(_status.event.player,target);
});
'step 1'
if(result.bool){
var target=result.targets[0];
event.target=target;
2020-02-23 05:45:11 +00:00
player.logSkill('meiyong',target);
2019-11-23 12:41:07 +00:00
player.gainPlayerCard(target,'he',true);
}
else event.finish();
'step 2'
target.draw();
},
},
2019-10-09 14:31:43 +00:00
relianji:{
2019-12-28 14:03:35 +00:00
audio:'wylianji',
2019-10-09 14:31:43 +00:00
enable:'phaseUse',
usable:1,
filter:function(event,player){
return game.players.length>1;
},
filterTarget:lib.filter.notMe,
targetprompt:['打人','被打'],
selectTarget:2,
multitarget:true,
content:function(){
'step 0'
game.delay(0.5);
if(targets[0].isDisabled(1)) event.goto(2);
'step 1'
var target=targets[0];
var equip1=get.cardPile2(function(card){
return get.subtype(card)=='equip1';
});
if(!equip1){
player.popup('连计失败');
game.log('牌堆中无装备');
event.finish();
return;
}
2019-10-19 11:18:56 +00:00
if(equip1.name=='qinggang'&&!lib.inpile.contains('qibaodao')){
equip1.remove();
equip1=game.createCard('qibaodao',equip1.suit,equip1.number);
}
2019-10-09 14:31:43 +00:00
target.$draw(equip1);
2019-10-10 10:13:01 +00:00
target.chooseUseTarget(equip1,'noanimate','nopopup',true);
2019-10-09 14:31:43 +00:00
'step 2'
2019-10-19 11:18:56 +00:00
game.updateRoundNumber();
2019-10-10 10:13:01 +00:00
var list=['nanman','wanjian','huogong','juedou','sha'];
var list2=game.players.slice(0);
list2.remove(player);
for(var i=0;i<list.length;i++){
2019-10-19 11:18:56 +00:00
if(!targets[0].canUse(list[i],targets[1],false)) list.splice(i--,1);
2019-10-10 10:13:01 +00:00
}
if(!list.length) return;
var name=list.randomGet();
if(name=='nanman'||name=='wanjian'){
for(var i=0;i<list2.length;i++){
2019-10-19 11:18:56 +00:00
if(!targets[0].canUse(name,list2[i],false)) list2.splice(i--,1);
2019-10-10 10:13:01 +00:00
}
}
else list2=targets[1];
2020-03-05 13:10:37 +00:00
targets[0].useCard({name:name,isCard:true},list2,'noai');
2019-10-09 14:31:43 +00:00
game.delay(0.5);
},
ai:{
order:8,
result:{
target:function(player,target){
if(ui.selected.targets.length==0){
return 1;
}
else{
return -1;
}
}
},
expose:0.4,
threaten:3,
},
group:'relianji_count',
subSkill:{
count:{
sub:true,
forced:true,
popup:false,
silent:true,
trigger:{global:'damageEnd'},
filter:function(event,player){
var evt=event.getParent(3);
return evt&&evt.name=='relianji'&&evt.player==player;
},
content:function(){
if(!player.storage.relianji) player.storage.relianji=0;
player.storage.relianji++;
if(player.storage.relianji>2){
event.trigger('remoucheng_awaken');
}
},
},
},
},
remoucheng:{
derivation:'rejingong',
trigger:{
player:'remoucheng_awaken'
},
forced:true,
2019-12-28 14:03:35 +00:00
audio:'moucheng',
2019-10-09 14:31:43 +00:00
juexingji:true,
skillAnimation:true,
animationColor:'thunder',
content:function(){
player.awakenSkill('remoucheng');
player.removeSkill('relianji');
player.addSkill('rejingong');
player.gainMaxHp();
player.recover();
},
},
rejingong:{
2019-12-28 14:03:35 +00:00
audio:'jingong',
2019-10-09 14:31:43 +00:00
enable:'phaseUse',
delay:0,
usable:1,
content:function(){
'step 0'
2019-10-10 10:13:01 +00:00
var list=get.inpile('trick').randomGets(2);
2019-10-09 14:31:43 +00:00
if(Math.random()<0.5){
list.push('wy_meirenji');
}
else{
list.push('wy_xiaolicangdao');
}
for(var i=0;i<list.length;i++){
list[i]=['锦囊','',list[i]];
}
player.chooseButton(['矜功',[list,'vcard']]).set('filterButton',function(button,player){
return game.hasPlayer(function(current){
return player.canUse(button.link[2],current,true,false);
});
}).set('ai',function(button){
var player=_status.event.player;
var name=button.link[2];
if(game.hasPlayer(function(current){
return player.canUse(name,current)&&get.effect(current,{name:name},player,player)>0;
})){
if(name=='wy_meirenji'||name=='wy_xiaolicangdao') return Math.random()+0.5;
return Math.random();
}
return 0;
});
'step 1'
if(result.bool){
player.chooseUseTarget(result.links[0][2],true);
player.addTempSkill('jingong2');
}
},
ai:{
order:2,
result:{
player:function(player){
if((player.hp<=2||player.needsToDiscard())&&!player.getStat('damage')) return 0;
return 1;
}
}
}
2020-03-25 12:27:23 +00:00
},
shouye:{
2019-12-28 14:03:35 +00:00
audio:2,
2020-03-25 12:27:23 +00:00
group:'shouye_after',
2020-05-23 04:37:37 +00:00
trigger:{target:"useCardToTarget"},
2019-08-30 15:02:50 +00:00
filter:function(event,player){
2020-03-27 05:30:48 +00:00
return event.player!=player&&event.targets.length==1;
2019-08-30 15:02:50 +00:00
},
check:function(event,player){
2020-03-27 05:30:48 +00:00
if(event.player==game.me||event.player.isOnline()) return get.attitude(player,event.player)<0;
2020-03-25 12:27:23 +00:00
return get.effect(player,event.card,event.player,player)<0;
2019-08-30 15:02:50 +00:00
},
2020-03-25 12:27:23 +00:00
usable:1,
logTarget:'player',
2019-08-30 15:02:50 +00:00
content:function(){
'step 0'
player.line(trigger.player,'green');
2019-08-31 05:48:22 +00:00
player.chooseToDuiben(trigger.player);
2019-08-30 15:02:50 +00:00
'step 1'
2019-08-31 05:48:22 +00:00
if(result.bool){
2020-05-23 04:37:37 +00:00
trigger.targets.remove(player);
trigger.getParent().triggeredTargets2.remove(player);
2020-03-27 05:30:48 +00:00
trigger.getParent().shouyeer=player;
2019-08-30 15:02:50 +00:00
}
},
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=[];
2020-03-27 05:30:48 +00:00
for(var i=0;i<trigger.cards.length;i++){
if(trigger.cards[i].isInPile()){
list.push(trigger.cards[i]);
2019-08-30 15:02:50 +00:00
}
2020-03-27 05:30:48 +00:00
}
player.gain(list,'gain2','log');
2019-08-30 15:02:50 +00:00
},
},
},
},
liezhi:{
2019-08-31 05:48:22 +00:00
audio:2,
2019-08-30 15:02:50 +00:00
group:'liezhi_damage',
2019-11-22 05:19:45 +00:00
trigger:{player:'phaseZhunbeiBegin'},
2019-08-30 15:02:50 +00:00
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;
2019-12-12 05:02:34 +00:00
return get.effect(target,{name:'guohe'},player,player);
2019-08-30 15:02:50 +00:00
};
'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();
},
subSkill:{
disable:{
sub:true,
trigger:{player:'phaseAfter'},
forced:true,
silent:true,
popup:false,
charlotte:true,
2019-09-25 14:52:38 +00:00
//filter:function(event){return !event.liezhi},
2019-08-30 15:02:50 +00:00
content:function(){player.removeSkill('liezhi_disable')},
},
damage:{
trigger:{player:'damage'},
forced:true,
silent:true,
popup:false,
2019-09-25 14:52:38 +00:00
content:function(){player.addSkill('liezhi_disable')}
2019-08-30 15:02:50 +00:00
},
},
},
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();
2020-04-29 05:59:50 +00:00
switch(get.type(cards[0],'trick',cards[0].original=='h'?player:false)){
2019-08-30 15:02:50 +00:00
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,
content:function(){
2020-05-16 05:03:13 +00:00
if(!trigger.baseDamage) trigger.baseDamage=1;
trigger.baseDamage++;
2019-08-30 15:02:50 +00:00
player.storage.xinzhanyi_basic1=true;
},
},
xinzhanyi_basic:{
2020-05-16 05:03:13 +00:00
group:['xinzhanyi_basic1'],
2019-10-24 04:55:01 +00:00
onremove:function(p,s){
delete p.storage[s+1];
},
2019-08-30 15:02:50 +00:00
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',
2019-10-24 04:55:01 +00:00
trigger:{player:'useCardToPlayered'},
2019-08-30 15:02:50 +00:00
forced:true,
filter:function(event,player){
2019-10-24 04:55:01 +00:00
return event.card.name=='sha'&&event.target.countCards('he')>0;
2019-08-30 15:02:50 +00:00
},
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;
}
}
},
2020-03-25 12:27:23 +00:00
"xinfu_daigong":{
usable:1,
audio:2,
trigger:{
player:"damageBegin4",
},
filter:function (event,player){
return event.source!=undefined&&player.countCards('h')>0;
},
content:function (){
'step 0'
player.showHandcards();
'step 1'
var cards=player.getCards('h');
var suits=[];
for(var i=0;i<cards.length;i++){
suits.add(get.suit(cards[i]));
}
trigger.source.chooseCard('he','交给'+get.translation(player)+'一张满足条件的牌,否则防止此伤害。',function(card){
return !_status.event.suits.contains(get.suit(card));
}).set('suits',suits).ai=function(card){
var player=_status.event.player;
var target=_status.event.getParent('xinfu_daigong').player;
if(get.damageEffect(target,player,player)>0) return 6.5-get.value(card);
return 0;
};
'step 2'
if(result.bool){
trigger.source.give(result.cards,player,true);
}
else trigger.cancel();
},
},
"xinfu_zhaoxin":{
group:["zhaoxin_give"],
intro:{
content:"cards",
onunmark:function(storage,player){
if(storage&&storage.length){
player.$throw(storage,1000);
game.cardsDiscard(storage);
game.log(storage,'被置入了弃牌堆');
storage.length=0;
}
},
},
enable:"phaseUse",
usable:1,
audio:2,
init:function (player,skill){
if(!player.storage[skill]) player.storage[skill]=[];
},
filter:function (event,player){
return player.storage.xinfu_zhaoxin.length<3&&player.countCards('h')>0;
},
visible:true,
filterCard:true,
selectCard:function (){
var player=_status.event.player;
return [1,3-player.storage.xinfu_zhaoxin.length];
},
discard:false,
//lose:false,
delay:false,
content:function (){
'step 0'
//player.lose(cards,ui.special,'toStorage')
player.$give(cards,player,false);
player.storage.xinfu_zhaoxin=player.storage.xinfu_zhaoxin.concat(cards);
player.markSkill('xinfu_zhaoxin');
'step 1'
player.draw(cards.length);
},
check:function (card){
return 6-get.value(card);
},
ai:{
order:1,
result:{
player:1,
},
},
},
"zhaoxin_give":{
trigger:{
global:"phaseDrawAfter",
},
filter:function (event,player){
2020-07-03 23:46:34 +00:00
if(!player.storage.xinfu_zhaoxin||!player.storage.xinfu_zhaoxin.length) return false;
2020-03-25 12:27:23 +00:00
return player==event.player||player.inRange(event.player);
},
direct:true,
content:function (){
'step 0'
player.chooseCardButton(get.prompt('xinfu_zhaoxin',trigger.player),player.storage.xinfu_zhaoxin,function(button){
return true;
}).set('ai',function(button){
return 1+Math.random();
});
'step 1'
if(result.bool){
event.card=result.links[0];
player.logSkill('xinfu_zhaoxin',target);
player.line(trigger.player,'thunder');
player.showCards(event.card);
}
else event.finish();
'step 2'
trigger.player.chooseBool('是否获得'+get.translation(event.card)+'?').ai=function(){
return get.attitude(trigger.player,player)>0;
};
'step 3'
if(result.bool){
player.storage.xinfu_zhaoxin.remove(event.card);
player.$give(event.card,trigger.player);
trigger.player.gain(event.card,'fromStorage');
if(player.storage.xinfu_zhaoxin.length) player.markSkill('xinfu_zhaoxin');
else player.unmarkSkill('xinfu_zhaoxin');
player.chooseBool('是否对'+get.translation(trigger.player)+'造成一点伤害?').ai=function(){
return get.damageEffect(trigger.player,player,player)>0
};
}
else{
trigger.player.chat('拒绝');
event.finish();
}
'step 4'
if(result.bool){
trigger.player.damage('nocard');
}
},
},
"xinfu_qianchong":{
audio:3,
mod:{
targetInRange:function (card,player,target){
if(player.storage.xinfu_qianchong.contains(get.type(card,'trick'))){
return true;
}
},
cardUsable:function (card,player,num){
if(player.storage.xinfu_qianchong.contains(get.type(card,'trick'))) return Infinity;
},
},
group:["xinfu_qianchong_clear","qc_weimu","qc_mingzhe"],
subSkill:{
clear:{
sub:true,
forced:true,
silent:true,
popup:false,
trigger:{
player:"phaseAfter",
},
content:function (){
player.storage.xinfu_qianchong=[];
},
},
},
init:function (event,player){
event.storage[player]=[];
},
trigger:{
player:"phaseUseBegin",
},
locked:false,
direct:true,
filter:function (event,player){
var es=player.getCards('e');
if(!es.length) return true;
var col=get.color(es[0]);
for(var i=0;i<es.length;i++){
if(get.color(es[i])!=col) return true;
}
return false;
},
content:function (){
'step 0'
var list=['basic','trick','equip','cancel2'];
for(var i=0;i<player.storage.xinfu_qianchong.length;i++){
list.remove(player.storage.xinfu_qianchong[i]);
}
if(list.length>1){
player.chooseControl(list).set('ai',function(){
return list[0];
}
).set('prompt',get.prompt('xinfu_qianchong')).set('prompt2',get.translation('xinfu_qianchong_info'));
}
else event.finish();
'step 1'
if(result.control&&result.control!='cancel2'){
player.logSkill('xinfu_qianchong');
player.storage.xinfu_qianchong.add(result.control);
var str=get.translation(result.control)+'牌';
game.log(player,'声明了','#y'+str);
player.popup(str,'thunder');
}
},
},
"qc_weimu":{
audio:"xinfu_qianchong",
mod:{
targetEnabled:function (card,player,target){
var bool=true;
var es=target.getCards('e');
if(!es.length) bool=false;
for(var i=0;i<es.length;i++){
if(get.color(es[i])!='black') bool=false;
}
if(bool&&(get.type(card)=='trick'||get.type(card)=='delay')&&
get.color(card)=='black') return false;
},
},
},
"qc_mingzhe":{
audio:"xinfu_qianchong",
trigger:{
player:["useCard","respond","loseAfter"],
},
frequent:true,
filter:function (event,player){
if(player.hasSkill('mingzhe')) return false;
if(player==_status.currentPhase) return false;
var es=player.getCards('e');
if(!es.length) return false;
for(var i=0;i<es.length;i++){
if(get.color(es[i])!='red') return false;
}
if(event.name!='lose') return get.color(event.card)=='red';
if(event.type!='discard') return false;
if(event.cards2){
for(var i=0;i<event.cards2.length;i++){
if(get.color(event.cards2[i])=='red') return true;
}
}
return false;
},
content:function (){
"step 0"
event.count=1;
if(trigger.name=='lose'){
event.count=0;
for(var i=0;i<trigger.cards2.length;i++){
if(get.color(trigger.cards2[i])=='red') event.count++;
}
}
"step 1"
player.draw();
event.count--;
"step 2"
if(event.count){
player.chooseBool(get.prompt2('mingzhe')).set('frequentSkill',event.name);
}
else event.finish();
"step 3"
if(result.bool){
player.logSkill('qc_mingzhe');
event.goto(1);
}
},
ai:{
threaten:0.7,
},
},
"xinfu_shangjian":{
trigger:{
global:"phaseJieshuBegin",
},
audio:2,
filter:function (event,player){
var num=0;
player.getHistory('lose',function(evt){
if(evt.cards2) num+=evt.cards2.length;
});
return num>0&&num<=player.hp
},
frequent:true,
content:function (){
'step 0'
var num=0;
player.getHistory('lose',function(evt){
if(evt.cards2) num+=evt.cards2.length;
});
if(num>0){
player.draw(num);
}
},
},
"rw_bagua_skill":{
inherit:"bagua_skill",
audio:"bagua_skill",
content:function (){
"step 0"
player.judge('rewrite_bagua',function(card){return (get.suit(card)!='spade')?1.5:-0.5});
"step 1"
if(result.judge>0){
trigger.untrigger();
trigger.set('responded',true);
trigger.result={bool:true,card:{name:'shan'}}
}
},
},
"rw_baiyin_skill":{
inherit:"baiyin_skill",
audio:"baiyin_skill",
},
"rw_lanyinjia":{
inherit:"lanyinjia",
audio:"lanyinjia",
},
"rw_minguangkai_cancel":{
inherit:"minguangkai_cancel",
},
"rw_minguangkai_link":{
inherit:"minguangkai_link",
trigger:{
player:"linkBefore",
},
forced:true,
priority:20,
filter:function (event,player){
return !player.isLinked();
},
content:function (){
trigger.cancel();
},
ai:{
effect:{
target:function (card,player,target,current){
if(['tiesuo','lulitongxin'].contains(card.name)){
return 'zerotarget';
}
},
},
},
},
"rw_renwang_skill":{
inherit:"renwang_skill",
audio:"renwang_skill",
filter:function (event,player){
if(player.hasSkillTag('unequip2')) return false;
if(event.player.hasSkillTag('unequip',false,{
name:event.card?event.card.name:null,
target:player,
card:event.card
})) return false;
return (event.card.name=='sha'&&(get.suit(event.card)=='heart'||get.color(event.card)=='black'))
},
ai:{
effect:{
target:function (card,player,target){
if(target.hasSkillTag('unequip2')) return;
if(player.hasSkillTag('unequip',false,{
name:card?card.name:null,
target:player,
card:card
})||player.hasSkillTag('unequip_ai',false,{
name:card?card.name:null,
target:player,
card:card
})) return;
if(card.name=='sha'&&['spade','club','heart'].contains(get.suit(card))) return 'zerotarget';
},
},
},
},
"rw_tengjia1":{
inherit:"tengjia1",
audio:"tengjia1",
},
"rw_tengjia2":{
inherit:"tengjia2",
audio:"tengjia1",
},
"rw_tengjia3":{
audio:"tengjia1",
inherit:"rw_minguangkai_link",
ai:{
effect:{
target:function (card,player,target,current){
if(['tiesuo','lulitongxin'].contains(card.name)){
return 'zeroplayertarget';
}
},
},
},
},
"rw_tengjia4":{
inherit:"tengjia3",
audio:"tengjia1",
},
"xinfu_pingcai":{
"wolong_card":function (){
'step 0'
var ingame=game.hasPlayer(function(current){
return ['sp_zhugeliang','re_sp_zhugeliang'].contains(current.name)||['sp_zhugeliang','re_sp_zhugeliang'].contains(current.name2);
})?true:false;
var prompt='请选择';
prompt+=ingame?'至多两名':'一名';
prompt+='角色对其造成1点火焰伤害';
var range=ingame?[1,2]:[1,1]
player.chooseTarget(prompt,range).set('ai',function(target){
var player=_status.event.player;
return get.damageEffect(target,player,player,'fire');
});
'step 1'
if(result.bool&&result.targets.length){
player.line(result.targets,'fire');
for(var i=0;i<result.targets.length;i++){
result.targets[i].damage('fire');
}
}
},
"fengchu_card":function (){
'step 0'
var ingame=game.hasPlayer(function(current){
return ['re_pangtong','pangtong'].contains(current.name)||['re_pangtong','pangtong'].contains(current.name2);
})?true:false;
var prompt='请选择';
prompt+=ingame?'至多四名':'至多三名';
prompt+='要横置的角色';
var range=ingame?[1,4]:[1,3]
player.chooseTarget(prompt,range).set('ai',function(target){
var player=_status.event.player;
return get.effect(target,{name:'tiesuo'},player,player)
});
'step 1'
if(result.bool&&result.targets.length){
player.line(result.targets,'green');
for(var i=0;i<result.targets.length;i++){
result.targets[i].link();
}
}
},
"xuanjian_card":function (){
'step 0'
event.ingame=game.hasPlayer(function(current){
return ['re_xushu','xin_xushu','xushu'].contains(current.name)||['re_xushu','xin_xushu','xushu'].contains(current.name2);
})?true:false;
var prompt='请选择一名角色,令其回复一点体力并摸一张牌';
prompt+=event.ingame?',然后你摸一张牌。':'。';
player.chooseTarget(prompt).set('ai',function(target){
var player=_status.event.player;
return get.attitude(player,target)*(target.isDamaged()?2:1);
});
'step 1'
if(result.bool&&result.targets.length){
var target=result.targets[0];
player.line(target,'thunder');
target.draw();
target.recover();
if(event.ingame) player.draw();
}
},
"shuijing_card":function (){
'step 0'
event.ingame=game.hasPlayer(function(current){
return current.name=='simahui'||current.name2=='simahui';
})?true:false;
var prompt='将一名角色装备区中的';
prompt+=event.ingame?'一张牌':'防具牌';
prompt+='移动到另一名角色的装备区中';
var next=player.chooseTarget(2,function(card,player,target){
if(ui.selected.targets.length){
if(!_status.event.ingame){
return target.isEmpty(2)?true:false;
}
var from=ui.selected.targets[0];
if(target.isMin()) return false;
var es=from.getCards('e');
for(var i=0;i<es.length;i++){
if(['equip3','equip4'].contains(get.subtype(es[i]))&&target.getEquip('liulongcanjia')) continue;
if(es[i].name=='liulongcanjia'&&target.countCards('e',{subtype:['equip3','equip4']})>1) continue;
if(target.isEmpty(get.subtype(es[i]))) return true;
}
return false;
}
else{
if(!event.ingame){
if(target.getEquip(2)) return true;
return false;
}
return target.countCards('e')>0;
}
});
next.set('ingame',event.ingame)
next.set('ai',function(target){
var player=_status.event.player;
var att=get.attitude(player,target);
if(ui.selected.targets.length==0){
if(att<0){
if(game.hasPlayer(function(current){
if(get.attitude(player,current)>0){
var es=target.getCards('e');
for(var i=0;i<es.length;i++){
if(['equip3','equip4'].contains(get.subtype(es[i]))&&current.getEquip('liulongcanjia')) continue;
else if(es[i].name=='liulongcanjia'&&target.countCards('e',{subtype:['equip3','equip4']})>1) continue;
else if(current.isEmpty(get.subtype(es[i]))) return true;
}
return false;
}
})) return -att;
}
return 0;
}
if(att>0){
var es=ui.selected.targets[0].getCards('e');
var i;
for(i=0;i<es.length;i++){
if(['equip3','equip4'].contains(get.subtype(es[i]))&&target.getEquip('liulongcanjia')) continue;
if(es[i].name=='liulongcanjia'&&target.countCards('e',{subtype:['equip3','equip4']})>1) continue;
if(target.isEmpty(get.subtype(es[i]))) break;
}
if(i==es.length) return 0;
}
return -att*get.attitude(player,ui.selected.targets[0]);
});
next.set('multitarget',true);
next.set('targetprompt',['被移走','移动目标']);
next.set('prompt',prompt);
'step 1'
if(result.bool){
player.line2(result.targets,'green');
event.targets=result.targets;
}
else event.finish();
'step 2'
game.delay();
'step 3'
if(targets.length==2){
if(!event.ingame){
event._result={
bool:true,
links:[targets[0].getEquip(2)],
};
}
else{
player.choosePlayerCard('e',true,function(button){
return get.equipValue(button.link);
},targets[0]).set('targets0',targets[0]).set('targets1',targets[1]).set('filterButton',function(button){
var targets1=_status.event.targets1;
if(['equip3','equip4'].contains(get.subtype(button.link))&&targets1.getEquip('liulongcanjia')) return false;
if(button.link.name=='liulongcanjia'&&targets1.countCards('e',{subtype:['equip3','equip4']})>1) return false;
return !targets1.countCards('e',{subtype:get.subtype(button.link)});
});
}
}
else event.finish();
'step 4'
if(result.bool&&result.links.length){
var link=result.links[0];
if(get.position(link)=='e') event.targets[1].equip(link);
else if(link.viewAs) event.targets[1].addJudge({name:link.viewAs},[link]);
else event.targets[1].addJudge(link);
event.targets[0].$give(link,event.targets[1],false)
game.delay();
}
},
audio:true,
enable:"phaseUse",
usable:1,
content:function (){
"step 0"
var list=["wolong","fengchu","xuanjian","shuijing"];
var list2=[];
for(var i=0;i<list.length;i++){
list2.push(game.createCard(list[i]+'_card','',''))
}
//list2.randomSort();
event.time=get.utc();
player.chooseButton(['请选择要擦拭的宝物',list2],true).set('ai',function(button){
var player=_status.event.player;
if(button.link.name=='xuanjian_card'){
if(game.hasPlayer(function(current){
return current.isDamaged()&&current.hp<3&&get.attitude(player,current)>1;
})) return 1+Math.random();
else return 1;
}
else if(button.link.name=='wolong_card'){
if(game.hasPlayer(function(current){
return get.damageEffect(current,player,player,'fire')>0;
})) return 1.2+Math.random();
else return 0.5;
}
else return 0.6;
});
"step 1"
var delay=8400-(get.utc()-event.time);
if(delay>0){
event.delay2=true;
event.dialog=ui.create.dialog(get.translation(player)+'正在擦拭宝物...'+(_status.connectMode?'':'<br>(点击屏幕可跳过等待)'));
event.videoId=lib.status.videoId++;
game.broadcast('createDialog',event.videoId,get.translation(player)+'正在擦拭宝物...');
game.pause();
event.pingcai_delayed=true;
setTimeout(function(){
if(event.pingcai_delayed==true){
delete event.pingcai_delayed;
game.resume();
}
},delay);
if(!_status.connectMode){
event.forceMine=true;
event.custom.replace.window=function(){
if(event.pingcai_delayed==true){
delete event.forceMine;
delete event.pingcai_delayed;
game.resume();
}
}
}
}
event.card=result.links[0];
"step 2"
if(event.delay2){
delete event.custom.replace.window;
event.dialog.close();
game.addVideo('cardDialog',null,event.videoId);
game.broadcast('closeDialog',event.videoId);
}
player.logSkill('pcaudio_'+event.card.name);
player.$throw(event.card);
event.insert(lib.skill.xinfu_pingcai[event.card.name],{
player:player,
});
},
ai:{
order:7,
result:{
player:1,
},
},
},
"xinfu_pdgyingshi":{
mod:{
targetEnabled:function (card,player,target){
if(get.type(card)=='delay'){
return false;
}
},
},
trigger:{
player:['phaseZhunbeiBefore','phaseJieshuBefore'],
},
forced:true,
audio:2,
group:'xinfu_pdgyingshi2',
priority:15,
content:function(){
trigger.cancel();
game.log(player,'跳过了',event.triggername=='phaseZhunbeiBefore'?'准备阶段':'结束阶段');
},
},
xinfu_pdgyingshi2:{
popup:false,
trigger:{
player:"phaseJudgeBefore",
},
forced:true,
priority:15,
content:function (){
trigger.cancel();
game.log(player,'跳过了判定阶段');
},
},
"pcaudio_wolong_card":{
audio:true,
},
"pcaudio_fengchu_card":{
audio:true,
},
"pcaudio_shuijing_card":{
audio:true,
},
"pcaudio_xuanjian_card":{
audio:true,
},
"yizan_respond_sha":{
audio:2,
enable:["chooseToRespond"],
filterCard:function (card,player,target){
if(player.storage.yizan) return get.type(card)=='basic';
else if(ui.selected.cards.length){
if(get.type(ui.selected.cards[0])=='basic') return true;
return get.type(card)=='basic';
}
return true;
},
selectCard:function (){
var player=_status.event.player;
if(player.storage.yizan) return 1;
return 2;
},
position:"he",
viewAs:{
name:"sha",
},
complexCard:true,
viewAsFilter:function (player){
if(!player.storage.yizan){
if(player.countCards('h')<2) return false;
}
return player.hasCard(function(card){
return get.type(card)=='basic';
},'h');
},
prompt:function (){
var player=_status.event.player;
var str=!player.storage.yizan?'两张牌(其中至少应有一张基本牌)':'一张基本牌';
return '将'+str+'当做杀打出';
},
check:function (card){
if(!ui.selected.cards.length&&get.type(card)=='basic') return 6;
return 5-get.value(card);
},
ai:{
skillTagFilter:function (player){
if(!player.storage.yizan){
if(player.countCards('he')<2) return false;
}
return player.hasCard(function(card){
return get.type(card)=='basic';
},'h');
},
respondSha:true,
},
},
"yizan_use":{
init:function (player){
if(!player.storage.yizan_use) player.storage.yizan_use=0;
if(!player.storage.yizan) player.storage.yizan=false;
},
mark:true,
intro:{
content:"已发动过#次",
},
group:["yizan_respond_sha","yizan_respond_shan","yizan_count"],
enable:"chooseToUse",
filter:function (event,player){
if(!player.storage.yizan&&player.countCards('he')<2) return false;
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.storage.yizan&&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 {
filterCard:function(card,player,target){
if(player.storage.yizan) return get.type(card)=='basic';
else if(ui.selected.cards.length){
if(get.type(ui.selected.cards[0])=='basic') return true;
return get.type(card)=='basic';
}
return true;
},
complexCard:true,
selectCard:function(){
var player=_status.event.player;
if(player.storage.yizan) return 1;
return 2;
},
check:function(card,player,target){
if(!ui.selected.cards.length&&get.type(card)=='basic') return 6;
else return 6-get.value(card);
},
viewAs:{name:links[0][2],nature:links[0][3]},
position:'he',
popname:true,
precontent:function(){
player.logSkill('yizan_respond_shan');
},
}
},
prompt:function (links,player){
var str=!player.storage.yizan?'两张牌(其中至少应有一张基本牌)':'一张基本牌';
return '将'+str+'当做'+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.storage.yizan&&player.countCards('h',{type:'basic'})>2){
return 3.3;
}
return 3.1;
},
save:true,
respondSha:true,
skillTagFilter:function (player,tag,arg){
if(!player.storage.yizan&&player.countCards('he')<2) return false;
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,
},
},
},
"yizan_respond_shan":{
complexCard:true,
audio:2,
enable:["chooseToUse","chooseToRespond"],
filterCard:function (card,player,target){
if(player.storage.yizan) return get.type(card)=='basic';
else if(ui.selected.cards.length){
if(get.type(ui.selected.cards[0])=='basic') return true;
return get.type(card)=='basic';
}
return true;
},
selectCard:function (){
var player=_status.event.player;
if(player.storage.yizan) return 1;
return 2;
},
position:"he",
viewAs:{
name:"shan",
},
viewAsFilter:function (player){
if(!player.storage.yizan){
if(player.countCards('he')<2) return false;
}
return player.hasCard(function(card){
return get.type(card)=='basic';
},'h');
},
prompt:function (){
var player=_status.event.player;
var str=!player.storage.yizan?'两张牌(其中至少应有一张基本牌)':'一张基本牌';
return '将'+str+'当做闪使用或打出';
},
check:function (card){
if(!ui.selected.cards.length&&get.type(card)=='basic') return 6;
return 5-get.value(card);
},
ai:{
respondShan:true,
skillTagFilter:function (player){
if(!player.storage.yizan){
if(player.countCards('he')<2) return false;
}
return player.hasCard(function(card){
return get.type(card)=='basic';
},'h');
},
effect:{
target:function (card,player,target,current){
if(get.tag(card,'respondShan')&&current<0) return 0.6
},
},
basic:{
useful:[7,2],
value:[7,2],
},
},
},
"xinfu_longyuan":{
audio:2,
forced:true,
unique:true,
juexingji:true,
trigger:{
player:["useCardAfter","respondAfter"],
},
init:function (player){
player.storage.xinfu_longyuan=false;
},
delay:1.2,
skillAnimation:true,
animationColor:'orange',
filter:function (event,player){
if(player.storage.xinfu_longyuan) return false;
return player.storage.yizan_use>2;
},
content:function (){
player.awakenSkill('xinfu_longyuan');
player.storage.yizan=true;
game.delay(1);
},
},
"yizan_count":{
forced:true,
silent:true,
popup:false,
trigger:{
player:["respond","useCard1"],
},
filter:function (event,player){
if(event.skill!='yizan_respond_sha'&&event.skill!='yizan_respond_shan'&&event.skill!='yizan_use_backup') return false;
return player.storage.yizan_use!=undefined;
},
content:function (){
player.storage.yizan_use++;
player.markSkill('yizan_use');
},
},
xinfu_jingxie:{audio:2},
"xinfu_jingxie1":{
group:["xinfu_jingxie2"],
position:"he",
audio:'xinfu_jingxie',
enable:"phaseUse",
filter:function(event,player){
var he=player.getCards('he');
for(var i=0;i<he.length;i++){
if(["bagua","baiyin","lanyinjia","renwang","tengjia","zhuge"].contains(he[i].name)) return true;
}
return false;
},
filterCard:function (card){
return ["bagua","baiyin","lanyinjia","renwang","tengjia","zhuge"].contains(card.name);
},
discard:false,
check:function(){
return 1;
},
content:function (){
"step 0"
player.showCards(cards);
"step 1"
var card=cards[0];
player.gain(game.createCard('rewrite_'+card.name,get.suit(card),card.number),'gain2');
},
ai:{
basic:{
order:10,
},
result:{
player:1,
},
},
},
"xinfu_jingxie2":{
prompt:"重铸一张防具牌然后将体力回复至1点。",
audio:'xinfu_jingxie',
enable:"chooseToUse",
filterCard:function (card){
return get.subtype(card)=='equip2';
},
filter:function (event,player){
if(event.type=='dying'){
if(player!=event.dying) return false;
2020-03-27 05:30:48 +00:00
return player.countCards('he',function(card){
return get.subtype(card)=='equip2';
})>0;
2020-03-25 12:27:23 +00:00
}
2020-03-27 05:30:48 +00:00
return false;
2020-03-25 12:27:23 +00:00
},
check:function(){
return 1;
},
position:"he",
discard:false,
loseTo:'discardPile',
prepare:function(cards,player){
player.$throw(cards,1000);
game.log(player,'将',cards,'置入了弃牌堆')
},
content:function (){
'step 0'
player.draw();
'step 1'
var num=1-player.hp;
if(num) player.recover(num);
},
ai:{
order:0.5,
skillTagFilter:function (player){
if(player.hp>0) return false;
return player.countCards('he',function(card){
return get.subtype(card)=='equip2';
})>0;
},
save:true,
result:{
player:function (player){
return 10;
},
},
},
},
"xinfu_qiaosi":{
enable:"phaseUse",
usable:1,
content:function (){
'step 0'
if(get.isLuckyStar(player)){
2020-03-25 12:27:23 +00:00
event.num=6;
player.throwDice(6);
}
else player.throwDice();
'step 1'
event.cards=get.cards(event.num);
player.showCards(event.cards);
'step 2'
player.gain(event.cards,'gain2');
player.chooseControl().set('choiceList',[
'将'+get.cnNumber(event.num)+'张牌交给一名其他角色',
'弃置'+get.cnNumber(event.num)+'张牌',
]).set('ai',function(){
if(game.hasPlayer(function(current){
return current!=player&&get.attitude(player,current)>2;
})) return 0;
return 1;
});
'step 3'
if(result.index==0){
player.chooseCardTarget({
position:'he',
filterCard:true,
selectCard:event.num,
filterTarget:function(card,player,target){
return player!=target;
},
ai1:function(card){
return 1;
},
ai2:function(target){
var att=get.attitude(_status.event.player,target);
return att;
},
prompt:'请选择要送人的卡牌',
forced:true,
});
}
else{
player.chooseToDiscard(event.num,true,'he');
event.finish();
}
'step 4'
if(result.bool){
var target=result.targets[0];
player.give(result.cards,target);
}
},
ai:{
order:7.5,
result:{
player:1,
},
},
},
zhaohuo:{
audio:2,
trigger:{global:'dying'},
forced:true,
//priority:12,
filter:function(event,player){
return event.player!=player&&player.maxHp>1;
},
content:function(){
'step 0'
event.num=player.maxHp-1;
player.loseMaxHp(event.num,true);
'step 1'
player.draw(event.num);
}
},
yixiang:{
audio:2,
trigger:{target:'useCardToTargeted'},
frequent:true,
filter:function(event,player){
if(event.player.hp<=player.hp) return false;
//if(event.targets.length>1) return false;
var hs=player.getCards('h');
var names=['sha','shan','tao','jiu','du'];
for(var i=0;i<hs.length;i++){
names.remove(hs[i].name);
}
if(!names.length) return false;
for(var i=0;i<ui.cardPile.childElementCount;i++){
if(names.contains(ui.cardPile.childNodes[i].name)){
return true;
}
}
return false;
},
usable:1,
content:function(){
var hs=player.getCards('h');
var list=[];
var names=['sha','shan','tao','jiu','du'];
for(var i=0;i<hs.length;i++){
names.remove(hs[i].name);
}
for(var i=0;i<ui.cardPile.childElementCount;i++){
if(names.contains(ui.cardPile.childNodes[i].name)){
list.push(ui.cardPile.childNodes[i]);
}
}
if(list.length){
player.gain(list.randomGet(),'draw');
}
}
},
yirang:{
audio:2,
trigger:{player:'phaseUseBegin'},
direct:true,
filter:function(event,player){
if(!player.countCards('he',function(card){
return get.type(card)!='basic';
})){
return false;
}
return game.hasPlayer(function(current){
return current.maxHp>player.maxHp;
});
},
content:function(){
'step 0'
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;
});
'step 1'
if(result.bool){
var cards=player.getCards('he',function(card){
return get.type(card)!='basic';
});
var target=result.targets[0];
var types=[];
for(var i=0;i<cards.length;i++){
types.add(get.type(cards[i],'trick'));
}
player.logSkill('yirang',target);
target.gain(cards,player,'give');
player.gainMaxHp(target.maxHp-player.maxHp,true);
player.recover(types.length);
game.delay();
}
}
},
kuangcai:{
audio:2,
trigger:{player:'phaseUseBegin'},
filter:function(event,player){
return !event.player.isMad();
},
content:function(){
game.broadcastAll(function(player){
player.forceCountChoose={phaseUse:5};
},player)
player.addSkill('kuangcai_use');
player.addSkill('kuangcai_cancel');
//ui.auto.hide();
},
subSkill:{
use:{
mod:{
cardUsable:function(card){
if(get.info(card)&&get.info(card).forceUsable) return;
return Infinity;
},
targetInRange:function(){
return true;
},
},
trigger:{player:'useCard'},
forced:true,
2020-04-18 05:32:41 +00:00
charlotte:true,
2020-03-25 12:27:23 +00:00
//audio:'kuangcai',
silent:true,
popup:false,
usable:5,
filter:function(event,player){
if(!player.forceCountChoose){
return false;
}
return true;
},
content:function(){
player.draw();
if(player.forceCountChoose.phaseUse==1){
var evt=event.getParent('phaseUse');
if(evt) evt.skipped=true;
}
else game.broadcastAll(function(player){
player.forceCountChoose.phaseUse--;
},player);
},
ai:{
presha:true,
pretao:true,
},
},
cancel:{
trigger:{player:'phaseUseEnd'},
priority:50,
silent:true,
2020-04-18 05:32:41 +00:00
charlotte:true,
2020-03-25 12:27:23 +00:00
content:function(){
game.broadcastAll(function(player){
delete player.forceCountChoose;
},player);
//ui.auto.show();
player.removeSkill('kuangcai_use');
player.removeSkill('kuangcai_cancel');
if(player.storage.counttrigger) delete player.storage.counttrigger.kuangcai_use;
}
}
},
ai:{
threaten:4.5,
},
},
shejian:{
audio:2,
trigger:{player:'phaseDiscardEnd'},
direct:true,
filter:function(event,player){
var cards=[];
player.getHistory('lose',function(evt){
if(evt.type=='discard'&&evt.getParent('phaseDiscard')==event) cards.addArray(evt.cards2);
});
if(cards){
if(cards.length<2) return false;
var suits=[];
for(var i=0;i<cards.length;i++){
var suit=get.suit(cards[i]);
if(suits.contains(suit)){
return false;
}
else{
suits.push(suit);
}
}
return true;
}
return false;
},
content:function(){
'step 0'
player.chooseTarget(get.prompt('shejian'),'弃置一名其他角色的一张牌',function(card,player,target){
if(player==target) return false;
return target.countDiscardableCards(player,'he')>0;
}).ai=function(target){
return -get.attitude(player,target);
};
'step 1'
if(result.bool){
player.logSkill('shejian',result.targets);
player.discardPlayerCard(result.targets[0],'he',true);
}
else{
event.finish();
}
},
},
shixin:{
audio:2,
trigger:{player:'damageBegin4'},
filter:function(event){
return event.nature=='fire';
},
forced:true,
content:function(){
trigger.cancel();
},
ai:{
nofire:true,
effect:{
target:function(card,player,target,current){
if(get.tag(card,'fireDamage')) return 'zerotarget';
}
}
}
},
fenyin:{
locked:false,
mod:{
aiOrder:function(player,card,num){
if(typeof card=='object'&&player==_status.currentPhase){
var evt=player.getLastUsed();
if(evt&&evt.card&&get.color(evt.card)!='none'&&get.color(card)!='none'&&get.color(evt.card)!=get.color(card)){
return num+10;
}
}
},
},
audio:2,
trigger:{player:'useCard'},
frequent:true,
//usable:3,
filter:function(event,player){
if(_status.currentPhase!=player) return false;
var evt=player.getLastUsed(1);
if(!evt) return false;
var color1=get.color(evt.card);
var color2=get.color(event.card);
return color1&&color2&&color1!='none'&&color2!='none'&&color1!=color2;
},
content:function(){
player.draw();
},
ai:{
threaten:3,
},
},
dujin:{
audio:2,
trigger:{player:'phaseDrawBegin2'},
frequent:true,
filter:function(event,player){
return !event.numFixed;
},
content:function(){
trigger.num+=1+Math.floor(player.countCards('e')/2);
}
},
yingjian:{
trigger:{player:'phaseZhunbeiBegin'},
direct:true,
audio:'qingyi',
content:function(){
player.chooseUseTarget('###是否发动【影箭】?###视为使用一张没有距离限制的【杀】',{name:'sha'},false,'nodistance').logSkill='yingjian';
},
ai:{
threaten:function(player,target){
return 1.6;
}
}
},
tunchu:{
audio:2,
trigger:{player:'phaseDrawBegin2'},
check:function(event,player){
return player.countCards('h')-player.countCards('h',{type:'equip'})<=player.hp;
},
filter:function(event,player){
if(event.numFixed||player.storage.tunchu&&player.storage.tunchu.length) return false;
return true;
},
content:function(){
trigger.num+=2;
player.addTempSkill('tunchu_choose','phaseDrawAfter');
},
init:function(player){
if(!player.storage.tunchu) player.storage.tunchu=[];
},
intro:{
content:'cards',
onunmark:function(storage,player){
if(storage&&storage.length){
player.$throw(storage,1000);
game.cardsDiscard(storage);
game.log(storage,'被置入了弃牌堆');
storage.length=0;
}
},
},
group:'tunchu_disable',
subSkill:{
choose:{
trigger:{player:'phaseDrawEnd'},
forced:true,
popup:false,
content:function(){
'step 0'
player.removeSkill('tunchu_choose');
var nh=player.countCards('h');
if(nh){
player.chooseCard('h',[1,nh],'将任意张手牌置于你的武将牌上').set('ai',function(card){
var player=_status.event.player;
var count=game.countPlayer(function(current){
return get.attitude(player,current)>2&&current.hp-current.countCards('h')>1;
});
if(ui.selected.cards.length>=count) return -get.value(card);
return 5-get.value(card);
});
}
else{
event.finish();
}
'step 1'
if(result.bool){
player.lose(result.cards,ui.special,'toStorage');
player.storage.tunchu.addArray(result.cards);
player.markSkill('tunchu');
player.syncStorage('tunchu');
}
}
},
disable:{
mod:{
cardEnabled:function(card,player){
if(player.storage.tunchu&&player.storage.tunchu.length&&card.name=='sha'){
return false;
}
},
cardUsable:function(card,player){
if(player.storage.tunchu&&player.storage.tunchu.length&&card.name=='sha'){
return false;
}
},
}
}
}
},
shuliang:{
audio:2,
trigger:{global:'phaseJieshuBegin'},
direct:true,
filter:function(event,player){
return player.storage.tunchu&&player.storage.tunchu.length>0&&event.player.countCards('h')<event.player.hp&&event.player.isAlive();
},
content:function(){
'step 0'
var goon=(get.attitude(player,trigger.player)>0);
player.chooseCardButton(get.prompt('shuliang',trigger.player),player.storage.tunchu).set('ai',function(){
if(_status.event.goon) return 1;
return 0;
}).set('goon',goon);
'step 1'
if(result.bool){
player.logSkill('shuliang',trigger.player);
player.storage.tunchu.remove(result.links[0]);
player.$throw(result.links);
game.cardsDiscard(result.links);
player.syncStorage('tunchu');
if(player.storage.tunchu.length==0){
player.unmarkSkill('tunchu');
}
trigger.player.draw(2);
}
}
},
choulve:{
audio:2,
trigger:{player:'phaseUseBegin'},
direct:true,
filter:function(event,player){
return game.hasPlayer(function(current){
return current!=player&&current.countCards('he');
})
},
content:function(){
'step 0'
var str='令一名其他角色交给你一张牌';
if(player.storage.choulve){
str+='若其如此做,视为你使用【'+get.translation(player.storage.choulve)+'】';
}
var goon=true;
if(player.storage.choulve){
goon=game.hasPlayer(function(current){
return player.canUse(player.storage.choulve,current)&&get.effect(current,player.storage.choulve,player,player)>0;
});
}
player.chooseTarget(get.prompt('choulve'),str,function(card,player,target){
return target!=player&&target.countCards('he');
}).set('ai',function(target){
if(!_status.event.goon) return 0;
var player=_status.event.player;
if(get.attitude(player,target)>=0&&get.attitude(target,player)>=0){
return Math.sqrt(target.countCards('he'));
}
return 0;
}).set('goon',goon);
'step 1'
if(result.bool){
var target=result.targets[0];
player.logSkill('choulve',target);
target.chooseCard('he','是否交给'+get.translation(player)+'一张牌?',
player.storage.choulve?('若如此做,视为'+get.translation(player)+
'使用【'+get.translation(player.storage.choulve)+'】'):null).set('ai',function(card){
if(_status.event.goon) return 7-get.value(card);
return 0;
}).set('goon',get.attitude(target,player)>1);
event.target=target;
}
else{
event.finish();
}
'step 2'
if(result.bool){
event.target.give(result.cards,player);
if(player.storage.choulve){
player.chooseUseTarget(player.storage.choulve,true,false);
}
}
},
group:'choulve_damage',
subSkill:{
damage:{
trigger:{player:'damageEnd'},
silent:true,
content:function(){
if(trigger.card&&get.info(trigger.card).enable&&get.type(trigger.card)!='delay'){
player.storage.choulve={name:trigger.card.name};
}
}
}
}
},
polu:{
audio:2,
trigger:{player:['phaseZhunbeiBegin','damageEnd']},
forced:true,
filter:function(event,player){
return !player.getEquip('ly_piliche');
},
content:function(){
if(trigger.name=='phaseZhunbei'){
player.useCard(game.createCard('ly_piliche','diamond',1),player);
}
else{
player.draw(trigger.num);
}
}
},
ly_piliche:{
trigger:{source:'damageSource'},
check:function(event,player){
return get.attitude(player,event.player)<0;
},
filter:function(event,player){
if(event.card&&get.type(event.card)=='delay') return false;
return event.player.isIn()&&(event.player.getEquip(2)||event.player.getEquip(3));
},
logTarget:'player',
content:function(){
var equip2=trigger.player.getEquip(2);
var equip3=trigger.player.getEquip(3);
var cards=[];
if(equip2) cards.push(equip2);
if(equip3) cards.push(equip3);
if(cards.length){
trigger.player.discard(cards);
}
}
},
2019-08-30 15:02:50 +00:00
},
2019-07-17 08:25:58 +00:00
translate:{
"re_sp_zhugeliang":"手杀卧龙",
2020-03-25 12:27:23 +00:00
ly_piliche:'霹雳车',
ly_piliche_info:'当你对其他角色造成伤害后,若造成伤害的牌不为延时锦囊牌,你可以弃置其装备区里的防具牌与+1坐骑牌当你失去此装备时销毁之。',
polu:'破橹',
polu_info:'锁定技回合开始时若你的装备区里没有【霹雳车】你使用之当你受到1点伤害后若你的装备区里没有【霹雳车】你摸一张牌。',
choulve:'筹略',
choulve_info:'出牌阶段开始时,你可以令一名其他角色交给你一张牌,若其如此做,视为你使用上一张对你过造成伤害且不为延时锦囊牌的牌。',
tunchu:'屯储',
tunchu_info:'摸牌阶段,若你没有「粮」,你可以多摸两张牌。若如此做,摸牌阶段结束时,你可以将任意张手牌置于你的武将上,称为「粮」,只要你的武将牌上有「粮」,你便不能使用【杀】',
shuliang:'输粮',
shuliang_info:'一名角色的结束阶段开始时,若其手牌数少于体力值,你可以移去一张「粮」,然后该角色摸两张牌',
fenyin:'奋音',
yingjian:'影箭',
fenyin_info:'你的回合内,当你使用牌时,若此牌与你于此回合内使用的上一张牌的颜色不同,则你可以摸一张牌。',
yingjian_info:'准备阶段开始时,你可以视为使用一张无距离限制的【杀】。',
dujin:'独进',
dujin_info:'摸牌阶段你可以多摸X+1张牌。X为你装备区里牌数的一半且向下取整',
shixin:'释衅',
shixin_info:'锁定技,当你受到火属性伤害时,你防止此伤害。',
zhaohuo:'招祸',
zhaohuo_info:'锁定技当其他角色进入濒死状态时你将体力上限调整为1点。若你的体力上限因此减少则你摸一张牌。X为你以此法减少的体力上限',
yixiang:'义襄',
yixiang_info:'每名角色的回合限一次,当你成为一名角色使用牌的目标后,若该角色的体力值大于你的体力值,你可以随机获得牌堆里的一张你没有的基本牌。',
yirang:'揖让',
yirang_info:'出牌阶段开始时你可以将所有非基本牌交给一名体力上限大于你的其他角色然后调整体力上限至与该角色相同并回复X点体力X为你以此法交给其的牌的类别数。',
kuangcai:'狂才',
kuangcai_info:'出牌阶段开始时你可以令你此阶段内的主动出牌时间变为5秒。若如此做你于此阶段内使用牌没距离和次数限制且每当你于此阶段内使用牌时你摸一张牌且主动出牌时间-1秒。若主动出牌时间减至0则你结束出牌阶段。',
shejian:'舌剑',
shejian_info:'弃牌阶段结束时,若你于此阶段弃置的所有牌花色均不相同,则你可以弃置一名其他角色的一张牌。',
"xinfu_daigong":"怠攻",
"xinfu_daigong_info":"每回合限一次。当你受到伤害时,你可以展示所有手牌,然后令伤害来源选择一项:交给你一张与你所有手牌花色均不相同的一张牌,或防止此伤害。",
"xinfu_zhaoxin":"昭心",
"xinfu_zhaoxin_info":"出牌阶段限一次你可以将任意张手牌置于武将牌上并摸等量的牌称之为「望」你至多拥有三张「望」。你或你攻击范围内的一名其他角色的摸牌阶段结束后其可以获得一张由你选择的「望」然后你可以对其造成1点伤害。",
"zhaoxin_give":"昭心",
"zhaoxin_give_info":"",
"xinfu_qianchong":"谦冲",
"xinfu_qianchong_info":"锁定技,若你的装备区内有牌且:均为红色,则你视为拥有技能〖明哲〗。均为黑色,则你视为拥有技能〖帷幕〗。若均不满足,则出牌阶段开始时,你可以选择一种类别的牌,然后你本回合内使用该类别的牌时没有次数和距离限制。",
"qc_weimu":"帷幕",
"qc_weimu_info":"",
"qc_mingzhe":"明哲",
"qc_mingzhe_info":"",
"xinfu_shangjian":"尚俭",
"xinfu_shangjian_info":"一名角色的结束阶段开始时若你于此回合内失去了X张或更少的牌则你可以摸等量的牌。X为你的体力值",
"rw_bagua_skill":"先天八卦阵",
"rw_bagua_skill_info":"当你需要使用或打出一张【闪】时,你可以进行判定,若判定结果不为黑桃,视为你使用或打出了一张【闪】。",
"rw_baiyin_skill":"照月狮子盔",
"rw_baiyin_skill_info":"锁定技当你受到大于1的伤害时你将伤害值改为1当你失去装备区里的【照月狮子盔】时你回复1点体力并摸两张牌。",
"rw_lanyinjia":"精银甲",
"rw_lanyinjia_info":"你可以将一张手牌当做【闪】使用或打出。锁定技,【精银甲】不会无效。",
"rw_minguangkai_cancel":"耀光铠",
"rw_minguangkai_cancel_info":"锁定技,当你成为【火烧连营】、【火攻】或火【杀】的目标时,或即将被横置时,取消之。",
"rw_minguangkai_link":"耀光铠",
"rw_minguangkai_link_info":"锁定技,当你成为【火烧连营】、【火攻】或火【杀】的目标时,或即将被横置时,取消之。",
"rw_renwang_skill":"仁王金刚盾",
"rw_renwang_skill_info":"黑色【杀】和红桃【杀】对你无效。",
"rw_tengjia1":"桐油百韧甲",
"rw_tengjia1_info":"锁定技,【南蛮入侵】、【万箭齐发】和普【杀】对你无效。当你受到火焰伤害时,此伤害+1。当你即将被横置时取消之。",
"rw_tengjia2":"桐油百韧甲",
"rw_tengjia2_info":"锁定技,【南蛮入侵】、【万箭齐发】和普【杀】对你无效。当你受到火焰伤害时,此伤害+1。当你即将被横置时取消之。",
"rw_tengjia3":"桐油百韧甲",
"rw_tengjia3_info":"锁定技,【南蛮入侵】、【万箭齐发】和普【杀】对你无效。当你受到火焰伤害时,此伤害+1。当你即将被横置时取消之。",
"rw_tengjia4":"桐油百韧甲",
"rewrite_bagua":"先天八卦阵",
"rewrite_bagua_info":"当你需要使用或打出一张【闪】时,你可以进行判定,若判定结果不为黑桃,视为你使用或打出了一张【闪】。",
"rewrite_baiyin":"照月狮子盔",
"rewrite_baiyin_info":"锁定技当你受到大于1的伤害时你将伤害值改为1当你失去装备区里的【照月狮子盔】时你回复1点体力并摸两张牌。",
"rewrite_lanyinjia":"精银甲",
"rewrite_lanyinjia_info":"你可以将一张手牌当做【闪】使用或打出。锁定技,【精银甲】不会无效。",
"rewrite_minguangkai":"耀光铠",
"rewrite_minguangkai_info":"锁定技,当你成为【火烧连营】、【火攻】或火【杀】的目标时,或即将被横置时,取消之。",
"rewrite_renwang":"仁王金刚盾",
"rewrite_renwang_info":"黑色【杀】和红桃【杀】对你无效。",
"rewrite_tengjia":"桐油百韧甲",
"rewrite_tengjia_info":"锁定技,【南蛮入侵】、【万箭齐发】和普【杀】对你无效。当你受到火焰伤害时,此伤害+1。当你即将被横置时取消之。",
"rewrite_zhuge":"元戎精械弩",
2020-03-27 05:30:48 +00:00
"rewrite_zhuge_info":"锁定技,你于出牌阶段内使用【杀】无次数限制。",
rw_zhuge_skill:'诸葛连弩',
rw_zhuge_skill_info:'锁定技,你于出牌阶段内使用【杀】无次数限制。',
2020-03-25 12:27:23 +00:00
takaramono:"宝物",
"wolong_card":"卧龙",
"wolong_card_info":"对一名角色造成1点火焰伤害。若场上有存活的诸葛亮(火),则改为对至多两名角色各造成两点火焰伤害。",
"fengchu_card":"凤雏",
"fengchu_card_info":"横置至多三名角色。若场上有存活的庞统(火),则改为横置至多四名角色。",
"xuanjian_card":"玄剑",
"xuanjian_card_info":"令一名角色摸一张牌并回复1点体力。若场上有存活的徐庶(将/界)则改为令一名角色摸一张牌并回复1点体力然后你摸一张牌。",
"shuijing_card":"水镜",
"shuijing_card_info":"将一名角色装备区内的防具牌移动到另一名角色对应区域。若场上有存活的司马徽则改为将1名角色装备区内的1件装备移动到另1角色对应区域。","xinfu_pingcai":"评才",
"xinfu_pingcai_info":"出牌阶段限一次,你可以挑选一个宝物并擦拭掉其上面的灰尘。然后,你可以根据宝物类型执行对应的效果。",
"xinfu_pdgyingshi":"隐世",
"xinfu_pdgyingshi_info":"锁定技,你始终跳过准备阶段,判定阶段,结束阶段。你不能被选择为延时锦囊牌的目标。",
"pcaudio_wolong_card":"卧龙",
"pcaudio_wolong_card_info":"",
"pcaudio_fengchu_card":"凤雏",
"pcaudio_fengchu_card_info":"",
"pcaudio_shuijing_card":"水镜",
"pcaudio_shuijing_card_info":"",
"pcaudio_xuanjian_card":"玄剑",
"pcaudio_xuanjian_card_info":"",
"yizan_respond_sha":"翊赞",
"yizan_respond_sha_info":"",
"yizan_use":"翊赞",
"yizan_use_info":"你可以将两张牌(其中至少一张为基本牌)当做任意基本牌使用或打出。",
"yizan_respond_shan":"翊赞",
"yizan_respond_shan_info":"",
"xinfu_longyuan":"龙渊",
"xinfu_longyuan_info":"觉醒技当你使用或打出的基本牌结算完成后若你本局游戏内发动过〖翊赞〗的次数大于等于3则你将〖翊赞〗描述中的“两张牌”改为“一张牌”。",
"yizan_count":"翊赞",
"yizan_count_info":"",
"xinfu_jingxie1":"精械",
"xinfu_jingxie1_info":"出牌阶段,你可以展示一张未强化过的【诸葛连弩】或标准包/军争包/SP包中的防具牌然后对其进行强化。当你处于濒死状态时你可以重铸一张防具牌然后将体力回复至1点。",
"xinfu_jingxie2":"精械",
"xinfu_jingxie2_info":"",
"xinfu_qiaosi":"巧思",
"xinfu_qiaosi_info":"出牌阶段限一次你可以投掷一枚六面骰子展示牌堆顶的X张牌并获得之。然后你选择一项1.交给一名其他角色X张牌。2.弃置X张牌。X为骰子的点数",
2020-03-14 11:25:06 +00:00
xin_xiahoudun:'手杀夏侯惇',
xinqingjian:'清俭',
xinqingjian2:'清俭',
xinqingjian_info:'每回合限一次。当你不因摸牌阶段的额定摸牌而获得牌时你可以将任意张牌扣置于武将牌上。回合结束时你将这些牌交给一名其他角色。若这些牌的数量大于1你摸一张牌。',
2020-03-13 10:02:18 +00:00
zhangyì:'张翼',
jiakui:'贾逵',
zhiyi:'执义',
zhiyi_info:'锁定技当你于一回合内使用或打出第一张基本牌时你选择一项1.摸一张牌。2.于此牌A若此牌是因响应牌B而使用或打出的则改为牌B的使用或打出流程结算完成后视为使用一张与此牌名称和属性相同的卡牌。',
zhongzuo:'忠佐',
zhongzuo_info:'一名角色的结束阶段开始时,若你于此回合内造成或受到过伤害,则你可以令一名角色摸两张牌。若该角色已受伤,则你摸一张牌。',
2020-03-13 10:02:18 +00:00
wanlan:'挽澜',
wanlan_info:'限定技当一名角色进入濒死状态时你可以弃置所有手牌并令其回复体力至1点然后对当前回合角色造成1点伤害。',
2019-09-22 15:02:29 +00:00
re_jikang:"手杀嵇康",
old_bulianshi:'手杀步练师',
2019-07-17 08:25:58 +00:00
old_caochun:'旧曹纯',
2019-08-30 15:02:50 +00:00
shenpei:'审配',
2019-10-09 14:31:43 +00:00
re_wangyun:'手杀王允',
relianji:'连计',
relianji_info:'出牌阶段限一次你可以选择两名其他角色。第一名角色随机使用牌堆中的一张武器牌然后这名角色视为对另一名角色随机使用一张下列的牌名的牌【决斗】、【火攻】、【南蛮入侵】、【万箭齐发】或普【杀】。然后若此牌造成伤害你获得X枚“连计”标记X为此次扣减的体力值点数。',
remoucheng:'谋逞',
remoucheng_info:'觉醒技当一名角色造成伤害后若你拥有的“连计”标记数大于2你加1点体力上限回复1点体力失去“连计”获得“矜功”。',
rejingong:'矜功',
rejingong_info:'每回合可以用三个随机锦囊中的一个三个锦囊中有一个是专属锦囊本回合未造成伤害会失去1点体力。',
2019-08-23 15:03:21 +00:00
mobile_default:'常规',
mobile_others:'其他',
2019-08-30 15:02:50 +00:00
pss:'手势',
pss_paper:'布',
pss_scissor:'剪刀',
pss_stone:'石头',
pss_paper_info:'石头剪刀布时的一种手势。克制石头,但被剪刀克制。',
pss_scissor_info:'石头剪刀布时的一种手势。克制布,但被石头克制。',
pss_stone_info:'石头剪刀布时的一种手势。克制剪刀,但被布克制。',
2019-08-31 05:48:22 +00:00
db_atk:'进攻对策',
db_atk1:'全军出击',
db_atk2:'分兵围城',
db_def:'防御对策',
db_def1:'奇袭粮道',
db_def2:'开城诱敌',
2019-08-30 15:02:50 +00:00
shouye:'守邺',
2020-05-23 04:37:37 +00:00
shouye_info:'每回合限一次。当其他角色使用牌指定你为唯一目标时,你可以与其进行【对策】。若你赢,则你取消此牌的目标,且你于此牌结算完成后获得其对应的所有实体牌。',
2019-08-30 15:02:50 +00:00
liezhi:'烈直',
liezhi_info:'准备阶段,你可以依次弃置至多两名角色区域内的各一张牌。若你受到过伤害,则〖烈直〗于你的下个回合无效。',
xinzhanyi:'战意',
xinzhanyi_info:'出牌阶段限一次你可以弃置一张牌并失去1点体力然后根据你弃置的牌获得以下效果直到回合结束基本牌你可以将一张基本牌当作杀、酒或桃使用且你本回合第一次以此法使用的牌的回复值/伤害值+1锦囊牌摸三张牌且你使用的牌不能被【无懈可击】响应装备牌你使用【杀】指定目标角色后其弃置两张牌然后你获得其中的一张。',
xinzhanyi_basic_backup:'战意',
xinzhanyi_basic:'战意',
xinzhanyi_equip:'战意',
2019-11-23 12:41:07 +00:00
2019-11-26 05:15:06 +00:00
meiyong:'姝勇',
2019-11-23 12:41:07 +00:00
meiyong_info:'当你使用或打出【杀】时,你可以获得一名其他角色的一张牌,然后其摸一张牌。',
rexushen:'许身',
2020-03-30 11:56:37 +00:00
rexushen_info:'限定技出牌阶段你可以失去X点体力X为场上男性角色的数量。若你以此法进入了濒死状态则当你因一名角色而脱离此濒死状态后你可以令其获得技能〖武圣〗和〖当先〗其以此法获得的〖当先〗结算时视为其发动过〖伏枥〗。',
2019-11-23 12:41:07 +00:00
rezhennan:'镇南',
rezhennan_info:'当你成为其他角色使用的牌的目标后若此牌的目标数大于该角色的体力值则你可以弃置一张牌并对其造成1点伤害。',
2019-12-25 05:21:37 +00:00
hujinding:'胡金定',
huaizi:'怀子',
2020-05-23 04:37:37 +00:00
huaizi_info:'锁定技,你的手牌上限为你的体力上限。',
2019-12-25 05:21:37 +00:00
renshi:'仁释',
renshi_info:'锁定技当你受到【杀】的伤害时若你已受伤则你防止此伤害并获得此【杀】对应的所有实体牌然后减1点体力上限。',
wuyuan:'武缘',
2019-12-25 15:16:51 +00:00
wuyuan_info:'出牌阶段限一次你可将一张【杀】交给一名其他角色然后你回复1点体力其摸一张牌。若此【杀】为红色【杀】其回复1点体力属性【杀】其改为摸两张牌。',
2020-01-31 09:50:48 +00:00
re_weiwenzhugezhi:'手杀卫温诸葛直',
re_xugong:'手杀许贡',
re_zhanggong:'手杀张恭',
reqianxin:'遣信',
reqianxin_info:'出牌阶段限一次,你可将至多两张手牌随机交给等量的其他角色,称为「信」。这些角色的准备阶段开始时,若其手牌中有「信」,则其选择一项:令你摸两张牌,本回合手牌上限-2。',
rebiaozhao:"表召",
"rebiaozhao_info":"结束阶段你可以将一张牌置于武将牌上称为「表」。当有一张与「表」点数相同的牌进入弃牌堆时你将「表」置入弃牌堆并失去1点体力。准备阶段若你的武将牌上有「表」则你移去「表」并选择一名角色该角色回复1点体力并摸三张牌。",
"rebiaozhao2":"表召",
"rebiaozhao2_info":"",
"rebiaozhao3":"表召",
"rebiaozhao3_info":"",
refuhai:'浮海',
2020-03-30 11:56:37 +00:00
refuhai_info:'出牌阶段限一次你可令其他角色同时在「潮起」和「潮落」中选择一项并依次展示这些角色的选项。若从你下家开始选择了相同选项的角色数目大于1则你摸X张牌X为连续相同结果的数量。',
2020-02-06 11:51:46 +00:00
qiaosi:'巧思',
2020-02-08 03:39:33 +00:00
qiaosi_info:'出牌阶段限一次你可以表演「大键角色图」并根据表演结果获得相应的牌。然后你选择一项1.弃置X张牌。2.将X张牌交给一名其他角色。X为你以此法获得的牌数',
qiaosi_map:'大键角色图',
qiaosi_map_info:'<br><li>星野 梦美:锦囊牌*2<br><li>能美 库特莉亚芙卡:装备牌/【杀】/【酒】*1<br><li>友利 奈绪:【杀】/【酒】*1<br><li>神尾 观铃:【闪】/【桃】*1<br><li>伊吹 风子:锦囊牌/【闪】/【桃】*1<br><li>仲村 ゆり:装备牌*2<br><li>Illustration: うら;Twitter:@ura530',
qiaosi_c1:'<img src="'+lib.assetURL+'image/card/qiaosi_card1.png" width="60" height="60"> ',
//星野 梦美
qiaosi_c2:'<img src="'+lib.assetURL+'image/card/qiaosi_card2.png" width="60" height="60"> ',
//能美 库特莉亚芙卡
qiaosi_c3:'<img src="'+lib.assetURL+'image/card/qiaosi_card3.png" width="60" height="60"> ',
//友利 奈绪
qiaosi_c4:'<img src="'+lib.assetURL+'image/card/qiaosi_card4.png" width="60" height="60"> ',
//神尾 观铃
qiaosi_c5:'<img src="'+lib.assetURL+'image/card/qiaosi_card5.png" width="60" height="60"> ',
//伊吹 风子
qiaosi_c6:'<img src="'+lib.assetURL+'image/card/qiaosi_card6.png" width="60" height="60"> ',
//仲村 ゆり
2020-02-23 05:45:11 +00:00
mobile_sunben:'那个男人',
//孙笨
2020-04-18 05:32:41 +00:00
yangbiao:'杨彪',
zhaohan:'昭汉',
zhaohan_info:'锁定技你的第1-4个准备阶段开始时你加1点体力上限并回复1点体力你的第5-7个准备阶段开始时你减1点体力上限。',
rangjie:'让节',
rangjie_info:'当你受到1点伤害后你可以选择一项并摸一张牌获得牌堆里你选择的类型的一张牌或移动场上的一张牌。',
yizheng:'义争',
yizheng2:'义争',
yizheng_info:'出牌阶段限一次你可以和一名体力值不大于你的其他角色拼点。若你赢其跳过下个摸牌阶段。若你没赢你减1点体力上限。',
re_heqi:'手杀贺齐',
reqizhou:'绮胄',
reqizhou_info:'锁定技你根据装备区里牌的花色数获得以下技能1种或以上〖英姿〗2种或以上〖奇袭〗3种或以上〖旋风〗。',
reshanxi:'闪袭',
reshanxi2:'闪袭',
reshanxi_info:'出牌阶段开始时你可以弃置一张红色基本牌并选择一名有牌的其他角色将其的至多X张牌置于其的武将牌上X为你的体力值。回合结束时该角色获得这些牌。',
chendeng:'陈登',
zhouxuan:'周旋',
zhouxuan2:'周旋',
zhouxuan_info:'结束阶段,你可以弃置一张牌并指定一名角色,然后选择一个基本牌的名称或非基本牌的类型。其使用或打出下一张牌时,若此牌的名称或类型和你选择的相同,则你观看牌堆顶的三张牌,然后将这些牌分配给任意角色。',
fengji:'丰积',
2020-05-23 04:37:37 +00:00
fengji_info:'锁定技,回合结束时,你记录你的手牌数。回合开始时,若你的手牌数不小于你记录的手牌数,则你摸两张牌且本回合手牌上限为体力上限。',
2020-04-25 05:40:05 +00:00
re_guanqiujian:'手杀毌丘俭',
rezhengrong:'征荣',
rehongju:'鸿举',
reqingce:'清侧',
reqingce_backup:'清侧',
rezhengrong_info:'当你于出牌阶段使用的指定了其他角色为目标的牌结算完成后,若此牌是你本局游戏内于出牌阶段使用的指定了其他角色为目标的第偶数张牌,则你可以将一名其他角色角色的随机一张牌置于你的武将牌上,称为「荣」。',
rehongju_info:'觉醒技准备阶段若你武将牌上「荣」的数量不小于3且有角色死亡则你摸等同于「荣」数量的牌。然后可以用任意数量的手牌交换等量的「荣」。你减1点体力上限并获得技能〖清侧〗。',
reqingce_info:'出牌阶段,你可以将一张「荣」置入弃牌堆,然后弃置场上的一张牌。',
re_pangtong:"手杀庞统",
2020-05-23 04:37:37 +00:00
dongcheng:'董承',
chengzhao:'承诏',
chengzhao_info:'一名角色的结束阶段,若你于本回合内获得了两张以上的牌,则你可以与一名其他角色拼点。若你赢,你视为对其使用一张无视防具的【杀】。',
yangyi:'杨仪',
duoduan:'度断',
duoduan_info:'每回合限一次,当你成为【杀】的目标后,你可以重铸一张牌。若如此做,此【杀】的使用者选择一项:摸两张牌令此【杀】无效,或弃置一张牌并令你不能闪避此【杀】。',
gongsun:'共损',
gongsun_info:'出牌阶段开始时,你可以弃置两张牌并指定一名其他角色。你选择一个基本牌或普通锦囊牌的牌名。直到你的下回合开始或你死亡,你与其不能使用或打出或弃置此名称的牌。',
gongsun_shadow:'共损',
2020-06-20 04:53:15 +00:00
xin_chengpu:'手杀程普',
relihuo:'疠火',
relihuo_damage:'疠火',
relihuo_baigei:'疠火',
relihuo_info:'当你使用普【杀】时,你可以将此杀改为火属性。若如此做,当你因执行此【杀】的效果而对横置角色造成伤害时,此伤害+1当你使用的火【杀】结算完成后你失去X点体力X为你因此【杀】造成的伤害总点数的一半且向下取整',
dengzhi:'邓芝',
jimeng:'急盟',
jimeng_info:'出牌阶段开始时你可以获得一名其他角色的一张牌然后交给该角色X张牌X为你当前体力值。',
shuaiyan:'率言',
shuaiyan_info:'弃牌阶段开始时若你的手牌数大于1则你可以展示所有手牌然后你令一名其他角色交给你一张牌。',
2020-06-21 05:28:27 +00:00
zhengxuan:'郑玄',
zhengjing:'整经',
zhengjing_info:'出牌阶段,你可以整理卡牌。然后,你将整理出的卡牌置于一名角色的武将牌上。该角色的准备阶段获得这些牌,跳过此回合的判定和摸牌阶段且本回合内不能发动【整经】。',
zhengjing2:'整经',
Our Song. 马上就要高考了,这次的版本更新应该是考前的最后一次更新了。 真的很感谢这段时间以来身边的大家。身边的老师和同学也好,Key圈的各位键子们也好,无名杀玩家们也好,正是有了你们的陪伴和支持,我才能够坚持下来,走到今天的这一步。 祝愿包括我自己在内的所有考生高考顺利,金榜题名吧! 最后,在这里复制粘贴一下《Angel Beats!》TV版的ED,某种意义上也是仲村ゆり的角色歌的《Brave Song》的歌词: ``` いつもひとりで歩いてた 振り返るとみんなは遠く 一路走来形单影只 转身回首望去 大家已经远去 それでもあたしは歩いた それが強さだった 即使如此我依然前行 这正是我的坚强 もう何も恐くない そう呟いてみせる 经历 使我无所畏惧 再多冷漠也是一句叹息 いつか人は一人になって 思い出の中に生きてくだけ 总有一天人将学会独立 在回忆中寻找自己的影子 孤独さえ愛し笑ってられるように あたしは戦うんだ 为了那笑容下与孤独作伴的勇气 我决定战斗到底 涙なんて見せないんだ 我已不再哭泣 いつもひとりで歩いてた 行く先には崖が待ってた 一路走来形单影只 而前方等着的却是山崖 それでもあたしは歩いた 強さの証明のため 即使如此我依然前行 为了证明这份坚强 吹き付ける強い風 汗でシャツが張りつく 强风吹过 汗水将衣服粘湿 いつか忘れてしまえるなら 生きることそれはたやすいもの 若有一天将一切尽数忘掉的话 生存其实并不困难 忘却の彼方へと落ちていくなら それは逃げることだろう 而若坠落在那忘却的彼端的话 那便成了逃避吧 生きた意味すら消えるだろう 就连生存的意义也会消失殆尽吧 風はやがて凪いでた 汗も乾いて 风终于停息 汗也干了 お腹が空いてきたな 何かあったっけ 肚子也饿了啊 有什么可吃的吗 賑やかな声と共にいい匂いがやってきた 同熙攘的声音一道 喷香的味道也传了过来 いつもひとりで歩いてた みんなが待っていた 一路走来形单影只 大家在前方等着我 いつか人は一人になって 思い出の中に生きてくだけ 总有一天人将学会独立 在回忆中寻找自己的影子 それでもいい 安らかなこの気持ちは それを仲間と呼ぶんだ 这倒也没什么 这种安宁的感情 称之为伙伴 いつかみんなと過ごした日々も忘れてどこかで生きてるよ 有一天我会忘掉和大家在一起度过的日子而生活在他乡 その時はもう強くなんかないよ 到了那时 我不会再坚强了 普通の女の子の弱さで涙を零すよ 像普通的女孩一样流下柔弱的泪水 ```
2020-07-03 05:22:31 +00:00
mobile_yijiang:'武将设计征集大赛',
yj_zhanghe:'SP张郃',
yj_zhangliao:'SP张辽',
yj_xuhuang:'SP徐晃',
yj_ganning:'SP甘宁',
xhzhiyan:'治严',
xhzhiyan_info:'出牌阶段,若你的手牌数不等于体力上限,则你可以将手牌摸至/弃至手牌上限,然后本回合不能对其他角色使用牌/可以将弃置的一张牌交给一名其他角色。',
zhilve:'知略',
zhilve_info:'锁定技准备阶段你选择一项1.移动场上装备区的一张牌并失去1点体力。2.移动场上判定区的一张牌并令本回合手牌上限-1。3.本回合摸牌阶段多摸一张牌且使用的第一张【杀】无距离限制且不计入次数限制。',
2019-07-17 08:25:58 +00:00
}
};
});