From 84b63ce4981906657ae6ce56593047fc1fc28cff Mon Sep 17 00:00:00 2001 From: Yord Date: Mon, 19 Oct 2015 17:50:06 +0200 Subject: [PATCH] Fixed a bug where texts were not updated after loading a different sheet. --- _posts/0000-01-01-Character-Generator.html | 445 ++++++++++++++++++--- ikrpg.appcache | 4 +- static/javascripts/generator.js | 24 +- static/javascripts/heroic.js | 6 +- static/javascripts/sheet.js | 6 +- 5 files changed, 402 insertions(+), 83 deletions(-) diff --git a/_posts/0000-01-01-Character-Generator.html b/_posts/0000-01-01-Character-Generator.html index 92674e7..eaaee48 100644 --- a/_posts/0000-01-01-Character-Generator.html +++ b/_posts/0000-01-01-Character-Generator.html @@ -4,71 +4,6 @@ redirect_from: "/Character-Sheets/" tags: [Version 0.2 beta] --- - - - @@ -991,6 +926,386 @@ tags: [Version 0.2 beta]
+ +

Future Plans

+ +

+ The following tables contain features that are planned for the character generator + and either will be implemented soonish or did not make it into the current version. +

+ +

Simple Features

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NumberFeatureDependenciesStatus
S010Add all races, careers, etc. Done
S030Fill out Skill Parent Set ValueM020Done
S040Compute Skill sumS030Done
S070Fill Melee Weapon dataM050Done
S080Fill Ranged Weapon dataM060Done
S100Fill Languages Done
S130Use Skill DB on change of Skill name/valueM020Done
S140Use Spell DB on change of Spell nameM160Done
S150Fill out Spell data Done
S170Worn Armor Autofill Done
S180Melee Weapon Autofill Done
S190Ranged Weapon Autofill Done
S200Add Benefits to Index Done
S020"overflow" for input fields  
S050Benefit descriptions and pagesM030Pages Done
S060Ability descriptions and pagesM040Pages Done
S090Fill Arcane Tradition  
S110Connections descriptions and pagesM080 
S160Add Warcaster Armor/Mechanikal Armor/etc. to Armor DB  
S170Introduce "Clear Sheet" Button  
+ +

Challenging Features

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NumberFeatureDependenciesStatus
M090Mechanika DB Canceled
M020Skill DB Done
M110Capacitor DB Done
M050Melee Weapon DB Done
M060Ranged Weapon DB Done
M160Spell DB Done
M010Armor DB Done for regular armor
M030Benefit DBS200only all names
M040Ability DB only all names
M070Gear DB  
M080Connections DBM170 
M100Runeplate DB only all names
M140Character Portraits  
M170Add Connections to Index  
M120Steamjack DB Later
M130Riding DB Later
+ +

Complex Features

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NumberFeatureDependenciesStatus
C030Mechanika AutofillM090Done
C040Runeplate AutofillM100Done
C050Capacitor WidgetM110Done
C010Track Equipment ModifiersM010, M040, M050, M060, M070worn armor/Shield/Command done
C020compute DEF, ARM, INI, etc.C010Done for basic modifiers
C110Add Character Cards as alternative design  
C060Steamjack WidgetM120, C090Later
C070Riding WidgetM130, C100Later
C080Leveling Later
C090Steamjack Sheet Later
C100Riding Sheet Later
C120Chrome sync for local store Later
+ +

Bugs

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NumberFeatureDependenciesStatus
B010Some descriptions stay when I generate a new hero. Done
B020Changing font size in mechanika and connections and such. Done
B030Is computed-SPD stored in save()? Done
B040When the Thrown Weapon Skill is added, missing RAT is not updated.  
+ diff --git a/ikrpg.appcache b/ikrpg.appcache index 2e4a3bd..d82f8a1 100644 --- a/ikrpg.appcache +++ b/ikrpg.appcache @@ -1,5 +1,5 @@ CACHE MANIFEST -# 2015-10-10 v6 +# 2015-10-19 CACHE: @@ -19,6 +19,8 @@ CACHE: # Moons of Caen Tool /Constellations/ +/static/images/constellations/shadow.png +/static/images/constellations/moons.jpg # Index /Index/ diff --git a/static/javascripts/generator.js b/static/javascripts/generator.js index 3dfc23f..7c69d6e 100644 --- a/static/javascripts/generator.js +++ b/static/javascripts/generator.js @@ -5680,8 +5680,10 @@ var ikrpg = ikrpg || {}; var abilities = $.merge(data["benefits"], data["abilities"]) || []; $.each(abilities.sort(), function(index, ability) { - character["ability"+(index+1)] = character["ability"+(index+1)] || {}; - character["ability"+(index+1)]["title"] = ability; + var identifier = "ability"+(index+1); + + character[identifier] = character[identifier] || { "title": "", "description": "", "page": "" }; + character[identifier]["title"] = ability; var db = ikrpg.index.data; @@ -5689,7 +5691,7 @@ var ikrpg = ikrpg || {}; var entry = $.grep(db, function(e) { return e["name"] == abilityBaseName; }); if(entry && entry.length > 0) { var page = entry[0]["page"]; - character["ability"+(index+1)]["page"] = page; + character[identifier]["page"] = page; } }); @@ -5707,7 +5709,7 @@ var ikrpg = ikrpg || {}; $.each(skillsKeys.sort(), function(i, skill) { var value = skills[skill]; - character["s"+(index+1)] = character["s"+(index+1)] || {}; + character["s"+(index+1)] = character["s"+(index+1)] || { "title": "", "stat": "", "base": "", "lvl": "", "sum": "" }; character["s"+(index+1)]["title"] = skill; character["s"+(index+1)]["lvl"] = value; @@ -5758,7 +5760,7 @@ var ikrpg = ikrpg || {}; var spells = data["spells"] || []; $.each(spells.sort(), function(index, spell) { - character["spell"+(index+1)] = character["spell"+(index+1)] || {}; + character["spell"+(index+1)] = character["spell"+(index+1)] || { "title": "", "cost": "", "rng": "", "aoe": "", "pow": "", "up": "", "off": "", "description": "" }; character["spell"+(index+1)]["title"] = spell; var spellData = db[spell]; @@ -5781,7 +5783,7 @@ var ikrpg = ikrpg || {}; var gears = data["gear"] || []; $.each(gears.sort(), function(index, gear) { - character["gear"+(index+1)] = character["gear"+(index+1)] || {}; + character["gear"+(index+1)] = character["gear"+(index+1)] || { "title": "", "benefit": "" }; character["gear"+(index+1)]["title"] = gear; }); @@ -5797,7 +5799,7 @@ var ikrpg = ikrpg || {}; $.each(rangedWeapons.sort(), function(index, name) { var rat = "rat"+(index+1); - character[rat] = character[rat] || {}; + character[rat] = character[rat] || { "name": "", "rat": "", "rng": "", "aoe": "", "pow": "", "notes": "", "ammo": "" }; character[rat]["name"] = name; var weapon = db[name]; @@ -5841,7 +5843,7 @@ var ikrpg = ikrpg || {}; $.each(meleeWeapons.sort(), function(index, name) { var mat = "mat"+(index+1); - character[mat] = character[mat] || {}; + character[mat] = character[mat] || { "name": "", "mat": "", "pow": "", "ps": "", "notes": "" }; character[mat]["name"] = name; var weapon = db[name]; @@ -5885,7 +5887,7 @@ var ikrpg = ikrpg || {}; var armors = data["armors"] || []; $.each(armors.sort(), function(index, armor) { - character["wornarmor"+(index+1)] = character["wornarmor"+(index+1)] || {}; + character["wornarmor"+(index+1)] = character["wornarmor"+(index+1)] || { "name": "", "notes": "", "spd": "", "def": "", "arm": "" }; character["wornarmor"+(index+1)]["name"] = armor; var wornArmorData = db[armor]; @@ -5905,7 +5907,7 @@ var ikrpg = ikrpg || {}; var notes = data["notes"] || []; $.each(notes.sort(), function(index, note) { - character["note"+(index+1)] = character["note"+(index+1)] || {}; + character["note"+(index+1)] = character["note"+(index+1)] || { "title": "", "text": "" }; character["note"+(index+1)]["text"] = note; }); @@ -5929,7 +5931,7 @@ var ikrpg = ikrpg || {}; var connections = data["connections"] || []; $.each(connections.sort(), function(index, connection) { - character["connection"+(index+1)] = character["connection"+(index+1)] || {}; + character["connection"+(index+1)] = character["connection"+(index+1)] || { "name": "", "notes": "", "page": "" }; character["connection"+(index+1)]["name"] = connection; }); diff --git a/static/javascripts/heroic.js b/static/javascripts/heroic.js index 7b33ca0..ce36cea 100644 --- a/static/javascripts/heroic.js +++ b/static/javascripts/heroic.js @@ -221,13 +221,13 @@ var ikrpg = ikrpg || {}; ikrpg.cards.updateData = function() { var data = ikrpg.cards.data; - for (var key in data) { + for(var key in data) { var value = data[key]; - if (key == "hero-name") { + if(key == "hero-name") { var currentData = $(".hero-name").val(); ikrpg.cards.data["hero-name"] = currentData; - } else if (typeof value === "object") { + } else if(typeof value === "object") { for (var subkey in value) { var subvalue = value[subkey]; var currentData = $("#"+key+" ."+subkey).val(); diff --git a/static/javascripts/sheet.js b/static/javascripts/sheet.js index 5baa2cd..048748a 100644 --- a/static/javascripts/sheet.js +++ b/static/javascripts/sheet.js @@ -14,19 +14,19 @@ var ikrpg = ikrpg || {}; // # Manage characters # \\ (function() { - + var db2 = new PouchDB('characters.ikrpg'); var hero = ikrpg.cards.data; listCharacters(); - + function saveHero() { ikrpg.cards.updateData(); hero = ikrpg.cards.data; var _id = hero["hero-name"].replace(/["']/g, ""); - + db2.get(_id, function(error, doc) { if(error) { // hero not in db yet doc = hero;