diff --git a/daggerheart.mjs b/daggerheart.mjs index b5da2c3e..2fa66320 100644 --- a/daggerheart.mjs +++ b/daggerheart.mjs @@ -250,7 +250,7 @@ Hooks.on('setup', () => { ); const actorCommon = { bar: ['resources.stress'], - value: [...resistance, 'advantageSources', 'disadvantageSources'] + value: [...resistance] }; CONFIG.Actor.trackableAttributes = { character: { @@ -268,7 +268,7 @@ Hooks.on('setup', () => { }, adversary: { bar: [...actorCommon.bar, 'resources.hitPoints'], - value: [...actorCommon.value, ...damageThresholds, 'criticalThreshold', 'difficulty'] + value: [...actorCommon.value, ...damageThresholds, 'criticalThreshold'] }, companion: { bar: [...actorCommon.bar], diff --git a/module/data/actor/adversary.mjs b/module/data/actor/adversary.mjs index 78964720..d3844bcb 100644 --- a/module/data/actor/adversary.mjs +++ b/module/data/actor/adversary.mjs @@ -1,12 +1,11 @@ import DHAdversarySettings from '../../applications/sheets-configs/adversary-settings.mjs'; import { ActionField } from '../fields/actionField.mjs'; -import { commonActorRules } from './base.mjs'; -import DhCreature from './creature.mjs'; +import BaseDataActor, { commonActorRules } from './base.mjs'; import { resourceField, bonusField } from '../fields/actorField.mjs'; import { calculateExpectedValue, parseTermsFromSimpleFormula } from '../../helpers/utils.mjs'; import { adversaryExpectedDamage, adversaryScalingData } from '../../config/actorConfig.mjs'; -export default class DhpAdversary extends DhCreature { +export default class DhpAdversary extends BaseDataActor { static LOCALIZATION_PREFIXES = ['DAGGERHEART.ACTORS.Adversary']; static get metadata() { diff --git a/module/data/actor/character.mjs b/module/data/actor/character.mjs index aca87c5c..c79bb078 100644 --- a/module/data/actor/character.mjs +++ b/module/data/actor/character.mjs @@ -1,13 +1,12 @@ import { burden } from '../../config/generalConfig.mjs'; import ForeignDocumentUUIDField from '../fields/foreignDocumentUUIDField.mjs'; import DhLevelData from '../levelData.mjs'; -import { commonActorRules } from './base.mjs'; -import DhCreature from './creature.mjs'; +import BaseDataActor, { commonActorRules } from './base.mjs'; import { attributeField, resourceField, stressDamageReductionRule, bonusField } from '../fields/actorField.mjs'; import { ActionField } from '../fields/actionField.mjs'; import DHCharacterSettings from '../../applications/sheets-configs/character-settings.mjs'; -export default class DhCharacter extends DhCreature { +export default class DhCharacter extends BaseDataActor { /**@override */ static LOCALIZATION_PREFIXES = ['DAGGERHEART.ACTORS.Character']; @@ -132,6 +131,14 @@ export default class DhCharacter extends DhCreature { } } }), + advantageSources: new fields.ArrayField(new fields.StringField(), { + label: 'DAGGERHEART.ACTORS.Character.advantageSources.label', + hint: 'DAGGERHEART.ACTORS.Character.advantageSources.hint' + }), + disadvantageSources: new fields.ArrayField(new fields.StringField(), { + label: 'DAGGERHEART.ACTORS.Character.disadvantageSources.label', + hint: 'DAGGERHEART.ACTORS.Character.disadvantageSources.hint' + }), levelData: new fields.EmbeddedDataField(DhLevelData), bonuses: new fields.SchemaField({ roll: new fields.SchemaField({ diff --git a/module/data/actor/companion.mjs b/module/data/actor/companion.mjs index 6f51b593..40cece72 100644 --- a/module/data/actor/companion.mjs +++ b/module/data/actor/companion.mjs @@ -1,4 +1,4 @@ -import DhCreature from './creature.mjs'; +import BaseDataActor from './base.mjs'; import DhLevelData from '../levelData.mjs'; import ForeignDocumentUUIDField from '../fields/foreignDocumentUUIDField.mjs'; import { ActionField } from '../fields/actionField.mjs'; @@ -6,7 +6,7 @@ import { adjustDice, adjustRange } from '../../helpers/utils.mjs'; import DHCompanionSettings from '../../applications/sheets-configs/companion-settings.mjs'; import { resourceField, bonusField } from '../fields/actorField.mjs'; -export default class DhCompanion extends DhCreature { +export default class DhCompanion extends BaseDataActor { static LOCALIZATION_PREFIXES = ['DAGGERHEART.ACTORS.Companion']; /**@inheritdoc */ diff --git a/module/data/actor/creature.mjs b/module/data/actor/creature.mjs deleted file mode 100644 index 4b927aed..00000000 --- a/module/data/actor/creature.mjs +++ /dev/null @@ -1,20 +0,0 @@ -import BaseDataActor from './base.mjs'; - -export default class DhCreature extends BaseDataActor { - /**@inheritdoc */ - static defineSchema() { - const fields = foundry.data.fields; - - return { - ...super.defineSchema(), - advantageSources: new fields.ArrayField(new fields.StringField(), { - label: 'DAGGERHEART.ACTORS.Character.advantageSources.label', - hint: 'DAGGERHEART.ACTORS.Character.advantageSources.hint' - }), - disadvantageSources: new fields.ArrayField(new fields.StringField(), { - label: 'DAGGERHEART.ACTORS.Character.disadvantageSources.label', - hint: 'DAGGERHEART.ACTORS.Character.disadvantageSources.hint' - }) - }; - } -} diff --git a/module/dice/dualityRoll.mjs b/module/dice/dualityRoll.mjs index 83b5559f..a19c7441 100644 --- a/module/dice/dualityRoll.mjs +++ b/module/dice/dualityRoll.mjs @@ -409,9 +409,7 @@ export default class DualityRoll extends D20Roll { difficulty: message.system.roll.difficulty ? Number(message.system.roll.difficulty) : null } }); - - const extraIndex = newRoll.advantage ? 3 : 2; - newRoll.extra = newRoll.extra.slice(extraIndex); + newRoll.extra = newRoll.extra.slice(2); const tagTeamSettings = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.TagTeamRoll);