bol/module/bol.js

91 lines
2.5 KiB
JavaScript

// Import Modules
import {BoLActor} from "./actor/actor.js";
import {BoLActorSheet} from "./actor/actor-sheet.js";
import {BoLItem} from "./item/item.js";
import {BoLItemSheet} from "./item/item-sheet.js";
import {System, BOL} from "./system/config.js";
import {preloadHandlebarsTemplates} from "./system/templates.js";
import {registerHandlebarsHelpers} from "./system/helpers.js";
import {registerSystemSettings} from "./system/settings.js";
import registerHooks from "./system/hooks.js";
import {DataLoader} from "./system/data.js";
Hooks.once('init', async function () {
game.bol = {
BoLActor,
BoLItem
};
/**
* Set an initiative formula for the system
* @type {String}
*/
CONFIG.Combat.initiative = {
formula: "1d20",
decimals: 2
};
// Define custom Entity classes
CONFIG.Actor.documentClass = BoLActor;
CONFIG.Item.documentClass = BoLItem;
// Register sheet application classes
Actors.unregisterSheet("core", ActorSheet);
Actors.registerSheet("bol", BoLActorSheet, {makeDefault: true});
Items.unregisterSheet("core", ItemSheet);
Items.registerSheet("bol", BoLItemSheet, {makeDefault: true});
// Register System Settings
registerSystemSettings();
// Preload Handlebars Templates
preloadHandlebarsTemplates();
// Register Handlebars helpers
registerHandlebarsHelpers();
// Register hooks
registerHooks();
// // If you need to add Handlebars helpers, here are a few useful examples:
// Handlebars.registerHelper('concat', function() {
// var outStr = '';
// for (var arg in arguments) {
// if (typeof arguments[arg] != 'object') {
// outStr += arguments[arg];
// }
// }
// return outStr;
// });
//
// Handlebars.registerHelper('toLowerCase', function(str) {
// return str.toLowerCase();
// });
});
/**
* Ready hook loads tables, and override's foundry's entity link functions to provide extension to pseudo entities
*/
Hooks.once("ready", async () => {
console.debug("Importing data");
// DataLoader.loadData("boons");
// DataLoader.loadData("flaws");
// DataLoader.loadData("careers");
// DataLoader.loadData("origins");
// DataLoader.loadData("races");
// DataLoader.loadData("equipment");
// UpdateUtils.updatePacks();
// UpdateUtils.updatePaths();
// UpdateUtils.updateProfiles();
// UpdateUtils.updateSpecies();
// UpdateUtils.updateEncounters();
console.info("BOL | System Initialized.");
});