This commit is contained in:
Spmario233 2021-09-18 20:39:28 +08:00
parent 24bf898c8c
commit 8e944edf54
69 changed files with 1380 additions and 32 deletions

BIN
audio/die/liuzhang.mp3 Normal file

Binary file not shown.

Binary file not shown.

BIN
audio/die/qiaogong.mp3 Normal file

Binary file not shown.

BIN
audio/die/sp_yanghu.mp3 Normal file

Binary file not shown.

BIN
audio/die/sp_zhangwen.mp3 Normal file

Binary file not shown.

BIN
audio/die/xin_caifuren.mp3 Normal file

Binary file not shown.

BIN
audio/die/xin_guyong.mp3 Normal file

Binary file not shown.

Binary file not shown.

BIN
audio/skill/binglun1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/binglun2.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/skill/gebo1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/gebo2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/gonghuan1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/gonghuan2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/huaibi1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/huaibi2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/jishi1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/jishi2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/liaoyi1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/liaoyi2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/liehou1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/liehou2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/luanchou1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/luanchou2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/mibei1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/mibei2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/mingfa1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/mingfa2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/qigong1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/qigong2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/qingyu1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/qingyu2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/rongbei1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/rongbei2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/spsongshu1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/spsongshu2.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/skill/xingqi1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/xingqi2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/xinqieting1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/xinqieting2.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/skill/xiusheng1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/xiusheng2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/yinlang1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/yinlang2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/yizhu1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/yizhu2.mp3 Normal file

Binary file not shown.

View File

@ -537,6 +537,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
animationColor:'key', animationColor:'key',
content:function(){ content:function(){
'step 0' 'step 0'
game.log(player,'成功完成使命');
player.awakenSkill('mia_qianmeng'); player.awakenSkill('mia_qianmeng');
if(player!=trigger.player) player.gain(player.storage.mia_qianmeng,trigger.player,'give'); if(player!=trigger.player) player.gain(player.storage.mia_qianmeng,trigger.player,'give');
'step 1' 'step 1'
@ -554,6 +555,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}, },
content:function(){ content:function(){
'step 0' 'step 0'
game.log(player,'使命失败');
player.chooseTarget(get.prompt('mia_qianmeng'),'令一名角色获得牌堆中所有点数为'+player.storage.mia_qianmeng.number+'的牌',lib.filter.notMe); player.chooseTarget(get.prompt('mia_qianmeng'),'令一名角色获得牌堆中所有点数为'+player.storage.mia_qianmeng.number+'的牌',lib.filter.notMe);
'step 1' 'step 1'
if(result.bool){ if(result.bool){

File diff suppressed because it is too large Load Diff

View File

@ -253,6 +253,7 @@ window.noname_character_rank={
'liubian', 'liubian',
'panshu', 'panshu',
'caochun', 'caochun',
'xin_caifuren',
'key_misuzu', 'key_misuzu',
'key_sunohara', 'key_sunohara',
'key_umi', 'key_umi',
@ -478,6 +479,7 @@ window.noname_character_rank={
're_dongcheng', 're_dongcheng',
'ol_yujin', 'ol_yujin',
'ol_huaxin', 'ol_huaxin',
'zhangzhongjing',
], ],
bp:[ bp:[
'chess_diaochan', 'chess_diaochan',
@ -689,6 +691,9 @@ window.noname_character_rank={
'duxi', 'duxi',
'heyan', 'heyan',
're_caifuren', 're_caifuren',
'sp_kongrong',
'qiaogong',
'liuzhang',
], ],
b:[ b:[
'diy_feishi', 'diy_feishi',
@ -869,7 +874,6 @@ window.noname_character_rank={
'shibao', 'shibao',
'zhangmiao', 'zhangmiao',
'ol_zhurong', 'ol_zhurong',
'sp_kongrong',
'sp_mifangfushiren', 'sp_mifangfushiren',
'zhangheng', 'zhangheng',
're_hucheer', 're_hucheer',
@ -878,6 +882,7 @@ window.noname_character_rank={
'xiangchong', 'xiangchong',
'qiuliju', 'qiuliju',
're_dongbai', 're_dongbai',
're_guyong',
], ],
bm:[ bm:[
'diy_xizhenxihong', 'diy_xizhenxihong',
@ -1026,6 +1031,7 @@ window.noname_character_rank={
'wangfuzhaolei', 'wangfuzhaolei',
'caizhenji', 'caizhenji',
'longyufei', 'longyufei',
'sp_zhangwen',
], ],
c:[ c:[
'xiahoudun', 'xiahoudun',
@ -1703,6 +1709,11 @@ window.noname_character_rank={
're_caifuren', 're_caifuren',
're_dongbai', 're_dongbai',
'tw_dongzhao', 'tw_dongzhao',
'xin_caifuren',
'sp_yanghu',
'qiaogong',
'liuzhang',
'zhangzhongjing',
], ],
junk:[ junk:[
'sunshao', 'sunshao',

View File

@ -12,12 +12,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
refresh_yijiang1:['re_wuguotai','re_gaoshun','re_caozhi','yujin_yujin','re_masu','xin_xusheng','re_fazheng','xin_lingtong','re_zhangchunhua'], refresh_yijiang1:['re_wuguotai','re_gaoshun','re_caozhi','yujin_yujin','re_masu','xin_xusheng','re_fazheng','xin_lingtong','re_zhangchunhua'],
refresh_yijiang2:['old_madai','wangyi','guanzhang','xin_handang','re_zhonghui','re_liaohua','re_chengpu','re_caozhang','re_bulianshi','xin_liubiao'], refresh_yijiang2:['old_madai','wangyi','guanzhang','xin_handang','re_zhonghui','re_liaohua','re_chengpu','re_caozhang','re_bulianshi','xin_liubiao'],
refresh_yijiang3:['re_jianyong','re_guohuai','re_zhuran','re_panzhangmazhong','re_yufan','re_liru','re_manchong','re_fuhuanghou','re_guanping'], refresh_yijiang3:['re_jianyong','re_guohuai','re_zhuran','re_panzhangmazhong','re_yufan','re_liru','re_manchong','re_fuhuanghou','re_guanping'],
refresh_yijiang4:['re_sunluban','re_wuyi','re_hanhaoshihuan','re_caozhen','re_zhoucang','re_chenqun','re_caifuren'], refresh_yijiang4:['re_sunluban','re_wuyi','re_hanhaoshihuan','re_caozhen','re_zhoucang','re_chenqun','re_caifuren','xin_guyong'],
refresh_yijiang5:['re_zhangyi','re_quancong','re_caoxiu','re_sunxiu','re_gongsunyuan','re_guotufengji'], refresh_yijiang5:['re_zhangyi','re_quancong','re_caoxiu','re_sunxiu','re_gongsunyuan','re_guotufengji'],
}, },
}, },
connect:true, connect:true,
character:{ character:{
xin_guyong:['male','wu',3,['xinshenxing','bingyi']],
re_caifuren:['female','qun',3,['reqieting','rexianzhou']], re_caifuren:['female','qun',3,['reqieting','rexianzhou']],
re_guanping:['male','shu',4,['relongyin','jiezhong']], re_guanping:['male','shu',4,['relongyin','jiezhong']],
re_guotufengji:['male','qun',3,['rejigong','shifei']], re_guotufengji:['male','qun',3,['rejigong','shifei']],
@ -136,6 +137,27 @@ game.import('character',function(lib,game,ui,get,ai,_status){
re_xushu:['zhaoyun','sp_zhugeliang'], re_xushu:['zhaoyun','sp_zhugeliang'],
}, },
skill:{ skill:{
xinshenxing:{
audio:2,
enable:'phaseUse',
filter:function(event,player){
return (player.getStat('skill').xinshenxing||0)<player.hp&&player.countCards('he')>1;
},
selectCard:2,
position:'he',
check:function(card){
if(!ui.selected.cards.length||get.color(card)!=get.color(ui.selected.cards[0])) return 6.5-get.value(card);
return 6.5-get.value(card)-get.value(ui.selected.cards[0]);
},
filterCard:true,
content:function(){
player.draw(get.color(cards)=='none'?2:1);
},
ai:{
order:1,
result:{player:1},
},
},
//界蔡夫人 //界蔡夫人
reqieting:{ reqieting:{
audio:2, audio:2,
@ -9779,6 +9801,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
reqieting_info:'其他角色的回合结束时,若其本回合内未造成过伤害,则你可将其装备区内的一张牌置于你的装备区内;若其本回合内未对其他角色使用过牌,则你可摸一张牌。', reqieting_info:'其他角色的回合结束时,若其本回合内未造成过伤害,则你可将其装备区内的一张牌置于你的装备区内;若其本回合内未对其他角色使用过牌,则你可摸一张牌。',
rexianzhou:'献州', rexianzhou:'献州',
rexianzhou_info:'限定技。出牌阶段你可将装备区内的所有牌交给一名其他角色。你回复X点体力然后对其攻击范围内的至多X名角色各造成1点伤害X为你以此法给出的牌数。', rexianzhou_info:'限定技。出牌阶段你可将装备区内的所有牌交给一名其他角色。你回复X点体力然后对其攻击范围内的至多X名角色各造成1点伤害X为你以此法给出的牌数。',
xin_guyong:'界顾雍',
xinshenxing:'慎行',
xinshenxing_info:'出牌阶段限X次X为你的体力值你可以弃置两张牌然后摸一张牌。若这两张牌颜色不同则改为摸两张牌。',
refresh_standard:'界限突破·标', refresh_standard:'界限突破·标',
refresh_feng:'界限突破·风', refresh_feng:'界限突破·风',

View File

@ -767,17 +767,23 @@ game.import('character',function(lib,game,ui,get,ai,_status){
else event.finish(); else event.finish();
'step 3' 'step 3'
if(result.bool){ if(result.bool){
player.$gain2(event.cards2); for(var i=0;i<cards.length;i++){
player.gain(event.cards2); if(event.cards2.contains(cards[i])){
game.delay(0.3); targets[i].$give(cards[i],player,false);
}
}
player.gain(event.cards2,'log');
} }
else event.finish(); else event.finish();
'step 4' 'step 4'
var draws=[];
for(var i=0;i<cards.length;i++){ for(var i=0;i<cards.length;i++){
if(!event.cards2.contains(cards[i])){ if(!event.cards2.contains(cards[i])){
targets[i].discard(cards[i]).delay=false; targets[i].discard(cards[i]).delay=false;
} }
else draws.push(targets[i]);
} }
if(draws.length) game.asyncDraw(draws);
'step 5' 'step 5'
game.delayx(); game.delayx();
}, },

View File

@ -8745,6 +8745,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}, },
bingyi:{ bingyi:{
audio:2, audio:2,
audioname:['xin_guyong'],
trigger:{player:'phaseJieshuBegin'}, trigger:{player:'phaseJieshuBegin'},
filter:function(event,player){ filter:function(event,player){
return player.countCards('h')>0; return player.countCards('h')>0;
@ -9329,6 +9330,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
skillAnimation:true, skillAnimation:true,
animationColor:'gray', animationColor:'gray',
audio:2, audio:2,
audioname:['xin_caifuren'],
unique:true, unique:true,
limited:true, limited:true,
enable:'phaseUse', enable:'phaseUse',
@ -12119,7 +12121,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
zhoucang:['re_zhoucang','xin_zhoucang','zhoucang'], zhoucang:['re_zhoucang','xin_zhoucang','zhoucang'],
guotufengji:['re_guotufengji','guotufengji'], guotufengji:['re_guotufengji','guotufengji'],
guanping:['re_guanping','guanping'], guanping:['re_guanping','guanping'],
caifuren:['re_caifuren','caifuren'], caifuren:['xin_caifuren','re_caifuren','caifuren'],
guyong:['xin_guyong','guyong'],
}, },
translate:{ translate:{
old_huaxiong:'华雄', old_huaxiong:'华雄',

View File

@ -1,5 +1,5 @@
window.noname_asset_list=[ window.noname_asset_list=[
'v1.9.110.8.5.1', 'v1.9.110.8.6',
'audio/background/aozhan_chaoming.mp3', 'audio/background/aozhan_chaoming.mp3',
'audio/background/aozhan_online.mp3', 'audio/background/aozhan_online.mp3',
'audio/background/aozhan_rewrite.mp3', 'audio/background/aozhan_rewrite.mp3',
@ -764,6 +764,14 @@ window.noname_asset_list=[
'audio/die/re_caifuren.mp3', 'audio/die/re_caifuren.mp3',
'audio/die/tw_dongzhao.mp3', 'audio/die/tw_dongzhao.mp3',
'audio/die/tw_gexuan.mp3', 'audio/die/tw_gexuan.mp3',
'audio/die/liuzhang.mp3',
'audio/die/lvkuanglvxiang.mp3',
'audio/die/qiaogong.mp3',
'audio/die/sp_yanghu.mp3',
'audio/die/sp_zhangwen.mp3',
'audio/die/xin_caifuren.mp3',
'audio/die/xin_guyong.mp3',
'audio/die/zhangzhongjing.mp3',
'audio/skill/decadezishou1.mp3', 'audio/skill/decadezishou1.mp3',
'audio/skill/decadezishou2.mp3', 'audio/skill/decadezishou2.mp3',
@ -3408,6 +3416,50 @@ window.noname_asset_list=[
'audio/skill/yachai2.mp3', 'audio/skill/yachai2.mp3',
'audio/skill/yusui1.mp3', 'audio/skill/yusui1.mp3',
'audio/skill/yusui2.mp3', 'audio/skill/yusui2.mp3',
'audio/skill/binglun1.mp3',
'audio/skill/binglun2.mp3',
'audio/skill/bingyi_xin_guyong1.mp3',
'audio/skill/bingyi_xin_guyong2.mp3',
'audio/skill/gebo1.mp3',
'audio/skill/gebo2.mp3',
'audio/skill/gonghuan1.mp3',
'audio/skill/gonghuan2.mp3',
'audio/skill/huaibi1.mp3',
'audio/skill/huaibi2.mp3',
'audio/skill/jishi1.mp3',
'audio/skill/jishi2.mp3',
'audio/skill/liaoyi1.mp3',
'audio/skill/liaoyi2.mp3',
'audio/skill/liehou1.mp3',
'audio/skill/liehou2.mp3',
'audio/skill/luanchou1.mp3',
'audio/skill/luanchou2.mp3',
'audio/skill/mibei1.mp3',
'audio/skill/mibei2.mp3',
'audio/skill/mingfa1.mp3',
'audio/skill/mingfa2.mp3',
'audio/skill/qigong1.mp3',
'audio/skill/qigong2.mp3',
'audio/skill/qingyu1.mp3',
'audio/skill/qingyu2.mp3',
'audio/skill/rongbei1.mp3',
'audio/skill/rongbei2.mp3',
'audio/skill/spsongshu1.mp3',
'audio/skill/spsongshu2.mp3',
'audio/skill/xianzhou_xin_caifuren1.mp3',
'audio/skill/xianzhou_xin_caifuren2.mp3',
'audio/skill/xingqi1.mp3',
'audio/skill/xingqi2.mp3',
'audio/skill/xinqieting1.mp3',
'audio/skill/xinqieting2.mp3',
'audio/skill/xinshenxing1.mp3',
'audio/skill/xinshenxing2.mp3',
'audio/skill/xiusheng1.mp3',
'audio/skill/xiusheng2.mp3',
'audio/skill/yinlang1.mp3',
'audio/skill/yinlang2.mp3',
'audio/skill/yizhu1.mp3',
'audio/skill/yizhu2.mp3',
'audio/voice/male/0.mp3', 'audio/voice/male/0.mp3',
'audio/voice/male/1.mp3', 'audio/voice/male/1.mp3',
@ -4315,6 +4367,13 @@ window.noname_asset_list=[
'image/character/pengyang.jpg', 'image/character/pengyang.jpg',
'image/character/tw_dongzhao.jpg', 'image/character/tw_dongzhao.jpg',
'image/character/tw_gexuan.jpg', 'image/character/tw_gexuan.jpg',
'image/character/liuzhang.jpg',
'image/character/qiaogong.jpg',
'image/character/sp_yanghu.jpg',
'image/character/sp_zhangwen.jpg',
'image/character/xin_caifuren.jpg',
'image/character/xin_guyong.jpg',
'image/character/zhangzhongjing.jpg',
'image/character/baiwuchang.jpg', 'image/character/baiwuchang.jpg',
'image/character/baosanniang.jpg', 'image/character/baosanniang.jpg',

View File

@ -28,6 +28,7 @@
yingbian_fujia:[], yingbian_fujia:[],
yingbian_canqu:[], yingbian_canqu:[],
}, },
renku:[],
}; };
var lib={ var lib={
configprefix:'noname_0.9_', configprefix:'noname_0.9_',
@ -6677,6 +6678,7 @@
'<div style="margin:10px">游戏操作</div><ul style="margin-top:0"><li>在命令框中输出结果<br>game.print(str)<li>清除命令框中的内容<br>cls<li>上一条/下一条输入的内容<br>up/down<li>游戏结束<br>game.over(bool)'+ '<div style="margin:10px">游戏操作</div><ul style="margin-top:0"><li>在命令框中输出结果<br>game.print(str)<li>清除命令框中的内容<br>cls<li>上一条/下一条输入的内容<br>up/down<li>游戏结束<br>game.over(bool)'+
'<li>角色资料<br>lib.character<li>卡牌资料<br>lib.card</ul>', '<li>角色资料<br>lib.character<li>卡牌资料<br>lib.card</ul>',
'游戏名词':'<ul><li>智囊:无名杀默认为过河拆桥/无懈可击/无中生有/洞烛先机。牌堆中没有的智囊牌会被过滤。可在卡牌设置中自行增减。若没有可用的智囊,则改为随机选取的三种锦囊牌的牌名。'+ '游戏名词':'<ul><li>智囊:无名杀默认为过河拆桥/无懈可击/无中生有/洞烛先机。牌堆中没有的智囊牌会被过滤。可在卡牌设置中自行增减。若没有可用的智囊,则改为随机选取的三种锦囊牌的牌名。'+
'<li>仁库:部分武将使用的游戏外共通区域。至多包含六张牌。当有新牌注入后,若牌数超过上限,则将最早进入仁库的溢出牌置入弃牌堆。'+
'<li>护甲:和体力类似,每点护甲可抵挡一点伤害,但不影响手牌上限'+ '<li>护甲:和体力类似,每点护甲可抵挡一点伤害,但不影响手牌上限'+
'<li>随从:通过技能获得,拥有独立的技能、手牌区和装备区(共享判定区),出场时替代主武将的位置;随从死亡时自动切换回主武将'+ '<li>随从:通过技能获得,拥有独立的技能、手牌区和装备区(共享判定区),出场时替代主武将的位置;随从死亡时自动切换回主武将'+
'<li>发现:从三张随机亮出的牌中选择一张,若无特殊说明,则获得此牌'+ '<li>发现:从三张随机亮出的牌中选择一张,若无特殊说明,则获得此牌'+
@ -10362,6 +10364,7 @@
pss_paper_info:'石头剪刀布时的一种手势。克制石头,但被剪刀克制。', pss_paper_info:'石头剪刀布时的一种手势。克制石头,但被剪刀克制。',
pss_scissor_info:'石头剪刀布时的一种手势。克制布,但被石头克制。', pss_scissor_info:'石头剪刀布时的一种手势。克制布,但被石头克制。',
pss_stone_info:'石头剪刀布时的一种手势。克制剪刀,但被布克制。', pss_stone_info:'石头剪刀布时的一种手势。克制剪刀,但被布克制。',
renku:'仁库',
}, },
element:{ element:{
content:{ content:{
@ -10674,6 +10677,15 @@
cards[i].fix(); cards[i].fix();
ui.special.appendChild(cards[i]); ui.special.appendChild(cards[i]);
} }
if(event.toRenku){
_status.renku.addArray(cards);
if(_status.renku.length>6){
var cards=_status.renku.splice(0,_status.renku.length-6);
game.log(cards,'从仁库进入了弃牌堆');
game.cardsDiscard(cards).fromRenku=true;
}
game.updateRenku();
}
if(event.notrigger!==true) event.trigger('addCardToStorage'); if(event.notrigger!==true) event.trigger('addCardToStorage');
}, },
chooseToEnable:function(){ chooseToEnable:function(){
@ -15442,6 +15454,7 @@
else if(event.position==ui.cardPile){ else if(event.position==ui.cardPile){
game.updateRoundNumber(); game.updateRoundNumber();
} }
if(event.toRenku) _status.renku.addArray(cards);
event.hs=hs; event.hs=hs;
event.es=es; event.es=es;
event.js=js; event.js=js;
@ -15491,6 +15504,15 @@
event.num++; event.num++;
event.goto(2); event.goto(2);
"step 4" "step 4"
if(event.toRenku){
if(_status.renku.length>6){
var cards=_status.renku.splice(0,_status.renku.length-6);
game.log(cards,'从仁库进入了弃牌堆');
game.cardsDiscard(cards).fromRenku=true;
}
game.updateRenku();
}
"step 5"
var evt=event.getParent(); var evt=event.getParent();
if(evt.name!='discard'&&event.type!='discard') return; if(evt.name!='discard'&&event.type!='discard') return;
if(evt.delay!=false){ if(evt.delay!=false){
@ -16443,6 +16465,7 @@
return next; return next;
}, },
addGaintag:function(cards,tag){ addGaintag:function(cards,tag){
if(get.itemtype(cards)=='card') cards=[cards];
game.addVideo('addGaintag',this,[get.cardsInfo(cards),tag]); game.addVideo('addGaintag',this,[get.cardsInfo(cards),tag]);
game.broadcastAll(function(player,cards,tag){ game.broadcastAll(function(player,cards,tag){
var hs=player.getCards('h'); var hs=player.getCards('h');
@ -19891,6 +19914,10 @@
else if(arguments[i]=='fromStorage'){ else if(arguments[i]=='fromStorage'){
next.fromStorage=true; next.fromStorage=true;
} }
else if(arguments[i]=='fromRenku'){
next.fromStorage=true;
next.fromRenku=true;
}
else if(arguments[i]=='bySelf'){ else if(arguments[i]=='bySelf'){
next.bySelf=true; next.bySelf=true;
} }
@ -19957,6 +19984,10 @@
else if(arguments[i]=='toStorage'){ else if(arguments[i]=='toStorage'){
next.toStorage=true; next.toStorage=true;
} }
else if(arguments[i]=='toRenku'){
next.toStorage=true;
next.toRenku=true;
}
else if(arguments[i]=='visible'){ else if(arguments[i]=='visible'){
next.visible=true; next.visible=true;
} }
@ -21788,6 +21819,14 @@
return history; return history;
} }
}, },
hasHistory:function(key,filter,last){
var history=this.getHistory(key).slice(0);
if(last) history=history.slice(0,history.indexOf(last)+1);
for(var i=0;i<history.length;i++){
if(filter(history[i])) return true;
}
return false;
},
getLastHistory:function(key,filter,last){ getLastHistory:function(key,filter,last){
var history=false; var history=false;
for(var i=this.actionHistory.length-1;i>=0;i--){ for(var i=this.actionHistory.length-1;i>=0;i--){
@ -21827,6 +21866,18 @@
} }
return list; return list;
}, },
hasAllHistory:function(key,filter,last){
var list=[];
var all=this.actionHistory;
for(var j=0;j<all.length;j++){
var history=all[j][key].slice(0);
if(last) history=history.slice(0,history.indexOf(last)+1);
for(var i=0;i<history.length;i++){
if(filter(history[i])) return true;
}
}
return false;
},
getLastUsed:function(num){ getLastUsed:function(num){
if(typeof num!='number') num=0; if(typeof num!='number') num=0;
var history=this.getHistory('useCard'); var history=this.getHistory('useCard');
@ -26063,6 +26114,21 @@
} }
}, },
skill:{ skill:{
renku:{
intro:{
markcount:function(){
return _status.renku.length;
},
mark:function(dialog,content,player){
if(!_status.renku.length) return '仁库中没有牌';
else dialog.addAuto(_status.renku);
},
content:function(){
if(!_status.renku.length) return '仁库中没有牌';
return get.translation(_status.renku);
},
},
},
_showHiddenCharacter:{ _showHiddenCharacter:{
trigger:{player:['changeHp','phaseBeginStart','loseMaxHpBegin']}, trigger:{player:['changeHp','phaseBeginStart','loseMaxHpBegin']},
firstDo:true, firstDo:true,
@ -27514,6 +27580,7 @@
} }
ui.arena.setNumber(state.number); ui.arena.setNumber(state.number);
_status.mode=state.mode; _status.mode=state.mode;
_status.renku=state.renku;
lib.inpile=state.inpile; lib.inpile=state.inpile;
var pos=state.players[observe||game.onlineID].position; var pos=state.players[observe||game.onlineID].position;
for(var i in state.players){ for(var i in state.players){
@ -27843,6 +27910,14 @@
], ],
}; };
var game={ var game={
updateRenku:function(){
game.broadcast(function(renku){
_status.renku=renku;
},_status.renku);
for(var i of game.players){
if(i.storage.renku) i.markSkill('renku');
}
},
loseAsync:function(arg){ loseAsync:function(arg){
var next=game.createEvent('loseAsync'); var next=game.createEvent('loseAsync');
next.getl=function(player){ next.getl=function(player){
@ -27913,7 +27988,8 @@
if(type!='cards'&&type!='card') return; if(type!='cards'&&type!='card') return;
var next=game.createEvent('cardsGotoSpecial'); var next=game.createEvent('cardsGotoSpecial');
next.cards=type=='cards'?cards.slice(0):[cards]; next.cards=type=='cards'?cards.slice(0):[cards];
if(bool===false) next.notrigger=true; if(bool=='toRenku') next.toRenku=true;
else if(bool===false) next.notrigger=true;
next.setContent('cardsGotoSpecial'); next.setContent('cardsGotoSpecial');
return next; return next;
}, },
@ -50021,6 +50097,7 @@
roomId:game.roomId, roomId:game.roomId,
over:_status.over, over:_status.over,
inpile:lib.inpile, inpile:lib.inpile,
renku:_status.renku,
}; };
for(var i in lib.playerOL){ for(var i in lib.playerOL){
state.players[i]=lib.playerOL[i].getState(); state.players[i]=lib.playerOL[i].getState();

View File

@ -4,7 +4,7 @@
var bannedKeys=[]; var bannedKeys=[];
var bannedIps=[]; var bannedIps=[];
var rooms=[{},{},{},{},{},{},{},{}]; var rooms=[{},{},{},{},{},{},{},{},{},{}];
var events=[]; var events=[];
var clients={}; var clients={};
var bannedKeyWords=[]; var bannedKeyWords=[];

View File

@ -1,11 +1,9 @@
window.noname_update={ window.noname_update={
version:'1.9.110.8.5.1', version:'1.9.110.8.6',
update:'1.9.110.8.5', update:'1.9.110.8.5.1',
changeLog:[ changeLog:[
'TW董昭、TW葛玄', '手杀蔡夫人、顾雍、刘璋、桥公、羊祜、张机、张温',
'国战文聘、彭羕', '糜夫人、王凌、孔融技能调整',
'张横、吕旷吕翔、辛毗技能调整',
'移除欢乐武将',
'bug修复', 'bug修复',
], ],
files:[ files:[
@ -22,8 +20,8 @@ window.noname_update={
//'card/yingbian.js', //'card/yingbian.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',
@ -35,16 +33,16 @@ window.noname_update={
//'character/ow.js', //'character/ow.js',
'character/rank.js', 'character/rank.js',
'character/refresh.js', 'character/refresh.js',
'character/shenhua.js', //'character/shenhua.js',
'character/sp.js', //'character/sp.js',
'character/sp2.js', 'character/sp2.js',
'character/tw.js', //'character/tw.js',
'character/standard.js', //'character/standard.js',
//'character/swd.js', //'character/swd.js',
//'character/xianjian.js', //'character/xianjian.js',
//'character/xinghuoliaoyuan.js', //'character/xinghuoliaoyuan.js',
//'character/yingbian.js', //'character/yingbian.js',
//'character/yijiang.js', 'character/yijiang.js',
//'character/yxs.js', //'character/yxs.js',
//'extension/boss/extension.js', //'extension/boss/extension.js',
//'layout/default/layout.css', //'layout/default/layout.css',
@ -55,12 +53,12 @@ window.noname_update={
//'mode/brawl.js', //'mode/brawl.js',
//'mode/chess.js', //'mode/chess.js',
//'mode/doudizhu.js', //'mode/doudizhu.js',
'mode/guozhan.js', //'mode/guozhan.js',
//'mode/identity.js', //'mode/identity.js',
//'mode/single.js', //'mode/single.js',
//'mode/stone.js', //'mode/stone.js',
//'mode/tafang.js', //'mode/tafang.js',
'mode/versus.js', //'mode/versus.js',
'game/game.js', 'game/game.js',
//'game/keyWords.js', //'game/keyWords.js',
//'game/NoSleep.js', //'game/NoSleep.js',

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 178 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 KiB