Skip to content

Commit

Permalink
Add specific Divine Ally choice sets and grants (foundryvtt#5921)
Browse files Browse the repository at this point in the history
  • Loading branch information
stwlam authored Jan 26, 2023
1 parent 3d58dc3 commit 569595b
Show file tree
Hide file tree
Showing 11 changed files with 250 additions and 3 deletions.
43 changes: 43 additions & 0 deletions packs/data/classfeatures.db/blade-ally.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
{
"_id": "EtltLdiy9kNfHU0c",
"img": "systems/pf2e/icons/features/classes/blade-ally.webp",
"name": "Blade Ally",
"system": {
"actionType": {
"value": "passive"
},
"actions": {
"value": null
},
"description": {
"value": "<p>A spirit of battle dwells within your armaments. Select one weapon or @UUID[Compendium.pf2e.equipment-srd.Handwraps of Mighty Blows]{Handwraps of Mighty Blows} when you make your daily preparations. In your hands, the item gains the effect of a property rune. For a champion following the tenets of good, choose @UUID[Compendium.pf2e.feat-effects.Effect: Blade Ally Disrupting Rune]{Disrupting}, @UUID[Compendium.pf2e.feat-effects.Effect: Blade Ally Ghost Touch Rune]{Ghost Touch}, returning, or shifting. If you are a champion following the tenets of evil, you can choose the following property runes: @UUID[Compendium.pf2e.feat-effects.Effect: Blade Ally Fearsome Rune]{Fearsome}, returning, or shifting. You also gain the weapon's critical specialization effect.</p>"
},
"featType": {
"value": "classfeature"
},
"level": {
"value": 0
},
"prerequisites": {
"value": []
},
"rules": [
{
"domain": "all",
"key": "RollOption",
"option": "divine-ally:blade"
}
],
"source": {
"value": "Pathfinder Core Rulebook"
},
"traits": {
"custom": "",
"rarity": "common",
"value": [
"champion"
]
}
},
"type": "feat"
}
32 changes: 31 additions & 1 deletion packs/data/classfeatures.db/divine-ally.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,37 @@
"prerequisites": {
"value": []
},
"rules": [],
"rules": [
{
"adjustName": false,
"allowedDrops": {
"label": "PF2E.SpecificRule.DivineAlly.AllowedDrops",
"predicate": [
"item:type:feature",
"item:trait:champion"
]
},
"choices": [
{
"value": "Compendium.pf2e.classfeatures.Blade Ally"
},
{
"value": "Compendium.pf2e.classfeatures.Shield Ally"
},
{
"value": "Compendium.pf2e.classfeatures.Steed Ally"
}
],
"flag": "divineAlly",
"key": "ChoiceSet",
"prompt": "PF2E.SpecificRule.DivineAlly.Prompt"
},
{
"allowDuplicate": false,
"key": "GrantItem",
"uuid": "{item|flags.pf2e.rulesSelections.divineAlly}"
}
],
"source": {
"value": "Pathfinder Core Rulebook"
},
Expand Down
52 changes: 52 additions & 0 deletions packs/data/classfeatures.db/shield-ally.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
{
"_id": "QQP0mu0cyWIwNUh9",
"img": "systems/pf2e/icons/features/classes/shield-ally.webp",
"name": "Shield Ally",
"system": {
"actionType": {
"value": "passive"
},
"actions": {
"value": null
},
"description": {
"value": "<p>A spirit of protection dwells within your shield. In your hands, the shield's Hardness increases by 2 and its HP and BT increase by half.</p>"
},
"featType": {
"value": "classfeature"
},
"level": {
"value": 0
},
"prerequisites": {
"value": []
},
"rules": [
{
"key": "ActiveEffectLike",
"mode": "add",
"path": "system.attributes.shield.hardness",
"predicate": [
"self:shield:equipped"
],
"value": 2
},
{
"domain": "all",
"key": "RollOption",
"option": "divine-ally:shield"
}
],
"source": {
"value": "Pathfinder Core Rulebook"
},
"traits": {
"custom": "",
"rarity": "common",
"value": [
"champion"
]
}
},
"type": "feat"
}
43 changes: 43 additions & 0 deletions packs/data/classfeatures.db/steed-ally.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
{
"_id": "Z6E1O8X7CFcyczB1",
"img": "systems/pf2e/icons/features/classes/steed-ally.webp",
"name": "Steed Ally",
"system": {
"actionType": {
"value": "passive"
},
"actions": {
"value": null
},
"description": {
"value": "<p>You gain a young animal companion as a mount. Ordinarily, your animal companion is one that has the mount special ability, such as a horse. You can select a different animal companion (GM's discretion), but this ability doesn't grant it the mount special ability.</p>"
},
"featType": {
"value": "classfeature"
},
"level": {
"value": 0
},
"prerequisites": {
"value": []
},
"rules": [
{
"domain": "all",
"key": "RollOption",
"option": "divine-ally:steed"
}
],
"source": {
"value": "Pathfinder Core Rulebook"
},
"traits": {
"custom": "",
"rarity": "common",
"value": [
"champion"
]
}
},
"type": "feat"
}
29 changes: 29 additions & 0 deletions packs/data/feats.db/divine-ally.json
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,35 @@
"mode": "add",
"path": "system.custom.modifiers.champion-dedication-count",
"value": 1
},
{
"adjustName": false,
"allowedDrops": {
"label": "PF2E.SpecificRule.DivineAlly.AllowedDrops",
"predicate": [
"item:type:feature",
"item:trait:champion"
]
},
"choices": [
{
"value": "Compendium.pf2e.classfeatures.Blade Ally"
},
{
"value": "Compendium.pf2e.classfeatures.Shield Ally"
},
{
"value": "Compendium.pf2e.classfeatures.Steed Ally"
}
],
"flag": "divineAlly",
"key": "ChoiceSet",
"prompt": "PF2E.SpecificRule.DivineAlly.Prompt"
},
{
"allowDuplicate": false,
"key": "GrantItem",
"uuid": "{item|flags.pf2e.rulesSelections.divineAlly}"
}
],
"source": {
Expand Down
47 changes: 46 additions & 1 deletion packs/data/feats.db/second-ally.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,52 @@
}
]
},
"rules": [],
"rules": [
{
"adjustName": false,
"allowedDrops": {
"label": "PF2E.SpecificRule.DivineAlly.AllowedDrops",
"predicate": [
"item:type:feature",
"item:trait:champion"
]
},
"choices": [
{
"predicate": [
{
"not": "divine-ally:blade"
}
],
"value": "Compendium.pf2e.classfeatures.Blade Ally"
},
{
"predicate": [
{
"not": "divine-ally:shield"
}
],
"value": "Compendium.pf2e.classfeatures.Shield Ally"
},
{
"predicate": [
{
"not": "divine-ally:steed"
}
],
"value": "Compendium.pf2e.classfeatures.Steed Ally"
}
],
"flag": "divineAlly",
"key": "ChoiceSet",
"prompt": "PF2E.SpecificRule.DivineAlly.Prompt"
},
{
"allowDuplicate": false,
"key": "GrantItem",
"uuid": "{item|flags.pf2e.rulesSelections.divineAlly}"
}
],
"source": {
"value": "Pathfinder Core Rulebook"
},
Expand Down
3 changes: 2 additions & 1 deletion packs/scripts/packman/compendium-pack.ts
Original file line number Diff line number Diff line change
Expand Up @@ -248,7 +248,8 @@ export class CompendiumPack {
if (docName) {
return parts.slice(0, 3).concat(docName).join(".");
} else {
throw PackError(`Unable to find document name corresponding with ${uuid}`);
console.debug(`Warning: Unable to find document name corresponding with ${uuid}`);
return uuid;
}
};

Expand Down
Binary file added static/icons/features/classes/blade-ally.webp
Binary file not shown.
Binary file added static/icons/features/classes/shield-ally.webp
Binary file not shown.
Binary file added static/icons/features/classes/steed-ally.webp
Binary file not shown.
4 changes: 4 additions & 0 deletions static/lang/re-en.json
Original file line number Diff line number Diff line change
Expand Up @@ -1261,6 +1261,10 @@
"AttackNote": "Your fangs Strike deals an additional [[/r 1d4[bleed]]] on a critical hit."
}
},
"DivineAlly": {
"AllowedDrops": "champion class feature",
"Prompt": "Select a divine ally."
},
"DragonDisciple": {
"DragonChoice": {
"Black": "Black Dragon",
Expand Down

0 comments on commit 569595b

Please sign in to comment.