Merge pull request #419 from copcap/dev-luxun

武陆逊;解锁界文聘、孟优
This commit is contained in:
Spmario233 2023-09-28 20:55:50 +08:00 committed by GitHub
commit 395fc63c4e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 156 additions and 7 deletions

View File

@ -64,7 +64,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
zhanghu:['male','wei',4,['cuijian','zhtongyuan']],
luyusheng:['female','wu',3,['zhente','zhiwei']],
huaxin:['male','wei',3,['spwanggui','xibing']],
mengyou:['male','qun',5,['hmmanyi','dcmanzhi'],['unseen']],
mengyou:['male','qun',5,['hmmanyi','dcmanzhi']],
liuyong:['male','shu',3,['zhuning','fengxiang']],
dc_sunru:['female','wu',3,['xiecui','youxu']],
xiahoulingnv:['female','wei',4,['fuping','weilie']],

View File

@ -32,6 +32,7 @@ window.noname_character_rank={
'zhangmancheng',
'wu_zhugeliang',
'sunlingluan',
'wu_luxun',
'key_mio',
'key_midori',
'key_yuri',
@ -956,6 +957,8 @@ window.noname_character_rank={
'jsrg_zhenji',
'junk_xuyou',
'sp_machao',
'mengyou',
're_wenpin',
],
b:[
'diy_feishi',

View File

@ -32,7 +32,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
re_zhuzhi:['male','wu',4,['reanguo']],
dc_caozhi:['male','wei',3,['reluoying','dcjiushi']],
ol_huangzhong:['male','shu',4,['xinliegong','remoshi']],
re_wenpin:['male','wei',5,['rezhenwei'],['unseen']],
re_wenpin:['male','wei',5,['rezhenwei']],
re_guanzhang:['male','shu',4,['fuhun','retongxin']],
re_mazhong:['male','shu',4,['refuman']],
dc_chenqun:['male','wei',3,['repindi','dcfaen']],
@ -1464,7 +1464,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
rezhenwei:{
inherit:'zhenwei',
filter:function(event,player){
if(player==event.target||player==event.player) return false;
if(player==event.target) return false;
if(!player.countCards('he')) return false;
if(event.targets.length>1) return false;
if(!event.target) return false;
@ -15065,7 +15065,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
retongxin_info:'锁定技。你的攻击范围+2。',
re_wenpin:'界文聘',
rezhenwei:'镇卫',
rezhenwei_info:'当一名其他角色成为【杀】或黑色锦囊牌的目标时(使用者不是你)若该角色的体力值不大于你且此牌的目标角色数为1你可以弃置一张牌。若如此做你选择一项1、摸一张牌然后将此【杀】或黑色锦囊牌转移给你2、令此【杀】或黑色锦囊牌无效然后将此【杀】或黑色锦囊牌置于使用者的武将牌旁若如此做当前回合结束后使用者获得使用者武将牌旁的这些牌。',
rezhenwei_info:'当一名其他角色成为【杀】或黑色锦囊牌的目标时若该角色的体力值不大于你且此牌的目标角色数为1你可以弃置一张牌并选择一项1.摸一张牌然后将此【杀】或黑色锦囊牌的目标转移给你2.令此【杀】或黑色锦囊牌无效且将此【杀】或黑色锦囊牌置于使用者的武将牌上,然后当前回合结束后,使用者获得这些牌。',
ol_huangzhong:'界黄忠',
remoshi:'没矢',
remoshi_info:'锁定技。①当你使用【杀】对目标角色造成伤害后,若其装备区里有防具牌或坐骑牌,你将此【杀】对应的实体牌置于其武将牌上。②当有“没矢”牌的角色失去防具牌或坐骑牌后,你获得其“没矢”牌。',

View File

@ -18062,8 +18062,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
save=true;
}
}
var next=player.chooseToDiscard('he',get.prompt('zhenwei',trigger.target),'弃置一张牌,将'+get.translation(trigger.card)+'转移给自己,或令此牌对其无效');
next.logSkill=['zhenwei',trigger.target];
var next=player.chooseToDiscard('he',get.prompt(event.name,trigger.target),'弃置一张牌,将'+get.translation(trigger.card)+'转移给自己,或令此牌对其无效');
next.logSkill=[event.name,trigger.target];
next.set('ai',function(card){
if(_status.event.aisave){
return 7-get.value(card);

View File

@ -4,6 +4,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
name:'xianding',
connect:true,
character:{
wu_luxun:['male','wu',3,['dcxiongmu','dczhangcai','dcruxian']],
dc_xujing:['male','shu',3,['dcshangyu','dccaixia']],
dc_zhaoxiang:['female','shu',4,['refanghun','refuhan']],
ol_guansuo:['male','shu',4,['xinzhengnan','xiefang']],
@ -96,10 +97,144 @@ game.import('character',function(lib,game,ui,get,ai,_status){
sp2_yuxiu:['dongguiren','dc_tengfanglan','zhangjinyun','zhoubuyi'],
sp2_qifu:['ol_guansuo','dc_zhaoxiang','dc_xujing'],
sp2_gaoshan:['wanglang','liuhui'],
sp2_wumiao:['wu_zhugeliang'],
sp2_wumiao:['wu_zhugeliang','wu_luxun'],
}
},
skill:{
//武陆逊
dcxiongmu:{
audio:2,
trigger:{global:'roundStart'},
filter:function(event,player){
return player.countCards('h')<player.maxHp;
},
group:'dcxiongmu_minus',
prompt2:function(event,player){
return '将手牌摸至'+get.cnNumber(player.maxHp)+'张然后将任意张牌随机置入牌堆并从牌堆或弃牌堆中获得等量点数为8的牌。';
},
content:function(){
'step 0'
player.drawTo(player.maxHp);
'step 1'
var cards=player.getCards('he');
if(!cards.length) event.finish();
else if(cards.length==1) event._result={bool:true,cards:cards};
else player.chooseCard('雄幕:将任意张牌置入牌堆的随机位置','he',[1,Infinity]).set('ai',card=>{
return 6-get.value(card);
});
'step 2'
if(result.bool){
var cards=result.cards;
event.cards=cards;
player.$throw(cards.length);
player.lose(cards,ui.cardPile).insert_index=function(){
return ui.cardPile.childNodes[ui.cardPile.childNodes.length-1];
};
var list=[];
var piles=['cardPile','discardPile'];
for(var pile of piles){
for(var i=0;i<ui[pile].childNodes.length;i++){
var card=ui.cardPile.childNodes[i];
var number=get.number(card,false);
if(!list.contains(card)&&number==8){
list.push(card);
if(list.length==cards.length) break;
}
}
}
if(list.length){
player.gain(list,'gain2').gaintag.add('dcxiongmu_tag');
player.addSkill('dcxiongmu_tag');
}
}
else event.finish();
},
subSkill:{
minus:{
trigger:{player:'damageBegin4'},
filter:function(event,player){
return game.getGlobalHistory('everything',evt=>{
return evt.name=='damage'&&evt.player==player;
}).indexOf(event)==0;
},
forced:true,
locked:false,
content:function(){
trigger.num--;
}
},
tag:{
charlotte:true,
onremove:function(player){
player.removeGaintag('dcxiongmu_tag');
},
mod:{
ignoredHandcard:function(card,player){
if(card.hasGaintag('dcxiongmu_tag')) return true;
},
cardDiscardable:function(card,player,name){
if(name=='phaseDiscard'&&card.hasGaintag('dcxiongmu_tag')) return false;
},
},
}
}
},
dczhangcai:{
audio:2,
trigger:{
player:['useCard','respond'],
},
filter:function(event,player){
if(player.hasSkill('dczhangcai_all')) return true;
return get.number(event.card)==8;
},
prompt2:function(event,player){
var num=player.hasSkill('dczhangcai_all')?get.number(event.card):8;
return '你可以摸'+get.cnNumber(Math.max(1,player.countCards('h',card=>get.number(card)==num)))+'张牌。';
},
frequent:true,
content:function(){
'step 0'
var num=player.hasSkill('dczhangcai_all')?get.number(trigger.card):8;
player.draw(Math.max(1,player.countCards('h',card=>{
return get.number(card)==num;
})));
},
ai:{
threaten:4,
},
subSkill:{
all:{
charlotte:true,
mark:true,
intro:{
content:'当你使用或打出牌时你可以摸X张牌X为你手牌中与此牌点数相同的牌数且至少为1'
},
},
}
},
dcruxian:{
audio:2,
enable:'phaseUse',
limited:true,
skillAnimation:true,
animationColor:'wood',
content:function(){
'step 0'
player.awakenSkill('dcruxian');
player.addTempSkill('dczhangcai_all',{player:'phaseBegin'});
},
ai:{
order:15,
result:{
player:function(player){
if(!player.hasSkill('dczhangcai')) return 0;
if(player.countCards('hs',card=>player.hasValueTarget(card))>3||player.hp==1) return 5;
return 0;
}
}
}
},
//新杀许靖
dcshangyu:{
audio:2,
@ -11977,6 +12112,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
dcluochong:function(player){
return '一轮游戏开始时,你可以弃置任意名角色区域里的共计至多['+(4-player.countMark('dcluochong'))+']张牌,然后若你以此法弃置了一名角色的至少三张牌,则你方括号内的数字-1。';
},
dczhangcai:function(player){
return '当你使用或打出'+(player.hasSkill('dczhangcai_all')?'':'点数为8的')+'牌时你可以摸X张牌X为你手牌区里'+(player.hasSkill('dczhangcai_all')?'与此牌点数相同':'点数为8')+'的牌数且至少为1。';
},
},
perfectPair:{},
characterReplace:{
@ -12445,6 +12583,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
dcshangyu_info:'锁定技。游戏开始时你获得一张【杀】并记录之然后将此牌交给一名角色你获得如下效果1.当一名角色使用此牌造成伤害后你与其各摸一张牌2.当此牌进入弃牌堆后,你将此牌交给一名本回合未以此法得到过此牌的角色。',
dccaixia:'才瑕',
dccaixia_info:'当你造成或受到伤害后若你没有“瑕”你可以摸至多X张牌并获得X枚“瑕”然后当你使用牌时移去1枚“瑕”X为场上角色数且至多为5。',
wu_luxun:'武陆逊',
dcxiongmu:'雄幕',
dcxiongmu_tag:'雄幕',
dcxiongmu_info:'①一轮游戏开始时你可以将手牌摸至体力上限然后将任意张牌随机置入牌堆从牌堆或弃牌堆中获得等量的点数为8的牌且这些牌不计入手牌上限。②当你于一回合首次受到伤害时若你的手牌数不大于你的体力值此伤害-1。',
dczhangcai:'彰才',
dczhangcai_info:'当你使用或打出点数为8的牌时你可以摸X张牌X为你手牌区里点数为8的牌数且至少为1。',
dcruxian:'儒贤',
dcruxian_info:'限定技。出牌阶段你可以令你〖彰才〗的点数限制取消且摸牌数改为等同于你手牌区内与此牌点数相同的牌数且至少为1直到你的下回合开始。',
sp2_yinyu:'隐山之玉',
sp2_huben:'百战虎贲',

BIN
image/character/mengyou.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 KiB