From 024a34f8f9ebf42218526043dc4b628148226bb5 Mon Sep 17 00:00:00 2001
From: gitxin09 <1403970958@qq.com>
Date: Sat, 4 Jul 2026 20:06:19 +0800
Subject: [PATCH 01/15] Update skill.js
---
apps/core/character/xianding/skill.js | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/apps/core/character/xianding/skill.js b/apps/core/character/xianding/skill.js
index 6aaa8e03f2..b10d5ac4de 100644
--- a/apps/core/character/xianding/skill.js
+++ b/apps/core/character/xianding/skill.js
@@ -32703,6 +32703,27 @@ const skills = {
onremove: true,
marktext: "灿",
intro: { content: "对$使用牌无距离和次数限制" },
+ forced: true,
+ trigger: { player: "useCard1" },
+ // 2. 新增过滤条件:确保只拦截对标记目标使用的【杀】
+ filter(event, player) {
+ // 如果目标不在标记列表中,不触发
+ if (!event.targets?.some(target => player.getStorage("dcwencan_paoxiao").includes(target))) {
+ return false;
+ }
+ // 必须是【杀】才触发
+ return event.card.name === "sha";
+ },
+ // 3. 新增执行内容:在卡牌使用时,强制将使用次数减 1
+ async content(event, trigger, player) {
+ trigger.addCount = false; // 告诉系统不要增加使用次数
+ const stat = player.getStat().card;
+ const name = trigger.card.name;
+ // 抵消系统默认增加的次数,实现真正的“无次数限制”
+ if (typeof stat[name] === "number") {
+ stat[name]--;
+ }
+ },
mod: {
cardUsableTarget(card, player, target) {
if (player.getStorage("dcwencan_paoxiao").includes(target)) {
From fa889a9172341cf404cb674733c9210f61a60e90 Mon Sep 17 00:00:00 2001
From: gitxin09 <1403970958@qq.com>
Date: Sat, 4 Jul 2026 20:09:56 +0800
Subject: [PATCH 02/15] Update character.js
---
apps/core/character/xianding/character.js | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/apps/core/character/xianding/character.js b/apps/core/character/xianding/character.js
index 430e4438fb..fd63b54699 100644
--- a/apps/core/character/xianding/character.js
+++ b/apps/core/character/xianding/character.js
@@ -21,16 +21,14 @@ const characters = {
dc_shen_guanyu: {
sex: "male",
group: "shen",
- hp: 4,
- maxHp: 5,
+ hp: 5,
skills: ["dcwushen", "dcwuhun"],
groupInGuozhan: "shu",
},
dc_shen_liubei: {
sex: "male",
group: "shen",
- hp: 4,
- maxHp: 6,
+ hp: 6,
skills: ["dclongnu", "dcjieying"],
groupInGuozhan: "shu",
},
From 843f45c63d8936ea3562a3700fd17c9d267ac9f5 Mon Sep 17 00:00:00 2001
From: gitxin09 <1403970958@qq.com>
Date: Sat, 4 Jul 2026 21:21:58 +0800
Subject: [PATCH 03/15] =?UTF-8?q?=E6=8E=92=E7=89=88?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
apps/core/character/xianding/skill.js | 33 ++++++++++++---------------
1 file changed, 14 insertions(+), 19 deletions(-)
diff --git a/apps/core/character/xianding/skill.js b/apps/core/character/xianding/skill.js
index b10d5ac4de..da8d354efb 100644
--- a/apps/core/character/xianding/skill.js
+++ b/apps/core/character/xianding/skill.js
@@ -32705,25 +32705,20 @@ const skills = {
intro: { content: "对$使用牌无距离和次数限制" },
forced: true,
trigger: { player: "useCard1" },
- // 2. 新增过滤条件:确保只拦截对标记目标使用的【杀】
- filter(event, player) {
- // 如果目标不在标记列表中,不触发
- if (!event.targets?.some(target => player.getStorage("dcwencan_paoxiao").includes(target))) {
- return false;
- }
- // 必须是【杀】才触发
- return event.card.name === "sha";
- },
- // 3. 新增执行内容:在卡牌使用时,强制将使用次数减 1
- async content(event, trigger, player) {
- trigger.addCount = false; // 告诉系统不要增加使用次数
- const stat = player.getStat().card;
- const name = trigger.card.name;
- // 抵消系统默认增加的次数,实现真正的“无次数限制”
- if (typeof stat[name] === "number") {
- stat[name]--;
- }
- },
+ filter(event, player) {
+ if (!event.targets?.some(target => player.getStorage("dcwencan_paoxiao").includes(target))) {
+ return false;
+ }
+ return event.card.name === "sha";
+ },
+ async content(event, trigger, player) {
+ trigger.addCount = false;
+ const stat = player.getStat().card;
+ const name = trigger.card.name;
+ if (typeof stat[name] === "number") {
+ stat[name]--;
+ }
+ },
mod: {
cardUsableTarget(card, player, target) {
if (player.getStorage("dcwencan_paoxiao").includes(target)) {
From 4f810392178f6115052036fddc6b706a2fae1aae Mon Sep 17 00:00:00 2001
From: gitxin09 <1403970958@qq.com>
Date: Sat, 4 Jul 2026 21:28:13 +0800
Subject: [PATCH 04/15] =?UTF-8?q?=E6=8E=92=E7=89=88?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
apps/core/character/sp/skill.js | 17 ++++++-----------
1 file changed, 6 insertions(+), 11 deletions(-)
diff --git a/apps/core/character/sp/skill.js b/apps/core/character/sp/skill.js
index 685801c6bf..cb19953e37 100644
--- a/apps/core/character/sp/skill.js
+++ b/apps/core/character/sp/skill.js
@@ -3833,17 +3833,12 @@ const skills = {
}
if (!player.hasMark("olshanjia")) {
return false;
- }
- // 3. 【核心新增逻辑】:排除“因主动使用装备牌”而失去装备的情况
- // 获取当前失去牌事件的父级事件(通常是 useCard)
- const parentEvt = event.relatedEvent || event.getParent();
-
- // 如果父级事件是“使用牌”,且使用者是自己,且使用的牌是“装备”,则不扣除标记
- if (parentEvt && parentEvt.name === "useCard" && parentEvt.player === player && get.type(parentEvt.card, null, false) === "equip") {
- return false;
- }
- // 4. 排除以上情况后,允许扣除标记
- return true;
+ }
+ const parentEvt = event.relatedEvent || event.getParent();
+ if (parentEvt && parentEvt.name === "useCard" && parentEvt.player === player && get.type(parentEvt.card, null, false) === "equip") {
+ return false;
+ }
+ return true;
},
forced: true,
locked: false,
From d75424de76e48fd14f6c0fd0033e772cdde6f1c7 Mon Sep 17 00:00:00 2001
From: gitxin09 <1403970958@qq.com>
Date: Sat, 4 Jul 2026 23:38:59 +0800
Subject: [PATCH 05/15] Update skill.js
---
apps/core/character/mobile/skill.js | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/apps/core/character/mobile/skill.js b/apps/core/character/mobile/skill.js
index 3141805400..a502dab984 100644
--- a/apps/core/character/mobile/skill.js
+++ b/apps/core/character/mobile/skill.js
@@ -11039,7 +11039,6 @@ const skills = {
//手杀薛综
mbfunan: {
audio: "funan",
- derivation: ["mbfunan_rewrite"],
trigger: { global: ["respond", "useCard"] },
filter(event, player) {
if (!event.respondTo) {
@@ -11193,6 +11192,7 @@ const skills = {
const drawNum = Math.min(5, get.info(event.name).getSuitsMap()[suit] || 0);
const discardNum = player.countMark(event.name + "_used");
await target.draw(drawNum);
+ const handCardsBefore = target.countCards('h');
const result = await target
.chooseToDiscard({
selectCard: discardNum,
@@ -11200,7 +11200,7 @@ const skills = {
forced: true,
})
.forResult();
- if (result?.cards?.length > 0 && result.autochoose && result.cards?.length === result.rawcards?.length) {
+ if (handCardsBefore > 0 && target.countCards('h') === 0) {
game.log(player, "修改了", "#g【复难】");
player.addSkill("mbfunan_rewrite");
}
From 1146b0cd9855d03df7c1831cc54c51f0913118ce Mon Sep 17 00:00:00 2001
From: gitxin09 <1403970958@qq.com>
Date: Sun, 5 Jul 2026 09:54:29 +0800
Subject: [PATCH 06/15] =?UTF-8?q?=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
apps/core/character/mobile/skill.js | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/apps/core/character/mobile/skill.js b/apps/core/character/mobile/skill.js
index a502dab984..b6fd5840c9 100644
--- a/apps/core/character/mobile/skill.js
+++ b/apps/core/character/mobile/skill.js
@@ -11192,7 +11192,7 @@ const skills = {
const drawNum = Math.min(5, get.info(event.name).getSuitsMap()[suit] || 0);
const discardNum = player.countMark(event.name + "_used");
await target.draw(drawNum);
- const handCardsBefore = target.countCards('h');
+ const handCardsBefore == target.countCards('h');
const result = await target
.chooseToDiscard({
selectCard: discardNum,
@@ -11200,7 +11200,7 @@ const skills = {
forced: true,
})
.forResult();
- if (handCardsBefore > 0 && target.countCards('h') === 0) {
+ if (handCardsBefore > 0 && !target.hasCards('h')) {
game.log(player, "修改了", "#g【复难】");
player.addSkill("mbfunan_rewrite");
}
From 928a21485df7c9d44f2eea8ea24b6f666c0983a6 Mon Sep 17 00:00:00 2001
From: gitxin09 <1403970958@qq.com>
Date: Sun, 5 Jul 2026 10:36:40 +0800
Subject: [PATCH 07/15] =?UTF-8?q?=E8=B5=8B=E5=80=BC?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
apps/core/character/mobile/skill.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/apps/core/character/mobile/skill.js b/apps/core/character/mobile/skill.js
index b6fd5840c9..948d6f9276 100644
--- a/apps/core/character/mobile/skill.js
+++ b/apps/core/character/mobile/skill.js
@@ -11192,7 +11192,7 @@ const skills = {
const drawNum = Math.min(5, get.info(event.name).getSuitsMap()[suit] || 0);
const discardNum = player.countMark(event.name + "_used");
await target.draw(drawNum);
- const handCardsBefore == target.countCards('h');
+ const handCardsBefore = target.countCards('h');
const result = await target
.chooseToDiscard({
selectCard: discardNum,
From 1e05ba47fe932130f375d550d9e5fe3ea1fe560d Mon Sep 17 00:00:00 2001
From: gitxin09 <1403970958@qq.com>
Date: Sun, 5 Jul 2026 15:38:16 +0800
Subject: [PATCH 08/15] =?UTF-8?q?=E6=96=B0=E6=9D=80=E8=B0=8B=E5=85=B3?=
=?UTF-8?q?=E7=BE=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
apps/core/character/xianding/skill.js | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/apps/core/character/xianding/skill.js b/apps/core/character/xianding/skill.js
index da8d354efb..7bf8e183df 100644
--- a/apps/core/character/xianding/skill.js
+++ b/apps/core/character/xianding/skill.js
@@ -139,6 +139,13 @@ const skills = {
audio: 2,
enable: "phaseUse",
usable: 1,
+ mod: {
+ cardUsable(card, player) {
+ if (card?.storage?.dcsbjuao) {
+ return Infinity;
+ }
+ }
+ }
filter(event, player) {
if (!player.hasDiscardableCards(player, "he")) {
return false;
@@ -222,6 +229,7 @@ const skills = {
suit: "none",
number: null,
isCard: true,
+ storage:{ dcsbjuao: true }
},
multitarget: true,
multiline: true,
From b860e1fe77d1376784ac036f98ae9a0c1761c6e6 Mon Sep 17 00:00:00 2001
From: gitxin09 <1403970958@qq.com>
Date: Sun, 5 Jul 2026 16:06:30 +0800
Subject: [PATCH 09/15] Update translate.js
---
apps/core/character/sp/translate.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/apps/core/character/sp/translate.js b/apps/core/character/sp/translate.js
index b25d100074..6b889146ec 100644
--- a/apps/core/character/sp/translate.js
+++ b/apps/core/character/sp/translate.js
@@ -1157,7 +1157,7 @@ const translates = {
olfushi: "缚豕",
olfushi_info: "①一名角色使用【杀】结算结束后,若你至其的距离不大于1,你将此【杀】对应的所有实体牌置于武将牌上。②当你需要使用一张【杀】时,你可以将任意张“缚豕”牌置入弃牌堆并摸等量的牌,视为使用一张【杀】并选择X项(X为你以此法重铸的牌数且至多为3):1.你为此【杀】额外指定一个目标;2.你选择此【杀】的一个目标角色,此牌对其造成的伤害-1;3.你选择此【杀】的一个目标角色,此【杀】对其造成的伤害+1。当此【杀】指定最后一个目标后,若此牌被选择的效果选项相邻且此牌的目标角色座位连续,则此【杀】不计入次数限制。",
oldongdao: "东道",
- oldongdao_info: "农民的回合结束时:阴,你可以令地主进行一个额外回合;阳,其可以进行一个额外回合。",
+ oldongdao_info: "农民的回合结束时:阳,你可以令地主进行一个额外回合;阴,其可以进行一个额外回合。",
zhangyan: "张燕",
olsuji: "肃疾",
olsuji_info: "一名角色的出牌阶段开始时,若其已受伤,你可以将一张黑色牌当【杀】使用。若其受到此【杀】的伤害,你获得其一张牌。",
From b6b4ae6edbfe9023e779593674eda614fb484698 Mon Sep 17 00:00:00 2001
From: gitxin09 <1403970958@qq.com>
Date: Sun, 5 Jul 2026 16:09:06 +0800
Subject: [PATCH 10/15] Update dynamicTranslate.js
---
apps/core/character/sp/dynamicTranslate.js | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/apps/core/character/sp/dynamicTranslate.js b/apps/core/character/sp/dynamicTranslate.js
index d1d11081da..cbd93a3fb6 100644
--- a/apps/core/character/sp/dynamicTranslate.js
+++ b/apps/core/character/sp/dynamicTranslate.js
@@ -164,9 +164,9 @@ const dynamicTranslates = {
},
oldongdao(player) {
if (player.storage.oldongdao) {
- return '农民的回合结束时:阴,你可以令地主进行一个额外回合;阳,其可以进行一个额外回合。';
+ return '农民的回合结束时:阳,你可以令地主进行一个额外回合;阴,其可以进行一个额外回合。';
}
- return '农民的回合结束时:阴,你可以令地主进行一个额外回合;阳,其可以进行一个额外回合。';
+ return '农民的回合结束时:阳,你可以令地主进行一个额外回合;阴,其可以进行一个额外回合。';
},
ollangdao(player) {
var str = "当你使用【杀】指定唯一目标时,你可以与该目标角色同时选择一项:";
From 69a69d24bda50be027253992b0dc70b6de3be721 Mon Sep 17 00:00:00 2001
From: Rintim
Date: Sun, 5 Jul 2026 17:46:35 +0800
Subject: [PATCH 11/15] Update skill.js
---
apps/core/character/mobile/skill.js | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/apps/core/character/mobile/skill.js b/apps/core/character/mobile/skill.js
index 948d6f9276..76cb0ef468 100644
--- a/apps/core/character/mobile/skill.js
+++ b/apps/core/character/mobile/skill.js
@@ -11192,7 +11192,7 @@ const skills = {
const drawNum = Math.min(5, get.info(event.name).getSuitsMap()[suit] || 0);
const discardNum = player.countMark(event.name + "_used");
await target.draw(drawNum);
- const handCardsBefore = target.countCards('h');
+ const handCardsBefore = target.countCards("h");
const result = await target
.chooseToDiscard({
selectCard: discardNum,
@@ -11200,7 +11200,7 @@ const skills = {
forced: true,
})
.forResult();
- if (handCardsBefore > 0 && !target.hasCards('h')) {
+ if (handCardsBefore > 0 && !target.hasCards("h")) {
game.log(player, "修改了", "#g【复难】");
player.addSkill("mbfunan_rewrite");
}
From e410b1d431488e4105c3d839696c6ef85e2dfa7d Mon Sep 17 00:00:00 2001
From: gitxin09 <1403970958@qq.com>
Date: Sun, 5 Jul 2026 19:18:50 +0800
Subject: [PATCH 12/15] =?UTF-8?q?=E6=9D=A8=E8=89=B3=E9=80=89=E5=A4=87?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
apps/core/character/yingbian/skill.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/apps/core/character/yingbian/skill.js b/apps/core/character/yingbian/skill.js
index fde5021252..9b1d9e3643 100644
--- a/apps/core/character/yingbian/skill.js
+++ b/apps/core/character/yingbian/skill.js
@@ -623,7 +623,7 @@ const skills = {
targets: [player],
addCount: false,
});
- const num = player.hasHistory("damage", evt => evt.card === cardx) ? 2 : 1;
+ const num = player.hasHistory("damage", evt => evt.source === target) ? 2 : 1;
await player.draw(num);
},
ai: {
From 54f88741c6ac85dbbd295be5bc9fbbe76013cf08 Mon Sep 17 00:00:00 2001
From: gitxin09 <1403970958@qq.com>
Date: Mon, 6 Jul 2026 13:08:54 +0800
Subject: [PATCH 13/15] =?UTF-8?q?=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
apps/core/character/yingbian/skill.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/apps/core/character/yingbian/skill.js b/apps/core/character/yingbian/skill.js
index 9b1d9e3643..71e3b62ae3 100644
--- a/apps/core/character/yingbian/skill.js
+++ b/apps/core/character/yingbian/skill.js
@@ -623,7 +623,7 @@ const skills = {
targets: [player],
addCount: false,
});
- const num = player.hasHistory("damage", evt => evt.source === target) ? 2 : 1;
+ const num = player.hasHistory("damage", evt => evt.card?.name === "sha" && evt.source === target) ? 2 : 1;
await player.draw(num);
},
ai: {
From 4138a7d31de72250aa2b529671d3cefb8051d5e4 Mon Sep 17 00:00:00 2001
From: gitxin09 <1403970958@qq.com>
Date: Mon, 6 Jul 2026 13:15:15 +0800
Subject: [PATCH 14/15] Update player.js
---
apps/core/noname/library/element/player.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/apps/core/noname/library/element/player.js b/apps/core/noname/library/element/player.js
index 1ee43bcb88..6224ba359c 100644
--- a/apps/core/noname/library/element/player.js
+++ b/apps/core/noname/library/element/player.js
@@ -4716,7 +4716,7 @@ export class Player extends HTMLDivElement {
}
this.node.count.innerHTML = numh;
}*/
- this.node.count.innerHTML = numh.toString();
+ this.node.count.innerHTML = numh?.toString();
if (numh < 10) {
this.node.count.dataset.condition = "low";
} else if (numh < 100) {
From e7bcc71ed1c965b8ab1a1b14dc93235101fb9b75 Mon Sep 17 00:00:00 2001
From: mengxinzxz <2223529500@qq.com>
Date: Mon, 6 Jul 2026 17:35:35 +0800
Subject: [PATCH 15/15] =?UTF-8?q?=E9=87=8D=E6=96=B0=E4=BF=AE=E6=94=B9?=
=?UTF-8?q?=E6=9D=A8=E8=89=B3=E3=80=90=E9=80=89=E5=A4=87=E3=80=91=EF=BC=8C?=
=?UTF-8?q?=E6=A0=BC=E5=BC=8F=E5=8C=96yingbian/skills.js?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
apps/core/character/yingbian/skill.js | 80 +++++++++++++--------------
1 file changed, 38 insertions(+), 42 deletions(-)
diff --git a/apps/core/character/yingbian/skill.js b/apps/core/character/yingbian/skill.js
index 71e3b62ae3..dd54435b1f 100644
--- a/apps/core/character/yingbian/skill.js
+++ b/apps/core/character/yingbian/skill.js
@@ -473,7 +473,7 @@ const skills = {
cards: result.cards,
source: target,
animate: "give",
- gaintag: ["xinwanyi"]
+ gaintag: ["xinwanyi"],
});
},
mod: {
@@ -562,8 +562,8 @@ const skills = {
forced: true,
ai(target) {
const player = get.player();
- get.attitude(player, target)
- }
+ get.attitude(player, target);
+ },
})
.forResult();
if (!result.bool || !result.targets?.length) {
@@ -617,13 +617,14 @@ const skills = {
if ((get.position(card) !== "j" && !game.checkMod(card, target, "unchanged", "cardEnabled2", target)) || !target.canUse(cardx, player, false)) {
return;
}
- await target.useCard({
- card: cardx,
+ const next = target.useCard({
+ card: cardx,
cards: [card],
- targets: [player],
+ targets: [player],
addCount: false,
});
- const num = player.hasHistory("damage", evt => evt.card?.name === "sha" && evt.source === target) ? 2 : 1;
+ await next;
+ const num = player.hasHistory("damage", evt => evt.card === next.card) ? 2 : 1;
await player.draw(num);
},
ai: {
@@ -1083,12 +1084,12 @@ const skills = {
async content(event, trigger, player) {
const result = await player
.chooseTarget({
- prompt: "请选择【卫戍】的目标",
+ prompt: "请选择【卫戍】的目标",
prompt2: "令一名角色摸一张牌",
forced: true,
ai(target) {
return get.attitude(_status.event.player, target) * Math.sqrt(Math.max(1, 4 - target.countCards("h")));
- }
+ },
})
.forResult();
if (!result.bool || !result.targets?.length) {
@@ -1127,7 +1128,7 @@ const skills = {
ai(target) {
const player = get.player();
return get.effect(target, { name: "guohe_copy2" }, player, player);
- }
+ },
})
.forResult();
if (!result.bool || !result.targets?.length) {
@@ -2480,7 +2481,7 @@ const skills = {
ai(target) {
const player = get.player();
return get.damageEffect(target, player, player);
- }
+ },
})
.forResult();
if (!result.bool || !result.targets?.length) {
@@ -2533,7 +2534,7 @@ const skills = {
return -att;
}
return 0;
- }
+ },
})
.forResult();
if (!result.bool || !result.targets?.length) {
@@ -2640,20 +2641,14 @@ const skills = {
async content(event, trigger, player) {
const result = await player
.chooseButton({
- createDialog: [
- "请选择要装备的宝物",
- [
- lib.skill.chexuan.derivation?.map(skillName => ["宝物", "", skillName]),
- "vcard",
- ],
- ],
+ createDialog: ["请选择要装备的宝物", [lib.skill.chexuan.derivation?.map(skillName => ["宝物", "", skillName]), "vcard"]],
forced: true,
ai(button) {
if (button.link[2] === "cheliji_sichengliangyu" && player.countCards("h") < player.hp) {
return 1;
}
return Math.random();
- }
+ },
})
.forResult();
if (!result.bool || !result.links?.length) {
@@ -2697,12 +2692,14 @@ const skills = {
return false;
},
async content(event, trigger, player) {
- const result = await player.judge(card => {
- if (get.color(card) === "black") {
- return 3;
- }
- return 0;
- }).forResult();
+ const result = await player
+ .judge(card => {
+ if (get.color(card) === "black") {
+ return 3;
+ }
+ return 0;
+ })
+ .forResult();
if (!result.bool) {
return;
}
@@ -3895,11 +3892,13 @@ const skills = {
inherit: "choufa",
async content(event, _trigger, player) {
const target = event.targets[0];
- const result = await player.choosePlayerCard({
- target,
- position: "h",
- forced: true,
- }).forResult();
+ const result = await player
+ .choosePlayerCard({
+ target,
+ position: "h",
+ forced: true,
+ })
+ .forResult();
if (!result?.bool || !result.cards?.length) {
return;
}
@@ -4071,7 +4070,7 @@ const skills = {
return -attitude;
}
return 0;
- }
+ },
})
.forResult();
if (!result.bool || !result.targets?.length) {
@@ -4215,7 +4214,7 @@ const skills = {
return button.link == evt.answer ? 1 : 0;
}
return get.value(button.link, evt.player);
- }
+ },
});
next.set("dialog", videoId);
if (card.isKnownBy(player) || player.hasSkillTag("viewHandcard", null, target, true)) {
@@ -4321,7 +4320,7 @@ const skills = {
return 7 - get.value(card);
}
return -get.value(card);
- }
+ },
})
.forResult();
if (!result.bool || !result.cards?.length) {
@@ -4447,12 +4446,7 @@ const skills = {
player: "phaseDrawBegin2",
},
filter(event, player) {
- return (
- event.num > 0 &&
- !event.numFixed &&
- player.hasMark("xijue") &&
- game.hasPlayer(target => player !== target && target.hasCards("h"))
- );
+ return event.num > 0 && !event.numFixed && player.hasMark("xijue") && game.hasPlayer(target => player !== target && target.hasCards("h"));
},
async cost(event, trigger, player) {
const num = get.mode() === "guozhan" ? Math.min(trigger.num, 2) : trigger.num;
@@ -4535,7 +4529,7 @@ const skills = {
return 10 - get.value(card);
}
return 9 - get.value(card);
- }
+ },
})
.set("nono", get.damageEffect(target, player, target) >= 0)
.forResult();
@@ -4592,7 +4586,9 @@ const skills = {
});
const result = await next.forResult();
if (result.moved?.length) {
- const { moved: [gain, bottom] } = result;
+ const {
+ moved: [gain, bottom],
+ } = result;
if (gain.length) {
await player.gain(gain, "gain2");
}