forked from phenom/healer-man
Update Healer Man server
This commit is contained in:
1 parent
4c768fbec6
commit
b16821e92e
330 files changed
+35406
-1760
No files matched your search
@@ -3,6 +3,14 @@ import { WOW335_ABILITIES_BY_CLASS } from "./wow335AbilityCatalog";
|
||||
|
||||
const IMPROVED_WATER_SHIELD_CRITICAL_CHANCE_BY_RANK = [0, 0.1, 0.2, 0.3] as const;
|
||||
const IMPROVED_WATER_SHIELD_NORMAL_CHANCE_BY_RANK = [0, 0.05, 0.1, 0.15] as const;
|
||||
const IMPROVED_SHIELDS_WATER_SHIELD_MANA_BONUS_BY_RANK = [0, 5, 10, 15] as const;
|
||||
|
||||
export function wow335ShamanImprovedShieldsWaterShieldManaBonusPercent(rank: number): number {
|
||||
const normalizedRank = Number.isFinite(rank)
|
||||
? Math.max(0, Math.min(3, Math.trunc(rank)))
|
||||
: 0;
|
||||
return IMPROVED_SHIELDS_WATER_SHIELD_MANA_BONUS_BY_RANK[normalizedRank] ?? 0;
|
||||
}
|
||||
|
||||
export function wow335ShamanImprovedWaterShieldProcChance(
|
||||
rank: number,
|
||||
@@ -32,7 +40,7 @@ export function wow335ShamanImprovedWaterShieldShouldProc(
|
||||
return chance > 0 && Number.isFinite(roll) && roll >= 0 && roll < chance;
|
||||
}
|
||||
|
||||
export function wow335ShamanWaterShieldOrbManaAtLevel(level: number): number {
|
||||
export function wow335ShamanWaterShieldOrbManaAtLevel(level: number, improvedShieldsRank = 0): number {
|
||||
const waterShield = WOW335_ABILITIES_BY_CLASS.shaman.find((ability) => ability.name === "Water Shield");
|
||||
if (!waterShield) return 0;
|
||||
const rankedWaterShield = abilityAtLevel(waterShield, level);
|
||||
@@ -44,7 +52,9 @@ export function wow335ShamanWaterShieldOrbManaAtLevel(level: number): number {
|
||||
.find((proc) => proc.id.endsWith(":water-shield")
|
||||
&& proc.action.kind === "resource"
|
||||
&& proc.action.resource === "mana");
|
||||
return orbProc?.action.kind === "resource" ? Math.max(0, orbProc.action.amount) : 0;
|
||||
if (orbProc?.action.kind !== "resource") return 0;
|
||||
const baseMana = Math.max(0, orbProc.action.amount);
|
||||
return Math.round(baseMana * (1 + wow335ShamanImprovedShieldsWaterShieldManaBonusPercent(improvedShieldsRank) / 100));
|
||||
}
|
||||
|
||||
export function wow335ShamanImprovedWaterShieldCappedRestore(
|
||||
|
||||
Reference in new issue
Block a user