Skip to content

Instantly share code, notes, and snippets.

@SReject
Created January 9, 2016 13:18
Show Gist options
  • Save SReject/6120a0132cc5a3da6ae1 to your computer and use it in GitHub Desktop.
Save SReject/6120a0132cc5a3da6ae1 to your computer and use it in GitHub Desktop.
AspectList.js Example Usage
var aspects = new AspectList({
"aer": false,
"aqua": false,
"ignis": false,
"perditio": false,
"ordo": false,
"terra": false,
"gelum": ["ignis", "perditio"],
"lux": ["aer", "ignis"],
"motus": ["aer", "ordo"],
"permutatio": ["ordo", "perditio"],
"potentia": ["ignis", "ordo"],
"tempestas": ["aer", "aqua"],
"vacuos": ["aer", "perditio"],
"venenum": ["aqua", "perditio"],
"victus": ["aqua", "terra"],
"vitreus": ["ordo", "terra"],
"bestia": ["motus", "victus"],
"fames": ["vacuos", "victus"],
"herba": ["terra", "victus"],
"iter": ["motus", "terra"],
"limus": ["aqua", "victus"],
"metallum": ["terra", "vitreus"],
"mortuus": ["perditio", "victus"],
"praecantatio": ["potentia", "vacuos"],
"sano": ["ordo", "victus"],
"tenebrae": ["lux", "vacuos"],
"vinculum": ["motus", "vacuos"],
"volatus": ["aer", "motus"],
"alienis": ["tenebrae", "vacuos"],
"arbor": ["aer", "herba"],
"auram": ["aer", "praecantatio"],
"corpus": ["bestia", "mortuus"],
"exanimis": ["mortuus", "motus"],
"spiritus": ["mortuus", "victus"],
"vitium": ["perditio", "praecantatio"],
"cognitio": ["spiritus", "ignis"],
"sensus": ["aer", "spiritus"],
"humanus": ["bestia", "cognitio"],
"instrumentum": ["humanus", "ordo"],
"lucrum": ["fames", "humanus"],
"messis": ["herba", "humanus"],
"perfodio": ["humanus", "terra"],
"fabrico": ["humanus", "instrumentum"],
"machina": ["instrumentum", "motus"],
"meto": ["instrumentum", "messis"],
"pannus": ["bestia", "instrumentum"],
"telum": ["instrumentum", "ignis"],
"tutamen": ["instrumentum", "terra"]
}, false);
// add addon aspects; disabling them by default
aspects.addonAdd("Forbidden Magic", {
"gula": ["fames", "vacuos"],
"infernus": ["ignis", "praecantatio"],
"superbia": ["vacuos", "volatus"],
"desidia": ["spiritus", "vinculum"],
"luxuria": ["corpus", "fames"],
"invidia": ["fames", "sensus"],
"ira": ["ignis", "telum"]
}, {enable: false, compile: false});
aspects.addonAdd("Magic Bees", {
"tempus": ["vacuos", "ordo"]
}, {enable: false, compile: false});
aspects.addonAdd("Greg Tech", {
"radio": ["potentia", "lux"],
"magneto": ["metallum", "iter"],
"nebrisum": ["lucrum", "perfodio"],
"electrum": ["potentia", "machina"]
}, {enable: false, compile: false});
aspects.addonAdd("Elysium", {
"sanctus": ["spiritus", "auram"]
}, {enable: false, compile: false});
aspects.addonAdd("Thaumic Warden", {
"exubitor": ["alienis", "mortuus"]
}, {enable: false, compile: false});
// compile the aspects list
aspects.compile();
// usage example: .has()
console.log("Has Aer: " + aspects.has("aer");
// usage example: .components()
console.log("Instrumentum components: " + JSON.stringify( aspects.components("instrumentum") ));
// usage example: .breakdown()
console.log("Fabrico Breakdown: " + JSON.stringify( aspects.breakdown("Fabrico") ));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment