From fe303c8efa88c11e8945fbce3c42c696298253c7 Mon Sep 17 00:00:00 2001 From: Siornya Date: Sat, 10 Oct 2026 18:35:10 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E9=A6=99=E6=A7=9F=E7=82=B8=E5=BC=B9?= =?UTF-8?q?=E4=BC=9A=E8=A2=AB=E5=8F=8B=E6=96=B9=E9=80=89=E4=B8=AD=20(#442)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/sim/content/tokens.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/server/sim/content/tokens.js b/server/sim/content/tokens.js index 4b92375b..79f1a1a6 100644 --- a/server/sim/content/tokens.js +++ b/server/sim/content/tokens.js @@ -1043,10 +1043,11 @@ function manifold(bb, raw, def) { * and a 流失 is given back before the knock-out check) and so never leaves because of its HP; it goes when its 见面礼 is * spent, as before. Flags only: no status icon, no 无敌 badge (its HP bar is hidden by the client). The token kit below * and 琳琅诗怀雅's own bomb (kits/ops/chess_char_3_04-swire2.js) both install it. Until 0.2.1 a bomb on 活性源石 lost 70 HP/s - * and a medic healed a hurt one. + * and a medic healed a hurt one. As a device it also rejects ordinary friendly selection (PRTS entity type 装置, + * #442): the internal `isolated` flag supplies that barrier to ally selectors without a visible status. */ export function champagneHold(battle, bomb) { - battle.addBuff(bomb, { key: 'token:champagneHold', flags: { noHeal: true, healFree: true }, persist: true, allowDead: true }); + battle.addBuff(bomb, { key: 'token:champagneHold', flags: { noHeal: true, healFree: true, isolated: true }, persist: true, allowDead: true }); battle.on('hit', (ctx) => { if (ctx.target === bomb) ctx.dmg.cancel = true; }, { owner: bomb, priority: 1000 }); battle.on('elementHit', (ctx) => { if (ctx.target === bomb) ctx.dmg.cancel = true; }, { owner: bomb, priority: 1000 }); battle.on('damaged', (ctx) => { if (ctx.target === bomb && bomb.alive) bomb.hp = bomb.s.maxHp; }, { owner: bomb, priority: 1000 });