Release Healer Man 0.1.32

This commit is contained in:
phenom committed 2026-09-12 11:07:25 -04:00
1 parent d3d6aaebdb
commit 6dcb1034e5
102 files changed
+10772 -788

No files matched your search

+16 -4
View File
@@ -3,6 +3,7 @@ import { createDefaultAppearance } from "./characterCatalog";
import { useShellStore } from "./shellStore";
import { installDungeonShellRuntime } from "./dungeonShellRuntime";
import { installManastormShellRuntime } from "./manastormShellRuntime";
import { SHELVED_MODES_ENABLED } from "./releaseFeatures";
import { DUNGEON_MANIFEST } from "../game/dungeonManifest";
import { useGameStore } from "../game/store";
import { useManastormStore } from "../game/manastormStore";
@@ -23,6 +24,8 @@ import { useManastormAdminStore } from "../game/manastormAdminStore";
installDungeonShellRuntime();
installManastormShellRuntime();
const normalReleaseIt = SHELVED_MODES_ENABLED ? it.skip : it;
const shelvedModeIt = SHELVED_MODES_ENABLED ? it : it.skip;
const character = {
id: "character-1",
@@ -254,7 +257,16 @@ describe("shell store", () => {
});
});
it("opens Manastorms, validates the role, and starts a fresh level-one run", () => {
normalReleaseIt("keeps legacy shelved commands out of the normal shell", () => {
prepareSelectedCharacter();
expect(useShellStore.getState().openManastorms()).toBe(false);
expect(useShellStore.getState().openArenas()).toBe(false);
expect(useShellStore.getState().enterManastorm("healer")).toBe(false);
expect(useShellStore.getState().phase).toBe("characters");
expect(useShellStore.getState().notice).toMatch(/temporarily unavailable/i);
});
shelvedModeIt("opens Manastorms, validates the role, and starts a fresh level-one run", () => {
prepareSelectedCharacter();
expect(useShellStore.getState().openManastorms()).toBe(true);
expect(useShellStore.getState().phase).toBe("manastorms");
@@ -278,7 +290,7 @@ describe("shell store", () => {
);
});
it("starts each party size from only its own unlocked checkpoint", () => {
shelvedModeIt("starts each party size from only its own unlocked checkpoint", () => {
const progress = recordManastormCheckpoint(createEmptyManastormProgress(), 3, 5, 6);
useShellStore.setState({
phase: "manastorms",
@@ -302,7 +314,7 @@ describe("shell store", () => {
});
});
it("selects end-game mode at the character cap and hands off an eligible checkpoint", () => {
shelvedModeIt("selects end-game mode at the character cap and hands off an eligible checkpoint", () => {
const progress = recordManastormCheckpoint(
createEmptyManastormProgress(),
3,
@@ -333,7 +345,7 @@ describe("shell store", () => {
});
});
it("passes a persisted client-grounded spell selection into the run runtime", () => {
shelvedModeIt("passes a persisted client-grounded spell selection into the run runtime", () => {
const model = manastormActiveSpellLoadoutModel(character.classId, character.level);
const selectedIds = model.options.slice(0, 2).map((option) => option.id);
const unlocked = mergeManastormUnlockedContent(