forked from phenom/healer-man
Update Healer Man server
This commit is contained in:
1 parent
35dfdaed61
commit
4fb7a0b9c8
161 files changed
+24618
-529
No files matched your search
@@ -0,0 +1,37 @@
|
||||
export interface Wow335LightwellRenewProfile {
|
||||
readonly childSpellId: number;
|
||||
readonly baseHealPerTick: number;
|
||||
readonly ticks: number;
|
||||
readonly intervalMs: number;
|
||||
readonly durationMs: number;
|
||||
/** AzerothCore 3.3.5 spell_bonus_data dot coefficient, applied per tick. */
|
||||
readonly spellPowerCoefficientPerTick?: number;
|
||||
}
|
||||
|
||||
const LIGHTWELL_RENEW_PROFILE_BY_CREATURE: Readonly<Record<number, Wow335LightwellRenewProfile>> = {
|
||||
// Child spell IDs and tick amounts come from the local 3.3.5 Spell.dbc rows.
|
||||
// Spell.dbc lists the 6s aura and 2s tick interval for each rank.
|
||||
// The 3.3.5 spell_bonus_data table gives dot_bonus=0.3333 for the first
|
||||
// five child IDs; rank 6 (48085) has no matching coefficient row.
|
||||
31897: { childSpellId: 7001, baseHealPerTick: 267, ticks: 3, intervalMs: 2_000, durationMs: 6_000, spellPowerCoefficientPerTick: 0.3333 },
|
||||
31896: { childSpellId: 27873, baseHealPerTick: 388, ticks: 3, intervalMs: 2_000, durationMs: 6_000, spellPowerCoefficientPerTick: 0.3333 },
|
||||
31895: { childSpellId: 27874, baseHealPerTick: 533, ticks: 3, intervalMs: 2_000, durationMs: 6_000, spellPowerCoefficientPerTick: 0.3333 },
|
||||
31894: { childSpellId: 28276, baseHealPerTick: 787, ticks: 3, intervalMs: 2_000, durationMs: 6_000, spellPowerCoefficientPerTick: 0.3333 },
|
||||
31893: { childSpellId: 48084, baseHealPerTick: 1_305, ticks: 3, intervalMs: 2_000, durationMs: 6_000, spellPowerCoefficientPerTick: 0.3333 },
|
||||
31883: { childSpellId: 48085, baseHealPerTick: 1_540, ticks: 3, intervalMs: 2_000, durationMs: 6_000 },
|
||||
};
|
||||
|
||||
export function wow335LightwellRenewProfileForCreature(
|
||||
creatureId: number,
|
||||
): Wow335LightwellRenewProfile | null {
|
||||
return LIGHTWELL_RENEW_PROFILE_BY_CREATURE[creatureId] ?? null;
|
||||
}
|
||||
|
||||
/** Returns the cancellation fraction stated in the generated Lightwell rank tooltip. */
|
||||
export function wow335LightwellDamageCancellationFraction(description: string): number | null {
|
||||
const match = /attacks done to you equal to\s+(\d+(?:\.\d+)?)%\s+of your total health will cancel the effect/i
|
||||
.exec(description);
|
||||
if (!match) return null;
|
||||
const percent = Number(match[1]);
|
||||
return Number.isFinite(percent) && percent > 0 ? percent / 100 : null;
|
||||
}
|
||||
Reference in new issue
Block a user