This commit is contained in:
Spmario233 2024-03-30 17:42:00 +08:00
parent c800338f74
commit 7f3801cb20
5 changed files with 40 additions and 34 deletions

View File

@ -1240,8 +1240,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
} }
} }
}, },
prompt(result){ prompt(result,player){
if(result.index>0) return '点击“确定”以观看牌堆顶牌'; if(!player.storage.clanguangu) return '点击“确定”以观看牌堆顶牌';
return '观骨:选择观看牌的目标'; return '观骨:选择观看牌的目标';
}, },
}, },

View File

@ -5448,40 +5448,44 @@ game.import('character',function(lib,game,ui,get,ai,_status){
} }
return true; return true;
}, },
direct:true, async cost(event, trigger, player){
content:function(){ const selfDraw = lib.skill.rebingyi.filtery(player), asyncDraw = lib.skill.rebingyi.filterx(player);
"step 0" if (asyncDraw) {
if(lib.skill.rebingyi.filtery(player)) event.draw=true; const num = player.countCards('h');
if(lib.skill.rebingyi.filterx(player)){ const result = await player.chooseTarget(
player.chooseTarget(get.prompt('xinbingyi'),'展示所有手牌,并选择至多'+get.cnNumber(player.countCards('h'))+'名角色各摸一张牌',[0,player.countCards('h')],function(card,player,target){ get.prompt('xinbingyi'),
return true; `展示所有手牌,并选择至多${get.cnNumber(num)}名角色各摸一张牌${selfDraw ? '' : ',然后你摸一张牌'}`,
}).set('ai',function(target){ [0,num]
return get.attitude(_status.event.player,target); ).set('ai', function(target){
}); return get.attitude(get.player(), target);
}).forResult();
if(result.bool) event.result = {
bool: result.bool,
cost_data: {
asyncDraw,
selfDraw,
targets: result.targets
},
}
} }
else player.chooseBool(get.prompt('bingyi'),'展示所有手牌').ai=function(){return false}; else {
"step 1" event.result = await player.chooseBool(get.prompt('bingyi'),`展示所有手牌${selfDraw ? '' : ',然后你摸一张牌'}`)
if(result.bool){ .set('choice', selfDraw)
player.logSkill('rebingyi'); .set('ai',()=>get.event().choice)
player.showHandcards(get.translation(player)+'发动了【秉壹】'); .forResult();
event.targets=result.targets; event.result.cost_data = {selfDraw};
} }
else{ },
event.finish(); async content(event, trigger, player){
} await player.showHandcards(get.translation(player)+'发动了【秉壹】')
"step 2" const data = event.cost_data;
if(targets&&targets.length){ if (data.asyncDraw && data.targets && data.targets.length){
player.line(targets,'green'); const targets = data.targets.sortBySeat();
targets.sortBySeat();
game.asyncDraw(targets); game.asyncDraw(targets);
} }
else event.finish(); if (data.selfDraw) {
if(event.draw){
player.draw(); player.draw();
event.finish();
} }
"step 3"
game.delayx();
}, },
}, },
//钟会 //钟会

View File

@ -6208,8 +6208,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
} }
"step 2" "step 2"
if(result.suit=='club'){ if(result.suit=='club'){
event.target.damage('thunder');
player.recover(); player.recover();
event.target.damage('thunder');
} }
else if(result.suit=='spade'){ else if(result.suit=='spade'){
event.target.damage(2,'thunder'); event.target.damage(2,'thunder');
@ -8113,7 +8113,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
xinkuanggu_info:'当你造成1点伤害后若受伤角色受到此伤害时你与其的距离不大于1则你可以回复1点体力或摸一张牌。', xinkuanggu_info:'当你造成1点伤害后若受伤角色受到此伤害时你与其的距离不大于1则你可以回复1点体力或摸一张牌。',
xinliegong_info:'①你使用【杀】可以选择你距离不大于此【杀】点数的角色为目标。②当你使用【杀】指定一个目标后你可以根据下列条件执行相应的效果1.其手牌数小于等于你的手牌数此【杀】不可被响应2.其体力值大于等于你的体力值,此【杀】伤害+1。', xinliegong_info:'①你使用【杀】可以选择你距离不大于此【杀】点数的角色为目标。②当你使用【杀】指定一个目标后你可以根据下列条件执行相应的效果1.其手牌数小于等于你的手牌数此【杀】不可被响应2.其体力值大于等于你的体力值,此【杀】伤害+1。',
jiewei_info:'当你的武将牌翻面后,你可以摸一张牌。然后你可以使用一张锦囊牌或装备牌,并可以在此牌结算后弃置场上一张同类型的牌。', jiewei_info:'当你的武将牌翻面后,你可以摸一张牌。然后你可以使用一张锦囊牌或装备牌,并可以在此牌结算后弃置场上一张同类型的牌。',
releiji_info:'当你使用或打出一张【闪】时,你可令一名其他角色进行一次判定:若结果为梅花,其受到1点雷电伤害然后你回复1点体力若结果为黑桃其受到2点雷电伤害。', releiji_info:'当你使用或打出一张【闪】时,你可令一名其他角色进行一次判定:若结果为梅花,你回复1点体力并对其造成1点雷电伤害若结果为黑桃你对其造成2点雷电伤害。',
tiangong_info:'锁定技,你防止即将受到的雷电伤害。每当你造成雷电伤害时,你摸一张牌。', tiangong_info:'锁定技,你防止即将受到的雷电伤害。每当你造成雷电伤害时,你摸一张牌。',
shensu_info:'你可以跳过判定阶段和摸牌阶段,或跳过出牌阶段并弃置一张装备牌。若如此做,则你可以视为对任意一名角色使用一张无距离限制的【杀】。', shensu_info:'你可以跳过判定阶段和摸牌阶段,或跳过出牌阶段并弃置一张装备牌。若如此做,则你可以视为对任意一名角色使用一张无距离限制的【杀】。',
jushou_info:'结束阶段,你可以摸三张牌并翻面。', jushou_info:'结束阶段,你可以摸三张牌并翻面。',

View File

@ -261,6 +261,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
const num=player.countCards('h'); const num=player.countCards('h');
if(player.isMaxHandcard()&&num>0){ if(player.isMaxHandcard()&&num>0){
const maxNum=game.findPlayer(current=>{ const maxNum=game.findPlayer(current=>{
if(current===player) return false;
return !game.hasPlayer(current2=>{ return !game.hasPlayer(current2=>{
if(current2===player) return false; if(current2===player) return false;
return current2.countCards('h')>current.countCards('h'); return current2.countCards('h')>current.countCards('h');
@ -11408,7 +11409,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
recuorui:'摧锐', recuorui:'摧锐',
recuorui_info:'限定技出牌阶段你可以依次获得至多X名角色的各一张手牌X为你的体力值。', recuorui_info:'限定技出牌阶段你可以依次获得至多X名角色的各一张手牌X为你的体力值。',
reliewei:'裂围', reliewei:'裂围',
reliewei_info:'每回合限Y次当有角色于你的回合内进入濒死状态时你可以摸一张牌Y为你的体力值若当前回合角色为你则Y为Infinity。', reliewei_info:'每回合限Y次当有角色进入濒死状态时你可以摸一张牌Y为你的体力值若当前回合角色为你则Y为Infinity。',
duanwei:'段煨', duanwei:'段煨',
langmie:'狼灭', langmie:'狼灭',
langmie_damage:'狼灭', langmie_damage:'狼灭',

View File

@ -1374,7 +1374,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
const {result:{bool,links}}=await player.chooseButton([ const {result:{bool,links}}=await player.chooseButton([
'劫囚:请选择你要恢复的装备栏', '劫囚:请选择你要恢复的装备栏',
[transList,'tdnodes'], [transList,'tdnodes'],
],num,true).set('map',map) ],Math.min(transList.length,num),true).set('map',map)
.set('ai',button=>['equip5','equip4','equip1','equip3','equip2'].indexOf(get.event('map')[button.link])+2); .set('ai',button=>['equip5','equip4','equip1','equip3','equip2'].indexOf(get.event('map')[button.link])+2);
if(bool) await player.enableEquip(links.slice().map(i=>map[i])); if(bool) await player.enableEquip(links.slice().map(i=>map[i]));
}, },
@ -10594,6 +10594,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
card:trigger.card, card:trigger.card,
})) damageNum=1; })) damageNum=1;
var yimie=function(){ var yimie=function(){
if(damageNum==1) return false;
var hit=true; var hit=true;
if(get.type(trigger.card)=='trick'&&trigger.player.countCards('hs',{name:'wuxie'})) hit=false; if(get.type(trigger.card)=='trick'&&trigger.player.countCards('hs',{name:'wuxie'})) hit=false;
if(trigger.card.name=='huogong'&&trigger.player.countCards('h',function(card){ if(trigger.card.name=='huogong'&&trigger.player.countCards('h',function(card){