v1.9.90.5
This commit is contained in:
parent
5b85397f4b
commit
1b798620e3
|
@ -148,7 +148,9 @@ game.import('card',function(lib,game,ui,get,ai,_status){
|
||||||
if(get.mode()=='guozhan'&&!player.isMajor()) return false;
|
if(get.mode()=='guozhan'&&!player.isMajor()) return false;
|
||||||
if(player.hasSkill('xietianzi')) return false;
|
if(player.hasSkill('xietianzi')) return false;
|
||||||
if(_status.currentPhase!=player) return false;
|
if(_status.currentPhase!=player) return false;
|
||||||
return (event||_status.event).getParent().name=='phaseUse';
|
var evt=event||_status.event;
|
||||||
|
var evt2=evt.getParent('chooseToUse');
|
||||||
|
return evt.type=='phase'||evt2.type=='phase';
|
||||||
},
|
},
|
||||||
filterTarget:function(card,player,target){
|
filterTarget:function(card,player,target){
|
||||||
return player==target;
|
return player==target;
|
||||||
|
|
|
@ -662,12 +662,40 @@ game.import('card',function(lib,game,ui,get,ai,_status){
|
||||||
enable:true,
|
enable:true,
|
||||||
selectTarget:-1,
|
selectTarget:-1,
|
||||||
cardcolor:'red',
|
cardcolor:'red',
|
||||||
reverseOrder:true,
|
//reverseOrder:true,
|
||||||
global:'taoyuan_nowuxie',
|
|
||||||
filterTarget:function(card,player,target){
|
filterTarget:function(card,player,target){
|
||||||
//return target.hp<target.maxHp;
|
//return target.hp<target.maxHp;
|
||||||
return true;
|
return true;
|
||||||
},
|
},
|
||||||
|
contentBefore:function(){
|
||||||
|
"step 0"
|
||||||
|
game.delay();
|
||||||
|
"step 1"
|
||||||
|
if(get.is.versus()){
|
||||||
|
player.chooseControl('顺时针','逆时针',function(event,player){
|
||||||
|
if(player.next.side==player.side) return '逆时针';
|
||||||
|
return '顺时针';
|
||||||
|
}).set('prompt','选择'+get.translation(card)+'的结算方向');
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
event.goto(3);
|
||||||
|
}
|
||||||
|
"step 2"
|
||||||
|
if(result&&result.control=='顺时针'){
|
||||||
|
var evt=event.getParent();
|
||||||
|
evt.fixedSeat=true;
|
||||||
|
evt.targets.sortBySeat();
|
||||||
|
evt.targets.reverse();
|
||||||
|
if(evt.targets[evt.targets.length-1]==player){
|
||||||
|
evt.targets.unshift(evt.targets.pop());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
"step 3"
|
||||||
|
var evt=event.getParent();
|
||||||
|
for(var i=0;i<evt.targets.length;i++){
|
||||||
|
if(evt.targets[i].isHealthy()) evt.excluded.push(evt.targets[i]);
|
||||||
|
}
|
||||||
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
target.recover();
|
target.recover();
|
||||||
},
|
},
|
||||||
|
@ -1702,13 +1730,6 @@ game.import('card',function(lib,game,ui,get,ai,_status){
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
taoyuan_nowuxie:{
|
|
||||||
mod:{
|
|
||||||
wuxieRespondable:function(card,player,target){
|
|
||||||
if(card.name=='taoyuan'&&target.isHealthy()) return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
_wuxie:{
|
_wuxie:{
|
||||||
trigger:{player:['useCardToBefore','phaseJudge']},
|
trigger:{player:['useCardToBefore','phaseJudge']},
|
||||||
priority:5,
|
priority:5,
|
||||||
|
|
|
@ -231,18 +231,23 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
event.targets.remove(player);
|
event.targets.remove(player);
|
||||||
event.targets.sort(lib.sort.seat);
|
event.targets.sort(lib.sort.seat);
|
||||||
player.line(event.targets,'green');
|
player.line(event.targets,'green');
|
||||||
|
event.targets2=event.targets.slice(0);
|
||||||
"step 1"
|
"step 1"
|
||||||
|
if(event.targets2.length){
|
||||||
|
event.targets2.shift().damage('nocard');
|
||||||
|
event.redo();
|
||||||
|
}
|
||||||
|
"step 2"
|
||||||
if(event.targets.length){
|
if(event.targets.length){
|
||||||
event.current=event.targets.shift()
|
event.current=event.targets.shift()
|
||||||
event.current.discard(event.current.getCards('e')).delay=false;
|
event.current.discard(event.current.getCards('e')).delay=false;
|
||||||
}
|
}
|
||||||
"step 2"
|
|
||||||
event.current.chooseToDiscard('h',true,4).delay=false;
|
|
||||||
"step 3"
|
"step 3"
|
||||||
event.current.damage();
|
event.current.chooseToDiscard('h',true,4).delay=false;
|
||||||
game.delay(0.5);
|
|
||||||
if(event.targets.length) event.goto(1);
|
|
||||||
"step 4"
|
"step 4"
|
||||||
|
game.delay(0.5);
|
||||||
|
if(event.targets.length) event.goto(2);
|
||||||
|
"step 5"
|
||||||
player.turnOver();
|
player.turnOver();
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
|
|
|
@ -1001,7 +1001,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
"new_reyaowu":{
|
"new_reyaowu":{
|
||||||
trigger:{
|
trigger:{
|
||||||
player:"damageEnd",
|
player:"damage",
|
||||||
},
|
},
|
||||||
priority:1,
|
priority:1,
|
||||||
audio:"yaowu",
|
audio:"yaowu",
|
||||||
|
@ -1160,6 +1160,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
reluoshen:{
|
reluoshen:{
|
||||||
audio:'luoshen',
|
audio:'luoshen',
|
||||||
|
locked:false,
|
||||||
trigger:{player:'phaseBegin'},
|
trigger:{player:'phaseBegin'},
|
||||||
frequent:true,
|
frequent:true,
|
||||||
content:function(){
|
content:function(){
|
||||||
|
|
|
@ -6551,7 +6551,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
beige_info:'一名角色每受到【杀】造成的一次伤害,你可以弃一张牌,并令其进行一次判定,判定结果为:♥该角色回复1点体力;♦︎该角色摸两张牌;♣伤害来源弃两张牌;♠伤害来源将其武将牌翻面',
|
beige_info:'一名角色每受到【杀】造成的一次伤害,你可以弃一张牌,并令其进行一次判定,判定结果为:♥该角色回复1点体力;♦︎该角色摸两张牌;♣伤害来源弃两张牌;♠伤害来源将其武将牌翻面',
|
||||||
duanchang_info:'锁定技,杀死你的角色失去当前的所有技能直到游戏结束。',
|
duanchang_info:'锁定技,杀死你的角色失去当前的所有技能直到游戏结束。',
|
||||||
// fushen_info:'回合开始前,你可以选择与任意一名角色交换控制权,该角色可选择在下一个回合开始前与你换回',
|
// fushen_info:'回合开始前,你可以选择与任意一名角色交换控制权,该角色可选择在下一个回合开始前与你换回',
|
||||||
huashen_info:'所有人都展示武将牌后,你随机获得两张未加入游戏的武将牌,选一张置于你面前并声明该武将的一项技能,你拥有该技能且同时将性别和势力属性变成与该武将相同知道该化身被替换。在你的每个准备阶段和结束后,你可以替换化身牌,你须为新的化身重新声明一项技能(你不可声明限定技、觉醒技或主公技)。',
|
huashen_info:'所有人都展示武将牌后,你随机获得两张未加入游戏的武将牌,选一张置于你面前并声明该武将的一项技能,你拥有该技能且同时将性别和势力属性变成与该武将相同直到该化身被替换。在你的每个准备阶段和结束后,你可以替换化身牌,你须为新的化身重新声明一项技能(你不可声明限定技、觉醒技或主公技)。',
|
||||||
xinsheng_info:'你每受到1点伤害,可获得一张新化身牌。',
|
xinsheng_info:'你每受到1点伤害,可获得一张新化身牌。',
|
||||||
jiangwei:'姜维',
|
jiangwei:'姜维',
|
||||||
liushan:'刘禅',
|
liushan:'刘禅',
|
||||||
|
|
|
@ -43,7 +43,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
zhangbao:['male','qun',3,['zhoufu','yingbin']],
|
zhangbao:['male','qun',3,['zhoufu','yingbin']],
|
||||||
huangjinleishi:['female','qun',3,['fulu','fuji']],
|
huangjinleishi:['female','qun',3,['fulu','fuji']],
|
||||||
maliang:['male','shu',3,['zishu','yingyuan']],
|
maliang:['male','shu',3,['zishu','yingyuan']],
|
||||||
sp_pangtong:['male','qun',3,['manjuan','zuixiang']],
|
sp_pangtong:['male','qun',3,['xinmanjuan','zuixiang']],
|
||||||
zhugedan:['male','wei',4,['gongao','juyi']],
|
zhugedan:['male','wei',4,['gongao','juyi']],
|
||||||
sp_jiangwei:['male','wei',4,['kunfen','fengliang']],
|
sp_jiangwei:['male','wei',4,['kunfen','fengliang']],
|
||||||
sp_machao:['male','qun',4,['zhuiji','ol_shichou']],
|
sp_machao:['male','qun',4,['zhuiji','ol_shichou']],
|
||||||
|
@ -1358,8 +1358,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(bool){
|
if(bool){
|
||||||
player.chooseTarget('是否视为使用一张没有距离限制的【杀】?',function(card,player,target){
|
player.chooseTarget('是否视为使用一张【杀】?',function(card,player,target){
|
||||||
return player.canUse({name:'sha'},target,false);
|
return player.canUse({name:'sha'},target);
|
||||||
}).ai=function(target){
|
}).ai=function(target){
|
||||||
var player=_status.event.player;
|
var player=_status.event.player;
|
||||||
return get.effect(target,{name:'sha'},player,player);
|
return get.effect(target,{name:'sha'},player,player);
|
||||||
|
@ -6059,6 +6059,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
targets[0].chooseToDiscard('he',2,true);
|
targets[0].chooseToDiscard('he',2,true);
|
||||||
targets[1].loseHp();
|
targets[1].loseHp();
|
||||||
}
|
}
|
||||||
|
else if(result.tie){
|
||||||
|
targets[0].loseHp()
|
||||||
|
targets[1].loseHp()
|
||||||
|
}
|
||||||
else{
|
else{
|
||||||
targets[1].chooseToDiscard('he',2,true);
|
targets[1].chooseToDiscard('he',2,true);
|
||||||
targets[0].loseHp();
|
targets[0].loseHp();
|
||||||
|
@ -8809,10 +8813,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
if(player.storage.ranshang){
|
if(player.storage.ranshang){
|
||||||
player.storage.ranshang++;
|
player.storage.ranshang+=trigger.num;
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
player.storage.ranshang=1;
|
player.storage.ranshang=trigger.num;
|
||||||
}
|
}
|
||||||
player.markSkill('ranshang');
|
player.markSkill('ranshang');
|
||||||
game.addVideo('storage',player,['ranshang',player.storage.ranshang]);
|
game.addVideo('storage',player,['ranshang',player.storage.ranshang]);
|
||||||
|
@ -8850,15 +8854,17 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
(event.card.name=='nanman'||event.card.name=='wanjian');
|
(event.card.name=='nanman'||event.card.name=='wanjian');
|
||||||
},
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
player.addTempSkill('hanyong3','useCardAfter');
|
player.addTempSkill('hanyong3');
|
||||||
|
player.storage.hanyong3=trigger.card;
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
hanyong3:{
|
hanyong3:{
|
||||||
audio:false,
|
audio:false,
|
||||||
trigger:{source:'damageBegin'},
|
trigger:{source:'damageBegin'},
|
||||||
forced:true,
|
forced:true,
|
||||||
|
onremove:true,
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
return event.card&&(event.card.name=='nanman'||event.card.name=='wanjian')&&event.notLink();
|
return event.card==player.storage.hanyong3;
|
||||||
},
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
trigger.num++;
|
trigger.num++;
|
||||||
|
@ -9418,6 +9424,44 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
xinmanjuan:{
|
||||||
|
audio:'manjuan',
|
||||||
|
forced:true,
|
||||||
|
priority:15,
|
||||||
|
trigger:{player:'gainEnd'},
|
||||||
|
filter:function(event,player){
|
||||||
|
return event.type!='xinmanjuan';
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
"step 0"
|
||||||
|
event.cards=trigger.cards.slice(0);
|
||||||
|
player.discard(event.cards);
|
||||||
|
if(_status.currentPhase!=player) event.finish();
|
||||||
|
"step 1"
|
||||||
|
event.card=event.cards.shift();
|
||||||
|
event.togain=[];
|
||||||
|
var number=get.number(event.card);
|
||||||
|
for(var i=0;i<ui.discardPile.childNodes.length;i++){
|
||||||
|
var current=ui.discardPile.childNodes[i];
|
||||||
|
if(current!=event.card&&get.number(current)==number) event.togain.push(current);
|
||||||
|
}
|
||||||
|
if(!event.togain.length) event.goto(4);
|
||||||
|
"step 2"
|
||||||
|
player.chooseButton(['是否获得其中的一张牌?',event.togain]).ai=function(button){
|
||||||
|
return get.value(button.link);
|
||||||
|
};
|
||||||
|
"step 3"
|
||||||
|
if(result.bool){
|
||||||
|
player.gain(result.links[0],'gain2').type='xinmanjuan';
|
||||||
|
}
|
||||||
|
"step 4"
|
||||||
|
if(event.cards.length) event.goto(1);
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
threaten:4.2,
|
||||||
|
nogain:1
|
||||||
|
},
|
||||||
|
},
|
||||||
manjuan:{
|
manjuan:{
|
||||||
audio:true,
|
audio:true,
|
||||||
trigger:{global:'discardAfter'},
|
trigger:{global:'discardAfter'},
|
||||||
|
@ -10842,10 +10886,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
filterCard:true,
|
filterCard:true,
|
||||||
selectCard:function(){
|
selectCard:function(){
|
||||||
var player=_status.event.player;
|
var player=_status.event.player;
|
||||||
var num=game.countPlayer(function(current){
|
return player.maxHp-player.hp;
|
||||||
return current.isDamaged();
|
|
||||||
});
|
|
||||||
return [1,Math.min(num,player.maxHp-player.hp)];
|
|
||||||
},
|
},
|
||||||
filterTarget:function(card,player,target){
|
filterTarget:function(card,player,target){
|
||||||
return target.hp<target.maxHp;
|
return target.hp<target.maxHp;
|
||||||
|
@ -10854,15 +10895,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
return player.hp<player.maxHp;
|
return player.hp<player.maxHp;
|
||||||
},
|
},
|
||||||
selectTarget:function(){
|
selectTarget:function(){
|
||||||
return ui.selected.cards.length;
|
return [1,ui.selected.cards.length];
|
||||||
},
|
},
|
||||||
check:function(card){
|
check:function(card){
|
||||||
var player=_status.event.player;
|
|
||||||
if(ui.selected.cards.length>=game.countPlayer(function(current){
|
|
||||||
return get.attitude(player,current)>0&¤t.isDamaged();
|
|
||||||
})){
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
if(get.color(card)=='black') return -1;
|
if(get.color(card)=='black') return -1;
|
||||||
return 9-get.value(card);
|
return 9-get.value(card);
|
||||||
},
|
},
|
||||||
|
@ -12321,7 +12356,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
caohong:'曹洪',
|
caohong:'曹洪',
|
||||||
liuxie:'刘协',
|
liuxie:'刘协',
|
||||||
xiahouba:'夏侯霸',
|
xiahouba:'夏侯霸',
|
||||||
zhugejin:'诸葛谨',
|
zhugejin:'诸葛瑾',
|
||||||
zhugeke:'诸葛恪',
|
zhugeke:'诸葛恪',
|
||||||
guanyinping:'关银屏',
|
guanyinping:'关银屏',
|
||||||
ganfuren:'甘夫人',
|
ganfuren:'甘夫人',
|
||||||
|
@ -12397,7 +12432,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
wangyun:'王允',
|
wangyun:'王允',
|
||||||
sunqian:'孙乾',
|
sunqian:'孙乾',
|
||||||
xizhicai:'戏志才',
|
xizhicai:'戏志才',
|
||||||
quyi:'麹义',
|
quyi:'麴义',
|
||||||
liuye:'刘晔',
|
liuye:'刘晔',
|
||||||
beimihu:'卑弥呼',
|
beimihu:'卑弥呼',
|
||||||
luzhi:'鲁芝',
|
luzhi:'鲁芝',
|
||||||
|
@ -12433,7 +12468,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
wangyuanji:"王元姬",
|
wangyuanji:"王元姬",
|
||||||
|
|
||||||
xinshanjia:"缮甲",
|
xinshanjia:"缮甲",
|
||||||
"xinshanjia_info":"出牌阶段开始时,你可以摸三张牌,然后弃置3-X张牌(X为你本局游戏内失去过的装备区内的牌的数目且至多为3)。若你没有以此法弃置基本牌或锦囊牌,则你可以视为使用了一张不计入出牌阶段使用次数且无距离限制的【杀】。",
|
"xinshanjia_info":"出牌阶段开始时,你可以摸三张牌,然后弃置3-X张牌(X为你本局游戏内失去过的装备区内的牌的数目且至多为3)。若你没有以此法弃置基本牌或锦囊牌,则你可以视为使用了一张不计入出牌阶段使用次数的【杀】。",
|
||||||
"new_meibu":"魅步",
|
"new_meibu":"魅步",
|
||||||
"new_meibu_info":"其他角色的出牌阶段开始时,若你在其攻击范围内,你可以弃置一张牌,令该角色于本回合内拥有“止息”。若你以此法弃置的牌不是【杀】或黑色锦囊牌,则本回合其与你距离视为1。",
|
"new_meibu_info":"其他角色的出牌阶段开始时,若你在其攻击范围内,你可以弃置一张牌,令该角色于本回合内拥有“止息”。若你以此法弃置的牌不是【杀】或黑色锦囊牌,则本回合其与你距离视为1。",
|
||||||
"new_mumu":"穆穆",
|
"new_mumu":"穆穆",
|
||||||
|
@ -12911,6 +12946,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
weizhong_info:'锁定技,每当你的体力上限增加或减少时,你摸一张牌。',
|
weizhong_info:'锁定技,每当你的体力上限增加或减少时,你摸一张牌。',
|
||||||
taichen_info:'出牌阶段限一次,你可以自减一点体力,视为对一名角色使用一张杀(不计入回合内出杀限制)',
|
taichen_info:'出牌阶段限一次,你可以自减一点体力,视为对一名角色使用一张杀(不计入回合内出杀限制)',
|
||||||
manjuan_info:'其他角色的卡牌因弃置而进入弃牌堆后,你可以弃置一张花色与之不同的牌,然后获得之',
|
manjuan_info:'其他角色的卡牌因弃置而进入弃牌堆后,你可以弃置一张花色与之不同的牌,然后获得之',
|
||||||
|
xinmanjuan:'漫卷',
|
||||||
|
xinmanjuan_info:'每当你将获得任何一张牌,将之置于弃牌堆。若此情况处于你的回合中,你可依次将与该牌点数相同的一张牌从弃牌堆置于你手上。',
|
||||||
zuixiang_info:'限定技,准备阶段开始时,你可以展示牌库顶的3张牌并置于你的武将牌上,你不可使用或打出与该些牌同类的牌,所有同类牌对你无效。之后每个你的准备阶段,你须重复展示一次,直至该些牌中任意两张点数相同时,将你武将牌上的全部牌置于你的手上。',
|
zuixiang_info:'限定技,准备阶段开始时,你可以展示牌库顶的3张牌并置于你的武将牌上,你不可使用或打出与该些牌同类的牌,所有同类牌对你无效。之后每个你的准备阶段,你须重复展示一次,直至该些牌中任意两张点数相同时,将你武将牌上的全部牌置于你的手上。',
|
||||||
naman_info:'你可以获得其他角色打出的杀',
|
naman_info:'你可以获得其他角色打出的杀',
|
||||||
xiemu_info:'每当你成为其他角色的黑色牌的目标,可以弃置一张杀并摸两张牌',
|
xiemu_info:'每当你成为其他角色的黑色牌的目标,可以弃置一张杀并摸两张牌',
|
||||||
|
|
|
@ -1843,7 +1843,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
filterTarget:function(card,player,target){
|
filterTarget:function(card,player,target){
|
||||||
var trigger=_status.event.getTrigger();
|
var trigger=_status.event.getTrigger();
|
||||||
if(get.distance(player,target,'attack')<=1&&
|
if(get.distance(player,target,'attack')<=1&&
|
||||||
target!=trigger.player&&!trigger.targets.contains(target)){
|
target!=trigger.player){
|
||||||
if(player.canUse(trigger.card,target)) return true;
|
if(player.canUse(trigger.card,target)) return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
@ -1871,14 +1871,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
"step 1"
|
"step 1"
|
||||||
if(result.bool){
|
if(result.bool){
|
||||||
player.discard(result.cards);
|
player.discard(result.cards);
|
||||||
player.logSkill(event.name,result.targets);
|
var target=result.targets[0];
|
||||||
trigger.target=result.targets[0];
|
player.logSkill(event.name,target);
|
||||||
for(var i=0;i<trigger.targets.length;i++){
|
trigger.target=target;
|
||||||
if(trigger.targets[i]==player) break;
|
var evt=trigger.getParent();
|
||||||
|
if(evt&&evt.targets&&evt.num){
|
||||||
|
trigger.targets[evt.num]=target;
|
||||||
|
evt.targets[evt.num]=target;
|
||||||
}
|
}
|
||||||
var t1=trigger.targets.slice(0,i);
|
|
||||||
var t2=trigger.targets.slice(i+1);
|
|
||||||
trigger.targets=t1.concat([result.targets[0]]).concat(t2);
|
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
event.finish();
|
event.finish();
|
||||||
|
@ -2334,7 +2334,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
yaowu:{
|
yaowu:{
|
||||||
trigger:{player:'damageEnd'},
|
trigger:{player:'damage'},
|
||||||
priority:1,
|
priority:1,
|
||||||
audio:2,
|
audio:2,
|
||||||
filter:function(event){
|
filter:function(event){
|
||||||
|
|
|
@ -1112,16 +1112,18 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
'step 1'
|
'step 1'
|
||||||
if(result.bool){
|
if(result.bool){
|
||||||
player.logSkill('xinfu_lingren',result.targets);
|
player.logSkill('xinfu_lingren',result.targets);
|
||||||
event.targett=result.targets[0];
|
var target=result.targets[0];
|
||||||
player.line('water',event.targett);
|
event.target=target;
|
||||||
|
player.line('water',target);
|
||||||
event.choice={
|
event.choice={
|
||||||
basic:false,
|
basic:false,
|
||||||
trick:false,
|
trick:false,
|
||||||
equip:false,
|
equip:false,
|
||||||
}
|
}
|
||||||
player.chooseBool('是否押基本牌?').ai=function(event,player){
|
player.chooseBool('是否押基本牌?').ai=function(event,player){
|
||||||
if(event.targett.countCards('h')) return true;
|
var rand=0.95;
|
||||||
return false;
|
if(!target.countCards('h',{type:['basic']})) rand=0;
|
||||||
|
return Math.random()<rand?true:false;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
@ -1133,16 +1135,18 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
event.choice.basic=true;
|
event.choice.basic=true;
|
||||||
}
|
}
|
||||||
player.chooseBool('是否押锦囊牌?').ai=function(event,player){
|
player.chooseBool('是否押锦囊牌?').ai=function(event,player){
|
||||||
var num=event.targett.countCards('h');
|
var rand=0.95;
|
||||||
return Math.random()<num>2?0:0.5;
|
if(!target.countCards('h',{type:['trick','delay']})) rand=0;
|
||||||
|
return Math.random()<rand?true:false;
|
||||||
};
|
};
|
||||||
'step 3'
|
'step 3'
|
||||||
if(result.bool){
|
if(result.bool){
|
||||||
event.choice.trick=true;
|
event.choice.trick=true;
|
||||||
}
|
}
|
||||||
player.chooseBool('是否押装备牌?').ai=function(event,player){
|
player.chooseBool('是否押装备牌?').ai=function(event,player){
|
||||||
var num=event.targett.countCards('h');
|
var rand=0.95;
|
||||||
return Math.random()<num>3?0:0.3;
|
if(!target.countCards('h',{type:['equip']})) rand=0;
|
||||||
|
return Math.random()<rand?true:false;
|
||||||
};
|
};
|
||||||
'step 4'
|
'step 4'
|
||||||
if(result.bool){
|
if(result.bool){
|
||||||
|
@ -1154,7 +1158,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
trick:false,
|
trick:false,
|
||||||
equip:false,
|
equip:false,
|
||||||
}
|
}
|
||||||
var he=event.targett.getCards('h');
|
var he=target.getCards('h');
|
||||||
for(var i=0;i<he.length;i++){
|
for(var i=0;i<he.length;i++){
|
||||||
reality[get.type(he[i],'trick')]=true;
|
reality[get.type(he[i],'trick')]=true;
|
||||||
}
|
}
|
||||||
|
@ -1167,8 +1171,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
player.popup('猜对'+get.cnNumber(event.num)+'项');
|
player.popup('猜对'+get.cnNumber(event.num)+'项');
|
||||||
game.log(player,'猜对了'+get.cnNumber(event.num)+'项');
|
game.log(player,'猜对了'+get.cnNumber(event.num)+'项');
|
||||||
if(event.num>0){
|
if(event.num>0){
|
||||||
event.targett.addTempSkill('lingren_adddamage');
|
target.addTempSkill('lingren_adddamage');
|
||||||
event.targett.storage.lingren={
|
target.storage.lingren={
|
||||||
card:trigger.card,
|
card:trigger.card,
|
||||||
//player:event.targett,
|
//player:event.targett,
|
||||||
}
|
}
|
||||||
|
@ -1399,6 +1403,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
intro:{
|
intro:{
|
||||||
content:"mark",
|
content:"mark",
|
||||||
},
|
},
|
||||||
|
locked:true,
|
||||||
},
|
},
|
||||||
"xionghuo_disable":{
|
"xionghuo_disable":{
|
||||||
mod:{
|
mod:{
|
||||||
|
@ -2560,15 +2565,20 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
'step 0'
|
'step 0'
|
||||||
event.cardt=target.getCards('h').randomGet();
|
event.cardt=target.getCards('h').randomGet();
|
||||||
target.showCards(event.cardt);
|
target.showCards(event.cardt);
|
||||||
player.chooseCard('he',true).ai=function(card){
|
player.chooseCard('he').ai=function(card){
|
||||||
var numt=event.cardt.number;
|
var numt=event.cardt.number;
|
||||||
if(card.number<numt) return 20-get.value(card);
|
var att=get.attitude(player,target);
|
||||||
else if(card.number==numt) return 15-get.value(card);
|
var value=get.value(event.cardt);
|
||||||
return 12-get.value(card);
|
if(card.number<numt||att>2) return value+6-get.value(card);
|
||||||
|
else if(card.number==numt) return value-get.value(card);
|
||||||
|
return -1;
|
||||||
};
|
};
|
||||||
'step 1'
|
'step 1'
|
||||||
player.showCards(result.cards);
|
if(!result.bool) event.finish();
|
||||||
event.cardp=result.cards;
|
else{
|
||||||
|
player.showCards(result.cards);
|
||||||
|
event.cardp=result.cards;
|
||||||
|
}
|
||||||
'step 2'
|
'step 2'
|
||||||
player.give(event.cardp,target);
|
player.give(event.cardp,target);
|
||||||
target.give(event.cardt,player);
|
target.give(event.cardt,player);
|
||||||
|
@ -3857,12 +3867,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
filter:function (event,player){
|
filter:function (event,player){
|
||||||
if(player.hasSkill('xinfu_kannan_phase')) return false;
|
if(player.hasSkill('xinfu_kannan_phase')) return false;
|
||||||
if(player.getStat().skill.xinfu_kannan>=player.hp) return false;
|
if(player.getStat().skill.xinfu_kannan>=player.hp) return false;
|
||||||
return true;
|
return player.countCards('h')>0;
|
||||||
},
|
},
|
||||||
filterTarget:function (card,player,target){
|
filterTarget:function (card,player,target){
|
||||||
if(player.hasSkillTag('noCompareSource')||target.hasSkillTag('noCompareTarget')) return false;
|
|
||||||
if(target.hasSkill('xinfu_kannan_phase')) return false;
|
if(target.hasSkill('xinfu_kannan_phase')) return false;
|
||||||
return target.countCards('h')&&target!=player;
|
return player.canCompare(target);
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
order:function (){
|
order:function (){
|
||||||
|
@ -3970,7 +3979,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
cardUsable:function (card,player,num){
|
cardUsable:function (card,player,num){
|
||||||
if(typeof num=='number'&&player.countCards('j')){
|
if(typeof num=='number'&&player.countCards('j')&&card.name!='jiu'){
|
||||||
return Infinity;
|
return Infinity;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -174,7 +174,7 @@ window.config={
|
||||||
},
|
},
|
||||||
guozhan:{
|
guozhan:{
|
||||||
difficulty:'normal',
|
difficulty:'normal',
|
||||||
initshow_draw:2,
|
initshow_draw:'mark',
|
||||||
dierestart:true
|
dierestart:true
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -182,6 +182,7 @@ window.config={
|
||||||
customforbid:[],
|
customforbid:[],
|
||||||
forbid:[
|
forbid:[
|
||||||
['huashen'],
|
['huashen'],
|
||||||
|
['xinmanjuan'],
|
||||||
['lianying','rende'],
|
['lianying','rende'],
|
||||||
['lianying','anxian'],
|
['lianying','anxian'],
|
||||||
['lianying','yinguo'],
|
['lianying','yinguo'],
|
||||||
|
|
41
game/game.js
41
game/game.js
|
@ -13913,6 +13913,7 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
player.removeEquipTrigger();
|
player.removeEquipTrigger();
|
||||||
|
|
||||||
// for(var i in lib.skill.globalmap){
|
// for(var i in lib.skill.globalmap){
|
||||||
// if(lib.skill.globalmap[i].contains(player)){
|
// if(lib.skill.globalmap[i].contains(player)){
|
||||||
// lib.skill.globalmap[i].remove(player);
|
// lib.skill.globalmap[i].remove(player);
|
||||||
|
@ -13956,15 +13957,6 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},player,event.cards);
|
},player,event.cards);
|
||||||
event.trigger('die');
|
|
||||||
"step 1"
|
|
||||||
if(event.cards.length){
|
|
||||||
player.$throw(event.cards,1000);
|
|
||||||
game.log(player,'弃置了',event.cards,event.logvid);
|
|
||||||
for(var i=0;i<event.cards.length;i++){
|
|
||||||
event.cards[i].discard();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if(!_status.connectMode&&player==game.me&&!_status.over&&!game.controlOver){
|
if(!_status.connectMode&&player==game.me&&!_status.over&&!game.controlOver){
|
||||||
ui.control.show();
|
ui.control.show();
|
||||||
|
@ -13992,6 +13984,16 @@
|
||||||
player.$die(source);
|
player.$die(source);
|
||||||
}
|
}
|
||||||
if(player.dieAfter) player.dieAfter(source);
|
if(player.dieAfter) player.dieAfter(source);
|
||||||
|
event.trigger('die');
|
||||||
|
"step 1"
|
||||||
|
if(event.cards.length){
|
||||||
|
player.$throw(event.cards,1000);
|
||||||
|
game.log(player,'弃置了',event.cards,event.logvid);
|
||||||
|
for(var i=0;i<event.cards.length;i++){
|
||||||
|
event.cards[i].discard();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(typeof _status.coin=='number'&&source&&!_status.auto){
|
if(typeof _status.coin=='number'&&source&&!_status.auto){
|
||||||
if(source==game.me||source.isUnderControl()){
|
if(source==game.me||source.isUnderControl()){
|
||||||
_status.coin+=10;
|
_status.coin+=10;
|
||||||
|
@ -14767,6 +14769,10 @@
|
||||||
this.update();
|
this.update();
|
||||||
},
|
},
|
||||||
uninit:function(){
|
uninit:function(){
|
||||||
|
for(var i=1;i<6;i++){
|
||||||
|
this.enableEquip(i);
|
||||||
|
}
|
||||||
|
|
||||||
this.node.avatar.hide();
|
this.node.avatar.hide();
|
||||||
this.node.count.hide();
|
this.node.count.hide();
|
||||||
if(this.node.wuxing){
|
if(this.node.wuxing){
|
||||||
|
@ -27747,6 +27753,15 @@
|
||||||
dialog.addSmall(hs);
|
dialog.addSmall(hs);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for(var j=0;j<game.dead.length;j++){
|
||||||
|
var hs=game.dead[j].getCards('h');
|
||||||
|
if(hs.length){
|
||||||
|
dialog.add('<div class="text center">'+get.translation(game.dead[j])+'</div>');
|
||||||
|
dialog.addSmall(hs);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
dialog.add(ui.create.div('.placeholder.slim'));
|
dialog.add(ui.create.div('.placeholder.slim'));
|
||||||
if(lib.config.background_audio){
|
if(lib.config.background_audio){
|
||||||
if(result2===true){
|
if(result2===true){
|
||||||
|
@ -28143,6 +28158,14 @@
|
||||||
dialog.addSmall(hs);
|
dialog.addSmall(hs);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
for(var i=0;i<game.dead.length;i++){
|
||||||
|
if(!_status.connectMode&&game.dead[i].isUnderControl(true)&&game.layout!='long2') continue;
|
||||||
|
var hs=game.dead[i].getCards('h');
|
||||||
|
if(hs.length){
|
||||||
|
dialog.add('<div class="text center">'+get.translation(game.dead[i])+'</div>');
|
||||||
|
dialog.addSmall(hs);
|
||||||
|
}
|
||||||
|
}
|
||||||
dialog.add(ui.create.div('.placeholder.slim'));
|
dialog.add(ui.create.div('.placeholder.slim'));
|
||||||
game.addVideo('over',null,dialog.content.innerHTML);
|
game.addVideo('over',null,dialog.content.innerHTML);
|
||||||
var vinum=parseInt(lib.config.video);
|
var vinum=parseInt(lib.config.video);
|
||||||
|
|
|
@ -1,18 +1,22 @@
|
||||||
window.noname_update={
|
window.noname_update={
|
||||||
version:'1.9.90.4',
|
version:'1.9.90.5',
|
||||||
update:'1.9.90.3',
|
update:'1.9.90.4',
|
||||||
changeLog:[
|
changeLog:[
|
||||||
|
'SP庞统技能还原',
|
||||||
'BUG修复',
|
'BUG修复',
|
||||||
],
|
],
|
||||||
files:[
|
files:[
|
||||||
'card/guozhan.js',
|
'card/guozhan.js',
|
||||||
|
'card/standard.js',
|
||||||
|
'character/extra.js',
|
||||||
'character/refresh.js',
|
'character/refresh.js',
|
||||||
'character/shenhua.js',
|
'character/shenhua.js',
|
||||||
'character/sp.js',
|
'character/sp.js',
|
||||||
'character/standard.js',
|
'character/standard.js',
|
||||||
'character/xinghuoliaoyuan.js',
|
'character/xinghuoliaoyuan.js',
|
||||||
'character/yijiang.js',
|
'mode/boss.js',
|
||||||
'mode/guozhan.js',
|
'mode/guozhan.js',
|
||||||
|
'game/config.js',
|
||||||
'game/game.js',
|
'game/game.js',
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
|
|
|
@ -1698,7 +1698,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
content:function(){
|
content:function(){
|
||||||
var target=trigger.source;
|
var target=trigger.source;
|
||||||
if(!target.storage.boss_shedu) target.storage.boss_shedu=0;
|
if(!target.storage.boss_shedu) target.storage.boss_shedu=0;
|
||||||
target.storage.boss_shedu+=trigger.num;
|
target.storage.boss_shedu++;
|
||||||
target.markSkill('boss_shedu');
|
target.markSkill('boss_shedu');
|
||||||
},
|
},
|
||||||
forced:true,
|
forced:true,
|
||||||
|
@ -1860,7 +1860,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
return !event.player.hasSkill('boss_duqu')&&['tao','jiu'].contains(event.card.name);
|
return !event.player.hasSkill('boss_duqu')&&['tao','jiu'].contains(event.card.name);
|
||||||
},
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
var target=event.player;
|
var target=trigger.player;
|
||||||
player.line(target);
|
player.line(target);
|
||||||
if(!target.storage.boss_shedu) target.storage.boss_shedu=0;
|
if(!target.storage.boss_shedu) target.storage.boss_shedu=0;
|
||||||
target.storage.boss_shedu++;
|
target.storage.boss_shedu++;
|
||||||
|
@ -6915,6 +6915,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
shenqu:{
|
shenqu:{
|
||||||
|
audio:2,
|
||||||
group:'shenqu2',
|
group:'shenqu2',
|
||||||
trigger:{global:'phaseBegin'},
|
trigger:{global:'phaseBegin'},
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
|
@ -6936,6 +6937,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
jiwu:{
|
jiwu:{
|
||||||
|
audio:2,
|
||||||
enable:'phaseUse',
|
enable:'phaseUse',
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
if(player.countCards('h')==0) return false;
|
if(player.countCards('h')==0) return false;
|
||||||
|
@ -7459,7 +7461,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
boss_guiyin:'归隐',
|
boss_guiyin:'归隐',
|
||||||
boss_guiyin_info:'锁定技,体力值比你多的角色无法在回合内对你使用卡牌',
|
boss_guiyin_info:'锁定技,体力值比你多的角色无法在回合内对你使用卡牌',
|
||||||
boss_gongshen:'工神',
|
boss_gongshen:'工神',
|
||||||
boss_gongshen_info:'锁定技,除你之外的角色没有装备区;你不能成为其他角色的的延时锦囊目标',
|
boss_gongshen_info:'锁定技,除你之外的角色没有装备区;你不能成为其他角色的延时锦囊牌的目标',
|
||||||
|
|
||||||
fanghua:'芳华',
|
fanghua:'芳华',
|
||||||
fanghua_info:'结束阶段,你可以令所有已翻面角色流失一点体力',
|
fanghua_info:'结束阶段,你可以令所有已翻面角色流失一点体力',
|
||||||
|
|
|
@ -5914,17 +5914,22 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
gzweimu:{
|
gzweimu:{
|
||||||
audio:'weimu',
|
audio:'weimu',
|
||||||
trigger:{target:'useCardToBefore'},
|
trigger:{target:'useCardToBefore',player:'addJudgeBefore'},
|
||||||
forced:true,
|
forced:true,
|
||||||
priority:15,
|
priority:15,
|
||||||
check:function(event,player){
|
check:function(event,player){
|
||||||
return get.effect(event.target,event.card,event.player,player)<0;
|
return event.name=='addJudge'||(event.card.name!='chiling'&&get.effect(event.target,event.card,event.player,player)<0);
|
||||||
},
|
},
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
return get.type(event.card,'trick')=='trick'&&get.color(event.card)=='black';
|
return get.type(event.card,'trick')=='trick'&&get.color(event.card)=='black';
|
||||||
},
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
trigger.cancel();
|
trigger.cancel();
|
||||||
|
if(trigger.name=='addJudge'){
|
||||||
|
for(var i=0;i<trigger.cards.length;i++){
|
||||||
|
trigger.cards[i].discard();
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
effect:{
|
effect:{
|
||||||
|
@ -5936,17 +5941,22 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
gzqianxun:{
|
gzqianxun:{
|
||||||
audio:'reqianxun',
|
audio:'reqianxun',
|
||||||
trigger:{target:'useCardToBefore'},
|
trigger:{target:'useCardToBefore',player:'addJudgeBefore'},
|
||||||
forced:true,
|
forced:true,
|
||||||
priority:15,
|
priority:15,
|
||||||
check:function(event,player){
|
check:function(event,player){
|
||||||
return get.effect(event.target,event.card,event.player,player)<0;
|
return event.name=='addJudge'||get.effect(event.target,event.card,event.player,player)<0;
|
||||||
},
|
},
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
return event.card.name=='shunshou'||event.card.name=='lebu';
|
return event.card.name=='shunshou'||event.card.name=='lebu';
|
||||||
},
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
trigger.cancel();
|
trigger.cancel();
|
||||||
|
if(trigger.name=='addJudge'){
|
||||||
|
for(var i=0;i<trigger.cards.length;i++){
|
||||||
|
trigger.cards[i].discard();
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
effect:{
|
effect:{
|
||||||
|
|
Loading…
Reference in New Issue