commit
01990ed554
|
@ -71,12 +71,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
characterReplace:{
|
characterReplace:{
|
||||||
shen_zhangliao:['ol_zhangliao','shen_zhangliao'],
|
shen_zhangliao:['ol_zhangliao','shen_zhangliao'],
|
||||||
shen_zhaoyun:['shen_zhaoyun','old_shen_zhaoyun','boss_zhaoyun'],
|
shen_zhaoyun:['shen_zhaoyun','dc_zhaoyun','old_shen_zhaoyun','boss_zhaoyun'],
|
||||||
shen_guanyu:['shen_guanyu','tw_shen_guanyu'],
|
shen_guanyu:['shen_guanyu','tw_shen_guanyu'],
|
||||||
shen_sunquan:['shen_sunquan','junk_sunquan'],
|
shen_sunquan:['shen_sunquan','junk_sunquan'],
|
||||||
shen_lvmeng:['shen_lvmeng','tw_shen_lvmeng'],
|
shen_lvmeng:['shen_lvmeng','tw_shen_lvmeng'],
|
||||||
shen_machao:['shen_machao','ps_shen_machao'],
|
shen_machao:['shen_machao','ps_shen_machao'],
|
||||||
shen_jiaxu:['le_shen_jiaxu','shen_jiaxu'],
|
shen_jiaxu:['le_shen_jiaxu','shen_jiaxu'],
|
||||||
|
shen_caocao:['shen_caocao','old_caocao'],
|
||||||
},
|
},
|
||||||
characterFilter:{
|
characterFilter:{
|
||||||
shen_diaochan(mode){
|
shen_diaochan(mode){
|
||||||
|
|
|
@ -11618,7 +11618,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
gaoxiang:['gaoxiang','jsrg_gaoxiang'],
|
gaoxiang:['gaoxiang','jsrg_gaoxiang'],
|
||||||
lingcao:['lingcao','dc_lingcao'],
|
lingcao:['lingcao','dc_lingcao'],
|
||||||
sp_menghuo:['sp_menghuo','dc_sp_menghuo'],
|
sp_menghuo:['sp_menghuo','dc_sp_menghuo'],
|
||||||
sunchen:['dc_sunchen','ps_sunchen'],
|
sunchen:['dc_sunchen','pe_sunchen'],
|
||||||
},
|
},
|
||||||
translate:{
|
translate:{
|
||||||
re_panfeng:'潘凤',
|
re_panfeng:'潘凤',
|
||||||
|
|
|
@ -7734,7 +7734,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
xuhuang:['re_xuhuang','ol_xuhuang','sb_xuhuang','xuhuang'],
|
xuhuang:['re_xuhuang','ol_xuhuang','sb_xuhuang','xuhuang'],
|
||||||
menghuo:['menghuo','re_menghuo','sb_menghuo','tw_menghuo'],
|
menghuo:['menghuo','re_menghuo','sb_menghuo','tw_menghuo'],
|
||||||
zhurong:['zhurong','ol_zhurong','re_zhurong','sb_zhurong'],
|
zhurong:['zhurong','ol_zhurong','re_zhurong','sb_zhurong'],
|
||||||
sunjian:['sunjian','ol_sunjian','re_sunjian'],
|
sunjian:['sunjian','ol_sunjian','re_sunjian','tw_ol_sunjian'],
|
||||||
jiaxu:['jiaxu','re_jiaxu','ns_jiaxu','ps_jiaxu'],
|
jiaxu:['jiaxu','re_jiaxu','ns_jiaxu','ps_jiaxu'],
|
||||||
dongzhuo:['dongzhuo','ol_dongzhuo','re_dongzhuo','sp_dongzhuo','yj_dongzhuo'],
|
dongzhuo:['dongzhuo','ol_dongzhuo','re_dongzhuo','sp_dongzhuo','yj_dongzhuo'],
|
||||||
dengai:['dengai','ol_dengai','re_dengai'],
|
dengai:['dengai','ol_dengai','re_dengai'],
|
||||||
|
@ -7749,7 +7749,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
guanqiujian:['guanqiujian','re_guanqiujian','tw_guanqiujian','old_guanqiujian'],
|
guanqiujian:['guanqiujian','re_guanqiujian','tw_guanqiujian','old_guanqiujian'],
|
||||||
chendao:['chendao','ns_chendao','old_chendao'],
|
chendao:['chendao','ns_chendao','old_chendao'],
|
||||||
zhugezhan:['zhugezhan','old_zhugezhan'],
|
zhugezhan:['zhugezhan','old_zhugezhan'],
|
||||||
ol_lusu:['re_lusu','ol_lusu'],
|
ol_lusu:['re_lusu','ol_lusu','dc_sb_lusu'],
|
||||||
zhanghe:['zhanghe','re_zhanghe','sb_zhanghe'],
|
zhanghe:['zhanghe','re_zhanghe','sb_zhanghe'],
|
||||||
yl_luzhi:['yl_luzhi','sb_yl_luzhi','tw_yl_luzhi'],
|
yl_luzhi:['yl_luzhi','sb_yl_luzhi','tw_yl_luzhi'],
|
||||||
sunliang:['sunliang','xin_sunliang'],
|
sunliang:['sunliang','xin_sunliang'],
|
||||||
|
|
|
@ -26010,6 +26010,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
fanjiangzhangda:['fanjiangzhangda','jsrg_fanjiangzhangda'],
|
fanjiangzhangda:['fanjiangzhangda','jsrg_fanjiangzhangda'],
|
||||||
simalang:['re_simalang','simalang'],
|
simalang:['re_simalang','simalang'],
|
||||||
zhugedan:['re_zhugedan','zhugedan'],
|
zhugedan:['re_zhugedan','zhugedan'],
|
||||||
|
zhangren:['jsrg_zhangren','zhangren'],
|
||||||
|
wenqin:['ol_wenqin','pe_wenqin'],
|
||||||
},
|
},
|
||||||
translate:{
|
translate:{
|
||||||
"xinfu_lingren":"凌人",
|
"xinfu_lingren":"凌人",
|
||||||
|
|
|
@ -2349,7 +2349,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
zhugeliang:['zhugeliang','re_zhugeliang','sb_zhugeliang','ps2066_zhugeliang','ps_zhugeliang'],
|
zhugeliang:['zhugeliang','re_zhugeliang','sb_zhugeliang','ps2066_zhugeliang','ps_zhugeliang'],
|
||||||
huangyueying:['huangyueying','re_huangyueying','junk_huangyueying','sb_huangyueying'],
|
huangyueying:['huangyueying','re_huangyueying','junk_huangyueying','sb_huangyueying'],
|
||||||
sunquan:['sunquan','re_sunquan','sb_sunquan','dc_sunquan'],
|
sunquan:['sunquan','re_sunquan','sb_sunquan','dc_sunquan'],
|
||||||
zhouyu:['zhouyu','re_zhouyu','sb_zhouyu','ps1062_zhouyu','ps2080_zhouyu'],
|
zhouyu:['zhouyu','re_zhouyu','dc_sb_zhouyu','sb_zhouyu','ps1062_zhouyu','ps2080_zhouyu'],
|
||||||
luxun:['luxun','re_luxun','jsrg_luxun'],
|
luxun:['luxun','re_luxun','jsrg_luxun'],
|
||||||
lvmeng:['lvmeng','re_lvmeng','sb_lvmeng'],
|
lvmeng:['lvmeng','re_lvmeng','sb_lvmeng'],
|
||||||
huanggai:['huanggai','re_huanggai','sb_huanggai'],
|
huanggai:['huanggai','re_huanggai','sb_huanggai'],
|
||||||
|
|
167
character/tw.js
167
character/tw.js
|
@ -2021,80 +2021,103 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
//刘繇
|
//刘繇
|
||||||
twniju: {
|
twniju:{
|
||||||
unique: true,
|
audio:2,
|
||||||
audio: 2,
|
zhuSkill:true,
|
||||||
zhuSkill: true,
|
trigger:{
|
||||||
trigger: { player: 'compare', target: 'compare' },
|
global:'compare',
|
||||||
filter: function (event, player) {
|
|
||||||
return !event.iwhile && player.hasZhuSkill('twniju');
|
|
||||||
},
|
},
|
||||||
direct: true,
|
priority:1,
|
||||||
content: function () {
|
filter(event,player){
|
||||||
'step 0'
|
if(!player.hasZhuSkill('twniju')) return false;
|
||||||
var list = ['我加', '他加', '我减', '他减', 'cancel2'];
|
if(event.iwhile||(event.target&&event.compareMeanwhile)) return false;
|
||||||
player.chooseControl(list).set('prompt', get.prompt2('twniju')).set('ai', function () { return ['我加', '他减'].randomGet() });
|
return true;
|
||||||
'step 1'
|
},
|
||||||
if (result.control != 'cancel2') {
|
direct:true,
|
||||||
player.logSkill('twniju');
|
async content(event,trigger,player){
|
||||||
var num = game.countPlayer(function (current) {
|
const num=game.countPlayer(current=>current.group==='qun');
|
||||||
return current.group == 'qun';
|
const dialog=[
|
||||||
|
get.prompt('twniju'),
|
||||||
|
`<div class="text center">令一张拼点牌的点数+${num}或-${num}</div>`,
|
||||||
|
[[
|
||||||
|
['addNumber','增加'],
|
||||||
|
['subtractNumber','减少']
|
||||||
|
],'tdnodes'],
|
||||||
|
];
|
||||||
|
const lose_list=trigger.lose_list.slice().sort((a,b)=>lib.sort.seat(a[0],b[0]));
|
||||||
|
dialog.push(`<div class="text center">${lose_list.map(list=>{
|
||||||
|
return get.translation(list[0]);
|
||||||
|
}).join(' / ')}</div>`);
|
||||||
|
const cards=lose_list.map(list=>list[1]).flat();
|
||||||
|
dialog.push(cards);
|
||||||
|
const result=await player.chooseButton(dialog,2)
|
||||||
|
.set('filterButton',button=>{
|
||||||
|
const type=typeof button.link;
|
||||||
|
if(ui.selected.buttons.length&&type===typeof ui.selected.buttons[0].link) return false;
|
||||||
|
return true;
|
||||||
|
})
|
||||||
|
.forResult()
|
||||||
|
if(!result.bool) return;
|
||||||
|
const {links}=result;
|
||||||
|
if(typeof links[0]!=='string') links.reverse();
|
||||||
|
let [fn,card]=links;
|
||||||
|
const selectedPlayer=lose_list[cards.indexOf(card)][0];
|
||||||
|
player.logSkill('twniju',selectedPlayer);
|
||||||
|
selectedPlayer.addTempSkill('twniju_change');
|
||||||
|
if(!selectedPlayer.storage.twniju_change) selectedPlayer.storage.twniju_change=[];
|
||||||
|
selectedPlayer.storage.twniju_change.push([fn,num,card]);
|
||||||
|
player.when('chooseToCompareAfter')
|
||||||
|
.filter(evt=>evt===trigger)
|
||||||
|
.vars({
|
||||||
|
toDraw:num,
|
||||||
|
})
|
||||||
|
.then(()=>{
|
||||||
|
const num1=trigger.result.num1,num2=trigger.result.num2;
|
||||||
|
let bool=false;
|
||||||
|
if(typeof num1==='number'&&typeof num2==='number'){
|
||||||
|
if(num1===num2){
|
||||||
|
bool=true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
const num1List=num1.toUniqued();
|
||||||
|
const totalList=num1List.concat(num2).toUniqued();
|
||||||
|
if(totalList.length<num1List.length+num2.length){
|
||||||
|
bool=true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(bool) player.draw(toDraw);
|
||||||
|
})
|
||||||
|
},
|
||||||
|
subSkill:{
|
||||||
|
change:{
|
||||||
|
trigger:{global:'compare'},
|
||||||
|
filter(event,player){
|
||||||
|
const storage=player.getStorage('twniju_change');
|
||||||
|
if(!storage.length) return false;
|
||||||
|
if((player!==event.player||event.iwhile)&&player!==event.target) return false;
|
||||||
|
return event.lose_list.some(list=>{
|
||||||
|
const cards=Array.isArray(list[1])?list[1]:[list[1]];
|
||||||
|
return list[0]===player&&storage.some(s=>cards.includes(s[2]));
|
||||||
});
|
});
|
||||||
event.num = num;
|
},
|
||||||
switch (result.control) {
|
charlotte:true,
|
||||||
case '我加':
|
forced:true,
|
||||||
player.popup('+', num);
|
silent:true,
|
||||||
if (player == trigger.player) {
|
async content(event,trigger,player){
|
||||||
trigger.num1 += num;
|
const [fn,num]=player.getStorage('twniju_change').find(s=>{
|
||||||
if (trigger.num1 > 13) trigger.num1 = 13;
|
return trigger.lose_list.some(list=>{
|
||||||
|
const cards=Array.isArray(list[1])?list[1]:[list[1]];
|
||||||
|
return list[0]===player&&cards.includes(s[2]);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
const numId=player===trigger.player?'num1':'num2';
|
||||||
|
trigger[fn](numId,num);
|
||||||
|
if(trigger[numId]>13) trigger[numId]=13;
|
||||||
|
else if(trigger[numId]<1) trigger[numId]=1;
|
||||||
|
game.log(player,'的拼点牌点数',fn==='addNumber'?'+':'-',num);
|
||||||
}
|
}
|
||||||
else {
|
},
|
||||||
trigger.num2 += num;
|
|
||||||
if (trigger.num2 > 13) trigger.num2 = 13;
|
|
||||||
}
|
|
||||||
game.log(player, '的拼点牌点数+', num);
|
|
||||||
break;
|
|
||||||
case '他加':
|
|
||||||
trigger.target.popup('+', num);
|
|
||||||
if (player == trigger.player) {
|
|
||||||
trigger.num2 += num;
|
|
||||||
if (trigger.num2 > 13) trigger.num2 = 13;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
trigger.num1 += num;
|
|
||||||
if (trigger.num1 > 13) trigger.num1 = 13;
|
|
||||||
}
|
|
||||||
game.log(trigger.target, '的拼点牌点数+', num);
|
|
||||||
break;
|
|
||||||
case '我减':
|
|
||||||
player.popup('-', num);
|
|
||||||
if (player == trigger.player) {
|
|
||||||
trigger.num1 -= num;
|
|
||||||
if (trigger.num1 < 1) trigger.num1 = 1;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
trigger.num2 -= num;
|
|
||||||
if (trigger.num2 < 1) trigger.num2 = 1;
|
|
||||||
}
|
|
||||||
game.log(player, '的拼点牌点数-', num);
|
|
||||||
break;
|
|
||||||
case '他减':
|
|
||||||
trigger.target.popup('-', num);
|
|
||||||
if (player == trigger.player) {
|
|
||||||
trigger.num2 -= num;
|
|
||||||
if (trigger.num2 < 1) trigger.num2 = 1;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
trigger.num1 -= num;
|
|
||||||
if (trigger.num1 < 1) trigger.num1 = 1;
|
|
||||||
}
|
|
||||||
game.log(trigger.target, '的拼点牌点数-', num);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else event.finish();
|
|
||||||
'step 2'
|
|
||||||
if (trigger.num1 == trigger.num2) player.draw(num);
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
//刘虞
|
//刘虞
|
||||||
|
@ -15952,7 +15975,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
twzhuiting:'坠廷',
|
twzhuiting:'坠廷',
|
||||||
twzhuiting_info:'主公技,当一张锦囊牌即将对你生效时,其他魏势力角色和群势力角色可将一张与此牌颜色相同的牌当作【无懈可击】使用。',
|
twzhuiting_info:'主公技,当一张锦囊牌即将对你生效时,其他魏势力角色和群势力角色可将一张与此牌颜色相同的牌当作【无懈可击】使用。',
|
||||||
twniju:'逆拒',
|
twniju:'逆拒',
|
||||||
twniju_info:'主公技,当你的拼点牌亮出后,你可以令其中一张拼点牌的点数+X或-X,然后若这两张牌的点数相等,你摸X张牌(X为场上群势力角色数)。',
|
twniju_info:'主公技。当你的拼点牌亮出后,你可以令本次拼点事件中的一张拼点牌的点数+X或-X。然后当本次拼点事件结束后,若有两张拼点牌的点数相等,你摸X张牌(X为场上群势力角色数)。',
|
||||||
ol_liuyu:'TW刘虞',
|
ol_liuyu:'TW刘虞',
|
||||||
ol_liuyu_prefix:'TW',
|
ol_liuyu_prefix:'TW',
|
||||||
twchongwang:'崇望',
|
twchongwang:'崇望',
|
||||||
|
|
|
@ -3774,7 +3774,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
characterReplace:{
|
characterReplace:{
|
||||||
yanghu:['jin_yanghu','dc_yanghu','sp_yanghu'],
|
yanghu:['jin_yanghu','dc_yanghu','sp_yanghu'],
|
||||||
jiachong:['jin_jiachong','jiachong'],
|
jiachong:['dc_jiachong','jin_jiachong','jiachong'],
|
||||||
yangyan:['yangyan','old_yangyan'],
|
yangyan:['yangyan','old_yangyan'],
|
||||||
yangzhi:['yangzhi','old_yangzhi'],
|
yangzhi:['yangzhi','old_yangzhi'],
|
||||||
},
|
},
|
||||||
|
|
|
@ -8123,7 +8123,10 @@ export const Content = {
|
||||||
var owner = get.owner(cards[0]);
|
var owner = get.owner(cards[0]);
|
||||||
if (owner) {
|
if (owner) {
|
||||||
event.relatedLose = owner.lose(cards, ui.special).set('getlx', false);
|
event.relatedLose = owner.lose(cards, ui.special).set('getlx', false);
|
||||||
if (cardInfo && !cardInfo.blankCard) event.relatedLose.set('visible',true);
|
if (cardInfo && !cardInfo.blankCard) {
|
||||||
|
event.relatedLose.set('visible', true);
|
||||||
|
event.set('visible', true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (get.position(cards[0]) == 'c') event.updatePile = true;
|
else if (get.position(cards[0]) == 'c') event.updatePile = true;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue