Golden regenerated on the merged code and attributed by reverting each gameplay PR in a scratch tree: #66 alone moves the fights of roster-008/010/012/022/027/028/031/040, the boss pairs (boss_2/4/6, hidden boss_10) and the matches coop2-NORMAL-3, coop2-HARD-4, coop3-ABYSS-5, coop4-ABYSS-7, solo-HARD-9-boosted (灵巧's aura no longer comes from merchant exits and retreats; hidden-layer bonds keep their internal layers); #109 changes the skill state of its deploy-timed skills (units / hooks / status events / snapshots); #160 adds the 0.5 s skill events of deploy passives (events.skill only in roster-001/006/025/049). The remaining scenarios listed by the full regenerate are those three effects together.
This commit is contained in:
commit
02b76989fa
49 files changed
+1974
-620
No files matched your search
@@ -29,6 +29,14 @@ import { EMOTE_CATALOG } from '../../shared/constants.js';
|
||||
* models come from the local client only (tools/local-extract ENEMY_SPINES): `localEnemySpines` adds them as the
|
||||
* optional `spineLocal` overlay, which the client draws when data/local-assets.json lists its files (user feedback
|
||||
* after 0.1.0, D3: 灼热源石虫 / 炽焰源石虫 were drawn as the plain 源石虫 everywhere).
|
||||
*
|
||||
* Why no dump carries them: isHarryh/Ark-Models *indexes* `1305_mhslim` / `1305_mhslim_2` but with an EMPTY
|
||||
* `assetList` — registered, never uploaded — so `arkModel()` returns nothing for them and the alias chain below falls
|
||||
* back to `enemy_1007_slime`: a different enemy rather than a variant of it, which is why the renderer tints it
|
||||
* (render/units.js ALIAS_TINT). The *mobile* build does ship their own model
|
||||
* (`enemy_spine/<enemyId>/<enemyId>.{skel,atlas,png}`), but the only public mirror of that build is a community wiki,
|
||||
* not a GitHub dump, so downloading from it would add a source the project deliberately does not use (docs/ASSETS.md
|
||||
* "Enemy aliases"). The tinted alias therefore stays the web model until a GitHub dump carries these two.
|
||||
*/
|
||||
export const ENEMY_SPINE_ALIAS = Object.freeze({
|
||||
enemy_1305_mhslim: 'enemy_1007_slime',
|
||||
@@ -497,11 +505,19 @@ export function buildPlan({ assets07, ops03, enemies05, maps05, audio, modelsDat
|
||||
// bank is missing (the client then falls back to `bgm.combat`; public/js/audio.js resolveBgm), so the manifest stays
|
||||
// valid for an older audio_data.
|
||||
const unite = flatBgm(bgmLeaf('battle.ON_GAME_READY.corrosion'));
|
||||
// 开战 BGM: the two official battle tracks of the mode's own 卡西米尔 act (music_act13side_1 骑士之日 /
|
||||
// music_act13side_2 无畏者, 塞壬唱片). The client does not draw them: the round decides (audio.js combatTrackFor —
|
||||
// 无畏者 for rounds 1–7, 骑士之日 from round 8 on), so index 0 must stay `bat_kazimierz2_1` and index 1
|
||||
// `bat_kazimierz2_2` (test/ui/audio.test.js pins both the order and the round table).
|
||||
// Kept out of `bgm` below when the index has neither bank, so the manifest stays valid for an older audio_data.
|
||||
const combatAlts = ['battle.ON_GAME_READY.bat_kazimierz2_1', 'battle.ON_GAME_READY.bat_kazimierz2_2']
|
||||
.map((n) => flatBgm(bgmLeaf(n))).filter(Boolean);
|
||||
const bgm = {
|
||||
lobby: flatBgm(bgmLeaf('sys.ON_ACTIVITY_LOADED.act2autochess')),
|
||||
prep: flatBgm(bgmLeaf('battle.ON_GAME_READY.act1autochess_shop')),
|
||||
combat: flatBgm(bgmLeaf('battle.ON_GAME_READY.act1autochess_shop')),
|
||||
boss: flatBgm(bgmLeaf('battle.ON_GAME_READY.rglk1phantomcastle')),
|
||||
...(combatAlts.length ? { combatAlts } : {}),
|
||||
...(unite ? { unite } : {}),
|
||||
};
|
||||
const bossBgm = {};
|
||||
|
||||
Reference in new issue
Block a user