v1.9.92.1.1
This commit is contained in:
parent
dd637532d4
commit
578fa44787
|
@ -161,18 +161,18 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
ns_xiandao1:{
|
||||
audio:["huashen",2],
|
||||
forced:true,
|
||||
// noLose:true,
|
||||
// locked:true,
|
||||
// noRemove:true,
|
||||
// noDisable:true,
|
||||
//noLose:true,
|
||||
//locked:true,
|
||||
//noRemove:true,
|
||||
//noDisable:true,
|
||||
priority:10,
|
||||
trigger:{
|
||||
global:"gameStart",
|
||||
player:["phaseEnd","enterGame"],
|
||||
},
|
||||
filter:function (event,player){
|
||||
return player.isAlive();
|
||||
},
|
||||
//filter:function (event,player){
|
||||
// return player.isAlive();
|
||||
//},
|
||||
content:function (){
|
||||
var n=[1,2].randomGet();
|
||||
if(n==1){
|
||||
|
@ -188,10 +188,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
ns_xiandao2:{
|
||||
audio:["huashen",2],
|
||||
forced:true,
|
||||
// noLose:true,
|
||||
// locked:true,
|
||||
// noRemove:true,
|
||||
// noDisable:true,
|
||||
//noLose:true,
|
||||
//locked:true,
|
||||
//noRemove:true,
|
||||
//noDisable:true,
|
||||
trigger:{
|
||||
player:"damageBefore",
|
||||
},
|
||||
|
@ -201,15 +201,15 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function (){
|
||||
trigger.cancel();
|
||||
event.finish();
|
||||
//event.finish();
|
||||
},
|
||||
},
|
||||
ns_xiandao:{
|
||||
forced:true,
|
||||
// noLose:true,
|
||||
// locked:true,
|
||||
//noLose:true,
|
||||
//locked:true,
|
||||
noRemove:true,
|
||||
// noDisable:true,
|
||||
//noDisable:true,
|
||||
group:["ns_xiandao1","ns_xiandao2"],
|
||||
},
|
||||
ns_chuanshu2:{
|
||||
|
@ -241,7 +241,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
group:"ns_chuanshu3",
|
||||
},
|
||||
ns_chuanshu3:{
|
||||
audio:"ext:群英会:1",
|
||||
audio:1,
|
||||
trigger:{
|
||||
player:"dieBegin",
|
||||
},
|
||||
|
@ -294,9 +294,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
game.delay();
|
||||
}
|
||||
"step 3"
|
||||
player.chooseToDiscard(2,'he','请弃置两张牌',true).ai=function(card){
|
||||
return 7-get.value(card);
|
||||
};
|
||||
player.chooseToDiscard(2,'he','请弃置两张牌',true);
|
||||
},
|
||||
ai:{
|
||||
threaten:0.5,
|
||||
|
@ -3375,7 +3373,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
player.gain(cards,'gain2');
|
||||
}
|
||||
player.storage.liangji_1=0;
|
||||
|
||||
'step 1'
|
||||
if(player.sex=='male')player.addTempSkill('wushuang');
|
||||
if(player.sex=='female')player.addTempSkill('lijian');
|
||||
|
@ -3453,7 +3450,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
player.$throw(links);
|
||||
game.log(player,'被移去了',links);
|
||||
for(var i=0;i<links.length;i++){
|
||||
ui.discardPile.appendChild(links[i]);}
|
||||
ui.discardPile.appendChild(links[i]);
|
||||
}
|
||||
}
|
||||
"step 2"
|
||||
trigger.cancel();
|
||||
|
|
|
@ -872,7 +872,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
trigger:{
|
||||
player:"damageEnd",
|
||||
},
|
||||
// alter:true,
|
||||
//alter:true,
|
||||
filter:function (event,player){
|
||||
if(event.source==undefined) return false
|
||||
if(!get.is.altered('wuhun')) return false
|
||||
|
@ -1851,7 +1851,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
expose:0.4,
|
||||
}
|
||||
},
|
||||
|
||||
"nzry_longnu":{
|
||||
mark:true,
|
||||
locked:true,
|
||||
|
@ -2129,11 +2128,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
'step 0'
|
||||
player.awakenSkill('nzry_dinghuo');
|
||||
player.storage.nzry_dinghuo=true;
|
||||
/*player.chooseTarget([0,player.storage.nzry_junlve],'请选择【绽火】的目标',function(card,player,target){
|
||||
return target.isLinked();
|
||||
}).ai=function(target){
|
||||
return -get.attitude(player,target);
|
||||
};*/
|
||||
'step 1'
|
||||
player.storage.nzry_junlve=0;
|
||||
player.syncStorage('nzry_junlve');
|
||||
|
|
|
@ -35,10 +35,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
old_caochun:['male','wei',4,['shanjia']],
|
||||
old_yuanshu:['male','qun',4,['xinyongsi','yjixi']],
|
||||
},
|
||||
characterFilter:{
|
||||
},
|
||||
skill:{
|
||||
},
|
||||
characterFilter:{},
|
||||
skill:{},
|
||||
translate:{
|
||||
re_jikang:"新嵇康",
|
||||
old_bulianshi:'新步练师',
|
||||
|
|
|
@ -39,7 +39,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
re_lidian:'字曼成,曹操麾下将领。李典深明大义,不与人争功,崇尚学习与高贵儒雅,尊重博学之士,在军中被称为长者。李典有长者之风,官至破虏将军,三十六岁去世。魏文帝曹丕继位后追谥号为愍侯。',
|
||||
},
|
||||
skill:{
|
||||
|
||||
reqiangxi:{
|
||||
subSkill:{
|
||||
off:{
|
||||
|
|
|
@ -140,7 +140,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
"chendao":"陈到,字叔至,生卒年不详,豫州汝南(今河南驻马店平舆县)人。三国时期蜀汉将领,刘备帐下白毦兵统领,名位常亚于赵云,以忠勇著称。蜀汉建兴年间,任征西将军、永安都督,封亭侯。在任期间去世。",
|
||||
},
|
||||
skill:{
|
||||
|
||||
//阴雷
|
||||
"drlt_zhenrong":{
|
||||
init:function (player){
|
||||
|
@ -1832,7 +1831,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}).ai=function(target){
|
||||
return get.attitude(player,target)
|
||||
};
|
||||
}else{
|
||||
}
|
||||
else{
|
||||
event.finish();
|
||||
};
|
||||
'step 2'
|
||||
|
|
809
character/sp.js
809
character/sp.js
|
@ -431,49 +431,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
ai:{
|
||||
basic:{
|
||||
equipValue:7.5,
|
||||
order:function (card,player){
|
||||
if(player&&player.hasSkillTag('reverseEquip')){
|
||||
return 8.5-get.equipValue(card,player)/20;
|
||||
}
|
||||
else{
|
||||
return 8+get.equipValue(card,player)/20;
|
||||
}
|
||||
},
|
||||
useful:2,
|
||||
value:function (card,player){
|
||||
var value=0;
|
||||
var info=get.info(card);
|
||||
var current=player.getEquip(info.subtype);
|
||||
if(current&&card!=current){
|
||||
value=get.value(current,player);
|
||||
}
|
||||
var equipValue=info.ai.equipValue;
|
||||
if(equipValue==undefined){
|
||||
equipValue=info.ai.basic.equipValue;
|
||||
}
|
||||
if(typeof equipValue=='function') return equipValue(card,player)-value;
|
||||
if(typeof equipValue!='number') equipValue=0;
|
||||
return equipValue-value;
|
||||
},
|
||||
},
|
||||
result:{
|
||||
target:function (player,target){
|
||||
return get.equipResult(player,target,name);
|
||||
},
|
||||
},
|
||||
},
|
||||
skills:["rw_bagua_skill"],
|
||||
enable:true,
|
||||
selectTarget:-1,
|
||||
filterTarget:function (card,player,target){
|
||||
return target==player;
|
||||
},
|
||||
modTarget:true,
|
||||
allowMultiple:false,
|
||||
content:function (){
|
||||
target.equip(card);
|
||||
},
|
||||
toself:true,
|
||||
},
|
||||
"rewrite_baiyin":{
|
||||
derivation:"majun",
|
||||
|
@ -498,48 +458,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
basic:{
|
||||
equipValue:5,
|
||||
order:function (card,player){
|
||||
if(player&&player.hasSkillTag('reverseEquip')){
|
||||
return 8.5-get.equipValue(card,player)/20;
|
||||
}
|
||||
else{
|
||||
return 8+get.equipValue(card,player)/20;
|
||||
}
|
||||
},
|
||||
useful:2,
|
||||
value:function (card,player){
|
||||
var value=0;
|
||||
var info=get.info(card);
|
||||
var current=player.getEquip(info.subtype);
|
||||
if(current&&card!=current){
|
||||
value=get.value(current,player);
|
||||
}
|
||||
var equipValue=info.ai.equipValue;
|
||||
if(equipValue==undefined){
|
||||
equipValue=info.ai.basic.equipValue;
|
||||
}
|
||||
if(typeof equipValue=='function') return equipValue(card,player)-value;
|
||||
if(typeof equipValue!='number') equipValue=0;
|
||||
return equipValue-value;
|
||||
},
|
||||
},
|
||||
result:{
|
||||
target:function (player,target){
|
||||
return get.equipResult(player,target,name);
|
||||
},
|
||||
},
|
||||
},
|
||||
enable:true,
|
||||
selectTarget:-1,
|
||||
filterTarget:function (card,player,target){
|
||||
return target==player;
|
||||
},
|
||||
modTarget:true,
|
||||
allowMultiple:false,
|
||||
content:function (){
|
||||
target.equip(card);
|
||||
},
|
||||
toself:true,
|
||||
},
|
||||
"rewrite_lanyinjia":{
|
||||
derivation:"majun",
|
||||
|
@ -551,49 +471,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
ai:{
|
||||
equipValue:6,
|
||||
basic:{
|
||||
order:function (card,player){
|
||||
if(player&&player.hasSkillTag('reverseEquip')){
|
||||
return 8.5-get.equipValue(card,player)/20;
|
||||
}
|
||||
else{
|
||||
return 8+get.equipValue(card,player)/20;
|
||||
}
|
||||
},
|
||||
useful:2,
|
||||
equipValue:1,
|
||||
value:function (card,player){
|
||||
var value=0;
|
||||
var info=get.info(card);
|
||||
var current=player.getEquip(info.subtype);
|
||||
if(current&&card!=current){
|
||||
value=get.value(current,player);
|
||||
}
|
||||
var equipValue=info.ai.equipValue;
|
||||
if(equipValue==undefined){
|
||||
equipValue=info.ai.basic.equipValue;
|
||||
}
|
||||
if(typeof equipValue=='function') return equipValue(card,player)-value;
|
||||
if(typeof equipValue!='number') equipValue=0;
|
||||
return equipValue-value;
|
||||
},
|
||||
},
|
||||
result:{
|
||||
target:function (player,target){
|
||||
return get.equipResult(player,target,name);
|
||||
},
|
||||
},
|
||||
},
|
||||
enable:true,
|
||||
selectTarget:-1,
|
||||
filterTarget:function (card,player,target){
|
||||
return target==player;
|
||||
},
|
||||
modTarget:true,
|
||||
allowMultiple:false,
|
||||
content:function (){
|
||||
target.equip(card);
|
||||
},
|
||||
toself:true,
|
||||
},
|
||||
"rewrite_renwang":{
|
||||
derivation:"majun",
|
||||
|
@ -605,48 +485,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
ai:{
|
||||
basic:{
|
||||
equipValue:7.5,
|
||||
order:function (card,player){
|
||||
if(player&&player.hasSkillTag('reverseEquip')){
|
||||
return 8.5-get.equipValue(card,player)/20;
|
||||
}
|
||||
else{
|
||||
return 8+get.equipValue(card,player)/20;
|
||||
}
|
||||
},
|
||||
useful:2,
|
||||
value:function (card,player){
|
||||
var value=0;
|
||||
var info=get.info(card);
|
||||
var current=player.getEquip(info.subtype);
|
||||
if(current&&card!=current){
|
||||
value=get.value(current,player);
|
||||
}
|
||||
var equipValue=info.ai.equipValue;
|
||||
if(equipValue==undefined){
|
||||
equipValue=info.ai.basic.equipValue;
|
||||
}
|
||||
if(typeof equipValue=='function') return equipValue(card,player)-value;
|
||||
if(typeof equipValue!='number') equipValue=0;
|
||||
return equipValue-value;
|
||||
},
|
||||
},
|
||||
result:{
|
||||
target:function (player,target){
|
||||
return get.equipResult(player,target,name);
|
||||
},
|
||||
},
|
||||
},
|
||||
enable:true,
|
||||
selectTarget:-1,
|
||||
filterTarget:function (card,player,target){
|
||||
return target==player;
|
||||
},
|
||||
modTarget:true,
|
||||
allowMultiple:false,
|
||||
content:function (){
|
||||
target.equip(card);
|
||||
},
|
||||
toself:true,
|
||||
},
|
||||
"rewrite_tengjia":{
|
||||
derivation:"majun",
|
||||
|
@ -671,49 +511,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
basic:{
|
||||
equipValue:3,
|
||||
order:function (card,player){
|
||||
if(player&&player.hasSkillTag('reverseEquip')){
|
||||
return 8.5-get.equipValue(card,player)/20;
|
||||
}
|
||||
else{
|
||||
return 8+get.equipValue(card,player)/20;
|
||||
}
|
||||
},
|
||||
useful:2,
|
||||
value:function (card,player){
|
||||
var value=0;
|
||||
var info=get.info(card);
|
||||
var current=player.getEquip(info.subtype);
|
||||
if(current&&card!=current){
|
||||
value=get.value(current,player);
|
||||
}
|
||||
var equipValue=info.ai.equipValue;
|
||||
if(equipValue==undefined){
|
||||
equipValue=info.ai.basic.equipValue;
|
||||
}
|
||||
if(typeof equipValue=='function') return equipValue(card,player)-value;
|
||||
if(typeof equipValue!='number') equipValue=0;
|
||||
return equipValue-value;
|
||||
},
|
||||
},
|
||||
result:{
|
||||
target:function (player,target){
|
||||
return get.equipResult(player,target,name);
|
||||
},
|
||||
},
|
||||
},
|
||||
skills:["rw_tengjia1","rw_tengjia2","rw_tengjia3","rw_tengjia4"],
|
||||
enable:true,
|
||||
selectTarget:-1,
|
||||
filterTarget:function (card,player,target){
|
||||
return target==player;
|
||||
},
|
||||
modTarget:true,
|
||||
allowMultiple:false,
|
||||
content:function (){
|
||||
target.equip(card);
|
||||
},
|
||||
toself:true,
|
||||
},
|
||||
"rewrite_zhuge":{
|
||||
derivation:"majun",
|
||||
|
@ -742,52 +542,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
basic:{
|
||||
equipValue:5,
|
||||
order:function (card,player){
|
||||
if(player&&player.hasSkillTag('reverseEquip')){
|
||||
return 8.5-get.equipValue(card,player)/20;
|
||||
}
|
||||
else{
|
||||
return 8+get.equipValue(card,player)/20;
|
||||
}
|
||||
},
|
||||
useful:2,
|
||||
value:function (card,player){
|
||||
var value=0;
|
||||
var info=get.info(card);
|
||||
var current=player.getEquip(info.subtype);
|
||||
if(current&&card!=current){
|
||||
value=get.value(current,player);
|
||||
}
|
||||
var equipValue=info.ai.equipValue;
|
||||
if(equipValue==undefined){
|
||||
equipValue=info.ai.basic.equipValue;
|
||||
}
|
||||
if(typeof equipValue=='function') return equipValue(card,player)-value;
|
||||
if(typeof equipValue!='number') equipValue=0;
|
||||
return equipValue-value;
|
||||
},
|
||||
},
|
||||
tag:{
|
||||
valueswap:1,
|
||||
},
|
||||
result:{
|
||||
target:function (player,target){
|
||||
return get.equipResult(player,target,name);
|
||||
},
|
||||
},
|
||||
},
|
||||
skills:["zhuge_skill"],
|
||||
enable:true,
|
||||
selectTarget:-1,
|
||||
filterTarget:function (card,player,target){
|
||||
return target==player;
|
||||
},
|
||||
modTarget:true,
|
||||
allowMultiple:false,
|
||||
content:function (){
|
||||
target.equip(card);
|
||||
},
|
||||
toself:true,
|
||||
},
|
||||
},
|
||||
skill:{
|
||||
|
@ -2036,576 +1796,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
cardEnabled:function (card){if(card.name=='sha') return false},
|
||||
},
|
||||
},
|
||||
//双牌打出闪:
|
||||
yizan1:{
|
||||
trigger:{player:'chooseToRespondBegin'},
|
||||
filter:function(event,player){
|
||||
//if(event.responded) return false;
|
||||
//if(event.filterCard({name:'wuxie'})) return false;
|
||||
if(!event.filterCard({name:'shan'})) return false;
|
||||
//if(player.hasSkill('yizan4')) return false;
|
||||
//if(event.parent.name!='sha') return false;
|
||||
var hs=player.getCards('h',{type:'basic'});
|
||||
for(var i=0;i<hs.length;i++){
|
||||
if(get.type(hs[i])=='basic'){
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(i==hs.length) return false;
|
||||
return true;
|
||||
},
|
||||
direct:true,
|
||||
init:function (player){
|
||||
player.unmarkSkill('yizan');
|
||||
player.storage.yizan=[];
|
||||
player.syncStorage('yizan');
|
||||
},
|
||||
intro:{
|
||||
content:"已发动了#次翊赞",
|
||||
},
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseCard(get.prompt('yizan1'),'he',function(card){
|
||||
return get.type(card)=='basic';
|
||||
}).set('ai',function(card){
|
||||
if(!_status.event.player.countCards('h','shan')){
|
||||
return 8-get.value(card);
|
||||
}
|
||||
return 6-get.value(card);
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
trigger.untrigger();
|
||||
trigger.responded=true;
|
||||
trigger.result={bool:true,card:{name:'shan'}}
|
||||
player.lose(result.cards,ui.special);
|
||||
player.$throw(result.cards);
|
||||
player.chooseToDiscard('he',true);
|
||||
player.markSkill('yizan');
|
||||
player.storage.yizan++;
|
||||
player.update();
|
||||
player.logSkill('yizan1');
|
||||
player.addTempSkill('yizan4');
|
||||
}
|
||||
else{
|
||||
event.finish();
|
||||
}
|
||||
},
|
||||
ai:{
|
||||
respondShan:true,
|
||||
},
|
||||
},
|
||||
//双牌打出杀:
|
||||
yizan5:{
|
||||
trigger:{player:'chooseToRespondBegin'},
|
||||
filter:function(event,player){
|
||||
//if(event.responded) return false;
|
||||
//if(event.filterCard({name:'wuxie'})) return false;
|
||||
if(!event.filterCard({name:'sha'})) return false;
|
||||
//if(player.hasSkill('yizan4')) return false;
|
||||
var hs=player.getCards('h',{type:'basic'});
|
||||
for(var i=0;i<hs.length;i++){
|
||||
if(get.type(hs[i])=='basic'){
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(i==hs.length) return false;
|
||||
return true;
|
||||
},
|
||||
direct:true,
|
||||
init:function (player){
|
||||
player.unmarkSkill('yizan');
|
||||
player.storage.yizan=[];
|
||||
player.syncStorage('yizan');
|
||||
},
|
||||
intro:{
|
||||
content:"已发动了#次翊赞",
|
||||
},
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseCard(get.prompt('yizan5'),'he',function(card){
|
||||
return get.type(card)=='basic';
|
||||
}).set('ai',function(card){
|
||||
if(!_status.event.player.countCards('h','sha')){
|
||||
return 8-get.value(card);
|
||||
}
|
||||
return 6-get.value(card);
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
trigger.untrigger();
|
||||
trigger.responded=true;
|
||||
trigger.result={bool:true,card:{name:'sha'}}
|
||||
player.lose(result.cards,ui.special);
|
||||
player.$throw(result.cards);
|
||||
player.chooseToDiscard('he',true);
|
||||
player.markSkill('yizan');
|
||||
player.storage.yizan++;
|
||||
player.update();
|
||||
player.logSkill('yizan5');
|
||||
player.addTempSkill('yizan4');
|
||||
}
|
||||
else{
|
||||
event.finish();
|
||||
}
|
||||
},
|
||||
ai:{
|
||||
respondSha:true,
|
||||
},
|
||||
},
|
||||
yizan4:{},
|
||||
//单牌打出闪:
|
||||
"yizan3":{
|
||||
trigger:{player:'chooseToRespondBegin'},
|
||||
filter:function(event,player){
|
||||
//if(event.responded) return false;
|
||||
//if(event.filterCard({name:'wuxie'})) return false;
|
||||
if(!event.filterCard({name:'shan'})) return false;
|
||||
//if(player.hasSkill('yizan4')) return false;
|
||||
//if(event.parent.name!='sha') return false;
|
||||
var hs=player.getCards('h',{type:'basic'});
|
||||
for(var i=0;i<hs.length;i++){
|
||||
if(get.type(hs[i])=='basic'){
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(i==hs.length) return false;
|
||||
return true;
|
||||
},
|
||||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseCard(get.prompt('yizan3'),'he',function(card){
|
||||
return get.type(card)=='basic';
|
||||
}).set('ai',function(card){
|
||||
if(!_status.event.player.countCards('h','shan')){
|
||||
return 8-get.value(card);
|
||||
}
|
||||
return 6-get.value(card);
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
trigger.untrigger();
|
||||
trigger.responded=true;
|
||||
trigger.result={bool:true,card:{name:'shan'}}
|
||||
player.lose(result.cards,ui.special);
|
||||
player.$throw(result.cards);
|
||||
player.logSkill('yizan3');
|
||||
player.addTempSkill('yizan4');
|
||||
}
|
||||
else{
|
||||
event.finish();
|
||||
}
|
||||
},
|
||||
},
|
||||
//单牌打出杀:
|
||||
yizan6:{
|
||||
trigger:{player:'chooseToRespondBegin'},
|
||||
filter:function(event,player){
|
||||
//if(event.responded) return false;
|
||||
//if(event.filterCard({name:'wuxie'})) return false;
|
||||
if(!event.filterCard({name:'sha'})) return false;
|
||||
//if(player.hasSkill('yizan4')) return false;
|
||||
//if(event.parent.name!='sha') return false;
|
||||
var hs=player.getCards('h',{type:'basic'});
|
||||
for(var i=0;i<hs.length;i++){
|
||||
if(get.type(hs[i])=='basic'){
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(i==hs.length) return false;
|
||||
return true;
|
||||
},
|
||||
direct:true,
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseCard(get.prompt('yizan6'),'he',function(card){
|
||||
return get.type(card)=='basic';
|
||||
}).set('ai',function(card){
|
||||
if(!_status.event.player.countCards('h','sha')){
|
||||
return 8-get.value(card);
|
||||
}
|
||||
return 6-get.value(card);
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
trigger.untrigger();
|
||||
trigger.responded=true;
|
||||
trigger.result={bool:true,card:{name:'sha'}}
|
||||
player.lose(result.cards,ui.special);
|
||||
player.$throw(result.cards);
|
||||
player.logSkill('yizan3');
|
||||
player.addTempSkill('yizan4');
|
||||
}
|
||||
else{
|
||||
event.finish();
|
||||
}
|
||||
},
|
||||
},
|
||||
//双牌使用:
|
||||
yizan:{
|
||||
// audio:2,
|
||||
// enable:["chooseToUse"],
|
||||
enable:["chooseToRespond","chooseToUse"],
|
||||
filter:function (event,player){
|
||||
return player.countCards('h',{type:'basic'})>0&&player.countCards('he')>1;
|
||||
},
|
||||
init:function (player){
|
||||
player.unmarkSkill('yizan');
|
||||
player.storage.yizan=[];
|
||||
player.syncStorage('yizan');
|
||||
},
|
||||
intro:{
|
||||
content:"已发动了#次翊赞",
|
||||
},
|
||||
group:["yizan1","yizan5"],
|
||||
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':return 3.01;
|
||||
case 'sha':
|
||||
if(button.link[3]=='fire') return 2.95;
|
||||
else if(button.link[3]=='fire') return 2.92;
|
||||
else return 2.9;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
},
|
||||
backup:function (links,player){
|
||||
return {
|
||||
selectCard:function (){
|
||||
// if(_status.event.player.storage.longyuan) return 1;
|
||||
return 2;
|
||||
},
|
||||
filterCard:function (card){
|
||||
if(ui.selected.cards.length){
|
||||
if(get.type(ui.selected.cards[0],'trick')=='basic') return true;
|
||||
return get.type(card)=='basic';
|
||||
}
|
||||
return true;
|
||||
},
|
||||
viewAs:{name:links[0][2],nature:links[0][3]},
|
||||
position:'he',
|
||||
complexCard:true,
|
||||
popname:true,
|
||||
precontent:function(){
|
||||
player.storage.yizan++;
|
||||
player.markSkill('yizan');
|
||||
player.update();
|
||||
},
|
||||
}
|
||||
},
|
||||
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(!player.storage.yizan.jiu&&event.filterCard({name:'jiu'},player,event)&&get.effect(player,{name:'jiu'})>0){
|
||||
return 3.1;
|
||||
}
|
||||
return 2.9;
|
||||
},
|
||||
save:true,
|
||||
respondSha:true,
|
||||
respondShan:true,
|
||||
skillTagFilter:function (player,tag,arg){
|
||||
if(player.hasCard(function(card){
|
||||
return get.color(card)=='black'&&get.type(card)!='basic';
|
||||
},'he')){
|
||||
if(!player.storage.yizan) player.storage.yizan={};
|
||||
if(tag=='respondSha'){
|
||||
if(arg!='use') return false;
|
||||
if(player.storage.yizan.sha) return false;
|
||||
}
|
||||
else{
|
||||
if(player.storage.yizan.tao&&player.storage.yizan.jiu) return false;
|
||||
}
|
||||
}
|
||||
else{
|
||||
return false;
|
||||
}
|
||||
},
|
||||
result:{
|
||||
player:1,
|
||||
},
|
||||
},
|
||||
},
|
||||
longyuan:{
|
||||
audio:2,
|
||||
unique:true,
|
||||
trigger:{
|
||||
player:["respond","useCard"],
|
||||
},
|
||||
forced:true,
|
||||
filter:function (event,player){
|
||||
return player.storage.yizan>=3;
|
||||
},
|
||||
content:function (){
|
||||
'step 0'
|
||||
player.$fullscreenpop('龙跃于渊','fire');
|
||||
'step 1'
|
||||
player.addSkill('yizan2');
|
||||
|
||||
player.removeSkill('yizan');
|
||||
|
||||
player.awakenSkill('longyuan');
|
||||
|
||||
//player.removeSkill('longyuan');
|
||||
|
||||
player.update();
|
||||
|
||||
},
|
||||
},
|
||||
//单牌使用:
|
||||
"yizan2":{
|
||||
enable:["chooseToRespond","chooseToUse"],
|
||||
filter:function (event,player){
|
||||
return player.countCards('h',{type:'basic'})>0;
|
||||
},
|
||||
group:["yizan3","yizan6"],
|
||||
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':return 3.01;
|
||||
case 'sha':
|
||||
if(button.link[3]=='fire') return 2.95;
|
||||
else if(button.link[3]=='fire') return 2.92;
|
||||
else return 2.9;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
},
|
||||
backup:function (links,player){
|
||||
return {
|
||||
/*selectCard:function (){
|
||||
return 1;
|
||||
},*/
|
||||
filterCard:function (card){
|
||||
return get.type(card)=='basic';
|
||||
},
|
||||
viewAs:{name:links[0][2],nature:links[0][3]},
|
||||
position:'h',
|
||||
//complexCard:true,
|
||||
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(!player.storage.yizan2.jiu&&event.filterCard({name:'jiu'},player,event)&&get.effect(player,{name:'jiu'})>0){
|
||||
return 3.1;
|
||||
}
|
||||
return 2.9;
|
||||
},
|
||||
save:true,
|
||||
//respondSha:true,
|
||||
// respondShan:true,
|
||||
skillTagFilter:function (player,tag,arg){
|
||||
if(player.hasCard(function(card){
|
||||
return get.color(card)=='black'&&get.type(card)!='basic';
|
||||
},'he')){
|
||||
if(!player.storage.yizan2) player.storage.yizan2={};
|
||||
if(tag=='respondSha'){
|
||||
if(arg!='use') return false;
|
||||
if(player.storage.yizan2.sha) return false;
|
||||
}
|
||||
else{
|
||||
if(player.storage.yizan2.tao&&player.storage.yizan2.jiu) return false;
|
||||
}
|
||||
}
|
||||
else{
|
||||
return false;
|
||||
}
|
||||
},
|
||||
result:{
|
||||
player:1,
|
||||
},
|
||||
},
|
||||
},
|
||||
wuniang:{
|
||||
audio:2,
|
||||
trigger:{
|
||||
player:["useCard","respond"],
|
||||
},
|
||||
direct:true,
|
||||
priority:2018,
|
||||
filter:function (event,player){
|
||||
return event.card&&event.card.name=='sha'&&event.notLink();
|
||||
},
|
||||
content:function (){
|
||||
"step 0"
|
||||
var check;
|
||||
var i,num=game.countPlayer(function(current){
|
||||
return current!=player&¤t.countCards('he')>0;
|
||||
});
|
||||
check=(num>=2);
|
||||
player.chooseTarget(get.prompt('wuniang'),1,function(card,player,target){
|
||||
return target.countCards('he')>0&&player!=target;
|
||||
},function(target){
|
||||
if(!_status.event.aicheck) return 0;
|
||||
var att=get.attitude(_status.event.player,target);
|
||||
if(target.hasSkill('tuntian')) return att/10;
|
||||
return 1-att;
|
||||
}).set('aicheck',check);
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
var target=result.targets[0];
|
||||
player.logSkill('wuniang',target);
|
||||
player.gainPlayerCard(target,'he',true);
|
||||
target.draw();
|
||||
}
|
||||
else{
|
||||
event.finish();
|
||||
}
|
||||
"step 2"
|
||||
for(var i=0;i<game.players.length;i++){
|
||||
if(game.players[i].name=='guansuo'){
|
||||
player.chooseBool('是否令【关索】摸一张牌?').set('ai',function(){
|
||||
return get.attitude(player,game.players[i])>0;
|
||||
});
|
||||
}
|
||||
}
|
||||
"step 3"
|
||||
if(result.bool){
|
||||
for(var i=0;i<game.players.length;i++){
|
||||
if(game.players[i].name=='guansuo'){
|
||||
game.players[i].draw();
|
||||
}
|
||||
}
|
||||
}
|
||||
else{
|
||||
event.finish();
|
||||
}
|
||||
},
|
||||
ai:{
|
||||
threaten:2,
|
||||
expose:0.3,
|
||||
},
|
||||
},
|
||||
xushen:{
|
||||
trigger:{
|
||||
player:"recoverAfter",
|
||||
},
|
||||
direct:true,
|
||||
unique:true,
|
||||
priority:18,
|
||||
logTarget:"source",
|
||||
audio:2,
|
||||
derivation:['zhennan'],
|
||||
filter:function (event,player){
|
||||
// if(event.type!='dying') return false;
|
||||
for(var i=0;i<game.players.length;i++){
|
||||
if(game.players[i].name=='guansuo') return false;
|
||||
}
|
||||
return player.hp==1&&event.source&&event.source!=player&&event.source.sex=='male';
|
||||
},
|
||||
content:function (){
|
||||
'step 0'
|
||||
trigger.source.chooseBool('是否将武将牌替换为【关索】?').set('ai',function(){
|
||||
if(trigger.source.isAlive()) return true;
|
||||
});
|
||||
'step 1'
|
||||
if(result.bool){
|
||||
game.delay(2.8);
|
||||
player.$fullscreenpop('许身','fire');
|
||||
game.delay(0.5);
|
||||
var name1=trigger.source.name;
|
||||
var name2='guansuo';
|
||||
trigger.source.reinit(name1,name2,false);
|
||||
if(trigger.source.identity=='zhu'){
|
||||
trigger.source.maxHp=5;
|
||||
}
|
||||
else{
|
||||
trigger.source.maxHp=4;
|
||||
}
|
||||
trigger.source.update();
|
||||
player.logSkill('xushen');
|
||||
player.awakenSkill('xushen');
|
||||
player.recover();
|
||||
player.addSkill('zhennan');
|
||||
player.update();
|
||||
}
|
||||
else{
|
||||
event.finish();
|
||||
}
|
||||
},
|
||||
},
|
||||
zhennan:{
|
||||
audio:2,
|
||||
trigger:{
|
||||
global:"useCard",
|
||||
},
|
||||
filter:function (event,player){
|
||||
return event.player!=player&&event.card&&event.card.name=='nanman'&&event.notLink();
|
||||
},
|
||||
direct:true,
|
||||
content:function (){
|
||||
"step 0";
|
||||
player.chooseTarget('选择【镇南】的目标',lib.translate.zhennan_info,true,function(card,player,target){
|
||||
return target!=player;
|
||||
}).set('ai',function(target){
|
||||
var player=_status.event.player;
|
||||
return get.damageEffect(target,player,player);
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
player.logSkill('zhennan');
|
||||
var target=result.targets[0];
|
||||
player.line(target);
|
||||
target.damage([1,1,1,2,2,3].randomGet());
|
||||
}
|
||||
},
|
||||
},
|
||||
qingzhong:{
|
||||
audio:2,
|
||||
trigger:{player:'phaseUseBegin'},
|
||||
|
|
|
@ -29,9 +29,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
liuyao:"刘繇(yáo,一读yóu)(156年-197年),字正礼。东莱牟平(今山东牟平)人。东汉末年宗室、大臣,汉末群雄之一,齐悼惠王刘肥之后,太尉刘宠之侄。<br>刘繇最初被推举为孝廉,授郎中。任下邑县长时,因拒郡守请托而弃官。后被征辟为司空掾属,除授侍御史,因战乱而不到任,避居淮浦。兴平元年(194年),被任命为扬州刺史。他先后与袁术、孙策交战,一度被朝廷加授为扬州牧、振武将军,但最终还是败归丹徒。此后,刘繇又击破反叛的笮融,旋即病逝,年四十二。",
|
||||
liuyan:"刘焉(?-194年),字君郎(《华阳国志》又作君朗)。江夏郡竟陵县(今湖北省天门市)人。东汉末年宗室、军阀,汉末群雄之一,西汉鲁恭王刘余之后。<br>刘焉初以汉朝宗室身份,拜为中郎,历任雒阳令、冀州刺史、南阳太守、宗正、太常等官。因益州刺史郄俭在益州大肆聚敛,贪婪成风,加上当时天下大乱。刘焉欲取得一安身立命之所,割据一方,于是向朝廷求为益州牧,封阳城侯,前往益州整饬吏治。郄俭为黄巾军所杀,刘焉进入益州,派张鲁盘踞汉中,张鲁截断交通,斩杀汉使,从此益州与中央道路不通。刘焉进一步对内打击地方豪强,巩固自身势力,益州因而处于半独立的状态。兴平元年(194年),刘焉因背疮迸发而逝世,其子刘璋继领益州牧。",
|
||||
},
|
||||
characterTitle:{
|
||||
//lijue:"体力上限:6",
|
||||
},
|
||||
characterTitle:{},
|
||||
perfectPair:{
|
||||
lijue:['guosi','jiaxu'],
|
||||
zhangji:['zhangxiu','drlt_zhangxiu','zoushi'],
|
||||
|
|
|
@ -3587,12 +3587,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
ui.cardPile.insertBefore(cards[0],ui.cardPile.firstChild);
|
||||
game.updateRoundNumber();
|
||||
'step 2'
|
||||
target.chooseToDiscard(true).prompt='请弃置一张锦囊牌,或依次弃置两张非锦囊牌。';
|
||||
target.chooseToDiscard('he',true).prompt='请弃置一张锦囊牌,或依次弃置两张非锦囊牌。';
|
||||
'step 3'
|
||||
if((!result.cards||get.type(result.cards[0],'trick')!='trick')&&target.countCards('he',function(card){
|
||||
return get.type(card,'trick')!='trick';
|
||||
})){
|
||||
target.chooseToDiscard(true,function(card){
|
||||
target.chooseToDiscard('he',true,function(card){
|
||||
return get.type(card,'trick')!='trick';
|
||||
}).prompt='请弃置第二张非锦囊牌';
|
||||
}
|
||||
|
|
|
@ -1,24 +1,25 @@
|
|||
window.noname_update={
|
||||
version:'1.9.92.1',
|
||||
update:'1.9.92',
|
||||
version:'1.9.92.1.1',
|
||||
update:'1.9.92.1',
|
||||
changeLog:[
|
||||
'新增武将张菖蒲,许贡,忙牙长',
|
||||
'添加武将小包分包和批量AI禁选',
|
||||
'代码缩进对齐',
|
||||
'BUG修复',
|
||||
'players://["zhangchangpu","xugong","mangyachang"]',
|
||||
],
|
||||
files:[
|
||||
'card/extra.js',
|
||||
'card/guozhan.js',
|
||||
'card/standard.js',
|
||||
'character/diy.js',
|
||||
'character/extra.js',
|
||||
'character/mobile.js',
|
||||
'character/old.js',
|
||||
//'character/old.js',
|
||||
'character/refresh.js',
|
||||
'character/shenhua.js',
|
||||
'character/sp.js',
|
||||
'character/standard.js',
|
||||
'character/xinghuoliaoyuan.js',
|
||||
'character/yijiang.js',
|
||||
'mode/boss.js',
|
||||
'mode/doudizhu.js',
|
||||
'mode/identity.js',
|
||||
'mode/guozhan.js',
|
||||
'game/game.js',
|
||||
]
|
||||
|
|
46
mode/boss.js
46
mode/boss.js
|
@ -2036,7 +2036,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
})) return false;
|
||||
return event.targets.contains(player)&&event.player!=player;
|
||||
},
|
||||
audio:"ext:新虎牢关:true",
|
||||
audio:true,
|
||||
check:function(event,player){
|
||||
if(get.attitude(player,event.player)>2) return false;
|
||||
return true;
|
||||
|
@ -2180,56 +2180,12 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
prompt:"将一张桃当杀使用或打出",
|
||||
check:function (){return 1},
|
||||
ai:{
|
||||
effect:{
|
||||
target:function (card,player,target,current){
|
||||
if(get.tag(card,'respondSha')&¤t<0) return 0.6
|
||||
},
|
||||
},
|
||||
respondSha:true,
|
||||
skillTagFilter:function (player){
|
||||
if(!player.countCards('h','tao')) return false;
|
||||
},
|
||||
order:function (){
|
||||
return get.order({name:'sha'})-0.1;
|
||||
},
|
||||
useful:-1,
|
||||
value:-1,
|
||||
basic:{
|
||||
useful:[5,1],
|
||||
value:[5,1],
|
||||
},
|
||||
result:{
|
||||
target:function (player,target){
|
||||
if(player.hasSkill('jiu')&&!target.getEquip('baiyin')){
|
||||
if(get.attitude(player,target)>0){
|
||||
return -6;
|
||||
}
|
||||
else{
|
||||
return -3;
|
||||
}
|
||||
}
|
||||
return -1.5;
|
||||
},
|
||||
},
|
||||
tag:{
|
||||
respond:1,
|
||||
respondShan:1,
|
||||
damage:function (card){
|
||||
if(card.nature=='poison') return;
|
||||
return 1;
|
||||
},
|
||||
natureDamage:function (card){
|
||||
if(card.nature) return 1;
|
||||
},
|
||||
fireDamage:function (card,nature){
|
||||
if(card.nature=='fire') return 1;
|
||||
},
|
||||
thunderDamage:function (card,nature){
|
||||
if(card.nature=='thunder') return 1;
|
||||
},
|
||||
poisonDamage:function (card,nature){
|
||||
if(card.nature=='poison') return 1;
|
||||
},
|
||||
},
|
||||
},
|
||||
sub:true,
|
||||
|
|
218
mode/guozhan.js
218
mode/guozhan.js
|
@ -1853,7 +1853,6 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
enable:"phaseUse",
|
||||
viewAs:{
|
||||
name:"wanjian",
|
||||
cards:[{"node":{"image":{},"info":{},"name":{},"name2":{},"background":{},"intro":{},"range":{}},"storage":{},"vanishtag":[],"_uncheck":[],"suit":"spade","number":12,"name":"tiesuo","cardid":"8628233400","clone":{"name":"tiesuo","suit":"spade","number":12,"node":{"name":{},"info":{},"intro":{},"background":{},"image":{}},"_transitionEnded":true,"timeout":4467},"timeout":4363,"original":"h"},{"node":{"image":{},"info":{},"name":{},"name2":{},"background":{},"intro":{},"range":{}},"storage":{},"vanishtag":[],"_uncheck":[],"suit":"spade","number":13,"name":"nanman","cardid":"6870636402","clone":{"name":"nanman","suit":"spade","number":13,"node":{"name":{},"info":{},"intro":{},"background":{},"image":{}},"_transitionEnded":true,"timeout":4468},"timeout":4364,"original":"h"}],
|
||||
},
|
||||
filterCard:function (card,player){
|
||||
if(!player.storage.new_luanji) return true;
|
||||
|
@ -1882,37 +1881,6 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
}
|
||||
return 6-get.value(card);
|
||||
},
|
||||
ai:{
|
||||
basic:{
|
||||
order:10,
|
||||
useful:1,
|
||||
value:5,
|
||||
},
|
||||
wuxie:function (target,card,player,viewer){
|
||||
if(get.attitude(viewer,target)>0&&target.countCards('h','shan')){
|
||||
if(!target.countCards('h')||target.hp==1||Math.random()<0.7) return 0;
|
||||
}
|
||||
},
|
||||
result:{
|
||||
target:function (player,target){
|
||||
if(player.hasUnknown(2)&&get.mode()!='guozhan') return 0;
|
||||
var nh=target.countCards('h');
|
||||
if(get.mode()=='identity'){
|
||||
if(target.isZhu&&nh<=2&&target.hp<=1) return -100;
|
||||
}
|
||||
if(nh==0) return -2;
|
||||
if(nh==1) return -1.7
|
||||
return -1.5;
|
||||
},
|
||||
},
|
||||
tag:{
|
||||
respond:1,
|
||||
respondShan:1,
|
||||
damage:1,
|
||||
multitarget:1,
|
||||
multineg:1,
|
||||
},
|
||||
},
|
||||
group:["new_luanji_count","new_luanji_reset","new_luanji_respond"],
|
||||
subSkill:{
|
||||
|
@ -2173,11 +2141,9 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
if(!player.storage.keji_suit){
|
||||
player.storage.keji_suit=[];
|
||||
}
|
||||
for(var i=0;i<trigger.cards.length;i++){
|
||||
player.storage.keji_type.add(get.type(trigger.cards[i],'trick'));
|
||||
player.storage.keji_color.add(get.color(trigger.cards[i]));
|
||||
player.storage.keji_suit.add(get.suit(trigger.cards[i]));
|
||||
}
|
||||
player.storage.keji_type.add(get.type(trigger.card));
|
||||
player.storage.keji_color.add(get.color(trigger.card));
|
||||
player.storage.keji_suit.add(get.suit(trigger.card));
|
||||
},
|
||||
sub:true,
|
||||
forced:true,
|
||||
|
@ -2189,7 +2155,6 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
trigger:{
|
||||
player:"phaseDiscardBefore",
|
||||
},
|
||||
priority:99999,
|
||||
filter:function (event,player){
|
||||
return !player.storage.keji_color||player.storage.keji_color.length<2;
|
||||
},
|
||||
|
@ -2218,6 +2183,9 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
if(player.storage.keji_type&&player.storage.keji_type.length>2) return true;
|
||||
return false;
|
||||
},
|
||||
check:function(event,player){
|
||||
return player.canMoveCard(true);
|
||||
},
|
||||
content:function (){
|
||||
player.moveCard();
|
||||
},
|
||||
|
@ -2287,7 +2255,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
content:function (){
|
||||
player.draw();
|
||||
player.storage.fanghun2++;
|
||||
//player.storage.fanghun2++;
|
||||
},
|
||||
sub:true,
|
||||
},
|
||||
|
@ -2317,45 +2285,6 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
order:function (){
|
||||
return get.order({name:'sha'})+0.1;
|
||||
},
|
||||
useful:-1,
|
||||
value:-1,
|
||||
basic:{
|
||||
useful:[5,1],
|
||||
value:[5,1],
|
||||
},
|
||||
result:{
|
||||
target:function (player,target){
|
||||
if(player.hasSkill('jiu')&&!target.getEquip('baiyin')){
|
||||
if(get.attitude(player,target)>0){
|
||||
return -6;
|
||||
}
|
||||
else{
|
||||
return -3;
|
||||
}
|
||||
}
|
||||
return -1.5;
|
||||
},
|
||||
},
|
||||
tag:{
|
||||
respond:1,
|
||||
respondShan:1,
|
||||
damage:function (card){
|
||||
if(card.nature=='poison') return;
|
||||
return 1;
|
||||
},
|
||||
natureDamage:function (card){
|
||||
if(card.nature) return 1;
|
||||
},
|
||||
fireDamage:function (card,nature){
|
||||
if(card.nature=='fire') return 1;
|
||||
},
|
||||
thunderDamage:function (card,nature){
|
||||
if(card.nature=='thunder') return 1;
|
||||
},
|
||||
poisonDamage:function (card,nature){
|
||||
if(card.nature=='poison') return 1;
|
||||
},
|
||||
},
|
||||
},
|
||||
sub:true,
|
||||
|
@ -2368,8 +2297,6 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
viewAs:{
|
||||
name:"shan",
|
||||
suit:"spade",
|
||||
number:5,
|
||||
},
|
||||
prompt:"将一张杀当闪打出",
|
||||
check:function (){return 1},
|
||||
|
@ -2386,13 +2313,6 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
if(get.tag(card,'respondShan')&¤t<0) return 0.6
|
||||
},
|
||||
},
|
||||
order:4,
|
||||
useful:-1,
|
||||
value:-1,
|
||||
basic:{
|
||||
useful:[7,2],
|
||||
value:[7,2],
|
||||
},
|
||||
},
|
||||
sub:true,
|
||||
},
|
||||
|
@ -2447,16 +2367,6 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
if(player.countCards('h',{name:'sha',color:'red'})) return 1;
|
||||
return player.countCards('h')<=player.hp?1:0;
|
||||
},
|
||||
},
|
||||
effect:function (card,player,target){
|
||||
if(get.tag(card,'damage')){
|
||||
if(player.hasSkillTag('jueqing',false,target)) return [1,1];
|
||||
return 1.2;
|
||||
}
|
||||
if(get.tag(card,'loseHp')){
|
||||
if(player.hp<=1) return;
|
||||
return [0,0];
|
||||
}
|
||||
},
|
||||
},
|
||||
},
|
||||
|
@ -2812,7 +2722,6 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
else{
|
||||
event.target.draw(player.maxHp-player.hp);
|
||||
event.target.turnOver();
|
||||
|
||||
}
|
||||
},
|
||||
ai:{
|
||||
|
@ -3213,45 +3122,6 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
order:function (){
|
||||
return get.order({name:'sha'})-0.1;
|
||||
},
|
||||
useful:-1,
|
||||
value:-1,
|
||||
basic:{
|
||||
useful:[5,1],
|
||||
value:[5,1],
|
||||
},
|
||||
result:{
|
||||
target:function (player,target){
|
||||
if(player.hasSkill('jiu')&&!target.getEquip('baiyin')){
|
||||
if(get.attitude(player,target)>0){
|
||||
return -6;
|
||||
}
|
||||
else{
|
||||
return -3;
|
||||
}
|
||||
}
|
||||
return -1.5;
|
||||
},
|
||||
},
|
||||
tag:{
|
||||
respond:1,
|
||||
respondShan:1,
|
||||
damage:function (card){
|
||||
if(card.nature=='poison') return;
|
||||
return 1;
|
||||
},
|
||||
natureDamage:function (card){
|
||||
if(card.nature) return 1;
|
||||
},
|
||||
fireDamage:function (card,nature){
|
||||
if(card.nature=='fire') return 1;
|
||||
},
|
||||
thunderDamage:function (card,nature){
|
||||
if(card.nature=='thunder') return 1;
|
||||
},
|
||||
poisonDamage:function (card,nature){
|
||||
if(card.nature=='poison') return 1;
|
||||
},
|
||||
},
|
||||
},
|
||||
sub:true,
|
||||
|
@ -3279,13 +3149,6 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
if(get.tag(card,'respondShan')&¤t<0) return 0.6
|
||||
},
|
||||
},
|
||||
order:4,
|
||||
useful:-1,
|
||||
value:-1,
|
||||
basic:{
|
||||
useful:[7,2],
|
||||
value:[7,2],
|
||||
},
|
||||
},
|
||||
sub:true,
|
||||
},
|
||||
|
@ -3448,71 +3311,6 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
ai:{
|
||||
save:true,
|
||||
respondTao:true,
|
||||
basic:{
|
||||
order:function (card,player){
|
||||
if(player.hasSkillTag('pretao')) return 4.9;
|
||||
return 1.9;
|
||||
},
|
||||
useful:[8,6.5,5,4],
|
||||
value:[8,6.5,5,4],
|
||||
},
|
||||
result:{
|
||||
target:function (player,target){
|
||||
// if(player==target&&player.hp<=0) return 2;
|
||||
var nd=player.needsToDiscard();
|
||||
var keep=false;
|
||||
if(nd<=0){
|
||||
keep=true;
|
||||
}
|
||||
else if(nd==1&&target.hp>=2&&target.countCards('h','tao')<=1){
|
||||
keep=true;
|
||||
}
|
||||
var mode=get.mode();
|
||||
if(target.hp>=2&&keep&&target.hasFriend()){
|
||||
if(target.hp>2||nd==0) return 0;
|
||||
if(target.hp==2){
|
||||
if(game.hasPlayer(function(current){
|
||||
if(target!=current&&get.attitude(target,current)>=3){
|
||||
if(current.hp<=1) return true;
|
||||
if((mode=='identity'||mode=='versus'||mode=='chess')&¤t.identity=='zhu'&¤t.hp<=2) return true;
|
||||
}
|
||||
})){
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
if(target.hp<0&&target!=player&&target.identity!='zhu') return 0;
|
||||
var att=get.attitude(player,target);
|
||||
if(att<3&&att>=0&&player!=target) return 0;
|
||||
var tri=_status.event.getTrigger();
|
||||
if(mode=='identity'&&player.identity=='fan'&&target.identity=='fan'){
|
||||
if(tri&&tri.name=='dying'&&tri.source&&tri.source.identity=='fan'&&tri.source!=target){
|
||||
var num=game.countPlayer(function(current){
|
||||
if(current.identity=='fan'){
|
||||
return current.countCards('h','tao');
|
||||
}
|
||||
});
|
||||
if(num>1&&player==target) return 2;
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
if(mode=='identity'&&player.identity=='zhu'&&target.identity=='nei'){
|
||||
if(tri&&tri.name=='dying'&&tri.source&&tri.source.identity=='zhong'){
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
if(mode=='stone'&&target.isMin()&&
|
||||
player!=target&&tri&&tri.name=='dying'&&player.side==target.side&&
|
||||
tri.source!=target.getEnemy()){
|
||||
return 0;
|
||||
}
|
||||
return 2;
|
||||
},
|
||||
},
|
||||
tag:{
|
||||
recover:1,
|
||||
save:1,
|
||||
},
|
||||
},
|
||||
},
|
||||
"yinyang_skill_draw":{
|
||||
|
@ -6434,7 +6232,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
'step 0'
|
||||
player.storage._mingzhi3=true;
|
||||
var name=player.name1;
|
||||
if(!player.isUnseen(0)||name.indexOf('gz_')!=0||!lib.junList.contains(name.slice(3))) event.finish();
|
||||
if(!player.isUnseen(0)||name.indexOf('gz_')!=0||!lib.junList.contains(name.slice(3))||!lib.character['gz_jun'+name.slice(3)]) event.finish();
|
||||
else{
|
||||
player.chooseBool("是否将主武将牌替换为君主武将?").ai=function(){return true};
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue