Release Healer Man 0.1.55

This commit is contained in:
phenom committed 2026-09-19 12:23:33 -04:00
1 parent 2dbb0acfc1
commit 38b3d4d160
14 files changed
+279 -41

No files matched your search

+16 -1
View File
@@ -744,6 +744,11 @@ function classScriptEffects(
// The player spell delegates its weapon hit to a triggered child spell;
// retain the imported self-heal aura and restore the missing attack.
case "warrior:Bloodthirst": return [{ kind: "damage", coefficient: 1.2 }];
// The player-facing aura delegates each weapon strike to server-only child
// spells. Model the six one-second swings as a periodic damage payload.
case "warrior:Bladestorm": return [{
kind: "dot", coefficient: 0.6, ticks: 6, intervalMs: 1_000, tag: "bladestorm",
}];
case "warrior:Bloodrage": return [{ kind: "resource", resource: "rage", amount: 20 }];
case "warrior:Execute": return [{ kind: "execute", coefficient: 1.8 }];
case "warrior:Charge": return [{ kind: "status", status: "stun", durationMs: 1_500 }];
@@ -764,6 +769,9 @@ function classScriptEffects(
case "paladin:Judgement of Justice": return [{ kind: "status", status: "root", durationMs: 10_000 }];
case "paladin:Righteous Defense": return [{ kind: "taunt", durationMs: 3_000, maxTargets: 3 }];
case "paladin:Hand of Salvation": return [{ kind: "threat", mode: "percent", amount: -20, recipient: "ability-target" }];
// The DBC parent carries a one-point trigger marker; its weapon hit lives in
// a child spell that is not present in the player-facing progression rows.
case "paladin:Hammer of the Righteous": return [{ kind: "damage", coefficient: 1.2 }];
case "paladin:Divine Intervention": return [{
kind: "apply-aura",
aura: {
@@ -881,6 +889,9 @@ function classScriptEffects(
triggerSpellId: 0,
}];
case "warlock:Inferno": return [{ kind: "summon", creatureId: 89, coefficient: 0.8, durationMs: 60_000 }];
// Swiftmend's DBC row exposes only the one-point consume marker; supply the
// direct heal while leaving HoT consumption out until aura choice is modeled.
case "druid:Swiftmend": return [{ kind: "heal", coefficient: 2.2 }];
case "druid:Pounce": return [{ kind: "dot", coefficient: 0.18, ticks: 6, intervalMs: 3_000, tag: "pounce" }];
default: return [];
}
@@ -1178,6 +1189,9 @@ function effectsForRank(classId: BaseClassId, rank: Wow335Rank, abilityName: str
|| (classId === "priest" && abilityName === "Penance"
&& (effect.kind === "damage" || effect.kind === "heal"))
|| (classId === "shaman" && abilityName === "Feral Spirit" && effect.kind === "summon")
|| (classId === "warrior" && abilityName === "Bladestorm" && effect.kind === "dot")
|| (classId === "paladin" && abilityName === "Hammer of the Righteous" && effect.kind === "damage")
|| (classId === "druid" && abilityName === "Swiftmend" && effect.kind === "heal")
|| (classId === "warrior" && abilityName === "Bloodrage"
&& (effect.kind === "resource" || effect.kind === "heal"))
))
@@ -1351,6 +1365,7 @@ function abilityDefinition(classId: BaseClassId, chain: Wow335Chain): AbilityDef
}
function abilityNameRadius(abilityName: string): number {
if (abilityName === "Bladestorm") return 8;
if (abilityName === "Hellfire") return 10;
if (abilityName === "Mind Sear") return 10;
if (abilityName === "Pestilence") return 10;
@@ -1359,7 +1374,7 @@ function abilityNameRadius(abilityName: string): number {
}
function abilityNameTarget(abilityName: string): AbilityTarget | undefined {
if (["Divine Hymn", "Tranquility", "Holy Nova", "Hellfire", "Army of the Dead"].includes(abilityName)) return "self";
if (["Bladestorm", "Divine Hymn", "Tranquility", "Holy Nova", "Hellfire", "Army of the Dead"].includes(abilityName)) return "self";
if (abilityName === "Penance") return "friendly";
if (abilityName === "Death Coil") return "hostile";
return undefined;