import type { DungeonData } from "@/types/dungeon";

export const skyreach: DungeonData = {
  id: "skyreach",
  name: "Skyreach",
  descriptionHtml: `Linear 4-boss dungeon — elevated platforms with knockback danger throughout`,
  headerImage: "/assets/skyreach_header.jpg",
  icon: "/assets/dungeon_skyreach.jpg",
  sections: [
    {
      type: "trash",
      data: {
        header: "Windswept Terrace — Trash Before Ranjit",
        content: [
          { type: "quickRef", data: { html: `<strong>Environment:</strong> Open-air platforms — knockbacks can push you off the edge. Be careful with <a href="https://www.wowhead.com/beta/spell=1255377/repel">Repel</a> and <a href="https://www.wowhead.com/beta/spell=1258174/dread-wind">Dread Wind</a> near ledges.` } },
          {
            type: "mob",
            data: {
              name: "Soaring Chakram Master",
              nameHtml: `Soaring Chakram Master`,
              tankRelevant: false,
              abilitiesHtml: [
                `<a href="https://www.wowhead.com/beta/spell=1254666/ricocheting-chakram">Ricocheting Chakram</a> — targets random player, bounces to nearby allies. Spread loosely.`,
              ],
            },
          },
          {
            type: "mob",
            data: {
              name: "Outcast Warrior",
              nameHtml: `Outcast Warrior`,
              tankRelevant: true,
              abilitiesHtml: [
                `<a href="https://www.wowhead.com/beta/spell=1254670/rushing-winds">Rushing Winds</a> — <span style="color: var(--tank-color); font-weight: 600;">TANK: Purge this buff off the mob if possible.</span>`,
              ],
            },
          },
          {
            type: "mob",
            data: {
              name: "Raging Squall",
              nameHtml: `Raging Squall`,
              tankRelevant: false,
              abilitiesHtml: [
                `<a href="https://www.wowhead.com/beta/spell=1254677/wind-claws">Wind Claws</a> — passive bonus nature damage on melee hits.`,
                `<a href="https://www.wowhead.com/beta/spell=1254678/wrathful-wind">Wrathful Wind</a> — enrage. Soothe to remove.`,
                `<a href="https://www.wowhead.com/beta/spell=1255922/wind-blast">Wind Blast</a> — AoE on death. Move away from dying mobs.`,
              ],
            },
          },
          {
            type: "mob",
            data: {
              name: "Driving Gale-Caller",
              nameHtml: `Driving Gale-Caller`,
              tankRelevant: false,
              abilitiesHtml: [
                `<a href="https://www.wowhead.com/beta/spell=1255377/repel">Repel</a> — <span style="color: var(--accent-red);">interrupt EVERY cast.</span> Knockback near ledges is lethal.`,
              ],
            },
          },
          {
            type: "mob",
            data: {
              name: "Adorned Bladetalon (Immune to CC)",
              nameHtml: `Adorned Bladetalon <span style="color: var(--accent-red); font-size: 12px;">(Immune to CC)</span>`,
              tankRelevant: true,
              abilitiesHtml: [
                `<a href="https://www.wowhead.com/beta/spell=1254475/blade-rush">Blade Rush</a> — dashes to 2 random players + tank. Applies bleed. Use bleed cleanse or defensives.`,
                `<a href="https://www.wowhead.com/beta/spell=1254380/shear">Shear</a> — <span style="color: var(--tank-color); font-weight: 600;">TANK: Debuff on you. Dangerous if overlapping with Blade Rush — use a defensive.</span>`,
              ],
            },
          },
          {
            type: "mob",
            data: {
              name: "Dread Raven (Immune to CC)",
              nameHtml: `Dread Raven <span style="color: var(--accent-red); font-size: 12px;">(Immune to CC)</span>`,
              tankRelevant: false,
              abilitiesHtml: [
                `<a href="https://www.wowhead.com/beta/spell=1258174/dread-wind">Dread Wind</a> — knockback on random player. <span class="warn">Don't get knocked off the platform.</span>`,
                `<a href="https://www.wowhead.com/beta/spell=1254566/dire-screech">Dire Screech</a> — heavy group damage. Top group beforehand, use group defensives.`,
              ],
            },
          },
        ],
      },
    },
    {
      type: "boss",
      data: {
        bossNumber: "Boss 1",
        name: "Ranjit",
        subtitle: "Dodge-heavy fight — rotate the room dropping wind orbs, avoid tornadoes at full energy",
        image: "/assets/ranjit_boss_fight.jpg",
        abilities: [
          {
            name: "Fan Of Blades",
            wowheadUrl: "https://www.wowhead.com/beta/spell=153757/fan-of-blades",
            role: "healer",
            importance: "healer-important",
            descriptionHtml: `<ul><li>Applies bleed to all players.</li><li>Use bleed cleanses if available.</li></ul>`,
          },
          {
            name: "Gale Surge",
            wowheadUrl: "https://www.wowhead.com/beta/spell=1252690/gale-surge",
            role: "everyone",
            importance: "everyone-important",
            descriptionHtml: `<ul><li>Knocks back on impact, leaves a wind orb for 60s.</li><li><span class="tip">Drop orbs together and rotate the room in one direction. Always drop behind the boss.</span></li></ul>`,
          },
          {
            name: "Wind Chakram",
            wowheadUrl: "https://www.wowhead.com/beta/spell=1258152/wind-chakram",
            role: "everyone",
            importance: "everyone-important",
            descriptionHtml: `<ul><li>Line projectile at random player that returns to boss.</li><li><span class="warn">Heavy damage if hit.</span></li><li>Bait away from group movement direction, step out before cast finishes.</li></ul>`,
          },
          {
            name: "Chakram Vortex",
            wowheadUrl: "https://www.wowhead.com/beta/spell=156793/chakram-vortex",
            role: "everyone",
            importance: "everyone-important",
            descriptionHtml: `<ul><li>Full energy cast.</li><li>AoE in centre + rotating tornadoes for 20s.</li><li>Avoid where tornado waves intersect.</li></ul>`,
          },
        ],
      },
    },
    { type: "divider" },
    {
      type: "trash",
      data: {
        header: "Solar Sanctum — Trash Before Araknath",
        content: [
          {
            type: "mob",
            data: {
              name: "Blinding Sun Priestess",
              nameHtml: `Blinding Sun Priestess`,
              tankRelevant: false,
              abilitiesHtml: [
                `<a href="https://www.wowhead.com/beta/spell=152953/blinding-light">Blinding Light</a> — <span style="color: var(--accent-red);">interrupt EVERY cast.</span>`,
                `<a href="https://www.wowhead.com/beta/spell=1273356/solar-barrier">Solar Barrier</a> — buffs a random ally. Purge it off or focus the mob.`,
              ],
            },
          },
          {
            type: "mob",
            data: {
              name: "Adept of the Dawn",
              nameHtml: `Adept of the Dawn`,
              tankRelevant: true,
              abilitiesHtml: [
                `<a href="https://www.wowhead.com/beta/spell=1254672/fiery-talon">Fiery Talon</a> — <span style="color: var(--tank-color); font-weight: 600;">TANK: Stacking debuff from melee hits. Kite or use a defensive to drop stacks.</span>`,
              ],
            },
          },
          {
            type: "mob",
            data: {
              name: "Initiate of the Rising Sun",
              nameHtml: `Initiate of the Rising Sun`,
              tankRelevant: false,
              abilitiesHtml: [
                `<a href="https://www.wowhead.com/beta/spell=1254669/solar-bolt">Solar Bolt</a> — use spare interrupts on this.`,
              ],
            },
          },
          {
            type: "mob",
            data: {
              name: "Solar Elemental (Immune to CC)",
              nameHtml: `Solar Elemental <span style="color: var(--accent-red); font-size: 12px;">(Immune to CC)</span>`,
              tankRelevant: false,
              abilitiesHtml: [
                `<a href="https://www.wowhead.com/beta/spell=1254329/solar-orb">Solar Orb</a> — swap to the orb when it spawns and kill it ASAP.`,
                `<a href="https://www.wowhead.com/beta/spell=1258217/solar-fire">Solar Fire</a> — avoid the ground circles.`,
              ],
            },
          },
          {
            type: "mob",
            data: {
              name: "Solar Construct (Immune to CC)",
              nameHtml: `Solar Construct <span style="color: var(--accent-red); font-size: 12px;">(Immune to CC)</span>`,
              tankRelevant: false,
              abilitiesHtml: [
                `<a href="https://www.wowhead.com/beta/spell=1253446/solar-flame">Solar Flame</a> — use defensives or combat drop if targeted.`,
                `<a href="https://www.wowhead.com/beta/spell=1253448/solar-nova">Solar Nova</a> — get out of the AoE underneath this mob.`,
              ],
            },
          },
        ],
      },
    },
    {
      type: "boss",
      data: {
        bossNumber: "Boss 2",
        name: "Araknath",
        subtitle: "Stationary boss — intercept construct beams, dodge line attacks, never leave melee",
        image: "/assets/araknath_boss_fight.jpg",
        abilities: [
          {
            name: "Defensive Protocol",
            wowheadUrl: "https://www.wowhead.com/beta/spell=1283770/defensive-protocol",
            role: "tank",
            importance: "tank-important",
            descriptionHtml: `<ul><li>Boss is stationary with a fire ring underneath.</li><li><span class="warn">Never leave melee range</span> — boss spams <a href="https://www.wowhead.com/beta/spell=1279002/blast-wave">Blast Wave</a> if no one is in melee, likely wiping the group.</li></ul>`,
          },
          {
            name: "Fiery Smash",
            wowheadUrl: "https://www.wowhead.com/beta/spell=154110/fiery-smash",
            role: "tank",
            importance: "tank-important",
            descriptionHtml: `<ul><li>Line attack on tank.</li><li><span class="warn">Aim away from energized constructs and dodge it — massive damage even for tanks.</span></li></ul>`,
          },
          {
            name: "Energize — Beam Soaking",
            wowheadUrl: "https://www.wowhead.com/beta/spell=154139/energize",
            role: "healer",
            importance: "healer-important",
            descriptionHtml: `<ul><li>Non-tank players intercept beams — deals <span class="warn">heavy sustained damage</span> to soakers.</li><li>Be ready with healing CDs when 3 beams activate simultaneously.</li></ul>`,
          },
          {
            name: "Energize",
            wowheadUrl: "https://www.wowhead.com/beta/spell=154139/energize",
            role: "everyone",
            importance: "everyone-important",
            descriptionHtml: `<ul><li>3 constructs beam the boss, healing it and stacking <a href="https://www.wowhead.com/beta/spell=1252877/solar-infusion">Solar Infusion</a>.</li><li><strong>Non-tank players intercept beams</strong> (heavy damage — use defensives).</li><li>After 12s channel, constructs fire <a href="https://www.wowhead.com/beta/spell=1281874/heat-exhaustion">Heat Exhaustion</a> frontal — sidestep it.</li></ul>`,
          },
          {
            name: "Supernova",
            wowheadUrl: "https://www.wowhead.com/beta/spell=154135/supernova",
            role: "everyone",
            importance: "everyone-important",
            descriptionHtml: `<ul><li>Full energy cast.</li><li>Group-wide hit increased by 5% per <a href="https://www.wowhead.com/beta/spell=1252877/solar-infusion">Solar Infusion</a> stack.</li><li><span class="warn">Never let beams go through unblocked.</span></li></ul>`,
          },
        ],
      },
    },
    { type: "divider" },
    {
      type: "trash",
      data: {
        header: "Sun's Edge — Trash Before Rukhran",
        content: [
          {
            type: "mob",
            data: {
              name: "Sun Talon Tamer",
              nameHtml: `Sun Talon Tamer`,
              tankRelevant: true,
              abilitiesHtml: [
                `<a href="https://www.wowhead.com/beta/spell=1254686/mark-of-death">Mark Of Death</a> — <span style="color: var(--tank-color); font-weight: 600;">TANK: Kite if debuffed. Use defensives as needed.</span>`,
              ],
            },
          },
          {
            type: "mob",
            data: {
              name: "Skyreach Sun Talon",
              nameHtml: `Skyreach Sun Talon`,
              tankRelevant: false,
              abilitiesHtml: [
                `<a href="https://www.wowhead.com/beta/spell=1254690/bloodcrazed">Bloodcrazed</a> — CC these mobs when they enrage.`,
              ],
            },
          },
        ],
      },
    },
    {
      type: "boss",
      data: {
        bossNumber: "Boss 3",
        name: "Rukhran",
        subtitle: "Add management — kill Sunwings away from eggs, LoS behind pillar at full energy",
        image: "/assets/rukhran_boss_fight.jpg",
        abilities: [
          {
            name: "Burning Claws",
            wowheadUrl: "https://www.wowhead.com/beta/spell=1253519/burning-claws",
            role: "tank",
            importance: "tank-important",
            descriptionHtml: `<ul><li><span class="warn">Use a defensive for every cast.</span></li><li>Stay in melee at all times — boss casts <a href="https://www.wowhead.com/beta/spell=153898/screech">Screech</a> if no one is in range.</li></ul>`,
          },
          {
            name: "Burning Pursuit",
            wowheadUrl: "https://www.wowhead.com/beta/spell=1253511/burning-pursuit",
            role: "healer",
            importance: "healer-important",
            descriptionHtml: `<ul><li>Sunwing fixates a player — heavy pulsing damage while alive.</li><li>Be ready with spot healing and CDs on the fixate target until DPS kill the add.</li></ul>`,
          },
          {
            name: "Sunbreak",
            wowheadUrl: "https://www.wowhead.com/beta/spell=1253510/sunbreak",
            role: "everyone",
            importance: "everyone-important",
            descriptionHtml: `<ul><li>Spawns a Sunwing add that fixates a random player with <a href="https://www.wowhead.com/beta/spell=1253511/burning-pursuit">Burning Pursuit</a>.</li><li><span class="warn">Kill adds away from eggs — killing a Sunwing on an egg resurrects it.</span></li></ul>`,
          },
          {
            name: "Searing Quills",
            wowheadUrl: "https://www.wowhead.com/beta/spell=159381/searing-quills",
            role: "everyone",
            importance: "everyone-important",
            descriptionHtml: `<ul><li>Full energy cast.</li><li><span class="warn">Lethal to anyone in LoS.</span></li><li>Entire group must hide behind the central pillar.</li><li><span class="tip">Tank: get back to boss quickly after to prevent Screech.</span></li></ul>`,
          },
          {
            name: "Sunwing Priority",
            wowheadUrl: "https://www.wowhead.com/beta/spell=1253510/sunbreak",
            role: "dps",
            importance: null,
            descriptionHtml: `<ul><li>Swap to Sunwing adds immediately — every second alive is heavy pulsing damage on the fixate target.</li><li><span class="tip">Use CCs and kiting to keep adds away from existing eggs.</span></li></ul>`,
          },
        ],
      },
    },
    { type: "divider" },
    {
      type: "boss",
      data: {
        bossNumber: "Boss 4",
        name: "High Sage Viryx",
        subtitle: "Interrupt rotation on tank cast, burst Solar Zealot adds, dodge the beam at full energy",
        image: "/assets/high_sage_viryx_boss_fight.jpg",
        abilities: [
          {
            name: "Solar Blast",
            wowheadUrl: "https://www.wowhead.com/beta/spell=154396/solar-blast",
            role: "tank",
            importance: "tank-important",
            descriptionHtml: `<ul><li><span class="warn">Keep an interrupt rotation on this cast.</span></li><li>Repeated casts on the tank — uninterrupted casts deal heavy damage.</li></ul>`,
          },
          {
            name: "Scorching Ray",
            wowheadUrl: "https://www.wowhead.com/beta/spell=1253543/scorching-ray",
            role: "healer",
            importance: "healer-important",
            descriptionHtml: `<ul><li>Beams 3 players for damage + 5s DoT.</li><li>Consistent group damage throughout the fight — plan mana and CDs accordingly.</li></ul>`,
          },
          {
            name: "Cast Down",
            wowheadUrl: "https://www.wowhead.com/beta/spell=153954/cast-down",
            role: "everyone",
            importance: "everyone-important",
            descriptionHtml: `<ul><li>Solar Zealot spawns above a random player and drags them to the nearest edge.</li><li><strong>Burst the add + use stuns</strong> (knockbacks don't work).</li><li><span class="tip">If targeted, position near the entrance to maximize distance to the edge.</span></li></ul>`,
          },
          {
            name: "Lens Flare",
            wowheadUrl: "https://www.wowhead.com/beta/spell=154044/lens-flare",
            role: "everyone",
            importance: "everyone-important",
            descriptionHtml: `<ul><li>Full energy cast.</li><li>Beam chases a player (red arrow), leaving puddle trail.</li><li><span class="warn">Run away from group along platform edges.</span></li><li>Initial hit is hard to dodge — use a defensive if targeted.</li></ul>`,
          },
          {
            name: "Solar Blast Rotation",
            wowheadUrl: "https://www.wowhead.com/beta/spell=154396/solar-blast",
            role: "dps",
            importance: null,
            descriptionHtml: `<ul><li>Help the tank by contributing interrupts to <a href="https://www.wowhead.com/beta/spell=154396/solar-blast">Solar Blast</a>.</li><li><span class="tip">Set up a kick rotation — this cast is frequent and uninterrupted casts hit hard.</span></li></ul>`,
          },
          {
            name: "Solar Zealot Priority",
            wowheadUrl: "https://www.wowhead.com/beta/spell=153954/cast-down",
            role: "dps",
            importance: null,
            descriptionHtml: `<ul><li>Swap to Solar Zealot immediately when it spawns — stun it to slow the drag.</li><li><span class="warn">If the add reaches the edge, the grabbed player dies.</span></li></ul>`,
          },
        ],
      },
    },
  ],
};
