diff --git a/audio/die/luyusheng.mp3 b/audio/die/luyusheng.mp3 new file mode 100644 index 000000000..7396d803a Binary files /dev/null and b/audio/die/luyusheng.mp3 differ diff --git a/audio/die/re_caozhen.mp3 b/audio/die/re_caozhen.mp3 new file mode 100644 index 000000000..bf2668798 Binary files /dev/null and b/audio/die/re_caozhen.mp3 differ diff --git a/audio/die/re_chunyuqiong.mp3 b/audio/die/re_chunyuqiong.mp3 new file mode 100644 index 000000000..4b1666134 Binary files /dev/null and b/audio/die/re_chunyuqiong.mp3 differ diff --git a/audio/die/re_gongsunyuan.mp3 b/audio/die/re_gongsunyuan.mp3 new file mode 100644 index 000000000..40a23da69 Binary files /dev/null and b/audio/die/re_gongsunyuan.mp3 differ diff --git a/audio/skill/recangchu1.mp3 b/audio/skill/recangchu1.mp3 new file mode 100644 index 000000000..0b601f146 Binary files /dev/null and b/audio/skill/recangchu1.mp3 differ diff --git a/audio/skill/recangchu2.mp3 b/audio/skill/recangchu2.mp3 new file mode 100644 index 000000000..ef1ab679c Binary files /dev/null and b/audio/skill/recangchu2.mp3 differ diff --git a/audio/skill/rehuaiyi1.mp3 b/audio/skill/rehuaiyi1.mp3 new file mode 100644 index 000000000..2677a96cd Binary files /dev/null and b/audio/skill/rehuaiyi1.mp3 differ diff --git a/audio/skill/rehuaiyi2.mp3 b/audio/skill/rehuaiyi2.mp3 new file mode 100644 index 000000000..c25ac18a9 Binary files /dev/null and b/audio/skill/rehuaiyi2.mp3 differ diff --git a/audio/skill/reliangying1.mp3 b/audio/skill/reliangying1.mp3 new file mode 100644 index 000000000..c735aa497 Binary files /dev/null and b/audio/skill/reliangying1.mp3 differ diff --git a/audio/skill/reliangying2.mp3 b/audio/skill/reliangying2.mp3 new file mode 100644 index 000000000..c478d14fd Binary files /dev/null and b/audio/skill/reliangying2.mp3 differ diff --git a/audio/skill/reshishou1.mp3 b/audio/skill/reshishou1.mp3 new file mode 100644 index 000000000..0ae8f1ebe Binary files /dev/null and b/audio/skill/reshishou1.mp3 differ diff --git a/audio/skill/reshishou2.mp3 b/audio/skill/reshishou2.mp3 new file mode 100644 index 000000000..9b164f243 Binary files /dev/null and b/audio/skill/reshishou2.mp3 differ diff --git a/audio/skill/residi1.mp3 b/audio/skill/residi1.mp3 new file mode 100644 index 000000000..105915e32 Binary files /dev/null and b/audio/skill/residi1.mp3 differ diff --git a/audio/skill/residi2.mp3 b/audio/skill/residi2.mp3 new file mode 100644 index 000000000..c99ce6f48 Binary files /dev/null and b/audio/skill/residi2.mp3 differ diff --git a/audio/skill/zhente1.mp3 b/audio/skill/zhente1.mp3 new file mode 100644 index 000000000..f7ed9d2ec Binary files /dev/null and b/audio/skill/zhente1.mp3 differ diff --git a/audio/skill/zhente2.mp3 b/audio/skill/zhente2.mp3 new file mode 100644 index 000000000..3d176a740 Binary files /dev/null and b/audio/skill/zhente2.mp3 differ diff --git a/audio/skill/zhiwei1.mp3 b/audio/skill/zhiwei1.mp3 new file mode 100644 index 000000000..295544b19 Binary files /dev/null and b/audio/skill/zhiwei1.mp3 differ diff --git a/audio/skill/zhiwei2.mp3 b/audio/skill/zhiwei2.mp3 new file mode 100644 index 000000000..50b0b112c Binary files /dev/null and b/audio/skill/zhiwei2.mp3 differ diff --git a/card/gwent.js b/card/gwent.js index 3f86f7afb..f17a0267c 100644 --- a/card/gwent.js +++ b/card/gwent.js @@ -1458,8 +1458,8 @@ game.import('card',function(lib,game,ui,get,ai,_status){ value:[5,1], useful:[3,1], result:{ - player:function(player,target){ - if(current.hasSkill('gw_ciguhanshuang')) return 0; + target:function(player,target){ + if(target.hasSkill('gw_ciguhanshuang')) return 0; return -1; } }, diff --git a/card/standard.js b/card/standard.js index bd367146b..9e41d8778 100644 --- a/card/standard.js +++ b/card/standard.js @@ -1804,7 +1804,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){ }, charlotte:true, filter:function(event,player){ - return player.storage.qinggang2&&event.card&&player.storage.qinggang2.contains(event.card); + return player.storage.qinggang2&&event.card&&player.storage.qinggang2.contains(event.card)&&(event.name!='damage'||event.notLink()); }, silent:true, forced:true, diff --git a/character/diy.js b/character/diy.js index dc7a10af6..773105d0b 100755 --- a/character/diy.js +++ b/character/diy.js @@ -61,7 +61,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ key_shiroha:['female','key',3,['shiroha_yuzhao','shiroha_guying','shiroha_jiezhao']], key_shizuku:['female','key',3,['shizuku_sizhi','shizuku_biyi','shizuku_sanhua']], key_hiroto:['male','key',3,['hiroto_huyu','hiroto_tuolao']], - key_sakuya:['male','key',4,['youlong','luanfeng','sakuya_junbu']], + key_sakuya:['male','key',3,['youlong','luanfeng','sakuya_junbu']], key_youta:['male','key',4,[]], key_rumi:['female','key','3/4',['rumi_shuwu']], key_chihaya:['female','key',3,['chihaya_liewu','chihaya_youfeng']], @@ -142,6 +142,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ // ns_sunhao:['male','qun',3,[]], ns_xinnanhua:['male','qun',3,['ns_xiandao','ns_xiuzheng','ns_chuanshu'],[]], ns_caimao:['male','qun',4,['nsdingzhou']], + ns_luyusheng:['female','wu',3,['nshuaishuang','nsfengli']], old_jiakui:['male','wei',4,['tongqu','xinwanlan']], ol_guohuai:['male','wei',3,['rejingce']], @@ -172,7 +173,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ diy:{ diy_yijiang:["key_kud","key_misuzu","key_kamome","key_nao", "ns_huangchengyan","ns_sunchensunjun","ns_yuanxi","ns_caoshuang"], - diy_tieba:["ns_zuoci","ns_lvzhi","ns_wangyun","ns_nanhua","ns_nanhua_left","ns_nanhua_right","ns_huamulan","ns_huangzu","ns_jinke","ns_yanliang","ns_wenchou","ns_caocao","ns_caocaosp","ns_zhugeliang","ns_wangyue","ns_yuji","ns_xinxianying","ns_guanlu","ns_simazhao","ns_sunjian","ns_duangui","ns_zhangbao","ns_masu","ns_zhangxiu","ns_lvmeng","ns_shenpei","ns_yujisp","ns_yangyi","ns_liuzhang","ns_xinnanhua"], + diy_tieba:["ns_zuoci","ns_lvzhi","ns_wangyun","ns_nanhua","ns_nanhua_left","ns_nanhua_right","ns_huamulan","ns_huangzu","ns_jinke","ns_yanliang","ns_wenchou","ns_caocao","ns_caocaosp","ns_zhugeliang","ns_wangyue","ns_yuji","ns_xinxianying","ns_guanlu","ns_simazhao","ns_sunjian","ns_duangui","ns_zhangbao","ns_masu","ns_zhangxiu","ns_lvmeng","ns_shenpei","ns_yujisp","ns_yangyi","ns_liuzhang","ns_xinnanhua","ns_luyusheng"], diy_fakenews:["diy_wenyang","ns_zhangwei","ns_caimao"], diy_default:["diy_feishi","diy_liuyan","diy_yuji","diy_caiwenji","diy_lukang","diy_zhenji","diy_liufu","diy_xizhenxihong","diy_liuzan","diy_zaozhirenjun","diy_yangyi","diy_tianyu"], diy_key:["key_lucia","key_kyousuke","key_yuri","key_haruko","key_umi","key_rei","key_komari","key_yukine","key_yusa","key_misa","key_masato","key_iwasawa","key_kengo","key_yoshino","key_yui","key_tsumugi","key_saya","key_harukakanata","key_inari","key_shiina","key_sunohara","key_rin","key_sasami","key_akane","key_doruji","key_yuiko","key_riki","key_hisako","key_hinata","key_noda","key_tomoya","key_nagisa","key_ayato","key_ao","key_yuzuru","sp_key_kanade","key_mio","key_midori","key_kyoko","key_shizuru","key_shiorimiyuki","key_miki","key_shiori","key_kaori","sp_key_yuri","key_akiko","key_abyusa","key_godan","key_yuu","key_ryoichi","key_kotori","key_jojiro","key_shiroha","key_shizuku","key_hiroto","key_sakuya","key_youta","key_rumi","key_chihaya"], @@ -258,6 +259,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ ns_yuanxi:'#g食茸二十四', ns_caoshuang:'#g荬庀芬兰', + ns_luyusheng:'#g猫咪大院 - 魚と水', ns_caimao:'#gP尔号玩家◆', diy_wenyang:'#g最粗的梦想XD', ns_zuoci:'#bskystarwuwei', @@ -7400,40 +7402,251 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, }, junktaoluan_backup:{}, - - - ns_chuanshu:{ - audio:["xingshuai",2], - trigger:{ - global:"dying", - }, - priority:8, - unique:true, - skillAnimation:true, - animationColor:"water", - filter:function (event,player){ - return event.player.hp<=0&&event.player!=player; - }, - check:function (event,player){ - return get.attitude(player,event.player)>0; - }, - logTarget:"player", - content:function (){ - 'step 0' - trigger.player.chooseControl('releiji','guidao').set('prompt',''+get.translation(trigger.player)+'获得一项技能'); - goon=true; - if(!goon){ - event.finish(); + + nshuaishuang:{ + trigger:{player:'phaseJieshuBegin'}, + forced:true, + content:function(){ + 'step 0' + var card=get.cardPile(function(card){ + return card.name=='tao'; + }); + if(card){ + player.gain(card,'gain2'); + } + else event.finish(); + 'step 1' + game.updateRoundNumber(); + player.loseHp(); + }, + }, + nsfengli:{ + trigger:{player:'phaseEnd'}, + direct:true, + filter:function(event,player){ + return player.countCards('h')>0&&game.hasPlayer(function(current){ + return current!=player&&!current.hasSkill('nsfengli_use'); + }); + }, + content:function(){ + 'step 0' + player.chooseTarget(get.prompt2('nsfengli'),function(card,player,target){ + return target!=player&&!target.hasSkill('nsfengli_use'); + }).set('ai',function(target){ + return get.attitude(_status.event.player,target)/(5+target.countCards('h')); + }); + 'step 1' + if(result.bool){ + var target=result.targets[0]; + player.logSkill('nsfengli',target); + var cards=player.getCards('h'); + player.addGaintag(cards,'nsfengli2'); + player.addSkill('nsfengli2'); + player.showHandcards(); + target.addSkill('nsfengli_use'); + target.storage.nsfengli_use=player; + } + }, + group:['nsfengli_draw','nsfengli_clear'], + onremove:function(player){ + player.removeSkill('nsfengli2'); + }, + }, + nsfengli_draw:{ + trigger:{ + player:['loseAfter','nsfengliClear'], + global:['gainAfter','equipAfter','addJudgeAfter','loseAsyncAfter'], + target:'nsfengliUse', + }, + direct:true, + charlotte:true, + filter:function(event,player,name){ + if(name!='nsfengliUse'&&name!='nsfengliClear'){ + var evt=event.getl(player); + if(!evt||!evt.gaintag_map) return false; + var bool=false; + for(var i in evt.gaintag_map){ + if(evt.gaintag_map[i].contains('nsfengli2')) bool=true;break; } - 'step 1' - trigger.player.addSkillLog(result.control); - trigger.player.recover(1-trigger.player.hp); - trigger.player.draw(2); - trigger.player.storage.ns_chuanshu2=player; - trigger.player.addSkill('ns_chuanshu2'); - //game.broadcastAll()+trigger.player.node.avatar.setBackgroundImage('extension/群英会/ns_zhangjiao.jpg'); - //player.removeSkill('ns_chuanshu'); - player.awakenSkill('ns_chuanshu'); + if(!bool) return false; + } + var hs=player.countCards('h'); + return game.hasPlayer(function(current){ + return current!=player&¤t.countCards('h')false, + selectCard:-1, + precontent:function(){ + var card=lib.skill.nsfengli_use_backup.card; + var target=player.storage.nsfengli_use; + event.target=target; + player.logSkill('nsfengli',target); + delete event.result.skill; + player.showCards(card,get.translation(player)+'发动了【奉礼】'); + card.removeGaintag('nsfengli2'); + event.trigger('nsfengliUse'); + }, + }; + }, + ai:{ + hasSha:true, + hasShan:true, + skillTagFilter:function(player,tag){ + var name='s'+tag.slice(4); + return lib.skill.nsfengli_use.hiddenCard(player,name); + }, + }, + }, + ai:{ + order:8, + result:{ + player:1, + }, + }, + }, + ns_chuanshu:{ + audio:["xingshuai",2], + trigger:{ + global:"dying", + }, + priority:8, + unique:true, + skillAnimation:true, + animationColor:"water", + filter:function (event,player){ + return event.player.hp<=0&&event.player!=player; + }, + check:function (event,player){ + return get.attitude(player,event.player)>0; + }, + logTarget:"player", + content:function (){ + 'step 0' + trigger.player.chooseControl('releiji','guidao').set('prompt',''+get.translation(trigger.player)+'获得一项技能'); + goon=true; + if(!goon){ + event.finish(); + } + 'step 1' + trigger.player.addSkillLog(result.control); + trigger.player.recover(1-trigger.player.hp); + trigger.player.draw(2); + trigger.player.storage.ns_chuanshu2=player; + trigger.player.addSkill('ns_chuanshu2'); + player.awakenSkill('ns_chuanshu'); }, }, ns_xiandao1:{ @@ -12144,6 +12357,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ ns_yangyi:'杨仪', ns_liuzhang:'刘璋', ns_xinnanhua:'南华老仙', + ns_luyusheng:'陆郁生', sp_key_yuri:'SP仲村由理', key_lucia:'此花露西娅', @@ -12595,6 +12809,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){ diy_wenyang:'文鸯', ns_zhangwei:'张葳', + nshuaishuang:'怀霜', + nshuaishuang_info:'锁定技,结束阶段,你从牌堆/弃牌堆获得一张【桃】,然后失去1点体力。', + nsfengli:'奉礼', + nsfengli2:'奉礼', + nsfengli_draw:'奉礼', + nsfengli_clear:'奉礼', + nsfengli_use:'奉礼', + nsfengli_info:'回合结束时,你可以选择一名其他角色并展示所有手牌。你将所有手牌标记为“礼”。你的“礼”对所有角色可见。当该角色于回合外需要使用或打出牌时,其可移去一张“礼”的标记,然后视为使用或打出一张与此牌名称相同的牌。当你的“礼”减少时,你可令一名手牌数小于你的角色摸一张牌。你的回合开始时,你移去所有“礼”的标记,然后注销该角色对“礼”的操作权限。', nsqiyue:'骑钺', nsqiyue_info:'锁定技,当有角色的武将牌状态改变后,你摸一张牌。', nsxuezhu:'血逐', diff --git a/character/gwent.js b/character/gwent.js index 0a347d00e..9c065f3bc 100644 --- a/character/gwent.js +++ b/character/gwent.js @@ -4416,7 +4416,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ autoViewAs:'sha', ai:{ order:function(){ - return lib.card.sha.ai.order()+0.5; + return get.order({name:'sha'})+0.5; } } }, @@ -4429,7 +4429,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ autoViewAs:'jiu', ai:{ order:function(){ - return lib.card.jiu.ai.order()+0.5; + return get.order({name:'jiu'})+0.5; } } }, diff --git a/character/mobile.js b/character/mobile.js index 4780cc605..966de7583 100644 --- a/character/mobile.js +++ b/character/mobile.js @@ -6953,7 +6953,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ xinzhilve_info:'出牌阶段限一次,你可以失去1点体力并选择一项:1.移动场上的一张牌;2.视为使用一张无距离限制且不计入次数限制的【杀】并摸一张牌。然后你本回合的手牌上限+1。', xinxhzhiyan:'治严', xinxhzhiyan_false:'治严', - xinxhzhiyan_info:'出牌阶段每项各限一次,若你的手牌数:大于体力上限,则你可以将X张手牌交给一名其他角色;小于体力值,则你可以摸X张牌且本阶段内不能再对其他角色使用牌。(X为你的手牌数与体力上限之差的绝对值)', + xinxhzhiyan_info:'出牌阶段每项各限一次,若你的手牌数:大于体力值,则你可以将X张手牌交给一名其他角色(X为你的手牌数与体力值之差);小于体力上限,则你可以摸X张牌且本阶段内不能再对其他角色使用牌。(X为你的手牌数与体力上限之差)', weifeng:'威风', weifeng2:'威风', weifeng3:'威风', diff --git a/character/rank.js b/character/rank.js index a0d963f5a..31c2e0799 100644 --- a/character/rank.js +++ b/character/rank.js @@ -452,6 +452,7 @@ window.noname_character_rank={ 're_fazheng', 'huaxin', 're_chunyuqiong', + 'ns_luyusheng', ], bp:[ 'chess_diaochan', @@ -816,6 +817,7 @@ window.noname_character_rank={ 'xin_panzhangmazhong', 're_xiaoqiao', 'caoanmin', + 'luyusheng', ], bm:[ 'diy_xizhenxihong', @@ -1276,6 +1278,7 @@ window.noname_character_rank={ 'jin_xiahouhui', 'jin_simashi', 'zhangling', + 'ns_luyusheng', 'key_haruko', 'key_akiko', 'key_sunohara', diff --git a/character/refresh.js b/character/refresh.js index 3cee20461..43b4ddb6b 100755 --- a/character/refresh.js +++ b/character/refresh.js @@ -4851,7 +4851,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ viewAs:{ name:"wuxie", }, - prompt:"将一张黑色手牌当无懈可击使用", + prompt:"将一张黑色牌当无懈可击使用", check:function (card){return 8-get.value(card)}, }, rejieming:{ @@ -8830,7 +8830,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ rezhuikong_info:'其他角色的回合开始时,若你已受伤,你可与其拼点:若你赢,本回合该角色只能对自己使用牌;若你没赢,你获得其拼点的牌,然后其视为对你使用一张【杀】。', re_gongsunyuan:'界公孙渊', rehuaiyi:'怀异', - tehuaiyi_info:'出牌阶段限一次,你可以展示所有手牌,若这些牌的颜色:全部相同,你摸一张牌,并将此技能于本阶段内改为“限两次”,然后终止此技能的结算流程;不全部相同,则你选择一种颜色并弃置该颜色的所有手牌,然后你可以获得至多X名角色的各一张牌(X为你以此法弃置的手牌数)。若你以此法获得的牌不少于两张,则你失去1点体力。', + rehuaiyi_info:'出牌阶段限一次,你可以展示所有手牌,若这些牌的颜色:全部相同,你摸一张牌,并将此技能于本阶段内改为“限两次”,然后终止此技能的结算流程;不全部相同,则你选择一种颜色并弃置该颜色的所有手牌,然后你可以获得至多X名角色的各一张牌(X为你以此法弃置的手牌数)。若你以此法获得的牌不少于两张,则你失去1点体力。', re_caozhen:'界曹真', residi:'司敌', residi_push:'司敌', diff --git a/character/sp.js b/character/sp.js index 61cdc92ee..52eb51bf7 100755 --- a/character/sp.js +++ b/character/sp.js @@ -10,13 +10,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){ sp_star:["sp_xiahoushi","jsp_zhaoyun","huangjinleishi","sp_pangtong","sp_daqiao","sp_ganning","sp_xiahoudun","sp_lvmeng","sp_zhangfei","sp_liubei"], sp_sticker:['sp_gongsunzan','sp_simazhao','sp_wangyuanji','sp_xinxianying','sp_liuxie'], sp_guozhan:["zangba","shamoke","ganfuren","yuejin","hetaihou","dingfeng","panfeng","jianggan"], - sp_guozhan2:["mifuren","mateng","tianfeng","chendong","sp_dongzhuo","jiangfei","jiangqing","kongrong","bianfuren","liqueguosi","lvfan","cuimao","jiling","zhangren","zoushi","huaxin"], + sp_guozhan2:["mifuren","mateng","tianfeng","chendong","sp_dongzhuo","jiangfei","jiangqing","kongrong","bianfuren","liqueguosi","lvfan","cuimao","jiling","zhangren","zoushi","huaxin","luyusheng"], sp_single:["niujin"], sp_others:["hanba","caiyang"], }, }, characterFilter:{}, character:{ + luyusheng:['female','wu',3,['zhente','zhiwei']], ol_xinxianying:['female','wei',3,['xincaishi','xinzhongjian']], huaxin:['male','wei',3,['wanggui','xibing']], wolongfengchu:['male','shu',4,['youlong','luanfeng']], @@ -97,7 +98,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ sp_lvmeng:['male','wu',3,['tanhu','mouduan']], guansuo:['male','shu',4,['xinzhengnan','xiefang']], - tadun:['male','qun',4,['luanzhan']], + tadun:['male','qun',4,['reluanzhan']], yanbaihu:['male','qun',4,['zhidao','jili']], chengyu:['male','wei',3,['shefu','benyu']], @@ -153,6 +154,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ //kaisa:["male","western",4,["zhengfu"]], }, characterIntro:{ + luyusheng:'陆郁生(?年-?),三国时期吴国官员陆绩之女。陆郁生的父亲陆绩是吴郡公认的才子,又是当时吴郡陆氏的领袖。陆绩赴任担任郁林太守,遂取此名。陆郁生年少的时候就定下坚贞的志向。建安二十四年(219年),陆绩早亡,她与两个兄弟陆宏、陆睿当时都只有几岁,一起返回吴县,被他们的从兄陆瑁接回抚养。13周岁的陆郁生嫁给同郡出身的张白为妻。出嫁3个月后,张白因为其兄张温一族的案件遭到连坐,被处以流刑,后死于流放地,陆郁生成为了寡妇,其后公开宣言不再改嫁,困难于生计但拒绝了所有提亲,在艰苦中从未停止服侍、照顾张白的姐妹。事情传到朝廷,皇帝褒奖陆郁生,号其为“义姑”。她的表侄姚信在文集中称赞她的义举。', wolongfengchu:'沙比武将,懒得复制粘贴,自己去看诸葛亮和庞统的介绍吧。', huaxin:'华歆(157年-232年1月30日),字子鱼,汉族。平原郡高唐县人(今山东省高唐县)。汉末至三国曹魏初年名士、重臣。华歆早年拜太尉陈球为师,与卢植、郑玄、管宁等为同门,又与管宁、邴原共称一龙,华歆为龙头。汉灵帝时华歆被举为孝廉,任郎中,因病去官。又被大将军何进征召为尚书郎。后任豫章太守,甚得民心。孙策率军南下,华歆举郡投降,被奉为上宾。官渡之战时,被征为议郎、参司空军事。入为尚书、侍中,又代荀彧为尚书令。丞相曹操讨孙权时,授华歆为军师。后为魏王国的御史大夫。曹丕即王位,拜华歆为相国,封安乐乡侯。曹魏建立后,其相国职名改称司徒。魏明帝即位,升任太尉,晋封博平侯。太和五年十二月(232年1月),华歆去世,年七十五,谥号“敬”。有文集三十卷,今佚失,其余见《全三国文》。', caoshuang:'曹爽(?-249年2月9日),字昭伯,沛国谯县(今安徽亳州市)人。三国时期魏国权臣,大司马曹真长子。曹爽体态肥胖,凭借宗室身份,出入宫廷,交好太子曹叡。魏明帝即位,起家员外散骑侍郎,累迁城门校尉、散骑常侍,转武卫将军。太和五年(231年),袭封邵陵侯。景初三年(239年),魏明帝曹叡病危,拜大将军、假黄钺,与司马懿并为托孤大臣。少帝曹芳即位,加侍中,改封武安侯。势倾四海,声震天下。任用私人,专权乱政,侵吞公产。伐蜀失败,虚耗国力。起居逾制,软禁郭太后。正始十年,太傅司马懿发动高平陵政变,掌握魏国大权。曹爽失去大将军职务,以谋反之罪处死,夷灭三族。', @@ -162,7 +164,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ huban:'为《三国演义》所杜撰的人物,正史无记载,荥阳太守王植麾下从事、桓帝时议郎胡华之子。关羽过五关斩六将时其中一关就是王植所镇守,胡班奉命放火夜袭关公,因敬服公之气概,并得其父托公所带家书,班看毕,叹曰:“险些误杀忠良!”故将之放走。胡班到荆州来投降关公,公念其旧日相救之情,甚爱之;令随费诗入川,见汉中王受爵。费诗辞别关公,带了胡班,自回蜀中去了。', chunyuqiong:'淳于琼(?-200年),字仲简,颍川(治今河南禹州)人。东汉时期官吏,于汉灵帝中平五年(188)被任命为西园八校尉之一的右校尉,与蹇硕、袁绍、鲍鸿、曹操、赵融、冯芳、夏牟同列。为袁绍大将,与张郃、高览等人齐名。在官渡之战时镇守乌巢,遭到曹操的偷袭而惨败,自己也被曹操处斩。', lvkuanglvxiang:'吕旷(生卒年不详),与吕翔同是袁绍属下,袁绍去世后,为袁尚守东平,后来投降曹操,并被封为列侯。在《三国演义》中,在曹操准备往南准备攻击前,两人跟著大将曹仁和将军李典准备要攻击刘备。但吕旷被赵云刺下马身亡,而吕翔也死于张飞矛下,可以算是出师未捷身先死', - caobuxing:'曹不兴,亦名弗兴,三国时著名画家。孙吴吴兴(今浙江湖州)人,生卒年不详。他在黄武年间(222—229年)享有很大的声誉。被称为“佛画之祖”。与东晋顾恺之、南朝宋陆探微、南朝梁张僧繇并称“六朝四大家”。又与赵达的算术、严武的弈棋、皇象的草书等号称“吴中八绝”。曹不兴善画龙、虎、马及人物,有“落墨为蝇”等传奇故事,其佛画成就对后世影响很大,相传其所画龙头令谢赫叹服不已。画迹今已不存,据《贞观公私画史》载,作品有《青溪龙》、《赤盘龙》、《南海监牧进十种马图》、《夷事夷兽样》、《桃源图》等,惜早已散佚。 但之后的著名画家卫协直接师承其法。', + caobuxing:'曹不兴,亦名弗兴,三国时著名画家。孙吴吴兴(今浙江湖州)人,生卒年不详。他在黄武年间(222—229年)享有很大的声誉。被称为“佛画之祖”。与东晋顾恺之、南朝宋陆探微、南朝梁张僧繇并称“六朝四大家”。又与赵达的算术、严武的弈棋、皇象的草书等号称“吴中八绝”。曹不兴善画龙、虎、马及人物,有“落墨为蝇”等传奇故事,其佛画成就对后世影响很大,相传其所画龙头令谢赫叹服不已。画迹今已不存,据《贞观公私画史》载,作品有《青溪龙》、《赤盘龙》、《南海监牧进十种马图》、《夷事夷兽样》、《桃源图》等,惜早已散佚。但之后的著名画家卫协直接师承其法。', gaolan:'高览,生卒年不详,一名高奂,本属袁绍部将,后官渡之战淳于琼被曹操击破,与张郃一同投降曹操,被封为偏将军,东莱侯。《三国演义》里,曾与许褚、徐晃大战不分胜负。201年刘备败走荆州时,高览奉命追杀,三合斩刘辟,而后被冲阵而来的赵云刺死。', xunchen:'荀谌,字友若,荀彧之兄(一说荀彧之弟),荀绲之子,颍川人。曾任军阀袁绍的幕僚。帮助袁绍游说韩馥,夺取了冀州。', sunshao:'孙邵(163年-225年),字长绪,青州北海国人(今山东潍坊市昌乐县西)。原为北海相孔融的功曹,被孔融称赞为可任朝廷要职的人才,后随刘繇到达江东,继而辅佐孙权。孙权称吴王后,孙邵成为吴国首任丞相,数年后病逝。由于孙邵和当时吴国史官的关系并不是很好,因此在史书中并没有详细的记载。', @@ -396,6 +398,229 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, }, skill:{ + //陆郁生 + zhente:{ + audio:2, + trigger:{target:'useCardToTargeted'}, + logTarget:'player', + usable:1, + filter:function(event,player){ + if(player==event.player||get.color(event.card)!='black'||event.player.isDead()) return false; + var type=get.type(event.card); + return type=='basic'||type=='trick'; + }, + check:function(event,player){ + return !event.excluded.contains(player)&&get.effect(player,event.card,event.player,player)<0; + }, + content:function(){ + 'step 0' + trigger.player.chooseControl().set('choiceList',[ + '本回合内不能再使用黑色牌', + '令'+get.translation(trigger.card)+'对'+get.translation(player)+'无效', + ]).set('prompt',get.translation(player)+'发动了【贞特】,请选择一项').set('ai',function(){ + var player=_status.event.player; + var target=_status.event.getParent().player; + var card=_status.event.getTrigger().card; + if(get.effect(target,card,player,player)<=0) return 1; + var hs=player.countCards('h',function(card){ + return get.color(card,player)=='black'&&player.hasValueTarget(card,null,true); + }); + if(!hs.length) return 0; + if(hs>1) return 1; + return Math.random()>0.5?0:1; + }); + 'step 1' + if(result.index==0) trigger.player.addTempSkill('zhente2'); + else trigger.excluded.add(player); + }, + }, + zhente2:{ + mod:{ + cardEnabled:function(card){ + if(get.color(card)=='black') return false; + }, + cardSavable:function(card){ + if(get.color(card)=='black') return false; + }, + }, + mark:true, + charlotte:true, + intro:{content:'本回合内不能使用黑色牌'}, + }, + zhiwei:{ + audio:2, + trigger:{ + player:['enterGame','showCharacterAfter'], + global:['gameDrawAfter'], + }, + direct:true, + filter:function(event,player){ + if(player.hasSkill('zhiwei2')) return false; + if(get.mode()=='guozhan') return event.name=='showCharacter'&&(event.toShow.contains('gz_luyusheng')||event.toShow.contains('luyusheng')); + return event.name!='showCharacter'; + }, + content:function(){ + 'step 0' + player.chooseTarget('请选择【至微】的目标','选择一名其他角色。该角色造成伤害后,你摸一张牌,该角色受到伤害后,你随机弃置一张手牌。你弃牌阶段弃置的牌均被该角色获得。',true,lib.filter.notMe).set('ai',function(target){ + var att=get.attitude(_status.event.player,target); + if(att>0) return 1+att; + return Math.random(); + }); + 'step 1' + if(result.bool){ + var target=result.targets[0]; + player.logSkill('zhiwei',target); + player.storage.zhiwei2=target; + player.addSkill('zhiwei2'); + } + }, + }, + zhiwei2:{ + group:['zhiwei2_draw','zhiwei2_discard','zhiwei2_gain','zhiwei2_clear'], + charlotte:true, + onremove:true, + mark:'character', + intro:{content:'$造成伤害后你摸一张牌;$受到伤害后你弃置一张牌;你于弃牌阶段弃置牌后交给$'}, + subSkill:{ + draw:{ + audio:'zhiwei', + trigger:{global:'damageSource'}, + forced:true, + filter:function(event,player){ + return event.source==player.storage.zhiwei2; + }, + logTarget:'source', + content:function(){ + player.draw(); + }, + }, + discard:{ + audio:'zhiwei', + trigger:{global:'damageEnd'}, + forced:true, + filter:function(event,player){ + return event.player==player.storage.zhiwei2&&player.countCards('h',function(card){ + return lib.filter.cardDiscardable(card,player,'zhiwei2_discard'); + }); + }, + logTarget:'player', + content:function(){ + player.discard(player.getCards('h',function(card){ + return lib.filter.cardDiscardable(card,player,'zhiwei2_discard'); + }).randomGet()); + }, + }, + gain:{ + audio:'zhiwei', + trigger:{player:'loseAfter'}, + forced:true, + filter:function(event,player){ + return event.type=='discard'&&event.getParent('phaseDiscard').player==player&&player.storage.zhiwei2&&player.storage.zhiwei2.isIn()&&event.cards2.filterInD('d').length>0; + }, + logTarget:function(event,player){ + return player.storage.zhiwei2; + }, + content:function(){ + if(trigger.delay===false) game.delay(); + player.storage.zhiwei2.gain(trigger.cards2.filterInD('d'),'gain2'); + }, + }, + clear:{ + audio:'zhiwei', + trigger:{ + global:'die', + player:['hideCharacterEnd','removeCharacterEnd'], + }, + forced:true, + filter:function(event,player){ + if(event.name=='die') return event.player==player.storage.zhiwei2; + if(event.name=='removeCharacter') return event.toRemove=='luyusheng'||event.toRemove=='gz_luyusheng'; + return event.toHide=='luyusheng'||event.toHide=='gz_luyusheng'; + }, + content:function(){ + 'step 0' + player.removeSkill('zhiwei2'); + if(trigger.name!='die'||get.mode()!='guozhan') event.finish(); + 'step 1' + if(player.name1=='gz_luyusheng'||player.name1=='luyusheng') player.hideCharacter(0); + if(player.name2=='gz_luyusheng'||player.name2=='luyusheng') player.hideCharacter(1); + }, + }, + }, + }, + //新塌顿 + reluanzhan:{ + audio:'luanzhan', + trigger:{ + player:'damageEnd', + source:'damageSource', + }, + forced:true, + content:function(){ + player.addMark('reluanzhan',1,false); + }, + intro:{content:'mark'}, + ai:{notemp:true}, + group:['reluanzhan_add','reluanzhan_remove'], + }, + reluanzhan_add:{ + trigger:{player:'useCard2'}, + direct:true, + filter:function(event,player){ + if(event.card.name!='sha'&&(get.color(event.card)!='black'||get.type(event.card)!='trick')||!player.countMark('reluanzhan')) return false; + var info=get.info(event.card); + if(info.allowMultiple==false) return false; + if(event.targets&&!info.multitarget){ + if(game.hasPlayer(function(current){ + return !event.targets.contains(current)&&lib.filter.targetEnabled2(event.card,player,current)&&lib.filter.targetInRange(event.card,player,current); + })){ + return true; + } + } + return false; + }, + content:function(){ + 'step 0' + var num=player.countMark('reluanzhan'); + var prompt2='为'+get.translation(trigger.card)+'增加至多'+get.cnNumber(num)+'个目标' + player.chooseTarget(get.prompt('reluanzhan'),function(card,player,target){ + if(_status.event.targets.contains(target)) return false; + var player=_status.event.player; + return lib.filter.targetEnabled2(_status.event.card,player,target)&&lib.filter.targetInRange(_status.event.card,player,target); + },[1,num]).set('prompt2',prompt2).set('ai',function(target){ + var trigger=_status.event.getTrigger(); + var player=_status.event.player; + return get.effect(target,trigger.card,player,player); + }).set('card',trigger.card).set('targets',trigger.targets); + 'step 1' + if(result.bool){ + if(!event.isMine()&&!event.isOnline()) game.delayx(); + event.targets=result.targets; + } + else{ + event.finish(); + } + 'step 2' + if(event.targets){ + player.logSkill('reluanzhan',event.targets); + trigger.targets.addArray(event.targets); + } + }, + }, + reluanzhan_remove:{ + audio:'luanzhan', + trigger:{player:'useCardToPlayered'}, + forced:true, + filter:function(event,player){ + if(!event.isFirstTarget||(event.card.name!='sha'&&(get.color(event.card)!='black'||get.type(event.card)!='trick'))||!player.countMark('reluanzhan')) return false; + var info=get.info(event.card); + if(info.allowMultiple==false||info.multitarget) return false; + return event.targets.length0; - var num2=Math.min(5,target.hp-target.countCards('h')); return num>num2; }, content:function(){ 'step 0' - trigger.player.draw(Math.min(5,trigger.player.hp-trigger.player.countCards('h'))); + var num=Math.min(5,trigger.player.hp-trigger.player.countCards('h')); + if(num>0) trigger.player.draw(num); trigger.player.addTempSkill('xibing2'); player._xibing=true; if(get.mode()!='guozhan'||player.isUnseen(2)||trigger.player.isUnseen(2)) event.finish(); @@ -1410,7 +1637,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }).set('targets',trigger.targets).set('card',trigger.card); 'step 1' if(result.bool){ - if(!event.isMine()) game.delayx(); + if(!event.isMine()&&!event.isOnline()) game.delayx(); event.targets=result.targets; } else{ @@ -2000,7 +2227,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }).set('card',trigger.card); 'step 1' if(result.bool){ - if(!event.isMine()&&!_status.connectMode) game.delayx(); + if(!event.isMine()&&!event.isOnline()) game.delayx(); event.targets=result.targets; } else{ @@ -2057,7 +2284,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }).set('targets',trigger.targets).set('card',trigger.card); 'step 1' if(result.bool){ - if(!event.isMine()) game.delayx(); + if(!event.isMine()&&!event.isOnline()) game.delayx(); event.targets=result.targets; } else{ @@ -5132,7 +5359,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ } 'step 3' if(result.bool){ - if(!event.isMine()) game.delayx(); + if(!event.isMine()&&!event.isOnline()) game.delayx(); event.target=result.targets[0]; } else{ @@ -5458,7 +5685,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }).set('card',trigger.card); 'step 1' if(result.bool){ - if(!event.isMine()&&!_status.connectMode) game.delayx(); + if(!event.isMine()&&!event.isOnline()) game.delayx(); event.target=result.targets[0]; } else{ @@ -7581,7 +7808,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){ 'step 1' if(result.bool){ player.getHistory('custom').push({qizhi:true}); - if(!event.isMine()&&!_status.connectMode) game.delay(); player.logSkill('qizhi',result.targets); player.discardPlayerCard(result.targets[0],true,'he'); event.target=result.targets[0]; @@ -9632,7 +9858,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, content:function(){ player.loseHp(player.countMark('ranshang')); - if(player.countMark('ranshang')>=2){ + if(player.countMark('ranshang')>2){ player.loseMaxHp(2); player.draw(2); } @@ -9641,7 +9867,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ hanyong:{ trigger:{player:'useCard'}, filter:function(event,player){ - return event.card&&(event.card.name=='nanman'||event.card.name=='wanjian'||(event.card.name=='sha'&&get.color(event.card)=='black')); + return event.card&&(event.card.name=='nanman'||event.card.name=='wanjian'||(event.card.name=='sha'&&!event.card.nature&&get.suit(event.card)=='spade')); }, content:function(){ trigger.baseDamage++; @@ -12216,7 +12442,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ audio:2, trigger:{global:'phaseJieshuBegin'}, filter:function(event,player){ - return event.player.countCards('h')<=1&&player.hasSkill('junbing'); + return event.player.countCards('h')<=1&&(player==event.player||player.hasSkill('junbing')); }, direct:true, checkx:function(target,player){ @@ -15749,9 +15975,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){ mozhi_info:'结束阶段开始时,你可以将一张手牌当作你本回合出牌阶段内使用的第一张基本或普通锦囊牌使用。然后,你可以将一张手牌当做你本回合出牌阶段内使用的第二张基本或普通锦囊牌使用。(你不能通过此技能使用【酒】)', ranshang:'燃殇', ranshang2:'燃殇', - ranshang_info:'锁定技,当你受到1点火焰伤害后,你获得1枚“燃”标记;结束阶段开始时,你失去X点体力。若X不小于2,则你减2点体力上限并摸两张牌。(X为“燃”标记的数量)', + ranshang_info:'锁定技,当你受到1点火焰伤害后,你获得1枚“燃”标记;结束阶段开始时,你失去X点体力。若X大于2,则你减2点体力上限并摸两张牌。(X为“燃”标记的数量)', hanyong:'悍勇', - hanyong_info:'当你使用【南蛮入侵】或【万箭齐发】或黑色【杀】时,若你的体力值小于游戏轮数,你可以令此牌的伤害值基数+1。然后若你的体力值不小于游戏轮数,则你获得一枚“燃”标记。', + hanyong_info:'当你使用【南蛮入侵】或【万箭齐发】或黑桃【杀】时,若你的体力值小于游戏轮数,你可以令此牌的伤害值基数+1。然后若你的体力值不小于游戏轮数,则你获得一枚“燃”标记。', yicong:'义从', yongsi:'庸肆', @@ -16039,6 +16265,18 @@ game.import('character',function(lib,game,ui,get,ai,_status){ xibing_info:'当一名其他角色在其出牌阶段内使用第一张黑色【杀】或黑色普通锦囊牌指定唯一角色为目标后,你可令该角色将手牌摸至当前体力值(至多摸五张)且本回合不能再使用手牌。', xibing_info_guozhan:'当一名其他角色在其出牌阶段内使用第一张黑色【杀】或黑色普通锦囊牌指定唯一角色为目标后,你可令该角色将手牌摸至当前体力(至多摸五张)值且本回合不能再使用手牌。若你与其均明置了所有武将牌,则你可以暗置你与其各一张武将牌且本回合不能再明置此武将牌。', ol_xinxianying:'辛宪英', + reluanzhan:'乱战', + reluanzhan_add:'乱战', + reluanzhan_remove:'乱战', + reluanzhan_info:'当你受到或造成伤害后,你获得一个“乱”。当你使用【杀】或黑色普通锦囊牌选择目标后,你可为此牌增加至多X个目标。当你使用这些牌指定第一个目标后,若此牌目标数小于X,则你移去X/2(向上取整)个“乱”。(X为“乱”数)', + luyusheng:'陆郁生', + zhente:'贞特', + zhente2:'贞特', + zhente_info:'每回合限一次,当你成为其他角色使用黑色基本牌或黑色普通锦囊牌的目标后,你可令使用者选择一项:1.本回合不能再使用黑色牌;2.此牌对你无效。 ', + zhiwei:'至微', + zhiwei2:'至微', + zhiwei_info:'游戏开始时,你选择一名其他角色。该角色造成伤害后,你摸一张牌,该角色受到伤害后,你随机弃置一张手牌。你弃牌阶段弃置的牌均被该角色获得。 ', + zhiwei_info_guozhan:'你明置此武将牌时,选择一名其他角色。该角色造成伤害后,你摸一张牌,该角色受到伤害后,你随机弃置一张手牌。你弃牌阶段弃置的牌均被该角色获得。该角色死亡时,若你的两个武将牌均明置,你暗置此武将牌。 ', sp_default:"常规", sp_zhongdan:"忠胆英杰", diff --git a/character/sp2.js b/character/sp2.js index 55592bf8b..cb3d45e5c 100644 --- a/character/sp2.js +++ b/character/sp2.js @@ -126,22 +126,31 @@ game.import('character',function(lib,game,ui,get,ai,_status){ return num+player.countMark('recangchu'); }, }, - group:'recangchu2', + group:['recangchu2','recangchu3'], }, recangchu2:{ audio:'recangchu', trigger:{ player:'gainAfter', - global:'die', }, forced:true, + usable:1, filter:function(event,player){ - if(event.name=='die') return player.countMark('recangchu')>game.countPlayer(); return player!=_status.currentPhase&&player.countMark('recangchu')game.countPlayer(); + }, + content:function(){ + player.removeMark('recangchu',player.countMark('recangchu')-game.countPlayer()); }, }, reliangying:{ @@ -159,10 +168,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){ } list.push('cancel2'); event.map=map; - player.chooseControl(list).set('prompt',get.prompt('reliangying')).set('prompt2','摸至多'+get.cnNumber(player.countMark('recangchu'))+'张牌,然后交给等量的其他角色各一张牌').set('ai',function(){ + player.chooseControl(list).set('prompt',get.prompt('reliangying')).set('prompt2','摸至多'+get.cnNumber(player.countMark('recangchu'))+'张牌,然后交给等量的角色各一张牌').set('ai',function(){ var player=_status.event.player; var num=Math.min(player.countMark('recangchu'),game.countPlayer(function(current){ - return current!=player&&get.attitude(player,current)>0; + return get.attitude(player,current)>0; })); if(num) return get.cnNumber(num); return 'cancel2'; @@ -180,9 +189,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){ if(num){ player.chooseCardTarget({ prompt:'将'+get.cnNumber(num)+'张牌交给其他角色', - prompt2:'操作提示:先按顺序选中所有要给出的牌,然后再按顺序选择等量的目标角色', - selectCard:num, - selectTarget:num, + prompt2:'操作提示:先按顺序选中所有要给出的牌,然后再按顺序选择等量的目标角色。可少选一张牌,并将此牌留给自己', + selectCard:[num-1,num], + selectTarget:function(){ + return ui.selected.cards.length; + }, filterTarget:function(card,player,target){ return target!=player; }, @@ -225,7 +236,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ return (event.name=='damage')?(event.nature=='fire'):(event.card&&event.card.name=='jiu'); }, content:function(){ - player.removeMark('recangchu',1); + player.removeMark('recangchu',Math.min(player.countMark('recangchu'),trigger.num||1)); }, group:'reshishou2', }, @@ -2760,7 +2771,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ enable:'phaseUse', usable:1, filterTarget:function(event,player,target){ - return player.inRange(target); + return player.inRange(target)&&target.countDiscardableCards(player,'he')>0; }, content:function(){ 'step 0' @@ -2781,6 +2792,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ return -2; }, target:function(player,target){ + if(target.countDiscardableCards(player,'he')<2) return 0; return -2; }, }, @@ -4760,6 +4772,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ return true; }, viewAs:{name:'nanman'}, + ai:{order:0.1}, }, souying:{ audio:2, @@ -8827,7 +8840,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){ zhujun:'朱儁(?-195年),字公伟。会稽郡上虞县(今浙江绍兴上虞区)人。东汉末年名将。朱儁出身寒门,赡养母亲,以好义轻财闻名,受乡里敬重。后被太守徐珪举为孝廉,任兰陵令,颇有治绩。再升任交州刺史,以家兵五千大破叛军,平定交州。战后以功封都亭侯,入朝为谏议大夫。光和七年(184年),黄巾起义爆发,朱儁以右中郎将、持节平定三郡之地,以功进封西乡侯,迁镇贼中郎将。又率军讨平黄巾,“威声满天下”。中平二年(185年),进拜右车骑将军,更封钱塘侯。后为河内太守,击退进逼的张燕。权臣董卓秉政时,想任朱儁为副手,遭其婉拒。其后出逃荆州,更屯军中牟,徐州刺史陶谦等欲推举他为太师,并传檄各州牧伯,相邀讨伐李傕、奉迎天子。但朱儁却奉诏入京任太仆。初平三年(192年),升任太尉、录尚书事。兴平元年(194年),行骠骑将军事,持节镇关东,因故未成行。兴平二年(195年),李傕与郭汜相互攻杀,郭汜扣留朱儁作为人质。朱儁性格刚烈,即日发病而死。', liuhong:'汉灵帝刘宏(157年,一作156年-189年5月13日),生于冀州河间国(今河北深州)。东汉第十二位皇帝(168年-189年在位),汉章帝刘炟的玄孙。刘宏早年世袭解渎亭侯。永康元年(167年)十二月,汉桓帝刘志逝世,刘宏被外戚窦氏挑选为皇位继承人,于建宁元年(168年)正月即位。刘宏在位的大部分时期,施行党锢及宦官政治。他又设置西园,巧立名目搜刮钱财,甚至卖官鬻爵以用于自己享乐。在位晚期,爆发了黄巾起义,而凉州等地也陷入持续动乱之中。中平六年(189年),刘宏去世,谥号孝灵皇帝,葬于文陵。刘宏喜好辞赋,作有《皇羲篇》、《追德赋》、《令仪颂》、《招商歌》等。', liubian:'刘辩(176年-190年3月6日),是汉灵帝刘宏与何皇后的嫡长子。刘辩在灵帝驾崩后继位为帝,史称少帝,由于年幼,实权掌握在临朝称制的母亲何太后和母舅大将军何进手中。少帝在位时期,东汉政权已经名存实亡,他即位后不久即遭遇以何进为首的外戚集团和以十常侍为首的内廷宦官集团这两大敌对政治集团的火并,被迫出宫,回宫后又受制于以“勤王”为名进京的凉州军阀董卓,终于被废为弘农王,成为东汉唯一被废黜的皇帝,其同父异母弟陈留王刘协继位为帝,是为汉献帝。被废黜一年之后,刘辩在董卓胁迫下自尽,时年仅十五岁(一说十八岁),其弟献帝追谥他为怀王。中国古代的史书中称刘辩为皇子辩、少帝和弘农王等。因为在位不逾年,传统上称东汉共十二帝,刘辩与东汉另一位少帝刘懿都不在其中,亦皆无本纪;不过,现代史学界也有观点承认两位少帝均是汉朝皇帝,则刘辩为东汉第十三位皇帝。', - luyusheng:'陆郁生(?年-?),三国时期吴国官员陆绩之女。陆郁生的父亲陆绩是吴郡公认的才子,又是当时吴郡陆氏的领袖。陆绩赴任担任郁林太守,遂取此名。陆郁生年少的时候就定下坚贞的志向。建安二十四年(219年),陆绩早亡,她与两个兄弟陆宏、陆睿当时都只有几岁,一起返回吴县,被他们的从兄陆瑁接回抚养。13周岁的陆郁生嫁给同郡出身的张白为妻。出嫁3个月后,张白因为其兄张温一族的案件遭到连坐,被处以流刑,后死于流放地,陆郁生成为了寡妇,其后公开宣言不再改嫁,困难于生计但拒绝了所有提亲,在艰苦中从未停止服侍、照顾张白的姐妹。事情传到朝廷,皇帝褒奖陆郁生,号其为“义姑”。她的表侄姚信在文集中称赞她的义举。', wangrong:'汉灵怀皇后王荣(?~181年),赵国邯郸(今河北邯郸市)人。五官中郎将王苞孙女,汉灵帝刘宏妃子,汉献帝刘协生母。初以良家子选入掖庭,封为美人,服侍汉灵帝。光和四年(181年),生下陈留王刘协,惨遭灵思皇后毒杀。王荣死后,汉灵帝曾作《追德赋》、《令仪颂》。永汉元年(189年),其子刘协即位,是为汉献帝,追谥灵怀皇后,葬于文昭陵。', hanfu:'韩馥(?—191年),字文节,颍川郡(今河南禹州)人。东汉末年的诸侯,冀州牧。韩馥担任过东汉的御史中丞,之后被董卓举荐为冀州牧;在各诸侯起兵讨伐董卓时,韩馥也是其中之一的参与者。韩馥与袁绍也曾经有意立刘虞为皇帝。当时冀州民殷人盛,兵粮优足,于是袁绍便用计夺取冀州,韩馥被迫投靠张邈;之后张邈与袁绍的使者见面,韩馥以为是要来杀害自己的,于是在厕所中以刻书用的小刀自杀。', zhanghuyuechen:'张虎,生卒年不详,雁门马邑(今山西朔城区大夫庄)人。三国时期曹魏将领。名将张辽之子。官至偏将军,袭封晋阳侯,有一子张统。乐綝(195~257年),字号不详,阳平郡卫国县(今河南省清丰县)人。三国时期曹魏将领,右将军乐进的儿子。果毅坚毅,袭封广昌亭侯,累迁扬州刺史。甘露二年,为叛乱的征东大将军诸葛诞所杀,追赠卫尉。', @@ -9219,7 +9231,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){ panshi_info:'锁定技,准备阶段,你交给有“慈孝”技能的角色一张手牌;当你于出牌阶段因使用【杀】对其他角色造成伤害时,若其拥有技能“慈孝”,则此伤害+1,且你结束出牌阶段。', xianshuai:'先率', xianshuai_info:'锁定技,有角色造成伤害后,若此伤害是本轮第一次造成伤害:你摸一张牌;若伤害来源是你,则你对受伤角色再造成1点伤害。', - luyusheng:'陆郁生', wangrong:'王荣', minsi:'敏思', minsi2:'敏思', @@ -9396,12 +9407,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){ re_chunyuqiong:'淳于琼', recangchu:'仓储', recangchu2:'仓储', + recangchu3:'仓储', recangchu_info:'锁定技,游戏开始时,你获得3个“粮”。你的手牌上限+X(X为“粮”数)。当你于回合外获得牌时,你获得一个“粮”。(你的“粮”数不能超过存活角色数)', reliangying:'粮营', reliangying_info:'弃牌阶段开始时,你可以摸至多X张牌,然后交给等量的角色各一张牌。(X为你的“粮”数)', reshishou:'失守', reshishou2:'失守', - reshishou_info:'锁定技,当你使用【酒】时或受到火焰伤害后,你移去一个“粮”。准备阶段,若你没有“粮”,你失去1点体力。', + reshishou_info:'锁定技,当你使用【酒】时或受到1点火焰伤害后,你移去一个“粮”。准备阶段,若你没有“粮”,你失去1点体力。', sp_yingbian:'文德武备', sp_whlw:"文和乱武", diff --git a/game/asset.js b/game/asset.js index 39113d81d..d130e5876 100644 --- a/game/asset.js +++ b/game/asset.js @@ -1,5 +1,5 @@ window.noname_asset_list=[ - 'v1.9.109', + 'v1.9.109.1', 'audio/background/aozhan_chaoming.mp3', 'audio/background/aozhan_online.mp3', 'audio/background/aozhan_rewrite.mp3', @@ -681,6 +681,10 @@ window.noname_asset_list=[ 'audio/die/guozhao.mp3', 'audio/die/wolongfengchu.mp3', 'audio/die/ol_dengai.mp3', + 'audio/die/luyusheng.mp3', + 'audio/die/re_caozhen.mp3', + 'audio/die/re_chunyuqiong.mp3', + 'audio/die/re_gongsunyuan.mp3', 'audio/skill/decadezishou1.mp3', 'audio/skill/decadezishou2.mp3', @@ -2989,6 +2993,20 @@ window.noname_asset_list=[ 'audio/skill/oltuntian2.mp3', 'audio/skill/olzaoxian1.mp3', 'audio/skill/olzaoxian2.mp3', + 'audio/skill/recangchu1.mp3', + 'audio/skill/recangchu2.mp3', + 'audio/skill/rehuaiyi1.mp3', + 'audio/skill/rehuaiyi2.mp3', + 'audio/skill/reliangying1.mp3', + 'audio/skill/reliangying2.mp3', + 'audio/skill/reshishou1.mp3', + 'audio/skill/reshishou2.mp3', + 'audio/skill/residi1.mp3', + 'audio/skill/residi2.mp3', + 'audio/skill/zhente1.mp3', + 'audio/skill/zhente2.mp3', + 'audio/skill/zhiwei1.mp3', + 'audio/skill/zhiwei2.mp3', 'audio/voice/male/0.mp3', 'audio/voice/male/1.mp3', @@ -3765,6 +3783,8 @@ window.noname_asset_list=[ 'image/character/ol_dengai.jpg', 'image/character/re_caozhen.jpg', 'image/character/re_gongsunyuan.jpg', + 'image/character/luyusheng.jpg', + 'image/character/ns_luyusheng.jpg', 'image/character/baiwuchang.jpg', 'image/character/baosanniang.jpg', diff --git a/game/game.js b/game/game.js index 95b5c4b62..f53313dd4 100644 --- a/game/game.js +++ b/game/game.js @@ -12930,10 +12930,12 @@ event.dialog.add(event.promptx[i]); } } - event.promptbar=event.dialog.add('0/'+get.numStr(event.selectCard[1],'card')); - event.custom.add.card=function(){ - _status.event.promptbar.innerHTML= - ui.selected.cards.length+'/'+get.numStr(_status.event.selectCard[1],'card'); + if(Array.isArray(event.selectCard)){ + event.promptbar=event.dialog.add('0/'+get.numStr(event.selectCard[1],'card')); + event.custom.add.card=function(){ + _status.event.promptbar.innerHTML= + ui.selected.cards.length+'/'+get.numStr(_status.event.selectCard[1],'card'); + } } } } @@ -24752,7 +24754,7 @@ this._notrigger.add(player); if(!evt||!evt.map) return; for(var i=0;i