:: Inventory
Inventory: <> :: ShowInventory [script] try { version.extensions['Inventory'] = { major:0, minor:1, revision:0 }; macros['Inventory'] = { handler: function(place, macroName, params, parser) { var msg = ""; var items = state.history[0].variables.items; if (items == undefined) { new Wikifier(place, "nothing"); return; } for(var name in items) { if(!isNaN(parseFloat(items[name])) && isFinite(items[name])) { if(tale.passages[name+"-itemDescription"]) { msg += "[["+name+"|"+name+"-itemDescription]](" + items[name] + "), "; } else { msg += name + "(" + items[name] + "), "; } } else if(items[name] != false) { if(tale.passages[name+"-itemDescription"]) { msg += "[["+name+"|"+name+"-itemDescription]], "; } else { msg += name + ", "; } } }; new Wikifier(place, msg.slice(0,-2)); }, init: function() { }, }; } catch(e) { throwError(place,"Inventory Setup Error: " + e.message); } :: PlayerStats
Player Stats: <> :: ShowPlayerStats [script] try { version.extensions['PlayerStats'] = { major:0, minor:1, revision:0 }; macros['PlayerStats'] = { handler: function(place, macroName, params, parser) { var msg = ""; var stats = state.history[0].variables.stats; if (stats == undefined) { new Wikifier(place, "no stats"); return; } for(var stat in stats) { if(stat.slice(-4) == "_max") { continue; } msg += stat + ": " + stats[stat]; if(stats[stat+"_max"] != undefined) { msg += " / " + stats[stat+"_max"]; } msg += "
"; } new Wikifier(place, msg); }, init: function() { }, }; } catch(e) { throwError(place,"PlayerStats Setup Error: " + e.message); } :: PlayerSkills
Player Skills: <> :: ShowPlayerSkills [script] try { version.extensions['PlayerSkills'] = { major:0, minor:1, revision:0 }; macros['PlayerSkills'] = { handler: function(place, macroName, params, parser) { var msg = ""; var stats = state.history[0].variables.skills; if (stats == undefined) { new Wikifier(place, "no skills"); return; } for(var stat in stats) { msg += stat + ": " + stats[stat]+"
"; } new Wikifier(place, msg); }, init: function() { }, }; } catch(e) { throwError(place,"PlayerSkills Setup Error: " + e.message); } :: GetPreviousNonItem [script] try { version.extensions['PreviousNonItem'] = { major:0, minor:1, revision:0 }; macros['PreviousNonItem'] = { handler: function(place, macroName, params, parser) { var msg = ""; for(var h in state.history) { if(state.history[h].passage.title == "PlayerProfile" || state.history[h].passage.title.slice(-16) == "-itemDescription") continue; //skip all the inventory items msg += state.history[h].passage.title; break; //we only want the first instance of a non-item passage } new Wikifier(place, "[[Return|" + msg + "]]"); }, init: function() { }, }; } catch(e) { throwError(place,"PreviousNonItem Setup Error: " + e.message); } :: PlayerProfile <> -~-~-~-~-~- <> <> <> :: postrender [script] postrender.tagInventory = function(place) { var inv = tale.get("Inventory"); if (inv.id !== undefined && ~this.tags.indexOf("inv")) { new Wikifier(place, inv.processText()); }; var stats = tale.get("PlayerStats"); if(stats.id !== undefined && ~this.tags.indexOf("stats")) { new Wikifier(place, stats.processText()); }; var skills = tale.get("PlayerSkills"); if(skills.id !== undefined && ~this.tags.indexOf("skills")) { new Wikifier(place, skills.processText()); }; if(~this.tags.indexOf("item")) { new Wikifier(place, "\n[[Return|previous()]]"); }; } :: core-init <> <> <> <> <> <> <> <> <> <> <> :: GetInit [script] try { version.extensions['GetInit'] = { major:0, minor:1, revision:0 }; macros['Init'] = { handler: function(place, macroName, params, parser) { var msg = "<><>"; msg += "<>"; //manually add core-init first console.log("Initializing core-init"); for(var p in tale.passages) { /%if(~tale.passages[p].tags.indexOf("init")) {%/ if(p.slice(-5) == "-init" && p != "core-init") { msg += "<>"; console.log("Initializing " + p); } } msg += "<><>"; new Wikifier(place, msg); console.log("$items contains " + Object.keys(state.history[0].variables.items).length + " object(s)"); console.log("$events contains " + Object.keys(state.history[0].variables.events).length + " object(s)"); console.log("$stats contains " + Object.keys(state.history[0].variables.stats).length + " object(s)"); console.log("$skills contains " + Object.keys(state.history[0].variables.skills).length + " object(s)"); }, init: function() { }, }; } catch(e) { throwError(place,"GetInit Setup Error: " + e.message); } :: GetStarts [script] try { version.extensions['GetStarts'] = { major:0, minor:1, revision:0 }; macros['Starts'] = { handler: function(place, macroName, params, parser) { var msg = ""; for(var p in tale.passages) { /%if(~tale.passages[p].tags.indexOf("init")) {%/ if(p.slice(-6) == "-start") { if(tale.passages[p+"Description"]) { console.log("Found " + p + "Description"); msg += "<>"; } else { console.log("Found " + p); msg += "[[" + p + "]]" } msg += "\n\n"; } } new Wikifier(place, msg); }, init: function() { }, }; } catch(e) { throwError(place,"GetInit Setup Error: " + e.message); }