diff --git a/module/helper.js b/module/helper.js index 4aa959e..427982a 100644 --- a/module/helper.js +++ b/module/helper.js @@ -532,7 +532,7 @@ export class EntitySheetHelper { } // Render the document creation form - const useEntity = foundry.utils.isNewerVersion("9", game.version ?? game.data.version); + const useEntity = game.worldbuilding.useEntity; const template = `templates/sidebar/${useEntity ? "entity" : "document" }-create.html`; const html = await renderTemplate(template, { name: data.name || game.i18n.format("DOCUMENT.New", {type: label}), diff --git a/module/simple.js b/module/simple.js index 05eafe2..d42b182 100644 --- a/module/simple.js +++ b/module/simple.js @@ -32,7 +32,8 @@ Hooks.once("init", async function() { game.worldbuilding = { SimpleActor, - createWorldbuildingMacro + createWorldbuildingMacro, + useEntity: foundry.utils.isNewerVersion("9", game.version ?? game.data.version) }; // Define custom Document classes @@ -104,16 +105,17 @@ Hooks.on("hotbarDrop", (bar, data, slot) => createWorldbuildingMacro(data, slot) * Adds the actor template context menu. */ Hooks.on("getActorDirectoryEntryContext", (html, options) => { + const idAttr = game.worldbuilding.useEntity ? "entityId" : "documentId"; // Define an actor as a template. options.push({ name: game.i18n.localize("SIMPLE.DefineTemplate"), icon: '', condition: li => { - const actor = game.actors.get(li.data("documentId")); + const actor = game.actors.get(li.data(idAttr)); return !actor.getFlag("worldbuilding", "isTemplate"); }, callback: li => { - const actor = game.actors.get(li.data("documentId")); + const actor = game.actors.get(li.data(idAttr)); actor.setFlag("worldbuilding", "isTemplate", true); } }); @@ -123,11 +125,11 @@ Hooks.on("getActorDirectoryEntryContext", (html, options) => { name: game.i18n.localize("SIMPLE.UnsetTemplate"), icon: '', condition: li => { - const actor = game.actors.get(li.data("documentId")); + const actor = game.actors.get(li.data(idAttr)); return actor.getFlag("worldbuilding", "isTemplate"); }, callback: li => { - const actor = game.actors.get(li.data("documentId")); + const actor = game.actors.get(li.data(idAttr)); actor.setFlag("worldbuilding", "isTemplate", false); } }); @@ -137,16 +139,17 @@ Hooks.on("getActorDirectoryEntryContext", (html, options) => { * Adds the item template context menu. */ Hooks.on("getItemDirectoryEntryContext", (html, options) => { + const idAttr = game.worldbuilding.useEntity ? "entityId" : "documentId"; // Define an item as a template. options.push({ name: game.i18n.localize("SIMPLE.DefineTemplate"), icon: '', condition: li => { - const item = game.items.get(li.data("documentId")); + const item = game.items.get(li.data(idAttr)); return !item.getFlag("worldbuilding", "isTemplate"); }, callback: li => { - const item = game.items.get(li.data("documentId")); + const item = game.items.get(li.data(idAttr)); item.setFlag("worldbuilding", "isTemplate", true); } }); @@ -156,11 +159,11 @@ Hooks.on("getItemDirectoryEntryContext", (html, options) => { name: game.i18n.localize("SIMPLE.UnsetTemplate"), icon: '', condition: li => { - const item = game.items.get(li.data("documentId")); + const item = game.items.get(li.data(idAttr)); return item.getFlag("worldbuilding", "isTemplate"); }, callback: li => { - const item = game.items.get(li.data("documentId")); + const item = game.items.get(li.data(idAttr)); item.setFlag("worldbuilding", "isTemplate", false); } }); diff --git a/system.json b/system.json index 78da37f..557ba09 100644 --- a/system.json +++ b/system.json @@ -2,7 +2,7 @@ "name": "worldbuilding", "title": "Simple World-Building", "description": "A minimalist game system which provides configurable Actor and Item templates to support free-form system agnostic game-play.", - "version": "0.6.0", + "version": "0.6.1", "minimumCoreVersion": "0.8.9", "compatibleCoreVersion": "9", "author": "Atropos", @@ -22,6 +22,6 @@ "secondaryTokenAttribute": "power", "url": "https://gitlab.com/foundrynet/worldbuilding/", "manifest": "https://gitlab.com/foundrynet/worldbuilding/raw/0.6.x/system.json", - "download": "https://gitlab.com/foundrynet/worldbuilding/-/archive/release-060/worldbuilding-release-060.zip", + "download": "https://gitlab.com/foundrynet/worldbuilding/-/archive/release-061/worldbuilding-release-061.zip", "license": "LICENSE.txt" }