From 44efe2748b96bd6ac79f86963b15ab91062b05d3 Mon Sep 17 00:00:00 2001 From: WBHarry Date: Tue, 25 Nov 2025 14:52:22 +0100 Subject: [PATCH] Added migration to remove ghosts from the TagTeamDialog --- module/systemRegistration/migrations.mjs | 19 +++++++++++++++++++ system.json | 2 +- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/module/systemRegistration/migrations.mjs b/module/systemRegistration/migrations.mjs index 00b07dc1..b3116459 100644 --- a/module/systemRegistration/migrations.mjs +++ b/module/systemRegistration/migrations.mjs @@ -191,6 +191,25 @@ export async function runMigrations() { lastMigrationVersion = '1.2.0'; } + + if (foundry.utils.isNewerVersion('1.2.7', lastMigrationVersion)) { + const tagTeam = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.TagTeamRoll); + const initatorMissing = tagTeam.initiator && !game.actors.some(actor => actor.id === tagTeam.initiator); + const missingMembers = Object.keys(tagTeam.members).reduce((acc, id) => { + if (!game.actors.some(actor => actor.id === id)) { + acc[`-=${id}`] = null; + } + return acc; + }, {}); + + await tagTeam.updateSource({ + initiator: initatorMissing ? null : tagTeam.initiator, + members: missingMembers + }); + await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.TagTeamRoll, tagTeam); + + lastMigrationVersion = '1.2.7'; + } //#endregion await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.LastMigrationVersion, lastMigrationVersion); diff --git a/system.json b/system.json index bfcf2a31..4972a395 100644 --- a/system.json +++ b/system.json @@ -2,7 +2,7 @@ "id": "daggerheart", "title": "Daggerheart", "description": "An unofficial implementation of the Daggerheart system", - "version": "1.2.6", + "version": "1.2.7", "compatibility": { "minimum": "13", "verified": "13.351",