feedback5 R19C: the official 「作战结束」 result box and the three battle-over sounds at settlement (GitHub #235; PR #112 by @Convey123, approved and never merged, ported by hand onto the 0.2.0 modules) — the box says only the viewer's own LP, 「全员无伤!」 or 「生命值减少 −N」; after a 联防 the number is the server's own per-player charge (m.public.uniteResult in the SETTLE view) and 「全员无伤!」 only when nothing got through; no box for spectator seats, eliminated players or the boss rounds; golden: unchanged
This commit is contained in:
1 parent
0b306baa49
commit
f661a47773
21 files changed
+706
-14
No files matched your search
@@ -6,6 +6,7 @@
|
||||
URL params: ?phase=PREP|INFO_CHECK|BAND_DRAFT|BATTLE_CHECK|SP_DRAFT|COMBAT|UNITE|SETTLE|FINAL_ASSAULT|HIDDEN_CORE|RESULT
|
||||
&variant=reward|bounty|supply|shop|tactic|temp|frozen|dead|defeat|solo|popup|detail|drawer|info|pen|emote|settings|collapsed|bond|drag
|
||||
|leaker (联防: you let enemies through — the ×N counter)
|
||||
|unite[,through][,helper|,dead] (SETTLE: the result box after a 联防 — your charge from m.public.uniteResult)
|
||||
|overtime|drain (boss rounds: level time over / overtime drain) |paused (solo battles)
|
||||
|funny (标准: 本局禁用 bonds) |morph (变形同构体 in the hand / shop, a wearer on the board) |harmony (缪尔赛思 on the board)
|
||||
&shot=1 (hide the switcher) &render=engine|fallback (default: the Pixi engine, DOM fallback if it fails)
|
||||
|
||||
@@ -394,6 +394,20 @@ function startCombat(phase) {
|
||||
pub.unite = leakMock ? { helpers: ['ai_2', 'p3'], leakers: ['p1', 'p4'] } : { helpers: ['p1', 'ai_2'], leakers: ['p3'] };
|
||||
if (leakMock) { leftOf('p1', 13); leftOf('p4', 3); pub.players[0].status = 'done'; pub.players[2].status = 'helping'; } else leftOf('p3', 12);
|
||||
}
|
||||
// the result box after a 联防 (server settle → m.public.uniteResult, ui/gameLogic/phases.js uniteResultBox; GitHub #235):
|
||||
// ?phase=SETTLE&variant=unite — you (p1) leaked and the helpers stopped every enemy: nobody paid → 全员无伤!;
|
||||
// `unite,through` — 3 got through and you were charged 3 → 生命值减少 −3; `unite,through,helper` — you HELPED, a
|
||||
// teammate leaked and paid → the official title alone (全员无伤! would be false for that teammate); `unite,dead` — you
|
||||
// were eliminated before the round, so `losses` (alive players only, like the server) does not list you → no box.
|
||||
// Without `unite` the SETTLE view has no uniteResult: the round's own battle result box takes over (battleResultBox).
|
||||
if (phase === PHASE.SETTLE && VARIANTS.has('unite')) {
|
||||
const helpers = ['ai_2', 'p3'], leakers = ['p1', 'p4'];
|
||||
pub.uniteResult = VARIANTS.has('through')
|
||||
? { through: 3, helpers, leakers, losses: { p1: 3, p4: 0, ai_2: 0, p3: 0 } }
|
||||
: { through: 0, helpers, leakers, losses: { p1: 0, p4: 0, ai_2: 0, p3: 0 } };
|
||||
if (VARIANTS.has('helper')) pub.uniteResult = { through: 3, helpers: ['p1', 'ai_2'], leakers: ['p3'], losses: { p1: 0, ai_2: 0, p3: 4, p4: 0 } };
|
||||
if (VARIANTS.has('dead')) delete pub.uniteResult.losses.p1;
|
||||
}
|
||||
const countKill = () => {
|
||||
if (phase !== PHASE.UNITE) return;
|
||||
const pid = leakMock ? 'p1' : 'p3';
|
||||
|
||||
Reference in new issue
Block a user