diff --git a/MaterialDeck.js b/MaterialDeck.js index 916ae96..bc8fffe 100644 --- a/MaterialDeck.js +++ b/MaterialDeck.js @@ -23,6 +23,8 @@ export var tokenHelper; export const moduleName = "MaterialDeck"; +export let gamingSystem = "dnd5e"; + let ready = false; export let hotbarUses = false; @@ -65,7 +67,7 @@ async function analyzeWSmessage(msg){ const msg = { target: "SD", type: "init", - system: game.system.id + system: gamingSystem } ws.send(JSON.stringify(msg)); @@ -222,7 +224,7 @@ function startWebsocket() { const msg2 = { target: "SD", type: "init", - system: game.system.id + system: gamingSystem } ws.send(JSON.stringify(msg2)); clearInterval(wsInterval); @@ -291,6 +293,9 @@ Hooks.once('ready', async()=>{ registerSettings(); enableModule = (game.settings.get(moduleName,'Enable')) ? true : false; + const systemOverride = game.settings.get(moduleName,'systemOverride'); + gamingSystem = systemOverride != '' ? systemOverride : game.system.id; + soundboard = new SoundboardControl(); streamDeck = new StreamDeck(); tokenControl = new TokenControl(); @@ -391,6 +396,11 @@ Hooks.once('ready', async()=>{ if (hotbarUsesTemp != undefined) hotbarUses = true; }); +function updateActor(id) { + const token = tokenHelper.getTokenFromActorId(id) + tokenControl.update(token.id); +} + Hooks.on('updateToken',(scene,token)=>{ if (enableModule == false || ready == false) return; let tokenId = token._id; @@ -400,19 +410,28 @@ Hooks.on('updateToken',(scene,token)=>{ Hooks.on('updateActor',(actor)=>{ if (enableModule == false || ready == false) return; - let children = canvas.tokens.children[0].children; - for (let i=0; i{ + if (enableModule == false || ready == false) return; + updateActor(data.parent.id); + return; +}); + +Hooks.on('deleteActiveEffect',(data)=>{ + if (enableModule == false || ready == false) return; + updateActor(data.parent.id); + return; +}); + +Hooks.on('onActorSetCondition',(data)=>{ + if (enableModule == false || ready == false) return; + updateActor(data.actor.id); + return; +}); + Hooks.on('controlToken',(token,controlled)=>{ if (enableModule == false || ready == false) return; if (controlled) { @@ -583,6 +602,11 @@ Hooks.on('about-time.clockRunningStatus', ()=>{ externalModules.updateAll(); }) +Hooks.on('updateTile',()=>{ + if (enableModule == false || ready == false) return; + externalModules.updateAll(); +}); + Hooks.once('init', ()=>{ //CONFIG.debug.hooks = true; //registerSettings(); //in ./src/settings.js diff --git a/changelog.md b/changelog.md index eed0010..dc48fcc 100644 --- a/changelog.md +++ b/changelog.md @@ -1,4 +1,20 @@ # Changelog Material Deck Module +### v1.4.9 - 16-04-2022 +Fixes: + + +Additions: + + ### v1.4.8 - 22-12-2021 Fixes: