Release Healer Man 0.1.40
This commit is contained in:
1 parent
ed0d2fea3d
commit
197a64117c
215 files changed
+5131
-181
No files matched your search
@@ -798,7 +798,7 @@ describe("combat store", () => {
|
||||
expect(useCombatStore.getState().lootMob("lootable", 30_000)).toBe(false);
|
||||
});
|
||||
|
||||
it("rolls SQL boss loot at the killing player's level and grants it automatically exactly once", () => {
|
||||
it("suppresses leveling equipment while granting boss cards automatically exactly once", () => {
|
||||
useCombatStore.getState().initializeCharacter({
|
||||
classId: "priest",
|
||||
level: 1,
|
||||
@@ -825,11 +825,9 @@ describe("combat store", () => {
|
||||
looted: true,
|
||||
corpseDespawnAt: 5_000 + MINIMUM_CORPSE_VISIBLE_MS,
|
||||
});
|
||||
expect(corpse.pendingLoot).toHaveLength(1);
|
||||
expect(corpse.pendingLoot[0]).toMatchObject({
|
||||
itemLevel: 1,
|
||||
sourceBossKey: "lady-anacondra",
|
||||
});
|
||||
expect(corpse.pendingLoot).toEqual([]);
|
||||
expect(corpse.bossCardDrop?.rarities).toContain("normal");
|
||||
expect(useCombatStore.getState().bossCards.counts["wow:lady anacondra"]?.normal).toBe(1);
|
||||
|
||||
expect(useCombatStore.getState().inventory).toEqual(corpse.pendingLoot);
|
||||
expect(useCombatStore.getState().bossLootRewards).toEqual([
|
||||
@@ -846,7 +844,8 @@ describe("combat store", () => {
|
||||
expect(useCombatStore.getState().bossLootRewards).toEqual([]);
|
||||
expect(useCombatStore.getState().lootMob("anacondra-spawn", 5_100)).toBe(false);
|
||||
expect(useCombatStore.getState().lootMob("anacondra-spawn", 5_200)).toBe(false);
|
||||
expect(useCombatStore.getState().inventory).toHaveLength(1);
|
||||
expect(useCombatStore.getState().inventory).toHaveLength(0);
|
||||
expect(useCombatStore.getState().bossCards.counts["wow:lady anacondra"]?.normal).toBe(1);
|
||||
});
|
||||
|
||||
it("aggros every surviving packmate even when the pulled mob dies to the opening hit", () => {
|
||||
@@ -1073,6 +1072,26 @@ describe("combat store", () => {
|
||||
}));
|
||||
});
|
||||
|
||||
it("prevents Death Pact from instantly killing an encounter boss", () => {
|
||||
useCombatStore.getState().initializeCharacter({ classId: "death-knight", level: 80 });
|
||||
registerTarget("pact-boss", [2, 0, 0], 1_000_000, 0);
|
||||
useCombatStore.getState().registerMob("pact-boss", { name: "Pact boss", boss: true, maxHealth: 1_000_000, xpReward: 0 });
|
||||
useCombatStore.setState({ resource: 100, resourcePools: { "runic-power": 100 } });
|
||||
expect(useCombatStore.getState().castAbility("wow335-death-knight-death-pact", undefined, 1_000).ok).toBe(true);
|
||||
expect(useCombatStore.getState().mobs["pact-boss"]).toMatchObject({ dead: false, health: 1_000_000 });
|
||||
});
|
||||
|
||||
it("prevents repeated Favor activations across branches of one Guardian hit", async () => {
|
||||
const build = (await loadCanonicalBenchmarkBuilds(80, ["guardian"]))
|
||||
.find((candidate) => candidate.role === "damage")!;
|
||||
useCombatStore.getState().initializeCharacter({ classId: build.classId, level: build.level, talentRanks: build.talentRanks });
|
||||
registerTarget("guardian-proc-dummy", [2, 0, 0], 1_000_000, 0);
|
||||
expect(useCombatStore.getState().castAbility("coa-18-reprisal-69-800316", undefined, 1_000).ok).toBe(true);
|
||||
const hits = useCombatStore.getState().combatEvents.filter((event) => event.kind === "damage"
|
||||
&& event.abilityId === "coa-triggered-712476");
|
||||
expect(hits.length).toBeLessThanOrEqual(2);
|
||||
});
|
||||
|
||||
it("resets encounter health without erasing earned progression", () => {
|
||||
registerTarget("mob", [2, 0, 0], 1, 100);
|
||||
useCombatStore.getState().damageMob("mob", 5, 1000);
|
||||
@@ -1478,6 +1497,7 @@ describe("combat store", () => {
|
||||
});
|
||||
|
||||
useCombatStore.getState().damageMob("storm-boss", 10_000, 30_000);
|
||||
expect(useCombatStore.getState().mobs["storm-boss"].pendingLoot).toHaveLength(2);
|
||||
expect(useCombatStore.getState().mobs["storm-boss"].pendingLoot).toHaveLength(0);
|
||||
expect(useCombatStore.getState().mobs["storm-boss"].bossCardDrop?.rarities).toContain("normal");
|
||||
});
|
||||
});
|
||||
Reference in new issue
Block a user