diff --git a/app/imports/api/properties/Attributes.js b/app/imports/api/properties/Attributes.js index 94e5d657..8835661a 100644 --- a/app/imports/api/properties/Attributes.js +++ b/app/imports/api/properties/Attributes.js @@ -173,6 +173,13 @@ let ComputedOnlyAttributeSchema = createPropertySchema({ optional: true, removeBeforeCompute: true, }, + // Attributes with advantage grant it to all skills based on the attribute + advantage: { + type: SimpleSchema.Integer, + optional: true, + allowedValues: [-1, 0, 1], + removeBeforeCompute: true, + }, // The computed creature constitution modifier for hit dice constitutionMod: { type: Number, diff --git a/app/imports/client/ui/components/RollPopup.vue b/app/imports/client/ui/components/RollPopup.vue index f9f20f66..d7cb25b8 100644 --- a/app/imports/client/ui/components/RollPopup.vue +++ b/app/imports/client/ui/components/RollPopup.vue @@ -19,7 +19,10 @@ - + Disadvantage diff --git a/app/imports/client/ui/properties/components/actions/ActionCard.vue b/app/imports/client/ui/properties/components/actions/ActionCard.vue index b2c67042..55553f48 100644 --- a/app/imports/client/ui/properties/components/actions/ActionCard.vue +++ b/app/imports/client/ui/properties/components/actions/ActionCard.vue @@ -211,7 +211,7 @@ export default { doAction.call({ actionId: this.model._id, scope: { - $attackAdvantage: advantage, + '~attackAdvantage': { value: advantage }, } }, error => { this.doActionLoading = false; diff --git a/app/imports/client/ui/properties/components/actions/EventButton.vue b/app/imports/client/ui/properties/components/actions/EventButton.vue index 27773e04..f7333739 100644 --- a/app/imports/client/ui/properties/components/actions/EventButton.vue +++ b/app/imports/client/ui/properties/components/actions/EventButton.vue @@ -53,7 +53,7 @@ export default { doAction.call({ actionId: this.model._id, scope: { - $attackAdvantage: advantage, + '~attackAdvantage': { value: advantage }, } }, error => { this.doActionLoading = false; diff --git a/app/imports/client/ui/properties/components/attributes/AbilityListTile.vue b/app/imports/client/ui/properties/components/attributes/AbilityListTile.vue index 2cc2eb95..3a1d6866 100644 --- a/app/imports/client/ui/properties/components/attributes/AbilityListTile.vue +++ b/app/imports/client/ui/properties/components/attributes/AbilityListTile.vue @@ -46,6 +46,18 @@ {{ model.name }} + + mdi-chevron-double-up + + + mdi-chevron-double-down + @@ -89,7 +101,7 @@ export default { doCheck.call({ propId: this.model._id, scope: { - $checkAdvantage: advantage, + '~checkAdvantage': { value: advantage }, }, }, error => { this.checkLoading = false; diff --git a/app/imports/client/ui/properties/components/attributes/AttributeCardContent.vue b/app/imports/client/ui/properties/components/attributes/AttributeCardContent.vue index c1976688..60c59d90 100644 --- a/app/imports/client/ui/properties/components/attributes/AttributeCardContent.vue +++ b/app/imports/client/ui/properties/components/attributes/AttributeCardContent.vue @@ -30,6 +30,18 @@ {{ model.name }} + + mdi-chevron-double-up + + + mdi-chevron-double-down + @@ -75,7 +87,7 @@ export default { doCheck.call({ propId: this.model._id, scope: { - $checkAdvantage: advantage, + '~checkAdvantage': { value: advantage }, }, }, error => { this.checkLoading = false; diff --git a/app/imports/client/ui/properties/components/attributes/SpellSlotCard.vue b/app/imports/client/ui/properties/components/attributes/SpellSlotCard.vue index 3abae994..66980849 100644 --- a/app/imports/client/ui/properties/components/attributes/SpellSlotCard.vue +++ b/app/imports/client/ui/properties/components/attributes/SpellSlotCard.vue @@ -65,7 +65,7 @@ export default { slotId, ritual, scope: { - $attackAdvantage: advantage, + '~attackAdvantage': { value: advantage }, }, }, error => { if (!error) return; diff --git a/app/imports/client/ui/properties/components/skills/SkillListTile.vue b/app/imports/client/ui/properties/components/skills/SkillListTile.vue index ec436241..d10c4a78 100644 --- a/app/imports/client/ui/properties/components/skills/SkillListTile.vue +++ b/app/imports/client/ui/properties/components/skills/SkillListTile.vue @@ -111,7 +111,7 @@ export default { doCheck.call({ propId: this.model._id, scope: { - $checkAdvantage: advantage, + '~checkAdvantage': { value: advantage }, }, }, error => { this.checkLoading = false; diff --git a/app/imports/client/ui/properties/viewers/ActionViewer.vue b/app/imports/client/ui/properties/viewers/ActionViewer.vue index b76c1b4c..fb989d21 100644 --- a/app/imports/client/ui/properties/viewers/ActionViewer.vue +++ b/app/imports/client/ui/properties/viewers/ActionViewer.vue @@ -197,7 +197,7 @@ export default { slotId, ritual, scope: { - $attackAdvantage: advantage, + '~attackAdvantage': { value: advantage }, }, }, error => { if (!error) return;