v1.9.96.4

This commit is contained in:
Spmario233 2019-12-16 12:54:06 +08:00 committed by GitHub
parent 0c7b2702df
commit ebd9293142
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 159 additions and 119 deletions

View File

@ -655,7 +655,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
};
"step 1"
if(result.bool){
player.respond(result.cards,'highlight','jilue_guicai');
player.respond(result.cards,'highlight','jilue_guicai','noOrdering');
}
else{
event.finish();
@ -671,7 +671,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
game.cardsDiscard(trigger.player.judging[0]);
trigger.player.judging[0]=result.cards[0];
trigger.position.appendChild(result.cards[0]);
trigger.orderingCards.addArray(result.cards);
game.log(trigger.player,'的判定牌改为',result.cards[0]);
game.delay(2);
}
@ -1284,6 +1284,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
mark:true,
forced:true,
charlotte:true,
content:function(){
trigger.cancel();
},

View File

@ -246,7 +246,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
else event.directbool=true;
'step 1'
if(!result.bool&&!event.directbool){
game.cardsDiscard(card);
//game.cardsDiscard(card);
return;
};
event.node=event.judgeResult.node;
@ -765,7 +765,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(evt&&evt.name=='useCard'&&evt.card&&['equip','delay'].contains(get.type(evt.card))) return false;
var cards=event.cards;
for(var i=0;i<cards.length;i++){
if(get.color(cards[i])=='red'&&get.position(cards[i])=='d') return true;
if(get.color(cards[i])=='red'&&get.position(cards[i],true)=='d') return true;
}
return false;
},
@ -774,7 +774,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
else{
var cards=trigger.cards;
for(var i=0;i<cards.length;i++){
if(get.color(cards[i])=='red'&&get.position(cards[i])=='d') player.storage.rezaiqi++;
if(get.color(cards[i])=='red'&&get.position(cards[i],true)=='d') player.storage.rezaiqi++;
}
}
},

View File

@ -760,7 +760,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}).set('judging',trigger.player.judging[0]);
"step 1"
if(result.bool){
player.respond(result.cards,'highlight','xinguidao');
player.respond(result.cards,'highlight','xinguidao','noOrdering');
}
else{
event.finish();
@ -772,9 +772,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
var card=result.cards[0];
if(get.suit(card)=='spade'&&card.number>1&&card.number<10) player.draw('nodelay');
trigger.player.judging[0]=result.cards[0];
if(!get.owner(result.cards[0],'judge')){
trigger.position.appendChild(result.cards[0]);
}
trigger.orderingCards.addArray(result.cards);
game.log(trigger.player,'的判定牌改为',result.cards[0]);
}
"step 3"
@ -1343,7 +1341,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
content:function (){
"step 0"
if(get.itemtype(trigger.cards)=='cards'&&get.position(trigger.cards[0])=='d'){
if(get.itemtype(trigger.cards)=='cards'&&get.position(trigger.cards[0],true)=='o'){
player.gain(trigger.cards,"gain2");
}
player.draw('nodelay');
@ -2026,7 +2024,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.judge(function(card){
if(get.color(card)=='black') return 1.5;
return -1.5;
},ui.special);
});
"step 1"
if(result.judge>0){
event.cards.push(result.card);
@ -2039,7 +2037,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
else{
for(var i=0;i<event.cards.length;i++){
if(get.position(event.cards[i])!='s'){
if(get.position(event.cards[i])!='d'){
event.cards.splice(i,1);i--;
}
}
@ -2601,7 +2599,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}).set('judging',trigger.player.judging[0]);
"step 1"
if(result.bool){
player.respond(result.cards,'reguicai','highlight');
player.respond(result.cards,'reguicai','highlight','noOrdering');
}
else{
event.finish();
@ -2619,9 +2617,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
game.cardsDiscard(trigger.player.judging[0]);
trigger.player.judging[0]=result.cards[0];
if(!get.owner(result.cards[0],'judge')){
trigger.position.appendChild(result.cards[0]);
}
trigger.orderingCards.addArray(result.cards);
game.log(trigger.player,'的判定牌改为',result.cards[0]);
game.delay(2);
}
@ -3141,7 +3137,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
audio:2,
trigger:{player:'damageEnd'},
filter:function(event,player){
return get.itemtype(event.cards)=='cards'&&get.position(event.cards[0])=='d';
return get.itemtype(event.cards)=='cards'&&get.position(event.cards[0],true)=='o';
},
content:function(){
player.gain(trigger.cards);
@ -3165,7 +3161,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
direct:true,
content:function(){
"step 0"
if(get.itemtype(trigger.cards)=='cards'&&get.position(trigger.cards[0])=='d'){
if(get.itemtype(trigger.cards)=='cards'&&get.position(trigger.cards[0],true)=='o'){
player.chooseControl('rejianxiong_mopai','rejianxiong_napai','cancel2').set('prompt',get.prompt('rejianxiong')).ai=function(){
var trigger=_status.event.getTrigger();
if(trigger.cards.length==1&&trigger.cards[0].name=='sha') return 0;

View File

@ -573,7 +573,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return get.type(card)=='equip';
},
check:function (card){
return 1;
if(player.isDisabled(get.subtype(card))) return 5;
return 3-get.value(card);
},
content:function (){
player.draw();
@ -587,6 +588,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.$throw(cards,1000);
game.log(player,'将',cards,'置入了弃牌堆');
},
ai:{
order:10,
result:{
player:1,
},
},
},
"drlt_yongsi":{
group:["drlt_yongsi_1","drlt_yongsi_2"],
@ -661,8 +668,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
filterCard:true,
position:'h',
ai1:function(card){
var value=get.value(card);
var player=_status.event.player;
var value=get.value(card,player,'raw');
if(game.hasPlayer(function(current){
return get.sgn(value)==get.sgn(get.attitude(player,current))
})) return 1;
@ -670,7 +677,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
ai2:function(target){
var player=_status.event.player;
if(get.value(ui.selected.cards[0])<0) return -get.attitude(player,target);
if(get.value(ui.selected.cards[0],player,'raw')<0) return -get.attitude(player,target);
return get.attitude(player,target);
},
gived:event.gived,
@ -1407,7 +1414,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return player!=target&&target.hasZhuSkill('nzry_lijun',player);
})) return false;
for(var i=0;i<event.cards.length;i++){
if(get.position(event.cards[i])=='d'){
if(get.position(event.cards[i],true)=='o'){
return true;
}
}
@ -1432,7 +1439,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.logSkill('nzry_lijun1',zhu);
var list=[];
for(var i=0;i<trigger.cards.length;i++){
if(get.position(trigger.cards[i])=='d'){
if(get.position(trigger.cards[i],true)=='o'){
list.push(trigger.cards[i]);
}
}
@ -1460,11 +1467,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){
enable:"phaseUse",
usable:1,
audio:2,
filter:function(event,player){
var num=1;
if(player.storage.nzry_chenglve==true) num=0;
return player.countCards('h')>=num;
},
//filter:function(event,player){
// var num=1;
// if(player.storage.nzry_chenglve==true) num=0;
// return player.countCards('h')>=num;
//},
content:function(){
'step 0'
if(player.storage.nzry_chenglve==true){
@ -1515,7 +1522,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
ai:{
effect:{
target:function(card,player,target){
if(get.type(card)=='equip'&&!player.storage.nzry_shicai.contains('equip')&&get.equipResult(player,target,card.name)<=0) return [1,3];
if(get.type(card)=='equip'&&(!player.storage.nzry_shicai||!player.storage.nzry_shicai.contains('equip'))&&get.equipResult(player,target,card.name)<=0) return [1,3];
},
},
threaten:2.4,
@ -1523,12 +1530,17 @@ game.import('character',function(lib,game,ui,get,ai,_status){
subSkill:{
"1":{
trigger:{
global:'phaseBefore'
global:'phaseBefore',
player:'useCard1',
},
forced:true,
popup:false,
content:function(){
player.storage.nzry_shicai=[];
if(!player.storage.nzry_shicai||event.triggername=='phaseBefore') player.storage.nzry_shicai=[];
if(event.triggername=='useCard1'&&!player.storage.nzry_shicai.contains(get.type(trigger.card))){
trigger.nzry_shicai=true;
player.storage.nzry_shicai.push(get.type(trigger.card));
}
},
},
"2":{
@ -1539,9 +1551,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
target:'useCardToTargeted',
},
filter:function (event,player,name){
if(!event.nzry_shicai) return false;
if(name=='useCardToTargeted'&&('equip'!=get.type(event.card)||event.player!=player)) return false;
if(name=='useCardAfter'&&['equip','delay'].contains(get.type(event.card))) return false;
return event.cards.filterInD().length>0&&player.storage.nzry_shicai!=undefined&&!player.storage.nzry_shicai.contains(get.type(event.card,'trick'));
return event.cards.filterInD().length>0;
},
check:function (event,player){
if(get.type(event.card)=='equip'){
@ -1551,9 +1564,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
content:function(){
"step 0"
player.storage.nzry_shicai.push(get.type(trigger.card,'trick'));
//player.storage.nzry_shicai.push(get.type(trigger.card,'trick'));
for(var i=0;i<trigger.cards.length;i++){
if(get.position(trigger.cards[i])=='d'){
if(get.position(trigger.cards[i],true)=='o'){
trigger.cards[i].fix();
ui.cardPile.insertBefore(trigger.cards[i],ui.cardPile.firstChild);
game.log(player,'将',trigger.cards[i],'置于牌堆顶');
@ -1972,7 +1985,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
else if(trigger.cards){
var list=[];
for(var i=0;i<trigger.cards.length;i++){
if(get.position(trigger.cards[i])=='d') list.push(trigger.cards[i]);
if(get.position(trigger.cards[i],true)=='o') list.push(trigger.cards[i]);
}
if(list.length) trigger.target.gain(list,'gain2','log');
}
@ -2842,44 +2855,61 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return false;
},
content:function(){
player.judge(function(card){
'step 0'
var next=player.judge(function(card){
if(get.suit(card)=='heart') return -1;
return 1;
}).callback=lib.skill.tuntian.callback;
},
callback:function(){
'step 0'
if(!event.judgeResult.bool){
game.cardsDiscard(card);
});
if(get.mode()!='guozhan'){
next.callback=lib.skill.tuntian.callback;
event.finish();
}
'step 1'
if(!result.bool||get.position(result.card)!='d'){
//game.cardsDiscard(card);
event.finish();
return;
}
else if(get.mode()=='guozhan'){
player.chooseBool('是否将'+get.translation(card)+'作为【田】置于武将牌上?').ai=function(){
return true;
};
}
else event.directbool=true;
'step 1'
event.card=result.card;
event.node=result.node;
player.chooseBool('是否将'+get.translation(event.card)+'作为【田】置于武将牌上?').ai=function(){
return true;
};
'step 2'
if(!result.bool&&!event.directbool){
game.cardsDiscard(card);
return;
};
event.node=event.judgeResult.node;
//event.trigger("addCardToStorage");
//event.card.fix();
player.storage.tuntian.push(event.card);
//event.card.goto(ui.special);
game.cardsGotoSpecial(card);
event.node.moveDelete(player);
game.broadcast(function(cardid,player){
var node=lib.cardOL[cardid];
if(node){
node.moveDelete(player);
}
},event.node.cardid,player);
game.addVideo('gain2',player,get.cardsInfo([event.node]));
player.markSkill('tuntian');
game.addVideo('storage',player,['tuntian',get.cardsInfo(player.storage.tuntian),'cards']);
game.cardsGotoSpecial(card);
event.node.moveDelete(player);
game.broadcast(function(cardid,player){
var node=lib.cardOL[cardid];
if(node){
node.moveDelete(player);
}
},event.node.cardid,player);
game.addVideo('gain2',player,get.cardsInfo([event.node]));
player.markSkill('tuntian');
game.addVideo('storage',player,['tuntian',get.cardsInfo(player.storage.tuntian),'cards']);
},
callback:function(){
if(!event.judgeResult.bool){
event.finish();
return;
}
player.storage.tuntian.push(event.card);
game.cardsGotoSpecial(card);
event.node=event.judgeResult.node;
event.node.moveDelete(player);
game.broadcast(function(cardid,player){
var node=lib.cardOL[cardid];
if(node){
node.moveDelete(player);
}
},event.node.cardid,player);
game.addVideo('gain2',player,get.cardsInfo([event.node]));
player.markSkill('tuntian');
game.addVideo('storage',player,['tuntian',get.cardsInfo(player.storage.tuntian),'cards']);
},
init:function(player){
if(!player.storage.tuntian) player.storage.tuntian=[];
@ -3207,7 +3237,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
group:["guzheng_count"],
subSkill:{
count:{
trigger:{global:['discardAfter','cardsDiscardAfter']},
trigger:{global:['dloseEnd','cardsDiscardAfter']},
forced:true,
silent:true,
popup:false,
@ -3231,7 +3261,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(event.player!=player&&event.player.isIn()&&
event.guzhengcards&&event.guzhengcards.length){
for(var i=0;i<event.guzhengcards.length;i++){
if(get.position(event.guzhengcards[i])=='d'){
if(get.position(event.guzhengcards[i],true)=='d'){
return true;
}
}
@ -3242,7 +3272,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
var du=false;
var num=0;
for(var i=0;i<event.guzhengcards.length;i++){
if(get.position(event.guzhengcards[i])=='d'){
if(get.position(event.guzhengcards[i],true)=='d'){
num++;
if(event.guzhengcards[i].name=='du'){
du=true;
@ -3263,7 +3293,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
"step 0"
event.cards=trigger.guzhengcards.slice(0);
for(var i=0;i<event.cards.length;i++){
if(get.position(event.cards[i])!='d'){
if(get.position(event.cards[i],true)!='d'){
event.cards.splice(i,1);i--;
}
}
@ -3872,7 +3902,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
trigger:{global:'useCardAfter'},
forced:true,
filter:function(event,player){
return (event.card.name=='nanman'&&event.player!=player&&get.itemtype(event.cards)=='cards'&&get.position(event.cards[0])=='d');
return (event.card.name=='nanman'&&event.player!=player&&get.itemtype(event.cards)=='cards'&&get.position(event.cards[0],true)=='o');
},
content:function(){
player.gain(trigger.cards,'gain2');
@ -6237,7 +6267,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}).set('judging',trigger.player.judging[0]);
"step 1"
if(result.bool){
player.respond(result.cards,'highlight','guidao');
player.respond(result.cards,'highlight','guidao','noOrdering');
}
else{
event.finish();
@ -6247,9 +6277,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.$gain2(trigger.player.judging[0]);
player.gain(trigger.player.judging[0]);
trigger.player.judging[0]=result.cards[0];
if(!get.owner(result.cards[0],'judge')){
trigger.position.appendChild(result.cards[0]);
}
trigger.orderingCards.addArray(result.cards);
game.log(trigger.player,'的判定牌改为',result.cards[0]);
}
"step 3"
@ -6449,7 +6477,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
"nzry_shenshi":"审时",
"nzry_shenshi_info":"转换技,①出牌阶段限一次,你可以将一张牌交给一名手牌数最多的角色,然后对其造成一点伤害,若该角色因此死亡,则你可以令一名角色将手牌摸至四张。②其他角色对你造成伤害后,你可以观看该角色的手牌,然后交给其一张牌,当前角色回合结束时,若该角色未失去此牌,你将手牌摸至四张",
"nzry_mingren":"明任",
"nzry_mingren_info":"游戏开始时,你摸一张牌,然后将你的一张手牌于你的武将牌上,称为“任”。结束阶段,你可以用手牌替换“任”",
"nzry_mingren_info":"游戏开始时,你摸一张牌,然后将你的一张手牌于你的武将牌上,称为“任”。结束阶段,你可以用手牌替换“任”",
"nzry_zhenliang":"贞良",
"nzry_zhenliang_info":"转换技①出牌阶段限一次你可以选择一名攻击范围内的其他角色然后弃置X张与“任”颜色相同的牌并对其造成一点伤害X为你与其的体力差且至少为1。②你的回合外当你使用或打出牌进入弃牌堆时若此牌与“任”类型相同则你可以令一名角色摸一张牌",
"nzry_chenglve1":"成略",

View File

@ -611,6 +611,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
'step 0'
trigger.cancel();
event.cards=get.cards(4);
game.cardsGotoOrdering(event.cards);
player.showCards(event.cards);
'step 1'
cards.sort(function(a,b){
@ -634,7 +635,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.line(target);
target.gain(cards,'gain2');
}
else if(cards.length) game.cardsDiscard(cards);
},
},
lslixun:{
@ -788,7 +788,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
var cards=[];
var cs=trigger.cards;
for(var i=0;i<cs.length;i++){
if(get.position(cs[i])=='d') cards.push(cs[i]);
if(get.position(cs[i],true)=='o') cards.push(cs[i]);
}
if(cards.length){
player.logSkill('xpchijie3');
@ -1648,7 +1648,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
"biaozhao2":{
trigger:{
global:["loseEnd","cardsDiscardEnd","useCardAfter","respondAfter"],
global:["loseEnd","cardsDiscardEnd"],
},
audio:"biaozhao",
filter:function (event,player){
@ -1658,7 +1658,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
var suit=get.suit(player.storage.biaozhao[0]);
var num=get.number(player.storage.biaozhao[0]);
for(var i=0;i<event.cards.length;i++){
if(get.position(event.cards[i])=='d'&&get.suit(event.cards[i])==suit
if(get.position(event.cards[i],true)=='d'&&get.suit(event.cards[i])==suit
&&get.number(event.cards[i])==num) return true;
}
return false;
@ -2068,7 +2068,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}).set('judging',trigger.player.judging[0]);
"step 1"
if(result.bool){
player.respond(result.cards,'highlight','huanshi_three');
player.respond(result.cards,'highlight','huanshi_three','noOrdering');
}
else{
event.finish();
@ -2086,9 +2086,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
game.cardsDiscard(trigger.player.judging[0]);
trigger.player.judging[0]=result.cards[0];
if(!get.owner(result.cards[0],'judge')){
trigger.position.appendChild(result.cards[0]);
}
trigger.orderingCards.addArray(result.cards);
game.log(trigger.player,'的判定牌改为',result.cards[0]);
game.delay(2);
}
@ -3674,7 +3672,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
ai1:function(card){
var player=_status.event.player;
var cardname=_status.event.cardname;
if(_status.event.du) return -get.value(card);
if(_status.event.du) return -get.value(card,player,'raw');
else if(_status.event.shuimeng){
if(cardname=='wuzhong'){
if(player.needsToDiscard(2-ui.selected.cards.length)){
@ -3732,7 +3730,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return 0;
},
du:player.hasCard(function(card){
return get.value(card)<0;
return get.value(card,player,'raw')<0;
}),
shuimeng:trigger.getParent(2).name=='shuimeng',
nh:nh,
@ -5591,7 +5589,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(player.storage.fanghun) player.draw(player.storage.fanghun);
event.num=player.storage.fanghun2;
var list;
if(_status.connectMode){
if(_status.characterlist){
list=[];
for(var i=0;i<_status.characterlist.length;i++){
var name=_status.characterlist[i];
if(lib.character[name][1]=='shu') list.push(name);
}
}
else if(_status.connectMode){
list=get.charactersOL(function(i){
return lib.character[i][1]!='shu';
});
@ -5619,6 +5624,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
event.num=Math.min(event.num,game.players.length+game.dead.length);
}
player.reinit('zhaoxiang',result.links[0],event.num);
if(_status.characterlist){
_status.characterlist.add('zhaoxiang');
_status.characterlist.remove(result.links[0]);
}
}
},
fanghun:{
@ -6459,6 +6468,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
trigger:{player:['gainEnd','loseEnd']},
direct:true,
filter:function(event,player){
if(event.name=='lose'&&event.type=='gain'&&event.getParent().player==player) return false;
return event.cards&&event.cards.length>1;
},
content:function(){
@ -9675,7 +9685,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
game.addVideo('deletenode',player,get.cardsInfo([trigger.player.judging[0].clone]));
}
trigger.player.judging[0]=card;
trigger.position.appendChild(card);
trigger.orderingCards.addArray(result.links);
game.log(player,'的判定牌改为',card);
game.delay(2);
}
@ -9845,7 +9855,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
callback:function(){
var evt=event.getParent(2);
if(event.judgeResult.color=='black'){
game.cardsDiscard(card);
//game.cardsDiscard(card);
evt._trigger.num++;
}
else{
@ -10418,7 +10428,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(event.player==player) return false;
if(event.cards){
for(var i=0;i<event.cards.length;i++){
if(get.position(event.cards[i])=='d') return true;
if(get.position(event.cards[i],true)=='o') return true;
}
}
return false;
@ -10427,7 +10437,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content:function(){
var cards=trigger.cards.slice(0);
for(var i=0;i<cards.length;i++){
if(get.position(cards[i])!='d'){
if(get.position(cards[i],true)!='o'){
cards.splice(i--,1);
}
}
@ -10857,7 +10867,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
trigger:{global:'recoverAfter'},
direct:true,
filter:function(event,player){
return _status.currentPhase==event.player;
return event.player.isPhaseUsing();
},
content:function(){
'step 0'
@ -11017,7 +11027,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(att>2) return att/Math.sqrt(1+target.countCards('h'));
return att/Math.sqrt(1+target.countCards('h'))/5;
}
}).set('enemy',get.value(event.togive[0])<0);
}).set('enemy',get.value(event.togive[0],player,'raw')<0);
}
else{
//game.cardsDiscard(event.cards);
@ -11400,7 +11410,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
yongjue:{
audio:2,
trigger:{global:'useCardEnd'},
trigger:{global:'useCardAfter'},
usable:1,
filter:function(event,player){
if(event.card.name!='sha') return false;
@ -11408,7 +11418,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(event.targets.contains(player)) return false;
if(event.cards){
for(var i=0;i<event.cards.length;i++){
if(get.position(event.cards[i])=='d') return true;
if(get.position(event.cards[i],true)=='o') return true;
}
}
return false;
@ -11417,7 +11427,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content:function(){
var cards=trigger.cards.slice(0);
for(var i=0;i<cards.length;i++){
if(get.position(cards[i])!='d'){
if(get.position(cards[i],true)!='o'){
cards.splice(i--,1);
}
}
@ -12336,9 +12346,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
game.cardsDiscard(trigger.player.judging[0]);
trigger.player.judging[0]=event.card;
if(!get.owner(event.card,'judge')){
trigger.position.appendChild(event.card);
}
trigger.orderingCards.add(event.card);
game.log(trigger.player,'的判定牌改为',event.card);
game.delay(2);
}
@ -13310,7 +13318,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
zhangwen:'张温',
songshu:'颂蜀',
songshu_info:'出牌阶段,你可以和其他角色拼点。若你没赢,其摸两张牌,且你本阶段内不能再发动〖思辨〗',
songshu_info:'出牌阶段,你可以和其他角色拼点。若你没赢,其摸两张牌,且你本阶段内不能再发动〖颂蜀〗',
sibian:'思辨',
sibian_info:'摸牌阶段,你可以放弃摸牌,改为亮出牌堆顶的四张牌,然后获得其中所有点数最大与点数最小的牌。若获得的牌是两张且点数之差小于存活人数,则你可以将剩余的牌交给手牌数最少的角色。',
lslixun:'利熏',

View File

@ -162,7 +162,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
audio:2,
trigger:{player:'damageEnd'},
filter:function(event,player){
return get.itemtype(event.cards)=='cards'&&get.position(event.cards[0])=='d';
return get.itemtype(event.cards)=='cards'&&get.position(event.cards[0],true)=='o';
},
content:function(){
player.gain(trigger.cards,'gain2');
@ -226,7 +226,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}).set('judging',trigger.player.judging[0]);
"step 1"
if(result.bool){
player.respond(result.cards,'guicai','highlight');
player.respond(result.cards,'guicai','highlight','noOrdering');
}
else{
event.finish();
@ -244,9 +244,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
game.cardsDiscard(trigger.player.judging[0]);
trigger.player.judging[0]=result.cards[0];
if(!get.owner(result.cards[0],'judge')){
trigger.position.appendChild(result.cards[0]);
}
trigger.orderingCards.addArray(result.cards);
game.log(trigger.player,'的判定牌改为',result.cards[0]);
game.delay(2);
}
@ -376,7 +374,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return true;
},
filter:function(event,player){
return get.position(event.result.card)=='d';
return get.position(event.result.card,true)=='o';
},
content:function(){
player.gain(trigger.result.card,'gain2');

View File

@ -1157,7 +1157,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
content:function (){
"step 0"
if(get.itemtype(trigger.cards)=='cards'&&get.position(trigger.cards[0])=='d'){
if(get.itemtype(trigger.cards)=='cards'&&get.position(trigger.cards[0],true)=='o'){
player.gain(trigger.cards,"gain2");
}
player.draw("nodelay");
@ -1353,7 +1353,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
forced:true,
//priority:7,
content:function (){
if(trigger.parent.name=='damage'&&get.itemtype(trigger.parent.cards)=='cards'&&get.position(trigger.parent.cards[0])=='d'){
if(trigger.parent.name=='damage'&&get.itemtype(trigger.parent.cards)=='cards'&&get.position(trigger.parent.cards[0],true)=='o'){
player.gain(trigger.parent.cards,"gain2");
}
player.storage.xinfu_xionghuo++;
@ -1969,6 +1969,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
else event.finish();
"step 2"
trigger.source.reinit(result.control,'guansuo');
if(_status.characterlist){
_status.characterlist.add(result.control);
_status.characterlist.remove('guansuo');
}
player.recover();
player.addSkill('xinfu_zhennan');
},
@ -2297,7 +2301,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
delete player.storage.xinfu_yanyu2;
},
trigger:{
global:["loseEnd","cardsDiscardEnd","useCardAfter","respondAfter"],
global:["loseEnd","cardsDiscardEnd"],
},
direct:true,
filter:function (event,player){
@ -2307,7 +2311,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
var type=player.storage.xinfu_yanyu;
var cards=event.cards;
for(var i=0;i<cards.length;i++){
if(get.type(cards[i],'trick')==type&&get.position(cards[i])=='d') return true;
if(get.type(cards[i],'trick')==type&&get.position(cards[i],true)=='d') return true;
}
return false;
},
@ -2318,7 +2322,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
var type=player.storage.xinfu_yanyu;
var cards=trigger.cards;
for(var i=0;i<cards.length;i++){
if(get.type(cards[i],'trick')==type&&get.position(cards[i])=='d') event.cards.push(cards[i]);
if(get.type(cards[i],'trick')==type&&get.position(cards[i],true)=='d') event.cards.push(cards[i]);
}
'step 1'
if(player.storage.xinfu_yanyu2>=3) event.finish();

View File

@ -807,8 +807,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.gainMaxHp(num);
event.num=num;
'step 1'
player.hp+=event.num;
player.update();
player.recover(event.num);
//player.update();
},
group:'xinzongzuo_lose',
subSkill:{
@ -835,6 +835,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
},
xintaoluan:{
audio:'taoluan',
enable:'chooseToUse',
filter:function(event,player){
return event.type!='wuxie'&&event.type!='respondShan'&&!player.hasSkill('xintaoluan3')&&player.countCards('he')>0&&!_status.dying.length;
@ -1921,7 +1922,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return event.type=='compare'&&!event.directresult;
},
onCompare:function(player){
return get.cards();
return game.cardsGotoOrdering(get.cards()).cards;
},
group:'tianbian_number',
subSkill:{
@ -2573,7 +2574,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
else{
return att/100;
}
}).set('enemy',get.value(event.togive[0])<0);
}).set('enemy',get.value(event.togive[0],player,'raw')<0);
}
else{
event.finish();
@ -4060,6 +4061,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
filterCard:true,
discard:false,
lose:false,
delay:0,
content:function(){
'step 0'
player.showCards(cards);
@ -4295,8 +4297,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.gainMaxHp(num);
event.num=num;
'step 1'
player.hp+=event.num;
player.update();
player.recover(event.num);
//player.update();
},
group:'zongzuo_lose',
subSkill:{
@ -8413,7 +8415,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
event.target=target;
target.chooseCard('交给'+get.translation(player)+
'一张牌,若此牌不为【闪】,则也成为此杀的额外目标',true).set('ai',function(card){
return -get.value(card);
return -get.value(card,player,'raw');
}).set('sourcex',player);
game.delay();
}
@ -10640,7 +10642,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return true;
},
content:function(){
player.storage.jianying=trigger.cards[0];
player.storage.jianying={
suit:get.suit(trigger.card),
number:trigger.card.number,
};
trigger.jianyinged=true;
}
},
@ -11088,7 +11093,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
xianzhen:'陷阵',
xianzhen_info:'出牌阶段限一次,你可以与一名角色拼点。若你赢,你获得以下效果直到回合结束:无视与该角色的距离;无视该角色的防具且对其使用【杀】没有次数限制。若你没赢,你不能使用【杀】直到回合结束。',
xinxianzhen:'陷阵',
xinxianzhen_info:'出牌阶段限一次,你可以与一名角色拼点。若你赢,你获得以下效果直到回合结束:无视该角色的防具且对其使用牌没有次数和距离限制。若你没赢,你不能使用【杀】且你的【杀】不计入手牌上限直到回合结束。',
xinxianzhen_info:'出牌阶段限一次,你可以与一名角色拼点。若你赢,你获得以下效果直到回合结束:无视该角色的防具且对其使用牌没有次数和距离限制,且当你使用【杀】或普通锦囊牌指定其他角色为唯一目标时可以令该角色也成为此牌的目标。若你没赢,你不能使用【杀】且你的【杀】不计入手牌上限直到回合结束。',
xinxianzhen2:'陷阵',
jinjiu:'禁酒',
jinjiu_info:'锁定技,你的【酒】均视为【杀】。',