新服斗地主之隅泣曹操、缺德刘备、会玩孙权
This commit is contained in:
parent
0b43d74cf1
commit
9f76f630e6
|
@ -4,6 +4,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
name:'collab',
|
name:'collab',
|
||||||
connect:true,
|
connect:true,
|
||||||
character:{
|
character:{
|
||||||
|
dc_caocao:['male','wei',4,['dcjianxiong']],
|
||||||
|
dc_liubei:['male','shu',4,['dcrende']],
|
||||||
|
dc_sunquan:['male','wu',4,['dczhiheng']],
|
||||||
zhutiexiong:['male','qun',3,['dcbianzhuang']],
|
zhutiexiong:['male','qun',3,['dcbianzhuang']],
|
||||||
wu_zhutiexiong:['male','qun',3,['dcbianzhuang'],['unseen']],
|
wu_zhutiexiong:['male','qun',3,['dcbianzhuang'],['unseen']],
|
||||||
xiaoyuehankehan:['male','qun',3,['dctongliao','dcwudao']],
|
xiaoyuehankehan:['male','qun',3,['dctongliao','dcwudao']],
|
||||||
|
@ -30,9 +33,227 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
collab_tongque:["sp_fuwan","sp_fuhuanghou","sp_jiben","old_lingju",'sp_mushun'],
|
collab_tongque:["sp_fuwan","sp_fuhuanghou","sp_jiben","old_lingju",'sp_mushun'],
|
||||||
collab_duanwu:['sunwukong','longwang','taoshen'],
|
collab_duanwu:['sunwukong','longwang','taoshen'],
|
||||||
collab_decade:['libai','xiaoyuehankehan','zhutiexiong','wu_zhutiexiong'],
|
collab_decade:['libai','xiaoyuehankehan','zhutiexiong','wu_zhutiexiong'],
|
||||||
|
collab_remake:['dc_caocao','dc_liubei','dc_sunquan'],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
skill:{
|
skill:{
|
||||||
|
//隅泣曹操
|
||||||
|
dcjianxiong:{
|
||||||
|
audio:'rejianxiong',
|
||||||
|
trigger:{
|
||||||
|
player:'damageEnd',
|
||||||
|
},
|
||||||
|
content:function (){
|
||||||
|
'step 0'
|
||||||
|
if(get.itemtype(trigger.cards)=='cards'&&get.position(trigger.cards[0],true)=='o'){
|
||||||
|
player.gain(trigger.cards,'gain2');
|
||||||
|
}
|
||||||
|
player.draw(player.countMark('dcjianxiong')+1,'nodelay');
|
||||||
|
'step 1'
|
||||||
|
if(player.countMark('dcjianxiong')<4) player.addMark('dcjianxiong',1,false);
|
||||||
|
},
|
||||||
|
marktext:'雄',
|
||||||
|
intro:{
|
||||||
|
markcount:function(storage,player){
|
||||||
|
return player.countMark('dcjianxiong')+1;
|
||||||
|
},
|
||||||
|
content:function(storage,player){
|
||||||
|
return '摸牌数为'+(player.countMark('dcjianxiong')+1);
|
||||||
|
},
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
maixie:true,
|
||||||
|
maixie_hp:true,
|
||||||
|
effect:{
|
||||||
|
target:function (card,player,target){
|
||||||
|
if(player.hasSkillTag('jueqing',false,target)) return [1,-1];
|
||||||
|
if(get.tag(card,'damage')&&player!=target){
|
||||||
|
var cards=card.cards,evt=_status.event;
|
||||||
|
if(evt.player==target&&card.name=='damage'&&evt.getParent().type=='card') cards=evt.getParent().cards.filterInD();
|
||||||
|
if(target.hp<=1) return;
|
||||||
|
if(get.itemtype(cards)!='cards') return;
|
||||||
|
for(var i of cards){
|
||||||
|
if(get.name(i,target)=='tao') return [1,5+player.countMark('dcjianxiong')/2];
|
||||||
|
}
|
||||||
|
if(get.value(cards,target)>=(7-player.countMark('dcjianxiong')/2+target.getDamagedHp())) return [1,3+player.countMark('dcjianxiong')/2];
|
||||||
|
return [1,0.6+player.countMark('dcjianxiong')/2];
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
//缺德刘备
|
||||||
|
dcrende:{
|
||||||
|
audio:'rerende',
|
||||||
|
enable:'phaseUse',
|
||||||
|
filter:function(event,player){
|
||||||
|
return game.hasPlayer(current=>{
|
||||||
|
return lib.skill.dcrende.filterTarget(null,player,current);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
discard:false,
|
||||||
|
lose:false,
|
||||||
|
delay:false,
|
||||||
|
filterTarget:function(card,player,target){
|
||||||
|
if(player.getStorage('dcrende_targeted').contains(target)) return false;
|
||||||
|
return player!=target&&target.countGainableCards(player,'h')>1;
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
'step 0'
|
||||||
|
player.addTempSkill('dcrende_targeted','phaseUseAfter');
|
||||||
|
player.markAuto('dcrende_targeted',[target]);
|
||||||
|
player.gainPlayerCard(target,'h',true,2);
|
||||||
|
'step 1'
|
||||||
|
var list=[];
|
||||||
|
for(var name of lib.inpile){
|
||||||
|
if(get.type(name)!='basic') continue;
|
||||||
|
var card={name:name,isCard:true};
|
||||||
|
if(lib.filter.cardUsable(card,player,event.getParent('chooseToUse'))&&game.hasPlayer(current=>{
|
||||||
|
return player.canUse(card,current);
|
||||||
|
})){
|
||||||
|
list.push(['基本','',name]);
|
||||||
|
}
|
||||||
|
if(name=='sha'){
|
||||||
|
for(var nature of lib.inpile_nature){
|
||||||
|
card.nature=nature;
|
||||||
|
if(lib.filter.cardUsable(card,player,event.getParent('chooseToUse'))&&game.hasPlayer(current=>{
|
||||||
|
return player.canUse(card,current);
|
||||||
|
})){
|
||||||
|
list.push(['基本','',name,nature]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(list.length){
|
||||||
|
player.chooseButton(['是否视为使用一张基本牌?',[list,'vcard']]).set('ai',function(button){
|
||||||
|
var player=_status.event.player;
|
||||||
|
var card={name:button.link[2],nature:button.link[3],isCard:true};
|
||||||
|
if(card.name=='tao'){
|
||||||
|
if(player.hp==1||(player.hp==2&&!player.hasShan())||player.needsToDiscard()){
|
||||||
|
return 5;
|
||||||
|
}
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
if(card.name=='sha'){
|
||||||
|
if(game.hasPlayer(function(current){
|
||||||
|
return player.canUse(card,current)&&get.effect(current,card,player,player)>0
|
||||||
|
})){
|
||||||
|
if(card.nature=='fire') return 2.95;
|
||||||
|
if(card.nature=='thunder'||card.nature=='ice') return 2.92;
|
||||||
|
return 2.9;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
if(card.name=='jiu'){
|
||||||
|
return 0.5;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
event.finish();
|
||||||
|
}
|
||||||
|
'step 2'
|
||||||
|
if(result&&result.bool&&result.links[0]){
|
||||||
|
var card={name:result.links[0][2],nature:result.links[0][3],isCard:true};
|
||||||
|
player.chooseUseTarget(card,true);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
subSkill:{
|
||||||
|
targeted:{
|
||||||
|
onremove:true,
|
||||||
|
charlotte:true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
fireAttack:true,
|
||||||
|
order:function(skill,player){
|
||||||
|
return 10;
|
||||||
|
},
|
||||||
|
result:{
|
||||||
|
target:function(player,target){
|
||||||
|
if(target.hasSkillTag('noh')) return -0.1;
|
||||||
|
return -2;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
threaten:3,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
//会玩孙权
|
||||||
|
dczhiheng:{
|
||||||
|
audio:'rezhiheng',
|
||||||
|
enable:'phaseUse',
|
||||||
|
position:'he',
|
||||||
|
filterCard:lib.filter.cardDiscardable,
|
||||||
|
discard:false,
|
||||||
|
lose:false,
|
||||||
|
delay:false,
|
||||||
|
selectCard:[1,Infinity],
|
||||||
|
filter:function(event,player){
|
||||||
|
var skill=player.getStat().skill;
|
||||||
|
return !skill.dczhiheng||skill.dczhiheng<1+player.getStorage('dczhiheng_hit').length;
|
||||||
|
},
|
||||||
|
check:function(card){
|
||||||
|
var player=_status.event.player;
|
||||||
|
if(get.position(card)=='h'&&!player.countCards('h','du')&&(player.hp>2||!player.countCards('h',function(card){
|
||||||
|
return get.value(card)>=8;
|
||||||
|
}))){
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
return 6-get.value(card)
|
||||||
|
},
|
||||||
|
group:'dczhiheng_add',
|
||||||
|
content:function(){
|
||||||
|
'step 0'
|
||||||
|
player.discard(cards);
|
||||||
|
event.num=1;
|
||||||
|
var hs=player.getCards('h');
|
||||||
|
if(!hs.length) event.num=0;
|
||||||
|
for(var i=0;i<hs.length;i++){
|
||||||
|
if(!cards.contains(hs[i])){
|
||||||
|
event.num=0;break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
'step 1'
|
||||||
|
player.draw(event.num+cards.length);
|
||||||
|
},
|
||||||
|
subSkill:{
|
||||||
|
add:{
|
||||||
|
audio:2,
|
||||||
|
trigger:{
|
||||||
|
source:'damageSource',
|
||||||
|
},
|
||||||
|
forced:true,
|
||||||
|
locked:false,
|
||||||
|
filter:function(event,player){
|
||||||
|
return !player.getStorage('dczhiheng_hit').contains(event.player);
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
player.addTempSkill('dczhiheng_hit');
|
||||||
|
player.markAuto('dczhiheng_hit',[trigger.player]);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
hit:{
|
||||||
|
charlotte:true,
|
||||||
|
onremove:true,
|
||||||
|
mark:true,
|
||||||
|
marktext:'衡',
|
||||||
|
intro:{
|
||||||
|
markcount:function(storage,player){
|
||||||
|
return player.getStorage('dczhiheng_hit').length;
|
||||||
|
},
|
||||||
|
content:'本回合已对$造成过伤害',
|
||||||
|
},
|
||||||
|
}
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
order:1,
|
||||||
|
result:{
|
||||||
|
player:1
|
||||||
|
},
|
||||||
|
threaten:1.55
|
||||||
|
},
|
||||||
|
},
|
||||||
//朱铁雄
|
//朱铁雄
|
||||||
dcbianzhuang:{
|
dcbianzhuang:{
|
||||||
audio:2,
|
audio:2,
|
||||||
|
@ -1303,6 +1524,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
dynamicTranslate:{
|
||||||
|
dcjianxiong:function(player){
|
||||||
|
return '当你受到伤害后,你可以摸'+get.cnNumber(player.countMark('dcjianxiong')+1)+'张牌并获得对你造成伤害的牌,然后你令此技能摸牌数+1(至多为5)。';
|
||||||
|
},
|
||||||
|
},
|
||||||
translate:{
|
translate:{
|
||||||
old_lingju:'SP灵雎',
|
old_lingju:'SP灵雎',
|
||||||
fenxin_old:'焚心',
|
fenxin_old:'焚心',
|
||||||
|
@ -1366,11 +1592,24 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
wu_zhutiexiong:'朱铁雄',
|
wu_zhutiexiong:'朱铁雄',
|
||||||
dcbianzhuang:'变装',
|
dcbianzhuang:'变装',
|
||||||
dcbianzhuang_info:'①出牌阶段限一次,你可以从系统随机选择的两个技能中获得一个,并视为使用一张【杀】(无距离次数限制),然后失去以此法获得的技能。②当你使用装备牌后,你清空此技能的发动次数记录。③当你发动〖变装①〗后,若你发动〖变装①〗的次数大于2,则你将武将牌变更为诸葛亮,并将系统选择的技能数改为三个。',
|
dcbianzhuang_info:'①出牌阶段限一次,你可以从系统随机选择的两个技能中获得一个,并视为使用一张【杀】(无距离次数限制),然后失去以此法获得的技能。②当你使用装备牌后,你清空此技能的发动次数记录。③当你发动〖变装①〗后,若你发动〖变装①〗的次数大于2,则你将武将牌变更为诸葛亮,并将系统选择的技能数改为三个。',
|
||||||
|
dc_caocao:'经典曹操',
|
||||||
|
dc_caocao_ab:'曹操',
|
||||||
|
dcjianxiong:'奸雄',
|
||||||
|
dcjianxiong_info:'当你受到伤害后,你可以摸一张牌并获得对你造成伤害的牌,然后你令此技能摸牌数+1(至多为5)。',
|
||||||
|
dc_liubei:'经典刘备',
|
||||||
|
dc_liubei_ab:'刘备',
|
||||||
|
dcrende:'仁德',
|
||||||
|
dcrende_info:'出牌阶段每名角色限一次。你可以获得一名其他角色两张手牌,然后视为使用一张基本牌。',
|
||||||
|
dc_sunquan:'经典孙权',
|
||||||
|
dc_sunquan_ab:'孙权',
|
||||||
|
dczhiheng:'制衡',
|
||||||
|
dczhiheng_info:'①出牌阶段限一次。你可以弃置任意张牌并摸等量的牌,若你在发动〖制衡〗时弃置了所有手牌,则你多摸一张牌。②每回合每名角色限一次。当你对其他角色造成伤害后,你令〖制衡①〗于此回合发动次数上限+1。',
|
||||||
|
|
||||||
collab_olympic:'OL·伦敦奥运会',
|
collab_olympic:'OL·伦敦奥运会',
|
||||||
collab_tongque:'OL·铜雀台',
|
collab_tongque:'OL·铜雀台',
|
||||||
collab_duanwu:'新服·端午畅玩',
|
collab_duanwu:'新服·端午畅玩',
|
||||||
collab_decade:'新服·创玩节',
|
collab_decade:'新服·创玩节',
|
||||||
|
collab_remake:'新服·共创武将',
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
|
@ -305,6 +305,9 @@ window.noname_character_rank={
|
||||||
'clan_zhonghui',
|
'clan_zhonghui',
|
||||||
'jsrg_chunyuqiong',
|
'jsrg_chunyuqiong',
|
||||||
'jsrg_guanyu',
|
'jsrg_guanyu',
|
||||||
|
'dc_caocao',
|
||||||
|
'dc_liubei',
|
||||||
|
'dc_sunquan',
|
||||||
'yuechen',
|
'yuechen',
|
||||||
'key_misuzu',
|
'key_misuzu',
|
||||||
'key_sunohara',
|
'key_sunohara',
|
||||||
|
|
|
@ -2471,7 +2471,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
characterReplace:{
|
characterReplace:{
|
||||||
caocao:['re_caocao','caocao'],
|
caocao:['re_caocao','caocao','dc_caocao'],
|
||||||
guojia:['re_guojia','guojia','ps1059_guojia','ps2070_guojia'],
|
guojia:['re_guojia','guojia','ps1059_guojia','ps2070_guojia'],
|
||||||
simayi:['re_simayi','simayi','ps_simayi','ps2068_simayi'],
|
simayi:['re_simayi','simayi','ps_simayi','ps2068_simayi'],
|
||||||
jin_simayi:['jin_simayi','junk_simayi','ps_jin_simayi'],
|
jin_simayi:['jin_simayi','junk_simayi','ps_jin_simayi'],
|
||||||
|
@ -2480,7 +2480,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
zhangliao:['re_zhangliao','zhangliao'],
|
zhangliao:['re_zhangliao','zhangliao'],
|
||||||
sp_zhangliao:['sp_zhangliao','yj_zhangliao','jsrg_zhangliao'],
|
sp_zhangliao:['sp_zhangliao','yj_zhangliao','jsrg_zhangliao'],
|
||||||
xiahoudun:['re_xiahoudun','xin_xiahoudun','xiahoudun'],
|
xiahoudun:['re_xiahoudun','xin_xiahoudun','xiahoudun'],
|
||||||
liubei:['re_liubei','liubei','junk_liubei'],
|
liubei:['re_liubei','liubei','dc_liubei','junk_liubei'],
|
||||||
guanyu:['re_guanyu','guanyu','jsrg_guanyu','ps_guanyu'],
|
guanyu:['re_guanyu','guanyu','jsrg_guanyu','ps_guanyu'],
|
||||||
zhangfei:['re_zhangfei','tw_zhangfei','xin_zhangfei','old_zhangfei','zhangfei','yj_zhangfei'],
|
zhangfei:['re_zhangfei','tw_zhangfei','xin_zhangfei','old_zhangfei','zhangfei','yj_zhangfei'],
|
||||||
zhaoyun:['re_zhaoyun','old_zhaoyun','zhaoyun','ps2063_zhaoyun','ps2067_zhaoyun'],
|
zhaoyun:['re_zhaoyun','old_zhaoyun','zhaoyun','ps2063_zhaoyun','ps2067_zhaoyun'],
|
||||||
|
@ -2489,7 +2489,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
sp_machao:['sp_machao','old_machao'],
|
sp_machao:['sp_machao','old_machao'],
|
||||||
zhugeliang:['re_zhugeliang','zhugeliang','ps2066_zhugeliang','ps_zhugeliang'],
|
zhugeliang:['re_zhugeliang','zhugeliang','ps2066_zhugeliang','ps_zhugeliang'],
|
||||||
huangyueying:['re_huangyueying','huangyueying','junk_huangyueying'],
|
huangyueying:['re_huangyueying','huangyueying','junk_huangyueying'],
|
||||||
sunquan:['re_sunquan','sunquan'],
|
sunquan:['re_sunquan','sunquan','dc_sunquan'],
|
||||||
zhouyu:['re_zhouyu','zhouyu','ps1062_zhouyu','ps2080_zhouyu'],
|
zhouyu:['re_zhouyu','zhouyu','ps1062_zhouyu','ps2080_zhouyu'],
|
||||||
luxun:['re_luxun','luxun'],
|
luxun:['re_luxun','luxun'],
|
||||||
lvmeng:['re_lvmeng','lvmeng'],
|
lvmeng:['re_lvmeng','lvmeng'],
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 126 KiB |
Binary file not shown.
After Width: | Height: | Size: 124 KiB |
Binary file not shown.
After Width: | Height: | Size: 123 KiB |
Loading…
Reference in New Issue