export const MODULE_ID = "configurable-reactions"; export const MODULE_TITLE = "Configurable Reactions"; export const SETTINGS = Object.freeze({ REACTIONS: "reactions", ASSIGNMENTS: "assignments", SHOW_FAILED_TELEPORT_MESSAGES: "showFailedTeleportMessages", CREATE_MANAGED_EFFECTS_ON_ASSIGNMENT: "createManagedEffectsOnAssignment" }); export const TRIGGER_TYPES = Object.freeze({ DAMAGE_RECEIVED: "damageReceived", TARGET_SELECTED: "targetSelected", SPELL_CAST_START: "spellCastStart", SPELL_CAST_COMPLETE: "spellCastComplete", FEATURE_USED: "featureUsed" }); export const ACTION_TYPES = Object.freeze({ APPLY_STATUS: "applyStatus", TELEPORT: "teleport", CAST_SPELL_FROM_TOKEN: "castSpellFromToken", USE_INVENTORY_ITEM: "useInventoryItem" }); export const DEFAULT_REACTION = Object.freeze({ name: "Neue Reaktion", enabled: true, trigger: { type: TRIGGER_TYPES.DAMAGE_RECEIVED }, conditions: { damage: { enabled: true, amountMode: "damageOnly", types: [], typeMode: "any", minAmount: 1 }, hpAfterDamage: { enabled: false, operator: "lte", mode: "percent", value: 50 } }, consumption: { enabled: false, mode: "none", maxUses: 1, consumeOnFailure: false }, actions: [] });