mirror of
https://github.com/Foundryborne/daggerheart.git
synced 2026-01-17 15:39:02 +01:00
Impproved Adversary Sheet Data Display (#751)
* Impproved Adversary Sheet Data Display Fixes #604 * FIX: formula lables for attacks and weapons --------- Co-authored-by: Joaquin Pereyra <joaquinpereyra98@users.noreply.github.com>
This commit is contained in:
parent
ae23696e40
commit
6f0f21c355
130 changed files with 496 additions and 311 deletions
|
|
@ -42,4 +42,32 @@ export default class DHAttackAction extends DHDamageAction {
|
|||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate a localized label array for this item subtype.
|
||||
* @returns {(string | { value: string, icons: string[] })[]} An array of localized strings and damage label objects.
|
||||
*/
|
||||
_getLabels() {
|
||||
const labels = [];
|
||||
const { roll, range, damage } = this;
|
||||
|
||||
if (roll.trait) labels.push(game.i18n.localize(`DAGGERHEART.CONFIG.Traits.${roll.trait}.short`))
|
||||
if (range) labels.push(game.i18n.localize(`DAGGERHEART.CONFIG.Range.${range}.short`));
|
||||
|
||||
for (const { value, type } of damage.parts) {
|
||||
const str = Roll.replaceFormulaData(value.getFormula(), this.actor?.getRollData() ?? {});
|
||||
|
||||
const icons = Array.from(type)
|
||||
.map(t => CONFIG.DH.GENERAL.damageTypes[t]?.icon)
|
||||
.filter(Boolean);
|
||||
|
||||
if (icons.length === 0) {
|
||||
labels.push(str);
|
||||
} else {
|
||||
labels.push({ value: str, icons });
|
||||
}
|
||||
}
|
||||
|
||||
return labels;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -103,7 +103,7 @@ export default class DhCharacter extends BaseDataActor {
|
|||
}),
|
||||
attack: new ActionField({
|
||||
initial: {
|
||||
name: 'Attack',
|
||||
name: 'Unarmed Attack',
|
||||
img: 'icons/skills/melee/unarmed-punch-fist-yellow-red.webp',
|
||||
_id: foundry.utils.randomID(),
|
||||
systemPath: 'attack',
|
||||
|
|
@ -394,19 +394,22 @@ export default class DhCharacter extends BaseDataActor {
|
|||
return this.parent.effects.find(x => x.type === 'beastform');
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the unarmed attackwhen no primary or secondary weapon is equipped.
|
||||
* Returns `null` if either weapon is equipped.
|
||||
* If the actor is in beastform, overrides the attack's name and image.
|
||||
*
|
||||
* @returns {DHAttackAction|null}
|
||||
*/
|
||||
get usedUnarmed() {
|
||||
const primaryWeaponEquipped = this.primaryWeapon?.system?.equipped;
|
||||
const secondaryWeaponEquipped = this.secondaryWeapon?.system?.equipped;
|
||||
return !primaryWeaponEquipped && !secondaryWeaponEquipped
|
||||
? {
|
||||
...this.attack,
|
||||
uuid: this.attack.uuid,
|
||||
id: this.attack.id,
|
||||
name: this.activeBeastform ? 'DAGGERHEART.ITEMS.Beastform.attackName' : this.attack.name,
|
||||
img: this.activeBeastform ? 'icons/creatures/claws/claw-straight-brown.webp' : this.attack.img,
|
||||
actor: this.parent
|
||||
}
|
||||
: null;
|
||||
if (this.primaryWeapon?.system?.equipped || this.secondaryWeapon?.system?.equipped) return null;
|
||||
|
||||
const attack = foundry.utils.deepClone(this.attack);
|
||||
if (this.activeBeastform) {
|
||||
attack.name = 'DAGGERHEART.ITEMS.Beastform.attackName';
|
||||
attack.img = 'icons/creatures/claws/claw-straight-brown.webp';
|
||||
}
|
||||
return attack;
|
||||
}
|
||||
|
||||
get sheetLists() {
|
||||
|
|
|
|||
|
|
@ -144,7 +144,8 @@ export default class DHArmor extends AttachableItem {
|
|||
* @returns {(string | { value: string, icons: string[] })[]} An array of localized strings and damage label objects.
|
||||
*/
|
||||
_getLabels() {
|
||||
const labels = [`${game.i18n.localize('DAGGERHEART.ITEMS.Armor.baseScore')}: ${this.baseScore}`];
|
||||
const labels = [];
|
||||
if(this.baseScore) labels.push(`${game.i18n.localize('DAGGERHEART.ITEMS.Armor.baseScore')}: ${this.baseScore}`)
|
||||
return labels;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -89,7 +89,7 @@ export default class DHDomainCard extends BaseDataItem {
|
|||
*/
|
||||
_getLabels() {
|
||||
const labels = [
|
||||
game.i18n.localize(`DAGGERHEART.CONFIG.DomainCardTypes.${this.type}`),
|
||||
,
|
||||
this.domainLabel,
|
||||
{
|
||||
value: `${this.recallCost}`, //converts the number to a string
|
||||
|
|
@ -97,6 +97,14 @@ export default class DHDomainCard extends BaseDataItem {
|
|||
}
|
||||
];
|
||||
|
||||
if (this.type) labels.push(game.i18n.localize(`DAGGERHEART.CONFIG.DomainCardTypes.${this.type}`));
|
||||
if (this.domainLabel) labels.push(this.domainLabel);
|
||||
if (this.recallCost) {
|
||||
labels.push({
|
||||
value: `${this.recallCost}`, //converts the number to a string
|
||||
icons: ['fa-bolt']
|
||||
});
|
||||
}
|
||||
return labels;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -209,26 +209,23 @@ export default class DHWeapon extends AttachableItem {
|
|||
* @returns {(string | { value: string, icons: string[] })[]} An array of localized strings and damage label objects.
|
||||
*/
|
||||
_getLabels() {
|
||||
const labels = [];
|
||||
const { roll, range, damage } = this.attack;
|
||||
|
||||
const labels = [
|
||||
game.i18n.localize(`DAGGERHEART.CONFIG.Traits.${roll.trait}.short`),
|
||||
game.i18n.localize(`DAGGERHEART.CONFIG.Range.${range}.short`)
|
||||
];
|
||||
if (roll.trait) labels.push(game.i18n.localize(`DAGGERHEART.CONFIG.Traits.${roll.trait}.short`))
|
||||
if (range) labels.push(game.i18n.localize(`DAGGERHEART.CONFIG.Range.${range}.short`));
|
||||
|
||||
for (const { value, type } of damage.parts) {
|
||||
const str = [value.dice];
|
||||
if (value.bonus) str.push(value.bonus.signedString());
|
||||
const str = Roll.replaceFormulaData(value.getFormula(), this.actor?.getRollData() ?? {});
|
||||
|
||||
const icons = Array.from(type)
|
||||
.map(t => CONFIG.DH.GENERAL.damageTypes[t]?.icon)
|
||||
.filter(Boolean);
|
||||
|
||||
const labelValue = str.join('');
|
||||
if (icons.length === 0) {
|
||||
labels.push(labelValue);
|
||||
labels.push(str);
|
||||
} else {
|
||||
labels.push({ value: labelValue, icons });
|
||||
labels.push({ value: str, icons });
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -122,7 +122,7 @@
|
|||
},
|
||||
"_id": "TCKVaVweyJzhEArX",
|
||||
"systemPath": "actions",
|
||||
"type": "",
|
||||
"type": "attack",
|
||||
"description": "",
|
||||
"img": "icons/creatures/claws/claw-curved-jagged-yellow.webp",
|
||||
"chatDisplay": true,
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -102,7 +102,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/weapons/daggers/dagger-bone-black.webp"
|
||||
"img": "icons/weapons/daggers/dagger-bone-black.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -114,7 +114,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/magic/unholy/beam-ringed-impact-purple.webp"
|
||||
"img": "icons/magic/unholy/beam-ringed-impact-purple.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -108,7 +108,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/weapons/bows/longbow-recurve-leather-brown.webp"
|
||||
"img": "icons/weapons/bows/longbow-recurve-leather-brown.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
"roll": {
|
||||
"bonus": 0,
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"range": ""
|
||||
"range": "",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -111,7 +111,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/creatures/claws/claw-straight-brown.webp"
|
||||
"img": "icons/creatures/claws/claw-straight-brown.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -107,7 +107,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -112,7 +112,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/skills/melee/unarmed-punch-fist-yellow-red.webp"
|
||||
"img": "icons/skills/melee/unarmed-punch-fist-yellow-red.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -108,7 +108,8 @@
|
|||
]
|
||||
},
|
||||
"name": "Club",
|
||||
"img": "icons/weapons/clubs/club-banded-barbed-black.webp"
|
||||
"img": "icons/weapons/clubs/club-banded-barbed-black.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/magic/light/beam-rays-magenta.webp"
|
||||
"img": "icons/magic/light/beam-rays-magenta.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -96,7 +96,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -102,7 +102,8 @@
|
|||
]
|
||||
},
|
||||
"name": "Fist Slam",
|
||||
"img": "icons/skills/melee/unarmed-punch-fist-yellow-red.webp"
|
||||
"img": "icons/skills/melee/unarmed-punch-fist-yellow-red.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -113,7 +113,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/weapons/daggers/dagger-straight-cracked.webp"
|
||||
"img": "icons/weapons/daggers/dagger-straight-cracked.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -107,7 +107,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/weapons/daggers/dagger-twin-green.webp"
|
||||
"img": "icons/weapons/daggers/dagger-twin-green.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -114,7 +114,8 @@
|
|||
]
|
||||
},
|
||||
"range": "far",
|
||||
"img": "icons/weapons/staves/staff-ornate-purple.webp"
|
||||
"img": "icons/weapons/staves/staff-ornate-purple.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"range": ""
|
||||
"range": "",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -95,7 +95,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -108,7 +108,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/magic/nature/root-vines-grow-brown.webp"
|
||||
"img": "icons/magic/nature/root-vines-grow-brown.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -108,7 +108,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -108,7 +108,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/magic/symbols/rune-sigil-rough-white-teal.webp"
|
||||
"img": "icons/magic/symbols/rune-sigil-rough-white-teal.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
"bonus": 0,
|
||||
"type": "attack"
|
||||
},
|
||||
"range": ""
|
||||
"range": "",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -107,7 +107,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/creatures/claws/claw-hooked-curved.webp"
|
||||
"img": "icons/creatures/claws/claw-hooked-curved.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -107,7 +107,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/creatures/claws/claw-straight-brown.webp"
|
||||
"img": "icons/creatures/claws/claw-straight-brown.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
"bonus": 0,
|
||||
"type": "attack"
|
||||
},
|
||||
"range": ""
|
||||
"range": "",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -96,7 +96,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -87,7 +87,7 @@
|
|||
"img": "icons/weapons/polearms/spear-flared-steel.webp",
|
||||
"_id": "jmrgFi8AUL6LTbtU",
|
||||
"systemPath": "actions",
|
||||
"type": "",
|
||||
"type": "attack",
|
||||
"description": "",
|
||||
"chatDisplay": true,
|
||||
"actionType": "action",
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
]
|
||||
},
|
||||
"img": "icons/creatures/claws/claw-hooked-barbed.webp",
|
||||
"range": ""
|
||||
"range": "",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -96,7 +96,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/weapons/staves/staff-animal-skull-bull.webp"
|
||||
"img": "icons/weapons/staves/staff-animal-skull-bull.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -87,7 +87,7 @@
|
|||
"img": "icons/creatures/claws/claw-talons-glowing-orange.webp",
|
||||
"_id": "W2KpXQNCg6Nnorbz",
|
||||
"systemPath": "actions",
|
||||
"type": "",
|
||||
"type": "attack",
|
||||
"description": "",
|
||||
"chatDisplay": true,
|
||||
"actionType": "action",
|
||||
|
|
|
|||
|
|
@ -108,7 +108,8 @@
|
|||
"bonus": -2,
|
||||
"type": "attack"
|
||||
},
|
||||
"range": ""
|
||||
"range": "",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -100,7 +100,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -96,7 +96,8 @@
|
|||
"roll": {
|
||||
"bonus": 1,
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -107,7 +107,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/weapons/bows/shortbow-recurve-yellow.webp"
|
||||
"img": "icons/weapons/bows/shortbow-recurve-yellow.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -107,7 +107,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/creatures/slimes/slime-movement-dripping-pseudopods-green.webp"
|
||||
"img": "icons/creatures/slimes/slime-movement-dripping-pseudopods-green.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -95,7 +95,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/skills/melee/sword-shield-stylized-white.webp"
|
||||
"img": "icons/skills/melee/sword-shield-stylized-white.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -108,7 +108,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/weapons/polearms/spear-hooked-rounded.webp"
|
||||
"img": "icons/weapons/polearms/spear-hooked-rounded.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -111,7 +111,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -108,7 +108,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/skills/melee/strike-blade-hooked-orange-blue.webp"
|
||||
"img": "icons/skills/melee/strike-blade-hooked-orange-blue.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -108,7 +108,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -107,7 +107,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/weapons/daggers/dagger-twin-green.webp"
|
||||
"img": "icons/weapons/daggers/dagger-twin-green.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -108,7 +108,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -111,7 +111,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -92,7 +92,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
},
|
||||
"resources": {
|
||||
"hitPoints": {
|
||||
|
|
|
|||
|
|
@ -108,7 +108,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -107,7 +107,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -108,7 +108,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -119,7 +119,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"range": ""
|
||||
"range": "",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/creatures/tentacles/tentacles-octopus-black-pink.webp"
|
||||
"img": "icons/creatures/tentacles/tentacles-octopus-black-pink.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"range": ""
|
||||
"range": "",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -114,7 +114,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -107,7 +107,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/weapons/clubs/club-baton-blue.webp"
|
||||
"img": "icons/weapons/clubs/club-baton-blue.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -113,7 +113,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"range": "close"
|
||||
"range": "close",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -102,7 +102,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -95,7 +95,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/weapons/axes/axe-double.webp"
|
||||
"img": "icons/weapons/axes/axe-double.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -113,7 +113,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -64,7 +64,45 @@
|
|||
}
|
||||
},
|
||||
"tier": 3,
|
||||
"description": "<p>A sturdy animate old-growth tree.</p>"
|
||||
"description": "<p>A sturdy animate old-growth tree.</p>",
|
||||
"attack": {
|
||||
"name": "Attack",
|
||||
"roll": {
|
||||
"type": "attack",
|
||||
"bonus": 2
|
||||
},
|
||||
"range": "close",
|
||||
"damage": {
|
||||
"parts": [
|
||||
{
|
||||
"value": {
|
||||
"multiplier": "flat",
|
||||
"flatMultiplier": 3,
|
||||
"dice": "d8",
|
||||
"bonus": 2,
|
||||
"custom": {
|
||||
"enabled": false
|
||||
}
|
||||
},
|
||||
"type": ["physical"],
|
||||
"applyTo": "hitPoints",
|
||||
"resultBased": false,
|
||||
"valueAlt": {
|
||||
"multiplier": "prof",
|
||||
"flatMultiplier": 1,
|
||||
"dice": "d6",
|
||||
"bonus": null,
|
||||
"custom": {
|
||||
"enabled": false
|
||||
}
|
||||
},
|
||||
"base": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/skills/melee/blood-slash-foam-red.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
"_stats": {
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/magic/symbols/rune-sigil-rough-white-teal.webp"
|
||||
"img": "icons/magic/symbols/rune-sigil-rough-white-teal.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/creatures/tentacles/tentacle-earth-green.webp"
|
||||
"img": "icons/creatures/tentacles/tentacle-earth-green.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -95,7 +95,8 @@
|
|||
"bonus": 3,
|
||||
"type": "attack"
|
||||
},
|
||||
"img": "icons/creatures/claws/claw-talons-yellow-red.webp"
|
||||
"img": "icons/creatures/claws/claw-talons-yellow-red.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -112,7 +112,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/commodities/biological/hand-clawed-blue.webp"
|
||||
"img": "icons/commodities/biological/hand-clawed-blue.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -107,7 +107,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -111,7 +111,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -107,7 +107,8 @@
|
|||
"roll": {
|
||||
"bonus": 1,
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -107,7 +107,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/creatures/slimes/slime-movement-dripping-pseudopods-green.webp"
|
||||
"img": "icons/creatures/slimes/slime-movement-dripping-pseudopods-green.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -87,7 +87,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/creatures/abilities/mouth-teeth-sharp.webp"
|
||||
"img": "icons/creatures/abilities/mouth-teeth-sharp.webp",
|
||||
"type": "attack"
|
||||
},
|
||||
"resources": {
|
||||
"hitPoints": {
|
||||
|
|
|
|||
|
|
@ -114,7 +114,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -114,7 +114,8 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
"img": "icons/weapons/staves/staff-ornate-purple.webp"
|
||||
"img": "icons/weapons/staves/staff-ornate-purple.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -95,7 +95,8 @@
|
|||
"bonus": 3,
|
||||
"type": "attack"
|
||||
},
|
||||
"img": "icons/weapons/swords/sword-guard.webp"
|
||||
"img": "icons/weapons/swords/sword-guard.webp",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -102,7 +102,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -103,7 +103,8 @@
|
|||
"base": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@
|
|||
]
|
||||
},
|
||||
"img": "icons/creatures/abilities/mouth-teeth-sharp.webp",
|
||||
"range": ""
|
||||
"range": "",
|
||||
"type": "attack"
|
||||
}
|
||||
},
|
||||
"flags": {},
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue