arena/src/game/combatSettings.js

33 lines
671 B
JavaScript

const combatSpeed = {
attack: 1,
movement: 1,
};
export function getAttackSpeedMultiplier() {
return combatSpeed.attack;
}
export function getMovementSpeedMultiplier() {
return combatSpeed.movement;
}
export function setCombatSpeedMultipliers({ attack, movement }) {
if (attack !== undefined) {
combatSpeed.attack = validMultiplier(attack);
}
if (movement !== undefined) {
combatSpeed.movement = validMultiplier(movement);
}
}
function validMultiplier(value) {
const multiplier = Number(value);
if (!Number.isFinite(multiplier) || multiplier <= 0) {
throw new Error(`Invalid speed multiplier: ${value}`);
}
return multiplier;
}