sotc-foundry-suite/sotc-clash-arrow/scripts/main.js

35 lines
1.3 KiB
JavaScript

/**
* sotc-clash-arrow | main.js
*
* Point d'entrée du module.
* Importe et initialise tous les sous-systèmes.
*/
import { registerHooks, registerSettings } from "./Hooks.js";
import { ArrowStore } from "./ArrowStore.js";
import { ClashArrowLayer } from "./ClashArrowLayer.js";
// ── Exposition globale ────────────────────────────────────────────────────────
globalThis.sotcClashArrow = {
ArrowStore,
ClashArrowLayer, // singleton objet, pas une classe
};
// ── Démarrage ─────────────────────────────────────────────────────────────────
Hooks.once("init", () => {
console.log("sotc-clash-arrow | Initialisation du module.");
registerSettings();
registerHooks();
});
Hooks.once("ready", () => {
// Vérification des dépendances
if (!game.modules.get("stars-initiative-overlay")?.active) {
ui.notifications.error(
"sotc-clash-arrow : Le module 'Stars Initiative Overlay' (SIO) est requis et doit être activé.",
{ permanent: true }
);
}
console.log("sotc-clash-arrow | Module prêt.");
});