commit
5991a03efb
|
@ -287,11 +287,32 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
target.draw(num);
|
||||
}
|
||||
},
|
||||
ai:{threaten:3},
|
||||
ai:{
|
||||
threaten:3,
|
||||
effect:{
|
||||
player:(card,player,target)=>{
|
||||
if(!target||typeof card!=='object'||player._clanjiejian_mod_temp||get.type(card)==='equip'||
|
||||
get.attitude(player,target)<=0||get.cardNameLength(card)!==player.getHistory('useCard').length+1) return;
|
||||
let targets=[target],evt=_status.event.getParent('useCard');
|
||||
targets.addArray(ui.selected.targets);
|
||||
if(evt&&evt.card==card) targets.addArray(evt.targets);
|
||||
return [1,0.8*get.cardNameLength(card)/targets.length];
|
||||
}
|
||||
}
|
||||
},
|
||||
mod:{
|
||||
aiOrder:function(player,card,num){
|
||||
if(typeof card=='object'&&get.cardNameLength(card)==player.getHistory('useCard').length+1&&get.type(card)!='equip'){
|
||||
if(get.effect(player,card,player,player)>0) return num+10;
|
||||
if(typeof card=='object'&&get.type(card)!=='equip'){
|
||||
let cs=get.cardNameLength(card)-player.getHistory('useCard').length-1;
|
||||
if(cs<0) return num;
|
||||
if(cs>0) return num/3;
|
||||
player._clanjiejian_mod_temp=true;
|
||||
let bool=game.hasPlayer(target=>{
|
||||
if(get.attitude(player,target)<=0||!player.canUse(card,target,null,true)) return false;
|
||||
return get.effect(target,card,player,player)+get.effect(target,{name:'draw'},player,player)>0;
|
||||
});
|
||||
delete player._clanjiejian_mod_temp;
|
||||
if(bool) return num+15;
|
||||
}
|
||||
},
|
||||
},
|
||||
|
|
|
@ -5434,6 +5434,15 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
},
|
||||
renjie2:{
|
||||
audio:2,
|
||||
mod:{
|
||||
aiOrder:(player,card,num)=>{
|
||||
if(num<=0||typeof card!=='object'||!player.isPhaseUsing()) return 0;
|
||||
if(player.awakenedSkills.includes('sbaiyin')){
|
||||
if(player.countMark('renjie')<3&&player.getUseValue(card)<Math.min(1.8,0.18*player.hp*player.hp)) return 0;
|
||||
}
|
||||
else if(player.countMark('renjie')<4&&player.getUseValue(card)<Math.min(4,player.hp*player.hp/4)) return 0;
|
||||
}
|
||||
},
|
||||
trigger:{
|
||||
player:'loseAfter',
|
||||
global:'loseAsyncAfter',
|
||||
|
@ -5469,6 +5478,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
jilue:{
|
||||
unique:true,
|
||||
group:['jilue_guicai','jilue_fangzhu','jilue_wansha','jilue_zhiheng','jilue_jizhi'],
|
||||
ai:{
|
||||
combo:'renjie'
|
||||
}
|
||||
},
|
||||
jilue_guicai:{
|
||||
audio:1,
|
||||
|
|
|
@ -1444,11 +1444,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}),targets=game.filterPlayer(current=>{
|
||||
return !player.getStorage('dcshangyu_transfer').includes(current);
|
||||
}).sortBySeat(_status.currentPhase);
|
||||
if(targets.length&&targets[0]===_status.currentPhase&&!_status.currentPhase.getCardUsable('sha')) targets.push(targets.shift());
|
||||
event.cards=cards;
|
||||
player.chooseTarget(`赏誉:将${get.translation(cards)}交给一名可选角色`,(card,player,target)=>{
|
||||
return !player.getStorage('dcshangyu_transfer').includes(target);
|
||||
},true).set('ai',target=>{
|
||||
let att=get.sgn(get.attitude(_status.event.player,target)),idx=1+_status.event.targets.indexOf(target);
|
||||
let att=get.sgnAttitude(_status.event.player,target),idx=1+_status.event.targets.indexOf(target);
|
||||
if(att<0) return -idx;
|
||||
return att+1/idx;
|
||||
}).set('targets',targets);
|
||||
|
|
|
@ -1557,9 +1557,12 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
|||
});
|
||||
return !player.wontYe('wei')||!game.hasPlayer(current=>current.identity=='wei')
|
||||
},
|
||||
check:function(event,player,name){
|
||||
return name!='damageBegin1';
|
||||
},
|
||||
check:function(event,player){
|
||||
return !event.player.hasSkillTag('filterDamage',null,{
|
||||
player:event.source,
|
||||
card:event.card,
|
||||
})&&get.damageEffect(event.player,event.source,player,_status.event.player)>0;
|
||||
},
|
||||
content:function(){
|
||||
trigger.num++;
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue