diff --git a/character/diy/skill.js b/character/diy/skill.js index 87d5432e7..155449bb7 100644 --- a/character/diy/skill.js +++ b/character/diy/skill.js @@ -5396,7 +5396,7 @@ const skills = { unique: true, forceunique: true, init(player) { - if (player.storage.nscongjun_show) return false; + if (player.storage.nscongjun_show || ![player.name1, player.name2].includes("ns_huamulan")) return false; var change = function (target) { if (target == player) { var list; @@ -5427,7 +5427,12 @@ const skills = { show: { trigger: { global: "useCard" }, filter(event, player) { - return player.getEnemies().includes(event.player) && event.card.name == "wuxie" && event.getRand() < 0.1; + return ( + player.storage.nscongjun_show && + event.card.name == "wuxie" && + event.getRand() < 0.1 && + player.getEnemies().includes(event.player) + ); }, direct: true, skillAnimation: true, diff --git a/character/gujian.js b/character/gujian.js index 4585eab0c..32cb44d1d 100644 --- a/character/gujian.js +++ b/character/gujian.js @@ -630,7 +630,7 @@ game.import("character", function () { player.turnOver(false); "step 3"; player.draw(4); - player.reinit("gjqt_xieyi", "gjqt_chuqi"); + player.reinit(get.character(player.name2, 3).includes("humeng") ? player.name2 : player.name1, "gjqt_chuqi"); player.hp = player.maxHp; "step 4"; if (event.yanjia) { diff --git a/character/hearth.js b/character/hearth.js index 5563603d3..027c7363a 100644 --- a/character/hearth.js +++ b/character/hearth.js @@ -2382,7 +2382,7 @@ game.import("character", function () { trigger: { player: "phaseBefore" }, unique: true, skillAnimation: true, - forceunique: true, + //forceunique: true, filter() { return game.roundNumber >= 3; }, @@ -2407,7 +2407,7 @@ game.import("character", function () { }; player.awakenSkill("szbianshen"); "step 1"; - player.reinit("hs_shizugui", result.links[0]); + player.reinit(get.character(player.name2, 3).includes("szbianshen") ? player.name2 : player.name1, result.links[0]); player.hp = player.maxHp; player.update(); }, diff --git a/character/huicui/skill.js b/character/huicui/skill.js index 580008011..c609125e3 100644 --- a/character/huicui/skill.js +++ b/character/huicui/skill.js @@ -12431,6 +12431,7 @@ const skills = { if (evt.player != event.player) return false; return true; }, + usable: 1, logTarget: "player", check: function (event, player) { var target = event.player; diff --git a/character/key/skill.js b/character/key/skill.js index db16495e4..0bdcaa800 100644 --- a/character/key/skill.js +++ b/character/key/skill.js @@ -7569,6 +7569,7 @@ const skills = { trigger: { player: "phaseZhunbeiBegin" }, limited: true, unique: true, + forceunique: true, charlotte: true, skillAnimation: true, animationColor: "water", @@ -7576,6 +7577,7 @@ const skills = { return player.isDamaged(); }, check(event, player) { + if (![player.name1, player.name2].includes("key_mio")) return false; return player.hp <= 1 || player.getDamagedHp() > 1; }, content() { @@ -7644,12 +7646,14 @@ const skills = { limited: true, charlotte: true, unique: true, + forceunique: true, skillAnimation: true, animationColor: "water", filter(event, player) { return player.isDamaged(); }, check(event, player) { + if (![player.name1, player.name2].includes("key_midori")) return false; return player.hp <= 1 || player.getDamagedHp() > 1; }, content() { diff --git a/character/sp/skill.js b/character/sp/skill.js index 3d2c10dad..7984f5756 100644 --- a/character/sp/skill.js +++ b/character/sp/skill.js @@ -19319,7 +19319,6 @@ const skills = { limited: true, skillAnimation: true, animationColor: "orange", - forceunique: true, filter: function (event, player) { return player.storage.fanghun2 > 0; }, @@ -19377,7 +19376,7 @@ const skills = { player.awakenSkill("fuhan"); "step 1"; event.num = Math.min(event.num, 8); - player.reinitCharacter("zhaoxiang", result.links[0]); + player.reinitCharacter(get.character(player.name2, 3).includes("fuhan") ? player.name2 : player.name1, result.links[0]); "step 2"; var num = event.num - player.maxHp; if (num > 0) player.gainMaxHp(num); @@ -19395,7 +19394,6 @@ const skills = { limited: true, skillAnimation: true, animationColor: "orange", - forceunique: true, filter: function (event, player) { return player.countMark("fanghun") > 0; }, @@ -24477,7 +24475,6 @@ const skills = { audio: 2, unique: true, juexingji: true, - forceunique: true, derivation: "xiaoji", trigger: { player: "phaseZhunbeiBegin" }, filter: function (event, player) { diff --git a/character/tw/skill.js b/character/tw/skill.js index 666efdc6d..3b9b4e02c 100644 --- a/character/tw/skill.js +++ b/character/tw/skill.js @@ -15585,7 +15585,6 @@ const skills = { limited: true, skillAnimation: true, animationColor: "orange", - forceunique: true, filter: function (event, player) { return player.countMark("fanghun") > 0; }, diff --git a/character/xianjian.js b/character/xianjian.js index 8803c1eae..f039adbb7 100644 --- a/character/xianjian.js +++ b/character/xianjian.js @@ -2811,7 +2811,7 @@ game.import("character", function () { unique: true, forceunique: true, filter: function () { - return Math.random() < 0.5; + return Math.random() < 0.5 && [player.name1, player.name2].includes("pal_longkui"); }, derivation: ["diesha", "guijiang"], content: function () { diff --git a/character/yxs.js b/character/yxs.js index f08f705b5..65860cbd9 100644 --- a/character/yxs.js +++ b/character/yxs.js @@ -816,7 +816,11 @@ game.import("character", function () { forceunique: true, enable: "phaseUse", filter: function (event, player) { - return !player.hasSkill("tongyu_guiyin") && !player.getStat("damage"); + return ( + !player.hasSkill("tongyu_guiyin") && + !player.getStat("damage") && + [player.name1, player.name2].includes("yxs_luobinhan") + ); }, derivation: ["lzhangyi", "jimin", "tongyu"], content: function () { @@ -848,7 +852,11 @@ game.import("character", function () { forceunique: true, enable: "phaseUse", filter: function (event, player) { - return player.countCards("he") > 0 && !player.hasSkill("tongyu_guiyin"); + return ( + player.countCards("he") > 0 && + !player.hasSkill("tongyu_guiyin") && + [player.name1, player.name2].includes("yxs_luobinhan") + ); }, filterCard: true, position: "he", diff --git a/mode/guozhan.js b/mode/guozhan.js index 1e87abe19..74fc8ba03 100644 --- a/mode/guozhan.js +++ b/mode/guozhan.js @@ -6455,7 +6455,7 @@ game.import("mode", function (lib, game, ui, get, ai, _status) { }) ) return false; - return event.toShow.some((name) => lib.character[name][3].includes("gzjinyu")); + return event.toShow.some((name) => get.character(name, 3).includes("gzjinyu")); }, logTarget: function (event, player) { return game diff --git a/noname/ui/create/index.js b/noname/ui/create/index.js index b481146ff..7e32bc08e 100644 --- a/noname/ui/create/index.js +++ b/noname/ui/create/index.js @@ -1042,7 +1042,7 @@ export class Create { .setContent(function () { game.log(player, "投降"); player.popup("投降"); - player.die("nosource").includeOut = true; + player.die("nosource").set("_triggered", null).includeOut = true; }).player = player; } if (_status.paused && _status.imchoosing && !_status.auto) {