こんなにも美しい嘘じゃない本当の仆らをありがとう

This commit is contained in:
Spmario233 2020-04-05 18:42:38 +08:00 committed by GitHub
parent 36b2b1d126
commit 28155495a4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
31 changed files with 315 additions and 65 deletions

Binary file not shown.

BIN
audio/die/ol_xiahouyuan.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/skill/cangzhuo1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/cangzhuo2.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/skill/shebian1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/shebian2.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -704,7 +704,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
ai:{ ai:{
basic:{ basic:{
order:function(){ order:function(){
return get.order({name:'tao'})+0.1; return 11;
}, },
useful:[3,1], useful:[3,1],
value:0 value:0

View File

@ -20,6 +20,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
key_yusa:['female','key',3,['yusa_yanyi','yusa_misa','dualside'],['dualside:key_misa']], key_yusa:['female','key',3,['yusa_yanyi','yusa_misa','dualside'],['dualside:key_misa']],
key_misa:['female','key',3,['misa_yehuo','misa_yusa','dualside'],['unseen']], key_misa:['female','key',3,['misa_yehuo','misa_yusa','dualside'],['unseen']],
key_masato:['male','key','4/8',['masato_baoquan']], key_masato:['male','key','4/8',['masato_baoquan']],
key_iwasawa:['female','key',3,['iwasawa_yinhang','iwasawa_mysong']],
key_kengo:['male','key',4,['kengo_weishang','kengo_guidui']],
// diy_caocao:['male','wei',4,['xicai','diyjianxiong','hujia']], // diy_caocao:['male','wei',4,['xicai','diyjianxiong','hujia']],
// diy_hanlong:['male','wei',4,['siji','ciqiu']], // diy_hanlong:['male','wei',4,['siji','ciqiu']],
diy_feishi:['male','shu',3,['shuaiyan','moshou']], diy_feishi:['male','shu',3,['shuaiyan','moshou']],
@ -96,7 +98,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
diy:{ diy:{
diy_tieba:["diy_wenyang","ns_zuoci","ns_lvzhi","ns_wangyun","ns_nanhua","ns_nanhua_left","ns_nanhua_right","ns_huamulan","ns_huangzu","ns_jinke","ns_yanliang","ns_wenchou","ns_caocao","ns_caocaosp","ns_zhugeliang","ns_wangyue","ns_yuji","ns_xinxianying","ns_guanlu","ns_simazhao","ns_sunjian","ns_duangui","ns_zhangbao","ns_masu","ns_zhangxiu","ns_lvmeng","ns_shenpei","ns_yujisp","ns_yangyi","ns_liuzhang","ns_xinnanhua","ns_zhangwei"], diy_tieba:["diy_wenyang","ns_zuoci","ns_lvzhi","ns_wangyun","ns_nanhua","ns_nanhua_left","ns_nanhua_right","ns_huamulan","ns_huangzu","ns_jinke","ns_yanliang","ns_wenchou","ns_caocao","ns_caocaosp","ns_zhugeliang","ns_wangyue","ns_yuji","ns_xinxianying","ns_guanlu","ns_simazhao","ns_sunjian","ns_duangui","ns_zhangbao","ns_masu","ns_zhangxiu","ns_lvmeng","ns_shenpei","ns_yujisp","ns_yangyi","ns_liuzhang","ns_xinnanhua","ns_zhangwei"],
diy_default:["diy_feishi","diy_liuyan","diy_yuji","diy_caiwenji","diy_lukang","diy_zhenji","diy_liufu","diy_xizhenxihong","diy_liuzan","diy_zaozhirenjun","diy_yangyi","diy_tianyu"], diy_default:["diy_feishi","diy_liuyan","diy_yuji","diy_caiwenji","diy_lukang","diy_zhenji","diy_liufu","diy_xizhenxihong","diy_liuzan","diy_zaozhirenjun","diy_yangyi","diy_tianyu"],
diy_key:["key_lucia","key_kyousuke","key_yuri","key_haruko","key_kagari","key_umi","key_rei","key_komari","key_yukine","key_yusa","key_misa","key_masato"], diy_key:["key_lucia","key_kyousuke","key_yuri","key_haruko","key_kagari","key_umi","key_rei","key_komari","key_yukine","key_yusa","key_misa","key_masato","key_iwasawa"],
}, },
}, },
characterIntro:{ characterIntro:{
@ -111,6 +113,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
diy_tianyu:'字国让,渔阳雍奴(今天津市武清区东北)人。三国时期曹魏将领。初从刘备,因母亲年老回乡,后跟随公孙瓒,公孙瓒败亡,劝说鲜于辅加入曹操。曹操攻略河北时,田豫正式得到曹操任用,历任颖阴、郎陵令、弋阳太守等。', diy_tianyu:'字国让,渔阳雍奴(今天津市武清区东北)人。三国时期曹魏将领。初从刘备,因母亲年老回乡,后跟随公孙瓒,公孙瓒败亡,劝说鲜于辅加入曹操。曹操攻略河北时,田豫正式得到曹操任用,历任颖阴、郎陵令、弋阳太守等。',
}, },
characterTitle:{ characterTitle:{
key_kengo:'#bLittle Busters!',
key_iwasawa:'#rAngel Beats!',
key_masato:'#bLittle Busters!', key_masato:'#bLittle Busters!',
key_yusa:'#bCharlotte', key_yusa:'#bCharlotte',
key_misa:'#rCharlotte', key_misa:'#rCharlotte',
@ -158,6 +162,174 @@ game.import('character',function(lib,game,ui,get,ai,_status){
yuji:['zuoci'] yuji:['zuoci']
}, },
skill:{ skill:{
kengo_weishang:{
locked:false,
mod:{
cardUsable:function(card,player,num){
if(card.name=='sha'&&player.isDisabled(1)) return num+1;
},
globalFrom:function(from,to,distance){
if(from.isDisabled(4)) return distance-1;
},
globalTo:function(from,to,distance){
if(to.isDisabled(3)) return distance+1;
},
},
enable:'phaseUse',
usable:1,
filter:function(event,player){
var list=['equip1','equip2','equip3','equip4','equip5'];
for(var i=0;i<list.length;i++){
if(!player.isDisabled(list[i])&&(!player.storage.kengo_guidui2||!player.storage.kengo_guidui2.contains(list[i]))) return true;
}
return false;
},
content:function(){
'step 0'
var list=['equip1','equip2','equip3','equip4','equip5'];
for(var i=0;i<list.length;i++){
if(player.isDisabled(list[i])||player.storage.kengo_guidui2&&player.storage.kengo_guidui2.contains(list[i])) list.splice(i--,1);
}
player.chooseControl(list).set('prompt','请选择废除一个装备栏').ai=function(){
if(list.contains('equip1')&&player.isEmpty('equip1')&&player.countCards('h',function(card){
return card.name=='sha'&&player.getUseValue(card)>0
})) return 'equip1';
if(list.contains('equip3')&&player.isEmpty('equip3')) return 'equip3';
if(list.contains('equip4')&&player.isEmpty('equip4')) return 'equip4';
if(list.contains('equip5')&&player.isEmpty('equip5')) return 'equip5';
if(list.contains('equip2')&&player.isEmpty('equip2')) return 'equip2';
return list.randomGet();
};
'step 1'
player.disableEquip(result.control);
player.draw(2);
},
group:['kengo_weishang_sha','kengo_weishang_shan'],
ai:{
order:10,
result:{player:1},
},
},
kengo_weishang_sha:{
trigger:{player:'useCardToPlayered'},
forced:true,
filter:function(event,player){
return event.card.name=='sha'&&player.isDisabled(1)&&event.target.countCards('he')>0;
},
logTarget:'target',
content:function(){
trigger.target.chooseToDiscard('he',true);
},
},
kengo_weishang_shan:{
enable:['chooseToUse','chooseToRespond'],
viewAs:{name:'shan'},
filterCard:true,
position:'he',
prompt:'将一张牌当做闪使用或打出',
viewAsFilter:function(player){
return player.isDisabled(2)&&player.countCards('he')>0;
},
check:function(card){
return 1/Math.max(0.1,get.value(card));
},
ai:{
respondShan:true,
skillTagFilter:function(player){
return player.isDisabled(2)&&player.countCards('he')>0;
},
},
},
kengo_guidui:{
trigger:{player:'phaseZhunbeiBegin'},
forced:true,
filter:function(event,player){
return player.countDisabled()>0;
},
content:function(){
var list=['equip1','equip2','equip3','equip4','equip5'];
for(var i=0;i<list.length;i++){
if(!player.isDisabled(list[i])) list.splice(i--,1);
else player.enableEquip(list[i]);
}
player.storage.kengo_guidui2=list;
player.addTempSkill('kengo_guidui2');
},
},
kengo_guidui2:{onremove:true},
iwasawa_yinhang:{
trigger:{player:'changeHp'},
locked:true,
direct:true,
line:{color:[235, 96, 138]},
content:function(){
'step 0'
event.count=Math.abs(trigger.num);
'step 1'
event.count--;
player.chooseTarget([1,2],get.prompt('iwasawa_yinhang'),'令至多两名角色各摸一张牌').set('ai',function(target){
return get.attitude(_status.event.player,target);
});
'step 2'
if(result.bool){
var targets=result.targets;
targets.sortBySeat();
player.logSkill('iwasawa_yinhang',targets,lib.skill.iwasawa_yinhang.line);
game.asyncDraw(targets);
}
else event.finish();
'step 3'
game.delay();
if(event.count>0) event.goto(1);
},
},
iwasawa_mysong:{
trigger:{player:['phaseBeginStart','phaseAfter','dyingBefore']},
forced:true,
filter:function(event,player){
return event.name=='dying'||player.hp<1;
},
content:function(){
if(trigger.name=='dying') trigger.cancel();
else if(event.triggername=='phaseBeginStart') player.addTempSkill('iwasawa_fenyin');
else player.die();
},
nobracket:true,
derivation:'iwasawa_fenyin',
},
iwasawa_fenyin:{
mod:{
aiOrder:function(player,card,num){
if(typeof card=='object'&&player==_status.currentPhase){
var evt=player.getLastUsed();
if(evt&&evt.card&&get.color(evt.card)!='none'&&get.color(card)!='none'&&get.color(evt.card)!=get.color(card)){
return num+10;
}
}
},
},
audio:2,
trigger:{player:'useCard'},
frequent:true,
//usable:3,
filter:function(event,player){
if(_status.currentPhase!=player) return false;
var evt=player.getLastUsed(1);
if(!evt) return false;
var color1=get.color(evt.card);
var color2=get.color(event.card);
return color1&&color2&&color1!='none'&&color2!='none'&&color1!=color2;
},
content:function(){
player.draw();
},
ai:{
threaten:function(player,target){
if(target.hp<1) return 3;
return 1;
},
},
},
masato_baoquan:{ masato_baoquan:{
trigger:{source:'damageBefore'}, trigger:{source:'damageBefore'},
forced:true, forced:true,
@ -5732,6 +5904,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
key_yusa:'西森柚咲', key_yusa:'西森柚咲',
key_misa:'黑羽美砂', key_misa:'黑羽美砂',
key_masato:'井之原真人', key_masato:'井之原真人',
key_iwasawa:'岩泽雅美',
key_kengo:'宫泽谦吾',
lucia_duqu:'毒躯', lucia_duqu:'毒躯',
lucia_duqu_info:'锁定技,①当你对其他角色造成伤害或受到其他角色的伤害时,你和对方各获得一张花色点数随机的【毒】。<br>②当你因【毒】失去体力时,你改为回复等量的体力。<br>③当你处于濒死状态时,你可以使用一张【毒】(每回合限一次)。', lucia_duqu_info:'锁定技,①当你对其他角色造成伤害或受到其他角色的伤害时,你和对方各获得一张花色点数随机的【毒】。<br>②当你因【毒】失去体力时,你改为回复等量的体力。<br>③当你处于濒死状态时,你可以使用一张【毒】(每回合限一次)。',
lucia_zhenren:'振刃', lucia_zhenren:'振刃',
@ -5773,6 +5947,18 @@ game.import('character',function(lib,game,ui,get,ai,_status){
misa_yusa_info:'当你发动的〖业火〗结算完成后,你可以将武将牌翻面。', misa_yusa_info:'当你发动的〖业火〗结算完成后,你可以将武将牌翻面。',
masato_baoquan:'暴拳', masato_baoquan:'暴拳',
masato_baoquan_info:'锁定技当你即将造成伤害时你选择一项1.令此伤害+2并减1点体力上限。2.防止此伤害。', masato_baoquan_info:'锁定技当你即将造成伤害时你选择一项1.令此伤害+2并减1点体力上限。2.防止此伤害。',
iwasawa_yinhang:'引吭',
iwasawa_yinhang_info:'锁定技当你的体力值变化1点时你可以令至多两名角色摸一张牌。',
iwasawa_mysong:'My Song',
iwasawa_mysong_info:'锁定技当你即将进行濒死结算时取消之。回合开始时若你的体力值小于1则你获得技能〖奋音〗直到回合结束。回合结束时若你的体力值小于1你死亡。',
iwasawa_fenyin:'奋音',
iwasawa_fenyin_info:'你的回合内,当你使用牌时,若此牌与你于此回合内使用的上一张牌的颜色不同,则你可以摸一张牌。',
kengo_weishang:'伪伤',
key_weishang_sha:'伪伤',
key_weishang_shan:'伪伤',
kengo_weishang_info:'出牌阶段限一次,你可以废除一个装备栏并摸两张牌。若你的武器栏已废除,则你使用【杀】的次数上限+1且当你使用【杀】指定目标后目标角色弃置一张牌若你的防具栏已废除则你可以将一张牌当做【闪】使用或打出若你的攻击/防御坐骑栏已废除,则你至其他角色的距离-1/其他角色至你的距离-1。',
kengo_guidui:'归队',
kengo_guidui_info:'锁定技,准备阶段,若你有已废除的装备栏,则你恢复这些装备栏,且本回合内发动【伪伤】时不能废除这些装备栏。',
ns_zhangwei:'张葳', ns_zhangwei:'张葳',
nsqiyue:'骑钺', nsqiyue:'骑钺',

View File

@ -7,11 +7,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
characterSort:{ characterSort:{
mobile:{ mobile:{
mobile_default:["miheng","taoqian","liuzan","lingcao","sunru","lifeng","zhuling","liuye","zhaotongzhaoguang","majun","simazhao","wangyuanji","pangdegong","shenpei","hujinding","zhangyì","jiakui"], mobile_default:["miheng","taoqian","liuzan","lingcao","sunru","lifeng","zhuling","liuye","zhaotongzhaoguang","majun","simazhao","wangyuanji","pangdegong","shenpei","hujinding","zhangyì","jiakui"],
mobile_others:["re_jikang","old_bulianshi","old_yuanshu","re_wangyun","re_baosanniang","re_weiwenzhugezhi","re_zhanggong","re_xugong","xin_yuanshao","re_liushan","xin_xiahoudun"], 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"],
mobile_sunben:["re_sunben"], mobile_sunben:["re_sunben"],
}, },
}, },
character:{ character:{
re_sp_zhugeliang:["male","shu",3,["bazhen","rehuoji","rekanpo"],[]],
xin_xiahoudun:['male','wei',4,['reganglie','xinqingjian']], xin_xiahoudun:['male','wei',4,['reganglie','xinqingjian']],
zhangyì:['male','shu',4,['zhiyi']], zhangyì:['male','shu',4,['zhiyi']],
jiakui:['male','wei',3,['zhongzuo','wanlan']], jiakui:['male','wei',3,['zhongzuo','wanlan']],
@ -476,7 +477,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
_status.imchoosing=false; _status.imchoosing=false;
event._result={ event._result={
bool:true, bool:true,
links:['qiaosi_c1','qiaosi_c2','qiaosi_c3','qiaosi_c4','qiaosi_c5','qiaosi_c6'].randomGets(3), links:['qiaosi_c1','qiaosi_c6'].concat(['qiaosi_c2','qiaosi_c3','qiaosi_c4','qiaosi_c5'].randomGets(1)),
}; };
if(event.dialog) event.dialog.close(); if(event.dialog) event.dialog.close();
if(event.control) event.control.close(); if(event.control) event.control.close();
@ -919,6 +920,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
'step 1' 'step 1'
player.loseMaxHp(); player.loseMaxHp();
}, },
ai:{
filterDamage:true,
skillTagFilter:function(player,tag,arg){
if(arg&&arg.card&&arg.card.name=='sha') return true;
return false;
},
},
}, },
wuyuan:{ wuyuan:{
audio:2, audio:2,
@ -3141,6 +3149,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}, },
}, },
translate:{ translate:{
"re_sp_zhugeliang":"手杀卧龙",
ly_piliche:'霹雳车', ly_piliche:'霹雳车',
ly_piliche_info:'当你对其他角色造成伤害后,若造成伤害的牌不为延时锦囊牌,你可以弃置其装备区里的防具牌与+1坐骑牌当你失去此装备时销毁之。', ly_piliche_info:'当你对其他角色造成伤害后,若造成伤害的牌不为延时锦囊牌,你可以弃置其装备区里的防具牌与+1坐骑牌当你失去此装备时销毁之。',
polu:'破橹', polu:'破橹',

View File

@ -863,7 +863,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
old_zhuran:'旧朱然', old_zhuran:'旧朱然',
old_madai:'旧马岱', old_madai:'旧马岱',
old_caoxiu:'旧曹休', old_caoxiu:'旧曹休',
old_huaxiong:'华雄',
old_wangyi:'旧王异', old_wangyi:'旧王异',
old_caozhen:'旧曹真', old_caozhen:'旧曹真',
old_quancong:'旧全琮', old_quancong:'旧全琮',

View File

@ -6,7 +6,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
refresh:{ refresh:{
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_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','re_weiyan','re_xiaoqiao','zhoutai','re_zhangjiao','xin_yuji'], refresh_feng:['caoren','ol_xiahouyuan','re_huangzhong','re_weiyan','re_xiaoqiao','zhoutai','re_zhangjiao','xin_yuji'],
refresh_huo:["re_sp_zhugeliang","re_xunyu","re_dianwei","re_yanwen","re_pangtong","ol_yuanshao","re_pangde"], refresh_huo:["ol_sp_zhugeliang","re_xunyu","re_dianwei","re_yanwen","re_pangtong","ol_yuanshao","re_pangde"],
refresh_lin:['re_zhurong','re_menghuo','re_dongzhuo','re_sunjian','re_caopi','re_xuhuang'], refresh_lin:['re_zhurong','re_menghuo','re_dongzhuo','re_sunjian','re_caopi','re_xuhuang'],
refresh_shan:['re_dengai','re_jiangwei','re_caiwenji','ol_liushan','re_zhangzhang','re_zuoci','re_sunce'], refresh_shan:['re_dengai','re_jiangwei','re_caiwenji','ol_liushan','re_zhangzhang','re_zuoci','re_sunce'],
refresh_yijiang:['re_xusheng','re_wuguotai','re_gaoshun'], refresh_yijiang:['re_xusheng','re_wuguotai','re_gaoshun'],
@ -59,7 +59,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
zhoutai:['male','wu',4,['buqu','fenji']], zhoutai:['male','wu',4,['buqu','fenji']],
re_pangde:['male','qun',4,['mashu','jianchu']], re_pangde:['male','qun',4,['mashu','jianchu']],
re_xuhuang:['male','wei',4,['duanliang','jiezi']], re_xuhuang:['male','wei',4,['duanliang','jiezi']],
re_sp_zhugeliang:["male","shu",3,["bazhen","rehuoji","rekanpo","cangzhuo"],[]], ol_sp_zhugeliang:["male","shu",3,["bazhen","rehuoji","rekanpo","cangzhuo"],[]],
re_xunyu:["male","wei",3,["quhu","rejieming"],[]], re_xunyu:["male","wei",3,["quhu","rejieming"],[]],
re_dianwei:["male","wei",4,["reqiangxi"],[]], re_dianwei:["male","wei",4,["reqiangxi"],[]],
re_yanwen:["male","qun",4,["reshuangxiong"],[]], re_yanwen:["male","qun",4,["reshuangxiong"],[]],
@ -95,6 +95,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
cangzhuo:{ cangzhuo:{
trigger:{player:'phaseDiscardBegin'}, trigger:{player:'phaseDiscardBegin'},
frequent:true, frequent:true,
audio:2,
filter:function(event,player){ filter:function(event,player){
return player.getHistory('useCard',function(card){ return player.getHistory('useCard',function(card){
return get.type(card.card,'trick')=='trick'; return get.type(card.card,'trick')=='trick';
@ -1622,6 +1623,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
rehuoji:{ rehuoji:{
position:"he", position:"he",
audio:2, audio:2,
audioname:['ol_sp_zhugeliang'],
enable:"chooseToUse", enable:"chooseToUse",
filterCard:function (card){ filterCard:function (card){
return get.color(card)=='red'; return get.color(card)=='red';
@ -1694,6 +1696,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}, },
rekanpo:{ rekanpo:{
audio:2, audio:2,
audioname:['ol_sp_zhugeliang'],
position:"he", position:"he",
enable:"chooseToUse", enable:"chooseToUse",
filterCard:function (card){ filterCard:function (card){
@ -5201,7 +5204,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
re_zhenji:'界甄姬', re_zhenji:'界甄姬',
re_huaxiong:"界华雄", re_huaxiong:"界华雄",
"re_sp_zhugeliang":"界卧龙", "ol_sp_zhugeliang":"界卧龙",
"re_xunyu":"界荀彧", "re_xunyu":"界荀彧",
"re_dianwei":"界典韦", "re_dianwei":"界典韦",
"re_yanwen":"界颜良文丑", "re_yanwen":"界颜良文丑",

View File

@ -4884,7 +4884,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}, },
bazhen:{ bazhen:{
audio:2, audio:2,
audioname:['re_sp_zhugeliang'], audioname:['re_sp_zhugeliang','ol_sp_zhugeliang'],
equipSkill:true, equipSkill:true,
noHidden:true, noHidden:true,
inherit:'bagua_skill', inherit:'bagua_skill',
@ -6264,10 +6264,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}, },
//priority:-15, //priority:-15,
intro:{ intro:{
content:'cards' content:'cards',
}, },
group:'gzbuqu_recover', group:'gzbuqu_recover',
locked:true, //locked:true,
frequent:true, frequent:true,
ondisable:true, ondisable:true,
onremove:function(player){ onremove:function(player){

View File

@ -1269,7 +1269,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.chooseTarget('是否失去〖蛮嗣〗,令一名其他男性角色和自己一同获得技能〖系力〗?',function(card,player,target){ player.chooseTarget('是否失去〖蛮嗣〗,令一名其他男性角色和自己一同获得技能〖系力〗?',function(card,player,target){
return target!=player&&target.sex=='male'; return target!=player&&target.sex=='male';
}).ai=function(target){ }).ai=function(target){
return 5-get.attitude(_status.event.player,target); return get.attitude(_status.event.player,target)-5;
}; };
'step 2' 'step 2'
if(result.bool){ if(result.bool){
@ -2398,7 +2398,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.loseHp(); player.loseHp();
event.finish(); event.finish();
} }
else if(event.count<3) player.chooseBool('是否继续发动【命戒】?').ai=lib.skill.mingjie.check; else if(event.count<3) player.chooseBool('是否继续发动【命戒】?').ai=function(){
if(event.count==2) return Math.random()<0.5;
return lib.skill.mingjie.check();
};
} }
else event.finish(); else event.finish();
'step 3' 'step 3'
@ -9934,7 +9937,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}, },
forced:true, forced:true,
content:function(){ content:function(){
Itrigger.addCount=false; trigger.addCount=false;
if(player.stat[player.stat.length-1].card.sha>0){ if(player.stat[player.stat.length-1].card.sha>0){
player.stat[player.stat.length-1].card.sha--; player.stat[player.stat.length-1].card.sha--;
} }
@ -16993,9 +16996,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
luanzhan:'乱战', luanzhan:'乱战',
luanzhan_info:'你使用【杀】或黑色普通锦囊牌可以额外选择X名角色为目标当你使用【杀】或黑色普通锦囊牌指定目标后若此牌的目标角色数小于X则X减至0。X为你于本局游戏内造成过伤害的次数', luanzhan_info:'你使用【杀】或黑色普通锦囊牌可以额外选择X名角色为目标当你使用【杀】或黑色普通锦囊牌指定目标后若此牌的目标角色数小于X则X减至0。X为你于本局游戏内造成过伤害的次数',
zhengnan:'征南', zhengnan:'征南',
zhengnan_info:'当其他角色死亡后,你可以摸三张牌。若如此做,你获得下列技能中的任意一个:〖武圣〗、 〖当先〗和〖制蛮〗(你以此法获得的〖当先〗结算时视为已发动过〖伏枥〗)。', zhengnan_info:'当其他角色死亡后,你可以摸三张牌。若如此做,你获得下列技能中的任意一个:〖武圣〗、 〖当先〗和〖制蛮〗。',
xinzhengnan:'征南', xinzhengnan:'征南',
xinzhengnan_info:'当其他角色死亡后,你可以摸三张牌,或者获得下列技能中的任意一个:〖武圣〗、 〖当先〗和〖制蛮〗', xinzhengnan_info:'当其他角色死亡后,你可以摸三张牌,或者获得下列技能中的任意一个:〖武圣〗、 〖当先〗和〖制蛮〗(你以此法获得的〖当先〗结算时视为已发动过〖伏枥〗)。',
xiefang:'撷芳', xiefang:'撷芳',
xiefang_info:'锁定技,你计算与其他角色的距离时-X。X为女性角色数', xiefang_info:'锁定技,你计算与其他角色的距离时-X。X为女性角色数',
qizhi:'奇制', qizhi:'奇制',

View File

@ -2713,7 +2713,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
var dialog=ui.create.dialog('惠民',cards,true); var dialog=ui.create.dialog('惠民',cards,true);
_status.dieClose.push(dialog); _status.dieClose.push(dialog);
dialog.videoId=lib.status.videoId++; dialog.videoId=lib.status.videoId++;
event.preResult=dialog.videoId; event.dialogID=dialog.videoId;
game.addVideo('cardDialog',null,['惠民',get.cardsInfo(cards),dialog.videoId]); game.addVideo('cardDialog',null,['惠民',get.cardsInfo(cards),dialog.videoId]);
game.broadcast(function(cards,id){ game.broadcast(function(cards,id){
var dialog=ui.create.dialog('惠民',cards,true); var dialog=ui.create.dialog('惠民',cards,true);
@ -2732,7 +2732,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
var next=event.current.chooseButton(true,function(button){ var next=event.current.chooseButton(true,function(button){
return get.value(button.link,_status.event.player); return get.value(button.link,_status.event.player);
}); });
next.set('dialog',event.preResult); next.set('dialog',event.dialogID);
next.set('closeDialog',false); next.set('closeDialog',false);
next.set('dialogdisplay',true); next.set('dialogdisplay',true);
next.set('cardFilter',event.togain.slice(0)); next.set('cardFilter',event.togain.slice(0));
@ -2742,7 +2742,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
} }
else{ else{
for(var i=0;i<ui.dialogs.length;i++){ for(var i=0;i<ui.dialogs.length;i++){
if(ui.dialogs[i].videoId==event.preResult){ if(ui.dialogs[i].videoId==event.dialogID){
var dialog=ui.dialogs[i]; var dialog=ui.dialogs[i];
dialog.close(); dialog.close();
_status.dieClose.remove(dialog); _status.dieClose.remove(dialog);
@ -2758,8 +2758,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
dialog.close(); dialog.close();
_status.dieClose.remove(dialog); _status.dieClose.remove(dialog);
} }
},event.preResult); },event.dialogID);
game.addVideo('cardDialog',null,event.preResult); game.addVideo('cardDialog',null,event.dialogID);
event.finish(); event.finish();
} }
'step 6' 'step 6'
@ -11003,6 +11003,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
} }
}, },
translate:{ translate:{
old_huaxiong:'华雄',
yufan:'虞翻', yufan:'虞翻',
wangyi:'王异', wangyi:'王异',
xushu:'旧徐庶', xushu:'旧徐庶',

View File

@ -549,6 +549,8 @@ window.noname_asset_list=[
'audio/die/re_xusheng.mp3', 'audio/die/re_xusheng.mp3',
'audio/die/zhangyì.mp3', 'audio/die/zhangyì.mp3',
'audio/die/jiakui.mp3', 'audio/die/jiakui.mp3',
'audio/die/ol_sp_zhugeliang.mp3',
'audio/die/ol_xiahouyuan.mp3'
'audio/skill/anguo1.mp3', 'audio/skill/anguo1.mp3',
'audio/skill/anguo2.mp3', 'audio/skill/anguo2.mp3',
@ -2369,6 +2371,18 @@ window.noname_asset_list=[
'audio/skill/tuiyan2.mp3', 'audio/skill/tuiyan2.mp3',
'audio/skill/zhafu1.mp3', 'audio/skill/zhafu1.mp3',
'audio/skill/zhafu2.mp3', 'audio/skill/zhafu2.mp3',
'audio/skill/bazhen_ol_sp_zhugeliang1.mp3',
'audio/skill/bazhen_ol_sp_zhugeliang2.mp3',
'audio/skill/cangzhuo1.mp3',
'audio/skill/cangzhuo2.mp3',
'audio/skill/rehuoji_ol_sp_zhugeliang1.mp3',
'audio/skill/rehuoji_ol_sp_zhugeliang2.mp3',
'audio/skill/rekanpo_ol_sp_zhugeliang1.mp3',
'audio/skill/rekanpo_ol_sp_zhugeliang2.mp3',
'audio/skill/shebian1.mp3',
'audio/skill/shebian2.mp3',
'audio/skill/shensu1_ol_xiahouyuan1.mp3',
'audio/skill/shensu1_ol_xiahouyuan2.mp3',
'font/huangcao.ttf', 'font/huangcao.ttf',
'font/shousha.ttf', 'font/shousha.ttf',
@ -2869,6 +2883,9 @@ window.noname_asset_list=[
'image/character/key_misa.jpg', 'image/character/key_misa.jpg',
'image/character/key_masato.jpg', 'image/character/key_masato.jpg',
'image/character/ol_xiahouyuan.jpg', 'image/character/ol_xiahouyuan.jpg',
'image/character/key_iwasawa.jpg',
'image/character/key_kengo.jpg',
'image/character/ol_sp_zhugeliang.jpg',
'image/character/baiwuchang.jpg', 'image/character/baiwuchang.jpg',
'image/character/baosanniang.jpg', 'image/character/baosanniang.jpg',

View File

@ -10164,22 +10164,21 @@
} }
}, },
disableEquip:function(){ disableEquip:function(){
//event.trigger('disableEquip');
if(!player.isDisabled(event.pos)){ if(!player.isDisabled(event.pos)){
player.storage.disableEquip.add(event.pos); var cards=player.getCards('e',function(card){
//player.markSkill('_disableEquip'); var subtype=get.subtype(card);
player.syncStorage('_disableEquip'); if(subtype==event.pos) return true;
if(player.getEquip(event.pos)) player.discard(player.getEquip(event.pos)).delay=false; if(subtype=='equip6'&&['equip3','equip4'].contains(event.pos)) return true;
return false;
});
if(cards.length) player.discard(cards).delay=false;
game.log(player,'废除了',get.translation(event.pos),'栏'); game.log(player,'废除了',get.translation(event.pos),'栏');
player.$disableEquip(event.pos); player.$disableEquip(event.pos);
} }
}, },
enableEquip:function(){ enableEquip:function(){
//event.trigger('enableEquip');
if(player.isDisabled(event.pos)){ if(player.isDisabled(event.pos)){
player.storage.disableEquip.remove(event.pos);
player.syncStorage('_disableEquip'); player.syncStorage('_disableEquip');
//if(player.storage.disableEquip.length==0) player.unmarkSkill('_disableEquip');
game.log(player,'恢复了',get.translation(event.pos),'栏'); game.log(player,'恢复了',get.translation(event.pos),'栏');
player.$enableEquip(event.pos); player.$enableEquip(event.pos);
}; };
@ -10193,26 +10192,14 @@
//player.markSkill('_disableJudge'); //player.markSkill('_disableJudge');
'step 1' 'step 1'
game.broadcastAll(function(player,card){ game.broadcastAll(function(player,card){
player.storage._disableJudge=true; player.$disableJudge();
card.fix(); },player);
card.classList.add('feichu');
card.style.transform='';
card.classList.add('drawinghidden');
player.node.judges.insertBefore(card,player.node.judges.firstChild);
ui.updatej(player);
},player,game.createCard('disable_judge','',''));
}, },
enableJudge:function(){ enableJudge:function(){
if(!player.storage._disableJudge) return; if(!player.storage._disableJudge) return;
game.log(player,'恢复了判定区'); game.log(player,'恢复了判定区');
game.broadcastAll(function(player){ game.broadcastAll(function(player){
player.storage._disableJudge=false; player.$enableJudge();
for(var i=0;i<player.node.judges.childNodes.length;i++){
if(player.node.judges.childNodes[i].name=='disable_judge'){
player.node.judges.removeChild(player.node.judges.childNodes[i]);
break;
}
}
},player); },player);
}, },
/*----分界线----*/ /*----分界线----*/
@ -13366,7 +13353,7 @@
var sgnatt=get.sgn(att); var sgnatt=get.sgn(att);
if(ui.selected.targets.length==0){ if(ui.selected.targets.length==0){
if(att>0){ if(att>0){
if(!_status.event.nojudge&&target.countCards('j')) return 10; if(!_status.event.nojudge&&target.countCards('j')) return 14;
if(target.countCards('e',function(card){ if(target.countCards('e',function(card){
return get.value(card,target)<0&&game.hasPlayer(function(current){ return get.value(card,target)<0&&game.hasPlayer(function(current){
return current!=target&&get.attitude(player,current)<0&&current.isEmpty(get.subtype(card)) return current!=target&&get.attitude(player,current)<0&&current.isEmpty(get.subtype(card))
@ -13378,7 +13365,7 @@
if(current!=target&&get.attitude(player,current)>0){ if(current!=target&&get.attitude(player,current)>0){
var es=target.getCards('e'); var es=target.getCards('e');
for(var i=0;i<es.length;i++){ for(var i=0;i<es.length;i++){
if(get.value(es[i],target)>0&&current.isEmpty(get.subtype(es[i]))) return true; if(get.value(es[i],target)>0&&current.isEmpty(get.subtype(es[i]))&&get.value(es[i],current)>0) return true;
} }
} }
})){ })){
@ -15584,14 +15571,18 @@
game.broadcast(function(player,skill){ game.broadcast(function(player,skill){
player.$disableEquip(skill); player.$disableEquip(skill);
},this,skill); },this,skill);
var player=this;
if(!player.storage.disableEquip) player.storage.disableEquip=[];
player.storage.disableEquip.add(skill);
player.storage.disableEquip.sort();
var pos={equip1:'武器栏',equip2:'防具栏',equip3:'+1马栏',equip4:'-1马栏',equip5:'宝物栏'}[skill]; var pos={equip1:'武器栏',equip2:'防具栏',equip3:'+1马栏',equip4:'-1马栏',equip5:'宝物栏'}[skill];
if(!pos) return;
var card=game.createCard('feichu_'+skill,pos,''); var card=game.createCard('feichu_'+skill,pos,'');
card.fix(); card.fix();
card.style.transform=''; card.style.transform='';
card.classList.remove('drawinghidden'); card.classList.remove('drawinghidden');
card.classList.add('feichu'); card.classList.add('feichu');
delete card._transform; delete card._transform;
var player=this;
var equipNum=get.equipNum(card); var equipNum=get.equipNum(card);
var equipped=false; var equipped=false;
for(var i=0;i<player.node.equips.childNodes.length;i++){ for(var i=0;i<player.node.equips.childNodes.length;i++){
@ -15623,6 +15614,7 @@
player.$enableEquip(skill); player.$enableEquip(skill);
},this,skill); },this,skill);
var player=this; var player=this;
if(player.storage.disableEquip) player.storage.disableEquip.remove(skill);
for(var i=0;i<player.node.equips.childNodes.length;i++){ for(var i=0;i<player.node.equips.childNodes.length;i++){
if(player.node.equips.childNodes[i].name=='feichu_'+skill){ if(player.node.equips.childNodes[i].name=='feichu_'+skill){
player.node.equips.removeChild(player.node.equips.childNodes[i]); player.node.equips.removeChild(player.node.equips.childNodes[i]);
@ -15646,6 +15638,27 @@
} }
return !this.isDisabled(num)&&!this.getEquip(num); return !this.isDisabled(num)&&!this.getEquip(num);
}, },
$disableJudge:function(){
var player=this;
var card=game.createCard('disable_judge','','');
player.storage._disableJudge=true;
card.fix();
card.classList.add('feichu');
card.style.transform='';
card.classList.add('drawinghidden');
player.node.judges.insertBefore(card,player.node.judges.firstChild);
ui.updatej(player);
},
$enableJudge:function(){
var player=this;
player.storage._disableJudge=false;
for(var i=0;i<player.node.judges.childNodes.length;i++){
if(player.node.judges.childNodes[i].name=='disable_judge'){
player.node.judges.removeChild(player.node.judges.childNodes[i]);
break;
}
}
},
disableJudge:function(){ disableJudge:function(){
var next=game.createEvent('disableJudge'); var next=game.createEvent('disableJudge');
next.player=this; next.player=this;
@ -16229,12 +16242,15 @@
maxHp:this.maxHp, maxHp:this.maxHp,
nickname:this.nickname, nickname:this.nickname,
sex:this.sex, sex:this.sex,
group:this.group,
name:this.name, name:this.name,
name1:this.name1, name1:this.name1,
name2:this.name2, name2:this.name2,
handcards:this.getCards('h'), handcards:this.getCards('h'),
equips:this.getCards('e'), equips:this.getCards('e'),
judges:this.getCards('j'), judges:this.getCards('j'),
disableJudge:this.storage._disableJudge,
disableEquip:this.storage.disableEquip,
views:[], views:[],
position:parseInt(this.dataset.position), position:parseInt(this.dataset.position),
hujia:this.hujia, hujia:this.hujia,
@ -25764,6 +25780,7 @@
} }
player.playerid=i; player.playerid=i;
player.nickname=info.nickname; player.nickname=info.nickname;
player.changeGroup(info.group,false,false);
player.identity=info.identity; player.identity=info.identity;
player.identityShown=info.identityShown; player.identityShown=info.identityShown;
player.hp=info.hp; player.hp=info.hp;
@ -25791,6 +25808,14 @@
if(info.turnedover){ if(info.turnedover){
player.classList.add('turnedover'); player.classList.add('turnedover');
} }
if(info.disableJudge){
player.$disableJudge();
}
if(Array.isArray(info.disableEquip)){
for(var ii=0;ii<info.disableEquip.length;ii++){
player.$disableEquip(info.disableEquip[ii]);
}
}
player.directgain(info.handcards); player.directgain(info.handcards);
lib.playerOL[i]=player; lib.playerOL[i]=player;
@ -32154,7 +32179,7 @@
} }
for(i=0;i<skills.length;i++){ for(i=0;i<skills.length;i++){
info=get.info(skills[i]); info=get.info(skills[i]);
if(info.mod&&info.mod[name]){ if(info&&info.mod&&info.mod[name]){
var result=info.mod[name].apply(this,arg); var result=info.mod[name].apply(this,arg);
if(typeof arg[arg.length-1]!='object'&&result!=undefined) arg[arg.length-1]=result; if(typeof arg[arg.length-1]!='object'&&result!=undefined) arg[arg.length-1]=result;
} }

View File

@ -1,32 +1,32 @@
window.noname_update={ window.noname_update={
version:'1.9.98.4.5', version:'1.9.98.5',
update:'1.9.98.4.4', update:'1.9.98.4.5',
changeLog:[ changeLog:[
'bug修复', 'The final...「My Song」...',
], ],
files:[ files:[
//'card/extra.js', //'card/extra.js',
//'card/huanlekapai.js', //'card/huanlekapai.js',
//'card/sp.js', //'card/sp.js',
//'card/standard.js', 'card/standard.js',
//'card/swd.js', //'card/swd.js',
//'card/mtg.js', //'card/mtg.js',
//'card/guozhan.js', //'card/guozhan.js',
//'card/gwent.js', //'card/gwent.js',
'card/yunchou.js', //'card/yunchou.js',
//'card/zhenfa.js', //'card/zhenfa.js',
//'card/zhulu.js', //'card/zhulu.js',
'character/diy.js', 'character/diy.js',
'character/extra.js', //'character/extra.js',
//'character/hearth.js', //'character/hearth.js',
//'character/gujian.js', //'character/gujian.js',
//'character/gwent.js', //'character/gwent.js',
//'character/hearth.js', //'character/hearth.js',
//'character/mobile.js', 'character/mobile.js',
//'character/mtg.js', //'character/mtg.js',
//'character/old.js', 'character/old.js',
'character/refresh.js', 'character/refresh.js',
//'character/shenhua.js', 'character/shenhua.js',
'character/sp.js', 'character/sp.js',
//'character/tw.js', //'character/tw.js',
//'character/standard.js', //'character/standard.js',
@ -45,8 +45,8 @@ window.noname_update={
//'mode/tafang.js', //'mode/tafang.js',
//'mode/single.js', //'mode/single.js',
//'mode/stone.js', //'mode/stone.js',
'mode/brawl.js', //'mode/brawl.js',
'mode/versus.js', //'mode/versus.js',
//'mode/boss.js', //'mode/boss.js',
'game/game.js', 'game/game.js',
//'game/NoSleep.js', //'game/NoSleep.js',

Binary file not shown.

After

Width:  |  Height:  |  Size: 258 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 131 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 280 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 95 KiB

After

Width:  |  Height:  |  Size: 226 KiB

View File

@ -6363,7 +6363,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
var player=lib.playerOL[i]; var player=lib.playerOL[i];
state[i]={ state[i]={
identity:player.identity, identity:player.identity,
group:player.group, //group:player.group,
shown:player.ai.shown, shown:player.ai.shown,
}; };
} }
@ -6374,7 +6374,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
var player=lib.playerOL[i]; var player=lib.playerOL[i];
if(player){ if(player){
player.identity=state[i].identity; player.identity=state[i].identity;
player.group=state[i].group; //player.group=state[i].group;
player.ai.shown=state[i].shown; player.ai.shown=state[i].shown;
} }
} }

View File

@ -203,7 +203,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
delete _status.new_tutorial; delete _status.new_tutorial;
if(_status.connectMode){ if(_status.connectMode){
game.waitForPlayer(function(){ game.waitForPlayer(function(){
if(lib.configOL.identity_mode=='zhong'){ if(lib.configOL.identity_mode=='zhong'||lib.configOL.identity_mode=='purple'){
lib.configOL.number=8; lib.configOL.number=8;
} }
}); });
@ -345,6 +345,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
state[i].special_identity=player.special_identity; state[i].special_identity=player.special_identity;
} }
state[i].shown=player.ai.shown; state[i].shown=player.ai.shown;
//state[i].group=player.group;
} }
return state; return state;
}, },
@ -371,6 +372,8 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
game.zhong=player; game.zhong=player;
} }
player.ai.shown=state[i].shown; player.ai.shown=state[i].shown;
//player.group=state[i].group;
//player.node.name.dataset.nature=get.groupnature(player.group);
} }
} }
}, },
@ -703,6 +706,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
"step 2" "step 2"
var map={}; var map={};
var map_zhu={}; var map_zhu={};
event.mapNum={};
var list=[]; var list=[];
var libCharacter={}; var libCharacter={};
for(var i=0;i<lib.configOL.characterPack.length;i++){ for(var i=0;i<lib.configOL.characterPack.length;i++){
@ -714,6 +718,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
} }
for(var i in libCharacter){ for(var i in libCharacter){
if(lib.filter.characterDisabled(i,libCharacter)) continue; if(lib.filter.characterDisabled(i,libCharacter)) continue;
if(i.indexOf('lingju')!=-1) continue;
var group=lib.character[i][1]; var group=lib.character[i][1];
if(group=='shen') continue; if(group=='shen') continue;
if(!map[group]){ if(!map[group]){
@ -733,6 +738,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
delete map[i]; delete map[i];
list.remove(i); list.remove(i);
} }
else event.mapNum[i]=map[i].length>15?5:3;
} }
list.sort(function(a,b){ list.sort(function(a,b){
return lib.group.indexOf(a)-lib.group.indexOf(b); return lib.group.indexOf(a)-lib.group.indexOf(b);
@ -773,7 +779,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
}); });
"step 5" "step 5"
for(var i in result){ for(var i in result){
if(result[i]=='ai'){ if(result[i]=='ai'||!result[i]||!result[i].links){
result[i]=event.map[i].randomGet(); result[i]=event.map[i].randomGet();
} }
else{ else{
@ -803,7 +809,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
if(true){ if(true){
var group=event[players[i].identity.slice(0,1)+'Zhu']; var group=event[players[i].identity.slice(0,1)+'Zhu'];
var str='选择角色'; var str='选择角色';
var list2=event.map[group].randomGets(5); var list2=event.map[group].randomRemove(event.mapNum[group]);
event.map[players[i].playerid]=list2; event.map[players[i].playerid]=list2;
list.push([players[i],[str,[list2,'character']],true]); list.push([players[i],[str,[list2,'character']],true]);
} }
@ -815,7 +821,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
}); });
"step 6" "step 6"
for(var i in result){ for(var i in result){
if(result[i]=='ai'){ if(result[i]=='ai'||!result[i]||!result[i].links){
result[i]=event.map[i].randomGet(); result[i]=event.map[i].randomGet();
} }
else{ else{
@ -885,6 +891,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
var list=[]; var list=[];
for(var i in lib.character){ for(var i in lib.character){
if(lib.filter.characterDisabled(i)) continue; if(lib.filter.characterDisabled(i)) continue;
if(i.indexOf('lingju')!=-1) continue;
var group=lib.character[i][1]; var group=lib.character[i][1];
if(group=='shen') continue; if(group=='shen') continue;
if(!map[group]){ if(!map[group]){