diff --git a/rpg-docs/client/views/character/characterSheet.js b/rpg-docs/client/views/character/characterSheet.js
index bd14795a..0b3e1e75 100644
--- a/rpg-docs/client/views/character/characterSheet.js
+++ b/rpg-docs/client/views/character/characterSheet.js
@@ -31,16 +31,6 @@ Template.characterSheet.onRendered(function() {
);
});
- // New user experience starts on the features tab
- var settings = Characters.findOne(this.data._id, {
- fields: {settings: 1}
- }).settings;
- if (settings && settings.newUserExperience){
- Session.set(this.data._id + ".selectedTab", "1");
- Session.set("showNewUserExperience", true);
- Session.set("newUserExperienceStep", 0);
- }
-
//watch this character and make sure their encumbrance is updated
//trackEncumbranceConditions(this.data._id, this);
});
@@ -187,10 +177,8 @@ Template.characterSheet.helpers({
return char && char.settings.newUserExperience;
},
shouldBounce: function(tab){
- console.log(this._id);
const selected = Session.get(this._id + ".selectedTab")
const step = Session.get("newUserExperienceStep");
- console.log({selected, step, tab});
if (selected == tab) return false;
return (tab === 1 && step === 0) ||
(tab === 5 && step === 1) ||
diff --git a/rpg-docs/client/views/character/features/featureDialog/featureDialog.js b/rpg-docs/client/views/character/features/featureDialog/featureDialog.js
index c1d4242f..ed94038b 100644
--- a/rpg-docs/client/views/character/features/featureDialog/featureDialog.js
+++ b/rpg-docs/client/views/character/features/featureDialog/featureDialog.js
@@ -48,7 +48,8 @@ Template.featureDetails.events({
Template.featureEdit.helpers({
showNewUserExperience: function(){
- return Session.get("newUserExperienceStep") === 0;
+ return Session.get("newUserExperienceStep") === 0 ||
+ Session.get("newUserExperienceStep") === 1;
},
usesSet: function(){
return _.isString(this.uses);
diff --git a/rpg-docs/client/views/character/journal/raceDialog/raceDialog.html b/rpg-docs/client/views/character/journal/raceDialog/raceDialog.html
index ab4c73c5..190e539c 100644
--- a/rpg-docs/client/views/character/journal/raceDialog/raceDialog.html
+++ b/rpg-docs/client/views/character/journal/raceDialog/raceDialog.html
@@ -1,11 +1,34 @@
{{#baseDialog title="Race" class=color hideColor="true" hideDelete="true" startEditing=startEditing}}
+ {{#if showNewUserExperience}}
+ {{#infoBox}}
+ {{#if stepComplete}}
+ You can add all the effects you need to represent how your race affects your character's attributes.
+ {{else}}
+ Click the edit button to edit your race and add a racial effect
+ {{/if}}
+ {{/infoBox}}
+ {{/if}}
{{race}}
{{> effectsViewList charId=charId parentId=charId parentGroup="racial"}}
{{> proficiencyViewList charId=charId parentId=charId parentGroup="racial"}}
{{else}}
+ {{#if showNewUserExperience}}
+ {{#infoBox}}
+ {{#if stepComplete}}
+ You can add all the effects you need to represent how your race affects your character's attributes.
+ {{else}}
+
+ Add an effect with the following options:
+ Attribute: stats > speed
+ Operation: Base Value
+ Value: 30 (might be different for some races)
+
+ {{/if}}
+ {{/infoBox}}
+ {{/if}}
{{> effectsEditList parentId=charId parentCollection="Characters" charId=charId parentGroup="racial"}}
{{> proficiencyEditList parentId=charId parentCollection="Characters" charId=charId parentGroup="racial"}}
diff --git a/rpg-docs/client/views/character/journal/raceDialog/raceDialog.js b/rpg-docs/client/views/character/journal/raceDialog/raceDialog.js
index 25032676..63553e8a 100644
--- a/rpg-docs/client/views/character/journal/raceDialog/raceDialog.js
+++ b/rpg-docs/client/views/character/journal/raceDialog/raceDialog.js
@@ -19,4 +19,10 @@ Template.raceDialog.helpers({
var char = Characters.findOne(this.charId, {fields: {color: 1}});
if (char) return getColorClass(char.color);
},
+ stepComplete: function(){
+ return Session.get("newUserExperienceStep") > 1;
+ },
+ showNewUserExperience: function(){
+ return Session.get("newUserExperienceStep") >= 1;
+ },
});
diff --git a/rpg-docs/client/views/character/newUserStepper/newUserStepper.css b/rpg-docs/client/views/character/newUserStepper/newUserStepper.css
index e06786f2..6ede8537 100644
--- a/rpg-docs/client/views/character/newUserStepper/newUserStepper.css
+++ b/rpg-docs/client/views/character/newUserStepper/newUserStepper.css
@@ -1,5 +1,5 @@
.newUserStepper {
- height: 300px !important;
+ height: 210px !important;
}
.newUserStepper paper-step .invalid-step-message {
diff --git a/rpg-docs/client/views/character/newUserStepper/newUserStepper.html b/rpg-docs/client/views/character/newUserStepper/newUserStepper.html
index 4560145b..e4cce0e4 100644
--- a/rpg-docs/client/views/character/newUserStepper/newUserStepper.html
+++ b/rpg-docs/client/views/character/newUserStepper/newUserStepper.html
@@ -16,7 +16,10 @@
- If you get stuck, be sure to check out the guide, or ask for help using the feedback form.
+ Done! If you get stuck, be sure to check out the guide, or ask for help using the feedback form
+
diff --git a/rpg-docs/client/views/character/newUserStepper/newUserStepper.js b/rpg-docs/client/views/character/newUserStepper/newUserStepper.js
index 05e9b49d..731ae2aa 100644
--- a/rpg-docs/client/views/character/newUserStepper/newUserStepper.js
+++ b/rpg-docs/client/views/character/newUserStepper/newUserStepper.js
@@ -1,30 +1,36 @@
Template.newUserStepper.onRendered(function(){
+ Session.set("newUserExperienceStep", 0);
let stepper = this.find("paper-stepper");
- this.autorun((c) => {
- var step = Session.get("newUserExperienceStep");
- var hasFeatures = Features.find({charId: this.data._id}).count() > 1
- if (step === 0 && hasFeatures){
- stepper.continue();
- c.stop();
- }
- });
- this.autorun((c) => {
- var step = Session.get("newUserExperienceStep");
- var hasEffect = !!Effects.find({
- charId: this.data._id,
- stat: "speed",
- }).count();
- if (step === 1 && hasEffect){
- stepper.continue();
- c.stop();
- }
- });
- this.autorun((c) => {
- var step = Session.get("newUserExperienceStep");
- if (step === 2 && Session.get("viewedSpeed")){
- stepper.continue();
- c.stop();
- }
+ _.defer(() => {
+ this.autorun((c) => {
+ var step = Session.get("newUserExperienceStep");
+ var hasFeatures = Features.find({charId: this.data._id}).count() > 1;
+ console.log({step, hasFeatures});
+ if (step === 0 && hasFeatures){
+ stepper.continue();
+ c.stop();
+ }
+ });
+ this.autorun((c) => {
+ var step = Session.get("newUserExperienceStep");
+ var hasEffect = !!Effects.find({
+ charId: this.data._id,
+ stat: "speed",
+ "parent.group": "racial",
+ }).count();
+ if (step === 1 && hasEffect){
+ stepper.continue();
+ c.stop();
+ }
+ });
+ this.autorun((c) => {
+ var step = Session.get("newUserExperienceStep");
+ if (step === 2 && Session.get("viewedSpeed")){
+ Session.set("viewedSpeed", undefined);
+ stepper.continue();
+ c.stop();
+ }
+ });
});
});
@@ -38,4 +44,17 @@ Template.newUserStepper.events({
Session.set("showNewUserExperience", undefined);
Characters.update(this._id, {$unset: {"settings.newUserExperience": 1}});
},
+ "click .done-button": function(event, instance){
+ const stepper = instance.find("paper-stepper");
+ stepper.continue();
+ },
+});
+
+Template.stats.events({
+ "click .stat-card": function(event, instance){
+ var step = Session.get("newUserExperienceStep");
+ if (this.stat === "speed" && step === 2){
+ Session.set("viewedSpeed", true);
+ }
+ }
});
diff --git a/rpg-docs/client/views/character/stats/attributeDialog/attributeDialog.html b/rpg-docs/client/views/character/stats/attributeDialog/attributeDialog.html
index ec9f313f..7d33a489 100644
--- a/rpg-docs/client/views/character/stats/attributeDialog/attributeDialog.html
+++ b/rpg-docs/client/views/character/stats/attributeDialog/attributeDialog.html
@@ -6,6 +6,16 @@
+ {{#if showNewUserExperience}}
+ {{#infoBox}}
+
+ This dialog shows how your speed is set by the effect you added to your character's race.
+
+
+ In DiceCloud you don't change stats directly, rather you add effects which impact your stats in different ways. This way, you can always tell where your stats came from, and how they got to their current value.
+
+ {{/infoBox}}
+ {{/if}}