From 6fc469f934b6063e5eb042c8692220fe3632134e Mon Sep 17 00:00:00 2001 From: Jacob Date: Tue, 18 Jul 2017 21:58:00 +0100 Subject: [PATCH] Added setting to swap stats and modifiers Although Schemas.Character was changed, a database migration should not be required due to the way characterSettings handles it (since undefined is a falsy value). --- rpg-docs/Model/Character/Characters.js | 1 + .../character/characterSettings/characterSettings.html | 3 +++ .../character/characterSettings/characterSettings.js | 9 +++++++++ .../views/character/stats/abilityCards/abilityCards.html | 9 +++++++++ .../views/character/stats/abilityCards/abilityCards.js | 7 ++++++- 5 files changed, 28 insertions(+), 1 deletion(-) diff --git a/rpg-docs/Model/Character/Characters.js b/rpg-docs/Model/Character/Characters.js index e75430b2..789b4c9e 100644 --- a/rpg-docs/Model/Character/Characters.js +++ b/rpg-docs/Model/Character/Characters.js @@ -185,6 +185,7 @@ Schemas.Character = new SimpleSchema({ defaultValue: "whitelist", allowedValues: ["whitelist", "public"], }, + "settings.swapStatAndModifier": {type: Boolean, defaultValue: false}, "settings.exportFeatures": {type: Boolean, defaultValue: true}, "settings.exportAttacks": {type: Boolean, defaultValue: true}, "settings.exportDescription": {type: Boolean, defaultValue: true}, diff --git a/rpg-docs/client/views/character/characterSettings/characterSettings.html b/rpg-docs/client/views/character/characterSettings/characterSettings.html index ae71b815..27a06e8b 100644 --- a/rpg-docs/client/views/character/characterSettings/characterSettings.html +++ b/rpg-docs/client/views/character/characterSettings/characterSettings.html @@ -14,6 +14,9 @@ Use variant encumbrance + + Swap stats and modifiers on Stats page +
diff --git a/rpg-docs/client/views/character/characterSettings/characterSettings.js b/rpg-docs/client/views/character/characterSettings/characterSettings.js index 09fe2291..773fe2bb 100644 --- a/rpg-docs/client/views/character/characterSettings/characterSettings.js +++ b/rpg-docs/client/views/character/characterSettings/characterSettings.js @@ -23,6 +23,15 @@ Template.characterSettings.events({ ); } }, + "change #swapStatAndModifier": function(event, instance){ + var value = instance.find("#swapStatAndModifier").checked; + if (this.settings.swapStatAndModifier !== value){ + Characters.update( + this._id, + {$set: {"settings.swapStatAndModifier": value}} + ); + } + }, "click .doneButton": function(event, instance){ popDialogStack(); }, diff --git a/rpg-docs/client/views/character/stats/abilityCards/abilityCards.html b/rpg-docs/client/views/character/stats/abilityCards/abilityCards.html index fb21d972..797c2ffb 100644 --- a/rpg-docs/client/views/character/stats/abilityCards/abilityCards.html +++ b/rpg-docs/client/views/character/stats/abilityCards/abilityCards.html @@ -2,12 +2,21 @@
+ {{#if swap}} +
+ {{abilityMod}} +
+
+ {{characterCalculate "attributeValue" ../_id ability}} +
+ {{else}}
{{characterCalculate "attributeValue" ../_id ability}}
{{abilityMod}}
+ {{/if}}
{{title}} diff --git a/rpg-docs/client/views/character/stats/abilityCards/abilityCards.js b/rpg-docs/client/views/character/stats/abilityCards/abilityCards.js index 4b184574..533d6708 100644 --- a/rpg-docs/client/views/character/stats/abilityCards/abilityCards.js +++ b/rpg-docs/client/views/character/stats/abilityCards/abilityCards.js @@ -5,5 +5,10 @@ Template.abilityMiniCard.helpers({ Template.parentData()._id, this.ability ) ); - } + }, + swap: function() { + var character = Characters.findOne({"_id": Template.parentData()._id}) + if (character) {return character.settings.swapStatAndModifier;} + else {return false;} + }, });