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
@@ -12,6 +12,7 @@ import { registerAbilityAnimationLookup } from "./abilityAnimationLookup";
|
||||
import type { AuraDefinition, DamageSchool, DispelCategory } from "./combatAuras";
|
||||
import { applyAbilityBalanceTuning, currentBalanceTuningPolicy } from "./balanceTuning";
|
||||
import { preloadRuntimeTalentCatalog } from "./talentRuntimeCatalog";
|
||||
import { applyGeneratedBeastWithinTalent } from "./wow335HunterRuntime";
|
||||
|
||||
export type RomSkillGroup = "primary" | "general" | "elite" | "passive";
|
||||
|
||||
@@ -138,6 +139,7 @@ export interface AbilityAmountScaling {
|
||||
readonly coefficientPerLevel?: number;
|
||||
readonly bonusPowerCoefficient?: number;
|
||||
readonly attackPowerCoefficient?: number;
|
||||
readonly rangedAttackPowerCoefficient?: number;
|
||||
readonly spiritCoefficient?: number;
|
||||
readonly sourceLevel?: number;
|
||||
readonly maxScalingLevel?: number;
|
||||
@@ -214,7 +216,7 @@ export type AbilityEffect =
|
||||
| { readonly kind: "interrupt"; readonly lockoutMs: number }
|
||||
| { readonly kind: "pull"; readonly toward: "caster" | "destination" }
|
||||
| { readonly kind: "execute"; readonly coefficient: number }
|
||||
| { readonly kind: "resource-drain"; readonly amount: number; readonly burn: boolean; readonly resource?: ResourceType; readonly percentage?: boolean }
|
||||
| { readonly kind: "resource-drain"; readonly amount: number; readonly burn: boolean; readonly resource?: ResourceType; readonly percentage?: boolean; readonly recipient?: "caster" }
|
||||
| {
|
||||
readonly kind: "threat";
|
||||
readonly mode: "flat" | "percent" | "redirect";
|
||||
@@ -428,10 +430,7 @@ const WARRIOR = [
|
||||
castTimeMs: 0, cooldownMs: 15_000, gcdMs: 1500, cost: { resource: "rage", amount: 0 },
|
||||
description: "Charges a distant enemy, briefly stunning it and generating Rage.",
|
||||
effects: [
|
||||
{ kind: "damage", coefficient: 0.25 },
|
||||
{ kind: "status", status: "stun", durationMs: 1000 },
|
||||
{ kind: "status", status: "pulled", durationMs: 500 },
|
||||
{ kind: "resource", amount: 15 },
|
||||
],
|
||||
}),
|
||||
defineAbility({
|
||||
@@ -971,9 +970,10 @@ async function preloadClassicAbilityCatalog(): Promise<void> {
|
||||
WOW335_TRIGGERED_ABILITIES_BY_SPELL_ID,
|
||||
}) => {
|
||||
for (const classId of BASE_CLASS_IDS) {
|
||||
const abilities = mergeWow335ClassicAbilities(CLASSIC_CORE_ABILITIES[classId], WOW335_ABILITIES_BY_CLASS[classId]);
|
||||
registerClassAbilities(
|
||||
classId,
|
||||
mergeWow335ClassicAbilities(CLASSIC_CORE_ABILITIES[classId], WOW335_ABILITIES_BY_CLASS[classId]),
|
||||
classId === "hunter" ? abilities.map(applyGeneratedBeastWithinTalent) : abilities,
|
||||
);
|
||||
}
|
||||
for (const [spellId, ability] of Object.entries(WOW335_TRIGGERED_ABILITIES_BY_SPELL_ID)) {
|
||||
|
||||
Reference in new issue
Block a user