界钟繇
This commit is contained in:
parent
03e230dd10
commit
2f070bdcfa
|
@ -4794,7 +4794,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
var pos=lib.skill.midu_backup.equip;
|
var pos=lib.skill.midu_backup.equip;
|
||||||
if(pos<=0) player.enableJudge();
|
if(pos<=0) player.enableJudge();
|
||||||
else player.enableEquip(pos);
|
else player.enableEquip(pos);
|
||||||
player.addTempSkill('huomo',{player:'phaseBegin'});
|
player.addTempSkill('rehuomo',{player:'phaseBegin'});
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4834,7 +4834,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
return '废除'+numc+'个区域并令一名角色摸'+numc+'张牌';
|
return '废除'+numc+'个区域并令一名角色摸'+numc+'张牌';
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
derivation:'huomo',
|
derivation:'rehuomo',
|
||||||
ai:{
|
ai:{
|
||||||
order:8,
|
order:8,
|
||||||
result:{player:1},
|
result:{player:1},
|
||||||
|
|
|
@ -13,13 +13,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
refresh_yijiang2:['re_madai','re_wangyi','xin_handang','xin_zhonghui','re_liaohua','re_chengpu','re_caozhang','dc_bulianshi','xin_liubiao','re_xunyou','re_guanzhang'],
|
refresh_yijiang2:['re_madai','re_wangyi','xin_handang','xin_zhonghui','re_liaohua','re_chengpu','re_caozhang','dc_bulianshi','xin_liubiao','re_xunyou','re_guanzhang'],
|
||||||
refresh_yijiang3:['re_jianyong','re_guohuai','re_zhuran','re_panzhangmazhong','xin_yufan','dc_liru','re_manchong','re_fuhuanghou','re_guanping','re_liufeng','re_caochong'],
|
refresh_yijiang3:['re_jianyong','re_guohuai','re_zhuran','re_panzhangmazhong','xin_yufan','dc_liru','re_manchong','re_fuhuanghou','re_guanping','re_liufeng','re_caochong'],
|
||||||
refresh_yijiang4:['re_sunluban','re_wuyi','re_hanhaoshihuan','re_caozhen','re_zhoucang','dc_chenqun','re_caifuren','re_guyong','re_jushou','re_zhuhuan','re_zhangsong'],
|
refresh_yijiang4:['re_sunluban','re_wuyi','re_hanhaoshihuan','re_caozhen','re_zhoucang','dc_chenqun','re_caifuren','re_guyong','re_jushou','re_zhuhuan','re_zhangsong'],
|
||||||
refresh_yijiang5:['re_zhangyi','re_quancong','re_caoxiu','re_sunxiu','re_gongsunyuan','re_guotufengji','re_xiahoushi','re_liuchen','re_zhuzhi','re_caorui'],
|
refresh_yijiang5:['re_zhangyi','re_quancong','re_caoxiu','re_sunxiu','re_gongsunyuan','re_guotufengji','re_xiahoushi','re_liuchen','re_zhuzhi','re_caorui','re_zhongyao'],
|
||||||
refresh_yijiang6:['re_guohuanghou','re_sundeng'],
|
refresh_yijiang6:['re_guohuanghou','re_sundeng'],
|
||||||
refresh_xinghuo:['xin_zhangliang','re_zhugedan','re_simalang','re_duji','dc_gongsunzan','re_sp_taishici','re_caiyong','re_mazhong','re_wenpin','re_jsp_huangyueying'],
|
refresh_xinghuo:['xin_zhangliang','re_zhugedan','re_simalang','re_duji','dc_gongsunzan','re_sp_taishici','re_caiyong','re_mazhong','re_wenpin','re_jsp_huangyueying'],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
connect:true,
|
connect:true,
|
||||||
character:{
|
character:{
|
||||||
|
re_zhongyao:['male','wei',3,['rehuomo','zuoding'],['clan:颍川钟氏']],
|
||||||
xin_zhangliang:['male','qun',4,['rejijun','refangtong'],['unseen']],
|
xin_zhangliang:['male','qun',4,['rejijun','refangtong'],['unseen']],
|
||||||
re_simalang:['male','wei',3,['requji','rejunbing'],['unseen']],
|
re_simalang:['male','wei',3,['requji','rejunbing'],['unseen']],
|
||||||
re_zhugedan:['male','wei',4,['regongao','rejuyi'],['unseen']],
|
re_zhugedan:['male','wei',4,['regongao','rejuyi'],['unseen']],
|
||||||
|
@ -166,6 +167,149 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
re_guohuai:['xiahouyuan','zhanghe'],
|
re_guohuai:['xiahouyuan','zhanghe'],
|
||||||
},
|
},
|
||||||
skill:{
|
skill:{
|
||||||
|
rehuomo:{
|
||||||
|
audio:'huomo',
|
||||||
|
audioname:['huzhao','re_zhongyao'],
|
||||||
|
enable:'chooseToUse',
|
||||||
|
hiddenCard:function(player,name){
|
||||||
|
if(get.type(name)!='basic') return false;
|
||||||
|
const list=player.getStorage('rehuomo');
|
||||||
|
if(list.contains(name)) return false;
|
||||||
|
return player.hasCard(function(card){
|
||||||
|
return get.color(card)=='black'&&get.type(card)!='basic';
|
||||||
|
},'eh');
|
||||||
|
},
|
||||||
|
filter:function(event,player){
|
||||||
|
if(event.type=='wuxie'||!player.hasCard(function(card){
|
||||||
|
return get.color(card)=='black'&&get.type(card)!='basic';
|
||||||
|
},'eh')) return false;
|
||||||
|
const list=player.getStorage('rehuomo');
|
||||||
|
for(let name of lib.inpile){
|
||||||
|
if(get.type(name)!='basic'||list.contains(name)) continue;
|
||||||
|
let card={name:name,isCard:true};
|
||||||
|
if(event.filterCard(card,player,event)) return true;
|
||||||
|
if(name=='sha'){
|
||||||
|
for(let nature of lib.inpile_nature){
|
||||||
|
card.nature=nature;
|
||||||
|
if(event.filterCard(card,player,event)) return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
},
|
||||||
|
chooseButton:{
|
||||||
|
dialog:function(event,player){
|
||||||
|
const vcards=[];
|
||||||
|
const list=player.getStorage('rehuomo');
|
||||||
|
for(let name of lib.inpile){
|
||||||
|
if(get.type(name)!='basic'||list.contains(name)) continue;
|
||||||
|
let card={name:name,isCard:true};
|
||||||
|
if(event.filterCard(card,player,event)) vcards.push(['基本','',name]);
|
||||||
|
if(name=='sha'){
|
||||||
|
for(let nature of lib.inpile_nature){
|
||||||
|
card.nature=nature;
|
||||||
|
if(event.filterCard(card,player,event)) vcards.push(['基本','',name,nature]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ui.create.dialog('活墨',[vcards,'vcard'],'hidden');
|
||||||
|
},
|
||||||
|
check:function(button){
|
||||||
|
const player=_status.event.player;
|
||||||
|
const card={name:button.link[2],nature:button.link[3]};
|
||||||
|
if(game.hasPlayer(function(current){
|
||||||
|
return player.canUse(card,current)&&get.effect(current,card,player,player)>0;
|
||||||
|
})){
|
||||||
|
switch(button.link[2]){
|
||||||
|
case 'tao':return 5;
|
||||||
|
case 'jiu':return 3.01;
|
||||||
|
case 'shan':return 3.01;
|
||||||
|
case 'sha':
|
||||||
|
if(button.link[3]=='fire') return 2.95;
|
||||||
|
else if(button.link[3]=='fire') return 2.92;
|
||||||
|
else return 2.9;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
},
|
||||||
|
backup:function(links,player){
|
||||||
|
return {
|
||||||
|
check:function(card){
|
||||||
|
return 1/Math.max(0.1,get.value(card));
|
||||||
|
},
|
||||||
|
filterCard:function(card){
|
||||||
|
return get.type(card)!='basic'&&get.color(card)=='black';
|
||||||
|
},
|
||||||
|
viewAs:{
|
||||||
|
name:links[0][2],
|
||||||
|
nature:links[0][3],
|
||||||
|
suit:'none',
|
||||||
|
number:null,
|
||||||
|
isCard:true,
|
||||||
|
},
|
||||||
|
position:'he',
|
||||||
|
popname:true,
|
||||||
|
ignoreMod:true,
|
||||||
|
precontent:function(){
|
||||||
|
player.logSkill('rehuomo');
|
||||||
|
var card=event.result.cards[0];
|
||||||
|
game.log(player,'将',card,'置于牌堆顶');
|
||||||
|
player.loseToDiscardpile(card,ui.cardPile,'visible','insert').log=false;
|
||||||
|
var viewAs={name:event.result.card.name,nature:event.result.card.nature};
|
||||||
|
event.result.card=viewAs;
|
||||||
|
event.result.cards=[];
|
||||||
|
if(!player.hasStorage('rehuomo')){
|
||||||
|
player.when('phaseAfter').then(()=>{player.unmarkSkill('rehuomo')});
|
||||||
|
}
|
||||||
|
player.markAuto('rehuomo',viewAs.name)
|
||||||
|
},
|
||||||
|
}
|
||||||
|
},
|
||||||
|
prompt:function(links,player){
|
||||||
|
return '将一张黑色非基本牌置于牌堆顶并视为使用一张'+get.translation(links[0][3]||'')+get.translation(links[0][2]);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
marktext:'墨',
|
||||||
|
intro:{
|
||||||
|
content:'本回合已因〖活墨〗使用过$',
|
||||||
|
onunmark:true,
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
order:function(){
|
||||||
|
var player=_status.event.player;
|
||||||
|
var event=_status.event;
|
||||||
|
var list=player.getStorage('rehuomo');
|
||||||
|
if(!list.contains('jiu')&&event.filterCard({name:'jiu'},player,event)&&get.effect(player,{name:'jiu'})>0){
|
||||||
|
return 3.1;
|
||||||
|
}
|
||||||
|
return 2.9;
|
||||||
|
},
|
||||||
|
respondSha:true,
|
||||||
|
fireAttack:true,
|
||||||
|
respondShan:true,
|
||||||
|
skillTagFilter:function(player,tag,arg){
|
||||||
|
if(tag=='fireAttack') return true;
|
||||||
|
if(player.hasCard(function(card){
|
||||||
|
return get.color(card)=='black'&&get.type(card)!='basic';
|
||||||
|
},'he')){
|
||||||
|
var list=player.getStorage('rehuomo');
|
||||||
|
if(tag=='respondSha'){
|
||||||
|
if(arg!='use') return false;
|
||||||
|
if(list.contains('sha')) return false;
|
||||||
|
}
|
||||||
|
else if(tag=='respondShan'){
|
||||||
|
if(list.contains('shan')) return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
result:{
|
||||||
|
player:1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
//界张梁
|
//界张梁
|
||||||
rejijun:{
|
rejijun:{
|
||||||
audio:2,
|
audio:2,
|
||||||
|
@ -14973,6 +15117,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
rejuyi_info:'觉醒技。准备阶段,若你已受伤,且你的体力上限大于场上的存活角色数,你将手牌数摸至体力上限,然后获得技能〖崩坏〗和〖威重〗。',
|
rejuyi_info:'觉醒技。准备阶段,若你已受伤,且你的体力上限大于场上的存活角色数,你将手牌数摸至体力上限,然后获得技能〖崩坏〗和〖威重〗。',
|
||||||
reweizhong:'威重',
|
reweizhong:'威重',
|
||||||
reweizhong_info:'锁定技。当你的体力上限增加或减少时,你摸两张牌。',
|
reweizhong_info:'锁定技。当你的体力上限增加或减少时,你摸两张牌。',
|
||||||
|
re_zhongyao:'界钟繇',
|
||||||
|
rehuomo:'活墨',
|
||||||
|
rehuomo_info:'每种牌名每回合限一次。当你需要使用一张基本牌时,你可以将一张黑色非基本牌置于牌堆顶,视为使用此基本牌。',
|
||||||
|
|
||||||
refresh_standard:'界限突破·标',
|
refresh_standard:'界限突破·标',
|
||||||
refresh_feng:'界限突破·风',
|
refresh_feng:'界限突破·风',
|
||||||
|
|
|
@ -8288,6 +8288,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
qinwang_ai:{},
|
qinwang_ai:{},
|
||||||
zuoding:{
|
zuoding:{
|
||||||
|
audio:2,
|
||||||
|
audioname:['re_zhongyao'],
|
||||||
trigger:{global:'useCardToPlayered'},
|
trigger:{global:'useCardToPlayered'},
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
if(event.getParent().triggeredTargets3.length>1) return false;
|
if(event.getParent().triggeredTargets3.length>1) return false;
|
||||||
|
@ -8326,7 +8328,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
huomo:{
|
huomo:{
|
||||||
audio:2,
|
audio:2,
|
||||||
audioname:['huzhao'],
|
audioname:['huzhao','re_zhongyao'],
|
||||||
enable:'chooseToUse',
|
enable:'chooseToUse',
|
||||||
onChooseToUse:function(event){
|
onChooseToUse:function(event){
|
||||||
if(game.online||event.huomo_list) return;
|
if(game.online||event.huomo_list) return;
|
||||||
|
@ -8420,17 +8422,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
popname:true,
|
popname:true,
|
||||||
ignoreMod:true,
|
ignoreMod:true,
|
||||||
precontent:function(){
|
precontent:function(){
|
||||||
'step 0'
|
|
||||||
player.logSkill('huomo');
|
player.logSkill('huomo');
|
||||||
var card=event.result.cards[0];
|
var card=event.result.cards[0];
|
||||||
event.card=card;
|
|
||||||
player.$throw(card,1000);
|
|
||||||
game.log(player,'将',card,'置于牌堆顶');
|
game.log(player,'将',card,'置于牌堆顶');
|
||||||
event.result.card={name:event.result.card.name,nature:event.result.card.nature};
|
event.result.card={name:event.result.card.name,nature:event.result.card.nature};
|
||||||
event.result.cards=[];
|
event.result.cards=[];
|
||||||
player.lose(card,ui.cardPile,'visible','insert');
|
player.loseToDiscardpile(card,ui.cardPile,'visible','insert').log=false;
|
||||||
'step 1'
|
|
||||||
game.delay();
|
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -13596,6 +13593,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
sunziliufang:['dc_sunziliufang','sunziliufang'],
|
sunziliufang:['dc_sunziliufang','sunziliufang'],
|
||||||
liyan:['liyan','old_liyan'],
|
liyan:['liyan','old_liyan'],
|
||||||
zhangsong:['re_zhangsong','zhangsong'],
|
zhangsong:['re_zhangsong','zhangsong'],
|
||||||
|
zhongyao:['re_zhongyao','zhongyao'],
|
||||||
},
|
},
|
||||||
translate:{
|
translate:{
|
||||||
old_huaxiong:'将华雄',
|
old_huaxiong:'将华雄',
|
||||||
|
|
15
game/game.js
15
game/game.js
|
@ -18281,8 +18281,11 @@
|
||||||
loseToDiscardpile:function(){
|
loseToDiscardpile:function(){
|
||||||
"step 0"
|
"step 0"
|
||||||
if(event.log!=false) game.log(player,'将',cards,'置入了弃牌堆');
|
if(event.log!=false) game.log(player,'将',cards,'置入了弃牌堆');
|
||||||
event.done=player.lose(cards,event.position,'visible');
|
var next=player.lose(cards,event.position,'visible');
|
||||||
event.done.type='loseToDiscardpile';
|
if(event.insert_index) next.insert_index=event.index;
|
||||||
|
if(event.insert_card) next.insert_card=true;
|
||||||
|
next.type='loseToDiscardpile';
|
||||||
|
event.done=next;
|
||||||
"step 1"
|
"step 1"
|
||||||
event.trigger('loseToDiscardpile');
|
event.trigger('loseToDiscardpile');
|
||||||
},
|
},
|
||||||
|
@ -23893,6 +23896,9 @@
|
||||||
else if(arguments[i]=='notBySelf'){
|
else if(arguments[i]=='notBySelf'){
|
||||||
next.notBySelf=true;
|
next.notBySelf=true;
|
||||||
}
|
}
|
||||||
|
else if(arguments[i]=='insert'){
|
||||||
|
next.insert_card=true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if(next.cards==undefined) _status.event.next.remove(next);
|
if(next.cards==undefined) _status.event.next.remove(next);
|
||||||
next.setContent('loseToDiscardpile');
|
next.setContent('loseToDiscardpile');
|
||||||
|
@ -25293,9 +25299,12 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
markAuto:function(name,info){
|
markAuto:function(name,info){
|
||||||
if(Array.isArray(info)){
|
if(typeof info!='undefined'){
|
||||||
if(!Array.isArray(this.storage[name])) this.storage[name]=[];
|
if(!Array.isArray(this.storage[name])) this.storage[name]=[];
|
||||||
|
if(Array.isArray(info)){
|
||||||
this.storage[name].addArray(info);
|
this.storage[name].addArray(info);
|
||||||
|
}
|
||||||
|
else this.storage[name].add(info);
|
||||||
this.markSkill(name);
|
this.markSkill(name);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 84 KiB |
Loading…
Reference in New Issue