-- ══════════════════════════════════════════════════════════════
-- CONFIG - Zentrale Konfiguration fuer Das Buch der Gefallenen
-- Keine Modul-Logik hier! Nur Konstanten, Defaults, Lookup-Tables.
-- ══════════════════════════════════════════════════════════════

local addonName, addon = ...

local Config = {}
addon.Config = Config

-- ── ADDON META ────────────────────────────────────────────────
Config.VERSION         = "9.17.0"
Config.ADDON_NAME      = "Das Buch der Gefallenen"
Config.ADDON_NAME_EN   = "The Book of the Fallen"
Config.PREFIX_CHAT     = "|cffFFD100[Chronicle]|r "
Config.PREFIX_DEBUG    = "|cffAAAAAA[GDL-DEBUG]|r "
Config.PREFIX_SYNC     = "GDLSync"

-- ── INTERFACE VERSIONEN ──────────────────────────────────────
Config.INTERFACE_CLASSIC = 11508
Config.INTERFACE_TBC     = 20505

-- ── SETTINGS DEFAULTS ────────────────────────────────────────
-- Werden bei Erstinstallation gesetzt, bestehende NICHT ueberschrieben
Config.SETTING_DEFAULTS = {
    announce            = true,
    sound               = true,
    overlay             = true,
    mapMarkers          = true,
    guildTracker        = true,
    nameplateTitles     = true,
    useBlizzardChannel  = true,
    useAddonChannel     = true,
    debugPrint          = false,
    overlayScale        = 1.0,
    milestoneAnnounce   = true,
    milestonePopup      = true,
    zoneWarning         = true,
    -- v9.3.0
    screenshotOnDeath   = false,   -- Opt-in: Screenshot bei eigenem Tod
    playedTimeInBook    = true,    -- /played in Todes-Eintraegen zeigen
    coordsInBook        = true,    -- Koordinaten in Todes-Eintraegen zeigen
    survivalStreakEnabled= true,   -- Streak-System aktiv
    streakMilestoneToast= true,   -- Toast bei Meilensteinen
    lastHoursEnabled    = true,    -- Session-Journal tracken
    lastHoursInBook     = true,    -- Journal im Buch zeigen
    heatmap             = false,   -- Todes-Heatmap auf Weltkarte (default aus)
    killer3DPortrait    = true,    -- 3D Killer-Portrait im Overlay
    deathlogIntegration = true,    -- DeathNotificationLib Integration
    guildlessMode       = false,   -- Auch Nicht-Gildenmitglieder tracken
    minPeerReports      = 0,       -- Min. Peer-Bestaedigungen fuer Overlay
    -- Features ohne expliziten Default (werden von Modulen selbst gesetzt)
    dangerZoneEnabled   = true,    -- DangerZone-Feature aktiv
    deathBellEnabled    = true,    -- DeathBell-Sound aktiv
    overlayPosition     = nil,     -- nil = Standardposition (vom Overlay gesetzt)
    patreonName         = "",      -- Patreon-Name (optional)
    -- v9.9.4
    guildPushEnabled    = true,    -- Meilenstein/Titel-Einzeiler in den Gildenchat
    mournEnabled        = false,   -- Persoenliche Trauer-Nachricht bei Gildentod
    mournMessage        = "Ruhe in Frieden, {name}.",  -- {name} = Gefallener
}

-- ── SUPPORTER TIERS ──────────────────────────────────────────
Config.TIER_INFO = {
    ["B"] = { priority = 10, label = "Bronze",  color = "|cffCD7F32" },
    ["S"] = { priority = 20, label = "Silber",  color = "|cffC0C0C0" },
    ["G"] = { priority = 30, label = "Gold",    color = "|cffFFD700" },
}

-- ── KLASSEN-DATEN ────────────────────────────────────────────
Config.CLASS_COLORS = {
    [1]  = {0.78, 0.61, 0.43},  -- Warrior
    [2]  = {0.96, 0.55, 0.73},  -- Paladin
    [3]  = {0.67, 0.83, 0.45},  -- Hunter
    [4]  = {1.00, 0.96, 0.41},  -- Rogue
    [5]  = {1.00, 1.00, 1.00},  -- Priest
    [7]  = {0.00, 0.44, 0.87},  -- Shaman
    [8]  = {0.41, 0.80, 0.94},  -- Mage
    [9]  = {0.58, 0.51, 0.79},  -- Warlock
    [11] = {1.00, 0.49, 0.04},  -- Druid
}

Config.CLASS_ICONS = {
    [1]  = "Interface\\Icons\\ClassIcon_Warrior",
    [2]  = "Interface\\Icons\\ClassIcon_Paladin",
    [3]  = "Interface\\Icons\\ClassIcon_Hunter",
    [4]  = "Interface\\Icons\\ClassIcon_Rogue",
    [5]  = "Interface\\Icons\\ClassIcon_Priest",
    [7]  = "Interface\\Icons\\ClassIcon_Shaman",
    [8]  = "Interface\\Icons\\ClassIcon_Mage",
    [9]  = "Interface\\Icons\\ClassIcon_Warlock",
    [11] = "Interface\\Icons\\ClassIcon_Druid",
}

-- ── UI KONSTANTEN ────────────────────────────────────────────
Config.BOOK_WIDTH       = 900
Config.BOOK_HEIGHT      = 520
Config.BOOK_MIN_SCALE   = 0.5
Config.BOOK_MAX_SCALE   = 2.0
Config.OVERLAY_STRATA   = "FULLSCREEN_DIALOG"

-- ── SYNC KONSTANTEN ──────────────────────────────────────────
Config.SYNC_PREFIX      = "GDLSync"
Config.SYNC_THROTTLE    = 0.2   -- Sekunden zwischen Nachrichten
Config.SYNC_MAX_MSG_LEN = 240   -- Max Laenge pro Addon-Message

-- ── ANIMATION DEFAULTS ───────────────────────────────────────
Config.ANIM_FADE_DURATION   = 0.3
Config.ANIM_SLIDE_DURATION  = 0.25
Config.ANIM_SCALE_DURATION  = 0.2
Config.ANIM_BOUNCE_SCALE    = 1.08
