Fix as per CSV sheet tracking + creature explanation

This commit is contained in:
2026-05-17 17:43:33 +02:00
parent a572c66678
commit 374854cc8b
99 changed files with 2716 additions and 464 deletions
+21
View File
@@ -20,6 +20,7 @@ Hooks.once("init", () => {
character: models.MGNECharacter,
creature: models.MGNECreature,
companion: models.MGNECompanion,
party: models.MGNEParty,
}
CONFIG.Combat.documentClass = documents.MGNECombat
@@ -32,6 +33,7 @@ Hooks.once("init", () => {
"resonance-core": models.MGNEResonanceCore,
artifact: models.MGNEArtifact,
feature: models.MGNEFeature,
"creature-trait": models.MGNECreatureTrait,
}
foundry.applications.sheets.ActorSheetV2 && foundry.documents.collections.Actors.unregisterSheet(
@@ -43,6 +45,7 @@ Hooks.once("init", () => {
foundry.documents.collections.Actors.registerSheet(SYSTEM_ID, applications.MGNECharacterSheet, { types: ["character"], makeDefault: true, label: SYSTEM.actorTypes.character.label })
foundry.documents.collections.Actors.registerSheet(SYSTEM_ID, applications.MGNECreatureSheet, { types: ["creature"], makeDefault: true, label: SYSTEM.actorTypes.creature.label })
foundry.documents.collections.Actors.registerSheet(SYSTEM_ID, applications.MGNECompanionSheet, { types: ["companion"], makeDefault: true, label: SYSTEM.actorTypes.companion.label })
foundry.documents.collections.Actors.registerSheet(SYSTEM_ID, applications.MGNEPartySheet, { types: ["party"], makeDefault: true, label: SYSTEM.actorTypes.party.label })
foundry.applications.sheets.ItemSheetV2 && foundry.documents.collections.Items.unregisterSheet(
"core",
@@ -57,8 +60,15 @@ Hooks.once("init", () => {
foundry.documents.collections.Items.registerSheet(SYSTEM_ID, applications.MGNEResonanceCoreSheet, { types: ["resonance-core"], makeDefault: true, label: SYSTEM.itemTypes["resonance-core"].label })
foundry.documents.collections.Items.registerSheet(SYSTEM_ID, applications.MGNEArtifactSheet, { types: ["artifact"], makeDefault: true, label: SYSTEM.itemTypes.artifact.label })
foundry.documents.collections.Items.registerSheet(SYSTEM_ID, applications.MGNEFeatureSheet, { types: ["feature"], makeDefault: true, label: SYSTEM.itemTypes.feature.label })
foundry.documents.collections.Items.registerSheet(SYSTEM_ID, applications.MGNECreatureTraitSheet, { types: ["creature-trait"], makeDefault: true, label: SYSTEM.itemTypes["creature-trait"].label })
Handlebars.registerHelper("isEqual", (left, right) => left === right)
Handlebars.registerHelper("includes", (collection, value) => {
if (!collection) return false
if (collection instanceof Set) return collection.has(value)
if (Array.isArray(collection)) return collection.includes(value)
return false
})
})
Hooks.once("setup", () => {
@@ -111,6 +121,17 @@ Hooks.on("renderChatMessageHTML", (message, element) => {
const root = element instanceof HTMLElement ? element : element?.[0]
if (!root) return
// Dice tooltip toggle
root.querySelectorAll("[data-action='toggle-dice-tooltip']").forEach(trigger => {
trigger.addEventListener("click", () => {
const tooltip = trigger.closest(".chat-card-body")?.querySelector(".chat-dice-tooltip")
if (!tooltip) return
const isHidden = tooltip.hidden
tooltip.hidden = !isHidden
trigger.classList.toggle("tooltip-open", isHidden)
})
})
root.querySelectorAll(".mgne-roll-damage-btn").forEach(btn => {
btn.addEventListener("click", async () => {
const actorId = btn.dataset.actorId