Skip to content

Commit

Permalink
Merge pull request #1195 from dmportella/charger-2024-fix
Browse files Browse the repository at this point in the history
  • Loading branch information
kakaroto authored Nov 27, 2024
2 parents 2e78b04 + b4421f8 commit b6543a2
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 1 deletion.
1 change: 1 addition & 0 deletions src/dndbeyond/base/character.js
Original file line number Diff line number Diff line change
Expand Up @@ -253,6 +253,7 @@ class Character extends CharacterBase {
let is2024 = false;
if((feat_name.toLowerCase() === "great weapon master" ||
feat_name.toLowerCase() === "sharpshooter" ||
feat_name.toLowerCase() === "charger" ||
feat_name.toLowerCase() === "polearm master") &&
feat_reference.toLowerCase().includes("2024")) {
is2024 = true;
Expand Down
18 changes: 18 additions & 0 deletions src/dndbeyond/content-scripts/character.js
Original file line number Diff line number Diff line change
Expand Up @@ -457,6 +457,24 @@ function handleSpecialMeleeAttacks(damages=[], damage_types=[], properties, sett
damages.push("+5");
damage_types.push("Charger Feat");
settings_to_change["charger-feat"] = false;
} else if (character.hasFeat("Charger 2024") &&
character.getSetting("charger-feat")) {
let charge_dmg = "1d8";
// apply GWF if needed
if(((properties["Attack Type"] == "Melee" && ((properties["Properties"].includes("Versatile") && character.getSetting("versatile-choice") != "one") ||
properties["Properties"].includes("Two-Handed"))) ||
action_name == "Polearm Master - Bonus Attack" ||
action_name == "Pole Strike")) {
if(character.hasGreatWeaponFighting(2014)) {
charge_dmg += "ro<=2";
} else if(character.hasGreatWeaponFighting(2024)) {
charge_dmg += "min3";
}
}

damages.push(charge_dmg);
damage_types.push("Charger Feat");
settings_to_change["charger-feat"] = false;
}

return to_hit;
Expand Down
2 changes: 1 addition & 1 deletion src/extension/popup.js
Original file line number Diff line number Diff line change
Expand Up @@ -262,7 +262,7 @@ function populateCharacter(response) {
e = createHTMLOption("artificer-arcane-jolt", false, character_settings);
options.append(e);
}
if (response["feats"].includes("Charger")) {
if (response["feats"].some(f => f.toLowerCase().includes("charger"))) {
e = createHTMLOption("charger-feat", false, character_settings);
options.append(e);
}
Expand Down

0 comments on commit b6543a2

Please sign in to comment.