forked from phenom/healer-man
Update Healer Man server
This commit is contained in:
1 parent
39458d5de6
commit
6cc1b9217f
203 files changed
+133929
-31271
No files matched your search
@@ -1,3 +1,5 @@
|
||||
import type { RomNativeDerivedStats } from "./romNativeStatsTypes";
|
||||
import type { RomNativeDamageTargetContext } from "./romNativeCombatAmount";
|
||||
import {
|
||||
abilitiesForCharacter,
|
||||
learnedAbilityForBuild,
|
||||
@@ -455,6 +457,7 @@ export function choosePartyRotationDecision(
|
||||
specializationId: member.specializationId,
|
||||
specialization: member.specialization,
|
||||
role: member.role,
|
||||
statRuleset: member.statRuleset,
|
||||
level: member.level,
|
||||
health: member.health,
|
||||
maxHealth: member.maxHealth,
|
||||
@@ -467,6 +470,10 @@ export function choosePartyRotationDecision(
|
||||
runes: member.runes,
|
||||
deathKnightReapingRank: reapingRank,
|
||||
abilities: rotationAbilities,
|
||||
learnedAbilities: learned,
|
||||
manaCostForAbility: (ability) => partyAbilityCosts(member, ability, context.now)
|
||||
.filter((cost) => cost.resource === "mana")
|
||||
.reduce((total, cost) => total + cost.amount, 0),
|
||||
knownDamagingAbilityNames: new Set(learned.filter((ability) => {
|
||||
const categories = aiHintsForAbility(ability).categories;
|
||||
return categories.includes("damage") || categories.includes("execute");
|
||||
@@ -482,6 +489,12 @@ export function choosePartyRotationDecision(
|
||||
moving: context.moving,
|
||||
requiredControl: context.requiredControl,
|
||||
maintainedAbilityIds: context.maintainedAbilityIds,
|
||||
maintainedPeriodicEffects: useCombatStore.getState().effects.map((effect) => ({
|
||||
abilityId: effect.sourceAbilityId,
|
||||
sourceActorId: effect.sourceActorId,
|
||||
targetId: effect.targetId ?? "__player__",
|
||||
remainingMs: Math.max(0, effect.nextTickAt + (effect.remainingTicks - 1) * effect.intervalMs - context.now),
|
||||
})),
|
||||
activeAuraExclusiveGroups: context.activeAuraExclusiveGroups,
|
||||
activeSummonAbilityIds: context.activeSummonAbilityIds,
|
||||
hasActivePet: context.hasActivePet,
|
||||
@@ -566,6 +579,8 @@ export function partyAbilityAmount(
|
||||
effect: AbilityEffect,
|
||||
poisonDoses = 0,
|
||||
intellectOverride?: number,
|
||||
effectiveNativeStats?: RomNativeDerivedStats,
|
||||
nativeTargetContext?: RomNativeDamageTargetContext,
|
||||
): number {
|
||||
const sourceIntellect = intellectOverride ?? deriveCharacterStats(
|
||||
member.classId,
|
||||
@@ -618,6 +633,8 @@ export function partyAbilityAmount(
|
||||
member.gender,
|
||||
member.statRuleset ?? "wow",
|
||||
member.secondaryClassId,
|
||||
effectiveNativeStats,
|
||||
nativeTargetContext,
|
||||
) + (effect.kind === "damage" ? effect.bonusFlat ?? 0 : 0);
|
||||
if (member.classId === "druid" && (effect.kind === "damage" || effect.kind === "dot")) {
|
||||
return applyTalentModifierValue(
|
||||
|
||||
Reference in new issue
Block a user