都给爷拉去通渠

This commit is contained in:
Spmario233 2020-09-06 14:26:37 +08:00 committed by GitHub
parent 966542c1ab
commit cec25c6be1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
13 changed files with 31064 additions and 30588 deletions

View File

@ -276,7 +276,8 @@ game.import('card',function(lib,game,ui,get,ai,_status){
value:[8,6.5,5,4],
},
result:{
target:function(player,target){
target:2,
target_use:function(player,target){
// if(player==target&&player.hp<=0) return 2;
if(player.hasSkillTag('nokeep',true,null,true)) return 2;
var nd=player.needsToDiscard();

View File

@ -8,11 +8,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
mobile:{
mobile_default:["miheng","taoqian","lingcao","sunru","lifeng","zhuling","liuye","zhaotongzhaoguang","majun","simazhao","wangyuanji","pangdegong","shenpei","hujinding","zhangyì","jiakui","yangbiao","chendeng","dongcheng","yangyi","dengzhi","zhengxuan","sp_sufei"],
mobile_yijiang:["yj_zhanghe","yj_zhangliao","yj_xuhuang","yj_ganning"],
mobile_others:["re_jikang","old_bulianshi","old_yuanshu","re_wangyun","re_baosanniang","re_weiwenzhugezhi","re_zhanggong","re_xugong","xin_yuanshao","re_liushan","xin_xiahoudun","re_sp_zhugeliang","re_heqi","re_guanqiujian","re_pangtong","old_liuzan","xin_chengpu","re_sunjian","re_xusheng"],
mobile_others:["re_jikang","old_bulianshi","old_yuanshu","re_wangyun","re_baosanniang","re_weiwenzhugezhi","re_zhanggong","re_xugong","xin_yuanshao","re_liushan","xin_xiahoudun","re_sp_zhugeliang","re_heqi","re_guanqiujian","re_pangtong","old_liuzan","xin_chengpu","re_sunjian","re_xusheng","re_dongzhuo"],
mobile_sunben:["re_sunben"],
},
},
character:{
re_dongzhuo:['male','qun',8,['rejiuchi','roulin','benghuai','baonue'],['zhu']],
re_xusheng:['male','wu',4,['repojun']],
sp_sufei:['male','qun',4,['zhengjian','gaoyuan']],
yj_zhangliao:['male','qun',4,['weifeng']],
@ -285,6 +286,25 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
characterFilter:{},
skill:{
rejiuchi:{
group:['jiuchi'],
audioname:['re_dongzhuo'],
trigger:{source:'damage'},
forced:true,
popup:false,
locked:false,
audio:'jiuchi',
filter:function(event,player){
return event.card&&event.card.name=='sha'&&event.getParent(2).jiu==true&&!player.hasSkill('rejiuchi_air');
},
content:function(){
player.logSkill('jiuchi');
player.addTempSkill('rejiuchi_air');
},
subSkill:{
air:{},
},
},
//苏飞,新贾逵
tongqu:{
audio:'zhongzuo',
@ -1474,72 +1494,66 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
zhouxuan:{
audio:2,
trigger:{player:'phaseJieshuBegin'},
direct:true,
enable:'phaseUse',
usable:1,
filter:function(event,player){
return player.countCards('he')>0;
},
filterCard:true,
filterTarget:lib.filter.notMe,
check:function(card){
return 6-get.value(card);
},
content:function(){
'step 0'
player.chooseCardTarget({
prompt:get.prompt2('zhouxuan'),
filterCard:lib.filter.cardDiscardable,
filterTarget:lib.filter.notMe,
position:'he',
ai1:function(card){
return 6-get.value(card);
},
ai2:function(target){
var player=_status.event.player;
player.addSkill('zhouxuan2');
target.addTempSkill('zhouxuan_ai',{player:'phaseUseAfter'});
player.storage.zhouxuan2={};
player.storage.zhouxuan2.player=target;
var list=[];
var basic=[];
for(var i=0;i<lib.inpile.length;i++){
var name=lib.inpile[i];
var type=get.type(name,'trick');
if(type=='basic'){
list.push(name);
basic.push(name);
}
else list.add(type);
}
event.basic=basic;
player.chooseControl(list).set('prompt','请选择一种基本牌的名称或非基本牌的类别').set('ai',function(){
var player=_status.event.player;
var target=player.storage.zhouxuan2.player;
var cards=target.getCards('h',function(card){
return target.hasUseTarget(card);
});
var map={};
for(var i=0;i<cards.length;i++){
var type=get.type(cards[i],'trick');
map[type=='basic'?get.name(cards[i]):type]=true;
}
if(map.equip) return 'equip';
if(map.trick) return 'trick';
if(map.sha) return 'sha';
if(map.tao) return 'tao';
return 0;
});
'step 1'
player.storage.zhouxuan2.card=result.control;
if(event.basic.contains(result.control)) player.storage.zhouxuan2.isbasic=true;
player.markSkill('zhouxuan2');
},
ai:{
order:1,
result:{
player:function(player,target){
if(get.attitude(player,target)>0) return Math.max(1,target.hp)*target.countCards('h',function(card){
return target.getUseValue(card)>0;
});
return 0;
},
});
'step 1'
if(result.bool){
player.logSkill('zhouxuan',result.targets[0]);
player.discard(result.cards);
player.addSkill('zhouxuan2');
result.targets[0].addTempSkill('zhouxuan_ai',{player:'phaseUseAfter'});
player.storage.zhouxuan2={};
player.storage.zhouxuan2.player=result.targets[0];
var list=[];
var basic=[];
for(var i=0;i<lib.inpile.length;i++){
var name=lib.inpile[i];
var type=get.type(name,'trick');
if(type=='basic'){
list.push(name);
basic.push(name);
}
else list.add(type);
}
event.basic=basic;
player.chooseControl(list).set('prompt','请选择一种基本牌的名称或非基本牌的类别').set('ai',function(){
var player=_status.event.player;
var target=player.storage.zhouxuan2.player;
var cards=target.getCards('h',function(card){
return target.hasUseTarget(card);
});
var map={};
for(var i=0;i<cards.length;i++){
var type=get.type(cards[i],'trick');
map[type=='basic'?get.name(cards[i]):type]=true;
}
if(map.equip) return 'equip';
if(map.trick) return 'trick';
if(map.sha) return 'sha';
if(map.tao) return 'tao';
return 0;
});
}
else event.finish();
'step 2'
player.storage.zhouxuan2.card=result.control;
if(event.basic.contains(result.control)) player.storage.zhouxuan2.isbasic=true;
player.markSkill('zhouxuan2');
},
},
},
zhouxuan_ai:{
@ -5140,6 +5154,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}).set('ai',function(card){
var player=_status.event.player;
if(player.hasUseTarget(card)&&!player.hasValueTarget(card)) return 0;
if(['sha','shan','wuxie','caochuan'].contains(card.name)) return 2+Math.random();
return 1+Math.random();
}).set('complexCard',true);
'step 1'
@ -5284,14 +5299,21 @@ game.import('character',function(lib,game,ui,get,ai,_status){
popup:false,
filter:function(event,player){
var evt=event.getParent();
return evt&&evt.player==player&&evt.skill&&evt.skill.indexOf('gnjinfan')==0;
return evt&&evt.player==player&&player!=_status.currentPhase&&evt.skill&&evt.skill.indexOf('gnjinfan')==0;
},
content:function(){
var suit=get.suit(trigger.cards[0]);
'step 0'
event.cards=trigger.cards.slice(0);
'step 1'
var suit=get.suit(cards[0]);
cards.shift();
var card=get.cardPile2(function(cardx){
return get.suit(cardx)==suit;
});
if(card) player.gain(card,'gain2','log');
if(cards.length) event.redo();
'step 2'
game.delayx();
},
},
gnjinfan7:{
@ -5591,7 +5613,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
chendeng:'陈登',
zhouxuan:'周旋',
zhouxuan2:'周旋',
zhouxuan_info:'结束阶段,你可以弃置一张牌并指定一名角色,然后选择一个基本牌的名称或非基本牌的类型。其使用或打出下一张牌时,若此牌的名称或类型和你选择的相同,则你观看牌堆顶的三张牌,然后将这些牌分配给任意角色。',
zhouxuan_info:'出牌阶段限一次,你可以弃置一张牌并指定一名角色,然后选择一个基本牌的名称或非基本牌的类型。其使用或打出下一张牌时,若此牌的名称或类型和你选择的相同,则你观看牌堆顶的三张牌,然后将这些牌分配给任意角色。',
fengji:'丰积',
fengji_info:'锁定技,回合结束时,你记录你的手牌数。回合开始时,若你的手牌数不小于你记录的手牌数,则你摸两张牌且本回合手牌上限为体力上限。',
re_guanqiujian:'手杀毌丘俭',
@ -5653,7 +5675,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
gnjinfan6:'锦帆',
gnjinfan7:'锦帆',
gnjinfan4_backup:'锦帆',
gnjinfan_info:'弃牌阶段开始时,你可将任意张手牌置于武将牌上,称为“铃”(每种花色的“铃”限一张)。当你需要使用或打出一张手牌时,你可以使用或打出一张“铃”。当有“铃”移动到处理区后,你从牌堆中获得与此次移动到第一张“铃”花色相同的一张牌。',
gnjinfan_info:'弃牌阶段开始时,你可将任意张手牌置于武将牌上,称为“铃”(每种花色的“铃”限一张)。当你需要使用或打出一张手牌时,你可以使用或打出一张“铃”。你的回合外,当有“铃”移动到处理区后,你从牌堆中获得与此次移动到第一张“铃”花色相同的一张牌。',
gnsheque:'射却',
gnsheque_info:'一名其他角色的准备阶段开始时,若其装备区内有牌,则你可以对其使用一张【杀】(无距离关系的限制且无视防具)。',
sp_sufei:'SP苏飞',
@ -5668,6 +5690,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
xinwanlan:'挽澜',
xinwanlan_info:'当有角色受到伤害时,若伤害点数大于其体力值,则你可以弃置所有非基本牌(至少两张)并防止此伤害。',
re_xusheng:'手杀徐盛',
re_dongzhuo:'手杀董卓',
rejiuchi:'酒池',
rejiuchi_info:'你可以将一张黑桃手牌当做【酒】使用。锁定技,当你于回合内使用带有【酒】效果的【杀】造成伤害时,你令你的【崩坏】失效直到回合结束。',
}
};
});

View File

@ -7,10 +7,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
refresh_standard:["re_caocao","re_simayi","re_guojia","re_lidian","re_zhangliao","re_xuzhu","re_xiahoudun","re_zhangfei","re_zhaoyun","re_guanyu","re_machao","re_xushu","re_zhouyu","re_lvmeng","re_ganning","re_luxun","re_daqiao","re_huanggai","re_lvbu","re_gongsunzan","re_huatuo","re_liubei","re_diaochan","re_huangyueying","re_sunquan","re_sunshangxiang","re_zhenji","re_zhugeliang","re_huaxiong"],
refresh_feng:['caoren','ol_xiahouyuan','re_huangzhong','ol_weiyan','ol_xiaoqiao','zhoutai','re_zhangjiao','xin_yuji'],
refresh_huo:["ol_sp_zhugeliang","re_xunyu","re_dianwei","re_yanwen","ol_pangtong","ol_yuanshao","ol_pangde","re_taishici"],
refresh_lin:['re_zhurong','re_menghuo','re_dongzhuo','ol_sunjian','re_caopi','re_xuhuang'],
refresh_lin:['re_zhurong','re_menghuo','ol_sunjian','re_caopi','re_xuhuang','ol_dongzhuo'],
refresh_shan:['re_dengai','re_jiangwei','re_caiwenji','ol_liushan','re_zhangzhang','re_zuoci','re_sunce'],
refresh_yijiang1:['re_wuguotai','re_gaoshun','re_caozhi','yujin_yujin','re_lingtong','re_masu','xin_xusheng','xin_fazheng'],
refresh_yijiang2:['old_madai','wangyi','guanzhang','re_handang','re_zhonghui','re_liaohua','re_chengpu','re_caozhang'],
refresh_yijiang2:['old_madai','wangyi','guanzhang','re_handang','re_zhonghui','re_liaohua','re_chengpu','re_caozhang','re_liubiao'],
refresh_yijiang3:['re_jianyong','re_guohuai','re_zhuran'],
refresh_yijiang4:['re_sunluban','re_wuyi'],
refresh_yijiang5:['re_zhangyi','re_quancong'],
@ -18,6 +18,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
connect:true,
character:{
re_liubiao:['male','qun',3,['rezishou','zongshi'],['unseen']],
xin_fazheng:['male','shu',3,['xinenyuan','xinxuanhuo'],['die_audio']],
wangyi:['female','wei',3,['zhenlie','miji']],
old_madai:['male','shu',4,['mashu','qianxi']],
@ -90,7 +91,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
ol_yuanshao:['male','qun',4,['olluanji','olxueyi'],['zhu']],
re_zhurong:['female','shu',4,['juxiang','relieren']],
re_menghuo:['male','shu',4,['huoshou','rezaiqi']],
re_dongzhuo:['male','qun',8,['rejiuchi','roulin','benghuai','baonue'],['zhu']],
ol_dongzhuo:['male','qun',8,['oljiuchi','roulin','benghuai','olbaonue'],['zhu']],
ol_sunjian:['male','wu',4,['gzyinghun','wulie']],
re_caopi:['male','wei',3,['rexingshang','refangzhu','songwei'],['zhu']],
re_dengai:['male','wei',4,['retuntian','zaoxian']],
@ -116,6 +117,124 @@ game.import('character',function(lib,game,ui,get,ai,_status){
sunben:['zhouyu','taishici','daqiao'],
},
skill:{
olbaonue:{
audio:2,
unique:true,
zhuSkill:true,
trigger:{global:'damageSource'},
filter:function(event,player){
if(player==event.source||!event.source||event.source.group!='qun') return false;
return player.hasZhuSkill('olbaonue',event.source);
},
direct:true,
content:function(){
'step 0'
event.count=trigger.num;
'step 1'
event.count--;
trigger.source.chooseBool('是否对'+get.translation(player)+'发动【暴虐】?').set('choice',get.attitude(trigger.source,player)>0);
'step 2'
if(result.bool){
player.logSkill('olbaonue');
trigger.source.line(player,'green')
player.judge(function(card){
if(get.suit(card)=='spade') return 4;
return 0;
});
}
else{
event.finish();
}
'step 3'
if(result.suit=='spade'){
player.recover();
if(get.position(result.card)=='d') player.gain(result.card,'gain2','log')
}
if(event.count) event.goto(1);
}
},
rezishou:{
audio:'zishou',
trigger:{player:'phaseDrawBegin2'},
check:function(event,player){
return player.countCards('h')<=(player.hasSkill('zongshi')?player.maxHp:(player.hp-2))||player.skipList.contains('phaseUse');
},
filter:function(event,player){
return !event.numFixed;
},
content:function(){
trigger.num+=game.countGroup();
player.addTempSkill('rezishou2');
},
ai:{
threaten:1.5
}
},
rezishou2:{
audio:'rezishou',
trigger:{
source:'damageBegin2',
player:'phaseJieshuBegin',
},
forced:true,
filter:function(event,player){
if(event.name=='damage') return event.player!=player;
if(player.getHistory('skipped').contains('phaseUse')) return false;
return player.getHistory('useCard',function(evt){
if(evt.targets&&evt.targets.length&&evt.isPhaseUsing()){
var targets=evt.targets.slice(0);
while(targets.contains(player)) targets.remove(player);
return targets.length>0;
}
return false;
}).length==0;
},
popup:false,
content:function(){
'step 0'
if(trigger.name=='damage'){
player.logSkill('rezishou',trigger.player);
trigger.cancel();
event.finish();
return;
}
else{
var filterTarget=function(card,player,target){
return target!=player&&target.countCards('e',function(card){
return player.isEmpty(get.subtype(card));
});
}
if(game.hasPlayer(function(current){
return filterTarget(null,player,current)
})) player.chooseTarget(filterTarget,'是否将一名其他角色装备区内的一张牌移动到自己的装备区?');
else event.finish();
}
'step 1'
if(result.bool){
var target=result.targets[0];
event.target=target;
player.logSkill('rezishou',target);
player.choosePlayerCard(target,'e','将一张装备牌移至你的装备区').set('filterButton',function(button){
return _status.event.player.isEmpty(get.subtype(button.link));
});
}
else event.finish();
"step 2"
if(result&&result.links&&result.links.length){
game.delay(2);
target.$give(result.links[0],player,false);
player.equip(result.links[0]);
player.addExpose(0.2);
}
},
ai:{
effect:{
player:function(card,player,target){
if(get.tag(card,'damage')) return 'zeroplayertarget';
},
},
},
},
decadepojun:{
shaRelated:true,
audio:2,
@ -155,7 +274,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
if(discard){
event.equip=true;
player.chooseButton(['选择一张牌置入弃牌堆',cards],true).set('ai',function(button){
player.chooseButton(['选择一张牌置入弃牌堆',cards.filter(function(card){
return get.type(card)=='equip';
})],true).set('ai',function(button){
return get.value(button.link,_status.event.getTrigger().target);
});
}
@ -653,8 +774,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
ai:{
effect:{
target:function(card,player){
if(get.tag(card,'respond')&&player.countCards('h')>1) return [1,0.2];
target:function(card,player,target){
if(get.tag(card,'respond')&&target.countCards('h')>1) return [1,0.2];
}
}
}
@ -1987,11 +2108,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return 0;
}
},
effect:{
target:function(card,player,target){
if(target.hp==target.maxHp&&get.tag(card,'damage')) return 0.2;
}
}
}
},
sishu:{
@ -3441,8 +3557,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
ai:{
effect:{
target:function (card,player){
if(get.tag(card,'respond')&&player.countCards('h')>1) return [1,0.2];
target:function (card,player,target){
if(get.tag(card,'respond')&&target.countCards('h')>1) return [1,0.2];
},
},
},
@ -5502,8 +5618,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
ai:{
effect:{
target:function(card,player){
if(get.tag(card,'respond')&&player.countCards('h')>1) return [1,0.2];
target:function(card,player,target){
if(get.tag(card,'respond')&&target.countCards('h')>1) return [1,0.2];
}
}
}
@ -5793,6 +5909,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(!result.bool){
trigger.getParent().directHit.add(trigger.target);
}
},
ai:{
ignoreSkill:true,
skillTagFilter:function(player,tag,arg){
if(!arg||arg.isLink||!arg.card||arg.card.name!='sha') return false;
if(!arg.target||get.attitude(player,arg.target)>=0) return false;
if(!arg.skill||!lib.skill[arg.skill]||lib.skill[arg.skill].charlotte||get.is.locked(arg.skill)||!arg.target.getSkills(true,false).contains(arg.skill)) return false;
},
}
},
reyicong:{
@ -6513,7 +6637,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
effect:{
target:function (card,player,target){
if(get.tag(card,'damage')){
if(player.hasSkillTag('jueqing',false,target)) return [1,-2];
if(player.hasSkillTag('jueqing',false,target)) return [1,-1.5];
if(target.hp<=1) return;
if(!target.hasFriend()) return;
var hastarget=false;
@ -6566,31 +6690,46 @@ game.import('character',function(lib,game,ui,get,ai,_status){
game.delay();
},
},
rejiuchi:{
group:['jiuchi'],
audioname:['re_dongzhuo'],
trigger:{source:'damage'},
forced:true,
popup:false,
locked:false,
oljiuchi:{
mod:{
cardUsable:function(card,player,num){
if(card.name=='jiu') return Infinity;
},
},
audio:'jiuchi',
audioname:['ol_dongzhuo'],
enable:'chooseToUse',
filterCard:function(card){
return get.suit(card)=='spade';
},
viewAs:{name:'jiu'},
viewAsFilter:function(player){
if(!player.countCards('h',{suit:'spade'})) return false;
return true;
},
prompt:'将一张黑桃手牌当酒使用',
check:function(card){
if(_status.event.type=='dying') return 1;
return 4-get.value(card);
},
ai:{
skillTagFilter:function(player){
return player.countCards('h',{suit:'spade'})>0&&player.hp<=0;
},
threaten:1.5,
save:true,
},
trigger:{source:'damageEnd'},
forced:true,
filter:function(event,player){
return event.card&&event.card.name=='sha'&&event.getParent(2).jiu==true&&!player.hasSkill('rejiuchi_air');
if(event.name=='chooseToUse') return player.countCards('h',{suit:'spade'})>0;
return event.card&&event.card.name=='sha'&&event.getParent(2).jiu==true&&!player.hasSkill('oljiuchi_air');
},
content:function(){
player.logSkill('jiuchi');
player.addTempSkill('rejiuchi_air');
player.addTempSkill('oljiuchi_air');
},
subSkill:{
air:{
sub:true,
init:function(player,skill){
player.disableSkill(skill,'benghuai');
},
onremove:function(player,skill){
player.enableSkill(skill);
},
},
air:{},
},
},
relieren:{
@ -6942,11 +7081,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
rexinsheng_info:'当你受到1点伤害后你可以获得一张新的化身牌。',
re_zhurong:'界祝融',
re_menghuo:'界孟获',
re_dongzhuo:'界董卓',
re_sunjian:'手杀孙坚',
re_caopi:'界曹丕',
rejiuchi:'酒池',
rejiuchi_info:'你可以将一张黑桃手牌当做【酒】使用。锁定技,当你于回合内使用带有【酒】效果的【杀】造成伤害,你令你的【崩坏】失效直到回合结束。',
oljiuchi:'酒池',
oljiuchi_info:'你可以将一张黑桃手牌当做【酒】使用。锁定技,你使用【酒】无次数限制,且当你于回合内使用带有【酒】效果的【杀】造成伤害,你令你的【崩坏】失效直到回合结束。',
repolu:'破虏',
repolu_info:'当你杀死一名角色/死亡时你可以令任意名角色摸X+1张牌。X为你此前发动过【破虏】的次数',
rexingshang:'行殇',
@ -7066,11 +7204,18 @@ game.import('character',function(lib,game,ui,get,ai,_status){
xin_xusheng:'界徐盛',
decadepojun:'破军',
decadepojun2:'破军',
decadepojun_info:'当你使用【杀】指定目标后你可以将其的至多X张牌置于其武将牌上X为其体力值。若这些牌中有装备牌你将这些牌中的一张置于弃牌堆;有锦囊牌,你摸一张牌。其于回合结束时获得其武将牌上的这些牌。',
decadepojun_info:'当你使用【杀】指定目标后你可以将其的至多X张牌置于其武将牌上X为其体力值。若这些牌中有装备牌你将这些装备牌中的一张置于弃牌堆;有锦囊牌,你摸一张牌。其于回合结束时获得其武将牌上的这些牌。',
old_madai:'界马岱',
wangyi:'界王异',
guanzhang:'界关兴张苞',
xin_fazheng:'界法正',
re_liubiao:'界刘表',
rezishou:'自守',
rezishou2:'自守',
rezishou_info:'摸牌阶段你可以多摸X张牌然后本回合你对其他角色造成伤害时防止此伤害。结束阶段若你本回合没有使用牌指定其他角色为目标你可以将场上一张装备牌移动到自己的装备区。X为场上势力数',
ol_dongzhuo:'界董卓',
olbaonue:'暴虐',
olbaonue_info:'主公技其他群雄角色造成1点伤害后其可进行判定若为♠你回复1点体力并获得判定牌。',
refresh_standard:'界限突破·标',
refresh_feng:'界限突破·风',

View File

@ -4684,7 +4684,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
roulin:{
audio:2,
audioname:['re_dongzhuo'],
audioname:['re_dongzhuo','ol_dongzhuo'],
trigger:{player:'useCardToPlayered',target:'useCardToTargeted'},
forced:true,
filter:function(event,player){
@ -4711,14 +4711,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
benghuai:{
audio:2,
audioname:['zhugedan','re_dongzhuo'],
audioname:['zhugedan','re_dongzhuo','ol_dongzhuo'],
trigger:{player:'phaseJieshuBegin'},
forced:true,
check:function(){
return false;
},
filter:function(event,player){
return !player.isMinHp();
return !player.isMinHp()&&!player.hasSkill('rejiuchi_air')&&!player.hasSkill('oljiuchi_air');
},
content:function(){
"step 0"

View File

@ -17,6 +17,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
characterFilter:{},
character:{
//caoshuang:['male','wei',4,['tuogu','shanzhuan']],
ol_zhangchangpu:['female','wei',3,['yanjiao','olxingshen']],
zhangling:['male','qun',4,['zlhuji','zlshoufu'],['unseen']],
caiyang:['male','qun',1,['yinka'],['forbidai','unseen']],
@ -150,6 +151,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
//kaisa:["male","western",4,["zhengfu"]],
},
characterIntro:{
caoshuang:'曹爽249年2月9日字昭伯沛国谯县今安徽亳州市人。三国时期魏国权臣大司马曹真长子。曹爽体态肥胖凭借宗室身份出入宫廷交好太子曹叡。魏明帝即位起家员外散骑侍郎累迁城门校尉、散骑常侍转武卫将军。太和五年231年袭封邵陵侯。景初三年239年魏明帝曹叡病危拜大将军、假黄钺与司马懿并为托孤大臣。少帝曹芳即位加侍中改封武安侯。势倾四海声震天下。任用私人专权乱政侵吞公产。伐蜀失败虚耗国力。起居逾制软禁郭太后。正始十年太傅司马懿发动高平陵政变掌握魏国大权。曹爽失去大将军职务以谋反之罪处死夷灭三族。',
zhangling:'张道陵34年2月22日—156年字辅汉原名陵道教正一道实际创立者汉朝东汉时期丰邑今江苏徐州丰县人。太上老君降临蜀地“授以三天正法命为天师”张道陵整合当时的黄老派、方仙道、文始派等先秦修道团体创立道教称正一盟威之道。后世尊称为“老祖天师”、“正一真人”、“三天扶教大法师”、高明上帝、张天师。著作《老子想尔注》弟子有3000多人设立24治奠基天师道。张道陵、葛玄、许逊、萨守坚合称四大天师。张道陵创建道教的背景当时在巴蜀一带原有巴人信奉原始巫教大规模的淫祀而害民。而这些祀奉鬼妖学名为妖邪的法教巫师聚众敛财无恶不作。张天师携王长、赵升二位弟子和黄帝九鼎丹经来到北邙山修行平定了那些祸害百姓的巫妖之教。川渝一带流传的张天师以太上老君剑印符箓大破鬼兵的故事就是以此为原型的。',
caiyang:'蔡阳201年又作蔡扬东汉丞相曹操部下武将汝南太守。于建安六年201奉曹操之命攻击与刘备联合的汝南贼龚都等人兵败被刘备所杀。明代小说《三国演义》改编为“云长擂鼓斩蔡阳”。',
pujing:'湖北省当阳境内有一座山,名叫玉泉山。东汉建安末年,山上住着一个老和尚,法名普净,普净原来是沂水关镇国寺方丈,后因云游天下,来到此处,风这地方山明水秀,就于山中结草为庵,每天坐禅参道,身边只有一个小和尚,外出化一些斋饭,供养师父。在《三国演义》中,当关羽通过汜水关时,正是由于普净提醒,关羽才揭穿了卞喜的阴谋,并杀死了卞喜。关羽死后,其怨魂亦在普净的指点下醒悟,放下了心中的仇恨,专心致力于造福一方百姓。',
@ -398,8 +400,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
'step 0'
var next=player.draw();
if(get.isLuckyStar(player)||Math.random()<0.5) next.num=2;
player.storage.olxingshen=player.getDamagedHp();
player[player.storage.olxingshen?'markSkill':'unmarkSkill']('olxingshen');
var num=player.countMark('olxingshen');
if(num<6) player.addMark('olxingshen',Math.max(6-num,player.getDamagedHp()),false)
},
intro:{
content:'下一次发动〖严教〗时多展示X张牌',
@ -6640,7 +6642,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
xinzhengnan:{
audio:'zhengnan',
trigger:{global:'dying'},
forced:true,
frequent:true,
filter:function(event,player){
return !player.storage.xinzhengnan||!player.storage.xinzhengnan.contains(event.player);
},
@ -14587,7 +14589,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
zhengnan:'征南',
zhengnan_info:'其他角色死亡后,你可以摸三张牌并获得下列技能中的任意一个:〖武圣〗、 〖当先〗和〖制蛮〗。',
xinzhengnan:'征南',
xinzhengnan_info:'锁定技,当一名角色进入濒死状态时若你未因其发动过〖征南〗则你回复1点体力并摸一张牌并获得下列技能中的任意一个〖武圣〗、 〖当先〗和〖制蛮〗(若技能全部拥有则改为摸三张牌。你以此法获得的〖当先〗结算时视为已发动过〖伏枥〗)。',
xinzhengnan_info:'当一名角色进入濒死状态时若你未因其发动过〖征南〗则你回复1点体力并摸一张牌并获得下列技能中的任意一个〖武圣〗、 〖当先〗和〖制蛮〗(若技能全部拥有则改为摸三张牌。你以此法获得的〖当先〗结算时视为已发动过〖伏枥〗)。',
xiefang:'撷芳',
xiefang_info:'锁定技,你计算与其他角色的距离时-X。X为女性角色数',
qizhi:'奇制',
@ -14961,7 +14963,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
zlshoufu_info:'出牌阶段限一次你可摸一张牌然后将一张手牌置于一名没有【箓】的角色的武将牌上称为【箓】其不能使用和打出与【箓】同类型的牌。该角色受伤后或于弃牌阶段弃置至少2张与【箓】同类型的牌后将【箓】置入弃牌堆。',
ol_zhangchangpu:'OL张昌蒲',
olxingshen:'省身',
olxingshen_info:'当你受到伤害后你可以随机摸两张牌。若如此做你移去所有“省”并获得X个“省”且下一次发动〖严教〗展示牌时移去所有“省”并多展示等量的牌。X为你已损失的体力值',
olxingshen_info:'当你受到伤害后你可以随机摸两张牌。若如此做你获得X个“省”且下一次发动〖严教〗展示牌时移去所有“省”并多展示等量的牌。X为你已损失的体力值且你至多拥有6个“省”',
caoshuang:'曹爽',
tuogu:'托孤',
tuogu_info:'限定技,一名角色死亡时,你可以令其选择其武将牌上的一个技能(主公技,限定技,觉醒技等特殊技能除外),然后你获得其选择的技能。',
shanzhuan:'擅专',
shanzhuan_info:'当你对其他角色造成伤害后,你可以将其判定区的一张牌置于其的判定区。若此牌不为延时锦囊牌且此牌为:红色,此牌视为【乐不思蜀】;黑色,此牌视为【兵粮寸断】。',
sp_default:"常规",
sp_zhongdan:"忠胆英杰",

View File

@ -4,6 +4,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
name:'sp2',
connect:true,
character:{
caoxing:['male','qun',4,['cxliushi','zhanwan'],['unseen']],
re_maliang:['male','shu',3,['rexiemu','heli'],['unseen']],
ol_yujin:['male','wei',4,['rezhenjun']],
ol_xinxianying:['female','wei',3,['caishi','zhongjian']],
@ -58,12 +59,69 @@ game.import('character',function(lib,game,ui,get,ai,_status){
sp_zizouqi:["mangyachang","xugong","zhangchangpu"],
sp_sbfm:["lisu","xinpi","zhangwen"],
sp_shengun:["puyuan","guanlu","gexuan","xushao"],
sp_baigei:['re_panfeng','xingdaorong'],
sp_baigei:['re_panfeng','xingdaorong','caoxing'],
sp_guandu:["sp_zhanghe","xunchen","sp_shenpei","gaolan","lvkuanglvxiang","chunyuqiong","sp_xuyou"],
sp_decade:['wulan','leitong','huaman','wangshuang','wenyang','liuzan','re_sunluyu','caobuxing','ol_xinxianying','ol_yujin','re_maliang'],
}
},
skill:{
cxliushi:{
enable:'phaseUse',
filter:function(event,player){
return player.countCards('he',{suit:'heart'})>0;
},
filterCard:{suit:'heart'},
position:'he',
filterTarget:function(card,player,target){
return player.canUse('sha',target);
},
discard:false,
prepare:'throw',
content:function(){
"step 0"
cards[0].fix();
ui.cardPile.insertBefore(cards[0],ui.cardPile.firstChild);
game.updateRoundNumber();
player.useCard({name:'sha',isCard:true},false,targets);
"step 1"
if(target.getHistory('damage',function(evt){
var evt2=evt.getParent('useCard');
return evt.card==evt2.card&&evt2.getParent()==event;
}).length){
target.addSkill('cxliushi2');
target.addMark('cxliushi2',1,false);
}
},
},
cxliushi2:{
mod:{
maxHandcard:function(player,num){
return num-player.countMark('cxliushi2');
},
},
onremove:true,
intro:{
content:'手牌上限-#',
},
},
zhanwan:{
trigger:{global:'phaseDiscardEnd'},
forced:true,
filter:function(event,player){
return event.player.hasSkill('cxliushi2')&&event.player.getHistory('lose',function(evt){
if(evt.type=='discard'&&evt.getParent('phaseDiscard')==event) return true;
}).length>0;
},
logTarget:'player',
content:function(){
trigger.player.removeSkill('cxliushi2');
var num=0;
trigger.player.getHistory('lose',function(evt){
if(evt.type=='discard'&&evt.getParent('phaseDiscard')==trigger) num+=evt.cards2.length;
});
player.draw(num);
},
},
rexiemu:{
audio:2,
trigger:{player:'phaseJieshuBegin'},
@ -1474,7 +1532,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}).length>0
});
if(player==target&&bool) player.draw(2);
else if(player!=target&&!bool) player.chooseToDiscard('he',2,true);
else if(player!=target&&!bool) player.chooseToDiscard('h',2,true);
},
ai:{
order:function(){
@ -4500,7 +4558,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
'step 1'
if(result.bool){
player.logSkill('xinfu_bijing');
player.showCards(result.cards);
//player.showCards(result.cards);
player.storage.xinfu_bijing=result.cards[0];
}
},
@ -5186,7 +5244,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
"xinfu_tunan":"图南",
"xinfu_tunan_info":"出牌阶段限一次,你可以展示牌堆顶的一张牌并选择一名其他角色,然后该角色选择一项:使用此牌(无距离限制);或将此牌当普通【杀】使用。",
"xinfu_bijing":"闭境",
"xinfu_bijing_info":"结束阶段,你可以展示一张手牌并标记为“闭境”。若你于回合外失去“闭境”牌,则当前回合角色的弃牌阶段开始时,其需弃置两张牌。你的准备阶段,弃置手牌中的“闭境”牌。",
"xinfu_bijing_info":"结束阶段,你可以选择一张手牌并标记为“闭境”。若你于回合外失去“闭境”牌,则当前回合角色的弃牌阶段开始时,其需弃置两张牌。你的准备阶段,弃置手牌中的“闭境”牌。",
"xinfu_zhenxing":"镇行",
"xinfu_zhenxing_info":"结束阶段开始时或当你受到伤害后,你可以观看牌堆顶的至多三张牌,然后你获得其中与其余牌花色均不相同的一张牌。",
"xinfu_qianxin":"遣信",
@ -5357,7 +5415,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
wlcuorui_info:'出牌阶段开始时你可以弃置你或队友区域里的一张牌。若如此做你选择一项1.弃置对手装备区里至多两张与此牌颜色相同的牌2.展示对手的共计两张手牌,然后获得其中与此牌颜色相同的牌。',
re_panfeng:'潘凤',
xinkuangfu:'狂斧',
xinkuangfu_info:'出牌阶段限一次你可选择1弃置装备区里的一张牌你使用无对应实体牌的普【杀】。若此【杀】造成伤害你摸两张牌。2弃置一名其他角色装备区里的一张牌你使用无对应实体牌的普【杀】。若此【杀】未造成伤害你弃置两张牌。',
xinkuangfu_info:'出牌阶段限一次你可选择1弃置装备区里的一张牌你使用无对应实体牌的普【杀】。若此【杀】造成伤害你摸两张牌。2弃置一名其他角色装备区里的一张牌你使用无对应实体牌的普【杀】。若此【杀】未造成伤害你弃置两张牌。',
xingdaorong:'邢道荣',
xuxie:'虚猲',
xuxie_info:'出牌阶段开始时你可以减1点体力上限并选择所有与你距离为1的角色弃置这些角色的各一张牌或令这些角色各摸一张牌。出牌阶段结束时若你的体力上限为全场最少则你加1点体力上限。',
@ -5423,7 +5481,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
rexiemu_info:'结束阶段,若全场没有“协穆”标记,你可以选择一名角色获得“协穆”标记直到你的下回合开始。你或该角色在各自的回合外使用或打出手牌时,你与其各摸一张牌(每回合限一次)。',
heli:'贺励',
heli_info:'出牌阶段限一次,你可以选择手牌数比你少的一名其他角色。该角色展示所有手牌,然后每缺少一种类型的牌,便从牌堆中随机获得一张此类型的牌。',
caoxing:'曹性',
cxliushi:'流矢',
cxliushi2:'流矢',
cxliushi_info:'出牌阶段,你可以将一张红桃牌置于牌堆顶,视为对一名角色使用一张不计入次数的【杀】。若此【杀】造成伤害,该角色手牌上限永久-1。',
zhanwan:'斩腕',
zhanwan_info:'锁定技,受到【流矢】效果影响的角色若弃牌阶段有弃牌,你摸等量的牌,然后移除【流矢】的效果。',
sp_whlw:"文和乱武",
sp_zlzy:"逐鹿中原",

View File

@ -2558,7 +2558,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return '摸牌';
}
return 'cancel2';
}).set('prompt',get.prompt('new_jiangchi')).set('prompt2',get.translation('new_jiangchi_info'));
}).set('prompt',get.prompt2('new_jiangchi'));
"step 1"
if(result.control=='弃牌'){
player.chooseToDiscard(true,'he');
@ -2567,11 +2567,31 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
else if(result.control=='摸牌'){
player.draw();
player.addTempSkill('jiangchi3','phaseUseEnd');
player.addTempSkill('new_jiangchi3','phaseEnd');
player.logSkill('new_jiangchi');
}
},
},
new_jiangchi3:{
mod:{
cardEnabled:function(card){
if(card.name=='sha') return false;
},
cardRespondable:function(card){
if(card.name=='sha') return false;
},
ignoredHandcard:function(card,player){
if(get.name(card)=='sha'){
return true;
}
},
cardDiscardable:function(card,player,name){
if(name=='phaseDiscard'&&get.name(card)=='sha'){
return false;
}
},
},
},
"xinfu_jijie":{
enable:"phaseUse",
usable:1,
@ -2793,7 +2813,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
yaowu:'耀武',
yaowu_info:'锁定技一名角色使用红色【杀】对你造成伤害时该角色回复1点体力或摸一张牌。',
"new_jiangchi":"将驰",
"new_jiangchi_info":"摸牌阶段结束时你可以选择一项1、摸一张牌若如此做你本回合内不能使用或打出【杀】。 2、弃置一张牌若如此做出牌阶段你使用【杀】无距离限制且你可以额外使用一张【杀】直到回合结束。",
"new_jiangchi_info":"摸牌阶段结束时你可以选择一项1、摸一张牌若如此做你本回合内不能使用或打出【杀】且【杀】不计入手牌上限。 2、弃置一张牌若如此做出牌阶段你使用【杀】无距离限制且你可以额外使用一张【杀】直到回合结束。",
"xinfu_jijie":"机捷",
"xinfu_jijie_info":"出牌阶段限一次。你可以观看牌堆底的一张牌,然后将其交给一名角色。",
"xinfu_jiyuan":"急援",

View File

@ -1,5 +1,5 @@
window.noname_asset_list=[
'v1.9.103',
'v1.9.103.2',
'audio/background/aozhan_chaoming.mp3',
'audio/background/aozhan_online.mp3',
'audio/background/aozhan_rewrite.mp3',
@ -3235,6 +3235,7 @@ window.noname_asset_list=[
'image/character/xin_xusheng.jpg',
'image/character/key_kaori.jpg',
'image/character/key_shiori.jpg',
'image/character/ol_dongzhuo.jpg',
'image/character/baiwuchang.jpg',
'image/character/baosanniang.jpg',

View File

@ -16285,7 +16285,25 @@
game.playerMap[this.playerid]=this;
return this;
},
emotion:function(pack,id){
var str='<img src="##assetURL##image/emotion/'+pack+'/'+id+'.gif" width="50" height="50">';
lib.element.player.say.call(this,str);
game.broadcast(function(id,str){
if(lib.playerOL[id]){
lib.playerOL[id].say(str);
}
else if(game.connectPlayers){
for(var i=0;i<game.connectPlayers.length;i++){
if(game.connectPlayers[i].playerid==id){
lib.element.player.say.call(game.connectPlayers[i],str);
return;
}
}
}
},this.playerid,str);
},
chat:function(str){
if(str&&str.indexOf('http')!=-1) return;
lib.element.player.say.call(this,str);
game.broadcast(function(id,str){
if(lib.playerOL[id]){
@ -25524,6 +25542,29 @@
}
}
},
emotion:function(id,pack,emotion){
var that=this;
if(!this.id||(!lib.playerOL[this.id]&&(!game.connectPlayers||!function(){
for(var i=0;i<game.connectPlayers.length;i++){
if(game.connectPlayers[i].playerid==that.id){
return true;
}
}
return false;
}()))) return;
var player;
if(lib.playerOL[id]){
player=lib.playerOL[id];
}
else if(game.connectPlayers){
for(var i=0;i<game.connectPlayers.length;i++){
if(game.connectPlayers[i].playerid==id){
player=game.connectPlayers[i];break;
}
}
}
if(player) lib.element.player.emotion.apply(player,[pack,emotion]);
},
chat:function(id,str){
var that=this;
if(!this.id||(!lib.playerOL[this.id]&&(!game.connectPlayers||!function(){
@ -42907,11 +42948,11 @@
}
}
else{
var num=0;
for(var i of game.connectPlayers){
var num=0;
if(!i.nickname&&!i.classList.contains('unselectable2')) i++;
if(!i.nickname&&!i.classList.contains('unselectable2')) num++;
}
if(i>=lib.configOL.number-1){
if(num>=lib.configOL.number-1){
alert('至少要有两名玩家才能开始游戏!');
return;
}
@ -44061,7 +44102,6 @@
for(var j=1;j<=lib.emotionList[this.pack];j++){
var emotionButton=ui.create.div('.card.fullskin','<img src="'+lib.assetURL+'image/emotion/'+this.pack+'/'+j+'.gif" width="50" height="50">',function(){
var player=game.me;
var str='<img src="##assetURL##image/emotion/'+this.pack+'/'+this.emotionID+'.gif" width="50" height="50">';
if(!player){
if(game.connectPlayers){
if(game.online){
@ -44078,10 +44118,10 @@
}
if(!player) return;
if(game.online){
game.send('chat',game.onlineID,str);
game.send('emotion',game.onlineID,this.pack,this.emotionID);
}
else{
lib.element.player.chat.call(player,str);
lib.element.player.emotion.apply(player,[this.pack,this.emotionID]);
}
});
emotionButton.emotionID=j;
@ -50800,7 +50840,153 @@
}
return eff;
}
return get.effect.apply(this,arguments);
var result=get.result(card,eventskill);
var result1=result.player_use||result.player,result2=result.target_use||result.target;
if(typeof result1=='function') result1=result1(player,target,card,isLink);
if(typeof result2=='function') result2=result2(player,target,card,isLink);
if(typeof result1!='number') result1=0;
if(typeof result2!='number') result2=0;
var temp1,temp2,temp3,temp01=0,temp02=0,threaten=1;
var skills1=player.getSkills().concat(lib.skill.global);
game.expandSkills(skills1);
var zerotarget=false,zeroplayer=false;
for(var i=0;i<skills1.length;i++){
temp1=get.info(skills1[i]).ai;
if(temp1&&typeof temp1.effect=='object'&&typeof temp1.effect.player=='function'){
temp1=temp1.effect.player(card,player,target,result1,isLink);
}
else temp1=undefined;
if(typeof temp1=='object'){
if(temp1.length==2||temp1.length==4){
result1*=temp1[0];
temp01+=temp1[1];
}
if(temp1.length==4){
result2*=temp1[2];
temp02+=temp1[3];
}
}
else if(typeof temp1=='number'){
result1*=temp1;
}
else if(temp1=='zeroplayer'){
zeroplayer=true;
}
else if(temp1=='zerotarget'){
zerotarget=true;
}
else if(temp1=='zeroplayertarget'){
zeroplayer=true;
zerotarget=true;
}
}
if(target){
var skills2=target.getSkills().concat(lib.skill.global);
game.expandSkills(skills2);
for(var i=0;i<skills2.length;i++){
temp2=get.info(skills2[i]).ai;
if(temp2&&temp2.threaten) temp3=temp2.threaten;
else temp3=undefined;
if(temp2&&typeof temp2.effect=='function'){
if(!player.hasSkillTag('ignoreSkill',true,{
card:card,
target:target,
skill:skills2[i],
isLink:isLink,
})) temp2=temp2.effect(card,player,target,result2,isLink);
else temp2=undefined;
}
else if(temp2&&typeof temp2.effect=='object'&&typeof temp2.effect.target=='function'){
if(!player.hasSkillTag('ignoreSkill',true,{
card:card,
target:target,
skill:skills2[i],
isLink:isLink,
})) temp2=temp2.effect.target(card,player,target,result2,isLink);
else temp2=undefined;
}
else temp2=undefined;
if(typeof temp2=='object'){
if(temp2.length==2||temp2.length==4){
result2*=temp2[0];
temp02+=temp2[1];
}
if(temp2.length==4){
result1*=temp2[2];
temp01+=temp2[3];
}
}
else if(typeof temp2=='number'){
result2*=temp2;
}
else if(temp2=='zeroplayer'){
zeroplayer=true;
}
else if(temp2=='zerotarget'){
zerotarget=true;
}
else if(temp2=='zeroplayertarget'){
zeroplayer=true;
zerotarget=true;
}
if(typeof temp3=='function'&&temp3(player,target)!=undefined){
threaten*=temp3(player,target);
}
else if(typeof temp3=='object'){
if(typeof temp3.target=='number'){
threaten*=temp3;
}
else if(typeof temp3.target=='function'&&temp3(player,target)!=undefined){
threaten*=temp3(player,target);
}
}
else if(typeof temp3=='number'){
threaten*=temp3;
}
}
result2+=temp02;
result1+=temp01;
if(get.attitude(player,target)<0){
result2*=Math.sqrt(threaten);
}
else{
result2*=Math.sqrt(Math.sqrt(threaten));
}
if(target.hp==1) result2*=2.5;
if(target.hp==2) result2*=1.8;
if(target.countCards('h')==0){
if(get.tag(card,'respondSha')||get.tag(card,'respondShan')){
result2*=1.7;
}
else{
result2*=1.5;
}
}
if(target.countCards('h')==1) result2*=1.3;
if(target.countCards('h')==2) result2*=1.1;
if(target.countCards('h')>3) result2*=0.5;
if(target.hp==4) result2*=0.9;
if(target.hp==5) result2*=0.8;
if(target.hp>5) result2*=0.6;
}
else{
result2+=temp02;
result1+=temp01;
}
if(zeroplayer) result1=0;
if(zerotarget) result2=0;
var final=0;
if(player2){
final=(result1*get.attitude(player2,player)+(target?result2*get.attitude(player2,target):0));
}
else final=(result1*get.attitude(player,player)+(target?result2*get.attitude(player,target):0));
if(!isLink&&get.tag(card,'natureDamage')&&target.isLinked()&&!zerotarget){
game.countPlayer(function(current){
if(current!=target&&current.isLinked()) final+=get.effect(current,card,player,player2,true);
})
}
return final;
},
effect:function(target,card,player,player2,isLink){
var event=_status.event;
@ -50865,10 +51051,22 @@
if(temp2&&temp2.threaten) temp3=temp2.threaten;
else temp3=undefined;
if(temp2&&typeof temp2.effect=='function'){
temp2=temp2.effect(card,player,target,result2,isLink);
if(!player.hasSkillTag('ignoreSkill',true,{
card:card,
target:target,
skill:skills2[i],
isLink:isLink,
})) temp2=temp2.effect(card,player,target,result2,isLink);
else temp2=undefined;
}
else if(temp2&&typeof temp2.effect=='object'&&typeof temp2.effect.target=='function'){
temp2=temp2.effect.target(card,player,target,result2,isLink);
if(!player.hasSkillTag('ignoreSkill',true,{
card:card,
target:target,
skill:skills2[i],
isLink:isLink,
})) temp2=temp2.effect.target(card,player,target,result2,isLink);
else temp2=undefined;
}
else temp2=undefined;
if(typeof temp2=='object'){

View File

@ -1,11 +1,8 @@
window.noname_update={
version:'1.9.103.1',
update:'1.9.103',
version:'1.9.103.2',
update:'1.9.103.1',
changeLog:[
'SP仲村由理',
'美坂栞、美坂香里',
'新神关羽',
'武将分包调整',
'界董卓',
'bug修复',
],
@ -13,7 +10,7 @@ window.noname_update={
//'card/extra.js',
//'card/huanlekapai.js',
//'card/sp.js',
//'card/standard.js',
'card/standard.js',
//'card/swd.js',
//'card/mtg.js',
//'card/gujian.js',
@ -28,15 +25,15 @@ window.noname_update={
//'character/gujian.js',
//'character/gwent.js',
//'character/hearth.js',
//'character/mobile.js',
'character/mobile.js',
//'character/mtg.js',
//'character/old.js',
//'character/refresh.js',
'character/refresh.js',
'character/shenhua.js',
//'character/sp.js',
//'character/sp2.js',
'character/sp.js',
'character/sp2.js',
//'character/tw.js',
//'character/standard.js',
'character/standard.js',
//'character/swd.js',
//'character/xianjian.js',
//'character/xinghuoliaoyuan.js',
@ -45,14 +42,14 @@ window.noname_update={
//'extension/boss/extension.js',
//'layout/default/layout.css',
//'layout/nova/layout.css',
//'mode/identity.js',
'mode/identity.js',
//'mode/doudizhu.js',
//'mode/guozhan.js',
//'mode/chess.js',
//'mode/tafang.js',
//'mode/single.js',
//'mode/stone.js',
//'mode/brawl.js',
'mode/stone.js',
'mode/brawl.js',
//'mode/versus.js',
//'mode/boss.js',
'game/game.js',

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

View File

@ -3240,6 +3240,25 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
},
},
},
{
name:'Day Game',
place:[false,true,true,false],
character:['key_yuzuru','sp_key_kanade','key_ayato','key_hinata'],
lib:{
character:{
key_yuzuru:['male','key',4,['hinata_qiulve','kurou']],
sp_key_kanade:['female','key',3,['hinata_qiulve','benxi'],[]],
key_ayato:['male','key',3,['hinata_qiulve','retieji']],
key_hinata:['female','key',4,['hinata_qiulve','hinata_ehou']],
},
translate:{
key_yuzuru:'新秀球王',
sp_key_kanade:'学生会长',
key_ayato:'副会长',
key_hinata:'球队领袖',
},
},
},
]
game.liangjunduilei=list;
game.chooseCharacterTwo=function(){

View File

@ -1079,7 +1079,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
list.remove('shen');
if(list.length) player.group=function(){
if(_status.mode!='zhong'&&game.zhu&&game.zhu.group){
if(['re_zhangjiao','liubei','re_liubei','caocao','re_caocao','sunquan','re_sunquan','zhangjiao','sp_zhangjiao','caopi','re_caopi','liuchen','caorui','sunliang','sunxiu','sunce','re_sunben','ol_liushan','re_liushan','key_akane'].contains(game.zhu.name)) return game.zhu.group;
if(['re_zhangjiao','liubei','re_liubei','caocao','re_caocao','sunquan','re_sunquan','zhangjiao','sp_zhangjiao','caopi','re_caopi','liuchen','caorui','sunliang','sunxiu','sunce','re_sunben','ol_liushan','re_liushan','key_akane','dongzhuo','re_dongzhuo','ol_dongzhuo'].contains(game.zhu.name)) return game.zhu.group;
if(game.zhu.name=='sunhao'&&player.identity=='zhong') return 'wu';
if(game.zhu.name=='yl_yuanshu'){
if(player.identity=='zhong') list.remove('qun');