/** * RdD system * Author: LeRatierBretonnien * Software License: GNU GPLv3 */ /* -------------------------------------------- */ /* -------------------------------------------- */ // Import Modules import { RdDActor } from "./actor.js"; import { RdDItemSheet } from "./item-sheet.js"; import { RdDActorSheet } from "./actor-sheet.js"; import { RdDUtility } from "./rdd-utility.js"; /* -------------------------------------------- */ /* Foundry VTT Initialization */ /* -------------------------------------------- */ Hooks.once("init", async function() { console.log(`Initializing Reve de Dragon System`); // preload handlebars templates RdDUtility.preloadHandlebarsTemplates(); /** * Set an initiative formula for the system * @type {String} */ CONFIG.Combat.initiative = { formula: "1d20", decimals: 2 }; game.socket.on("system.foundryvtt-reve-de-dragon", data => { RdDUtility.performSocketMesssage( data ); }); // Define custom Entity classes CONFIG.Actor.entityClass = RdDActor; CONFIG.RDD = {} CONFIG.RDD.resolutionTable = RdDUtility.buildResolutionTable(); CONFIG.RDD.level_category = RdDUtility.getLevelCategory(); CONFIG.RDD.carac_array = RdDUtility.getCaracArray(); CONFIG.RDD.bonusmalus = RdDUtility.getBonusMalus(); game.data.RdDUtility = RdDUtility; // Register sheet application classes Actors.unregisterSheet("core", ActorSheet); Actors.registerSheet("foundryvtt-reve-de-dragon", RdDActorSheet, { makeDefault: true }); Items.unregisterSheet("core", ItemSheet); Items.registerSheet("foundryvtt-reve-de-dragon", RdDItemSheet, {makeDefault: true}); });