New source found from dndbeyond.com

This commit is contained in:
2025-07-02 01:00:11 -07:00
parent 2c657770de
commit b7f7f4a655
24 changed files with 291 additions and 43 deletions
@@ -220,6 +220,13 @@ export var ModifierSubTypeEnum;
// Warlock Feature
ModifierSubTypeEnum["ENABLE_PACT_WEAPON"] = "enable-pact-weapon";
ModifierSubTypeEnum["ENABLE_HEX_WEAPON"] = "enable-hex-weapon";
// Enable Feature (used in tandem with REPLACE_WEAPON_ABILITY modifier)
ModifierSubTypeEnum["ENABLE_STRENGTH"] = "enable-strength";
ModifierSubTypeEnum["ENABLE_DEXTERITY"] = "enable-dexterity";
ModifierSubTypeEnum["ENABLE_CONSTITUTION"] = "enable-constitution";
ModifierSubTypeEnum["ENABLE_INTELLIGENCE"] = "enable-intelligence";
ModifierSubTypeEnum["ENABLE_WISDOM"] = "enable-wisdom";
ModifierSubTypeEnum["ENABLE_CHARISMA"] = "enable-charisma";
})(ModifierSubTypeEnum || (ModifierSubTypeEnum = {}));
export const SIZE_LIST = [
ModifierSubTypeEnum.GARGANTUAN,
@@ -269,10 +276,7 @@ export const HEAVY_ARMOR_LIST = [
ModifierSubTypeEnum.POWERED_ARMOR,
ModifierSubTypeEnum.DIVERS_ARMOR,
];
export const SHIELDS_LIST = [
ModifierSubTypeEnum.SHIELD,
ModifierSubTypeEnum.POT_LID,
];
export const SHIELDS_LIST = [ModifierSubTypeEnum.SHIELD, ModifierSubTypeEnum.POT_LID];
export const ALL_ARMOR_LIST = [
...LIGHT_ARMOR_LIST,
...MEDIUM_ARMOR_LIST,
@@ -306,6 +306,23 @@ export function isEnableHexWeaponModifier(modifier) {
return (getType(modifier) === ModifierTypeEnum.ENABLE_FEATURE &&
getSubType(modifier) === ModifierSubTypeEnum.ENABLE_HEX_WEAPON);
}
export function isEnablesAbilityStatModifier(modifier) {
if (getType(modifier) !== ModifierTypeEnum.ENABLE_FEATURE) {
return false;
}
const subType = getSubType(modifier);
switch (subType) {
case ModifierSubTypeEnum.ENABLE_STRENGTH:
case ModifierSubTypeEnum.ENABLE_DEXTERITY:
case ModifierSubTypeEnum.ENABLE_CONSTITUTION:
case ModifierSubTypeEnum.ENABLE_INTELLIGENCE:
case ModifierSubTypeEnum.ENABLE_WISDOM:
case ModifierSubTypeEnum.ENABLE_CHARISMA:
return true;
default:
return false;
}
}
/**
*
* @param modifier