This commit is contained in:
Spmario233 2019-10-19 19:18:56 +08:00 committed by GitHub
parent 23bac9acd6
commit 4ddb7a622d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
55 changed files with 1497 additions and 142 deletions

Binary file not shown.

BIN
audio/card/female/caomu.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/card/female/fulei.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/card/female/qijia.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/card/male/caomu.mp3 Normal file

Binary file not shown.

BIN
audio/card/male/chiling.mp3 Normal file

Binary file not shown.

Binary file not shown.

BIN
audio/card/male/fulei.mp3 Normal file

Binary file not shown.

Binary file not shown.

BIN
audio/card/male/jinchan.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/card/male/qijia.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/card/male/zengbin.mp3 Normal file

Binary file not shown.

View File

@ -718,6 +718,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
content:function(){
if(!trigger.baseDamage) trigger.baseDamage=1;
trigger.baseDamage+=player.storage.jiu;
trigger.jiu=true;
game.broadcastAll(function(player){
player.removeSkill('jiu');
},player);

View File

@ -5,6 +5,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
connect:true,
card:{
liulongcanjia:{
audio:true,
mode:['guozhan'],
fullskin:true,
type:'equip',
@ -36,6 +37,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
},
},
minguangkai:{
audio:true,
mode:['guozhan'],
fullskin:true,
type:'equip',
@ -49,6 +51,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
}
},
dinglanyemingzhu:{
audio:true,
mode:['guozhan'],
fullskin:true,
type:'equip',
@ -75,6 +78,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
}
},
feilongduofeng:{
audio:true,
mode:['guozhan'],
fullskin:true,
type:'equip',
@ -101,6 +105,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
}
},
taipingyaoshu:{
audio:true,
mode:['guozhan'],
fullskin:true,
type:'equip',
@ -132,6 +137,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
}
},
yuxi:{
audio:true,
mode:['guozhan'],
fullskin:true,
type:'equip',
@ -142,6 +148,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
}
},
xietianzi:{
audio:true,
fullskin:true,
type:'trick',
enable:function(card,player,event){
@ -177,6 +184,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
}
},
shuiyanqijunx:{
audio:'shuiyanqijun',
fullskin:true,
type:'trick',
filterTarget:function(card,player,target){
@ -227,6 +235,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
},
lulitongxin:{
fullskin:true,
audio:true,
type:'trick',
enable:function(card,player){
return game.hasPlayer(function(current){
@ -275,6 +284,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
},
lianjunshengyan:{
fullskin:true,
audio:true,
type:'trick',
enable:function(card,player){
if(get.mode()=='guozhan') return !player.isUnseen();
@ -364,6 +374,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
},
chiling:{
fullskin:true,
audio:true,
type:'trick',
enable:true,
mode:['guozhan'],
@ -436,6 +447,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
},
diaohulishan:{
fullskin:true,
audio:true,
type:'trick',
enable:true,
global:'g_diaohulishan',
@ -484,6 +496,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
},
huoshaolianying:{
fullskin:true,
audio:true,
type:'trick',
filterTarget:function(card,player,target){
if(get.mode()=='guozhan'){

View File

@ -5,6 +5,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
connect:true,
card:{
jinchan:{
audio:true,
fullskin:true,
type:'trick',
notarget:true,
@ -39,6 +40,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
}
},
qijia:{
audio:true,
fullskin:true,
type:'trick',
enable:true,
@ -134,6 +136,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
}
},
fulei:{
audio:true,
fullskin:true,
type:'delay',
cardnature:'thunder',
@ -182,6 +185,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
}
},
qibaodao:{
audio:true,
fullskin:true,
type:'equip',
subtype:'equip1',
@ -202,6 +206,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
},
},
zhungangshuo:{
audio:true,
fullskin:true,
type:'equip',
subtype:'equip1',
@ -221,6 +226,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
}
},
yinyueqiang:{
audio:true,
fullskin:true,
type:'equip',
subtype:'equip1',
@ -259,6 +265,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
selectTarget:-1
},
shengdong:{
audio:true,
fullskin:true,
enable:function(){
return game.countPlayer()>2;
@ -339,6 +346,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
}
},
zengbin:{
audio:true,
fullskin:true,
enable:true,
type:'trick',
@ -382,6 +390,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
}
},
caomu:{
audio:true,
fullskin:true,
enable:true,
type:'delay',

View File

@ -367,12 +367,12 @@ game.import('card',function(lib,game,ui,get,ai,_status){
ai:{
equipValue:function(card,player){
if(!game.hasPlayer(function(current){
return player.canUse('sha',current)&&get.distance(player,current)==1&&get.effect(current,{name:'sha'},player,player)>0;
return player.canUse('sha',current)&&get.distance(player,current)<=1&&get.effect(current,{name:'sha'},player,player)>0;
})){
return 1;
}
if(player.hasSha()&&_status.currentPhase==player){
if(player.getEquip('zhuge')||player.getCardUsable('sha')==0){
if(player.getEquip('zhuge')&&player.countUsed('sha')||player.getCardUsable('sha')==0){
return 10;
}
}
@ -1410,6 +1410,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
filter:function(event){
return event.card&&event.card.name=='sha'&&event.notLink()&&event.player.getCards('he').length>0;
},
priority:1,
check:function(event,player){
var target=event.player;
var eff=get.damageEffect(target,player,player);
@ -1419,7 +1420,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
}
if(eff<=0) return true;
if(target.hp==1) return false;
if(player.hasSkill('jiu')||player.hasSkill('tianxianjiu')||
if(event.num>1||player.hasSkill('tianxianjiu')||
player.hasSkill('luoyi2')||player.hasSkill('reluoyi2')) return false;
if(target.countCards('he')<2) return -1;
var num=0;

View File

@ -6,7 +6,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
connectBanned:['diy_tianyu','diy_yangyi','diy_lukang','ns_huamulan','ns_yuji','ns_duangui','ns_liuzhang'],
character:{
diy_wenyang:['male','wei','4/6',['lvli','choujue']],
key_lucia:['female','qun','1/3',['lucia_duqu','lucia_zhenren']],
key_lucia:['female','qun','1/2',['lucia_duqu','lucia_zhenren']],
key_kyousuke:['male','qun',4,['nk_shekong','key_huanjie']],
key_yuri:['female','qun',3,['yuri_xingdong','key_huanjie','yuri_wangxi'],['zhu']],
// diy_caocao:['male','wei',4,['xicai','diyjianxiong','hujia']],
@ -225,6 +225,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.logSkill('yuri_wangxi',trigger.player);
player.awakenSkill('yuri_wangxi');
game.broadcastAll(function(source){
if(source.node.dieidentity){
source.node.dieidentity.innerHTML='忠臣';
}
source.revive(2,false);
source.identity='zhong';
source.setIdentity();

View File

@ -1621,11 +1621,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
autodelay:function(event){
return event.name=='respond'?0.5:false;
},
filter:function(evt){
filter:function(evt,player){
return (evt.skill=='xinlonghun3'||evt.skill=='xinlonghun4')&&
evt.cards&&evt.cards.length==2&&_status.currentPhase.countDiscardableCards('he');
evt.cards&&evt.cards.length==2&&_status.currentPhase&&_status.currentPhase!=player&&_status.currentPhase.countDiscardableCards(player,'he');
},
content:function(){
player.line(_status.currentPhase,'green');
player.discardPlayerCard(_status.currentPhase,'he',true);
}
}
@ -2326,8 +2327,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
enable:'phaseUse',
usable:1,
filterTarget:function(card,player,target){
//return target!=player&&target.countCards('h')>0;
return target!=player;
return target!=player&&target.countCards('h')>0;
//return target!=player;
},
content:function(){
'step 0'

View File

@ -8,7 +8,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
mobile:{
mobile_default:["miheng","taoqian","liuzan","lingcao","sunru","lifeng","zhuling","liuye","zhaotongzhaoguang","majun","simazhao","wangyuanji","pangdegong","shenpei"],
mobile_fire:["re_sp_zhugeliang","re_xunyu","re_dianwei","re_yanwen","re_pangtong","xin_yuanshao"],
mobile_forest:['re_zhurong','re_menghuo'],
mobile_forest:['re_zhurong','re_menghuo','re_dongzhuo','re_sunjian','re_caopi'],
mobile_others:["re_jikang","old_bulianshi","old_yuanshu","re_wangyun"],
},
},
@ -39,6 +39,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
re_zhurong:['female','shu',4,['juxiang','relieren']],
re_menghuo:['male','shu',4,['huoshou','rezaiqi']],
re_wangyun:['male','qun',3,['relianji','remoucheng']],
re_dongzhuo:['male','qun',8,['rejiuchi','roulin','benghuai','baonue'],['zhu']],
re_sunjian:['male','wu',4,['gzyinghun','repolu']],
re_caopi:['male','wei',3,['rexingshang','refangzhu','songwei'],['zhu']],
},
characterIntro:{
shenpei:'审配204年字正南魏郡阴安今河北清丰北人。为人正直 袁绍领冀州,审配被委以腹心之任,并总幕府。河北平定,袁绍以审配、逢纪统军事,审配恃其强盛,力主与曹操决战。曾率领弓弩手大破曹军于官渡。官渡战败,审配二子被俘,反因此受谮见疑,幸得逢纪力保。袁绍病死,审配等矫诏立袁尚为嗣,导致兄弟相争,被曹操各个击破。曹操围邺,审配死守数月,终城破被擒,拒不投降,慷慨受死。',
@ -82,6 +85,165 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
characterFilter:{},
skill:{
rexingshang:{
audio:'xingshang',
trigger:{global:'die'},
filter:function(event,player){
return player.isDamaged()||event.player.countCards('he')>0;
},
direct:true,
content:function(){
"step 0"
var choice=[];
if(player.isDamaged()) choice.push('回复体力');
if(trigger.player.countCards('he')) choice.push('获得牌');
choice.push('cancel2');
player.chooseControl(choice).set('prompt',get.prompt2('rexingshang')).set('ai',function(){
if(choice.length==2) return 0;
if(get.value(trigger.player.getCards('he'))>8) return 1;
return 0;
});
"step 1"
if(result.control!='cancel2'){
player.logSkill('rexingshang');
if(result.control=='获得牌'){
event.togain=trigger.player.getCards('he');
player.gain(event.togain,trigger.player,'giveAuto');
}
else player.recover();
}
},
},
refangzhu:{
audio:"fangzhu",
trigger:{
player:"damageEnd",
},
direct:true,
content:function (){
"step 0"
player.chooseTarget(get.prompt2('refangzhu'),function(card,player,target){
return player!=target
}).ai=function(target){
if(target.hasSkillTag('noturn')) return 0;
var player=_status.event.player;
if(get.attitude(_status.event.player,target)==0) return 0;
if(get.attitude(_status.event.player,target)>0){
if(target.classList.contains('turnedover')) return 1000-target.countCards('h');
if(player.getDamagedHp()<3) return -1;
return 100-target.countCards('h');
}
else{
if(target.classList.contains('turnedover')) return -1;
if(player.getDamagedHp()>=3) return -1;
return 1+target.countCards('h');
}
}
"step 1"
if(result.bool){
player.logSkill('refangzhu',result.targets);
event.target=result.targets[0]
event.target.chooseToDiscard('he',player.getDamagedHp()).set('ai',function(card){
var player=_status.event.player;
if(player.isTurnedOver()||_status.event.getTrigger().player.getDamagedHp()>2) return -1;
return (player.hp*player.hp)-get.value(card);
}).set('prompt','弃置'+get.cnNumber(player.getDamagedHp())+'张手牌并失去一点体力;或选择不弃置,将武将牌翻面并摸'+get.cnNumber(player.getDamagedHp())+'张牌。');
}
else event.finish();
"step 2"
if(result.bool){
event.target.loseHp();
}
else{
event.target.draw(player.getDamagedHp());
event.target.turnOver();
}
},
ai:{
maixie:true,
"maixie_hp":true,
effect:{
target:function (card,player,target){
if(get.tag(card,'damage')){
if(player.hasSkillTag('jueqing',false,target)) return [1,-2];
if(target.hp<=1) return;
if(!target.hasFriend()) return;
var hastarget=false;
var turnfriend=false;
var players=game.filterPlayer();
for(var i=0;i<players.length;i++){
if(get.attitude(target,players[i])<0&&!players[i].isTurnedOver()){
hastarget=true;
}
if(get.attitude(target,players[i])>0&&players[i].isTurnedOver()){
hastarget=true;
turnfriend=true;
}
}
if(get.attitude(player,target)>0&&!hastarget) return;
if(turnfriend||target.hp==target.maxHp) return [0.5,1];
if(target.hp>1) return [1,0.5];
}
},
},
},
},
repolu:{
audio:2,
trigger:{
source:'dieAfter',
player:'die',
},
forceDie:true,
filter:function(event,player,name){
return name=='die'||player.isAlive();
},
direct:true,
content:function(){
'step 0'
if(!player.storage.repolu) player.storage.repolu=0;
event.num=player.storage.repolu+1;
player.chooseTarget([1,Infinity],get.prompt('repolu'),'令任意名角色摸'+get.cnNumber(event.num)+'张牌').set('forceDie',true).ai=function(target){
return get.attitude(_status.event.player,target);
};
'step 1'
if(result.bool){
player.storage.repolu++;
result.targets.sortBySeat();
player.logSkill('repolu',result.targets);
game.asyncDraw(result.targets,num);
}
else event.finish();
'step 2'
game.delay();
},
},
rejiuchi:{
group:['jiuchi'],
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:{
sub:true,
init:function(player,skill){
player.disableSkill(skill,'benghuai');
},
onremove:function(player,skill){
player.enableSkill(skill);
},
},
},
},
relianji:{
audio:2,
enable:'phaseUse',
@ -108,20 +270,25 @@ game.import('character',function(lib,game,ui,get,ai,_status){
event.finish();
return;
}
if(equip1.name=='qinggang'&&!lib.inpile.contains('qibaodao')){
equip1.remove();
equip1=game.createCard('qibaodao',equip1.suit,equip1.number);
}
target.$draw(equip1);
target.chooseUseTarget(equip1,'noanimate','nopopup',true);
'step 2'
game.updateRoundNumber();
var list=['nanman','wanjian','huogong','juedou','sha'];
var list2=game.players.slice(0);
list2.remove(player);
for(var i=0;i<list.length;i++){
if(!targets[0].canUse(list[i],targets[1])) list.splice(i--,1);
if(!targets[0].canUse(list[i],targets[1],false)) list.splice(i--,1);
}
if(!list.length) return;
var name=list.randomGet();
if(name=='nanman'||name=='wanjian'){
for(var i=0;i<list2.length;i++){
if(!targets[0].canUse(name,list2[i])) list2.splice(i--,1);
if(!targets[0].canUse(name,list2[i],false)) list2.splice(i--,1);
}
}
else list2=targets[1];
@ -633,6 +800,17 @@ game.import('character',function(lib,game,ui,get,ai,_status){
re_zhurong:'界祝融',
re_menghuo:'界孟获',
re_wangyun:'手杀王允',
re_dongzhuo:'界董卓',
re_sunjian:'界孙坚',
re_caopi:'界曹丕',
rejiuchi:'酒池',
rejiuchi_info:'你可以',
repolu:'破虏',
repolu_info:'当你',
rexingshang:'行殇',
rexingshang_info:'当其他角色死亡后,你可以选择一项:',
refangzhu:'放逐',
refangzhu_info:'当你受到伤害后,',
relianji:'连计',
relianji_info:'出牌阶段限一次你可以选择两名其他角色。第一名角色随机使用牌堆中的一张武器牌然后这名角色视为对另一名角色随机使用一张下列的牌名的牌【决斗】、【火攻】、【南蛮入侵】、【万箭齐发】或普【杀】。然后若此牌造成伤害你获得X枚“连计”标记X为此次扣减的体力值点数。',
remoucheng:'谋逞',

View File

@ -6,8 +6,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
old:{
old_shenhua:["yuji","zhangjiao","old_zhugezhan","old_zhoutai","old_caoren"],
old_refresh:["old_zhangfei","old_huatuo"],
old_yijiang:["masu","xushu","fazheng","liru","yujin","xin_yujin","old_zhonghui","old_xusheng","old_zhuran","old_lingtong","old_madai","old_caoxiu","old_wangyi","old_caozhen","old_quancong","old_chenqun","old_zhuhuan","old_zhuzhi","old_guanzhang"],
old_sp:["old_caochun","old_lingju","old_maliang","old_machao","zhangliang","jsp_caoren"],
old_yijiang1:["masu","xushu","fazheng","yujin","xin_yujin","old_xusheng","old_lingtong","ol_yujin"],
old_yijiang2:["old_madai","old_zhonghui","old_wangyi","old_guanzhang","ol_liaohua"],
old_yijiang3:["liru","old_zhuran","ol_zhuran","ol_manchong","ol_guohuai"],
old_yijiang4:["old_caozhen","old_chenqun","old_zhuhuan"],
old_yijiang5:["old_caoxiu","old_quancong","old_zhuzhi"],
old_yijiang67:["ol_xinxianying","ol_zhangrang"],
old_sp:["old_caochun","old_lingju","old_maliang","old_machao","zhangliang","jsp_caoren","ol_guansuo"],
},
},
character:{
@ -46,6 +51,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
old_zhugezhan:["male","shu",3,["old_zuilun","old_fuyin"]],
zhangliang:["male","qun",4,["old_jijun","old_fangtong"]],
old_guanzhang:['male','shu',4,['old_fuhun']],
ol_xinxianying:['female','wei',3,['caishi','zhongjian']],
ol_zhangrang:['male','qun',3,['taoluan']],
ol_yujin:['male','wei',4,['zhenjun']],
ol_zhuran:['male','wu',4,['danshou']],
ol_liaohua:['male','shu',4,['dangxian','fuli']],
ol_guansuo:['male','shu',4,['zhengnan','xiefang']],
ol_manchong:['male','wei',3,['yuce','junxing']],
ol_guohuai:['male','wei',4,['jingce']],
},
characterFilter:{
old_lingju:function(mode){
@ -841,9 +854,17 @@ game.import('character',function(lib,game,ui,get,ai,_status){
old_zhoutai:'旧周泰',
old_caoren:'旧曹仁',
old_guanzhang:'旧关兴张苞',
old_zhangfei:'张飞',
old_huatuo:'华佗',
old_zhangfei:'OL张飞',
old_huatuo:'OL华佗',
jsp_caoren:'☆SP曹仁',
ol_xinxianying:'OL辛宪英',
ol_zhangrang:'OL张让',
ol_yujin:'镇军于禁',
ol_liaohua:'OL廖化',
ol_zhuran:'OL朱然',
ol_guansuo:'OL关索',
ol_manchong:'OL满宠',
ol_guohuai:'OL郭淮',
old_fuhun:'父魂',
old_fuhun_info:'摸牌阶段开始时,你可以放弃摸牌,改为从牌堆顶亮出两张牌并获得之,若亮出的牌颜色不同,你获得技能“武圣”、“咆哮”,直到回合结束。',
@ -881,7 +902,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
old_shenhua:'神话再临',
old_refresh:'界限突破',
old_yijiang:'一将成名',
old_yijiang1:'一将成名2011',
old_yijiang2:'一将成名2012',
old_yijiang3:'一将成名2013',
old_yijiang4:'一将成名2014',
old_yijiang5:'一将成名2015',
old_yijiang67:'原创设计',
old_sp:'SP',
}
};

View File

@ -122,7 +122,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
nature:"fire",
},
viewAsFilter:function (player){
if(!player.countCards('h',{color:'red'})) return false;
if(!player.countCards('he',{color:'red'})) return false;
},
prompt:"将一张红色牌当火攻使用",
check:function (card){
@ -1533,6 +1533,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
rejizhi:{
audio:'jizhi',
locked:false,
trigger:{player:'useCard'},
frequent:true,
filter:function(event){
@ -2091,7 +2092,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
mod:{
maxHandcard:function(player,num){
if(player.hp<player.maxHp) return num+player.maxHp-player.hp;
if(player.hp<player.maxHp) return num+player.getDamagedHp();
}
}
},

View File

@ -622,7 +622,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
'drlt_yongsi1':{
mod:{
maxHandcard:function (player,num){
return num+player.maxHp-2*player.hp;
return num+player.maxHp-2*Math.max(0,player.hp);
},
},
},
@ -2361,21 +2361,21 @@ game.import('character',function(lib,game,ui,get,ai,_status){
else{
num=1
}
var map={};
var list=[];
for(var i=1;i<=player.hp;i++){
var cn=get.cnNumber(i,true);
map[cn]=i;
list.push(cn);
}
event.map=map;
player.awakenSkill('qimou');
player.storage.qimou=true;
player.chooseControl('一','二','三','四','五','六',function(){
player.chooseControl(list,function(){
return get.cnNumber(_status.event.goon,true);
}).set('prompt','失去任意点体力').set('goon',num);
'step 1'
var num;
switch(result.control){
case '一':num=1;break;
case '二':num=2;break;
case '三':num=3;break;
case '四':num=4;break;
case '五':num=5;break;
case '六':num=6;break;
}
var num=event.map[result.control]||1;
player.storage.qimou2=num;
player.loseHp(num);
player.addTempSkill('qimou2');
@ -3794,10 +3794,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return player.hp<player.maxHp;
},
check:function(event,player){
if(player.maxHp-player.hp<2){
if(player.getDamagedHp()<2){
return false;
}
else if(player.maxHp-player.hp==2){
else if(player.getDamagedHp()==2){
return player.countCards('h')>=2;
}
return true;
@ -3805,7 +3805,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content:function(){
"step 0"
trigger.cancel();
event.cards=get.cards(player.maxHp-player.hp);
event.cards=get.cards(player.getDamagedHp());
player.showCards(event.cards);
"step 1"
var num=0;
@ -3916,7 +3916,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
direct:true,
content:function(){
"step 0"
player.chooseTarget(get.prompt('fangzhu'),'令一名其他角色将武将牌翻面并摸'+get.cnNumber(player.maxHp-player.hp)+'张牌',function(card,player,target){
player.chooseTarget(get.prompt('fangzhu'),'令一名其他角色将武将牌翻面并摸'+get.cnNumber(player.getDamagedHp())+'张牌',function(card,player,target){
return player!=target
}).ai=function(target){
if(target.hasSkillTag('noturn')) return 0;
@ -3924,19 +3924,19 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(get.attitude(_status.event.player,target)==0) return 0;
if(get.attitude(_status.event.player,target)>0){
if(target.classList.contains('turnedover')) return 1000-target.countCards('h');
if(player.maxHp-player.hp<3) return -1;
if(player.getDamagedHp()<3) return -1;
return 100-target.countCards('h');
}
else{
if(target.classList.contains('turnedover')) return -1;
if(player.maxHp-player.hp>=3) return -1;
if(player.getDamagedHp()>=3) return -1;
return 1+target.countCards('h');
}
}
"step 1"
if(result.bool){
player.logSkill('fangzhu',result.targets);
result.targets[0].draw(player.maxHp-player.hp);
result.targets[0].draw(player.getDamagedHp());
result.targets[0].turnOver();
}
},
@ -4303,7 +4303,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
audioname:['sunce'],
trigger:{player:'phaseBegin'},
filter:function(event,player){
return player.hp<player.maxHp;
return player.getDamagedHp()>0;
},
direct:true,
content:function(){
@ -4312,20 +4312,20 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return player!=target;
}).set('ai',function(target){
var player=_status.event.player;
if(player.maxHp-player.hp==1&&target.countCards('he')==0){
if(player.getDamagedHp()==1&&target.countCards('he')==0){
return 0;
}
if(get.attitude(_status.event.player,target)>0){
return 10+get.attitude(_status.event.player,target);
}
if(player.maxHp-player.hp==1){
if(player.getDamagedHp()==1){
return -1;
}
return 1;
});
"step 1"
if(result.bool){
event.num=player.maxHp-player.hp;
event.num=player.getDamagedHp();
player.logSkill(event.name,result.targets);
event.target=result.targets[0];
if(event.num==1){
@ -4436,7 +4436,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(player.hp==player.maxHp) return 'baonue_hp';
if(player.hp<player.maxHp-1||player.hp<=2) return 'baonue_maxHp';
return 'baonue_hp';
});
}).set('prompt','崩坏失去1点体力或减1点体力上限');
"step 1"
if(result.control=='baonue_hp'){
player.loseHp();
@ -5650,8 +5650,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
popup:false,
audio:false,
vanish:true,
charlotte:true,
content:function(){
if(player.hp<player.maxHp) player.draw(player.maxHp-player.hp);
if(player.getDamagedHp()) player.draw(player.getDamagedHp());
player.removeSkill('tianxiang2');
player.popup('tianxiang');
}
@ -5781,7 +5782,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
vanish:true,
content:function(){
if(player.isDamaged()){
player.draw(player.maxHp-player.hp);
player.draw(player.getDamagedHp());
}
player.removeSkill('retianxiang2');
},
@ -6005,10 +6006,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
}
player.nodying=true;
if(player.hp<0){
player.hp=0;
player.update();
}
},
subSkill:{
recover:{
@ -6020,18 +6017,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){
popup:false,
content:function(){
'step 0'
if(player.hp>=player.storage.gzbuqu.length){
player.hp-=player.storage.gzbuqu.length-1;
player.update();
while(player.storage.gzbuqu.length){
player.storage.gzbuqu.shift().discard();
}
player.unmarkSkill('gzbuqu');
delete player.nodying;
event.finish();
}
else{
player.chooseCardButton('移去'+get.cnNumber(player.hp)+'张不屈牌',true,player.hp,player.storage.gzbuqu).set('ai',function(button){
event.count=trigger.num;
'step 1'
event.count--;
if((player.hp+player.storage.gzbuqu.length)>1){
player.chooseCardButton('移去一张不屈牌',true,player.storage.gzbuqu).set('ai',function(button){
var buttons=get.selectableButtons();
for(var i=0;i<buttons.length;i++){
if(buttons[i]!=button&&
@ -6042,31 +6032,26 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
return 0;
});
player.hp=0;
player.update();
}
'step 1'
'step 2'
for(var i=0;i<result.links.length;i++){
result.links[i].discard();
player.storage.gzbuqu.remove(result.links[i]);
}
player.$throw(result.links);
game.log(player,'移去了不屈牌',result.links);
if(event.count) event.goto(1);
'step 3'
lib.skill.gzbuqu.process(player);
}
}
},
content:function(){
'step 0'
var num=-player.hp;
if(!player.storage.gzbuqu.length){
num++;
}
var num=(-trigger.num-Math.max(player.hp-trigger.num,1)+1)
player.storage.gzbuqu.addArray(get.cards(num));
event.trigger("addCardToStorage");
player.showCards(get.translation(player)+'的不屈牌',player.storage.gzbuqu);
player.hp=0;
player.update();
'step 1'
lib.skill.gzbuqu.process(player);
},

View File

@ -46,7 +46,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
caohong:['male','wei',4,['yuanhu']],
xiahouba:['male','shu',4,['baobian']],
yuanshu:['male','qun',4,['yongsi','weidi']],
sp_diaochan:['female','qun',3,['lihun','biyue']],
sp_diaochan:['female','qun',3,['lihun','rebiyue']],
sp_zhaoyun:['male','qun',3,['longdan','chongzhen']],
jsp_zhaoyun:['male','qun',3,['chixin','yicong','suiren']],
liuxie:['male','qun',3,['tianming','mizhao']],
@ -78,7 +78,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
cuiyan:['male','wei',3,['yawang','xunzhi']],
sp_zhangfei:['male','shu',4,['jie','dahe']],
jsp_guanyu:['male','wei',4,['wusheng','danji']],
jsp_guanyu:['male','wei',4,['new_rewusheng','danji']],
jsp_huangyueying:['female','qun',3,['jiqiao','linglong']],
sunluyu:['female','wu',3,['new_meibu','new_mumu']],
hanba:['female','qun',4,['fentian','zhiri']],
@ -90,7 +90,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
sp_xiahoudun:['male','wei',4,['fenyong','xuehen'],['die_audio']],
sp_lvmeng:['male','wu',3,['tanhu','mouduan']],
guansuo:['male','shu',4,['zhengnan','xiefang']],
guansuo:['male','shu',4,['xinzhengnan','xiefang']],
tadun:['male','qun',4,['luanzhan']],
yanbaihu:['male','qun',4,['zhidao','jili']],
chengyu:['male','wei',3,['shefu','benyu']],
@ -955,7 +955,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
popup:false,
content:function (){
'step 0'
event.num=player.maxHp-player.hp;
event.num=player.getDamagedHp();
if(event.num>0) player.chooseBool(get.prompt2('spjiedao',trigger.player)).ai=function(){
if(get.attitude(player,trigger.player)>=-1) return false;
return !trigger.player.getEquip('baiyin')&&!trigger.player.getEquip('rewrite_baiyin');
@ -1029,11 +1029,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
else{
player.$throw(card);
game.cardsDiscard(card);
player.loseHp();
}
"step 1"
player.unmarkSkill('biaozhao');
game.delay();
player.loseHp();
},
},
"biaozhao3":{
@ -1082,7 +1081,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content:function (){
"step 0"
player.chooseTarget(get.prompt2('yechou'),function(card,player,target){
return player!=target&&target.maxHp-target.hp>1
return player!=target&&target.getDamagedHp()>1
}).set('forceDie',true).set('ai',function(target){
var num=get.attitude(_status.event.player,target);
return -num;
@ -1150,7 +1149,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(result.control=="手动分配"){
event.map=[cards,[],[]];
event.goto(8);
game.log('38');
}
else if(!_status.connectMode){
var choiceList=ui.create.dialog('请选择一种方案','hidden','forcebutton');
@ -1977,7 +1975,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
content:function(){
'step 0'
var num=player.maxHp-player.hp;
var num=player.getDamagedHp();
player.chooseTarget('是否发动【誓仇】,令至多'+num+'名其他角色也成为此【杀】的目标?',[1,num],function(card,player,target){
return target!=player&&!trigger.targets.contains(target)&&player.canUse({name:'sha'},target);
}).ai=function(target){
@ -2222,7 +2220,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content:function (){
'step 0'
player.chooseTarget(get.prompt('new_mumu'),'弃置一名角色装备区内的一张牌,或者获得一名角色装备区内的防具牌',function(card,player,target){
if(target==player) return false;
if(target==player) return target.getEquip(2)!=undefined;
return target.countCards('e')>0;
}).set('ai',function(target){
var player=_status.event.player;
@ -2239,7 +2237,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.line(event.target,'green');
var e=event.target.getEquip(2);
event.e=e;
if(e){
if(target==player) event.choice='获得一张防具牌';
else if(e){
player.chooseControl('弃置一张装备牌','获得一张防具牌').set('ai',function(){
if(_status.event.player.getEquip(2)){
return '弃置一张装备牌';
@ -3320,10 +3319,15 @@ game.import('character',function(lib,game,ui,get,ai,_status){
event.finish();
return;
}
if(equip1.name=='qinggang'&&!lib.inpile.contains('qibaodao')){
equip1.remove();
equip1=game.createCard('qibaodao',equip1.suit,equip1.number);
}
target.$draw(equip1);
target.chooseUseTarget(true,equip1,'noanimate','nopopup');
game.delay();
'step 2'
game.updateRoundNumber();
var card=cards[0];
var bool1=game.hasPlayer(function(current){
return current!=player&&target.canUse(card,current);
@ -6560,6 +6564,44 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
}
},
xinzhengnan:{
audio:'zhengnan',
trigger:{global:'dieAfter'},
direct:true,
content:function(){
'step 0'
var list=['摸牌'];
if(!player.hasSkill('new_rewusheng')){
list.push('new_rewusheng');
}
if(!player.hasSkill('xindangxian')){
list.push('xindangxian');
}
if(!player.hasSkill('zhiman')){
list.push('zhiman');
}
list.push('cancel2');
if(list.length){
player.chooseControl(list).set('prompt',get.prompt2('xinzhengnan')).set('ai',function(){
if(list.contains('new_rewusheng')) return 1;
return 0;
});
}
'step 1'
if(result.control=='cancel2') return;
player.logSkill('xinzhengnan');
if(result.control=='摸牌'){
player.draw(3);
return;
}
player.addSkill(result.control);
player.popup(result.control);
game.log(player,'获得了技能','#g【'+get.translation(result.control)+'】');
},
ai:{
threaten:1.3
}
},
zhengnan:{
audio:1,
trigger:{global:'dieAfter'},
@ -6586,7 +6628,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
game.log(player,'获得技能','【'+get.translation(result.control)+'】');
},
ai:{
threaten:1.4
threaten:2.4
}
},
xiefang:{
@ -10788,7 +10830,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
filterCard:true,
selectCard:function(){
var player=_status.event.player;
return player.maxHp-player.hp;
return player.getDamagedHp();
},
filterTarget:function(card,player,target){
return target.hp<target.maxHp;
@ -11108,7 +11150,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
filterTarget:true,
selectTarget:function(){
var player=_status.event.player
return [1,Math.max(1,player.maxHp-player.hp)];
return [1,Math.max(1,player.getDamagedHp())];
},
position:'he',
filterCard:{color:'red'},
@ -11462,7 +11504,28 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return false;
},
content:function(){
"step 0"
event.count=1;
if(trigger.name=='discard'){
event.count=0;
for(var i=0;i<trigger.cards.length;i++){
if(get.color(trigger.cards[i])=='red'&&trigger.cards[i].original!='j') event.count++;
}
}
"step 1"
player.draw();
event.count--;
"step 2"
if(event.count){
if(lib.config.autoskilllist.contains('mingzhe')) player.chooseBool(get.prompt2('mingzhe'));
else event._result={bool:true};
}
else event.finish();
"step 3"
if(result.bool){
player.logSkill('mingzhe');
event.goto(1);
}
},
ai:{
threaten:0.7
@ -12644,6 +12707,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
luanzhan_info:'你使用【杀】或黑色普通锦囊牌可以额外选择X名角色为目标当你使用【杀】或黑色普通锦囊牌指定目标后若此牌的目标角色数小于X则X减至0。X为你于本局游戏内造成过伤害的次数',
zhengnan:'征南',
zhengnan_info:'当其他角色死亡后,你可以摸三张牌。若如此做,你获得下列技能中的任意一个:“武圣”、 “当先”和“制蛮”',
xinzhengnan:'征南',
xinzhengnan_info:'当其他角色死亡后,你可以摸三张牌,或者获得下列技能中的任意一个:“武圣”、 “当先”和“制蛮”',
xiefang:'撷芳',
xiefang_info:'锁定技,你的进攻距离+XX为女性角色数',
qizhi:'奇制',
@ -12923,7 +12988,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
suishi_info:'每当其他角色进入濒死状态时伤害来源可以令你摸一张牌每当其他角色死亡时伤害来源可以令你失去1点体力',
quji_info:'出牌阶段限一次你可以弃置X张牌X为你已损失的体力值然后令至多X名已受伤的角色各回复1点体力。若你以此法弃置的牌中有黑色牌你失去一点体力。',
junbing_info:'一名角色的结束阶段开始时若其手牌数少于或者等于1该角色可以摸一张牌。若如此做该角色须将所有手牌交给你然后你交给其等量的牌。',
xiongyi_info:'限定技,出牌阶段,你可以指定至多三名角色与你各摸三张牌若你指定的角色数不超过2你回复1点体力',
xiongyi_info:'限定技,出牌阶段,你可以指定至多三名角色各摸三张牌若你指定的角色数不超过2你回复1点体力',
xiongyi_info_guozhan:'限定技出牌阶段你可以令与你势力相同的所有角色各摸三张牌然后若你的势力是角色最少的势力或之一则你回复1点体力',
shenzhi_info:'准备阶段开始时你可以弃置所有手牌若你以此法弃置的牌的张数不小于X你回复1点体力X为你当前的体力值。',
shushen_info:'当你回复1点体力时你可以令一名其他角色回复1点体力或摸两张牌',

View File

@ -1050,7 +1050,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.chooseTarget(get.prompt2('xinfu_lingren'),function(card,player,target){
return trigger.targets.contains(target);
}).set('ai',function(target){
return -get.attitude(_status.event.player,target);
return 2-get.attitude(_status.event.player,target);
});
'step 1'
if(result.bool){
@ -1966,7 +1966,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content:function (){
"step 0"
trigger.source.chooseBool('【许身】:是否将自己的一张武将牌替换为“关索”?').set('ai',function(){
return true;
return false;
});
"step 1"
if(result.bool){
@ -3618,12 +3618,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
switch(result.control){
case '递增':{
player.logSkill('xinfu_guanchao');
player.addTempSkill('xinfu_guanchao_dizeng');
player.addTempSkill('xinfu_guanchao_dizeng','phaseUseEnd');
break;
}
case '递减':{
player.logSkill('xinfu_guanchao');
player.addTempSkill('xinfu_guanchao_dijian');
player.addTempSkill('xinfu_guanchao_dijian','phaseUseEnd');
break;
}
case '取消':{
@ -5199,7 +5199,28 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return false;
},
content:function (){
"step 0"
event.count=1;
if(trigger.name=='discard'){
event.count=0;
for(var i=0;i<trigger.cards.length;i++){
if(get.color(trigger.cards[i])=='red'&&trigger.cards[i].original!='j') event.count++;
}
}
"step 1"
player.draw();
event.count--;
"step 2"
if(event.count){
if(lib.config.autoskilllist.contains('mingzhe')) player.chooseBool(get.prompt2('mingzhe'));
else event._result={bool:true};
}
else event.finish();
"step 3"
if(result.bool){
player.logSkill('qc_mingzhe');
event.goto(1);
}
},
ai:{
threaten:0.7,

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,8 @@
window.noname_asset_list=[
'1.9.93.3',
'1.9.94',
'audio/background/aozhan_chaoming.mp3',
'audio/background/aozhan_online.mp3',
'audio/background/aozhan_rewrite.mp3',
'audio/background/music_danji.mp3',
'audio/background/music_default.mp3',
'audio/background/music_diaochan.mp3',
@ -10,6 +11,20 @@ window.noname_asset_list=[
'audio/background/music_jilve.mp3',
'audio/card/default.mp3',
'audio/card/female/caomu.mp3',
'audio/card/female/chiling.mp3',
'audio/card/female/diaohulishan.mp3',
'audio/card/female/fulei.mp3',
'audio/card/female/huoshaolianying.mp3',
'audio/card/female/jinchan.mp3',
'audio/card/female/lianjunshengyan.mp3',
'audio/card/female/lulitongxin.mp3',
'audio/card/female/qijia.mp3',
'audio/card/female/shengdong.mp3',
'audio/card/female/shuiyanqijun.mp3',
'audio/card/female/xietianzi.mp3',
'audio/card/female/zengbin.mp3',
'audio/card/female/bagua.mp3',
'audio/card/female/baiyin.mp3',
'audio/card/female/chitu.mp3',
@ -60,6 +75,20 @@ window.noname_asset_list=[
'audio/card/female/yuanjiao.mp3',
'audio/card/female/zhibi.mp3',
'audio/card/male/caomu.mp3',
'audio/card/male/chiling.mp3',
'audio/card/male/diaohulishan.mp3',
'audio/card/male/fulei.mp3',
'audio/card/male/huoshaolianying.mp3',
'audio/card/male/jinchan.mp3',
'audio/card/male/lianjunshengyan.mp3',
'audio/card/male/lulitongxin.mp3',
'audio/card/male/qijia.mp3',
'audio/card/male/shengdong.mp3',
'audio/card/male/shuiyanqijun.mp3',
'audio/card/male/xietianzi.mp3',
'audio/card/male/zengbin.mp3',
'audio/card/male/bagua.mp3',
'audio/card/male/baiyin.mp3',
'audio/card/male/chitu.mp3',
@ -2239,6 +2268,17 @@ window.noname_asset_list=[
'image/character/key_kyousuke.jpg',
'image/character/key_lucia.jpg',
'image/character/re_yujin.jpg',
'image/character/re_caopi.jpg',
'image/character/re_dongzhuo.jpg',
'image/character/re_sunjian.jpg',
'image/character/ol_guansuo.jpg',
'image/character/ol_guohuai.jpg',
'image/character/ol_liaohua.jpg',
'image/character/ol_manchong.jpg',
'image/character/ol_xinxianying.jpg',
'image/character/ol_yujin.jpg',
'image/character/ol_zhangrang.jpg',
'image/character/ol_zhuran.jpg',
'image/character/baiwuchang.jpg',
'image/character/baosanniang.jpg',

View File

@ -4620,9 +4620,10 @@
item:{
disabled:'不启用',
online:'Online',
rewrite:'Rewrite',
chaoming:'潮鸣',
},
init:'chaoming',
init:'rewrite',
onclick:function(item){
game.saveConfig('aozhan_bgm',item,this._link.config.mode);
if(_status._aozhan==true) game.playBackgroundMusic();
@ -13177,8 +13178,9 @@
game.playAudio('card',sex,card.name+'_'+card.nature);
}
else{
if(typeof audioinfo=='string'&&audioinfo.indexOf('ext:')==0){
game.playAudio('..','extension',audioinfo.slice(4),card.name+'_'+sex);
if(typeof audioinfo=='string'){
if(audioinfo.indexOf('ext:')==0) game.playAudio('..','extension',audioinfo.slice(4),card.name+'_'+sex);
else game.playAudio('card',sex,audioinfo);
}
else{
game.playAudio('card',sex,card.name);
@ -14888,6 +14890,9 @@
},
player:{
//新函数
getDamagedHp:function(){
return this.maxHp-Math.max(0,this.hp);
},
changeGroup:function(group,log){
game.broadcastAll(function(player,group){
player.group=group;
@ -19585,7 +19590,7 @@
return (range);
},
getHandcardLimit:function(){
return Math.max(0,game.checkMod(this,this.hp,'maxHandcard',this));
return Math.max(0,game.checkMod(this,Math.max(0,this.hp),'maxHandcard',this));
},
getEnemies:function(func){
var player=this;
@ -45657,6 +45662,7 @@
_status.maxShuffle--;
}
game.shuffleNumber++;
if(_status.event.trigger) _status.event.trigger('washCard');
var cards=[],i;
for(var i=0;i<lib.onwash.length;i++){
if(lib.onwash[i]()=='remove'){
@ -46707,6 +46713,9 @@
else if(str2.indexOf('TW')==0){
str2=str2.slice(2);
}
else if(str2.indexOf('OL')==0){
str2=str2.slice(2);
}
else if(str2.indexOf('JSP')==0){
str2=str2.slice(3);
}
@ -46736,6 +46745,9 @@
else if(str2.indexOf('TW')==0){
str2=str2.slice(2);
}
else if(str2.indexOf('OL')==0){
str2=str2.slice(2);
}
else if(str2.indexOf('JSP')==0){
str2=str2.slice(3);
}
@ -46756,6 +46768,9 @@
else if(str2.indexOf('TW')==0){
str2=str2.slice(2);
}
else if(str2.indexOf('OL')==0){
str2=str2.slice(2);
}
else if(str2.indexOf('JSP')==0){
str2=str2.slice(3);
}

View File

@ -1,28 +1,28 @@
window.noname_update={
version:'1.9.93.3.2',
update:'1.9.93.3.1',
version:'1.9.94',
update:'1.9.93.3.2',
changeLog:[
'BUG修复',
],
files:[
'card/extra.js',
//'card/sp.js',
//'card/standard.js',
'card/sp.js',
'card/standard.js',
//'card/swd.js',
//'card/guozhan.js',
//'character/diy.js',
//'character/extra.js',
'card/guozhan.js',
'character/diy.js',
'character/extra.js',
'character/mobile.js',
//'character/old.js',
//'character/refresh.js',
//'character/shenhua.js',
'character/old.js',
'character/refresh.js',
'character/shenhua.js',
'character/sp.js',
//'character/tw.js',
//'character/standard.js',
//'character/xinghuoliaoyuan.js',
//'character/yijiang.js',
'character/xinghuoliaoyuan.js',
'character/yijiang.js',
//'mode/doudizhu.js',
//'mode/guozhan.js',
'mode/guozhan.js',
//'mode/boss.js',
'game/game.js',
]

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

View File

@ -232,9 +232,9 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
gz_shibing2qun:['female','qun',0,[],['unseen']],
gz_caocao:['male','wei',4,['jianxiong']],
gz_simayi:['male','wei',3,['fankui','guicai']],
gz_simayi:['male','wei',3,['fankui','reguicai']],
gz_xiahoudun:['male','wei',4,['ganglie']],
gz_zhangliao:['male','wei',4,['tuxi']],
gz_zhangliao:['male','wei',4,['retuxi']],
gz_xuzhu:['male','wei',4,['luoyi']],
gz_guojia:['male','wei',3,['tiandu','new_yiji'],['gzskin']],
gz_zhenji:['female','wei',3,['luoshen','qingguo'],['gzskin']],
@ -2687,12 +2687,12 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
if(get.attitude(_status.event.player,target)==0) return 0;
if(get.attitude(_status.event.player,target)>0){
if(target.classList.contains('turnedover')) return 1000-target.countCards('h');
if(player.maxHp-player.hp<3) return -1;
if(player.getDamagedHp()<3) return -1;
return 100-target.countCards('h');
}
else{
if(target.classList.contains('turnedover')) return -1;
if(player.maxHp-player.hp>=3) return -1;
if(player.getDamagedHp()>=3) return -1;
return 1+target.countCards('h');
}
}
@ -2704,7 +2704,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
var player=_status.event.player;
if(player.isTurnedOver()) return -1;
return (player.hp*player.hp)-get.value(card);
}).set('prompt','弃置一张手牌并失去一点体力;或选择不弃置,将武将牌翻面并摸'+(player.maxHp-player.hp)+'张牌。');
}).set('prompt','弃置一张手牌并失去一点体力;或选择不弃置,将武将牌翻面并摸'+(player.getDamagedHp())+'张牌。');
}
else event.finish();
"step 2"
@ -2712,7 +2712,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
event.target.loseHp();
}
else{
event.target.draw(player.maxHp-player.hp);
event.target.draw(player.getDamagedHp());
event.target.turnOver();
}
},
@ -2850,6 +2850,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
},
},
hmkyuanyu:{
audio:'zongkui',
trigger:{
player:"damageBegin",
},
@ -2877,6 +2878,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
},
},
hmkguishu:{
audio:'bmcanshi',
group:["hmkguishu_reset"],
subSkill:{
reset:{
@ -2925,6 +2927,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
},
backup:function (links,player){
return {
audio:'bmcanshi',
filterCard:function (card,player){
return get.suit(card)=='spade';
},
@ -3998,7 +4001,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
gzqice:{
enable:'phaseUse',
usable:1,
audio:"qice",
audio:"qice_backup",
filter:function(event,player){
return player.countCards('h')>0
},
@ -4107,7 +4110,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
}
return lib.filter.filterTarget(card,player,target);
},
audio:2,
audio:'qice_backup',
popname:true,
viewAs:{name:links[0][2]},
ai1:function(){
@ -8122,7 +8125,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
if(name2.indexOf('gz_shibing')==0) return false;
if(lib.character[name1][1]!=lib.character[name2][1]) return false;
if(get.is.jun(this.name1)) return true;
var list=['re','diy','sp','jsp','shen','jg','xin','old','gz'];
var list=['re','diy','sp','jsp','shen','jg','xin','old','gz','ol'];
for(var i=0;i<list.length;i++){
if(name1.indexOf(list[i]+'_')==0){
name1=name1.slice(list[i].length+1);