From e357b291455af2dd99f2987ecb264ada5ab54ff4 Mon Sep 17 00:00:00 2001 From: Stefan Zermatten Date: Wed, 30 Jan 2019 16:38:47 +0200 Subject: [PATCH] Added labels to healthBars and improved attribute dialog opening --- .../api/creature/creatureComputation.js | 1 + app/imports/ui/character/StatsTab.vue | 26 +++- app/imports/ui/components/AttributeDialog.vue | 24 ++- app/imports/ui/components/HealthBar.Story.vue | 23 ++- app/imports/ui/components/HealthBar.vue | 140 +++++++++++------- app/imports/ui/components/HealthBarCard.vue | 20 +-- .../ui/components/HealthBarCardContainer.vue | 8 + app/imports/ui/components/HitDiceListTile.vue | 2 +- 8 files changed, 165 insertions(+), 79 deletions(-) diff --git a/app/imports/api/creature/creatureComputation.js b/app/imports/api/creature/creatureComputation.js index b93b4eed..5d24400f 100644 --- a/app/imports/api/creature/creatureComputation.js +++ b/app/imports/api/creature/creatureComputation.js @@ -92,6 +92,7 @@ function writeCreature(char) { writeAttributes(char); writeSkills(char); writeDamageMultipliers(char); + // TODO write effect results to effect.result Creatures.update(char.id, {$set: {level: char.level}}); }; diff --git a/app/imports/ui/character/StatsTab.vue b/app/imports/ui/character/StatsTab.vue index dbbad957..0f014a6d 100644 --- a/app/imports/ui/character/StatsTab.vue +++ b/app/imports/ui/character/StatsTab.vue @@ -16,24 +16,26 @@ v-bind="ability" :key="ability._id" :id="`${_uid}-${ability._id}`" - @click="clickAbility({elementId: `${_uid}-${ability._id}`, abilityId: ability._id})" + @click="clickAttribute({elementId: `${_uid}-${ability._id}`, _id: ability._id})" /> -
+
@@ -45,6 +47,9 @@ @@ -59,6 +64,8 @@ v-for="save in savingThrows" v-bind="save" :key="save._id" + :id="`${_uid}-${save._id}`" + @click="clickSkill({elementId: `${_uid}-${save._id}`, _id: save._id})" /> @@ -72,6 +79,8 @@ v-for="skill in skills" v-bind="skill" :key="skill._id" + :id="`${_uid}-${skill._id}`" + @click="clickSkill({elementId: `${_uid}-${skill._id}`, _id: skill._id})" /> @@ -134,6 +143,7 @@ }); let conMod = con && con.mod; return { + _id: hd._id, dice, conMod, key: hd._id, @@ -160,11 +170,11 @@ }, }, methods: { - clickAbility({elementId, abilityId}){ + clickAttribute({elementId, _id}){ this.$store.commit("pushDialogStack", { component: "attribute-dialog-container", elementId, - data: {_id: abilityId}, + data: {_id}, }); }, }, diff --git a/app/imports/ui/components/AttributeDialog.vue b/app/imports/ui/components/AttributeDialog.vue index cfa1ca3f..2f8c01ce 100644 --- a/app/imports/ui/components/AttributeDialog.vue +++ b/app/imports/ui/components/AttributeDialog.vue @@ -3,14 +3,23 @@
{{name}}
- -
+ +
{{numberToSignedString(mod)}}
-
+
{{value}}
+
+ {{value+adjustment}} / {{value}} +
+
+ {{numberToSignedString(value)}} +
+
+ {{value}} +
Effects
@@ -27,8 +36,10 @@ export default { props: { name: String, + type: String, value: Number, mod: Number, + adjustment: Number, effects: Array, }, methods: { @@ -45,13 +56,16 @@ diff --git a/app/imports/ui/components/HealthBar.Story.vue b/app/imports/ui/components/HealthBar.Story.vue index 693deb5f..00a15d12 100644 --- a/app/imports/ui/components/HealthBar.Story.vue +++ b/app/imports/ui/components/HealthBar.Story.vue @@ -1,9 +1,28 @@