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:
joaquinpereyra98 2025-08-11 04:56:10 -03:00 committed by GitHub
parent ae23696e40
commit 6f0f21c355
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
130 changed files with 496 additions and 311 deletions

View file

@ -42,4 +42,32 @@ export default class DHAttackAction extends DHDamageAction {
return result; 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;
}
} }

View file

@ -103,7 +103,7 @@ export default class DhCharacter extends BaseDataActor {
}), }),
attack: new ActionField({ attack: new ActionField({
initial: { initial: {
name: 'Attack', name: 'Unarmed Attack',
img: 'icons/skills/melee/unarmed-punch-fist-yellow-red.webp', img: 'icons/skills/melee/unarmed-punch-fist-yellow-red.webp',
_id: foundry.utils.randomID(), _id: foundry.utils.randomID(),
systemPath: 'attack', systemPath: 'attack',
@ -394,19 +394,22 @@ export default class DhCharacter extends BaseDataActor {
return this.parent.effects.find(x => x.type === 'beastform'); 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() { get usedUnarmed() {
const primaryWeaponEquipped = this.primaryWeapon?.system?.equipped; if (this.primaryWeapon?.system?.equipped || this.secondaryWeapon?.system?.equipped) return null;
const secondaryWeaponEquipped = this.secondaryWeapon?.system?.equipped;
return !primaryWeaponEquipped && !secondaryWeaponEquipped const attack = foundry.utils.deepClone(this.attack);
? { if (this.activeBeastform) {
...this.attack, attack.name = 'DAGGERHEART.ITEMS.Beastform.attackName';
uuid: this.attack.uuid, attack.img = 'icons/creatures/claws/claw-straight-brown.webp';
id: this.attack.id, }
name: this.activeBeastform ? 'DAGGERHEART.ITEMS.Beastform.attackName' : this.attack.name, return attack;
img: this.activeBeastform ? 'icons/creatures/claws/claw-straight-brown.webp' : this.attack.img,
actor: this.parent
}
: null;
} }
get sheetLists() { get sheetLists() {

View file

@ -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. * @returns {(string | { value: string, icons: string[] })[]} An array of localized strings and damage label objects.
*/ */
_getLabels() { _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; return labels;
} }

View file

@ -89,7 +89,7 @@ export default class DHDomainCard extends BaseDataItem {
*/ */
_getLabels() { _getLabels() {
const labels = [ const labels = [
game.i18n.localize(`DAGGERHEART.CONFIG.DomainCardTypes.${this.type}`), ,
this.domainLabel, this.domainLabel,
{ {
value: `${this.recallCost}`, //converts the number to a string 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; return labels;
} }
} }

View file

@ -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. * @returns {(string | { value: string, icons: string[] })[]} An array of localized strings and damage label objects.
*/ */
_getLabels() { _getLabels() {
const labels = [];
const { roll, range, damage } = this.attack; const { roll, range, damage } = this.attack;
const labels = [ if (roll.trait) labels.push(game.i18n.localize(`DAGGERHEART.CONFIG.Traits.${roll.trait}.short`))
game.i18n.localize(`DAGGERHEART.CONFIG.Traits.${roll.trait}.short`), if (range) labels.push(game.i18n.localize(`DAGGERHEART.CONFIG.Range.${range}.short`));
game.i18n.localize(`DAGGERHEART.CONFIG.Range.${range}.short`)
];
for (const { value, type } of damage.parts) { for (const { value, type } of damage.parts) {
const str = [value.dice]; const str = Roll.replaceFormulaData(value.getFormula(), this.actor?.getRollData() ?? {});
if (value.bonus) str.push(value.bonus.signedString());
const icons = Array.from(type) const icons = Array.from(type)
.map(t => CONFIG.DH.GENERAL.damageTypes[t]?.icon) .map(t => CONFIG.DH.GENERAL.damageTypes[t]?.icon)
.filter(Boolean); .filter(Boolean);
const labelValue = str.join('');
if (icons.length === 0) { if (icons.length === 0) {
labels.push(labelValue); labels.push(str);
} else { } else {
labels.push({ value: labelValue, icons }); labels.push({ value: str, icons });
} }
} }

View file

@ -122,7 +122,7 @@
}, },
"_id": "TCKVaVweyJzhEArX", "_id": "TCKVaVweyJzhEArX",
"systemPath": "actions", "systemPath": "actions",
"type": "", "type": "attack",
"description": "", "description": "",
"img": "icons/creatures/claws/claw-curved-jagged-yellow.webp", "img": "icons/creatures/claws/claw-curved-jagged-yellow.webp",
"chatDisplay": true, "chatDisplay": true,
@ -708,4 +708,4 @@
"_id": "89yAh30vaNQOALlz", "_id": "89yAh30vaNQOALlz",
"sort": 500000, "sort": 500000,
"_key": "!actors!89yAh30vaNQOALlz" "_key": "!actors!89yAh30vaNQOALlz"
} }

View file

@ -103,7 +103,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -768,4 +769,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!G7jiltRjgvVhZewm" "_key": "!actors!G7jiltRjgvVhZewm"
} }

View file

@ -102,7 +102,8 @@
} }
] ]
}, },
"img": "icons/weapons/daggers/dagger-bone-black.webp" "img": "icons/weapons/daggers/dagger-bone-black.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -319,4 +320,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!vNIbYQ4YSzNf0WPE" "_key": "!actors!vNIbYQ4YSzNf0WPE"
} }

View file

@ -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": {}, "flags": {},
@ -817,4 +818,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!WPEOIGfclNJxWb87" "_key": "!actors!WPEOIGfclNJxWb87"
} }

View file

@ -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": {}, "flags": {},
@ -393,4 +394,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!JRhrrEg5UroURiAD" "_key": "!actors!JRhrrEg5UroURiAD"
} }

View file

@ -103,7 +103,8 @@
"roll": { "roll": {
"bonus": 0, "bonus": 0,
"type": "attack" "type": "attack"
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -514,4 +515,4 @@
} }
], ],
"_key": "!actors!0ts6CGd93lLqGZI5" "_key": "!actors!0ts6CGd93lLqGZI5"
} }

View file

@ -109,7 +109,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -528,4 +529,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!h5RuhzGL17dW5FBT" "_key": "!actors!h5RuhzGL17dW5FBT"
} }

View file

@ -109,7 +109,8 @@
} }
] ]
}, },
"range": "" "range": "",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -1284,4 +1285,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!dgH3fW9FTYLaIDvS" "_key": "!actors!dgH3fW9FTYLaIDvS"
} }

View file

@ -111,7 +111,8 @@
} }
] ]
}, },
"img": "icons/creatures/claws/claw-straight-brown.webp" "img": "icons/creatures/claws/claw-straight-brown.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -467,4 +468,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!71qKDLKO3CsrNkdy" "_key": "!actors!71qKDLKO3CsrNkdy"
} }

View file

@ -107,7 +107,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -441,4 +442,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!B4LZcGuBAHzyVdzy" "_key": "!actors!B4LZcGuBAHzyVdzy"
} }

View file

@ -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": {}, "flags": {},
@ -526,4 +527,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!2UeZ0tEe7AzgSJNd" "_key": "!actors!2UeZ0tEe7AzgSJNd"
} }

View file

@ -108,7 +108,8 @@
] ]
}, },
"name": "Club", "name": "Club",
"img": "icons/weapons/clubs/club-banded-barbed-black.webp" "img": "icons/weapons/clubs/club-banded-barbed-black.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -598,4 +599,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!8Zkqk1jU09nKL2fy" "_key": "!actors!8Zkqk1jU09nKL2fy"
} }

View file

@ -103,7 +103,8 @@
} }
] ]
}, },
"img": "icons/magic/light/beam-rays-magenta.webp" "img": "icons/magic/light/beam-rays-magenta.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -561,4 +562,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!jDmHqGvzg5wjgmxE" "_key": "!actors!jDmHqGvzg5wjgmxE"
} }

View file

@ -96,7 +96,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -313,4 +314,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!99TqczuQipBmaB8i" "_key": "!actors!99TqczuQipBmaB8i"
} }

View file

@ -102,7 +102,8 @@
] ]
}, },
"name": "Fist Slam", "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": {}, "flags": {},
@ -631,4 +632,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!uOP5oT9QzXPlnf3p" "_key": "!actors!uOP5oT9QzXPlnf3p"
} }

View file

@ -113,7 +113,8 @@
} }
] ]
}, },
"img": "icons/weapons/daggers/dagger-straight-cracked.webp" "img": "icons/weapons/daggers/dagger-straight-cracked.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -379,4 +380,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!ZxWaWPdzFIUPNC62" "_key": "!actors!ZxWaWPdzFIUPNC62"
} }

View file

@ -107,7 +107,8 @@
} }
] ]
}, },
"img": "icons/weapons/daggers/dagger-twin-green.webp" "img": "icons/weapons/daggers/dagger-twin-green.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -459,4 +460,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!CBBuEXAlLKFMJdjg" "_key": "!actors!CBBuEXAlLKFMJdjg"
} }

View file

@ -114,7 +114,8 @@
] ]
}, },
"range": "far", "range": "far",
"img": "icons/weapons/staves/staff-ornate-purple.webp" "img": "icons/weapons/staves/staff-ornate-purple.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -723,4 +724,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!0NxCSugvKQ4W8OYZ" "_key": "!actors!0NxCSugvKQ4W8OYZ"
} }

View file

@ -103,7 +103,8 @@
} }
] ]
}, },
"range": "" "range": "",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -453,4 +454,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!tyBOpLfigAhI9bU3" "_key": "!actors!tyBOpLfigAhI9bU3"
} }

View file

@ -95,7 +95,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -312,4 +313,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!zx99sOGTXicP4SSD" "_key": "!actors!zx99sOGTXicP4SSD"
} }

View file

@ -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": {}, "flags": {},
@ -473,4 +474,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!9x2xY9zwc3xzbXo5" "_key": "!actors!9x2xY9zwc3xzbXo5"
} }

View file

@ -108,7 +108,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -384,4 +385,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!pnyjIGxxvurcWmTv" "_key": "!actors!pnyjIGxxvurcWmTv"
} }

View file

@ -108,7 +108,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -502,4 +503,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!kE4dfhqmIQpNd44e" "_key": "!actors!kE4dfhqmIQpNd44e"
} }

View file

@ -109,7 +109,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -654,4 +655,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!2VN3BftageoTTIzu" "_key": "!actors!2VN3BftageoTTIzu"
} }

View file

@ -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": {}, "flags": {},
@ -439,4 +440,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!SxSOkM4bcVOFyjbo" "_key": "!actors!SxSOkM4bcVOFyjbo"
} }

View file

@ -109,7 +109,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -474,4 +475,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!5lphJAgzoqZI3VoG" "_key": "!actors!5lphJAgzoqZI3VoG"
} }

View file

@ -109,7 +109,8 @@
"bonus": 0, "bonus": 0,
"type": "attack" "type": "attack"
}, },
"range": "" "range": "",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -421,4 +422,4 @@
} }
], ],
"_key": "!actors!NoRZ1PqB8N5wcIw0" "_key": "!actors!NoRZ1PqB8N5wcIw0"
} }

View file

@ -107,7 +107,8 @@
} }
] ]
}, },
"img": "icons/creatures/claws/claw-hooked-curved.webp" "img": "icons/creatures/claws/claw-hooked-curved.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -512,4 +513,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!tBWHW00epmMnkawe" "_key": "!actors!tBWHW00epmMnkawe"
} }

View file

@ -107,7 +107,8 @@
} }
] ]
}, },
"img": "icons/creatures/claws/claw-straight-brown.webp" "img": "icons/creatures/claws/claw-straight-brown.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -499,4 +500,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!wNzeuQLfLUMvgHlQ" "_key": "!actors!wNzeuQLfLUMvgHlQ"
} }

View file

@ -109,7 +109,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -568,4 +569,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!wR7cFKrHvRzbzhBT" "_key": "!actors!wR7cFKrHvRzbzhBT"
} }

View file

@ -103,7 +103,8 @@
"bonus": 0, "bonus": 0,
"type": "attack" "type": "attack"
}, },
"range": "" "range": "",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -411,4 +412,4 @@
} }
], ],
"_key": "!actors!TLzY1nDw0Bu9Ud40" "_key": "!actors!TLzY1nDw0Bu9Ud40"
} }

View file

@ -96,7 +96,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -313,4 +314,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!P7h54ZePFPHpYwvB" "_key": "!actors!P7h54ZePFPHpYwvB"
} }

View file

@ -87,7 +87,7 @@
"img": "icons/weapons/polearms/spear-flared-steel.webp", "img": "icons/weapons/polearms/spear-flared-steel.webp",
"_id": "jmrgFi8AUL6LTbtU", "_id": "jmrgFi8AUL6LTbtU",
"systemPath": "actions", "systemPath": "actions",
"type": "", "type": "attack",
"description": "", "description": "",
"chatDisplay": true, "chatDisplay": true,
"actionType": "action", "actionType": "action",
@ -435,4 +435,4 @@
"_id": "bfhVWMBUh61b9J6n", "_id": "bfhVWMBUh61b9J6n",
"sort": 0, "sort": 0,
"_key": "!actors!bfhVWMBUh61b9J6n" "_key": "!actors!bfhVWMBUh61b9J6n"
} }

View file

@ -109,7 +109,8 @@
] ]
}, },
"img": "icons/creatures/claws/claw-hooked-barbed.webp", "img": "icons/creatures/claws/claw-hooked-barbed.webp",
"range": "" "range": "",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -411,4 +412,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!ChwwVqowFw8hJQwT" "_key": "!actors!ChwwVqowFw8hJQwT"
} }

View file

@ -96,7 +96,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -399,4 +400,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!OsLG2BjaEdTZUJU9" "_key": "!actors!OsLG2BjaEdTZUJU9"
} }

View file

@ -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": {}, "flags": {},
@ -646,4 +647,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!PELRry1vqjBzSAlr" "_key": "!actors!PELRry1vqjBzSAlr"
} }

View file

@ -109,7 +109,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -452,4 +453,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!8VZIgU12cB3cvlyH" "_key": "!actors!8VZIgU12cB3cvlyH"
} }

View file

@ -109,7 +109,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -484,4 +485,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!YnObCleGjPT7yqEc" "_key": "!actors!YnObCleGjPT7yqEc"
} }

View file

@ -87,7 +87,7 @@
"img": "icons/creatures/claws/claw-talons-glowing-orange.webp", "img": "icons/creatures/claws/claw-talons-glowing-orange.webp",
"_id": "W2KpXQNCg6Nnorbz", "_id": "W2KpXQNCg6Nnorbz",
"systemPath": "actions", "systemPath": "actions",
"type": "", "type": "attack",
"description": "", "description": "",
"chatDisplay": true, "chatDisplay": true,
"actionType": "action", "actionType": "action",
@ -745,4 +745,4 @@
"_id": "OMQ0v6PE8s1mSU0K", "_id": "OMQ0v6PE8s1mSU0K",
"sort": 900000, "sort": 900000,
"_key": "!actors!OMQ0v6PE8s1mSU0K" "_key": "!actors!OMQ0v6PE8s1mSU0K"
} }

View file

@ -108,7 +108,8 @@
"bonus": -2, "bonus": -2,
"type": "attack" "type": "attack"
}, },
"range": "" "range": "",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -453,4 +454,4 @@
} }
], ],
"_key": "!actors!IIWV4ysJPFPnTP7W" "_key": "!actors!IIWV4ysJPFPnTP7W"
} }

View file

@ -100,7 +100,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -343,4 +344,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!4PfLnaCrOcMdb4dK" "_key": "!actors!4PfLnaCrOcMdb4dK"
} }

View file

@ -96,7 +96,8 @@
"roll": { "roll": {
"bonus": 1, "bonus": 1,
"type": "attack" "type": "attack"
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -313,4 +314,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!5s8wSvpyC5rxY5aD" "_key": "!actors!5s8wSvpyC5rxY5aD"
} }

View file

@ -107,7 +107,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -535,4 +536,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!fmfntuJ8mHRCAktP" "_key": "!actors!fmfntuJ8mHRCAktP"
} }

View file

@ -103,7 +103,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -658,4 +659,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!8KWVLWXFhlY2kYx0" "_key": "!actors!8KWVLWXFhlY2kYx0"
} }

View file

@ -109,7 +109,8 @@
} }
] ]
}, },
"img": "icons/weapons/bows/shortbow-recurve-yellow.webp" "img": "icons/weapons/bows/shortbow-recurve-yellow.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -621,4 +622,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!8mJYMpbLTb8qIOrr" "_key": "!actors!8mJYMpbLTb8qIOrr"
} }

View file

@ -103,7 +103,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -632,4 +633,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!dsfB3YhoL5SudvS2" "_key": "!actors!dsfB3YhoL5SudvS2"
} }

View file

@ -103,7 +103,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -600,4 +601,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!xIICT6tEdnA7dKDV" "_key": "!actors!xIICT6tEdnA7dKDV"
} }

View file

@ -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": {}, "flags": {},
@ -601,4 +602,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!SHXedd9zZPVfUgUa" "_key": "!actors!SHXedd9zZPVfUgUa"
} }

View file

@ -103,7 +103,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -371,4 +372,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!kabueAo6BALApWqp" "_key": "!actors!kabueAo6BALApWqp"
} }

View file

@ -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": {}, "flags": {},
@ -376,4 +377,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!VENwg7xEFcYObjmT" "_key": "!actors!VENwg7xEFcYObjmT"
} }

View file

@ -108,7 +108,8 @@
} }
] ]
}, },
"img": "icons/weapons/polearms/spear-hooked-rounded.webp" "img": "icons/weapons/polearms/spear-hooked-rounded.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -378,4 +379,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!uRtghKE9mHlII4rs" "_key": "!actors!uRtghKE9mHlII4rs"
} }

View file

@ -111,7 +111,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -388,4 +389,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!mK3A5FTx6k8iPU3F" "_key": "!actors!mK3A5FTx6k8iPU3F"
} }

View file

@ -108,7 +108,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -665,4 +666,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!i2UNbRvgyoSs07M6" "_key": "!actors!i2UNbRvgyoSs07M6"
} }

View file

@ -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": {}, "flags": {},
@ -611,4 +612,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!r1mbfSSwKWdcFdAU" "_key": "!actors!r1mbfSSwKWdcFdAU"
} }

View file

@ -108,7 +108,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -572,4 +573,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!6hbqmxDXFOzZJDk4" "_key": "!actors!6hbqmxDXFOzZJDk4"
} }

View file

@ -103,7 +103,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -602,4 +603,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!MI126iMOOobQ1Obn" "_key": "!actors!MI126iMOOobQ1Obn"
} }

View file

@ -107,7 +107,8 @@
} }
] ]
}, },
"img": "icons/weapons/daggers/dagger-twin-green.webp" "img": "icons/weapons/daggers/dagger-twin-green.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -349,4 +350,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!5Lh1T0zaT8Pkr2U2" "_key": "!actors!5Lh1T0zaT8Pkr2U2"
} }

View file

@ -108,7 +108,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -443,4 +444,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!MbBPIOxaxXYNApXz" "_key": "!actors!MbBPIOxaxXYNApXz"
} }

View file

@ -111,7 +111,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -399,4 +400,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!CBKixLH3yhivZZuL" "_key": "!actors!CBKixLH3yhivZZuL"
} }

View file

@ -92,7 +92,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
}, },
"resources": { "resources": {
"hitPoints": { "hitPoints": {
@ -319,4 +320,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!C0OMQqV7pN6t7ouR" "_key": "!actors!C0OMQqV7pN6t7ouR"
} }

View file

@ -108,7 +108,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -502,4 +503,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!aTljstqteGoLpCBq" "_key": "!actors!aTljstqteGoLpCBq"
} }

View file

@ -107,7 +107,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -416,4 +417,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!XF4tYTq9nPJAy2ox" "_key": "!actors!XF4tYTq9nPJAy2ox"
} }

View file

@ -108,7 +108,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -336,4 +337,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!1zuyof1XuIfi3aMG" "_key": "!actors!1zuyof1XuIfi3aMG"
} }

View file

@ -103,7 +103,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -604,4 +605,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!MYXmTx2FHcIjdfYZ" "_key": "!actors!MYXmTx2FHcIjdfYZ"
} }

View file

@ -119,7 +119,8 @@
} }
] ]
}, },
"range": "" "range": "",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -603,4 +604,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!7ai2opemrclQe3VF" "_key": "!actors!7ai2opemrclQe3VF"
} }

View file

@ -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": {}, "flags": {},
@ -568,4 +569,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!4nqv3ZwJGjnmic8j" "_key": "!actors!4nqv3ZwJGjnmic8j"
} }

View file

@ -109,7 +109,8 @@
} }
] ]
}, },
"range": "" "range": "",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -467,4 +468,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!niBpVU7yeo5ccskE" "_key": "!actors!niBpVU7yeo5ccskE"
} }

View file

@ -114,7 +114,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -428,4 +429,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!dNta0cUzr96xcFhf" "_key": "!actors!dNta0cUzr96xcFhf"
} }

View file

@ -107,7 +107,8 @@
} }
] ]
}, },
"img": "icons/weapons/clubs/club-baton-blue.webp" "img": "icons/weapons/clubs/club-baton-blue.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -348,4 +349,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!Al3w2CgjfdT3p9ma" "_key": "!actors!Al3w2CgjfdT3p9ma"
} }

View file

@ -113,7 +113,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -403,4 +404,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!Vy02IhGhkJLuezu4" "_key": "!actors!Vy02IhGhkJLuezu4"
} }

View file

@ -103,7 +103,8 @@
} }
] ]
}, },
"range": "close" "range": "close",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -620,4 +621,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!sRn4bqerfARvhgSV" "_key": "!actors!sRn4bqerfARvhgSV"
} }

View file

@ -102,7 +102,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -558,4 +559,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!3tqCjDwJAQ7JKqMb" "_key": "!actors!3tqCjDwJAQ7JKqMb"
} }

View file

@ -103,7 +103,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -697,4 +698,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!DscWkNVoHak6P4hh" "_key": "!actors!DscWkNVoHak6P4hh"
} }

View file

@ -95,7 +95,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -314,4 +315,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!G62k4oSkhkoXEs2D" "_key": "!actors!G62k4oSkhkoXEs2D"
} }

View file

@ -103,7 +103,8 @@
} }
] ]
}, },
"img": "icons/weapons/axes/axe-double.webp" "img": "icons/weapons/axes/axe-double.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -561,4 +562,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!rM9qCIYeWg9I0B4l" "_key": "!actors!rM9qCIYeWg9I0B4l"
} }

View file

@ -113,7 +113,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -394,4 +395,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!yx0vK2yfNVZKWUUi" "_key": "!actors!yx0vK2yfNVZKWUUi"
} }

View file

@ -109,7 +109,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -646,4 +647,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!mVV7a7KQAORoPMgZ" "_key": "!actors!mVV7a7KQAORoPMgZ"
} }

View file

@ -64,7 +64,45 @@
} }
}, },
"tier": 3, "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": {}, "flags": {},
"_stats": { "_stats": {

View file

@ -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": {}, "flags": {},
@ -732,4 +733,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!befIqd5IYKg6eUz2" "_key": "!actors!befIqd5IYKg6eUz2"
} }

View file

@ -103,7 +103,8 @@
} }
] ]
}, },
"img": "icons/creatures/tentacles/tentacle-earth-green.webp" "img": "icons/creatures/tentacles/tentacle-earth-green.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -603,4 +604,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!A0SeeDzwjvqOsyof" "_key": "!actors!A0SeeDzwjvqOsyof"
} }

View file

@ -103,7 +103,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -415,4 +416,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!ms6nuOl3NFkhPj1k" "_key": "!actors!ms6nuOl3NFkhPj1k"
} }

View file

@ -95,7 +95,8 @@
"bonus": 3, "bonus": 3,
"type": "attack" "type": "attack"
}, },
"img": "icons/creatures/claws/claw-talons-yellow-red.webp" "img": "icons/creatures/claws/claw-talons-yellow-red.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -312,4 +313,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!moJhHgKqTKPS2WYS" "_key": "!actors!moJhHgKqTKPS2WYS"
} }

View file

@ -112,7 +112,8 @@
} }
] ]
}, },
"img": "icons/commodities/biological/hand-clawed-blue.webp" "img": "icons/commodities/biological/hand-clawed-blue.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -542,4 +543,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!EQTOAOUrkIvS2z88" "_key": "!actors!EQTOAOUrkIvS2z88"
} }

View file

@ -103,7 +103,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -565,4 +566,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!CP6iRfHdyFWniTHY" "_key": "!actors!CP6iRfHdyFWniTHY"
} }

View file

@ -107,7 +107,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -415,4 +416,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!wycLpvebWdUqRhpP" "_key": "!actors!wycLpvebWdUqRhpP"
} }

View file

@ -111,7 +111,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -531,4 +532,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!OROJbjsqagVh7ECV" "_key": "!actors!OROJbjsqagVh7ECV"
} }

View file

@ -107,7 +107,8 @@
"roll": { "roll": {
"bonus": 1, "bonus": 1,
"type": "attack" "type": "attack"
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -388,4 +389,4 @@
} }
], ],
"_key": "!actors!5YgEajn0wa4i85kC" "_key": "!actors!5YgEajn0wa4i85kC"
} }

View file

@ -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": {}, "flags": {},
@ -537,4 +538,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!9rVlbJVrDNn1x7PS" "_key": "!actors!9rVlbJVrDNn1x7PS"
} }

View file

@ -87,7 +87,8 @@
} }
] ]
}, },
"img": "icons/creatures/abilities/mouth-teeth-sharp.webp" "img": "icons/creatures/abilities/mouth-teeth-sharp.webp",
"type": "attack"
}, },
"resources": { "resources": {
"hitPoints": { "hitPoints": {
@ -314,4 +315,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!gP3fWTLzSFnpA8EJ" "_key": "!actors!gP3fWTLzSFnpA8EJ"
} }

View file

@ -114,7 +114,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -448,4 +449,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!EtLJiTsilPPZvLUX" "_key": "!actors!EtLJiTsilPPZvLUX"
} }

View file

@ -114,7 +114,8 @@
} }
] ]
}, },
"img": "icons/weapons/staves/staff-ornate-purple.webp" "img": "icons/weapons/staves/staff-ornate-purple.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -573,4 +574,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!sLAccjvCWfeedbpI" "_key": "!actors!sLAccjvCWfeedbpI"
} }

View file

@ -95,7 +95,8 @@
"bonus": 3, "bonus": 3,
"type": "attack" "type": "attack"
}, },
"img": "icons/weapons/swords/sword-guard.webp" "img": "icons/weapons/swords/sword-guard.webp",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -314,4 +315,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!bgreCaQ6ap2DVpCr" "_key": "!actors!bgreCaQ6ap2DVpCr"
} }

View file

@ -102,7 +102,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -343,4 +344,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!2nXz4ilAY4xuhKLm" "_key": "!actors!2nXz4ilAY4xuhKLm"
} }

View file

@ -103,7 +103,8 @@
"base": false "base": false
} }
] ]
} },
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -505,4 +506,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!YmVAkdNsyuXWTtYp" "_key": "!actors!YmVAkdNsyuXWTtYp"
} }

View file

@ -109,7 +109,8 @@
] ]
}, },
"img": "icons/creatures/abilities/mouth-teeth-sharp.webp", "img": "icons/creatures/abilities/mouth-teeth-sharp.webp",
"range": "" "range": "",
"type": "attack"
} }
}, },
"flags": {}, "flags": {},
@ -476,4 +477,4 @@
], ],
"effects": [], "effects": [],
"_key": "!actors!BK4jwyXSRx7IOQiO" "_key": "!actors!BK4jwyXSRx7IOQiO"
} }

Some files were not shown because too many files have changed in this diff Show more