|
|
- Hooks.once("init", async function () {
- game.settings.register(AECONSTS.MN, "companions", {
- name: "",
- hint: "",
- scope: "client",
- config: false,
- type: Array,
- default: [],
- });
- game.settings.register(AECONSTS.MN, "customautospells", {
- name: "",
- hint: "",
- scope: "world",
- config: false,
- type: Object,
- default: {},
- onChange: (obj) => {
- game.automatedevocations[game.system.id] = deepClone(game.automatedevocations.originalBindings);
- game.automatedevocations[game.system.id] = mergeObject(game.automatedevocations[game.system.id],game.settings.get(AECONSTS.MN, "customautospells"))
- },
- });
- game.settings.register(AECONSTS.MN, "customanimations", {
- name: "",
- hint: "",
- scope: "world",
- config: false,
- type: Object,
- default: {},
- });
-
- if(game.system.id === "dnd5e") {
-
- game.settings.registerMenu(AECONSTS.MN, "configBindings", {
- name: game.i18n.localize("AE.custombindings.sett.name"),
- label: game.i18n.localize("AE.custombindings.sett.label"),
- hint: game.i18n.localize("AE.custombindings.sett.hint"),
- icon: "fas fa-cogs",
- scope: "world",
- restricted: true,
- type: AutomatedEvocationsCustomBindings,
- });
-
- };
-
- game.settings.register(AECONSTS.MN, "autoclose", {
- name: game.i18n.localize(`AE.settings.autoclose.title`),
- hint: game.i18n.localize(`AE.settings.autoclose.hint`),
- scope: "world",
- config: true,
- type: Boolean,
- default: false,
- });
- game.settings.register(AECONSTS.MN, "enableautomations", {
- name: game.i18n.localize(`AE.settings.enableautomations.title`),
- hint: game.i18n.localize(`AE.settings.enableautomations.hint`),
- scope: "world",
- config: true,
- type: Boolean,
- default: true,
- });
- game.settings.register(AECONSTS.MN, "storeonactor", {
- name: game.i18n.localize(`AE.settings.storeonactor.title`),
- hint: game.i18n.localize(`AE.settings.storeonactor.hint`),
- scope: "world",
- config: true,
- type: Boolean,
- default: false,
- });
- game.settings.register(AECONSTS.MN, "hidebutton", {
- name: game.i18n.localize(`AE.settings.hidebutton.title`),
- hint: game.i18n.localize(`AE.settings.hidebutton.hint`),
- scope: "world",
- config: true,
- type: Boolean,
- default: false,
- });
- game.settings.register(AECONSTS.MN, "restrictOwned", {
- name: game.i18n.localize(`AE.settings.restrictOwned.title`),
- hint: game.i18n.localize(`AE.settings.restrictOwned.hint`),
- scope: "world",
- config: true,
- type: Boolean,
- default: false,
- });
- });
-
- Hooks.once("ready", async function () {
- AECONSTS.animationFunctions = mergeObject(
- AECONSTS.animationFunctions,
- game.settings.get(AECONSTS.MN, "customanimations")
- );
- console.log("Automated Evocations: Animation Functions Loaded - ",AECONSTS.animationFunctions);
- let sortedAnims = Object.keys(AECONSTS.animationFunctions).sort();
- for (let k of sortedAnims) {
- const group = AECONSTS.animationFunctions[k].group || "z-none";
- AECONSTS.animations[group] = AECONSTS.animations[group] || [];
- AECONSTS.animations[group].push({
- name:
- AECONSTS.animationFunctions[k]?.name ||
- game.i18n.localize(`AE.animations.${k}`),
- key: k,
- });
- }
- AECONSTS.animations = Object.keys(AECONSTS.animations).sort().reduce(
- (obj, key) => {
- obj[key] = AECONSTS.animations[key];
- return obj;
- },
- {}
- );
- //new CompanionManager().render(true)
- });
-
- Hooks.on("getActorSheetHeaderButtons", (app, buttons) => {
- if(game.settings.get(AECONSTS.MN, "hidebutton")) return;
- buttons.unshift({
- icon: "fas fa-users",
- class: "open-cm",
- label: game.i18n.localize("AE.actorSheetBtn"),
- onclick: function openCM(event) {
- const actor = app.object;
- new CompanionManager(actor).render(true);
- },
- });
- });
|