diff --git a/README.md b/README.md index 5d5f545..23e8657 100644 --- a/README.md +++ b/README.md @@ -68,6 +68,8 @@ src/ │ ├── loldle/ # classic-mode LoL champion guessing (KV storage) │ ├── loldle-emoji/ # emoji-clue LoL champion guessing (KV storage) │ ├── loldle-quote/ # lore-blurb LoL champion guessing (KV storage) +│ ├── loldle-ability/ # ability-icon LoL champion guessing (KV storage) +│ ├── loldle-splash/ # splash-art LoL champion guessing (KV storage) │ └── misc/ # stub (KV storage) └── util/ └── escape-html.js @@ -198,6 +200,14 @@ TL;DR: | `npm run register` exits `missing env: X` | Add `X` to `.env.deploy`. | | `--env-file` flag not recognized | Node < 20.6. Upgrade Node. | +## Credits + +The `loldle` module family (classic, emoji, quote, ability, splash) is +inspired by [**loldle.net**](https://loldle.net/). Classic's champion +metadata and splash mode's skin pool are scraped from their JS bundle; +other modes derive or generate data from [Riot Data Dragon](https://ddragon.leagueoflegends.com/). +League of Legends, champion art, and ability icons are © Riot Games. + ## Further reading - [`docs/architecture.md`](docs/architecture.md) — deeper dive: cold-start, module lifecycle, KV + D1 storage, cron dispatch, deploy flow, design tradeoffs. diff --git a/plans/260424-2215-loldle-new-modes/plan.md b/plans/260424-2215-loldle-new-modes/plan.md index 00fd697..2e4ed04 100644 --- a/plans/260424-2215-loldle-new-modes/plan.md +++ b/plans/260424-2215-loldle-new-modes/plan.md @@ -1,6 +1,6 @@ --- name: loldle-new-modes -status: mvp-shipped +status: completed created: 2026-04-24 updated: 2026-04-24 slug: loldle-new-modes @@ -44,9 +44,9 @@ All `public`. Conflict-checked at registry load time. | 01 | [Shared scrape + lookup helpers](phase-01-shared-helpers.md) | **done** | — | | 02 | [Emoji module](phase-02-emoji-module.md) | **done** | 01 | | 03 | [Quote module (text-only)](phase-03-quote-module.md) | **done** | 01 | -| 04 | [Ability module (Data Dragon)](phase-04-ability-module.md) | **deferred** | 01 | -| 05 | [Splash module (Data Dragon)](phase-05-splash-module.md) | **deferred** | 01 | -| 06 | [Tests + docs sync](phase-06-tests-docs.md) | **done** | 02,03 | +| 04 | [Ability module (Data Dragon)](phase-04-ability-module.md) | **done** | 01 | +| 05 | [Splash module (Data Dragon)](phase-05-splash-module.md) | **done** | 01 | +| 06 | [Tests + docs sync](phase-06-tests-docs.md) | **done** | 02,03,04,05 | **Shipping plan (validated):** - **Now:** 01 → 02 + 03 in parallel → 06 (tests for emoji + quote only). @@ -99,6 +99,23 @@ All `public`. Conflict-checked at registry load time. `scrape-loldle-data.js` left untouched (classic only). - 35 new tests, 484 total passing. Lint clean. +**Shipped 2026-04-24 (deferred phases — ability + splash).** +- Phase 04/05 complete. Plan now fully shipped. +- **Bundle re-probe:** loldle.net's bundle DOES ship the full splash pool + (var `Ad=[...]` — 172 champs × skin-name lists with translations). + Scraped it (regex-split on `championName:"…"` markers to handle the + nested translations arrays). Ability pool still not in bundle — pulled + from DDragon per-champion (172 parallel fetches, concurrency 10). +- `fetch-ddragon-data.js` extended: now writes all four JSONs in one run + (emojis, quotes, abilities, splashes). Single DDragon per-champion + fetch cycle shared between abilities + splash skin IDs. +- Splash pool mirrors loldle.net exactly (non-chroma skins, 1939 total + skins across 172 champions). URLs from Riot Data Dragon CDN (no + version segment — stable across patches). +- Credits added to all four loldle-family READMEs + main README. +- 19 more tests (503 total). Lint clean. register:dry shows 12 new + public commands across the 4 modes with no conflicts. + ## Validation Log **Session 1 — 2026-04-24 (7 questions answered)** diff --git a/scripts/fetch-ddragon-data.js b/scripts/fetch-ddragon-data.js index 9a26daa..f8abc31 100644 --- a/scripts/fetch-ddragon-data.js +++ b/scripts/fetch-ddragon-data.js @@ -218,6 +218,174 @@ async function buildQuotes() { return out; } +// ───── shared DDragon per-champion cache ───── +// Ability and splash builders both need per-champion details. One fetch +// cycle populates a shared cache to avoid 340 redundant HTTP requests. + +async function mapWithConcurrency(items, limit, fn) { + const out = new Array(items.length); + let next = 0; + const workers = Array.from({ length: limit }, async () => { + while (true) { + const i = next++; + if (i >= items.length) return; + out[i] = await fn(items[i], i); + } + }); + await Promise.all(workers); + return out; +} + +async function fetchDdragonDetails() { + const versions = await fetchJson("https://ddragon.leagueoflegends.com/api/versions.json"); + const v = versions[0]; + console.log(` DDragon version: ${v}`); + const summary = await fetchJson( + `https://ddragon.leagueoflegends.com/cdn/${v}/data/en_US/champion.json`, + ); + const summaryByKey = summary.data; + const normMap = new Map(); + for (const k of Object.keys(summaryByKey)) { + normMap.set(k.toLowerCase().replace(/[^a-z0-9]/g, ""), k); + } + function resolveKey(championName) { + const attempted = ddragonKey(championName); + if (summaryByKey[attempted]) return attempted; + const norm = attempted.toLowerCase().replace(/[^a-z0-9]/g, ""); + return normMap.get(norm) ?? null; + } + // Fetch per-champion in parallel with a polite concurrency cap. ~172 + // requests to a CDN — finishes in ~15-25s. + const tasks = championsData.map((c) => ({ champ: c, key: resolveKey(c.championName) })); + console.log(` fetching ${tasks.length} champion details (concurrency 10)…`); + const details = await mapWithConcurrency(tasks, 10, async ({ champ, key }) => { + if (!key) return { champ, key: null, data: null }; + const full = await fetchJson( + `https://ddragon.leagueoflegends.com/cdn/${v}/data/en_US/champion/${key}.json`, + ); + return { champ, key, data: full.data[key] }; + }); + return { version: v, details }; +} + +// ───── loldle.net splash-pool scrape ───── + +async function scrapeLoldleSplashPool() { + const pageRes = await fetch("https://loldle.net/splash"); + const page = await pageRes.text(); + const bundleMatch = page.match(/js\/index\.[^"]+\.js/); + if (!bundleMatch) throw new Error("loldle.net: could not find index.js bundle"); + const bundleRes = await fetch(`https://loldle.net/${bundleMatch[0]}`); + const bundle = await bundleRes.text(); + // `Ad=[{championName:"…",splashes:[{name:"…",translations:[…]}…]}…]` — + // the bundle's splash pool used by loldle.net's guess validator. We pull + // names only; translations and champion order can be ignored. + const championStart = bundle.indexOf('Ad=[{championName:"Aatrox"'); + if (championStart < 0) { + throw new Error("loldle.net: splash pool variable `Ad` not found — bundle format drifted"); + } + // Each champion block has nested translations arrays, so a naïve + // non-greedy `[…]` match terminates too early. Instead, slice the + // splash-pool region and split on `championName:"` — each segment is + // one champion's block; skin names inside are `{name:"…",translations:`. + const endMarker = bundle.indexOf("];", championStart); + if (endMarker < 0) throw new Error("loldle.net: could not find end of splash pool"); + const region = bundle.slice(championStart + 3, endMarker); // skip `Ad=` prefix + const championRx = /championName:"([^"]+)"/g; + const pool = new Map(); + const championMatches = [...region.matchAll(championRx)]; + for (let i = 0; i < championMatches.length; i++) { + const name = championMatches[i][1]; + const start = championMatches[i].index; + const end = i + 1 < championMatches.length ? championMatches[i + 1].index : region.length; + const slice = region.slice(start, end); + const skinNames = [...slice.matchAll(/\{name:"([^"]+)",translations:/g)].map((x) => x[1]); + pool.set(name, skinNames); + } + if (pool.size === 0) { + throw new Error("loldle.net: parsed zero splash entries — regex drifted"); + } + console.log(` scraped ${pool.size} champions from loldle.net splash pool`); + return pool; +} + +// ───── abilities.json builder ───── + +function abilityIconUrl(version, imageFull, isPassive) { + const segment = isPassive ? "passive" : "spell"; + return `https://ddragon.leagueoflegends.com/cdn/${version}/img/${segment}/${imageFull}`; +} + +function buildAbilities(version, details) { + const out = []; + const missing = []; + const SLOTS = ["Q", "W", "E", "R"]; + for (const { champ, key, data } of details) { + if (!data) { + missing.push(champ.championName); + continue; + } + const abilities = [ + { + slot: "P", + name: data.passive.name, + icon: abilityIconUrl(version, data.passive.image.full, true), + }, + ]; + data.spells.slice(0, 4).forEach((s, i) => { + abilities.push({ + slot: SLOTS[i], + name: s.name, + icon: abilityIconUrl(version, s.image.full, false), + }); + }); + out.push({ championName: champ.championName, key, abilities }); + } + if (missing.length) console.warn(` WARN: abilities missing for ${missing.join(", ")}`); + return out.sort((a, b) => a.championName.localeCompare(b.championName)); +} + +// ───── splashes.json builder ───── + +function splashUrl(championKey, skinNum) { + // DDragon splash URLs have NO version segment. Stable across patches. + return `https://ddragon.leagueoflegends.com/cdn/img/champion/splash/${championKey}_${skinNum}.jpg`; +} + +function buildSplashes(details, loldlePool) { + const out = []; + const missing = []; + for (const { champ, key, data } of details) { + if (!data) { + missing.push(champ.championName); + continue; + } + // Loldle's pool defines WHICH skins are in play (names). DDragon gives + // URL num + "default" skin normalization. Normalize both to match. + const allowedNames = loldlePool.get(champ.championName); + const norm = (s) => s.toLowerCase().replace(/[^a-z0-9]/g, ""); + const allowedSet = allowedNames ? new Set(allowedNames.map(norm)) : null; + const skins = []; + for (const s of data.skins) { + // DDragon labels base skin "default" — loldle.net calls it "Default". + const displayName = s.name === "default" ? "Default" : s.name; + if (allowedSet && !allowedSet.has(norm(displayName))) continue; + skins.push({ + id: Number(s.num), + name: displayName, + url: splashUrl(key, s.num), + }); + } + if (skins.length === 0) { + missing.push(`${champ.championName} (no skins matched pool)`); + continue; + } + out.push({ championName: champ.championName, skins }); + } + if (missing.length) console.warn(` WARN: splashes missing for ${missing.join(", ")}`); + return out.sort((a, b) => a.championName.localeCompare(b.championName)); +} + // ───── main ───── const root = resolve(import.meta.dirname, ".."); @@ -237,3 +405,21 @@ const quotesPath = resolve(root, "src/modules/loldle-quote/quotes.json"); mkdirSync(resolve(quotesPath, ".."), { recursive: true }); writeFileSync(quotesPath, `${JSON.stringify(quotes, null, 4)}\n`); console.log(`wrote ${quotesPath} (${quotes.length} champions)`); + +console.log("fetching DDragon champion details (spells, passives, skins)…"); +const { version: ddragonVersion, details } = await fetchDdragonDetails(); + +const abilities = buildAbilities(ddragonVersion, details); +const abilitiesPath = resolve(root, "src/modules/loldle-ability/abilities.json"); +mkdirSync(resolve(abilitiesPath, ".."), { recursive: true }); +writeFileSync(abilitiesPath, `${JSON.stringify(abilities, null, 4)}\n`); +console.log(`wrote ${abilitiesPath} (${abilities.length} champions)`); + +console.log("scraping loldle.net splash pool…"); +const loldleSplashPool = await scrapeLoldleSplashPool(); + +const splashes = buildSplashes(details, loldleSplashPool); +const splashesPath = resolve(root, "src/modules/loldle-splash/splashes.json"); +mkdirSync(resolve(splashesPath, ".."), { recursive: true }); +writeFileSync(splashesPath, `${JSON.stringify(splashes, null, 4)}\n`); +console.log(`wrote ${splashesPath} (${splashes.length} champions)`); diff --git a/src/modules/index.js b/src/modules/index.js index 20979a9..d3a1b5f 100644 --- a/src/modules/index.js +++ b/src/modules/index.js @@ -14,6 +14,8 @@ export const moduleRegistry = { loldle: () => import("./loldle/index.js"), "loldle-emoji": () => import("./loldle-emoji/index.js"), "loldle-quote": () => import("./loldle-quote/index.js"), + "loldle-ability": () => import("./loldle-ability/index.js"), + "loldle-splash": () => import("./loldle-splash/index.js"), misc: () => import("./misc/index.js"), trading: () => import("./trading/index.js"), lolschedule: () => import("./lolschedule/index.js"), diff --git a/src/modules/loldle-ability/README.md b/src/modules/loldle-ability/README.md new file mode 100644 index 0000000..c3d6b02 --- /dev/null +++ b/src/modules/loldle-ability/README.md @@ -0,0 +1,37 @@ +# loldle-ability + +Guess the champion from a single ability icon (passive, Q, W, E, or R). +Binary right/wrong. 5 guesses per round. + +## Commands + +| Command | Visibility | Description | +|---|---|---| +| `/loldle_ability` | public | Show current ability icon / submit a guess with `/loldle_ability ` | +| `/loldle_ability_giveup` | public | Reveal the answer, record loss | +| `/loldle_ability_stats` | public | Show per-subject play stats | + +## Storage + +KV prefix: `loldle-ability:` +- `game:` — `{target, slot, guesses, startedAt}`. `slot` persists so + the same icon shows across every guess in a round. +- `stats:` — `{played, wins, streak, bestStreak}` + +## Data source + +`abilities.json` is generated by `npm run fetch:ddragon-data` directly from +[Riot Data Dragon](https://ddragon.leagueoflegends.com/) — the same CDN +that [loldle.net](https://loldle.net/) uses at runtime. Version is baked +into each icon URL, so re-run after patch bumps to refresh. + +Credits: +- Game concept inspired by [loldle.net](https://loldle.net/)'s ability mode. +- Icons © Riot Games, served from their public Data Dragon CDN. + +## Design notes + +- **No progressive crop** — full icon from turn 1. Shorter guess budget (5) + balances difficulty vs. loldle.net's unlimited-guess progressive-reveal. +- **No slot-ID bonus** — the mode ends on correct champion guess. Slot is + named in the reveal, not asked. diff --git a/src/modules/loldle-ability/abilities.json b/src/modules/loldle-ability/abilities.json new file mode 100644 index 0000000..44de7f9 --- /dev/null +++ b/src/modules/loldle-ability/abilities.json @@ -0,0 +1,5334 @@ +[ + { + "championName": "Aatrox", + "key": "Aatrox", + "abilities": [ + { + "slot": "P", + "name": "Deathbringer Stance", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Aatrox_Passive.png" + }, + { + "slot": "Q", + "name": "The Darkin Blade", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AatroxQ.png" + }, + { + "slot": "W", + "name": "Infernal Chains", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AatroxW.png" + }, + { + "slot": "E", + "name": "Umbral Dash", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AatroxE.png" + }, + { + "slot": "R", + "name": "World Ender", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AatroxR.png" + } + ] + }, + { + "championName": "Ahri", + "key": "Ahri", + "abilities": [ + { + "slot": "P", + "name": "Essence Theft", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Ahri_SoulEater2.png" + }, + { + "slot": "Q", + "name": "Orb of Deception", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AhriQ.png" + }, + { + "slot": "W", + "name": "Fox-Fire", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AhriW.png" + }, + { + "slot": "E", + "name": "Charm", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AhriE.png" + }, + { + "slot": "R", + "name": "Spirit Rush", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AhriR.png" + } + ] + }, + { + "championName": "Akali", + "key": "Akali", + "abilities": [ + { + "slot": "P", + "name": "Assassin's Mark", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Akali_P.png" + }, + { + "slot": "Q", + "name": "Five Point Strike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AkaliQ.png" + }, + { + "slot": "W", + "name": "Twilight Shroud", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AkaliW.png" + }, + { + "slot": "E", + "name": "Shuriken Flip", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AkaliE.png" + }, + { + "slot": "R", + "name": "Perfect Execution", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AkaliR.png" + } + ] + }, + { + "championName": "Akshan", + "key": "Akshan", + "abilities": [ + { + "slot": "P", + "name": "Dirty Fighting", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/akshan_p.png" + }, + { + "slot": "Q", + "name": "Avengerang", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AkshanQ.png" + }, + { + "slot": "W", + "name": "Going Rogue", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AkshanW.png" + }, + { + "slot": "E", + "name": "Heroic Swing", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AkshanE.png" + }, + { + "slot": "R", + "name": "Comeuppance", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AkshanR.png" + } + ] + }, + { + "championName": "Alistar", + "key": "Alistar", + "abilities": [ + { + "slot": "P", + "name": "Triumphant Roar", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Alistar_E.png" + }, + { + "slot": "Q", + "name": "Pulverize", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Pulverize.png" + }, + { + "slot": "W", + "name": "Headbutt", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Headbutt.png" + }, + { + "slot": "E", + "name": "Trample", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AlistarE.png" + }, + { + "slot": "R", + "name": "Unbreakable Will", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/FerociousHowl.png" + } + ] + }, + { + "championName": "Ambessa", + "key": "Ambessa", + "abilities": [ + { + "slot": "P", + "name": "Drakehound's Step", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Icon_Ambessa_Passive.Domina.png" + }, + { + "slot": "Q", + "name": "Cunning Sweep / Sundering Slam", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AmbessaQ.png" + }, + { + "slot": "W", + "name": "Repudiation", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AmbessaW.png" + }, + { + "slot": "E", + "name": "Lacerate", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AmbessaE.png" + }, + { + "slot": "R", + "name": "Public Execution", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AmbessaR.png" + } + ] + }, + { + "championName": "Amumu", + "key": "Amumu", + "abilities": [ + { + "slot": "P", + "name": "Cursed Touch", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Amumu_Passive.png" + }, + { + "slot": "Q", + "name": "Bandage Toss", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BandageToss.png" + }, + { + "slot": "W", + "name": "Despair", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AuraofDespair.png" + }, + { + "slot": "E", + "name": "Tantrum", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Tantrum.png" + }, + { + "slot": "R", + "name": "Curse of the Sad Mummy", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/CurseoftheSadMummy.png" + } + ] + }, + { + "championName": "Anivia", + "key": "Anivia", + "abilities": [ + { + "slot": "P", + "name": "Rebirth", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Anivia_P.png" + }, + { + "slot": "Q", + "name": "Flash Frost", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/FlashFrost.png" + }, + { + "slot": "W", + "name": "Crystallize", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Crystallize.png" + }, + { + "slot": "E", + "name": "Frostbite", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Frostbite.png" + }, + { + "slot": "R", + "name": "Glacial Storm", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GlacialStorm.png" + } + ] + }, + { + "championName": "Annie", + "key": "Annie", + "abilities": [ + { + "slot": "P", + "name": "Pyromania", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Annie_Passive.png" + }, + { + "slot": "Q", + "name": "Disintegrate", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AnnieQ.png" + }, + { + "slot": "W", + "name": "Incinerate", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AnnieW.png" + }, + { + "slot": "E", + "name": "Molten Shield", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AnnieE.png" + }, + { + "slot": "R", + "name": "Summon: Tibbers", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AnnieR.png" + } + ] + }, + { + "championName": "Aphelios", + "key": "Aphelios", + "abilities": [ + { + "slot": "P", + "name": "The Hitman and the Seer", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/ApheliosP.png" + }, + { + "slot": "Q", + "name": "Weapon Abilites", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ApheliosQ_ClientTooltipWrapper.png" + }, + { + "slot": "W", + "name": "Phase", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ApheliosW.png" + }, + { + "slot": "E", + "name": "Weapon Queue System", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ApheliosE_ClientTooltipWrapper.png" + }, + { + "slot": "R", + "name": "Moonlight Vigil", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ApheliosR.png" + } + ] + }, + { + "championName": "Ashe", + "key": "Ashe", + "abilities": [ + { + "slot": "P", + "name": "Frost Shot", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Ashe_P.png" + }, + { + "slot": "Q", + "name": "Ranger's Focus", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AsheQ.png" + }, + { + "slot": "W", + "name": "Volley", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Volley.png" + }, + { + "slot": "E", + "name": "Hawkshot", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AsheSpiritOfTheHawk.png" + }, + { + "slot": "R", + "name": "Enchanted Crystal Arrow", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EnchantedCrystalArrow.png" + } + ] + }, + { + "championName": "Aurelion Sol", + "key": "AurelionSol", + "abilities": [ + { + "slot": "P", + "name": "Cosmic Creator", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/AurelionSolP.png" + }, + { + "slot": "Q", + "name": "Breath of Light", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AurelionSolQ.png" + }, + { + "slot": "W", + "name": "Astral Flight", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AurelionSolW.png" + }, + { + "slot": "E", + "name": "Singularity", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AurelionSolE.png" + }, + { + "slot": "R", + "name": "Falling Star / The Skies Descend", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AurelionSolR.png" + } + ] + }, + { + "championName": "Aurora", + "key": "Aurora", + "abilities": [ + { + "slot": "P", + "name": "Spirit Abjuration", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/AuroraPassive.Aurora.png" + }, + { + "slot": "Q", + "name": "Twofold Hex", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AuroraQ.png" + }, + { + "slot": "W", + "name": "Across the Veil", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AuroraW.png" + }, + { + "slot": "E", + "name": "The Weirding", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AuroraE.png" + }, + { + "slot": "R", + "name": "Between Worlds", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AuroraR.png" + } + ] + }, + { + "championName": "Azir", + "key": "Azir", + "abilities": [ + { + "slot": "P", + "name": "Shurima's Legacy", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Azir_Passive.png" + }, + { + "slot": "Q", + "name": "Conquering Sands", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AzirQWrapper.png" + }, + { + "slot": "W", + "name": "Arise!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AzirW.png" + }, + { + "slot": "E", + "name": "Shifting Sands", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AzirEWrapper.png" + }, + { + "slot": "R", + "name": "Emperor's Divide", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AzirR.png" + } + ] + }, + { + "championName": "Bard", + "key": "Bard", + "abilities": [ + { + "slot": "P", + "name": "Traveler's Call", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Bard_Passive.png" + }, + { + "slot": "Q", + "name": "Cosmic Binding", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BardQ.png" + }, + { + "slot": "W", + "name": "Caretaker's Shrine", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BardW.png" + }, + { + "slot": "E", + "name": "Magical Journey", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BardE.png" + }, + { + "slot": "R", + "name": "Tempered Fate", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BardR.png" + } + ] + }, + { + "championName": "Bel'Veth", + "key": "Belveth", + "abilities": [ + { + "slot": "P", + "name": "Death in Lavender ", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Belveth_Passive.png" + }, + { + "slot": "Q", + "name": "Void Surge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BelvethQ.png" + }, + { + "slot": "W", + "name": "Above and Below", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BelvethW.png" + }, + { + "slot": "E", + "name": "Royal Maelstrom", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BelvethE.png" + }, + { + "slot": "R", + "name": "Endless Banquet", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BelvethR.png" + } + ] + }, + { + "championName": "Blitzcrank", + "key": "Blitzcrank", + "abilities": [ + { + "slot": "P", + "name": "Mana Barrier", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Blitzcrank_ManaBarrier.png" + }, + { + "slot": "Q", + "name": "Rocket Grab", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RocketGrab.png" + }, + { + "slot": "W", + "name": "Overdrive", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Overdrive.png" + }, + { + "slot": "E", + "name": "Power Fist", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PowerFist.png" + }, + { + "slot": "R", + "name": "Static Field", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/StaticField.png" + } + ] + }, + { + "championName": "Brand", + "key": "Brand", + "abilities": [ + { + "slot": "P", + "name": "Blaze", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/BrandP.png" + }, + { + "slot": "Q", + "name": "Sear", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BrandQ.png" + }, + { + "slot": "W", + "name": "Pillar of Flame", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BrandW.png" + }, + { + "slot": "E", + "name": "Conflagration", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BrandE.png" + }, + { + "slot": "R", + "name": "Pyroclasm", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BrandR.png" + } + ] + }, + { + "championName": "Braum", + "key": "Braum", + "abilities": [ + { + "slot": "P", + "name": "Concussive Blows", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Braum_Passive.png" + }, + { + "slot": "Q", + "name": "Winter's Bite", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BraumQ.png" + }, + { + "slot": "W", + "name": "Stand Behind Me", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BraumW.png" + }, + { + "slot": "E", + "name": "Unbreakable", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BraumE.png" + }, + { + "slot": "R", + "name": "Glacial Fissure", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BraumRWrapper.png" + } + ] + }, + { + "championName": "Briar", + "key": "Briar", + "abilities": [ + { + "slot": "P", + "name": "Crimson Curse", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/BriarP.png" + }, + { + "slot": "Q", + "name": "Head Rush", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BriarQ.png" + }, + { + "slot": "W", + "name": "Blood Frenzy / Snack Attack", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BriarW.png" + }, + { + "slot": "E", + "name": "Chilling Scream", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BriarE.png" + }, + { + "slot": "R", + "name": "Certain Death", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/BriarR.png" + } + ] + }, + { + "championName": "Caitlyn", + "key": "Caitlyn", + "abilities": [ + { + "slot": "P", + "name": "Headshot", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Caitlyn_Headshot.png" + }, + { + "slot": "Q", + "name": "Piltover Peacemaker", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/CaitlynQ.png" + }, + { + "slot": "W", + "name": "Yordle Snap Trap", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/CaitlynW.png" + }, + { + "slot": "E", + "name": "90 Caliber Net", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/CaitlynE.png" + }, + { + "slot": "R", + "name": "Ace in the Hole", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/CaitlynR.png" + } + ] + }, + { + "championName": "Camille", + "key": "Camille", + "abilities": [ + { + "slot": "P", + "name": "Adaptive Defenses", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Camille_Passive.png" + }, + { + "slot": "Q", + "name": "Precision Protocol", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/CamilleQ.png" + }, + { + "slot": "W", + "name": "Tactical Sweep", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/CamilleW.png" + }, + { + "slot": "E", + "name": "Hookshot", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/CamilleE.png" + }, + { + "slot": "R", + "name": "The Hextech Ultimatum", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/CamilleR.png" + } + ] + }, + { + "championName": "Cassiopeia", + "key": "Cassiopeia", + "abilities": [ + { + "slot": "P", + "name": "Serpentine Grace", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Cassiopeia_Passive.png" + }, + { + "slot": "Q", + "name": "Noxious Blast", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/CassiopeiaQ.png" + }, + { + "slot": "W", + "name": "Miasma", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/CassiopeiaW.png" + }, + { + "slot": "E", + "name": "Twin Fang", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/CassiopeiaE.png" + }, + { + "slot": "R", + "name": "Petrifying Gaze", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/CassiopeiaR.png" + } + ] + }, + { + "championName": "Cho'Gath", + "key": "Chogath", + "abilities": [ + { + "slot": "P", + "name": "Carnivore", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/GreenTerror_TailSpike.png" + }, + { + "slot": "Q", + "name": "Rupture", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Rupture.png" + }, + { + "slot": "W", + "name": "Feral Scream", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/FeralScream.png" + }, + { + "slot": "E", + "name": "Vorpal Spikes", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VorpalSpikes.png" + }, + { + "slot": "R", + "name": "Feast", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Feast.png" + } + ] + }, + { + "championName": "Corki", + "key": "Corki", + "abilities": [ + { + "slot": "P", + "name": "Hextech Munitions", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Corki_RapidReload.png" + }, + { + "slot": "Q", + "name": "Phosphorus Bomb", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PhosphorusBomb.png" + }, + { + "slot": "W", + "name": "Valkyrie", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/CarpetBomb.png" + }, + { + "slot": "E", + "name": "Gatling Gun", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GGun.png" + }, + { + "slot": "R", + "name": "Missile Barrage", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MissileBarrage.png" + } + ] + }, + { + "championName": "Darius", + "key": "Darius", + "abilities": [ + { + "slot": "P", + "name": "Hemorrhage", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Darius_Icon_Hemorrhage.png" + }, + { + "slot": "Q", + "name": "Decimate", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/DariusCleave.png" + }, + { + "slot": "W", + "name": "Crippling Strike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/DariusNoxianTacticsONH.png" + }, + { + "slot": "E", + "name": "Apprehend", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/DariusAxeGrabCone.png" + }, + { + "slot": "R", + "name": "Noxian Guillotine", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/DariusExecute.png" + } + ] + }, + { + "championName": "Diana", + "key": "Diana", + "abilities": [ + { + "slot": "P", + "name": "Moonsilver Blade", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Diana_Passive_LunarBlade.png" + }, + { + "slot": "Q", + "name": "Crescent Strike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/DianaQ.png" + }, + { + "slot": "W", + "name": "Pale Cascade", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/DianaOrbs.png" + }, + { + "slot": "E", + "name": "Lunar Rush", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/DianaTeleport.png" + }, + { + "slot": "R", + "name": "Moonfall", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/DianaR.png" + } + ] + }, + { + "championName": "Dr. Mundo", + "key": "DrMundo", + "abilities": [ + { + "slot": "P", + "name": "Goes Where He Pleases", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/DrMundo_P.png" + }, + { + "slot": "Q", + "name": "Infected Bonesaw", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/DrMundoQ.png" + }, + { + "slot": "W", + "name": "Heart Zapper", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/DrMundoW.png" + }, + { + "slot": "E", + "name": "Blunt Force Trauma", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/DrMundoE.png" + }, + { + "slot": "R", + "name": "Maximum Dosage", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/DrMundoR.png" + } + ] + }, + { + "championName": "Draven", + "key": "Draven", + "abilities": [ + { + "slot": "P", + "name": "League of Draven", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Draven_passive.png" + }, + { + "slot": "Q", + "name": "Spinning Axe", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/DravenSpinning.png" + }, + { + "slot": "W", + "name": "Blood Rush", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/DravenFury.png" + }, + { + "slot": "E", + "name": "Stand Aside", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/DravenDoubleShot.png" + }, + { + "slot": "R", + "name": "Whirling Death", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/DravenRCast.png" + } + ] + }, + { + "championName": "Ekko", + "key": "Ekko", + "abilities": [ + { + "slot": "P", + "name": "Z-Drive Resonance", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Ekko_P.png" + }, + { + "slot": "Q", + "name": "Timewinder", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EkkoQ.png" + }, + { + "slot": "W", + "name": "Parallel Convergence", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EkkoW.png" + }, + { + "slot": "E", + "name": "Phase Dive", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EkkoE.png" + }, + { + "slot": "R", + "name": "Chronobreak", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EkkoR.png" + } + ] + }, + { + "championName": "Elise", + "key": "Elise", + "abilities": [ + { + "slot": "P", + "name": "Spider Queen", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/ElisePassive.png" + }, + { + "slot": "Q", + "name": "Neurotoxin / Venomous Bite", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EliseHumanQ.png" + }, + { + "slot": "W", + "name": "Volatile Spiderling / Skittering Frenzy", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EliseHumanW.png" + }, + { + "slot": "E", + "name": "Cocoon / Rappel", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EliseHumanE.png" + }, + { + "slot": "R", + "name": "Spider Form", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EliseR.png" + } + ] + }, + { + "championName": "Evelynn", + "key": "Evelynn", + "abilities": [ + { + "slot": "P", + "name": "Demon Shade", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Evelynn_Passive.png" + }, + { + "slot": "Q", + "name": "Hate Spike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EvelynnQ.png" + }, + { + "slot": "W", + "name": "Allure", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EvelynnW.png" + }, + { + "slot": "E", + "name": "Whiplash", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EvelynnE.png" + }, + { + "slot": "R", + "name": "Last Caress", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EvelynnR.png" + } + ] + }, + { + "championName": "Ezreal", + "key": "Ezreal", + "abilities": [ + { + "slot": "P", + "name": "Rising Spell Force", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Ezreal_RisingSpellForce.png" + }, + { + "slot": "Q", + "name": "Mystic Shot", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EzrealQ.png" + }, + { + "slot": "W", + "name": "Essence Flux", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EzrealW.png" + }, + { + "slot": "E", + "name": "Arcane Shift", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EzrealE.png" + }, + { + "slot": "R", + "name": "Trueshot Barrage", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EzrealR.png" + } + ] + }, + { + "championName": "Fiddlesticks", + "key": "Fiddlesticks", + "abilities": [ + { + "slot": "P", + "name": "A Harmless Scarecrow", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/FiddlesticksP.png" + }, + { + "slot": "Q", + "name": "Terrify", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/FiddleSticksQ.png" + }, + { + "slot": "W", + "name": "Bountiful Harvest", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/FiddleSticksW.png" + }, + { + "slot": "E", + "name": "Reap", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/FiddleSticksE.png" + }, + { + "slot": "R", + "name": "Crowstorm", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/FiddleSticksR.png" + } + ] + }, + { + "championName": "Fiora", + "key": "Fiora", + "abilities": [ + { + "slot": "P", + "name": "Duelist's Dance", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Fiora_P.png" + }, + { + "slot": "Q", + "name": "Lunge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/FioraQ.png" + }, + { + "slot": "W", + "name": "Riposte", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/FioraW.png" + }, + { + "slot": "E", + "name": "Bladework", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/FioraE.png" + }, + { + "slot": "R", + "name": "Grand Challenge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/FioraR.png" + } + ] + }, + { + "championName": "Fizz", + "key": "Fizz", + "abilities": [ + { + "slot": "P", + "name": "Nimble Fighter", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Fizz_P.png" + }, + { + "slot": "Q", + "name": "Urchin Strike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/FizzQ.png" + }, + { + "slot": "W", + "name": "Seastone Trident", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/FizzW.png" + }, + { + "slot": "E", + "name": "Playful / Trickster", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/FizzE.png" + }, + { + "slot": "R", + "name": "Chum the Waters", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/FizzR.png" + } + ] + }, + { + "championName": "Galio", + "key": "Galio", + "abilities": [ + { + "slot": "P", + "name": "Colossal Smash", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Galio_Passive.png" + }, + { + "slot": "Q", + "name": "Winds of War", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GalioQ.png" + }, + { + "slot": "W", + "name": "Shield of Durand", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GalioW.png" + }, + { + "slot": "E", + "name": "Justice Punch", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GalioE.png" + }, + { + "slot": "R", + "name": "Hero's Entrance", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GalioR.png" + } + ] + }, + { + "championName": "Gangplank", + "key": "Gangplank", + "abilities": [ + { + "slot": "P", + "name": "Trial by Fire", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Gangplank_Passive.png" + }, + { + "slot": "Q", + "name": "Parrrley", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GangplankQWrapper.png" + }, + { + "slot": "W", + "name": "Remove Scurvy", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GangplankW.png" + }, + { + "slot": "E", + "name": "Powder Keg", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GangplankE.png" + }, + { + "slot": "R", + "name": "Cannon Barrage", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GangplankR.png" + } + ] + }, + { + "championName": "Garen", + "key": "Garen", + "abilities": [ + { + "slot": "P", + "name": "Perseverance", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Garen_Passive.png" + }, + { + "slot": "Q", + "name": "Decisive Strike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GarenQ.png" + }, + { + "slot": "W", + "name": "Courage", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GarenW.png" + }, + { + "slot": "E", + "name": "Judgment", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GarenE.png" + }, + { + "slot": "R", + "name": "Demacian Justice", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GarenR.png" + } + ] + }, + { + "championName": "Gnar", + "key": "Gnar", + "abilities": [ + { + "slot": "P", + "name": "Rage Gene", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Gnar_Passive.png" + }, + { + "slot": "Q", + "name": "Boomerang Throw / Boulder Toss", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GnarQ.png" + }, + { + "slot": "W", + "name": "Hyper / Wallop", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GnarW.png" + }, + { + "slot": "E", + "name": "Hop / Crunch", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GnarE.png" + }, + { + "slot": "R", + "name": "GNAR!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GnarR.png" + } + ] + }, + { + "championName": "Gragas", + "key": "Gragas", + "abilities": [ + { + "slot": "P", + "name": "Happy Hour", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/GragasPassiveHeal.png" + }, + { + "slot": "Q", + "name": "Barrel Roll", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GragasQ.png" + }, + { + "slot": "W", + "name": "Drunken Rage", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GragasW.png" + }, + { + "slot": "E", + "name": "Body Slam", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GragasE.png" + }, + { + "slot": "R", + "name": "Explosive Cask", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GragasR.png" + } + ] + }, + { + "championName": "Graves", + "key": "Graves", + "abilities": [ + { + "slot": "P", + "name": "New Destiny", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/GravesTrueGrit.png" + }, + { + "slot": "Q", + "name": "End of the Line", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GravesQLineSpell.png" + }, + { + "slot": "W", + "name": "Smoke Screen", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GravesSmokeGrenade.png" + }, + { + "slot": "E", + "name": "Quickdraw", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GravesMove.png" + }, + { + "slot": "R", + "name": "Collateral Damage", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GravesChargeShot.png" + } + ] + }, + { + "championName": "Gwen", + "key": "Gwen", + "abilities": [ + { + "slot": "P", + "name": "A Thousand Cuts", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Gwen_Passive.png" + }, + { + "slot": "Q", + "name": "Snip Snip!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GwenQ.png" + }, + { + "slot": "W", + "name": "Hallowed Mist", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GwenW.png" + }, + { + "slot": "E", + "name": "Skip 'n Slash", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GwenE.png" + }, + { + "slot": "R", + "name": "Needlework", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/GwenR.png" + } + ] + }, + { + "championName": "Hecarim", + "key": "Hecarim", + "abilities": [ + { + "slot": "P", + "name": "Warpath", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Hecarim_Passive.png" + }, + { + "slot": "Q", + "name": "Rampage", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/HecarimRapidSlash.png" + }, + { + "slot": "W", + "name": "Spirit of Dread", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/HecarimW.png" + }, + { + "slot": "E", + "name": "Devastating Charge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/HecarimRamp.png" + }, + { + "slot": "R", + "name": "Onslaught of Shadows", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/HecarimUlt.png" + } + ] + }, + { + "championName": "Heimerdinger", + "key": "Heimerdinger", + "abilities": [ + { + "slot": "P", + "name": "Hextech Affinity", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Heimerdinger_Passive.png" + }, + { + "slot": "Q", + "name": "H-28 G Evolution Turret", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/HeimerdingerQ.png" + }, + { + "slot": "W", + "name": "Hextech Micro-Rockets", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/HeimerdingerW.png" + }, + { + "slot": "E", + "name": "CH-2 Electron Storm Grenade", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/HeimerdingerE.png" + }, + { + "slot": "R", + "name": "UPGRADE!!!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/HeimerdingerR.png" + } + ] + }, + { + "championName": "Hwei", + "key": "Hwei", + "abilities": [ + { + "slot": "P", + "name": "Signature of the Visionary", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/HweiPassive.png" + }, + { + "slot": "Q", + "name": "Subject: Disaster", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/HweiQ.png" + }, + { + "slot": "W", + "name": "Subject: Serenity", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/HweiW.png" + }, + { + "slot": "E", + "name": "Subject: Torment", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/HweiE.png" + }, + { + "slot": "R", + "name": "Spiraling Despair", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/HweiR.png" + } + ] + }, + { + "championName": "Illaoi", + "key": "Illaoi", + "abilities": [ + { + "slot": "P", + "name": "Prophet of an Elder God", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Illaoi_P.png" + }, + { + "slot": "Q", + "name": "Tentacle Smash", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/IllaoiQ.png" + }, + { + "slot": "W", + "name": "Harsh Lesson", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/IllaoiW.png" + }, + { + "slot": "E", + "name": "Test of Spirit", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/IllaoiE.png" + }, + { + "slot": "R", + "name": "Leap of Faith", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/IllaoiR.png" + } + ] + }, + { + "championName": "Irelia", + "key": "Irelia", + "abilities": [ + { + "slot": "P", + "name": "Ionian Fervor", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Irelia_Passive.png" + }, + { + "slot": "Q", + "name": "Bladesurge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/IreliaQ.png" + }, + { + "slot": "W", + "name": "Defiant Dance", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/IreliaW.png" + }, + { + "slot": "E", + "name": "Flawless Duet", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/IreliaE.png" + }, + { + "slot": "R", + "name": "Vanguard's Edge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/IreliaR.png" + } + ] + }, + { + "championName": "Ivern", + "key": "Ivern", + "abilities": [ + { + "slot": "P", + "name": "Friend of the Forest", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/IvernP.png" + }, + { + "slot": "Q", + "name": "Rootcaller", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/IvernQ.png" + }, + { + "slot": "W", + "name": "Brushmaker", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/IvernW.png" + }, + { + "slot": "E", + "name": "Triggerseed", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/IvernE.png" + }, + { + "slot": "R", + "name": "Daisy!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/IvernR.png" + } + ] + }, + { + "championName": "Janna", + "key": "Janna", + "abilities": [ + { + "slot": "P", + "name": "Tailwind", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/JannaP.png" + }, + { + "slot": "Q", + "name": "Howling Gale", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/HowlingGale.png" + }, + { + "slot": "W", + "name": "Zephyr", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SowTheWind.png" + }, + { + "slot": "E", + "name": "Eye Of The Storm", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/EyeOfTheStorm.png" + }, + { + "slot": "R", + "name": "Monsoon", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ReapTheWhirlwind.png" + } + ] + }, + { + "championName": "Jarvan IV", + "key": "JarvanIV", + "abilities": [ + { + "slot": "P", + "name": "Martial Cadence", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/JarvanIVP.png" + }, + { + "slot": "Q", + "name": "Dragon Strike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JarvanIVDragonStrike.png" + }, + { + "slot": "W", + "name": "Golden Aegis", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JarvanIVGoldenAegis.png" + }, + { + "slot": "E", + "name": "Demacian Standard", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JarvanIVDemacianStandard.png" + }, + { + "slot": "R", + "name": "Cataclysm", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JarvanIVCataclysm.png" + } + ] + }, + { + "championName": "Jax", + "key": "Jax", + "abilities": [ + { + "slot": "P", + "name": "Relentless Assault", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Armsmaster_MasterOfArms.png" + }, + { + "slot": "Q", + "name": "Leap Strike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JaxQ.png" + }, + { + "slot": "W", + "name": "Empower", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JaxW.png" + }, + { + "slot": "E", + "name": "Counter Strike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JaxE.png" + }, + { + "slot": "R", + "name": "Grandmaster-at-Arms", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JaxR.png" + } + ] + }, + { + "championName": "Jayce", + "key": "Jayce", + "abilities": [ + { + "slot": "P", + "name": "Hextech Capacitor", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Jayce_Passive.png" + }, + { + "slot": "Q", + "name": "To the Skies! / Shock Blast", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JayceToTheSkies.png" + }, + { + "slot": "W", + "name": "Lightning Field / Hyper Charge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JayceStaticField.png" + }, + { + "slot": "E", + "name": "Thundering Blow / Acceleration Gate", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JayceThunderingBlow.png" + }, + { + "slot": "R", + "name": "Mercury Cannon / Mercury Hammer", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JayceStanceHtG.png" + } + ] + }, + { + "championName": "Jhin", + "key": "Jhin", + "abilities": [ + { + "slot": "P", + "name": "Whisper", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Jhin_P.png" + }, + { + "slot": "Q", + "name": "Dancing Grenade", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JhinQ.png" + }, + { + "slot": "W", + "name": "Deadly Flourish", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JhinW.png" + }, + { + "slot": "E", + "name": "Captive Audience", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JhinE.png" + }, + { + "slot": "R", + "name": "Curtain Call", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JhinR.png" + } + ] + }, + { + "championName": "Jinx", + "key": "Jinx", + "abilities": [ + { + "slot": "P", + "name": "Get Excited!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Jinx_Passive.png" + }, + { + "slot": "Q", + "name": "Switcheroo!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JinxQ.png" + }, + { + "slot": "W", + "name": "Zap!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JinxW.png" + }, + { + "slot": "E", + "name": "Flame Chompers!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JinxE.png" + }, + { + "slot": "R", + "name": "Super Mega Death Rocket!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JinxR.png" + } + ] + }, + { + "championName": "K'Sante", + "key": "KSante", + "abilities": [ + { + "slot": "P", + "name": "Dauntless Instinct", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Icons_KSante_P.png" + }, + { + "slot": "Q", + "name": "Ntofo Strikes", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KSanteQ.png" + }, + { + "slot": "W", + "name": "Path Maker", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KSanteW.png" + }, + { + "slot": "E", + "name": "Footwork", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KSanteE.png" + }, + { + "slot": "R", + "name": "All Out", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KSanteR.png" + } + ] + }, + { + "championName": "Kai'Sa", + "key": "Kaisa", + "abilities": [ + { + "slot": "P", + "name": "Second Skin", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Kaisa_Passive.png" + }, + { + "slot": "Q", + "name": "Icathian Rain", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KaisaQ.png" + }, + { + "slot": "W", + "name": "Void Seeker", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KaisaW.png" + }, + { + "slot": "E", + "name": "Supercharge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KaisaE.png" + }, + { + "slot": "R", + "name": "Killer Instinct", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KaisaR.png" + } + ] + }, + { + "championName": "Kalista", + "key": "Kalista", + "abilities": [ + { + "slot": "P", + "name": "Martial Poise", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Kalista_Passive.png" + }, + { + "slot": "Q", + "name": "Pierce", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KalistaMysticShot.png" + }, + { + "slot": "W", + "name": "Sentinel", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KalistaW.png" + }, + { + "slot": "E", + "name": "Rend", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KalistaExpungeWrapper.png" + }, + { + "slot": "R", + "name": "Fate's Call", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KalistaRx.png" + } + ] + }, + { + "championName": "Karma", + "key": "Karma", + "abilities": [ + { + "slot": "P", + "name": "Gathering Fire", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Karma_Passive.png" + }, + { + "slot": "Q", + "name": "Inner Flame", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KarmaQ.png" + }, + { + "slot": "W", + "name": "Focused Resolve", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KarmaSpiritBind.png" + }, + { + "slot": "E", + "name": "Inspire", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KarmaSolKimShield.png" + }, + { + "slot": "R", + "name": "Mantra", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KarmaMantra.png" + } + ] + }, + { + "championName": "Karthus", + "key": "Karthus", + "abilities": [ + { + "slot": "P", + "name": "Death Defied", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Karthus_Passive.png" + }, + { + "slot": "Q", + "name": "Lay Waste", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KarthusLayWasteA1.png" + }, + { + "slot": "W", + "name": "Wall of Pain", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KarthusWallOfPain.png" + }, + { + "slot": "E", + "name": "Defile", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KarthusDefile.png" + }, + { + "slot": "R", + "name": "Requiem", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KarthusFallenOne.png" + } + ] + }, + { + "championName": "Kassadin", + "key": "Kassadin", + "abilities": [ + { + "slot": "P", + "name": "Void Stone", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Kassadin_Passive.png" + }, + { + "slot": "Q", + "name": "Null Sphere", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NullLance.png" + }, + { + "slot": "W", + "name": "Nether Blade", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NetherBlade.png" + }, + { + "slot": "E", + "name": "Force Pulse", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ForcePulse.png" + }, + { + "slot": "R", + "name": "Riftwalk", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RiftWalk.png" + } + ] + }, + { + "championName": "Katarina", + "key": "Katarina", + "abilities": [ + { + "slot": "P", + "name": "Voracity", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Katarina_Passive.png" + }, + { + "slot": "Q", + "name": "Bouncing Blade", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KatarinaQ.png" + }, + { + "slot": "W", + "name": "Preparation", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KatarinaW.png" + }, + { + "slot": "E", + "name": "Shunpo", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KatarinaEWrapper.png" + }, + { + "slot": "R", + "name": "Death Lotus", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KatarinaR.png" + } + ] + }, + { + "championName": "Kayle", + "key": "Kayle", + "abilities": [ + { + "slot": "P", + "name": "Divine Ascent", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Kayle_P.png" + }, + { + "slot": "Q", + "name": "Radiant Blast", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KayleQ.png" + }, + { + "slot": "W", + "name": "Celestial Blessing", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KayleW.png" + }, + { + "slot": "E", + "name": "Starfire Spellblade", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KayleE.png" + }, + { + "slot": "R", + "name": "Divine Judgment", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KayleR.png" + } + ] + }, + { + "championName": "Kayn", + "key": "Kayn", + "abilities": [ + { + "slot": "P", + "name": "The Darkin Scythe", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Kayn_Passive_Primary.png" + }, + { + "slot": "Q", + "name": "Reaping Slash", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KaynQ.png" + }, + { + "slot": "W", + "name": "Blade's Reach", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KaynW.png" + }, + { + "slot": "E", + "name": "Shadow Step", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KaynE.png" + }, + { + "slot": "R", + "name": "Umbral Trespass", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KaynR.png" + } + ] + }, + { + "championName": "Kennen", + "key": "Kennen", + "abilities": [ + { + "slot": "P", + "name": "Mark of the Storm", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Kennen_Passive.png" + }, + { + "slot": "Q", + "name": "Thundering Shuriken", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KennenShurikenHurlMissile1.png" + }, + { + "slot": "W", + "name": "Electrical Surge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KennenBringTheLight.png" + }, + { + "slot": "E", + "name": "Lightning Rush", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KennenLightningRush.png" + }, + { + "slot": "R", + "name": "Slicing Maelstrom", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KennenShurikenStorm.png" + } + ] + }, + { + "championName": "Kha'Zix", + "key": "Khazix", + "abilities": [ + { + "slot": "P", + "name": "Unseen Threat", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Khazix_P.png" + }, + { + "slot": "Q", + "name": "Taste Their Fear", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KhazixQ.png" + }, + { + "slot": "W", + "name": "Void Spike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KhazixW.png" + }, + { + "slot": "E", + "name": "Leap", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KhazixE.png" + }, + { + "slot": "R", + "name": "Void Assault", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KhazixR.png" + } + ] + }, + { + "championName": "Kindred", + "key": "Kindred", + "abilities": [ + { + "slot": "P", + "name": "Mark of the Kindred", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Kindred_Passive.png" + }, + { + "slot": "Q", + "name": "Dance of Arrows", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KindredQ.png" + }, + { + "slot": "W", + "name": "Wolf's Frenzy", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KindredW.png" + }, + { + "slot": "E", + "name": "Mounting Dread", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KindredEWrapper.png" + }, + { + "slot": "R", + "name": "Lamb's Respite", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KindredR.png" + } + ] + }, + { + "championName": "Kled", + "key": "Kled", + "abilities": [ + { + "slot": "P", + "name": "Skaarl, the Cowardly Lizard", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Kled_P.png" + }, + { + "slot": "Q", + "name": "Bear Trap on a Rope", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KledQ.png" + }, + { + "slot": "W", + "name": "Violent Tendencies", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KledW.png" + }, + { + "slot": "E", + "name": "Jousting", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KledE.png" + }, + { + "slot": "R", + "name": "Chaaaaaaaarge!!!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KledR.png" + } + ] + }, + { + "championName": "Kog'Maw", + "key": "KogMaw", + "abilities": [ + { + "slot": "P", + "name": "Icathian Surprise", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/KogMaw_IcathianSurprise.png" + }, + { + "slot": "Q", + "name": "Caustic Spittle", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KogMawQ.png" + }, + { + "slot": "W", + "name": "Bio-Arcane Barrage", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KogMawBioArcaneBarrage.png" + }, + { + "slot": "E", + "name": "Void Ooze", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KogMawVoidOoze.png" + }, + { + "slot": "R", + "name": "Living Artillery", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/KogMawLivingArtillery.png" + } + ] + }, + { + "championName": "LeBlanc", + "key": "Leblanc", + "abilities": [ + { + "slot": "P", + "name": "Mirror Image", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/LeblancP.Leblanc_Rework.png" + }, + { + "slot": "Q", + "name": "Sigil of Malice", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LeblancQ.png" + }, + { + "slot": "W", + "name": "Distortion", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LeblancW.png" + }, + { + "slot": "E", + "name": "Ethereal Chains", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LeblancE.png" + }, + { + "slot": "R", + "name": "Mimic", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LeblancR.png" + } + ] + }, + { + "championName": "Lee Sin", + "key": "LeeSin", + "abilities": [ + { + "slot": "P", + "name": "Flurry", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/LeeSinPassive.png" + }, + { + "slot": "Q", + "name": "Sonic Wave / Resonating Strike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LeeSinQOne.png" + }, + { + "slot": "W", + "name": "Safeguard / Iron Will", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LeeSinWOne.png" + }, + { + "slot": "E", + "name": "Tempest / Cripple", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LeeSinEOne.png" + }, + { + "slot": "R", + "name": "Dragon's Rage", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LeeSinR.png" + } + ] + }, + { + "championName": "Leona", + "key": "Leona", + "abilities": [ + { + "slot": "P", + "name": "Sunlight", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/LeonaSunlight.png" + }, + { + "slot": "Q", + "name": "Shield of Daybreak", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LeonaShieldOfDaybreak.png" + }, + { + "slot": "W", + "name": "Eclipse", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LeonaSolarBarrier.png" + }, + { + "slot": "E", + "name": "Zenith Blade", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LeonaZenithBlade.png" + }, + { + "slot": "R", + "name": "Solar Flare", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LeonaSolarFlare.png" + } + ] + }, + { + "championName": "Lillia", + "key": "Lillia", + "abilities": [ + { + "slot": "P", + "name": "Dream-Laden Bough", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Lillia_Icon_Passive.png" + }, + { + "slot": "Q", + "name": "Blooming Blows", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LilliaQ.png" + }, + { + "slot": "W", + "name": "Watch Out! Eep!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LilliaW.png" + }, + { + "slot": "E", + "name": "Swirlseed", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LilliaE.png" + }, + { + "slot": "R", + "name": "Lilting Lullaby", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LilliaR.png" + } + ] + }, + { + "championName": "Lissandra", + "key": "Lissandra", + "abilities": [ + { + "slot": "P", + "name": "Iceborn Subjugation", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Lissandra_Passive.png" + }, + { + "slot": "Q", + "name": "Ice Shard", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LissandraQ.png" + }, + { + "slot": "W", + "name": "Ring of Frost", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LissandraW.png" + }, + { + "slot": "E", + "name": "Glacial Path", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LissandraE.png" + }, + { + "slot": "R", + "name": "Frozen Tomb", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LissandraR.png" + } + ] + }, + { + "championName": "Lucian", + "key": "Lucian", + "abilities": [ + { + "slot": "P", + "name": "Lightslinger", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Lucian_Passive.png" + }, + { + "slot": "Q", + "name": "Piercing Light", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LucianQ.png" + }, + { + "slot": "W", + "name": "Ardent Blaze", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LucianW.png" + }, + { + "slot": "E", + "name": "Relentless Pursuit", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LucianE.png" + }, + { + "slot": "R", + "name": "The Culling", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LucianR.png" + } + ] + }, + { + "championName": "Lulu", + "key": "Lulu", + "abilities": [ + { + "slot": "P", + "name": "Pix, Faerie Companion", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Lulu_PixFaerieCompanion.png" + }, + { + "slot": "Q", + "name": "Glitterlance", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LuluQ.png" + }, + { + "slot": "W", + "name": "Whimsy", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LuluW.png" + }, + { + "slot": "E", + "name": "Help, Pix!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LuluE.png" + }, + { + "slot": "R", + "name": "Wild Growth", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LuluR.png" + } + ] + }, + { + "championName": "Lux", + "key": "Lux", + "abilities": [ + { + "slot": "P", + "name": "Illumination", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/LuxIlluminatingFraulein.png" + }, + { + "slot": "Q", + "name": "Light Binding", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LuxLightBinding.png" + }, + { + "slot": "W", + "name": "Prismatic Barrier", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LuxPrismaticWave.png" + }, + { + "slot": "E", + "name": "Lucent Singularity", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LuxLightStrikeKugel.png" + }, + { + "slot": "R", + "name": "Final Spark", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/LuxR.png" + } + ] + }, + { + "championName": "Malphite", + "key": "Malphite", + "abilities": [ + { + "slot": "P", + "name": "Granite Shield", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Malphite_GraniteShield.png" + }, + { + "slot": "Q", + "name": "Seismic Shard", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SeismicShard.png" + }, + { + "slot": "W", + "name": "Thunderclap", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Obduracy.png" + }, + { + "slot": "E", + "name": "Ground Slam", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Landslide.png" + }, + { + "slot": "R", + "name": "Unstoppable Force", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/UFSlash.png" + } + ] + }, + { + "championName": "Malzahar", + "key": "Malzahar", + "abilities": [ + { + "slot": "P", + "name": "Void Shift", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Malzahar_Passive.png" + }, + { + "slot": "Q", + "name": "Call of the Void", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MalzaharQ.png" + }, + { + "slot": "W", + "name": "Void Swarm", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MalzaharW.png" + }, + { + "slot": "E", + "name": "Malefic Visions", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MalzaharE.png" + }, + { + "slot": "R", + "name": "Nether Grasp", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MalzaharR.png" + } + ] + }, + { + "championName": "Maokai", + "key": "Maokai", + "abilities": [ + { + "slot": "P", + "name": "Sap Magic", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Maokai_Passive.png" + }, + { + "slot": "Q", + "name": "Bramble Smash", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MaokaiQ.png" + }, + { + "slot": "W", + "name": "Twisted Advance", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MaokaiW.png" + }, + { + "slot": "E", + "name": "Sapling Toss", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MaokaiE.png" + }, + { + "slot": "R", + "name": "Nature's Grasp", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MaokaiR.png" + } + ] + }, + { + "championName": "Master Yi", + "key": "MasterYi", + "abilities": [ + { + "slot": "P", + "name": "Double Strike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/MasterYi_Passive1.png" + }, + { + "slot": "Q", + "name": "Alpha Strike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AlphaStrike.png" + }, + { + "slot": "W", + "name": "Meditate", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Meditate.png" + }, + { + "slot": "E", + "name": "Wuju Style", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/WujuStyle.png" + }, + { + "slot": "R", + "name": "Highlander", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Highlander.png" + } + ] + }, + { + "championName": "Mel", + "key": "Mel", + "abilities": [ + { + "slot": "P", + "name": "Searing Brilliance", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Mel_Passive.png" + }, + { + "slot": "Q", + "name": "Radiant Volley", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MelQ.png" + }, + { + "slot": "W", + "name": "Rebuttal", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MelW.png" + }, + { + "slot": "E", + "name": "Solar Snare", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MelE.png" + }, + { + "slot": "R", + "name": "Golden Eclipse", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MelR.png" + } + ] + }, + { + "championName": "Milio", + "key": "Milio", + "abilities": [ + { + "slot": "P", + "name": "Fired Up!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Milio_P.png" + }, + { + "slot": "Q", + "name": "Ultra Mega Fire Kick", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MilioQ.png" + }, + { + "slot": "W", + "name": "Cozy Campfire", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MilioW.png" + }, + { + "slot": "E", + "name": "Warm Hugs", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MilioE.png" + }, + { + "slot": "R", + "name": "Breath of Life", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MilioR.png" + } + ] + }, + { + "championName": "Miss Fortune", + "key": "MissFortune", + "abilities": [ + { + "slot": "P", + "name": "Love Tap", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/MissFortune_W.png" + }, + { + "slot": "Q", + "name": "Double Up", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MissFortuneRicochetShot.png" + }, + { + "slot": "W", + "name": "Strut", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MissFortuneViciousStrikes.png" + }, + { + "slot": "E", + "name": "Make It Rain", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MissFortuneScattershot.png" + }, + { + "slot": "R", + "name": "Bullet Time", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MissFortuneBulletTime.png" + } + ] + }, + { + "championName": "Mordekaiser", + "key": "Mordekaiser", + "abilities": [ + { + "slot": "P", + "name": "Darkness Rise", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/MordekaiserPassive.png" + }, + { + "slot": "Q", + "name": "Obliterate", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MordekaiserQ.png" + }, + { + "slot": "W", + "name": "Indestructible", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MordekaiserW.png" + }, + { + "slot": "E", + "name": "Death's Grasp", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MordekaiserE.png" + }, + { + "slot": "R", + "name": "Realm of Death", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MordekaiserR.png" + } + ] + }, + { + "championName": "Morgana", + "key": "Morgana", + "abilities": [ + { + "slot": "P", + "name": "Soul Siphon", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/FallenAngel_Empathize.png" + }, + { + "slot": "Q", + "name": "Dark Binding", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MorganaQ.png" + }, + { + "slot": "W", + "name": "Tormented Shadow", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MorganaW.png" + }, + { + "slot": "E", + "name": "Black Shield", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MorganaE.png" + }, + { + "slot": "R", + "name": "Soul Shackles", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MorganaR.png" + } + ] + }, + { + "championName": "Naafiri", + "key": "Naafiri", + "abilities": [ + { + "slot": "P", + "name": "We Are More", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Icons_Naafiri_P.png" + }, + { + "slot": "Q", + "name": "Darkin Daggers", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NaafiriQ.png" + }, + { + "slot": "W", + "name": "The Call of the Pack", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NaafiriR.png" + }, + { + "slot": "E", + "name": "Eviscerate", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NaafiriE.png" + }, + { + "slot": "R", + "name": "Hounds' Pursuit", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NaafiriW.png" + } + ] + }, + { + "championName": "Nami", + "key": "Nami", + "abilities": [ + { + "slot": "P", + "name": "Surging Tides", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/NamiPassive.png" + }, + { + "slot": "Q", + "name": "Aqua Prison", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NamiQ.png" + }, + { + "slot": "W", + "name": "Ebb and Flow", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NamiW.png" + }, + { + "slot": "E", + "name": "Tidecaller's Blessing", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NamiE.png" + }, + { + "slot": "R", + "name": "Tidal Wave", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NamiR.png" + } + ] + }, + { + "championName": "Nasus", + "key": "Nasus", + "abilities": [ + { + "slot": "P", + "name": "Soul Eater", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Nasus_Passive.png" + }, + { + "slot": "Q", + "name": "Siphoning Strike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NasusQ.png" + }, + { + "slot": "W", + "name": "Wither", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NasusW.png" + }, + { + "slot": "E", + "name": "Spirit Fire", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NasusE.png" + }, + { + "slot": "R", + "name": "Fury of the Sands", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NasusR.png" + } + ] + }, + { + "championName": "Nautilus", + "key": "Nautilus", + "abilities": [ + { + "slot": "P", + "name": "Staggering Blow", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Nautilus_StaggeringBlow.png" + }, + { + "slot": "Q", + "name": "Dredge Line", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NautilusAnchorDrag.png" + }, + { + "slot": "W", + "name": "Titan's Wrath", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NautilusPiercingGaze.png" + }, + { + "slot": "E", + "name": "Riptide", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NautilusSplashZone.png" + }, + { + "slot": "R", + "name": "Depth Charge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NautilusGrandLine.png" + } + ] + }, + { + "championName": "Neeko", + "key": "Neeko", + "abilities": [ + { + "slot": "P", + "name": "Inherent Glamour", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Neeko_P.png" + }, + { + "slot": "Q", + "name": "Blooming Burst", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NeekoQ.png" + }, + { + "slot": "W", + "name": "Shapesplitter", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NeekoW.png" + }, + { + "slot": "E", + "name": "Tangle-Barbs", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NeekoE.png" + }, + { + "slot": "R", + "name": "Pop Blossom", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NeekoR.png" + } + ] + }, + { + "championName": "Nidalee", + "key": "Nidalee", + "abilities": [ + { + "slot": "P", + "name": "Prowl", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Nidalee_Passive.png" + }, + { + "slot": "Q", + "name": "Javelin Toss / Takedown", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JavelinToss.png" + }, + { + "slot": "W", + "name": "Bushwhack / Pounce", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Bushwhack.png" + }, + { + "slot": "E", + "name": "Primal Surge / Swipe", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PrimalSurge.png" + }, + { + "slot": "R", + "name": "Aspect Of The Cougar", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/AspectOfTheCougar.png" + } + ] + }, + { + "championName": "Nilah", + "key": "Nilah", + "abilities": [ + { + "slot": "P", + "name": "Joy Unending", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/NIlahP.png" + }, + { + "slot": "Q", + "name": "Formless Blade", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NilahQ.png" + }, + { + "slot": "W", + "name": "Jubilant Veil", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NilahW.png" + }, + { + "slot": "E", + "name": "Slipstream", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NilahE.png" + }, + { + "slot": "R", + "name": "Apotheosis", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NilahR.png" + } + ] + }, + { + "championName": "Nocturne", + "key": "Nocturne", + "abilities": [ + { + "slot": "P", + "name": "Umbra Blades", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Nocturne_UmbraBlades.png" + }, + { + "slot": "Q", + "name": "Duskbringer", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NocturneDuskbringer.png" + }, + { + "slot": "W", + "name": "Shroud of Darkness", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NocturneShroudofDarkness.png" + }, + { + "slot": "E", + "name": "Unspeakable Horror", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NocturneUnspeakableHorror.png" + }, + { + "slot": "R", + "name": "Paranoia", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NocturneParanoia.png" + } + ] + }, + { + "championName": "Nunu & Willump", + "key": "Nunu", + "abilities": [ + { + "slot": "P", + "name": "Call of the Freljord", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/NunuPassive.png" + }, + { + "slot": "Q", + "name": "Consume", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NunuQ.png" + }, + { + "slot": "W", + "name": "Biggest Snowball Ever!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NunuW.png" + }, + { + "slot": "E", + "name": "Snowball Barrage", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NunuE.png" + }, + { + "slot": "R", + "name": "Absolute Zero", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/NunuR.png" + } + ] + }, + { + "championName": "Olaf", + "key": "Olaf", + "abilities": [ + { + "slot": "P", + "name": "Berserker Rage", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Olaf_Passive.png" + }, + { + "slot": "Q", + "name": "Undertow", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/OlafAxeThrowCast.png" + }, + { + "slot": "W", + "name": "Tough It Out", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/OlafFrenziedStrikes.png" + }, + { + "slot": "E", + "name": "Reckless Swing", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/OlafRecklessStrike.png" + }, + { + "slot": "R", + "name": "Ragnarok", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/OlafRagnarok.png" + } + ] + }, + { + "championName": "Orianna", + "key": "Orianna", + "abilities": [ + { + "slot": "P", + "name": "Clockwork Windup", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/OriannaPassive.png" + }, + { + "slot": "Q", + "name": "Command: Attack", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/OrianaIzunaCommand.png" + }, + { + "slot": "W", + "name": "Command: Dissonance", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/OrianaDissonanceCommand.png" + }, + { + "slot": "E", + "name": "Command: Protect", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/OrianaRedactCommand.png" + }, + { + "slot": "R", + "name": "Command: Shockwave", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/OrianaDetonateCommand.png" + } + ] + }, + { + "championName": "Ornn", + "key": "Ornn", + "abilities": [ + { + "slot": "P", + "name": "Living Forge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/OrnnP.png" + }, + { + "slot": "Q", + "name": "Volcanic Rupture", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/OrnnQ.png" + }, + { + "slot": "W", + "name": "Bellows Breath", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/OrnnW.png" + }, + { + "slot": "E", + "name": "Searing Charge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/OrnnE.png" + }, + { + "slot": "R", + "name": "Call of the Forge God", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/OrnnR.png" + } + ] + }, + { + "championName": "Pantheon", + "key": "Pantheon", + "abilities": [ + { + "slot": "P", + "name": "Mortal Will", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Pantheon_Passive.png" + }, + { + "slot": "Q", + "name": "Comet Spear", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PantheonQ.png" + }, + { + "slot": "W", + "name": "Shield Vault", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PantheonW.png" + }, + { + "slot": "E", + "name": "Aegis Assault", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PantheonE.png" + }, + { + "slot": "R", + "name": "Grand Starfall", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PantheonR.png" + } + ] + }, + { + "championName": "Poppy", + "key": "Poppy", + "abilities": [ + { + "slot": "P", + "name": "Iron Ambassador", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Poppy_Passive.png" + }, + { + "slot": "Q", + "name": "Hammer Shock", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PoppyQ.png" + }, + { + "slot": "W", + "name": "Steadfast Presence", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PoppyW.png" + }, + { + "slot": "E", + "name": "Heroic Charge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PoppyE.png" + }, + { + "slot": "R", + "name": "Keeper's Verdict", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PoppyR.png" + } + ] + }, + { + "championName": "Pyke", + "key": "Pyke", + "abilities": [ + { + "slot": "P", + "name": "Gift of the Drowned Ones", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/PykePassive.png" + }, + { + "slot": "Q", + "name": "Bone Skewer", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PykeQ.png" + }, + { + "slot": "W", + "name": "Ghostwater Dive", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PykeW.png" + }, + { + "slot": "E", + "name": "Phantom Undertow", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PykeE.png" + }, + { + "slot": "R", + "name": "Death From Below", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PykeR.png" + } + ] + }, + { + "championName": "Qiyana", + "key": "Qiyana", + "abilities": [ + { + "slot": "P", + "name": "Royal Privilege", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Qiyana_Passive.png" + }, + { + "slot": "Q", + "name": "Elemental Wrath / Edge of Ixtal", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/QiyanaQ.png" + }, + { + "slot": "W", + "name": "Terrashape", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/QiyanaW.png" + }, + { + "slot": "E", + "name": "Audacity", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/QiyanaE.png" + }, + { + "slot": "R", + "name": "Supreme Display of Talent", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/QiyanaR.png" + } + ] + }, + { + "championName": "Quinn", + "key": "Quinn", + "abilities": [ + { + "slot": "P", + "name": "Harrier", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Quinn_Passive.png" + }, + { + "slot": "Q", + "name": "Blinding Assault", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/QuinnQ.png" + }, + { + "slot": "W", + "name": "Heightened Senses", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/QuinnW.png" + }, + { + "slot": "E", + "name": "Vault", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/QuinnE.png" + }, + { + "slot": "R", + "name": "Behind Enemy Lines", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/QuinnR.png" + } + ] + }, + { + "championName": "Rakan", + "key": "Rakan", + "abilities": [ + { + "slot": "P", + "name": "Fey Feathers", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Rakan_P.png" + }, + { + "slot": "Q", + "name": "Gleaming Quill", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RakanQ.png" + }, + { + "slot": "W", + "name": "Grand Entrance", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RakanW.png" + }, + { + "slot": "E", + "name": "Battle Dance", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RakanE.png" + }, + { + "slot": "R", + "name": "The Quickness", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RakanR.png" + } + ] + }, + { + "championName": "Rammus", + "key": "Rammus", + "abilities": [ + { + "slot": "P", + "name": "Spiked Shell", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Armordillo_ScavengeArmor.png" + }, + { + "slot": "Q", + "name": "Powerball", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PowerBall.png" + }, + { + "slot": "W", + "name": "Defensive Ball Curl", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/DefensiveBallCurl.png" + }, + { + "slot": "E", + "name": "Frenzying Taunt", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PuncturingTaunt.png" + }, + { + "slot": "R", + "name": "Soaring Slam", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Tremors2.png" + } + ] + }, + { + "championName": "Rek'Sai", + "key": "RekSai", + "abilities": [ + { + "slot": "P", + "name": "Fury of the Xer'Sai", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/RekSai_Passive.png" + }, + { + "slot": "Q", + "name": "Queen's Wrath / Prey Seeker", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RekSaiQ.png" + }, + { + "slot": "W", + "name": "Burrow / Un-burrow", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RekSaiW.png" + }, + { + "slot": "E", + "name": "Furious Bite / Tunnel", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RekSaiE.png" + }, + { + "slot": "R", + "name": "Void Rush", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RekSaiR.png" + } + ] + }, + { + "championName": "Rell", + "key": "Rell", + "abilities": [ + { + "slot": "P", + "name": "Break the Mold", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/RellP.png" + }, + { + "slot": "Q", + "name": "Shattering Strike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RellQ.png" + }, + { + "slot": "W", + "name": "Ferromancy: Crash Down", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RellW_Dismount.png" + }, + { + "slot": "E", + "name": "Full Tilt", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RellE.png" + }, + { + "slot": "R", + "name": "Magnet Storm", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RellR.png" + } + ] + }, + { + "championName": "Renata Glasc", + "key": "Renata", + "abilities": [ + { + "slot": "P", + "name": "Leverage", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Renata_P.png" + }, + { + "slot": "Q", + "name": "Handshake", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RenataQ.png" + }, + { + "slot": "W", + "name": "Bailout", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RenataW.png" + }, + { + "slot": "E", + "name": "Loyalty Program", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RenataE.png" + }, + { + "slot": "R", + "name": "Hostile Takeover", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RenataR.png" + } + ] + }, + { + "championName": "Renekton", + "key": "Renekton", + "abilities": [ + { + "slot": "P", + "name": "Reign of Anger", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Renekton_Passive.png" + }, + { + "slot": "Q", + "name": "Cull the Meek", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RenektonCleave.png" + }, + { + "slot": "W", + "name": "Ruthless Predator", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RenektonPreExecute.png" + }, + { + "slot": "E", + "name": "Slice and Dice", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RenektonSliceAndDice.png" + }, + { + "slot": "R", + "name": "Dominus", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RenektonReignOfTheTyrant.png" + } + ] + }, + { + "championName": "Rengar", + "key": "Rengar", + "abilities": [ + { + "slot": "P", + "name": "Unseen Predator", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Rengar_P.png" + }, + { + "slot": "Q", + "name": "Savagery", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RengarQ.png" + }, + { + "slot": "W", + "name": "Battle Roar", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RengarW.png" + }, + { + "slot": "E", + "name": "Bola Strike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RengarE.png" + }, + { + "slot": "R", + "name": "Thrill of the Hunt", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RengarR.png" + } + ] + }, + { + "championName": "Riven", + "key": "Riven", + "abilities": [ + { + "slot": "P", + "name": "Runic Blade", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/RivenRunicBlades.png" + }, + { + "slot": "Q", + "name": "Broken Wings", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RivenTriCleave.png" + }, + { + "slot": "W", + "name": "Ki Burst", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RivenMartyr.png" + }, + { + "slot": "E", + "name": "Valor", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RivenFeint.png" + }, + { + "slot": "R", + "name": "Blade of the Exile", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RivenFengShuiEngine.png" + } + ] + }, + { + "championName": "Rumble", + "key": "Rumble", + "abilities": [ + { + "slot": "P", + "name": "Junkyard Titan", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Rumble_JunkyardTitan1.png" + }, + { + "slot": "Q", + "name": "Flamespitter", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RumbleFlameThrower.png" + }, + { + "slot": "W", + "name": "Scrap Shield", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RumbleShield.png" + }, + { + "slot": "E", + "name": "Electro Harpoon", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RumbleGrenade.png" + }, + { + "slot": "R", + "name": "The Equalizer", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RumbleCarpetBomb.png" + } + ] + }, + { + "championName": "Ryze", + "key": "Ryze", + "abilities": [ + { + "slot": "P", + "name": "Arcane Mastery", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Ryze_P.png" + }, + { + "slot": "Q", + "name": "Overload", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RyzeQWrapper.png" + }, + { + "slot": "W", + "name": "Rune Prison", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RyzeW.png" + }, + { + "slot": "E", + "name": "Spell Flux", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RyzeE.png" + }, + { + "slot": "R", + "name": "Realm Warp", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/RyzeR.png" + } + ] + }, + { + "championName": "Samira", + "key": "Samira", + "abilities": [ + { + "slot": "P", + "name": "Daredevil Impulse", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/SamiraP.png" + }, + { + "slot": "Q", + "name": "Flair", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SamiraQ.png" + }, + { + "slot": "W", + "name": "Blade Whirl", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SamiraW.png" + }, + { + "slot": "E", + "name": "Wild Rush", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SamiraE.png" + }, + { + "slot": "R", + "name": "Inferno Trigger", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SamiraR.png" + } + ] + }, + { + "championName": "Sejuani", + "key": "Sejuani", + "abilities": [ + { + "slot": "P", + "name": "Fury of the North", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Sejuani_passive.png" + }, + { + "slot": "Q", + "name": "Arctic Assault", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SejuaniQ.png" + }, + { + "slot": "W", + "name": "Winter's Wrath", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SejuaniW.png" + }, + { + "slot": "E", + "name": "Permafrost", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SejuaniE.png" + }, + { + "slot": "R", + "name": "Glacial Prison", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SejuaniR.png" + } + ] + }, + { + "championName": "Senna", + "key": "Senna", + "abilities": [ + { + "slot": "P", + "name": "Absolution", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Senna_Passive.png" + }, + { + "slot": "Q", + "name": "Piercing Darkness", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SennaQ.png" + }, + { + "slot": "W", + "name": "Last Embrace", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SennaW.png" + }, + { + "slot": "E", + "name": "Curse of the Black Mist", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SennaE.png" + }, + { + "slot": "R", + "name": "Dawning Shadow", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SennaR.png" + } + ] + }, + { + "championName": "Seraphine", + "key": "Seraphine", + "abilities": [ + { + "slot": "P", + "name": "Stage Presence", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Seraphine_Passive.png" + }, + { + "slot": "Q", + "name": "High Note", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SeraphineQ.png" + }, + { + "slot": "W", + "name": "Surround Sound", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SeraphineW.png" + }, + { + "slot": "E", + "name": "Beat Drop", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SeraphineE.png" + }, + { + "slot": "R", + "name": "Encore", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SeraphineR.png" + } + ] + }, + { + "championName": "Sett", + "key": "Sett", + "abilities": [ + { + "slot": "P", + "name": "Pit Grit", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Sett_P.png" + }, + { + "slot": "Q", + "name": "Knuckle Down", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SettQ.png" + }, + { + "slot": "W", + "name": "Haymaker", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SettW.png" + }, + { + "slot": "E", + "name": "Facebreaker", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SettE.png" + }, + { + "slot": "R", + "name": "The Show Stopper", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SettR.png" + } + ] + }, + { + "championName": "Shaco", + "key": "Shaco", + "abilities": [ + { + "slot": "P", + "name": "Backstab", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Jester_CarefulStrikes.png" + }, + { + "slot": "Q", + "name": "Deceive", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Deceive.png" + }, + { + "slot": "W", + "name": "Jack In The Box", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/JackInTheBox.png" + }, + { + "slot": "E", + "name": "Two-Shiv Poison", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TwoShivPoison.png" + }, + { + "slot": "R", + "name": "Hallucinate", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/HallucinateFull.png" + } + ] + }, + { + "championName": "Shen", + "key": "Shen", + "abilities": [ + { + "slot": "P", + "name": "Ki Barrier", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Shen_Passive.png" + }, + { + "slot": "Q", + "name": "Twilight Assault", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ShenQ.png" + }, + { + "slot": "W", + "name": "Spirit's Refuge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ShenW.png" + }, + { + "slot": "E", + "name": "Shadow Dash", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ShenE.png" + }, + { + "slot": "R", + "name": "Stand United", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ShenR.png" + } + ] + }, + { + "championName": "Shyvana", + "key": "Shyvana", + "abilities": [ + { + "slot": "P", + "name": "Scalemail", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Shyvana_Passive.Shyvana_Rework.png" + }, + { + "slot": "Q", + "name": "Emberstrike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ShyvanaQ.png" + }, + { + "slot": "W", + "name": "Inferno Aegis", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ShyvanaW.png" + }, + { + "slot": "E", + "name": "Molten Burst", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ShyvanaE.png" + }, + { + "slot": "R", + "name": "Dragon's Descent", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ShyvanaR.png" + } + ] + }, + { + "championName": "Singed", + "key": "Singed", + "abilities": [ + { + "slot": "P", + "name": "Noxious Slipstream", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Singed_Passive.png" + }, + { + "slot": "Q", + "name": "Poison Trail", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PoisonTrail.png" + }, + { + "slot": "W", + "name": "Mega Adhesive", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MegaAdhesive.png" + }, + { + "slot": "E", + "name": "Fling", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Fling.png" + }, + { + "slot": "R", + "name": "Insanity Potion", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/InsanityPotion.png" + } + ] + }, + { + "championName": "Sion", + "key": "Sion", + "abilities": [ + { + "slot": "P", + "name": "Glory in Death", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Sion_Passive1.png" + }, + { + "slot": "Q", + "name": "Decimating Smash", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SionQ.png" + }, + { + "slot": "W", + "name": "Soul Furnace", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SionW.png" + }, + { + "slot": "E", + "name": "Roar of the Slayer", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SionE.png" + }, + { + "slot": "R", + "name": "Unstoppable Onslaught", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SionR.png" + } + ] + }, + { + "championName": "Sivir", + "key": "Sivir", + "abilities": [ + { + "slot": "P", + "name": "Fleet of Foot", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Sivir_Passive.png" + }, + { + "slot": "Q", + "name": "Boomerang Blade", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SivirQ.png" + }, + { + "slot": "W", + "name": "Ricochet", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SivirW.png" + }, + { + "slot": "E", + "name": "Spell Shield", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SivirE.png" + }, + { + "slot": "R", + "name": "On The Hunt", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SivirR.png" + } + ] + }, + { + "championName": "Skarner", + "key": "Skarner", + "abilities": [ + { + "slot": "P", + "name": "Threads of Vibration", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Skarner_Passive.png" + }, + { + "slot": "Q", + "name": "Shattered Earth / Upheaval", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SkarnerQ.png" + }, + { + "slot": "W", + "name": "Seismic Bastion", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SkarnerW.png" + }, + { + "slot": "E", + "name": "Ixtal's Impact", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SkarnerE.png" + }, + { + "slot": "R", + "name": "Impale", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SkarnerR.png" + } + ] + }, + { + "championName": "Smolder", + "key": "Smolder", + "abilities": [ + { + "slot": "P", + "name": "Dragon Practice", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Icons_Smolder_Passive.png" + }, + { + "slot": "Q", + "name": "Super Scorcher Breath", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SmolderQ.png" + }, + { + "slot": "W", + "name": "Achooo!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SmolderW.png" + }, + { + "slot": "E", + "name": "Flap, Flap, Flap", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SmolderE.png" + }, + { + "slot": "R", + "name": "MMOOOMMMM!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SmolderR.png" + } + ] + }, + { + "championName": "Sona", + "key": "Sona", + "abilities": [ + { + "slot": "P", + "name": "Power Chord", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Sona_Passive_Charged.png" + }, + { + "slot": "Q", + "name": "Hymn of Valor", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SonaQ.png" + }, + { + "slot": "W", + "name": "Aria of Perseverance", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SonaW.png" + }, + { + "slot": "E", + "name": "Song of Celerity", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SonaE.png" + }, + { + "slot": "R", + "name": "Crescendo", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SonaR.png" + } + ] + }, + { + "championName": "Soraka", + "key": "Soraka", + "abilities": [ + { + "slot": "P", + "name": "Salvation", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Soraka_Passive.png" + }, + { + "slot": "Q", + "name": "Starcall", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SorakaQ.png" + }, + { + "slot": "W", + "name": "Astral Infusion", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SorakaW.png" + }, + { + "slot": "E", + "name": "Equinox", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SorakaE.png" + }, + { + "slot": "R", + "name": "Wish", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SorakaR.png" + } + ] + }, + { + "championName": "Swain", + "key": "Swain", + "abilities": [ + { + "slot": "P", + "name": "Ravenous Flock", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Swain_P.png" + }, + { + "slot": "Q", + "name": "Death's Hand", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SwainQ.png" + }, + { + "slot": "W", + "name": "Vision of Empire", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SwainW.png" + }, + { + "slot": "E", + "name": "Nevermove", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SwainE.png" + }, + { + "slot": "R", + "name": "Demonic Ascension", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SwainR.png" + } + ] + }, + { + "championName": "Sylas", + "key": "Sylas", + "abilities": [ + { + "slot": "P", + "name": "Petricite Burst", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/SylasP.png" + }, + { + "slot": "Q", + "name": "Chain Lash", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SylasQ.png" + }, + { + "slot": "W", + "name": "Kingslayer", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SylasW.png" + }, + { + "slot": "E", + "name": "Abscond / Abduct", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SylasE.png" + }, + { + "slot": "R", + "name": "Hijack", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SylasR.png" + } + ] + }, + { + "championName": "Syndra", + "key": "Syndra", + "abilities": [ + { + "slot": "P", + "name": "Transcendent", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/SyndraPassive.png" + }, + { + "slot": "Q", + "name": "Dark Sphere", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SyndraQ.png" + }, + { + "slot": "W", + "name": "Force of Will", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SyndraW.png" + }, + { + "slot": "E", + "name": "Scatter the Weak", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SyndraE.png" + }, + { + "slot": "R", + "name": "Unleashed Power", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/SyndraR.png" + } + ] + }, + { + "championName": "Tahm Kench", + "key": "TahmKench", + "abilities": [ + { + "slot": "P", + "name": "An Acquired Taste", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/TahmKenchP.png" + }, + { + "slot": "Q", + "name": "Tongue Lash", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TahmKenchQ.png" + }, + { + "slot": "W", + "name": "Abyssal Dive", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TahmKenchW.png" + }, + { + "slot": "E", + "name": "Thick Skin", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TahmKenchE.png" + }, + { + "slot": "R", + "name": "Devour", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TahmKenchRWrapper.png" + } + ] + }, + { + "championName": "Taliyah", + "key": "Taliyah", + "abilities": [ + { + "slot": "P", + "name": "Rock Surfing", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Taliyah_Passive.png" + }, + { + "slot": "Q", + "name": "Threaded Volley", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TaliyahQ.png" + }, + { + "slot": "W", + "name": "Seismic Shove", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TaliyahWVC.png" + }, + { + "slot": "E", + "name": "Unraveled Earth", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TaliyahE.png" + }, + { + "slot": "R", + "name": "Weaver's Wall", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TaliyahR.png" + } + ] + }, + { + "championName": "Talon", + "key": "Talon", + "abilities": [ + { + "slot": "P", + "name": "Blade's End", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/TalonP.png" + }, + { + "slot": "Q", + "name": "Noxian Diplomacy", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TalonQ.png" + }, + { + "slot": "W", + "name": "Rake", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TalonW.png" + }, + { + "slot": "E", + "name": "Assassin's Path", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TalonE.png" + }, + { + "slot": "R", + "name": "Shadow Assault", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TalonR.png" + } + ] + }, + { + "championName": "Taric", + "key": "Taric", + "abilities": [ + { + "slot": "P", + "name": "Bravado", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Taric_Passive.png" + }, + { + "slot": "Q", + "name": "Starlight's Touch", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TaricQ.png" + }, + { + "slot": "W", + "name": "Bastion", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TaricW.png" + }, + { + "slot": "E", + "name": "Dazzle", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TaricE.png" + }, + { + "slot": "R", + "name": "Cosmic Radiance", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TaricR.png" + } + ] + }, + { + "championName": "Teemo", + "key": "Teemo", + "abilities": [ + { + "slot": "P", + "name": "Guerrilla Warfare", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/TeemoPassive.ASU_Teemo.png" + }, + { + "slot": "Q", + "name": "Blinding Dart", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TeemoQ.png" + }, + { + "slot": "W", + "name": "Move Quick", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TeemoW.png" + }, + { + "slot": "E", + "name": "Toxic Shot", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TeemoE.png" + }, + { + "slot": "R", + "name": "Noxious Trap", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TeemoR.png" + } + ] + }, + { + "championName": "Thresh", + "key": "Thresh", + "abilities": [ + { + "slot": "P", + "name": "Damnation", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Thresh_Passive.png" + }, + { + "slot": "Q", + "name": "Death Sentence", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ThreshQ.png" + }, + { + "slot": "W", + "name": "Dark Passage", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ThreshW.png" + }, + { + "slot": "E", + "name": "Flay", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ThreshE.png" + }, + { + "slot": "R", + "name": "The Box", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ThreshRPenta.png" + } + ] + }, + { + "championName": "Tristana", + "key": "Tristana", + "abilities": [ + { + "slot": "P", + "name": "Draw a Bead", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Tristana_Passive.png" + }, + { + "slot": "Q", + "name": "Rapid Fire", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TristanaQ.png" + }, + { + "slot": "W", + "name": "Rocket Jump", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TristanaW.png" + }, + { + "slot": "E", + "name": "Explosive Charge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TristanaE.png" + }, + { + "slot": "R", + "name": "Buster Shot", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TristanaR.png" + } + ] + }, + { + "championName": "Trundle", + "key": "Trundle", + "abilities": [ + { + "slot": "P", + "name": "King's Tribute", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Trundle_Passive.png" + }, + { + "slot": "Q", + "name": "Chomp", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TrundleTrollSmash.png" + }, + { + "slot": "W", + "name": "Frozen Domain", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/trundledesecrate.png" + }, + { + "slot": "E", + "name": "Pillar of Ice", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TrundleCircle.png" + }, + { + "slot": "R", + "name": "Subjugate", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TrundlePain.png" + } + ] + }, + { + "championName": "Tryndamere", + "key": "Tryndamere", + "abilities": [ + { + "slot": "P", + "name": "Battle Fury", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Tryndamere_Passive.png" + }, + { + "slot": "Q", + "name": "Bloodlust", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TryndamereQ.png" + }, + { + "slot": "W", + "name": "Mocking Shout", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TryndamereW.png" + }, + { + "slot": "E", + "name": "Spinning Slash", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TryndamereE.png" + }, + { + "slot": "R", + "name": "Undying Rage", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/UndyingRage.png" + } + ] + }, + { + "championName": "Twisted Fate", + "key": "TwistedFate", + "abilities": [ + { + "slot": "P", + "name": "Loaded Dice", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Cardmaster_SealFate.png" + }, + { + "slot": "Q", + "name": "Wild Cards", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/WildCards.png" + }, + { + "slot": "W", + "name": "Pick a Card", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/PickACard.png" + }, + { + "slot": "E", + "name": "Stacked Deck", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/CardmasterStack.png" + }, + { + "slot": "R", + "name": "Destiny", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/Destiny.png" + } + ] + }, + { + "championName": "Twitch", + "key": "Twitch", + "abilities": [ + { + "slot": "P", + "name": "Deadly Venom", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Twitch_Passive.png" + }, + { + "slot": "Q", + "name": "Ambush", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TwitchHideInShadows.png" + }, + { + "slot": "W", + "name": "Venom Cask", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TwitchVenomCask.png" + }, + { + "slot": "E", + "name": "Contaminate", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TwitchExpunge.png" + }, + { + "slot": "R", + "name": "Spray and Pray", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TwitchFullAutomatic.png" + } + ] + }, + { + "championName": "Udyr", + "key": "Udyr", + "abilities": [ + { + "slot": "P", + "name": "Bridge Between", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Udyr_P.png" + }, + { + "slot": "Q", + "name": "Wilding Claw", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/UdyrQ.png" + }, + { + "slot": "W", + "name": "Iron Mantle", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/UdyrW.png" + }, + { + "slot": "E", + "name": "Blazing Stampede", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/UdyrE.png" + }, + { + "slot": "R", + "name": "Wingborne Storm", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/UdyrR.png" + } + ] + }, + { + "championName": "Urgot", + "key": "Urgot", + "abilities": [ + { + "slot": "P", + "name": "Echoing Flames", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Urgot_Passive.png" + }, + { + "slot": "Q", + "name": "Corrosive Charge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/UrgotQ.png" + }, + { + "slot": "W", + "name": "Purge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/UrgotW.png" + }, + { + "slot": "E", + "name": "Disdain", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/UrgotE.png" + }, + { + "slot": "R", + "name": "Fear Beyond Death", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/UrgotR.png" + } + ] + }, + { + "championName": "Varus", + "key": "Varus", + "abilities": [ + { + "slot": "P", + "name": "Living Vengeance", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/VarusPassive.png" + }, + { + "slot": "Q", + "name": "Piercing Arrow", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VarusQ.png" + }, + { + "slot": "W", + "name": "Blighted Quiver", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VarusW.png" + }, + { + "slot": "E", + "name": "Hail of Arrows", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VarusE.png" + }, + { + "slot": "R", + "name": "Chain of Corruption", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VarusR.png" + } + ] + }, + { + "championName": "Vayne", + "key": "Vayne", + "abilities": [ + { + "slot": "P", + "name": "Night Hunter", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Vayne_NightHunter.png" + }, + { + "slot": "Q", + "name": "Tumble", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VayneTumble.png" + }, + { + "slot": "W", + "name": "Silver Bolts", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VayneSilveredBolts.png" + }, + { + "slot": "E", + "name": "Condemn", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VayneCondemn.png" + }, + { + "slot": "R", + "name": "Final Hour", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VayneInquisition.png" + } + ] + }, + { + "championName": "Veigar", + "key": "Veigar", + "abilities": [ + { + "slot": "P", + "name": "Phenomenal Evil Power", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/VeigarEntropy.png" + }, + { + "slot": "Q", + "name": "Baleful Strike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VeigarBalefulStrike.png" + }, + { + "slot": "W", + "name": "Dark Matter", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VeigarDarkMatter.png" + }, + { + "slot": "E", + "name": "Event Horizon", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VeigarEventHorizon.png" + }, + { + "slot": "R", + "name": "Primordial Burst", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VeigarR.png" + } + ] + }, + { + "championName": "Vel'Koz", + "key": "Velkoz", + "abilities": [ + { + "slot": "P", + "name": "Organic Deconstruction", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/VelKoz_Passive.png" + }, + { + "slot": "Q", + "name": "Plasma Fission", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VelkozQ.png" + }, + { + "slot": "W", + "name": "Void Rift", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VelkozW.png" + }, + { + "slot": "E", + "name": "Tectonic Disruption", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VelkozE.png" + }, + { + "slot": "R", + "name": "Life Form Disintegration Ray", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VelkozR.png" + } + ] + }, + { + "championName": "Vex", + "key": "Vex", + "abilities": [ + { + "slot": "P", + "name": "Doom 'n Gloom", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Icons_Vex_Passive.png" + }, + { + "slot": "Q", + "name": "Mistral Bolt", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VexQ.png" + }, + { + "slot": "W", + "name": "Personal Space", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VexW.png" + }, + { + "slot": "E", + "name": "Looming Darkness", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VexE.png" + }, + { + "slot": "R", + "name": "Shadow Surge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VexR.png" + } + ] + }, + { + "championName": "Vi", + "key": "Vi", + "abilities": [ + { + "slot": "P", + "name": "Blast Shield", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/ViPassive.png" + }, + { + "slot": "Q", + "name": "Vault Breaker", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ViQ.png" + }, + { + "slot": "W", + "name": "Denting Blows", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ViW.png" + }, + { + "slot": "E", + "name": "Relentless Force", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ViE.png" + }, + { + "slot": "R", + "name": "Cease and Desist", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ViR.png" + } + ] + }, + { + "championName": "Viego", + "key": "Viego", + "abilities": [ + { + "slot": "P", + "name": "Sovereign's Domination", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Viego_Passive.png" + }, + { + "slot": "Q", + "name": "Blade of the Ruined King", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ViegoQ.png" + }, + { + "slot": "W", + "name": "Spectral Maw", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ViegoW.png" + }, + { + "slot": "E", + "name": "Harrowed Path", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ViegoE.png" + }, + { + "slot": "R", + "name": "Heartbreaker", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ViegoR.png" + } + ] + }, + { + "championName": "Viktor", + "key": "Viktor", + "abilities": [ + { + "slot": "P", + "name": "Glorious Evolution", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Viktor_Passive.ViktorVGU.png" + }, + { + "slot": "Q", + "name": "Siphon Power", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ViktorQ.png" + }, + { + "slot": "W", + "name": "Gravity Field", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ViktorW.png" + }, + { + "slot": "E", + "name": "Hextech Ray", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ViktorE.png" + }, + { + "slot": "R", + "name": "Arcane Storm", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ViktorR.png" + } + ] + }, + { + "championName": "Vladimir", + "key": "Vladimir", + "abilities": [ + { + "slot": "P", + "name": "Crimson Pact", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/VladimirP.png" + }, + { + "slot": "Q", + "name": "Transfusion", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VladimirQ.png" + }, + { + "slot": "W", + "name": "Sanguine Pool", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VladimirSanguinePool.png" + }, + { + "slot": "E", + "name": "Tides of Blood", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VladimirE.png" + }, + { + "slot": "R", + "name": "Hemoplague", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VladimirHemoplague.png" + } + ] + }, + { + "championName": "Volibear", + "key": "Volibear", + "abilities": [ + { + "slot": "P", + "name": "The Relentless Storm", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Volibear_Icon_P.png" + }, + { + "slot": "Q", + "name": "Thundering Smash", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VolibearQ.png" + }, + { + "slot": "W", + "name": "Frenzied Maul", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VolibearW.png" + }, + { + "slot": "E", + "name": "Sky Splitter", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VolibearE.png" + }, + { + "slot": "R", + "name": "Stormbringer", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/VolibearR.png" + } + ] + }, + { + "championName": "Warwick", + "key": "Warwick", + "abilities": [ + { + "slot": "P", + "name": "Eternal Hunger", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/WarwickP.png" + }, + { + "slot": "Q", + "name": "Jaws of the Beast", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/WarwickQ.png" + }, + { + "slot": "W", + "name": "Blood Hunt", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/WarwickW.png" + }, + { + "slot": "E", + "name": "Primal Howl", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/WarwickE.png" + }, + { + "slot": "R", + "name": "Infinite Duress", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/WarwickR.png" + } + ] + }, + { + "championName": "Wukong", + "key": "MonkeyKing", + "abilities": [ + { + "slot": "P", + "name": "Stone Skin", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/MonkeyKingStoneSkin.png" + }, + { + "slot": "Q", + "name": "Crushing Blow", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MonkeyKingDoubleAttack.png" + }, + { + "slot": "W", + "name": "Warrior Trickster", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MonkeyKingDecoy.png" + }, + { + "slot": "E", + "name": "Nimbus Strike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MonkeyKingNimbus.png" + }, + { + "slot": "R", + "name": "Cyclone", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/MonkeyKingSpinToWin.png" + } + ] + }, + { + "championName": "Xayah", + "key": "Xayah", + "abilities": [ + { + "slot": "P", + "name": "Clean Cuts", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/XayahPassive.png" + }, + { + "slot": "Q", + "name": "Double Daggers", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/XayahQ.png" + }, + { + "slot": "W", + "name": "Deadly Plumage", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/XayahW.png" + }, + { + "slot": "E", + "name": "Bladecaller", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/XayahE.png" + }, + { + "slot": "R", + "name": "Featherstorm", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/XayahR.png" + } + ] + }, + { + "championName": "Xerath", + "key": "Xerath", + "abilities": [ + { + "slot": "P", + "name": "Mana Surge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Xerath_Passive1.png" + }, + { + "slot": "Q", + "name": "Arcanopulse", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/XerathArcanopulseChargeUp.png" + }, + { + "slot": "W", + "name": "Eye of Destruction", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/XerathArcaneBarrage2.png" + }, + { + "slot": "E", + "name": "Shocking Orb", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/XerathMageSpear.png" + }, + { + "slot": "R", + "name": "Rite of the Arcane", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/XerathLocusOfPower2.png" + } + ] + }, + { + "championName": "Xin Zhao", + "key": "XinZhao", + "abilities": [ + { + "slot": "P", + "name": "Determination", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/XinZhaoReworkP.XinZhaoRework.png" + }, + { + "slot": "Q", + "name": "Three Talon Strike", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/XinZhaoQ.png" + }, + { + "slot": "W", + "name": "Wind Becomes Lightning", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/XinZhaoW.png" + }, + { + "slot": "E", + "name": "Audacious Charge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/XinZhaoE.png" + }, + { + "slot": "R", + "name": "Crescent Guard", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/XinZhaoR.png" + } + ] + }, + { + "championName": "Yasuo", + "key": "Yasuo", + "abilities": [ + { + "slot": "P", + "name": "Way of the Wanderer", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Yasuo_Passive.png" + }, + { + "slot": "Q", + "name": "Steel Tempest", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YasuoQ1Wrapper.png" + }, + { + "slot": "W", + "name": "Wind Wall", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YasuoW.png" + }, + { + "slot": "E", + "name": "Sweeping Blade", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YasuoE.png" + }, + { + "slot": "R", + "name": "Last Breath", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YasuoR.png" + } + ] + }, + { + "championName": "Yone", + "key": "Yone", + "abilities": [ + { + "slot": "P", + "name": "Way of the Hunter", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/YonePassive.png" + }, + { + "slot": "Q", + "name": "Mortal Steel", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YoneQ.png" + }, + { + "slot": "W", + "name": "Spirit Cleave", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YoneW.png" + }, + { + "slot": "E", + "name": "Soul Unbound", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YoneE.png" + }, + { + "slot": "R", + "name": "Fate Sealed", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YoneR.png" + } + ] + }, + { + "championName": "Yorick", + "key": "Yorick", + "abilities": [ + { + "slot": "P", + "name": "Shepherd of Souls", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Yorick_P.png" + }, + { + "slot": "Q", + "name": "Last Rites", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YorickQ.png" + }, + { + "slot": "W", + "name": "Dark Procession", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YorickW.png" + }, + { + "slot": "E", + "name": "Mourning Mist", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YorickE.png" + }, + { + "slot": "R", + "name": "Eulogy of the Isles", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YorickR.png" + } + ] + }, + { + "championName": "Yunara", + "key": "Yunara", + "abilities": [ + { + "slot": "P", + "name": "Vow of the First Lands", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Yunara_Passive.Yunara.png" + }, + { + "slot": "Q", + "name": "Cultivation of Spirit", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YunaraQ.png" + }, + { + "slot": "W", + "name": "Arc of Judgment | Arc of Ruin", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YunaraW.png" + }, + { + "slot": "E", + "name": "Kanmei's Steps | Untouchable Shadow", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YunaraE.png" + }, + { + "slot": "R", + "name": "Transcend One's Self", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YunaraR.png" + } + ] + }, + { + "championName": "Yuumi", + "key": "Yuumi", + "abilities": [ + { + "slot": "P", + "name": "Feline Friendship", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/YuumiP2.png" + }, + { + "slot": "Q", + "name": "Prowling Projectile", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YuumiQ.png" + }, + { + "slot": "W", + "name": "You and Me!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YuumiW.png" + }, + { + "slot": "E", + "name": "Zoomies", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YuumiE.png" + }, + { + "slot": "R", + "name": "Final Chapter", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/YuumiR.png" + } + ] + }, + { + "championName": "Zaahen", + "key": "Zaahen", + "abilities": [ + { + "slot": "P", + "name": "Cultivation of War", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/ZaahenP.Zaahen.png" + }, + { + "slot": "Q", + "name": "The Darkin Glaive", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZaahenQ.png" + }, + { + "slot": "W", + "name": "Dreaded Return", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZaahenW.png" + }, + { + "slot": "E", + "name": "Aureate Rush", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZaahenE.png" + }, + { + "slot": "R", + "name": "Grim Deliverance", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZaahenR.png" + } + ] + }, + { + "championName": "Zac", + "key": "Zac", + "abilities": [ + { + "slot": "P", + "name": "Cell Division", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/ZacPassive.png" + }, + { + "slot": "Q", + "name": "Stretching Strikes", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZacQ.png" + }, + { + "slot": "W", + "name": "Unstable Matter", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZacW.png" + }, + { + "slot": "E", + "name": "Elastic Slingshot", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZacE.png" + }, + { + "slot": "R", + "name": "Let's Bounce!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZacR.png" + } + ] + }, + { + "championName": "Zed", + "key": "Zed", + "abilities": [ + { + "slot": "P", + "name": "Contempt for the Weak", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/ZedP.png" + }, + { + "slot": "Q", + "name": "Razor Shuriken", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZedQ.png" + }, + { + "slot": "W", + "name": "Living Shadow", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZedW.png" + }, + { + "slot": "E", + "name": "Shadow Slash", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZedE.png" + }, + { + "slot": "R", + "name": "Death Mark", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZedR.png" + } + ] + }, + { + "championName": "Zeri", + "key": "Zeri", + "abilities": [ + { + "slot": "P", + "name": "Living Battery", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/ZeriP.png" + }, + { + "slot": "Q", + "name": "Burst Fire", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZeriQ.png" + }, + { + "slot": "W", + "name": "Ultrashock Laser", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZeriW.png" + }, + { + "slot": "E", + "name": "Spark Surge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZeriE.png" + }, + { + "slot": "R", + "name": "Lightning Crash", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZeriR.png" + } + ] + }, + { + "championName": "Ziggs", + "key": "Ziggs", + "abilities": [ + { + "slot": "P", + "name": "Short Fuse", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/ZiggsPassiveReady.png" + }, + { + "slot": "Q", + "name": "Bouncing Bomb", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZiggsQ.png" + }, + { + "slot": "W", + "name": "Satchel Charge", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZiggsW.png" + }, + { + "slot": "E", + "name": "Hexplosive Minefield", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZiggsE.png" + }, + { + "slot": "R", + "name": "Mega Inferno Bomb", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZiggsR.png" + } + ] + }, + { + "championName": "Zilean", + "key": "Zilean", + "abilities": [ + { + "slot": "P", + "name": "Time In A Bottle", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Zilean_Passive.png" + }, + { + "slot": "Q", + "name": "Time Bomb", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZileanQ.png" + }, + { + "slot": "W", + "name": "Rewind", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZileanW.png" + }, + { + "slot": "E", + "name": "Time Warp", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/TimeWarp.png" + }, + { + "slot": "R", + "name": "Chronoshift", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ChronoShift.png" + } + ] + }, + { + "championName": "Zoe", + "key": "Zoe", + "abilities": [ + { + "slot": "P", + "name": "More Sparkles!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/Zoe_P.png" + }, + { + "slot": "Q", + "name": "Paddle Star!", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZoeQ.png" + }, + { + "slot": "W", + "name": "Spell Thief", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZoeW.png" + }, + { + "slot": "E", + "name": "Sleepy Trouble Bubble", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZoeE.png" + }, + { + "slot": "R", + "name": "Portal Jump", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZoeR.png" + } + ] + }, + { + "championName": "Zyra", + "key": "Zyra", + "abilities": [ + { + "slot": "P", + "name": "Garden of Thorns", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/passive/ZyraP.png" + }, + { + "slot": "Q", + "name": "Deadly Spines", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZyraQ.png" + }, + { + "slot": "W", + "name": "Rampant Growth", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZyraW.png" + }, + { + "slot": "E", + "name": "Grasping Roots", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZyraE.png" + }, + { + "slot": "R", + "name": "Stranglethorns", + "icon": "https://ddragon.leagueoflegends.com/cdn/16.8.1/img/spell/ZyraR.png" + } + ] + } +] diff --git a/src/modules/loldle-ability/handlers.js b/src/modules/loldle-ability/handlers.js new file mode 100644 index 0000000..0cb8284 --- /dev/null +++ b/src/modules/loldle-ability/handlers.js @@ -0,0 +1,161 @@ +/** + * @file loldle-ability command handlers. + * + * Binary right/wrong — 5 guesses. Subject resolution mirrors other loldle + * modes. Round state persists `{target, slot, guesses, startedAt}` so the + * SAME ability icon shows across all turns until the round ends. + */ + +import { escapeHtml } from "../../util/escape-html.js"; +import abilitiesData from "./abilities.json" with { type: "json" }; +import { findChampion } from "./lookup.js"; +import { MAX_GUESSES, clearGame, loadGame, loadStats, recordResult, saveGame } from "./state.js"; + +const POOL = abilitiesData.filter((c) => c.abilities && c.abilities.length > 0); + +const NEW_ROUND_HINT = + "🆕 Send /loldle_ability or /loldle_ability <champion> to start a new round."; + +function getSubject(ctx) { + const type = ctx.chat?.type; + if (type === "group" || type === "supergroup") return ctx.chat.id; + return ctx.from?.id ?? null; +} + +function argAfterCommand(text) { + if (!text) return ""; + const idx = text.indexOf(" "); + return idx === -1 ? "" : text.slice(idx + 1).trim(); +} + +function pickRandom() { + return POOL[Math.floor(Math.random() * POOL.length)]; +} + +function findByName(name) { + return POOL.find((c) => c.championName === name); +} + +function pickAbility(champ) { + return champ.abilities[Math.floor(Math.random() * champ.abilities.length)]; +} + +function getAbilityBySlot(champ, slot) { + return champ.abilities.find((a) => a.slot === slot); +} + +async function startFreshGame(db, subject) { + const target = pickRandom(); + const ability = pickAbility(target); + const fresh = { + target: target.championName, + slot: ability.slot, + guesses: [], + startedAt: null, + }; + await saveGame(db, subject, fresh); + return fresh; +} + +async function getOrInitGame(db, subject) { + const existing = await loadGame(db, subject); + if (existing && existing.guesses.length < MAX_GUESSES) return existing; + return startFreshGame(db, subject); +} + +function caption(guesses) { + return `🔮 Guess the champion from this ability. ${guesses.length}/${MAX_GUESSES} guesses so far.`; +} + +export async function handleAbility(ctx, db) { + const subject = getSubject(ctx); + if (subject == null) return ctx.reply("Cannot identify chat."); + const arg = argAfterCommand(ctx.message?.text ?? ""); + + const game = await getOrInitGame(db, subject); + const target = findByName(game.target); + const ability = target && getAbilityBySlot(target, game.slot); + if (!target || !ability) { + await clearGame(db, subject); + return ctx.reply(`Ability data was updated since this round started. ${NEW_ROUND_HINT}`, { + parse_mode: "HTML", + }); + } + + if (!arg) { + return ctx.replyWithPhoto(ability.icon, { caption: caption(game.guesses) }); + } + + const guess = findChampion(POOL, arg); + if (!guess) return ctx.reply(`Champion not found: "${arg}".`); + + if (game.guesses.includes(guess.championName)) { + return ctx.reply( + `🔁 ${escapeHtml(guess.championName)} was already guessed this round — try another champion.`, + { parse_mode: "HTML" }, + ); + } + + if (game.startedAt == null) game.startedAt = Date.now(); + game.guesses.push(guess.championName); + const won = guess.championName === target.championName; + const answer = escapeHtml(target.championName); + const abilityLabel = `${escapeHtml(ability.name)} (${ability.slot})`; + + if (won) { + const s = await recordResult(db, subject, true); + await clearGame(db, subject); + return ctx.reply( + `🎉 Got it! That was ${answer} — ${abilityLabel}. Solved in ${game.guesses.length}/${MAX_GUESSES}\n🔥 Streak: ${s.streak}\n${NEW_ROUND_HINT}`, + { parse_mode: "HTML" }, + ); + } + + if (game.guesses.length >= MAX_GUESSES) { + await recordResult(db, subject, false); + await clearGame(db, subject); + return ctx.reply( + `❌ Out of guesses. Answer was ${answer} — ${abilityLabel}.\n${NEW_ROUND_HINT}`, + { parse_mode: "HTML" }, + ); + } + + await saveGame(db, subject, game); + return ctx.reply( + `❌ Not ${escapeHtml(guess.championName)}. Guess ${game.guesses.length}/${MAX_GUESSES}.`, + { parse_mode: "HTML" }, + ); +} + +export async function handleGiveup(ctx, db) { + const subject = getSubject(ctx); + if (subject == null) return ctx.reply("Cannot identify chat."); + const existing = await loadGame(db, subject); + if (!existing) { + return ctx.reply(`No active round. ${NEW_ROUND_HINT}`, { parse_mode: "HTML" }); + } + await recordResult(db, subject, false); + const target = findByName(existing.target); + const ability = target && getAbilityBySlot(target, existing.slot); + await clearGame(db, subject); + const abilityLabel = ability ? ` — ${escapeHtml(ability.name)} (${ability.slot})` : ""; + return ctx.reply( + `🏳️ Answer was ${escapeHtml(existing.target)}${abilityLabel}.\n${NEW_ROUND_HINT}`, + { parse_mode: "HTML" }, + ); +} + +export async function handleStats(ctx, db) { + const subject = getSubject(ctx); + if (subject == null) return ctx.reply("Cannot identify chat."); + const s = await loadStats(db, subject); + const winRate = s.played ? Math.round((s.wins / s.played) * 100) : 0; + const scope = ctx.chat?.type === "private" ? "your" : "group"; + return ctx.reply( + `📊 Loldle Ability ${scope} stats\n` + + `Played: ${s.played}\n` + + `Wins: ${s.wins} (${winRate}%)\n` + + `Current streak: ${s.streak}\n` + + `Best streak: ${s.bestStreak}`, + ); +} diff --git a/src/modules/loldle-ability/index.js b/src/modules/loldle-ability/index.js new file mode 100644 index 0000000..fa10152 --- /dev/null +++ b/src/modules/loldle-ability/index.js @@ -0,0 +1,39 @@ +/** + * @file loldle-ability — guess the champion from a single ability icon. + * Pool seeded from Data Dragon (same source loldle.net uses at runtime). + */ + +import { handleAbility, handleGiveup, handleStats } from "./handlers.js"; + +/** @type {import("../../db/kv-store-interface.js").KVStore | null} */ +let db = null; + +/** @type {import("../registry.js").BotModule} */ +const loldleAbilityModule = { + name: "loldle-ability", + init: async ({ db: store }) => { + db = store; + }, + commands: [ + { + name: "loldle_ability", + visibility: "public", + description: "Ability loldle — guess the champion from an ability icon", + handler: (ctx) => handleAbility(ctx, db), + }, + { + name: "loldle_ability_giveup", + visibility: "public", + description: "Reveal the current ability loldle answer", + handler: (ctx) => handleGiveup(ctx, db), + }, + { + name: "loldle_ability_stats", + visibility: "public", + description: "Show your ability loldle stats (wins, streak)", + handler: (ctx) => handleStats(ctx, db), + }, + ], +}; + +export default loldleAbilityModule; diff --git a/src/modules/loldle-ability/lookup.js b/src/modules/loldle-ability/lookup.js new file mode 100644 index 0000000..7b1ccd6 --- /dev/null +++ b/src/modules/loldle-ability/lookup.js @@ -0,0 +1,17 @@ +/** + * @file Champion lookup over the ability pool — case/space/punctuation- + * insensitive with unique-prefix fallback. + */ + +import { normalize } from "../../util/normalize-name.js"; + +export function findChampion(pool, input) { + const q = normalize(input); + if (!q) return null; + + const exact = pool.find((c) => normalize(c.championName) === q); + if (exact) return exact; + + const prefix = pool.filter((c) => normalize(c.championName).startsWith(q)); + return prefix.length === 1 ? prefix[0] : null; +} diff --git a/src/modules/loldle-ability/state.js b/src/modules/loldle-ability/state.js new file mode 100644 index 0000000..91996d9 --- /dev/null +++ b/src/modules/loldle-ability/state.js @@ -0,0 +1,49 @@ +/** + * @file Game + stats persistence for loldle-ability. Adds `slot` field vs + * emoji/quote so the SAME ability icon persists across guesses in a round. + */ + +const MAX_GUESSES = 5; +const GAME_TTL_SECONDS = 60 * 60 * 24 * 7; + +const gameKey = (subject) => `game:${subject}`; +const statsKey = (subject) => `stats:${subject}`; + +export { MAX_GUESSES }; + +export async function loadGame(db, subject) { + return db.getJSON(gameKey(subject)); +} + +export async function saveGame(db, subject, state) { + await db.putJSON(gameKey(subject), state, { expirationTtl: GAME_TTL_SECONDS }); +} + +export async function clearGame(db, subject) { + await db.delete(gameKey(subject)); +} + +export async function loadStats(db, subject) { + return ( + (await db.getJSON(statsKey(subject))) ?? { + played: 0, + wins: 0, + streak: 0, + bestStreak: 0, + } + ); +} + +export async function recordResult(db, subject, won) { + const s = await loadStats(db, subject); + s.played += 1; + if (won) { + s.wins += 1; + s.streak += 1; + if (s.streak > s.bestStreak) s.bestStreak = s.streak; + } else { + s.streak = 0; + } + await db.putJSON(statsKey(subject), s); + return s; +} diff --git a/src/modules/loldle-emoji/README.md b/src/modules/loldle-emoji/README.md index b6d1c42..0c6a479 100644 --- a/src/modules/loldle-emoji/README.md +++ b/src/modules/loldle-emoji/README.md @@ -29,3 +29,8 @@ emoji mapping table. Re-runs are idempotent. emoji code points — emoji sequences live encrypted in a daily-rotating cache, not a full pool. Deriving from metadata gives us all 170+ champions deterministically with no brittle scrape. + +Credits: +- Game concept inspired by [loldle.net](https://loldle.net/)'s emoji mode. +- Emoji mappings are ours (not scraped from loldle.net); any similarity to + their per-champion sequences is coincidental. diff --git a/src/modules/loldle-quote/README.md b/src/modules/loldle-quote/README.md index 73c4be5..ee35990 100644 --- a/src/modules/loldle-quote/README.md +++ b/src/modules/loldle-quote/README.md @@ -30,6 +30,10 @@ Dragon's champion endpoint. Each entry is: The champion's own name is redacted with `___` so it isn't a giveaway. +Credits: +- Game concept inspired by [loldle.net](https://loldle.net/)'s quote mode. +- Lore text © Riot Games, served from their public Data Dragon CDN. + ## Design notes - **No audio hint** — serving MP3s from Workers would eat the bundle budget, diff --git a/src/modules/loldle-splash/README.md b/src/modules/loldle-splash/README.md new file mode 100644 index 0000000..fd16285 --- /dev/null +++ b/src/modules/loldle-splash/README.md @@ -0,0 +1,39 @@ +# loldle-splash + +Guess the champion from splash art (random skin from loldle.net's full +non-chroma pool). Binary right/wrong. 4 guesses per round. + +## Commands + +| Command | Visibility | Description | +|---|---|---| +| `/loldle_splash` | public | Show current splash / submit a guess with `/loldle_splash ` | +| `/loldle_splash_giveup` | public | Reveal the answer, record loss | +| `/loldle_splash_stats` | public | Show per-subject play stats | + +## Storage + +KV prefix: `loldle-splash:` +- `game:` — `{target, skinId, guesses, startedAt}`. `skinId` + persists so the same splash shows across every guess. +- `stats:` — `{played, wins, streak, bestStreak}` + +## Data source + +`splashes.json` is generated by `npm run fetch:ddragon-data`: +- **Skin pool** scraped from [loldle.net](https://loldle.net/)'s JS bundle + (same approach as classic loldle). Guarantees pool parity with their + splash mode — no chromas, same inclusion rules. +- **Splash URLs** built against [Riot Data Dragon](https://ddragon.leagueoflegends.com/)'s + stable-across-patches pattern: `cdn/img/champion/splash/_.jpg`. + +Credits: +- Game concept and skin pool curation from [loldle.net](https://loldle.net/). +- Splash art © Riot Games, served from their public Data Dragon CDN. + +## Design notes + +- **No progressive crop** — full splash from turn 1. Tightest guess budget + in the family (4) since the full image is shown. +- **Random across ALL listed skins** (Default + all named skins, chromas + excluded by loldle.net's pool). diff --git a/src/modules/loldle-splash/handlers.js b/src/modules/loldle-splash/handlers.js new file mode 100644 index 0000000..b75488f --- /dev/null +++ b/src/modules/loldle-splash/handlers.js @@ -0,0 +1,161 @@ +/** + * @file loldle-splash command handlers. + * + * Binary right/wrong — 4 guesses. Random skin (including all non-Default + * skins) drawn per round. `skinId` pinned in round state so the same + * splash persists across every guess. + */ + +import { escapeHtml } from "../../util/escape-html.js"; +import { findChampion } from "./lookup.js"; +import splashesData from "./splashes.json" with { type: "json" }; +import { MAX_GUESSES, clearGame, loadGame, loadStats, recordResult, saveGame } from "./state.js"; + +const POOL = splashesData.filter((c) => c.skins && c.skins.length > 0); + +const NEW_ROUND_HINT = + "🆕 Send /loldle_splash or /loldle_splash <champion> to start a new round."; + +function getSubject(ctx) { + const type = ctx.chat?.type; + if (type === "group" || type === "supergroup") return ctx.chat.id; + return ctx.from?.id ?? null; +} + +function argAfterCommand(text) { + if (!text) return ""; + const idx = text.indexOf(" "); + return idx === -1 ? "" : text.slice(idx + 1).trim(); +} + +function pickRandom() { + return POOL[Math.floor(Math.random() * POOL.length)]; +} + +function findByName(name) { + return POOL.find((c) => c.championName === name); +} + +function pickSkin(champ) { + return champ.skins[Math.floor(Math.random() * champ.skins.length)]; +} + +function getSkinById(champ, id) { + return champ.skins.find((s) => s.id === id); +} + +async function startFreshGame(db, subject) { + const target = pickRandom(); + const skin = pickSkin(target); + const fresh = { + target: target.championName, + skinId: skin.id, + guesses: [], + startedAt: null, + }; + await saveGame(db, subject, fresh); + return fresh; +} + +async function getOrInitGame(db, subject) { + const existing = await loadGame(db, subject); + if (existing && existing.guesses.length < MAX_GUESSES) return existing; + return startFreshGame(db, subject); +} + +function caption(guesses) { + return `🎨 Guess the champion from this splash art. ${guesses.length}/${MAX_GUESSES} guesses so far.`; +} + +export async function handleSplash(ctx, db) { + const subject = getSubject(ctx); + if (subject == null) return ctx.reply("Cannot identify chat."); + const arg = argAfterCommand(ctx.message?.text ?? ""); + + const game = await getOrInitGame(db, subject); + const target = findByName(game.target); + const skin = target && getSkinById(target, game.skinId); + if (!target || !skin) { + await clearGame(db, subject); + return ctx.reply(`Splash data was updated since this round started. ${NEW_ROUND_HINT}`, { + parse_mode: "HTML", + }); + } + + if (!arg) { + return ctx.replyWithPhoto(skin.url, { caption: caption(game.guesses) }); + } + + const guess = findChampion(POOL, arg); + if (!guess) return ctx.reply(`Champion not found: "${arg}".`); + + if (game.guesses.includes(guess.championName)) { + return ctx.reply( + `🔁 ${escapeHtml(guess.championName)} was already guessed this round — try another champion.`, + { parse_mode: "HTML" }, + ); + } + + if (game.startedAt == null) game.startedAt = Date.now(); + game.guesses.push(guess.championName); + const won = guess.championName === target.championName; + const answer = escapeHtml(target.championName); + const skinLabel = `${escapeHtml(skin.name)} skin`; + + if (won) { + const s = await recordResult(db, subject, true); + await clearGame(db, subject); + return ctx.reply( + `🎉 Got it! That was ${answer} in ${skinLabel}. Solved in ${game.guesses.length}/${MAX_GUESSES}\n🔥 Streak: ${s.streak}\n${NEW_ROUND_HINT}`, + { parse_mode: "HTML" }, + ); + } + + if (game.guesses.length >= MAX_GUESSES) { + await recordResult(db, subject, false); + await clearGame(db, subject); + return ctx.reply( + `❌ Out of guesses. Answer was ${answer} in ${skinLabel}.\n${NEW_ROUND_HINT}`, + { parse_mode: "HTML" }, + ); + } + + await saveGame(db, subject, game); + return ctx.reply( + `❌ Not ${escapeHtml(guess.championName)}. Guess ${game.guesses.length}/${MAX_GUESSES}.`, + { parse_mode: "HTML" }, + ); +} + +export async function handleGiveup(ctx, db) { + const subject = getSubject(ctx); + if (subject == null) return ctx.reply("Cannot identify chat."); + const existing = await loadGame(db, subject); + if (!existing) { + return ctx.reply(`No active round. ${NEW_ROUND_HINT}`, { parse_mode: "HTML" }); + } + await recordResult(db, subject, false); + const target = findByName(existing.target); + const skin = target && getSkinById(target, existing.skinId); + await clearGame(db, subject); + const skinLabel = skin ? ` in ${escapeHtml(skin.name)} skin` : ""; + return ctx.reply( + `🏳️ Answer was ${escapeHtml(existing.target)}${skinLabel}.\n${NEW_ROUND_HINT}`, + { parse_mode: "HTML" }, + ); +} + +export async function handleStats(ctx, db) { + const subject = getSubject(ctx); + if (subject == null) return ctx.reply("Cannot identify chat."); + const s = await loadStats(db, subject); + const winRate = s.played ? Math.round((s.wins / s.played) * 100) : 0; + const scope = ctx.chat?.type === "private" ? "your" : "group"; + return ctx.reply( + `📊 Loldle Splash ${scope} stats\n` + + `Played: ${s.played}\n` + + `Wins: ${s.wins} (${winRate}%)\n` + + `Current streak: ${s.streak}\n` + + `Best streak: ${s.bestStreak}`, + ); +} diff --git a/src/modules/loldle-splash/index.js b/src/modules/loldle-splash/index.js new file mode 100644 index 0000000..00f1e14 --- /dev/null +++ b/src/modules/loldle-splash/index.js @@ -0,0 +1,39 @@ +/** + * @file loldle-splash — guess the champion from splash art (random skin). + * Skin pool scraped from loldle.net, splash URLs from Data Dragon CDN. + */ + +import { handleGiveup, handleSplash, handleStats } from "./handlers.js"; + +/** @type {import("../../db/kv-store-interface.js").KVStore | null} */ +let db = null; + +/** @type {import("../registry.js").BotModule} */ +const loldleSplashModule = { + name: "loldle-splash", + init: async ({ db: store }) => { + db = store; + }, + commands: [ + { + name: "loldle_splash", + visibility: "public", + description: "Splash loldle — guess the champion from splash art", + handler: (ctx) => handleSplash(ctx, db), + }, + { + name: "loldle_splash_giveup", + visibility: "public", + description: "Reveal the current splash loldle answer", + handler: (ctx) => handleGiveup(ctx, db), + }, + { + name: "loldle_splash_stats", + visibility: "public", + description: "Show your splash loldle stats (wins, streak)", + handler: (ctx) => handleStats(ctx, db), + }, + ], +}; + +export default loldleSplashModule; diff --git a/src/modules/loldle-splash/lookup.js b/src/modules/loldle-splash/lookup.js new file mode 100644 index 0000000..16fd087 --- /dev/null +++ b/src/modules/loldle-splash/lookup.js @@ -0,0 +1,17 @@ +/** + * @file Champion lookup over the splash pool — case/space/punctuation- + * insensitive with unique-prefix fallback. + */ + +import { normalize } from "../../util/normalize-name.js"; + +export function findChampion(pool, input) { + const q = normalize(input); + if (!q) return null; + + const exact = pool.find((c) => normalize(c.championName) === q); + if (exact) return exact; + + const prefix = pool.filter((c) => normalize(c.championName).startsWith(q)); + return prefix.length === 1 ? prefix[0] : null; +} diff --git a/src/modules/loldle-splash/splashes.json b/src/modules/loldle-splash/splashes.json new file mode 100644 index 0000000..c85f7c5 --- /dev/null +++ b/src/modules/loldle-splash/splashes.json @@ -0,0 +1,10557 @@ +[ + { + "championName": "Aatrox", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aatrox_0.jpg" + }, + { + "id": 1, + "name": "Justicar Aatrox", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aatrox_1.jpg" + }, + { + "id": 2, + "name": "Mecha Aatrox", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aatrox_2.jpg" + }, + { + "id": 3, + "name": "Sea Hunter Aatrox", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aatrox_3.jpg" + }, + { + "id": 7, + "name": "Blood Moon Aatrox", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aatrox_7.jpg" + }, + { + "id": 8, + "name": "Prestige Blood Moon Aatrox", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aatrox_8.jpg" + }, + { + "id": 9, + "name": "Victorious Aatrox", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aatrox_9.jpg" + }, + { + "id": 11, + "name": "Odyssey Aatrox", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aatrox_11.jpg" + }, + { + "id": 21, + "name": "Lunar Eclipse Aatrox", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aatrox_21.jpg" + }, + { + "id": 30, + "name": "DRX Aatrox", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aatrox_30.jpg" + }, + { + "id": 31, + "name": "Prestige DRX Aatrox", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aatrox_31.jpg" + }, + { + "id": 33, + "name": "Primordian Aatrox", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aatrox_33.jpg" + } + ] + }, + { + "championName": "Ahri", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_0.jpg" + }, + { + "id": 1, + "name": "Dynasty Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_1.jpg" + }, + { + "id": 2, + "name": "Midnight Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_2.jpg" + }, + { + "id": 3, + "name": "Foxfire Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_3.jpg" + }, + { + "id": 4, + "name": "Popstar Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_4.jpg" + }, + { + "id": 5, + "name": "Challenger Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_5.jpg" + }, + { + "id": 6, + "name": "Academy Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_6.jpg" + }, + { + "id": 7, + "name": "Arcade Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_7.jpg" + }, + { + "id": 14, + "name": "Star Guardian Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_14.jpg" + }, + { + "id": 15, + "name": "K/DA Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_15.jpg" + }, + { + "id": 16, + "name": "Prestige K/DA Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_16.jpg" + }, + { + "id": 17, + "name": "Elderwood Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_17.jpg" + }, + { + "id": 27, + "name": "Spirit Blossom Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_27.jpg" + }, + { + "id": 28, + "name": "K/DA ALL OUT Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_28.jpg" + }, + { + "id": 42, + "name": "Coven Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_42.jpg" + }, + { + "id": 66, + "name": "Arcana Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_66.jpg" + }, + { + "id": 76, + "name": "Snow Moon Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_76.jpg" + }, + { + "id": 85, + "name": "Risen Legend Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_85.jpg" + }, + { + "id": 86, + "name": "Immortalized Legend Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_86.jpg" + }, + { + "id": 88, + "name": "Spirit Blossom Springs Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_88.jpg" + }, + { + "id": 89, + "name": "After Hours Spirit Blossom Springs Ahri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ahri_89.jpg" + } + ] + }, + { + "championName": "Akali", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_0.jpg" + }, + { + "id": 1, + "name": "Stinger Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_1.jpg" + }, + { + "id": 2, + "name": "Infernal Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_2.jpg" + }, + { + "id": 3, + "name": "All-star Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_3.jpg" + }, + { + "id": 4, + "name": "Nurse Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_4.jpg" + }, + { + "id": 5, + "name": "Blood Moon Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_5.jpg" + }, + { + "id": 6, + "name": "Silverfang Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_6.jpg" + }, + { + "id": 7, + "name": "Headhunter Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_7.jpg" + }, + { + "id": 8, + "name": "Sashimi Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_8.jpg" + }, + { + "id": 9, + "name": "K/DA Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_9.jpg" + }, + { + "id": 13, + "name": "Prestige K/DA Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_13.jpg" + }, + { + "id": 14, + "name": "PROJECT: Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_14.jpg" + }, + { + "id": 15, + "name": "True Damage Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_15.jpg" + }, + { + "id": 32, + "name": "K/DA ALL OUT Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_32.jpg" + }, + { + "id": 50, + "name": "Crime City Nightmare Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_50.jpg" + }, + { + "id": 61, + "name": "Star Guardian Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_61.jpg" + }, + { + "id": 68, + "name": "DRX Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_68.jpg" + }, + { + "id": 70, + "name": "Coven Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_70.jpg" + }, + { + "id": 71, + "name": "Prestige Coven Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_71.jpg" + }, + { + "id": 82, + "name": "Empyrean Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_82.jpg" + }, + { + "id": 92, + "name": "Spirit Blossom Akali", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akali_92.jpg" + } + ] + }, + { + "championName": "Akshan", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akshan_0.jpg" + }, + { + "id": 1, + "name": "Cyber Pop Akshan", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akshan_1.jpg" + }, + { + "id": 10, + "name": "Crystal Rose Akshan", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akshan_10.jpg" + }, + { + "id": 20, + "name": "Three Honors Akshan", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Akshan_20.jpg" + } + ] + }, + { + "championName": "Alistar", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Alistar_0.jpg" + }, + { + "id": 1, + "name": "Black Alistar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Alistar_1.jpg" + }, + { + "id": 2, + "name": "Golden Alistar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Alistar_2.jpg" + }, + { + "id": 3, + "name": "Matador Alistar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Alistar_3.jpg" + }, + { + "id": 4, + "name": "Longhorn Alistar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Alistar_4.jpg" + }, + { + "id": 5, + "name": "Unchained Alistar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Alistar_5.jpg" + }, + { + "id": 6, + "name": "Infernal Alistar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Alistar_6.jpg" + }, + { + "id": 7, + "name": "Sweeper Alistar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Alistar_7.jpg" + }, + { + "id": 8, + "name": "Marauder Alistar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Alistar_8.jpg" + }, + { + "id": 9, + "name": "SKT T1 Alistar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Alistar_9.jpg" + }, + { + "id": 10, + "name": "Moo Cow Alistar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Alistar_10.jpg" + }, + { + "id": 19, + "name": "Hextech Alistar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Alistar_19.jpg" + }, + { + "id": 20, + "name": "Conqueror Alistar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Alistar_20.jpg" + }, + { + "id": 22, + "name": "Blackfrost Alistar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Alistar_22.jpg" + }, + { + "id": 29, + "name": "Lunar Beast Alistar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Alistar_29.jpg" + }, + { + "id": 40, + "name": "Elderwood Alistar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Alistar_40.jpg" + } + ] + }, + { + "championName": "Ambessa", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ambessa_0.jpg" + }, + { + "id": 1, + "name": "Chosen of the Wolf Ambessa", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ambessa_1.jpg" + } + ] + }, + { + "championName": "Amumu", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Amumu_0.jpg" + }, + { + "id": 1, + "name": "Pharaoh Amumu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Amumu_1.jpg" + }, + { + "id": 2, + "name": "Vancouver Amumu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Amumu_2.jpg" + }, + { + "id": 3, + "name": "Emumu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Amumu_3.jpg" + }, + { + "id": 4, + "name": "Re-Gifted Amumu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Amumu_4.jpg" + }, + { + "id": 5, + "name": "Almost-Prom King Amumu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Amumu_5.jpg" + }, + { + "id": 6, + "name": "Little Knight Amumu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Amumu_6.jpg" + }, + { + "id": 7, + "name": "Sad Robot Amumu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Amumu_7.jpg" + }, + { + "id": 8, + "name": "Surprise Party Amumu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Amumu_8.jpg" + }, + { + "id": 17, + "name": "Infernal Amumu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Amumu_17.jpg" + }, + { + "id": 23, + "name": "Hextech Amumu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Amumu_23.jpg" + }, + { + "id": 24, + "name": "Pumpkin Prince Amumu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Amumu_24.jpg" + }, + { + "id": 34, + "name": "Porcelain Amumu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Amumu_34.jpg" + }, + { + "id": 44, + "name": "Heartache Amumu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Amumu_44.jpg" + }, + { + "id": 53, + "name": "Dumpling Darlings Amumu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Amumu_53.jpg" + } + ] + }, + { + "championName": "Anivia", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Anivia_0.jpg" + }, + { + "id": 1, + "name": "Team Spirit Anivia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Anivia_1.jpg" + }, + { + "id": 2, + "name": "Bird of Prey Anivia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Anivia_2.jpg" + }, + { + "id": 3, + "name": "Noxus Hunter Anivia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Anivia_3.jpg" + }, + { + "id": 4, + "name": "Hextech Anivia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Anivia_4.jpg" + }, + { + "id": 5, + "name": "Blackfrost Anivia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Anivia_5.jpg" + }, + { + "id": 6, + "name": "Prehistoric Anivia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Anivia_6.jpg" + }, + { + "id": 7, + "name": "Festival Queen Anivia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Anivia_7.jpg" + }, + { + "id": 8, + "name": "Papercraft Anivia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Anivia_8.jpg" + }, + { + "id": 17, + "name": "Cosmic Flight Anivia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Anivia_17.jpg" + }, + { + "id": 27, + "name": "Divine Phoenix Anivia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Anivia_27.jpg" + }, + { + "id": 37, + "name": "Bewitching Batnivia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Anivia_37.jpg" + }, + { + "id": 46, + "name": "Victorious Anivia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Anivia_46.jpg" + } + ] + }, + { + "championName": "Annie", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_0.jpg" + }, + { + "id": 1, + "name": "Goth Annie", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_1.jpg" + }, + { + "id": 2, + "name": "Red Riding Annie", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_2.jpg" + }, + { + "id": 3, + "name": "Annie in Wonderland", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_3.jpg" + }, + { + "id": 4, + "name": "Prom Queen Annie", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_4.jpg" + }, + { + "id": 5, + "name": "Frostfire Annie", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_5.jpg" + }, + { + "id": 6, + "name": "Reverse Annie", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_6.jpg" + }, + { + "id": 7, + "name": "FrankenTibbers Annie", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_7.jpg" + }, + { + "id": 8, + "name": "Panda Annie", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_8.jpg" + }, + { + "id": 9, + "name": "Sweetheart Annie", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_9.jpg" + }, + { + "id": 10, + "name": "Hextech Annie", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_10.jpg" + }, + { + "id": 11, + "name": "Super Galaxy Annie", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_11.jpg" + }, + { + "id": 12, + "name": "Annie-Versary", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_12.jpg" + }, + { + "id": 13, + "name": "Lunar Beast Annie", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_13.jpg" + }, + { + "id": 22, + "name": "Cafe Cuties Annie", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_22.jpg" + }, + { + "id": 31, + "name": "Fright Night Annie", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_31.jpg" + }, + { + "id": 40, + "name": "Winterblessed Annie", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_40.jpg" + }, + { + "id": 50, + "name": "Battle Princess Annie", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Annie_50.jpg" + } + ] + }, + { + "championName": "Aphelios", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aphelios_0.jpg" + }, + { + "id": 1, + "name": "Nightbringer Aphelios", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aphelios_1.jpg" + }, + { + "id": 9, + "name": "Lunar Beast Aphelios", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aphelios_9.jpg" + }, + { + "id": 18, + "name": "EDG Aphelios", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aphelios_18.jpg" + }, + { + "id": 20, + "name": "Spirit Blossom Aphelios", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aphelios_20.jpg" + }, + { + "id": 30, + "name": "HEARTSTEEL Aphelios", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aphelios_30.jpg" + }, + { + "id": 40, + "name": "Prestige Spirit Blossom Springs Aphelios", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aphelios_40.jpg" + } + ] + }, + { + "championName": "Ashe", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_0.jpg" + }, + { + "id": 1, + "name": "Freljord Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_1.jpg" + }, + { + "id": 2, + "name": "Sherwood Forest Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_2.jpg" + }, + { + "id": 3, + "name": "Woad Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_3.jpg" + }, + { + "id": 4, + "name": "Queen Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_4.jpg" + }, + { + "id": 5, + "name": "Amethyst Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_5.jpg" + }, + { + "id": 6, + "name": "Heartseeker Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_6.jpg" + }, + { + "id": 7, + "name": "Marauder Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_7.jpg" + }, + { + "id": 8, + "name": "PROJECT: Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_8.jpg" + }, + { + "id": 11, + "name": "Cosmic Queen Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_11.jpg" + }, + { + "id": 17, + "name": "High Noon Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_17.jpg" + }, + { + "id": 23, + "name": "Fae Dragon Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_23.jpg" + }, + { + "id": 32, + "name": "Coven Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_32.jpg" + }, + { + "id": 43, + "name": "Ocean Song Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_43.jpg" + }, + { + "id": 52, + "name": "Lunar Empress Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_52.jpg" + }, + { + "id": 63, + "name": "DRX Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_63.jpg" + }, + { + "id": 65, + "name": "Crystalis Motus Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_65.jpg" + }, + { + "id": 67, + "name": "Infernal Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_67.jpg" + }, + { + "id": 76, + "name": "Spirit Blossom Ashe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ashe_76.jpg" + } + ] + }, + { + "championName": "Aurelion Sol", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/AurelionSol_0.jpg" + }, + { + "id": 1, + "name": "Ashen Lord Aurelion Sol", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/AurelionSol_1.jpg" + }, + { + "id": 2, + "name": "Mecha Aurelion Sol", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/AurelionSol_2.jpg" + }, + { + "id": 11, + "name": "Storm Dragon Aurelion Sol", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/AurelionSol_11.jpg" + } + ] + }, + { + "championName": "Aurora", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aurora_0.jpg" + }, + { + "id": 1, + "name": "Battle Bunny Aurora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aurora_1.jpg" + }, + { + "id": 11, + "name": "Arcana Aurora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Aurora_11.jpg" + } + ] + }, + { + "championName": "Azir", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Azir_0.jpg" + }, + { + "id": 1, + "name": "Galactic Azir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Azir_1.jpg" + }, + { + "id": 2, + "name": "Gravelord Azir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Azir_2.jpg" + }, + { + "id": 3, + "name": "SKT T1 Azir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Azir_3.jpg" + }, + { + "id": 4, + "name": "Warring Kingdoms Azir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Azir_4.jpg" + }, + { + "id": 5, + "name": "Elderwood Azir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Azir_5.jpg" + }, + { + "id": 14, + "name": "Worlds 2022 Azir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Azir_14.jpg" + }, + { + "id": 19, + "name": "Attorney Azir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Azir_19.jpg" + } + ] + }, + { + "championName": "Bard", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Bard_0.jpg" + }, + { + "id": 1, + "name": "Elderwood Bard", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Bard_1.jpg" + }, + { + "id": 5, + "name": "Snow Day Bard", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Bard_5.jpg" + }, + { + "id": 6, + "name": "Bard Bard", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Bard_6.jpg" + }, + { + "id": 8, + "name": "Astronaut Bard", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Bard_8.jpg" + }, + { + "id": 17, + "name": "Cafe Cuties Bard", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Bard_17.jpg" + }, + { + "id": 26, + "name": "Shan Hai Scrolls Bard", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Bard_26.jpg" + }, + { + "id": 35, + "name": "T1 Bard", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Bard_35.jpg" + }, + { + "id": 37, + "name": "Spirit Blossom Bard", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Bard_37.jpg" + } + ] + }, + { + "championName": "Bel'Veth", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Belveth_0.jpg" + }, + { + "id": 1, + "name": "Battle Boss Bel'Veth", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Belveth_1.jpg" + } + ] + }, + { + "championName": "Blitzcrank", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Blitzcrank_0.jpg" + }, + { + "id": 1, + "name": "Rusty Blitzcrank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Blitzcrank_1.jpg" + }, + { + "id": 2, + "name": "Goalkeeper Blitzcrank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Blitzcrank_2.jpg" + }, + { + "id": 3, + "name": "Boom Boom Blitzcrank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Blitzcrank_3.jpg" + }, + { + "id": 4, + "name": "Piltover Customs Blitzcrank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Blitzcrank_4.jpg" + }, + { + "id": 5, + "name": "Definitely Not Blitzcrank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Blitzcrank_5.jpg" + }, + { + "id": 6, + "name": "iBlitzcrank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Blitzcrank_6.jpg" + }, + { + "id": 7, + "name": "Riot Blitzcrank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Blitzcrank_7.jpg" + }, + { + "id": 11, + "name": "Battle Boss Blitzcrank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Blitzcrank_11.jpg" + }, + { + "id": 20, + "name": "Lancer Rogue Blitzcrank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Blitzcrank_20.jpg" + }, + { + "id": 21, + "name": "Lancer Paragon Blitzcrank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Blitzcrank_21.jpg" + }, + { + "id": 22, + "name": "Witch's Brew Blitzcrank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Blitzcrank_22.jpg" + }, + { + "id": 29, + "name": "Space Groove Blitz & Crank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Blitzcrank_29.jpg" + }, + { + "id": 36, + "name": "Victorious Blitzcrank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Blitzcrank_36.jpg" + }, + { + "id": 47, + "name": "Zenith Games Blitzcrank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Blitzcrank_47.jpg" + }, + { + "id": 56, + "name": "Beezcrank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Blitzcrank_56.jpg" + } + ] + }, + { + "championName": "Brand", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Brand_0.jpg" + }, + { + "id": 1, + "name": "Apocalyptic Brand", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Brand_1.jpg" + }, + { + "id": 2, + "name": "Vandal Brand", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Brand_2.jpg" + }, + { + "id": 3, + "name": "Cryocore Brand", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Brand_3.jpg" + }, + { + "id": 4, + "name": "Zombie Brand", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Brand_4.jpg" + }, + { + "id": 5, + "name": "Spirit Fire Brand", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Brand_5.jpg" + }, + { + "id": 6, + "name": "Battle Boss Brand", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Brand_6.jpg" + }, + { + "id": 7, + "name": "Arclight Brand", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Brand_7.jpg" + }, + { + "id": 8, + "name": "Eternal Dragon Brand", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Brand_8.jpg" + }, + { + "id": 21, + "name": "Debonair Brand", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Brand_21.jpg" + }, + { + "id": 22, + "name": "Prestige Debonair Brand", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Brand_22.jpg" + }, + { + "id": 33, + "name": "Street Demons Brand", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Brand_33.jpg" + }, + { + "id": 42, + "name": "Empyrean Brand", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Brand_42.jpg" + } + ] + }, + { + "championName": "Braum", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Braum_0.jpg" + }, + { + "id": 1, + "name": "Dragonslayer Braum", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Braum_1.jpg" + }, + { + "id": 2, + "name": "El Tigre Braum", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Braum_2.jpg" + }, + { + "id": 3, + "name": "Braum Lionheart", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Braum_3.jpg" + }, + { + "id": 10, + "name": "Santa Braum", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Braum_10.jpg" + }, + { + "id": 11, + "name": "Crime City Braum", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Braum_11.jpg" + }, + { + "id": 24, + "name": "Sugar Rush Braum", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Braum_24.jpg" + }, + { + "id": 33, + "name": "Pool Party Braum", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Braum_33.jpg" + }, + { + "id": 42, + "name": "Grill Master Braum", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Braum_42.jpg" + } + ] + }, + { + "championName": "Briar", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Briar_0.jpg" + }, + { + "id": 1, + "name": "Street Demons Briar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Briar_1.jpg" + }, + { + "id": 10, + "name": "Primordian Briar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Briar_10.jpg" + } + ] + }, + { + "championName": "Caitlyn", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_0.jpg" + }, + { + "id": 1, + "name": "Resistance Caitlyn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_1.jpg" + }, + { + "id": 2, + "name": "Sheriff Caitlyn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_2.jpg" + }, + { + "id": 3, + "name": "Safari Caitlyn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_3.jpg" + }, + { + "id": 4, + "name": "Arctic Warfare Caitlyn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_4.jpg" + }, + { + "id": 5, + "name": "Officer Caitlyn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_5.jpg" + }, + { + "id": 6, + "name": "Headhunter Caitlyn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_6.jpg" + }, + { + "id": 10, + "name": "Lunar Wraith Caitlyn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_10.jpg" + }, + { + "id": 11, + "name": "Pulsefire Caitlyn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_11.jpg" + }, + { + "id": 13, + "name": "Pool Party Caitlyn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_13.jpg" + }, + { + "id": 19, + "name": "Arcade Caitlyn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_19.jpg" + }, + { + "id": 20, + "name": "Prestige Arcade Caitlyn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_20.jpg" + }, + { + "id": 22, + "name": "Battle Academia Caitlyn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_22.jpg" + }, + { + "id": 30, + "name": "Snow Moon Caitlyn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_30.jpg" + }, + { + "id": 39, + "name": "Heartthrob Caitlyn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_39.jpg" + }, + { + "id": 48, + "name": "DRX Caitlyn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_48.jpg" + }, + { + "id": 50, + "name": "Arcane Commander Caitlyn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_50.jpg" + }, + { + "id": 51, + "name": "Prestige Arcane Commander Caitlyn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Caitlyn_51.jpg" + } + ] + }, + { + "championName": "Camille", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Camille_0.jpg" + }, + { + "id": 1, + "name": "Program Camille", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Camille_1.jpg" + }, + { + "id": 2, + "name": "Coven Camille", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Camille_2.jpg" + }, + { + "id": 10, + "name": "iG Camille", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Camille_10.jpg" + }, + { + "id": 11, + "name": "Arcana Camille", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Camille_11.jpg" + }, + { + "id": 21, + "name": "Strike Commander Camille", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Camille_21.jpg" + }, + { + "id": 31, + "name": "Winterblessed Camille", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Camille_31.jpg" + }, + { + "id": 32, + "name": "Prestige Winterblessed Camille", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Camille_32.jpg" + } + ] + }, + { + "championName": "Cassiopeia", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Cassiopeia_0.jpg" + }, + { + "id": 1, + "name": "Desperada Cassiopeia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Cassiopeia_1.jpg" + }, + { + "id": 2, + "name": "Siren Cassiopeia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Cassiopeia_2.jpg" + }, + { + "id": 3, + "name": "Mythic Cassiopeia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Cassiopeia_3.jpg" + }, + { + "id": 4, + "name": "Jade Fang Cassiopeia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Cassiopeia_4.jpg" + }, + { + "id": 8, + "name": "Eternum Cassiopeia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Cassiopeia_8.jpg" + }, + { + "id": 9, + "name": "Spirit Blossom Cassiopeia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Cassiopeia_9.jpg" + }, + { + "id": 18, + "name": "Coven Cassiopeia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Cassiopeia_18.jpg" + }, + { + "id": 28, + "name": "Bewitching Cassiopeia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Cassiopeia_28.jpg" + }, + { + "id": 38, + "name": "Prestige Mythmaker Cassiopeia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Cassiopeia_38.jpg" + } + ] + }, + { + "championName": "Cho'Gath", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Chogath_0.jpg" + }, + { + "id": 1, + "name": "Nightmare Cho'Gath", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Chogath_1.jpg" + }, + { + "id": 2, + "name": "Gentleman Cho'Gath", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Chogath_2.jpg" + }, + { + "id": 3, + "name": "Loch Ness Cho'Gath", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Chogath_3.jpg" + }, + { + "id": 4, + "name": "Jurassic Cho'Gath", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Chogath_4.jpg" + }, + { + "id": 5, + "name": "Battlecast Prime Cho'Gath", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Chogath_5.jpg" + }, + { + "id": 6, + "name": "Prehistoric Cho'Gath", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Chogath_6.jpg" + }, + { + "id": 7, + "name": "Dark Star Cho'Gath", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Chogath_7.jpg" + }, + { + "id": 14, + "name": "Shan Hai Scrolls Cho'Gath", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Chogath_14.jpg" + } + ] + }, + { + "championName": "Corki", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Corki_0.jpg" + }, + { + "id": 1, + "name": "UFO Corki", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Corki_1.jpg" + }, + { + "id": 2, + "name": "Ice Toboggan Corki", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Corki_2.jpg" + }, + { + "id": 3, + "name": "Red Baron Corki", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Corki_3.jpg" + }, + { + "id": 4, + "name": "Hot Rod Corki", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Corki_4.jpg" + }, + { + "id": 5, + "name": "Urfrider Corki", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Corki_5.jpg" + }, + { + "id": 6, + "name": "Dragonwing Corki", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Corki_6.jpg" + }, + { + "id": 7, + "name": "Fnatic Corki", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Corki_7.jpg" + }, + { + "id": 8, + "name": "Arcade Corki", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Corki_8.jpg" + }, + { + "id": 18, + "name": "Corgi Corki", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Corki_18.jpg" + }, + { + "id": 26, + "name": "Astronaut Corki", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Corki_26.jpg" + }, + { + "id": 36, + "name": "Brick Toy Corki", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Corki_36.jpg" + } + ] + }, + { + "championName": "Darius", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Darius_0.jpg" + }, + { + "id": 1, + "name": "Lord Darius", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Darius_1.jpg" + }, + { + "id": 2, + "name": "Bioforge Darius", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Darius_2.jpg" + }, + { + "id": 3, + "name": "Woad King Darius", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Darius_3.jpg" + }, + { + "id": 4, + "name": "Dunkmaster Darius", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Darius_4.jpg" + }, + { + "id": 8, + "name": "Academy Darius", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Darius_8.jpg" + }, + { + "id": 14, + "name": "Dreadnova Darius", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Darius_14.jpg" + }, + { + "id": 15, + "name": "God-King Darius", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Darius_15.jpg" + }, + { + "id": 16, + "name": "High Noon Darius", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Darius_16.jpg" + }, + { + "id": 24, + "name": "Lunar Beast Darius", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Darius_24.jpg" + }, + { + "id": 33, + "name": "Crime City Nightmare Darius", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Darius_33.jpg" + }, + { + "id": 43, + "name": "Spirit Blossom Darius", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Darius_43.jpg" + }, + { + "id": 54, + "name": "Porcelain Darius", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Darius_54.jpg" + }, + { + "id": 64, + "name": "Divine God-King Darius", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Darius_64.jpg" + }, + { + "id": 65, + "name": "Prestige Triumphant General Darius", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Darius_65.jpg" + } + ] + }, + { + "championName": "Diana", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Diana_0.jpg" + }, + { + "id": 1, + "name": "Dark Valkyrie Diana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Diana_1.jpg" + }, + { + "id": 2, + "name": "Lunar Goddess Diana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Diana_2.jpg" + }, + { + "id": 3, + "name": "Infernal Diana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Diana_3.jpg" + }, + { + "id": 11, + "name": "Blood Moon Diana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Diana_11.jpg" + }, + { + "id": 12, + "name": "Dark Waters Diana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Diana_12.jpg" + }, + { + "id": 18, + "name": "Dragonslayer Diana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Diana_18.jpg" + }, + { + "id": 25, + "name": "Battle Queen Diana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Diana_25.jpg" + }, + { + "id": 26, + "name": "Prestige Battle Queen Diana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Diana_26.jpg" + }, + { + "id": 27, + "name": "Sentinel Diana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Diana_27.jpg" + }, + { + "id": 37, + "name": "Firecracker Diana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Diana_37.jpg" + }, + { + "id": 47, + "name": "Winterblessed Diana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Diana_47.jpg" + }, + { + "id": 54, + "name": "Heavenscale Diana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Diana_54.jpg" + }, + { + "id": 64, + "name": "Dark Cosmic Diana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Diana_64.jpg" + }, + { + "id": 65, + "name": "Prestige Dark Cosmic Diana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Diana_65.jpg" + } + ] + }, + { + "championName": "Dr. Mundo", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/DrMundo_0.jpg" + }, + { + "id": 1, + "name": "Toxic Dr. Mundo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/DrMundo_1.jpg" + }, + { + "id": 2, + "name": "Mr. Mundoverse", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/DrMundo_2.jpg" + }, + { + "id": 3, + "name": "Corporate Mundo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/DrMundo_3.jpg" + }, + { + "id": 4, + "name": "Mundo Mundo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/DrMundo_4.jpg" + }, + { + "id": 5, + "name": "Executioner Mundo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/DrMundo_5.jpg" + }, + { + "id": 6, + "name": "Rageborn Mundo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/DrMundo_6.jpg" + }, + { + "id": 7, + "name": "TPA Mundo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/DrMundo_7.jpg" + }, + { + "id": 8, + "name": "Pool Party Mundo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/DrMundo_8.jpg" + }, + { + "id": 9, + "name": "El Macho Mundo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/DrMundo_9.jpg" + }, + { + "id": 10, + "name": "Frozen Prince Mundo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/DrMundo_10.jpg" + } + ] + }, + { + "championName": "Draven", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Draven_0.jpg" + }, + { + "id": 1, + "name": "Soul Reaver Draven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Draven_1.jpg" + }, + { + "id": 2, + "name": "Gladiator Draven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Draven_2.jpg" + }, + { + "id": 3, + "name": "Primetime Draven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Draven_3.jpg" + }, + { + "id": 4, + "name": "Pool Party Draven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Draven_4.jpg" + }, + { + "id": 5, + "name": "Beast Hunter Draven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Draven_5.jpg" + }, + { + "id": 6, + "name": "Draven Draven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Draven_6.jpg" + }, + { + "id": 12, + "name": "Santa Draven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Draven_12.jpg" + }, + { + "id": 13, + "name": "Mecha Kingdoms Draven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Draven_13.jpg" + }, + { + "id": 20, + "name": "Ruined Draven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Draven_20.jpg" + }, + { + "id": 29, + "name": "Debonair Draven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Draven_29.jpg" + }, + { + "id": 39, + "name": "Fright Night Draven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Draven_39.jpg" + }, + { + "id": 48, + "name": "La Ilusión Draven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Draven_48.jpg" + }, + { + "id": 58, + "name": "Grand Reckoning Draven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Draven_58.jpg" + } + ] + }, + { + "championName": "Ekko", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ekko_0.jpg" + }, + { + "id": 1, + "name": "Sandstorm Ekko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ekko_1.jpg" + }, + { + "id": 2, + "name": "Academy Ekko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ekko_2.jpg" + }, + { + "id": 3, + "name": "PROJECT: Ekko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ekko_3.jpg" + }, + { + "id": 11, + "name": "SKT T1 Ekko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ekko_11.jpg" + }, + { + "id": 12, + "name": "Trick or Treat Ekko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ekko_12.jpg" + }, + { + "id": 19, + "name": "True Damage Ekko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ekko_19.jpg" + }, + { + "id": 28, + "name": "Pulsefire Ekko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ekko_28.jpg" + }, + { + "id": 45, + "name": "Star Guardian Ekko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ekko_45.jpg" + }, + { + "id": 46, + "name": "Prestige Star Guardian Ekko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ekko_46.jpg" + }, + { + "id": 56, + "name": "Breakout True Damage Ekko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ekko_56.jpg" + }, + { + "id": 57, + "name": "Arcane Last Stand Ekko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ekko_57.jpg" + } + ] + }, + { + "championName": "Elise", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Elise_0.jpg" + }, + { + "id": 1, + "name": "Death Blossom Elise", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Elise_1.jpg" + }, + { + "id": 2, + "name": "Victorious Elise", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Elise_2.jpg" + }, + { + "id": 3, + "name": "Blood Moon Elise", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Elise_3.jpg" + }, + { + "id": 4, + "name": "SKT T1 Elise", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Elise_4.jpg" + }, + { + "id": 5, + "name": "Super Galaxy Elise", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Elise_5.jpg" + }, + { + "id": 6, + "name": "Bewitching Elise", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Elise_6.jpg" + }, + { + "id": 15, + "name": "Withered Rose Elise", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Elise_15.jpg" + }, + { + "id": 24, + "name": "Coven Elise", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Elise_24.jpg" + }, + { + "id": 34, + "name": "Masque of the Black Rose Elise", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Elise_34.jpg" + } + ] + }, + { + "championName": "Evelynn", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Evelynn_0.jpg" + }, + { + "id": 1, + "name": "Shadow Evelynn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Evelynn_1.jpg" + }, + { + "id": 2, + "name": "Masquerade Evelynn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Evelynn_2.jpg" + }, + { + "id": 3, + "name": "Tango Evelynn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Evelynn_3.jpg" + }, + { + "id": 4, + "name": "Safecracker Evelynn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Evelynn_4.jpg" + }, + { + "id": 5, + "name": "Blood Moon Evelynn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Evelynn_5.jpg" + }, + { + "id": 6, + "name": "K/DA Evelynn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Evelynn_6.jpg" + }, + { + "id": 7, + "name": "Prestige K/DA Evelynn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Evelynn_7.jpg" + }, + { + "id": 8, + "name": "Sugar Rush Evelynn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Evelynn_8.jpg" + }, + { + "id": 15, + "name": "K/DA ALL OUT Evelynn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Evelynn_15.jpg" + }, + { + "id": 24, + "name": "Coven Evelynn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Evelynn_24.jpg" + }, + { + "id": 32, + "name": "Spirit Blossom Evelynn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Evelynn_32.jpg" + }, + { + "id": 42, + "name": "Soul Fighter Evelynn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Evelynn_42.jpg" + }, + { + "id": 52, + "name": "High Noon Evelynn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Evelynn_52.jpg" + }, + { + "id": 53, + "name": "Prestige High Noon Evelynn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Evelynn_53.jpg" + }, + { + "id": 64, + "name": "Nightbringer Evelynn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Evelynn_64.jpg" + } + ] + }, + { + "championName": "Ezreal", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_0.jpg" + }, + { + "id": 1, + "name": "Nottingham Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_1.jpg" + }, + { + "id": 2, + "name": "Striker Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_2.jpg" + }, + { + "id": 3, + "name": "Frosted Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_3.jpg" + }, + { + "id": 4, + "name": "Explorer Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_4.jpg" + }, + { + "id": 5, + "name": "Pulsefire Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_5.jpg" + }, + { + "id": 6, + "name": "TPA Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_6.jpg" + }, + { + "id": 7, + "name": "Debonair Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_7.jpg" + }, + { + "id": 8, + "name": "Ace of Spades Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_8.jpg" + }, + { + "id": 9, + "name": "Arcade Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_9.jpg" + }, + { + "id": 18, + "name": "Star Guardian Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_18.jpg" + }, + { + "id": 19, + "name": "SSG Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_19.jpg" + }, + { + "id": 20, + "name": "Pajama Guardian Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_20.jpg" + }, + { + "id": 21, + "name": "Battle Academia Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_21.jpg" + }, + { + "id": 22, + "name": "PsyOps Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_22.jpg" + }, + { + "id": 23, + "name": "Prestige PsyOps Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_23.jpg" + }, + { + "id": 25, + "name": "Porcelain Protector Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_25.jpg" + }, + { + "id": 33, + "name": "Faerie Court Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_33.jpg" + }, + { + "id": 43, + "name": "HEARTSTEEL Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_43.jpg" + }, + { + "id": 44, + "name": "Heavenscale Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_44.jpg" + }, + { + "id": 54, + "name": "Prestige Heavenscale Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_54.jpg" + }, + { + "id": 65, + "name": "Masque of the Black Rose Ezreal", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ezreal_65.jpg" + } + ] + }, + { + "championName": "Fiddlesticks", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiddlesticks_0.jpg" + }, + { + "id": 1, + "name": "Spectral Fiddlesticks", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiddlesticks_1.jpg" + }, + { + "id": 2, + "name": "Union Jack Fiddlesticks", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiddlesticks_2.jpg" + }, + { + "id": 3, + "name": "Bandito Fiddlesticks", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiddlesticks_3.jpg" + }, + { + "id": 4, + "name": "Pumpkinhead Fiddlesticks", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiddlesticks_4.jpg" + }, + { + "id": 5, + "name": "Fiddle Me Timbers", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiddlesticks_5.jpg" + }, + { + "id": 6, + "name": "Surprise Party Fiddlesticks", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiddlesticks_6.jpg" + }, + { + "id": 7, + "name": "Dark Candy Fiddlesticks", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiddlesticks_7.jpg" + }, + { + "id": 8, + "name": "Risen Fiddlesticks", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiddlesticks_8.jpg" + }, + { + "id": 9, + "name": "Praetorian Fiddlesticks", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiddlesticks_9.jpg" + }, + { + "id": 27, + "name": "Star Nemesis Fiddlesticks", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiddlesticks_27.jpg" + }, + { + "id": 37, + "name": "Blood Moon Fiddlesticks", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiddlesticks_37.jpg" + } + ] + }, + { + "championName": "Fiora", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiora_0.jpg" + }, + { + "id": 1, + "name": "Royal Guard Fiora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiora_1.jpg" + }, + { + "id": 2, + "name": "Nightraven Fiora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiora_2.jpg" + }, + { + "id": 3, + "name": "Headmistress Fiora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiora_3.jpg" + }, + { + "id": 4, + "name": "PROJECT: Fiora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiora_4.jpg" + }, + { + "id": 5, + "name": "Pool Party Fiora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiora_5.jpg" + }, + { + "id": 22, + "name": "Soaring Sword Fiora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiora_22.jpg" + }, + { + "id": 23, + "name": "Heartpiercer Fiora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiora_23.jpg" + }, + { + "id": 31, + "name": "iG Fiora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiora_31.jpg" + }, + { + "id": 41, + "name": "Pulsefire Fiora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiora_41.jpg" + }, + { + "id": 50, + "name": "Lunar Beast Fiora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiora_50.jpg" + }, + { + "id": 51, + "name": "Prestige Lunar Beast Fiora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiora_51.jpg" + }, + { + "id": 60, + "name": "Bewitching Fiora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiora_60.jpg" + }, + { + "id": 69, + "name": "Faerie Court Fiora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiora_69.jpg" + }, + { + "id": 80, + "name": "Dragonmancer Fiora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiora_80.jpg" + }, + { + "id": 89, + "name": "Battle Queen Fiora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiora_89.jpg" + }, + { + "id": 98, + "name": "Victorious Fiora", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fiora_98.jpg" + } + ] + }, + { + "championName": "Fizz", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fizz_0.jpg" + }, + { + "id": 1, + "name": "Atlantean Fizz", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fizz_1.jpg" + }, + { + "id": 2, + "name": "Tundra Fizz", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fizz_2.jpg" + }, + { + "id": 3, + "name": "Fisherman Fizz", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fizz_3.jpg" + }, + { + "id": 4, + "name": "Void Fizz", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fizz_4.jpg" + }, + { + "id": 8, + "name": "Cottontail Fizz", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fizz_8.jpg" + }, + { + "id": 9, + "name": "Super Galaxy Fizz", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fizz_9.jpg" + }, + { + "id": 10, + "name": "Omega Squad Fizz", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fizz_10.jpg" + }, + { + "id": 14, + "name": "Fuzz Fizz", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fizz_14.jpg" + }, + { + "id": 15, + "name": "Prestige Fuzz Fizz", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fizz_15.jpg" + }, + { + "id": 16, + "name": "Little Devil Fizz", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fizz_16.jpg" + }, + { + "id": 26, + "name": "Astronaut Fizz", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fizz_26.jpg" + }, + { + "id": 35, + "name": "Rain Shepherd Fizz", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Fizz_35.jpg" + } + ] + }, + { + "championName": "Galio", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Galio_0.jpg" + }, + { + "id": 1, + "name": "Enchanted Galio", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Galio_1.jpg" + }, + { + "id": 2, + "name": "Hextech Galio", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Galio_2.jpg" + }, + { + "id": 3, + "name": "Commando Galio", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Galio_3.jpg" + }, + { + "id": 4, + "name": "Gatekeeper Galio", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Galio_4.jpg" + }, + { + "id": 5, + "name": "Debonair Galio", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Galio_5.jpg" + }, + { + "id": 6, + "name": "Birdio", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Galio_6.jpg" + }, + { + "id": 13, + "name": "Infernal Galio", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Galio_13.jpg" + }, + { + "id": 19, + "name": "Dragon Guardian Galio", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Galio_19.jpg" + }, + { + "id": 28, + "name": "Mythmaker Galio", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Galio_28.jpg" + } + ] + }, + { + "championName": "Gangplank", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gangplank_0.jpg" + }, + { + "id": 1, + "name": "Spooky Gangplank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gangplank_1.jpg" + }, + { + "id": 2, + "name": "Minuteman Gangplank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gangplank_2.jpg" + }, + { + "id": 3, + "name": "Sailor Gangplank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gangplank_3.jpg" + }, + { + "id": 4, + "name": "Toy Soldier Gangplank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gangplank_4.jpg" + }, + { + "id": 5, + "name": "Special Forces Gangplank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gangplank_5.jpg" + }, + { + "id": 6, + "name": "Sultan Gangplank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gangplank_6.jpg" + }, + { + "id": 7, + "name": "Captain Gangplank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gangplank_7.jpg" + }, + { + "id": 8, + "name": "Dreadnova Gangplank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gangplank_8.jpg" + }, + { + "id": 14, + "name": "Pool Party Gangplank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gangplank_14.jpg" + }, + { + "id": 21, + "name": "FPX Gangplank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gangplank_21.jpg" + }, + { + "id": 23, + "name": "Gangplank the Betrayer", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gangplank_23.jpg" + }, + { + "id": 33, + "name": "PROJECT: Gangplank", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gangplank_33.jpg" + } + ] + }, + { + "championName": "Garen", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Garen_0.jpg" + }, + { + "id": 1, + "name": "Sanguine Garen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Garen_1.jpg" + }, + { + "id": 2, + "name": "Desert Trooper Garen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Garen_2.jpg" + }, + { + "id": 3, + "name": "Commando Garen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Garen_3.jpg" + }, + { + "id": 4, + "name": "Dreadknight Garen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Garen_4.jpg" + }, + { + "id": 5, + "name": "Rugged Garen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Garen_5.jpg" + }, + { + "id": 6, + "name": "Steel Legion Garen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Garen_6.jpg" + }, + { + "id": 10, + "name": "Rogue Admiral Garen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Garen_10.jpg" + }, + { + "id": 11, + "name": "Warring Kingdoms Garen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Garen_11.jpg" + }, + { + "id": 13, + "name": "God-King Garen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Garen_13.jpg" + }, + { + "id": 14, + "name": "Demacia Vice Garen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Garen_14.jpg" + }, + { + "id": 22, + "name": "Mecha Kingdoms Garen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Garen_22.jpg" + }, + { + "id": 23, + "name": "Prestige Mecha Kingdoms Garen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Garen_23.jpg" + }, + { + "id": 24, + "name": "Battle Academia Garen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Garen_24.jpg" + }, + { + "id": 33, + "name": "Mythmaker Garen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Garen_33.jpg" + }, + { + "id": 44, + "name": "Fallen God-King Garen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Garen_44.jpg" + }, + { + "id": 46, + "name": "Visions of the Fallen Garen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Garen_46.jpg" + } + ] + }, + { + "championName": "Gnar", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gnar_0.jpg" + }, + { + "id": 1, + "name": "Dino Gnar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gnar_1.jpg" + }, + { + "id": 2, + "name": "Gentleman Gnar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gnar_2.jpg" + }, + { + "id": 3, + "name": "Snow Day Gnar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gnar_3.jpg" + }, + { + "id": 4, + "name": "El León Gnar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gnar_4.jpg" + }, + { + "id": 13, + "name": "Super Galaxy Gnar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gnar_13.jpg" + }, + { + "id": 14, + "name": "SSG Gnar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gnar_14.jpg" + }, + { + "id": 15, + "name": "Astronaut Gnar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gnar_15.jpg" + }, + { + "id": 22, + "name": "Elderwood Gnar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gnar_22.jpg" + }, + { + "id": 31, + "name": "La Ilusión Gnar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gnar_31.jpg" + }, + { + "id": 41, + "name": "T1 Gnar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gnar_41.jpg" + } + ] + }, + { + "championName": "Gragas", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gragas_0.jpg" + }, + { + "id": 1, + "name": "Scuba Gragas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gragas_1.jpg" + }, + { + "id": 2, + "name": "Hillbilly Gragas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gragas_2.jpg" + }, + { + "id": 3, + "name": "Santa Gragas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gragas_3.jpg" + }, + { + "id": 4, + "name": "Gragas, Esq.", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gragas_4.jpg" + }, + { + "id": 5, + "name": "Vandal Gragas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gragas_5.jpg" + }, + { + "id": 6, + "name": "Oktoberfest Gragas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gragas_6.jpg" + }, + { + "id": 7, + "name": "Superfan Gragas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gragas_7.jpg" + }, + { + "id": 8, + "name": "Fnatic Gragas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gragas_8.jpg" + }, + { + "id": 9, + "name": "Gragas Caskbreaker", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gragas_9.jpg" + }, + { + "id": 10, + "name": "Arctic Ops Gragas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gragas_10.jpg" + }, + { + "id": 11, + "name": "Warden Gragas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gragas_11.jpg" + }, + { + "id": 20, + "name": "Space Groove Gragas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gragas_20.jpg" + }, + { + "id": 29, + "name": "High Noon Gragas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gragas_29.jpg" + }, + { + "id": 39, + "name": "Music Fan Gragas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gragas_39.jpg" + } + ] + }, + { + "championName": "Graves", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Graves_0.jpg" + }, + { + "id": 1, + "name": "Hired Gun Graves", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Graves_1.jpg" + }, + { + "id": 2, + "name": "Jailbreak Graves", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Graves_2.jpg" + }, + { + "id": 3, + "name": "Crime City Graves", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Graves_3.jpg" + }, + { + "id": 4, + "name": "Riot Graves", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Graves_4.jpg" + }, + { + "id": 5, + "name": "Pool Party Graves", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Graves_5.jpg" + }, + { + "id": 6, + "name": "Cutthroat Graves", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Graves_6.jpg" + }, + { + "id": 7, + "name": "Snow Day Graves", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Graves_7.jpg" + }, + { + "id": 14, + "name": "Victorious Graves", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Graves_14.jpg" + }, + { + "id": 18, + "name": "Praetorian Graves", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Graves_18.jpg" + }, + { + "id": 25, + "name": "Battle Professor Graves", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Graves_25.jpg" + }, + { + "id": 35, + "name": "Sentinel Graves", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Graves_35.jpg" + }, + { + "id": 42, + "name": "EDG Graves", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Graves_42.jpg" + }, + { + "id": 45, + "name": "Porcelain Graves", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Graves_45.jpg" + } + ] + }, + { + "championName": "Gwen", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gwen_0.jpg" + }, + { + "id": 1, + "name": "Space Groove Gwen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gwen_1.jpg" + }, + { + "id": 11, + "name": "Cafe Cuties Gwen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gwen_11.jpg" + }, + { + "id": 20, + "name": "Soul Fighter Gwen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gwen_20.jpg" + }, + { + "id": 30, + "name": "Battle Queen Gwen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Gwen_30.jpg" + } + ] + }, + { + "championName": "Hecarim", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Hecarim_0.jpg" + }, + { + "id": 1, + "name": "Blood Knight Hecarim", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Hecarim_1.jpg" + }, + { + "id": 2, + "name": "Reaper Hecarim", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Hecarim_2.jpg" + }, + { + "id": 3, + "name": "Headless Hecarim", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Hecarim_3.jpg" + }, + { + "id": 4, + "name": "Arcade Hecarim", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Hecarim_4.jpg" + }, + { + "id": 5, + "name": "Elderwood Hecarim", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Hecarim_5.jpg" + }, + { + "id": 6, + "name": "Worldbreaker Hecarim", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Hecarim_6.jpg" + }, + { + "id": 7, + "name": "Lancer Zero Hecarim", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Hecarim_7.jpg" + }, + { + "id": 8, + "name": "High Noon Hecarim", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Hecarim_8.jpg" + }, + { + "id": 14, + "name": "Cosmic Charger Hecarim", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Hecarim_14.jpg" + }, + { + "id": 22, + "name": "Arcana Hecarim", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Hecarim_22.jpg" + }, + { + "id": 31, + "name": "Winterblessed Hecarim", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Hecarim_31.jpg" + }, + { + "id": 41, + "name": "Nightbringer Hecarim", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Hecarim_41.jpg" + } + ] + }, + { + "championName": "Heimerdinger", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Heimerdinger_0.jpg" + }, + { + "id": 1, + "name": "Alien Invader Heimerdinger", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Heimerdinger_1.jpg" + }, + { + "id": 2, + "name": "Blast Zone Heimerdinger", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Heimerdinger_2.jpg" + }, + { + "id": 3, + "name": "Piltover Customs Heimerdinger", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Heimerdinger_3.jpg" + }, + { + "id": 4, + "name": "Snowmerdinger", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Heimerdinger_4.jpg" + }, + { + "id": 5, + "name": "Hazmat Heimerdinger", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Heimerdinger_5.jpg" + }, + { + "id": 6, + "name": "Dragon Trainer Heimerdinger", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Heimerdinger_6.jpg" + }, + { + "id": 15, + "name": "Pool Party Heimerdinger", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Heimerdinger_15.jpg" + }, + { + "id": 24, + "name": "Heimerstinger", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Heimerdinger_24.jpg" + }, + { + "id": 33, + "name": "Arcane Professor Heimerdinger", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Heimerdinger_33.jpg" + } + ] + }, + { + "championName": "Hwei", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Hwei_0.jpg" + }, + { + "id": 1, + "name": "Winterblessed Hwei", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Hwei_1.jpg" + }, + { + "id": 11, + "name": "Spirit Blossom Hwei", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Hwei_11.jpg" + } + ] + }, + { + "championName": "Illaoi", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Illaoi_0.jpg" + }, + { + "id": 1, + "name": "Void Bringer Illaoi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Illaoi_1.jpg" + }, + { + "id": 2, + "name": "Resistance Illaoi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Illaoi_2.jpg" + }, + { + "id": 10, + "name": "Cosmic Invoker Illaoi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Illaoi_10.jpg" + }, + { + "id": 18, + "name": "Snow Moon Illaoi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Illaoi_18.jpg" + }, + { + "id": 27, + "name": "Battle Bear Illaoi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Illaoi_27.jpg" + } + ] + }, + { + "championName": "Irelia", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Irelia_0.jpg" + }, + { + "id": 1, + "name": "Nightblade Irelia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Irelia_1.jpg" + }, + { + "id": 2, + "name": "Aviator Irelia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Irelia_2.jpg" + }, + { + "id": 3, + "name": "Infiltrator Irelia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Irelia_3.jpg" + }, + { + "id": 4, + "name": "Frostblade Irelia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Irelia_4.jpg" + }, + { + "id": 5, + "name": "Order of the Lotus Irelia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Irelia_5.jpg" + }, + { + "id": 6, + "name": "Divine Sword Irelia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Irelia_6.jpg" + }, + { + "id": 15, + "name": "iG Irelia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Irelia_15.jpg" + }, + { + "id": 16, + "name": "PROJECT: Irelia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Irelia_16.jpg" + }, + { + "id": 17, + "name": "Prestige PROJECT: Irelia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Irelia_17.jpg" + }, + { + "id": 18, + "name": "High Noon Irelia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Irelia_18.jpg" + }, + { + "id": 26, + "name": "Sentinel Irelia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Irelia_26.jpg" + }, + { + "id": 37, + "name": "Mythmaker Irelia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Irelia_37.jpg" + }, + { + "id": 45, + "name": "Porcelain Irelia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Irelia_45.jpg" + }, + { + "id": 55, + "name": "Spirit Blossom Irelia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Irelia_55.jpg" + } + ] + }, + { + "championName": "Ivern", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ivern_0.jpg" + }, + { + "id": 1, + "name": "Candy King Ivern", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ivern_1.jpg" + }, + { + "id": 2, + "name": "Dunkmaster Ivern", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ivern_2.jpg" + }, + { + "id": 11, + "name": "Old God Ivern", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ivern_11.jpg" + }, + { + "id": 20, + "name": "Astronaut Ivern", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ivern_20.jpg" + }, + { + "id": 30, + "name": "Spirit Blossom Ivern", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ivern_30.jpg" + } + ] + }, + { + "championName": "Janna", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Janna_0.jpg" + }, + { + "id": 1, + "name": "Tempest Janna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Janna_1.jpg" + }, + { + "id": 2, + "name": "Hextech Janna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Janna_2.jpg" + }, + { + "id": 3, + "name": "Frost Queen Janna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Janna_3.jpg" + }, + { + "id": 4, + "name": "Victorious Janna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Janna_4.jpg" + }, + { + "id": 5, + "name": "Forecast Janna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Janna_5.jpg" + }, + { + "id": 6, + "name": "Fnatic Janna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Janna_6.jpg" + }, + { + "id": 7, + "name": "Star Guardian Janna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Janna_7.jpg" + }, + { + "id": 8, + "name": "Sacred Sword Janna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Janna_8.jpg" + }, + { + "id": 13, + "name": "Bewitching Janna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Janna_13.jpg" + }, + { + "id": 20, + "name": "Guardian of the Sands Janna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Janna_20.jpg" + }, + { + "id": 27, + "name": "Battle Queen Janna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Janna_27.jpg" + }, + { + "id": 36, + "name": "Crystal Rose Janna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Janna_36.jpg" + }, + { + "id": 45, + "name": "Cyber Halo Janna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Janna_45.jpg" + }, + { + "id": 46, + "name": "Prestige Cyber Halo Janna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Janna_46.jpg" + }, + { + "id": 56, + "name": "Heavenscale Janna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Janna_56.jpg" + }, + { + "id": 66, + "name": "Dawnbringer Janna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Janna_66.jpg" + } + ] + }, + { + "championName": "Jarvan IV", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/JarvanIV_0.jpg" + }, + { + "id": 1, + "name": "Commando Jarvan IV", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/JarvanIV_1.jpg" + }, + { + "id": 2, + "name": "Dragonslayer Jarvan IV", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/JarvanIV_2.jpg" + }, + { + "id": 3, + "name": "Darkforge Jarvan IV", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/JarvanIV_3.jpg" + }, + { + "id": 4, + "name": "Victorious Jarvan IV", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/JarvanIV_4.jpg" + }, + { + "id": 5, + "name": "Warring Kingdoms Jarvan IV", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/JarvanIV_5.jpg" + }, + { + "id": 6, + "name": "Fnatic Jarvan IV", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/JarvanIV_6.jpg" + }, + { + "id": 7, + "name": "Dark Star Jarvan IV", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/JarvanIV_7.jpg" + }, + { + "id": 8, + "name": "SSG Jarvan IV", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/JarvanIV_8.jpg" + }, + { + "id": 9, + "name": "Hextech Jarvan IV", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/JarvanIV_9.jpg" + }, + { + "id": 11, + "name": "Pool Party Jarvan IV", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/JarvanIV_11.jpg" + }, + { + "id": 21, + "name": "Lunar Beast Jarvan IV", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/JarvanIV_21.jpg" + }, + { + "id": 30, + "name": "Worlds 2021 Jarvan IV", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/JarvanIV_30.jpg" + } + ] + }, + { + "championName": "Jax", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jax_0.jpg" + }, + { + "id": 1, + "name": "The Mighty Jax", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jax_1.jpg" + }, + { + "id": 2, + "name": "Vandal Jax", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jax_2.jpg" + }, + { + "id": 3, + "name": "Angler Jax", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jax_3.jpg" + }, + { + "id": 4, + "name": "PAX Jax", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jax_4.jpg" + }, + { + "id": 5, + "name": "Jaximus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jax_5.jpg" + }, + { + "id": 6, + "name": "Temple Jax", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jax_6.jpg" + }, + { + "id": 7, + "name": "Nemesis Jax", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jax_7.jpg" + }, + { + "id": 8, + "name": "SKT T1 Jax", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jax_8.jpg" + }, + { + "id": 12, + "name": "Warden Jax", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jax_12.jpg" + }, + { + "id": 13, + "name": "God Staff Jax", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jax_13.jpg" + }, + { + "id": 14, + "name": "Mecha Kingdoms Jax", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jax_14.jpg" + }, + { + "id": 20, + "name": "Conqueror Jax", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jax_20.jpg" + }, + { + "id": 21, + "name": "Prestige Conqueror Jax", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jax_21.jpg" + }, + { + "id": 22, + "name": "Empyrean Jax", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jax_22.jpg" + }, + { + "id": 32, + "name": "Neo PAX Jax", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jax_32.jpg" + }, + { + "id": 33, + "name": "PROJECT: Jax", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jax_33.jpg" + } + ] + }, + { + "championName": "Jayce", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jayce_0.jpg" + }, + { + "id": 1, + "name": "Full Metal Jayce", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jayce_1.jpg" + }, + { + "id": 2, + "name": "Debonair Jayce", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jayce_2.jpg" + }, + { + "id": 3, + "name": "Forsaken Jayce", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jayce_3.jpg" + }, + { + "id": 4, + "name": "Jayce Brighthammer", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jayce_4.jpg" + }, + { + "id": 5, + "name": "Battle Academia Jayce", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jayce_5.jpg" + }, + { + "id": 15, + "name": "Resistance Jayce", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jayce_15.jpg" + }, + { + "id": 25, + "name": "Zenith Games Jayce", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jayce_25.jpg" + }, + { + "id": 34, + "name": "T1 Jayce", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jayce_34.jpg" + }, + { + "id": 35, + "name": "Arcane Survivor Jayce", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jayce_35.jpg" + }, + { + "id": 36, + "name": "Prestige T1 Jayce", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jayce_36.jpg" + } + ] + }, + { + "championName": "Jhin", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jhin_0.jpg" + }, + { + "id": 1, + "name": "High Noon Jhin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jhin_1.jpg" + }, + { + "id": 2, + "name": "Blood Moon Jhin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jhin_2.jpg" + }, + { + "id": 3, + "name": "SKT T1 Jhin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jhin_3.jpg" + }, + { + "id": 4, + "name": "PROJECT: Jhin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jhin_4.jpg" + }, + { + "id": 5, + "name": "Dark Cosmic Jhin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jhin_5.jpg" + }, + { + "id": 14, + "name": "Shan Hai Scrolls Jhin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jhin_14.jpg" + }, + { + "id": 23, + "name": "DWG Jhin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jhin_23.jpg" + }, + { + "id": 25, + "name": "Empyrean Jhin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jhin_25.jpg" + }, + { + "id": 36, + "name": "Soul Fighter Jhin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jhin_36.jpg" + }, + { + "id": 37, + "name": "Dark Cosmic Erasure Jhin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jhin_37.jpg" + }, + { + "id": 47, + "name": "Mythmaker Jhin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jhin_47.jpg" + }, + { + "id": 55, + "name": "Arcana Jhin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jhin_55.jpg" + } + ] + }, + { + "championName": "Jinx", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jinx_0.jpg" + }, + { + "id": 1, + "name": "Crime City Jinx", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jinx_1.jpg" + }, + { + "id": 2, + "name": "Firecracker Jinx", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jinx_2.jpg" + }, + { + "id": 3, + "name": "Zombie Slayer Jinx", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jinx_3.jpg" + }, + { + "id": 4, + "name": "Star Guardian Jinx", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jinx_4.jpg" + }, + { + "id": 12, + "name": "Ambitious Elf Jinx", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jinx_12.jpg" + }, + { + "id": 13, + "name": "Odyssey Jinx", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jinx_13.jpg" + }, + { + "id": 20, + "name": "PROJECT: Jinx", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jinx_20.jpg" + }, + { + "id": 29, + "name": "Heartseeker Jinx", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jinx_29.jpg" + }, + { + "id": 38, + "name": "Battle Cat Jinx", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jinx_38.jpg" + }, + { + "id": 40, + "name": "Prestige Battle Cat Jinx", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jinx_40.jpg" + }, + { + "id": 51, + "name": "Cafe Cuties Jinx", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jinx_51.jpg" + }, + { + "id": 60, + "name": "Arcane Fractured Jinx", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jinx_60.jpg" + }, + { + "id": 62, + "name": "T1 Jinx", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Jinx_62.jpg" + } + ] + }, + { + "championName": "K'Sante", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/KSante_0.jpg" + }, + { + "id": 1, + "name": "Empyrean K'Sante", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/KSante_1.jpg" + }, + { + "id": 2, + "name": "Prestige Empyrean K'Sante", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/KSante_2.jpg" + } + ] + }, + { + "championName": "Kai'Sa", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kaisa_0.jpg" + }, + { + "id": 1, + "name": "Bullet Angel Kai'Sa", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kaisa_1.jpg" + }, + { + "id": 14, + "name": "K/DA Kai'Sa", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kaisa_14.jpg" + }, + { + "id": 15, + "name": "Prestige K/DA Kai'Sa", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kaisa_15.jpg" + }, + { + "id": 16, + "name": "iG Kai'Sa", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kaisa_16.jpg" + }, + { + "id": 17, + "name": "Arcade Kai'Sa", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kaisa_17.jpg" + }, + { + "id": 26, + "name": "K/DA ALL OUT Kai'Sa", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kaisa_26.jpg" + }, + { + "id": 27, + "name": "Prestige K/DA ALL OUT Kai'Sa", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kaisa_27.jpg" + }, + { + "id": 29, + "name": "Lagoon Dragon Kai'Sa", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kaisa_29.jpg" + }, + { + "id": 40, + "name": "Star Guardian Kai'Sa", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kaisa_40.jpg" + } + ] + }, + { + "championName": "Kalista", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kalista_0.jpg" + }, + { + "id": 1, + "name": "Blood Moon Kalista", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kalista_1.jpg" + }, + { + "id": 3, + "name": "SKT T1 Kalista", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kalista_3.jpg" + }, + { + "id": 5, + "name": "Marauder Kalista", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kalista_5.jpg" + }, + { + "id": 14, + "name": "Faerie Court Kalista", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kalista_14.jpg" + }, + { + "id": 24, + "name": "Dawnbringer Kalista", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kalista_24.jpg" + } + ] + }, + { + "championName": "Karma", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karma_0.jpg" + }, + { + "id": 1, + "name": "Sun Goddess Karma", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karma_1.jpg" + }, + { + "id": 2, + "name": "Sakura Karma", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karma_2.jpg" + }, + { + "id": 3, + "name": "Traditional Karma", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karma_3.jpg" + }, + { + "id": 4, + "name": "Order of the Lotus Karma", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karma_4.jpg" + }, + { + "id": 5, + "name": "Warden Karma", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karma_5.jpg" + }, + { + "id": 6, + "name": "Winter Wonder Karma", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karma_6.jpg" + }, + { + "id": 7, + "name": "Conqueror Karma", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karma_7.jpg" + }, + { + "id": 8, + "name": "Dark Star Karma", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karma_8.jpg" + }, + { + "id": 19, + "name": "Dawnbringer Karma", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karma_19.jpg" + }, + { + "id": 26, + "name": "Odyssey Karma", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karma_26.jpg" + }, + { + "id": 27, + "name": "Ruined Karma", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karma_27.jpg" + }, + { + "id": 44, + "name": "Tranquility Dragon Karma", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karma_44.jpg" + }, + { + "id": 54, + "name": "Faerie Queen Karma", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karma_54.jpg" + }, + { + "id": 61, + "name": "Infernal Karma", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karma_61.jpg" + }, + { + "id": 70, + "name": "Spirit Blossom Karma", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karma_70.jpg" + } + ] + }, + { + "championName": "Karthus", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karthus_0.jpg" + }, + { + "id": 1, + "name": "Phantom Karthus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karthus_1.jpg" + }, + { + "id": 2, + "name": "Statue of Karthus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karthus_2.jpg" + }, + { + "id": 3, + "name": "Grim Reaper Karthus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karthus_3.jpg" + }, + { + "id": 4, + "name": "Pentakill Karthus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karthus_4.jpg" + }, + { + "id": 5, + "name": "Fnatic Karthus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karthus_5.jpg" + }, + { + "id": 9, + "name": "Karthus Lightsbane", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karthus_9.jpg" + }, + { + "id": 10, + "name": "Infernal Karthus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karthus_10.jpg" + }, + { + "id": 17, + "name": "Pentakill III: Lost Chapter Karthus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karthus_17.jpg" + }, + { + "id": 26, + "name": "Elderwood Karthus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karthus_26.jpg" + }, + { + "id": 35, + "name": "Arcana Karthus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Karthus_35.jpg" + } + ] + }, + { + "championName": "Kassadin", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kassadin_0.jpg" + }, + { + "id": 1, + "name": "Festival Kassadin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kassadin_1.jpg" + }, + { + "id": 2, + "name": "Deep One Kassadin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kassadin_2.jpg" + }, + { + "id": 3, + "name": "Pre-Void Kassadin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kassadin_3.jpg" + }, + { + "id": 4, + "name": "Harbinger Kassadin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kassadin_4.jpg" + }, + { + "id": 5, + "name": "Cosmic Reaver Kassadin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kassadin_5.jpg" + }, + { + "id": 6, + "name": "Count Kassadin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kassadin_6.jpg" + }, + { + "id": 14, + "name": "Hextech Kassadin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kassadin_14.jpg" + }, + { + "id": 15, + "name": "Shockblade Kassadin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kassadin_15.jpg" + }, + { + "id": 24, + "name": "Dragonmancer Kassadin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kassadin_24.jpg" + } + ] + }, + { + "championName": "Katarina", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_0.jpg" + }, + { + "id": 1, + "name": "Mercenary Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_1.jpg" + }, + { + "id": 2, + "name": "Red Card Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_2.jpg" + }, + { + "id": 3, + "name": "Bilgewater Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_3.jpg" + }, + { + "id": 4, + "name": "Kitty Cat Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_4.jpg" + }, + { + "id": 5, + "name": "High Command Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_5.jpg" + }, + { + "id": 6, + "name": "Sandstorm Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_6.jpg" + }, + { + "id": 7, + "name": "Slay Belle Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_7.jpg" + }, + { + "id": 8, + "name": "Warring Kingdoms Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_8.jpg" + }, + { + "id": 9, + "name": "PROJECT: Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_9.jpg" + }, + { + "id": 10, + "name": "Death Sworn Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_10.jpg" + }, + { + "id": 12, + "name": "Battle Academia Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_12.jpg" + }, + { + "id": 21, + "name": "Blood Moon Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_21.jpg" + }, + { + "id": 29, + "name": "Battle Queen Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_29.jpg" + }, + { + "id": 37, + "name": "High Noon Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_37.jpg" + }, + { + "id": 47, + "name": "Faerie Court Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_47.jpg" + }, + { + "id": 48, + "name": "Prestige Faerie Court Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_48.jpg" + }, + { + "id": 59, + "name": "Chosen of the Wolf Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_59.jpg" + }, + { + "id": 60, + "name": "Prestige Masque of the Black Rose Katarina", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Katarina_60.jpg" + } + ] + }, + { + "championName": "Kayle", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_0.jpg" + }, + { + "id": 1, + "name": "Silver Kayle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_1.jpg" + }, + { + "id": 2, + "name": "Viridian Kayle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_2.jpg" + }, + { + "id": 3, + "name": "Transcended Kayle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_3.jpg" + }, + { + "id": 4, + "name": "Battleborn Kayle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_4.jpg" + }, + { + "id": 5, + "name": "Judgment Kayle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_5.jpg" + }, + { + "id": 6, + "name": "Aether Wing Kayle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_6.jpg" + }, + { + "id": 7, + "name": "Riot Kayle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_7.jpg" + }, + { + "id": 8, + "name": "Iron Inquisitor Kayle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_8.jpg" + }, + { + "id": 9, + "name": "Pentakill Kayle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_9.jpg" + }, + { + "id": 15, + "name": "PsyOps Kayle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_15.jpg" + }, + { + "id": 24, + "name": "Dragonslayer Kayle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_24.jpg" + }, + { + "id": 33, + "name": "Pentakill III: Lost Chapter Kayle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_33.jpg" + }, + { + "id": 42, + "name": "Sun-Eater Kayle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_42.jpg" + }, + { + "id": 57, + "name": "Immortal Journey Kayle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_57.jpg" + }, + { + "id": 66, + "name": "Empyrean Kayle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_66.jpg" + }, + { + "id": 67, + "name": "Prestige Empyrean Kayle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_67.jpg" + }, + { + "id": 78, + "name": "Spirit Blossom Kayle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayle_78.jpg" + } + ] + }, + { + "championName": "Kayn", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayn_0.jpg" + }, + { + "id": 1, + "name": "Soulhunter Kayn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayn_1.jpg" + }, + { + "id": 2, + "name": "Odyssey Kayn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayn_2.jpg" + }, + { + "id": 8, + "name": "Nightbringer Kayn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayn_8.jpg" + }, + { + "id": 9, + "name": "Prestige Nightbringer Kayn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayn_9.jpg" + }, + { + "id": 15, + "name": "Snow Moon Kayn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayn_15.jpg" + }, + { + "id": 20, + "name": "HEARTSTEEL Kayn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayn_20.jpg" + }, + { + "id": 26, + "name": "Battle Academia Kayn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kayn_26.jpg" + } + ] + }, + { + "championName": "Kennen", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kennen_0.jpg" + }, + { + "id": 1, + "name": "Deadly Kennen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kennen_1.jpg" + }, + { + "id": 2, + "name": "Swamp Master Kennen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kennen_2.jpg" + }, + { + "id": 3, + "name": "Karate Kennen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kennen_3.jpg" + }, + { + "id": 4, + "name": "Kennen M.D.", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kennen_4.jpg" + }, + { + "id": 5, + "name": "Arctic Ops Kennen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kennen_5.jpg" + }, + { + "id": 6, + "name": "Blood Moon Kennen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kennen_6.jpg" + }, + { + "id": 7, + "name": "Super Kennen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kennen_7.jpg" + }, + { + "id": 8, + "name": "Infernal Kennen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kennen_8.jpg" + }, + { + "id": 23, + "name": "DWG Kennen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kennen_23.jpg" + }, + { + "id": 25, + "name": "Astronaut Kennen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kennen_25.jpg" + } + ] + }, + { + "championName": "Kha'Zix", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Khazix_0.jpg" + }, + { + "id": 1, + "name": "Mecha Kha'Zix", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Khazix_1.jpg" + }, + { + "id": 2, + "name": "Guardian of the Sands Kha'Zix", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Khazix_2.jpg" + }, + { + "id": 3, + "name": "Death Blossom Kha'Zix", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Khazix_3.jpg" + }, + { + "id": 4, + "name": "Dark Star Kha'Zix", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Khazix_4.jpg" + }, + { + "id": 60, + "name": "Odyssey Kha'Zix", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Khazix_60.jpg" + } + ] + }, + { + "championName": "Kindred", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kindred_0.jpg" + }, + { + "id": 1, + "name": "Shadowfire Kindred", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kindred_1.jpg" + }, + { + "id": 2, + "name": "Super Galaxy Kindred", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kindred_2.jpg" + }, + { + "id": 3, + "name": "Spirit Blossom Kindred", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kindred_3.jpg" + }, + { + "id": 12, + "name": "Porcelain Kindred", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kindred_12.jpg" + }, + { + "id": 22, + "name": "Woof and Lamb Kindred", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kindred_22.jpg" + }, + { + "id": 23, + "name": "DRX Kindred", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kindred_23.jpg" + }, + { + "id": 33, + "name": "Prestige Porcelain Kindred", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kindred_33.jpg" + }, + { + "id": 34, + "name": "Chosen of the Wolf Kindred", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kindred_34.jpg" + } + ] + }, + { + "championName": "Kled", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kled_0.jpg" + }, + { + "id": 1, + "name": "Sir Kled", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kled_1.jpg" + }, + { + "id": 2, + "name": "Count Kledula", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kled_2.jpg" + }, + { + "id": 9, + "name": "Marauder Kled", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kled_9.jpg" + }, + { + "id": 18, + "name": "Kibble-Head Kled", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Kled_18.jpg" + } + ] + }, + { + "championName": "Kog'Maw", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/KogMaw_0.jpg" + }, + { + "id": 1, + "name": "Caterpillar Kog'Maw", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/KogMaw_1.jpg" + }, + { + "id": 2, + "name": "Sonoran Kog'Maw", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/KogMaw_2.jpg" + }, + { + "id": 3, + "name": "Monarch Kog'Maw", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/KogMaw_3.jpg" + }, + { + "id": 4, + "name": "Reindeer Kog'Maw", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/KogMaw_4.jpg" + }, + { + "id": 5, + "name": "Lion Dance Kog'Maw", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/KogMaw_5.jpg" + }, + { + "id": 6, + "name": "Deep Sea Kog'Maw", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/KogMaw_6.jpg" + }, + { + "id": 7, + "name": "Jurassic Kog'Maw", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/KogMaw_7.jpg" + }, + { + "id": 8, + "name": "Battlecast Kog'Maw", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/KogMaw_8.jpg" + }, + { + "id": 9, + "name": "Pug'Maw", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/KogMaw_9.jpg" + }, + { + "id": 10, + "name": "Hextech Kog'Maw", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/KogMaw_10.jpg" + }, + { + "id": 19, + "name": "Arcanist Kog'Maw", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/KogMaw_19.jpg" + }, + { + "id": 28, + "name": "Bee'Maw", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/KogMaw_28.jpg" + }, + { + "id": 37, + "name": "Zap'Maw", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/KogMaw_37.jpg" + } + ] + }, + { + "championName": "LeBlanc", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leblanc_0.jpg" + }, + { + "id": 1, + "name": "Wicked LeBlanc", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leblanc_1.jpg" + }, + { + "id": 2, + "name": "Prestigious LeBlanc", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leblanc_2.jpg" + }, + { + "id": 3, + "name": "Mistletoe LeBlanc", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leblanc_3.jpg" + }, + { + "id": 4, + "name": "Ravenborn LeBlanc", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leblanc_4.jpg" + }, + { + "id": 5, + "name": "Elderwood LeBlanc", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leblanc_5.jpg" + }, + { + "id": 12, + "name": "Program LeBlanc", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leblanc_12.jpg" + }, + { + "id": 19, + "name": "iG LeBlanc", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leblanc_19.jpg" + }, + { + "id": 20, + "name": "Coven LeBlanc", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leblanc_20.jpg" + }, + { + "id": 33, + "name": "Prestige Coven LeBlanc", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leblanc_33.jpg" + }, + { + "id": 35, + "name": "Debonair LeBlanc", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leblanc_35.jpg" + } + ] + }, + { + "championName": "Lee Sin", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/LeeSin_0.jpg" + }, + { + "id": 1, + "name": "Traditional Lee Sin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/LeeSin_1.jpg" + }, + { + "id": 2, + "name": "Acolyte Lee Sin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/LeeSin_2.jpg" + }, + { + "id": 3, + "name": "Dragon Fist Lee Sin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/LeeSin_3.jpg" + }, + { + "id": 4, + "name": "Muay Thai Lee Sin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/LeeSin_4.jpg" + }, + { + "id": 5, + "name": "Pool Party Lee Sin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/LeeSin_5.jpg" + }, + { + "id": 6, + "name": "SKT T1 Lee Sin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/LeeSin_6.jpg" + }, + { + "id": 10, + "name": "Knockout Lee Sin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/LeeSin_10.jpg" + }, + { + "id": 11, + "name": "God Fist Lee Sin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/LeeSin_11.jpg" + }, + { + "id": 12, + "name": "Playmaker Lee Sin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/LeeSin_12.jpg" + }, + { + "id": 27, + "name": "Nightbringer Lee Sin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/LeeSin_27.jpg" + }, + { + "id": 28, + "name": "Prestige Nightbringer Lee Sin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/LeeSin_28.jpg" + }, + { + "id": 29, + "name": "FPX Lee Sin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/LeeSin_29.jpg" + }, + { + "id": 31, + "name": "Storm Dragon Lee Sin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/LeeSin_31.jpg" + }, + { + "id": 41, + "name": "Zenith Games Lee Sin", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/LeeSin_41.jpg" + } + ] + }, + { + "championName": "Leona", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_0.jpg" + }, + { + "id": 1, + "name": "Valkyrie Leona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_1.jpg" + }, + { + "id": 2, + "name": "Defender Leona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_2.jpg" + }, + { + "id": 3, + "name": "Iron Solari Leona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_3.jpg" + }, + { + "id": 4, + "name": "Pool Party Leona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_4.jpg" + }, + { + "id": 8, + "name": "PROJECT: Leona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_8.jpg" + }, + { + "id": 9, + "name": "Barbecue Leona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_9.jpg" + }, + { + "id": 10, + "name": "Solar Eclipse Leona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_10.jpg" + }, + { + "id": 11, + "name": "Lunar Eclipse Leona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_11.jpg" + }, + { + "id": 12, + "name": "Mecha Kingdoms Leona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_12.jpg" + }, + { + "id": 21, + "name": "Battle Academia Leona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_21.jpg" + }, + { + "id": 22, + "name": "DWG Leona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_22.jpg" + }, + { + "id": 23, + "name": "Prestige Battle Academia Leona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_23.jpg" + }, + { + "id": 33, + "name": "Debonair Leona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_33.jpg" + }, + { + "id": 34, + "name": "High Noon Leona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_34.jpg" + }, + { + "id": 50, + "name": "Crystalis Motus Leona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_50.jpg" + }, + { + "id": 52, + "name": "Battle Lion Leona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_52.jpg" + }, + { + "id": 53, + "name": "Prestige Battle Lion Leona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Leona_53.jpg" + } + ] + }, + { + "championName": "Lillia", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lillia_0.jpg" + }, + { + "id": 1, + "name": "Spirit Blossom Lillia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lillia_1.jpg" + }, + { + "id": 10, + "name": "Nightbringer Lillia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lillia_10.jpg" + }, + { + "id": 19, + "name": "Shan Hai Scrolls Lillia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lillia_19.jpg" + }, + { + "id": 28, + "name": "Faerie Court Lillia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lillia_28.jpg" + }, + { + "id": 37, + "name": "Bowling League Lillia", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lillia_37.jpg" + } + ] + }, + { + "championName": "Lissandra", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lissandra_0.jpg" + }, + { + "id": 1, + "name": "Bloodstone Lissandra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lissandra_1.jpg" + }, + { + "id": 2, + "name": "Blade Queen Lissandra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lissandra_2.jpg" + }, + { + "id": 3, + "name": "Program Lissandra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lissandra_3.jpg" + }, + { + "id": 4, + "name": "Coven Lissandra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lissandra_4.jpg" + }, + { + "id": 12, + "name": "Dark Cosmic Lissandra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lissandra_12.jpg" + }, + { + "id": 23, + "name": "Porcelain Lissandra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lissandra_23.jpg" + }, + { + "id": 33, + "name": "Prestige Porcelain Lissandra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lissandra_33.jpg" + }, + { + "id": 34, + "name": "Space Groove Lissandra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lissandra_34.jpg" + } + ] + }, + { + "championName": "Lucian", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lucian_0.jpg" + }, + { + "id": 1, + "name": "Hired Gun Lucian", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lucian_1.jpg" + }, + { + "id": 2, + "name": "Striker Lucian", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lucian_2.jpg" + }, + { + "id": 6, + "name": "PROJECT: Lucian", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lucian_6.jpg" + }, + { + "id": 7, + "name": "Heartseeker Lucian", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lucian_7.jpg" + }, + { + "id": 8, + "name": "High Noon Lucian", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lucian_8.jpg" + }, + { + "id": 9, + "name": "Demacia Vice Lucian", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lucian_9.jpg" + }, + { + "id": 18, + "name": "Pulsefire Lucian", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lucian_18.jpg" + }, + { + "id": 19, + "name": "Prestige Pulsefire Lucian", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lucian_19.jpg" + }, + { + "id": 25, + "name": "Victorious Lucian", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lucian_25.jpg" + }, + { + "id": 31, + "name": "Arcana Lucian", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lucian_31.jpg" + }, + { + "id": 40, + "name": "Strike Paladin Lucian", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lucian_40.jpg" + }, + { + "id": 52, + "name": "Winterblessed Lucian", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lucian_52.jpg" + }, + { + "id": 62, + "name": "Masked Justice Lucian", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lucian_62.jpg" + } + ] + }, + { + "championName": "Lulu", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lulu_0.jpg" + }, + { + "id": 1, + "name": "Bittersweet Lulu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lulu_1.jpg" + }, + { + "id": 2, + "name": "Wicked Lulu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lulu_2.jpg" + }, + { + "id": 3, + "name": "Dragon Trainer Lulu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lulu_3.jpg" + }, + { + "id": 4, + "name": "Winter Wonder Lulu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lulu_4.jpg" + }, + { + "id": 5, + "name": "Pool Party Lulu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lulu_5.jpg" + }, + { + "id": 6, + "name": "Star Guardian Lulu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lulu_6.jpg" + }, + { + "id": 14, + "name": "Cosmic Enchantress Lulu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lulu_14.jpg" + }, + { + "id": 15, + "name": "Pajama Guardian Lulu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lulu_15.jpg" + }, + { + "id": 26, + "name": "Space Groove Lulu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lulu_26.jpg" + }, + { + "id": 27, + "name": "Prestige Space Groove Lulu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lulu_27.jpg" + }, + { + "id": 37, + "name": "Monster Tamer Lulu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lulu_37.jpg" + }, + { + "id": 46, + "name": "Cafe Cuties Lulu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lulu_46.jpg" + }, + { + "id": 55, + "name": "Arcana Lulu", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lulu_55.jpg" + } + ] + }, + { + "championName": "Lux", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_0.jpg" + }, + { + "id": 1, + "name": "Sorceress Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_1.jpg" + }, + { + "id": 2, + "name": "Spellthief Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_2.jpg" + }, + { + "id": 3, + "name": "Commando Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_3.jpg" + }, + { + "id": 4, + "name": "Imperial Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_4.jpg" + }, + { + "id": 5, + "name": "Steel Legion Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_5.jpg" + }, + { + "id": 6, + "name": "Star Guardian Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_6.jpg" + }, + { + "id": 7, + "name": "Elementalist Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_7.jpg" + }, + { + "id": 8, + "name": "Lunar Empress Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_8.jpg" + }, + { + "id": 14, + "name": "Pajama Guardian Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_14.jpg" + }, + { + "id": 15, + "name": "Battle Academia Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_15.jpg" + }, + { + "id": 16, + "name": "Prestige Battle Academia Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_16.jpg" + }, + { + "id": 17, + "name": "Dark Cosmic Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_17.jpg" + }, + { + "id": 18, + "name": "Cosmic Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_18.jpg" + }, + { + "id": 19, + "name": "Space Groove Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_19.jpg" + }, + { + "id": 29, + "name": "Porcelain Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_29.jpg" + }, + { + "id": 38, + "name": "Soul Fighter Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_38.jpg" + }, + { + "id": 40, + "name": "Prestige Porcelain Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_40.jpg" + }, + { + "id": 42, + "name": "Empyrean Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_42.jpg" + }, + { + "id": 61, + "name": "Faerie Court Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_61.jpg" + }, + { + "id": 70, + "name": "Prestige Spirit Blossom Lux", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Lux_70.jpg" + } + ] + }, + { + "championName": "Malphite", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malphite_0.jpg" + }, + { + "id": 1, + "name": "Shamrock Malphite", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malphite_1.jpg" + }, + { + "id": 2, + "name": "Coral Reef Malphite", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malphite_2.jpg" + }, + { + "id": 3, + "name": "Marble Malphite", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malphite_3.jpg" + }, + { + "id": 4, + "name": "Obsidian Malphite", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malphite_4.jpg" + }, + { + "id": 5, + "name": "Glacial Malphite", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malphite_5.jpg" + }, + { + "id": 6, + "name": "Mecha Malphite", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malphite_6.jpg" + }, + { + "id": 7, + "name": "Ironside Malphite", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malphite_7.jpg" + }, + { + "id": 16, + "name": "Odyssey Malphite", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malphite_16.jpg" + }, + { + "id": 23, + "name": "Dark Star Malphite", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malphite_23.jpg" + }, + { + "id": 24, + "name": "Prestige Dark Star Malphite", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malphite_24.jpg" + }, + { + "id": 25, + "name": "FPX Malphite", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malphite_25.jpg" + }, + { + "id": 27, + "name": "Old God Malphite", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malphite_27.jpg" + }, + { + "id": 37, + "name": "Lunar Guardian Malphite", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malphite_37.jpg" + }, + { + "id": 48, + "name": "Pool Party Malphite", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malphite_48.jpg" + } + ] + }, + { + "championName": "Malzahar", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malzahar_0.jpg" + }, + { + "id": 1, + "name": "Vizier Malzahar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malzahar_1.jpg" + }, + { + "id": 2, + "name": "Shadow Prince Malzahar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malzahar_2.jpg" + }, + { + "id": 3, + "name": "Djinn Malzahar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malzahar_3.jpg" + }, + { + "id": 4, + "name": "Overlord Malzahar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malzahar_4.jpg" + }, + { + "id": 5, + "name": "Snow Day Malzahar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malzahar_5.jpg" + }, + { + "id": 6, + "name": "Battle Boss Malzahar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malzahar_6.jpg" + }, + { + "id": 7, + "name": "Hextech Malzahar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malzahar_7.jpg" + }, + { + "id": 9, + "name": "Worldbreaker Malzahar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malzahar_9.jpg" + }, + { + "id": 18, + "name": "Beezahar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malzahar_18.jpg" + }, + { + "id": 28, + "name": "Debonair Malzahar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malzahar_28.jpg" + }, + { + "id": 38, + "name": "Three Honors Malzahar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malzahar_38.jpg" + }, + { + "id": 39, + "name": "Empyrean Malzahar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malzahar_39.jpg" + }, + { + "id": 49, + "name": "Fatebreaker Malzahar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Malzahar_49.jpg" + } + ] + }, + { + "championName": "Maokai", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Maokai_0.jpg" + }, + { + "id": 1, + "name": "Charred Maokai", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Maokai_1.jpg" + }, + { + "id": 2, + "name": "Totemic Maokai", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Maokai_2.jpg" + }, + { + "id": 3, + "name": "Festive Maokai", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Maokai_3.jpg" + }, + { + "id": 4, + "name": "Haunted Maokai", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Maokai_4.jpg" + }, + { + "id": 5, + "name": "Goalkeeper Maokai", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Maokai_5.jpg" + }, + { + "id": 6, + "name": "Meowkai", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Maokai_6.jpg" + }, + { + "id": 7, + "name": "Victorious Maokai", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Maokai_7.jpg" + }, + { + "id": 16, + "name": "Worldbreaker Maokai", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Maokai_16.jpg" + }, + { + "id": 24, + "name": "Astronaut Maokai", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Maokai_24.jpg" + }, + { + "id": 33, + "name": "DRX Maokai", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Maokai_33.jpg" + } + ] + }, + { + "championName": "Master Yi", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MasterYi_0.jpg" + }, + { + "id": 1, + "name": "Assassin Master Yi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MasterYi_1.jpg" + }, + { + "id": 2, + "name": "Chosen Master Yi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MasterYi_2.jpg" + }, + { + "id": 3, + "name": "Ionia Master Yi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MasterYi_3.jpg" + }, + { + "id": 4, + "name": "Samurai Yi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MasterYi_4.jpg" + }, + { + "id": 5, + "name": "Headhunter Master Yi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MasterYi_5.jpg" + }, + { + "id": 9, + "name": "PROJECT: Yi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MasterYi_9.jpg" + }, + { + "id": 10, + "name": "Cosmic Blade Master Yi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MasterYi_10.jpg" + }, + { + "id": 11, + "name": "Eternal Sword Yi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MasterYi_11.jpg" + }, + { + "id": 17, + "name": "Snow Man Yi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MasterYi_17.jpg" + }, + { + "id": 24, + "name": "Blood Moon Master Yi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MasterYi_24.jpg" + }, + { + "id": 33, + "name": "PsyOps Master Yi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MasterYi_33.jpg" + }, + { + "id": 42, + "name": "Debonair Master Yi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MasterYi_42.jpg" + } + ] + }, + { + "championName": "Mel", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Mel_0.jpg" + }, + { + "id": 1, + "name": "Arcane Councilor Mel", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Mel_1.jpg" + } + ] + }, + { + "championName": "Milio", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Milio_0.jpg" + }, + { + "id": 1, + "name": "Faerie Court Milio", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Milio_1.jpg" + }, + { + "id": 11, + "name": "Rain Shepherd Milio", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Milio_11.jpg" + } + ] + }, + { + "championName": "Miss Fortune", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MissFortune_0.jpg" + }, + { + "id": 1, + "name": "Cowgirl Miss Fortune", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MissFortune_1.jpg" + }, + { + "id": 2, + "name": "Waterloo Miss Fortune", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MissFortune_2.jpg" + }, + { + "id": 3, + "name": "Secret Agent Miss Fortune", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MissFortune_3.jpg" + }, + { + "id": 4, + "name": "Candy Cane Miss Fortune", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MissFortune_4.jpg" + }, + { + "id": 5, + "name": "Road Warrior Miss Fortune", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MissFortune_5.jpg" + }, + { + "id": 6, + "name": "Crime City Miss Fortune", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MissFortune_6.jpg" + }, + { + "id": 7, + "name": "Arcade Miss Fortune", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MissFortune_7.jpg" + }, + { + "id": 8, + "name": "Captain Fortune", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MissFortune_8.jpg" + }, + { + "id": 9, + "name": "Pool Party Miss Fortune", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MissFortune_9.jpg" + }, + { + "id": 15, + "name": "Star Guardian Miss Fortune", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MissFortune_15.jpg" + }, + { + "id": 16, + "name": "Gun Goddess Miss Fortune", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MissFortune_16.jpg" + }, + { + "id": 17, + "name": "Pajama Guardian Miss Fortune", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MissFortune_17.jpg" + }, + { + "id": 18, + "name": "Bewitching Miss Fortune", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MissFortune_18.jpg" + }, + { + "id": 20, + "name": "Prestige Bewitching Miss Fortune", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MissFortune_20.jpg" + }, + { + "id": 21, + "name": "Ruined Miss Fortune", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MissFortune_21.jpg" + }, + { + "id": 31, + "name": "Battle Bunny Miss Fortune", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MissFortune_31.jpg" + } + ] + }, + { + "championName": "Mordekaiser", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Mordekaiser_0.jpg" + }, + { + "id": 1, + "name": "Dragon Knight Mordekaiser", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Mordekaiser_1.jpg" + }, + { + "id": 2, + "name": "Infernal Mordekaiser", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Mordekaiser_2.jpg" + }, + { + "id": 3, + "name": "Pentakill Mordekaiser", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Mordekaiser_3.jpg" + }, + { + "id": 4, + "name": "Lord Mordekaiser", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Mordekaiser_4.jpg" + }, + { + "id": 5, + "name": "King of Clubs Mordekaiser", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Mordekaiser_5.jpg" + }, + { + "id": 6, + "name": "Dark Star Mordekaiser", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Mordekaiser_6.jpg" + }, + { + "id": 13, + "name": "PROJECT: Mordekaiser", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Mordekaiser_13.jpg" + }, + { + "id": 23, + "name": "Pentakill III: Lost Chapter Mordekaiser", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Mordekaiser_23.jpg" + }, + { + "id": 32, + "name": "High Noon Mordekaiser", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Mordekaiser_32.jpg" + }, + { + "id": 42, + "name": "Ashen Graveknight Mordekaiser", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Mordekaiser_42.jpg" + }, + { + "id": 44, + "name": "Old God Mordekaiser", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Mordekaiser_44.jpg" + }, + { + "id": 54, + "name": "Sahn-Uzal Mordekaiser", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Mordekaiser_54.jpg" + } + ] + }, + { + "championName": "Morgana", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Morgana_0.jpg" + }, + { + "id": 1, + "name": "Exiled Morgana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Morgana_1.jpg" + }, + { + "id": 2, + "name": "Sinful Succulence Morgana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Morgana_2.jpg" + }, + { + "id": 3, + "name": "Blade Mistress Morgana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Morgana_3.jpg" + }, + { + "id": 4, + "name": "Blackthorn Morgana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Morgana_4.jpg" + }, + { + "id": 5, + "name": "Ghost Bride Morgana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Morgana_5.jpg" + }, + { + "id": 6, + "name": "Victorious Morgana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Morgana_6.jpg" + }, + { + "id": 10, + "name": "Lunar Wraith Morgana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Morgana_10.jpg" + }, + { + "id": 11, + "name": "Bewitching Morgana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Morgana_11.jpg" + }, + { + "id": 17, + "name": "Majestic Empress Morgana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Morgana_17.jpg" + }, + { + "id": 26, + "name": "Coven Morgana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Morgana_26.jpg" + }, + { + "id": 39, + "name": "Dawnbringer Morgana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Morgana_39.jpg" + }, + { + "id": 41, + "name": "Prestige Bewitching Morgana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Morgana_41.jpg" + }, + { + "id": 50, + "name": "Star Nemesis Morgana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Morgana_50.jpg" + }, + { + "id": 60, + "name": "Snow Moon Morgana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Morgana_60.jpg" + }, + { + "id": 70, + "name": "Porcelain Morgana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Morgana_70.jpg" + }, + { + "id": 80, + "name": "Spirit Blossom Morgana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Morgana_80.jpg" + } + ] + }, + { + "championName": "Naafiri", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Naafiri_0.jpg" + }, + { + "id": 1, + "name": "Soul Fighter Naafiri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Naafiri_1.jpg" + }, + { + "id": 11, + "name": "PROJECT: Naafiri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Naafiri_11.jpg" + }, + { + "id": 20, + "name": "Glizzy Naafiri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Naafiri_20.jpg" + } + ] + }, + { + "championName": "Nami", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nami_0.jpg" + }, + { + "id": 1, + "name": "Koi Nami", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nami_1.jpg" + }, + { + "id": 2, + "name": "River Spirit Nami", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nami_2.jpg" + }, + { + "id": 3, + "name": "Urf the Nami-tee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nami_3.jpg" + }, + { + "id": 7, + "name": "Deep Sea Nami", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nami_7.jpg" + }, + { + "id": 8, + "name": "SKT T1 Nami", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nami_8.jpg" + }, + { + "id": 9, + "name": "Program Nami", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nami_9.jpg" + }, + { + "id": 15, + "name": "Splendid Staff Nami", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nami_15.jpg" + }, + { + "id": 24, + "name": "Cosmic Destiny Nami", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nami_24.jpg" + }, + { + "id": 32, + "name": "Bewitching Nami", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nami_32.jpg" + }, + { + "id": 41, + "name": "Space Groove Nami", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nami_41.jpg" + }, + { + "id": 42, + "name": "Prestige Space Groove Nami", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nami_42.jpg" + }, + { + "id": 51, + "name": "Coven Nami", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nami_51.jpg" + }, + { + "id": 58, + "name": "Mythmaker Nami", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nami_58.jpg" + } + ] + }, + { + "championName": "Nasus", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nasus_0.jpg" + }, + { + "id": 1, + "name": "Galactic Nasus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nasus_1.jpg" + }, + { + "id": 2, + "name": "Pharaoh Nasus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nasus_2.jpg" + }, + { + "id": 3, + "name": "Dreadknight Nasus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nasus_3.jpg" + }, + { + "id": 4, + "name": "Riot K-9 Nasus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nasus_4.jpg" + }, + { + "id": 5, + "name": "Infernal Nasus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nasus_5.jpg" + }, + { + "id": 6, + "name": "Archduke Nasus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nasus_6.jpg" + }, + { + "id": 10, + "name": "Worldbreaker Nasus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nasus_10.jpg" + }, + { + "id": 11, + "name": "Lunar Guardian Nasus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nasus_11.jpg" + }, + { + "id": 16, + "name": "Battlecast Nasus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nasus_16.jpg" + }, + { + "id": 25, + "name": "Space Groove Nasus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nasus_25.jpg" + }, + { + "id": 35, + "name": "Armored Titan Nasus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nasus_35.jpg" + }, + { + "id": 45, + "name": "Nightbringer Nasus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nasus_45.jpg" + }, + { + "id": 54, + "name": "Fatemaker Nasus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nasus_54.jpg" + } + ] + }, + { + "championName": "Nautilus", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nautilus_0.jpg" + }, + { + "id": 1, + "name": "Abyssal Nautilus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nautilus_1.jpg" + }, + { + "id": 2, + "name": "Subterranean Nautilus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nautilus_2.jpg" + }, + { + "id": 3, + "name": "AstroNautilus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nautilus_3.jpg" + }, + { + "id": 4, + "name": "Warden Nautilus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nautilus_4.jpg" + }, + { + "id": 5, + "name": "Worldbreaker Nautilus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nautilus_5.jpg" + }, + { + "id": 6, + "name": "Conqueror Nautilus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nautilus_6.jpg" + }, + { + "id": 9, + "name": "Shan Hai Scrolls Nautilus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nautilus_9.jpg" + }, + { + "id": 18, + "name": "Fright Night Nautilus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nautilus_18.jpg" + }, + { + "id": 27, + "name": "Cosmic Paladin Nautilus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nautilus_27.jpg" + }, + { + "id": 36, + "name": "Crystalis Indomitus Nautilus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nautilus_36.jpg" + } + ] + }, + { + "championName": "Neeko", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Neeko_0.jpg" + }, + { + "id": 1, + "name": "Winter Wonder Neeko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Neeko_1.jpg" + }, + { + "id": 10, + "name": "Star Guardian Neeko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Neeko_10.jpg" + }, + { + "id": 11, + "name": "Prestige Star Guardian Neeko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Neeko_11.jpg" + }, + { + "id": 12, + "name": "Shan Hai Scrolls Neeko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Neeko_12.jpg" + }, + { + "id": 22, + "name": "Bewitching Neeko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Neeko_22.jpg" + }, + { + "id": 31, + "name": "Street Demons Neeko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Neeko_31.jpg" + }, + { + "id": 40, + "name": "Cosplayer Neeko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Neeko_40.jpg" + } + ] + }, + { + "championName": "Nidalee", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nidalee_0.jpg" + }, + { + "id": 1, + "name": "Snow Bunny Nidalee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nidalee_1.jpg" + }, + { + "id": 2, + "name": "Leopard Nidalee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nidalee_2.jpg" + }, + { + "id": 3, + "name": "French Maid Nidalee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nidalee_3.jpg" + }, + { + "id": 4, + "name": "Pharaoh Nidalee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nidalee_4.jpg" + }, + { + "id": 5, + "name": "Bewitching Nidalee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nidalee_5.jpg" + }, + { + "id": 6, + "name": "Headhunter Nidalee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nidalee_6.jpg" + }, + { + "id": 7, + "name": "Warring Kingdoms Nidalee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nidalee_7.jpg" + }, + { + "id": 8, + "name": "Challenger Nidalee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nidalee_8.jpg" + }, + { + "id": 9, + "name": "Super Galaxy Nidalee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nidalee_9.jpg" + }, + { + "id": 11, + "name": "Dawnbringer Nidalee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nidalee_11.jpg" + }, + { + "id": 18, + "name": "Cosmic Huntress Nidalee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nidalee_18.jpg" + }, + { + "id": 27, + "name": "DWG Nidalee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nidalee_27.jpg" + }, + { + "id": 29, + "name": "Ocean Song Nidalee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nidalee_29.jpg" + }, + { + "id": 39, + "name": "Kittalee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nidalee_39.jpg" + }, + { + "id": 48, + "name": "La Ilusión Nidalee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nidalee_48.jpg" + }, + { + "id": 58, + "name": "Spirit Blossom Nidalee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nidalee_58.jpg" + } + ] + }, + { + "championName": "Nilah", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nilah_0.jpg" + }, + { + "id": 1, + "name": "Star Guardian Nilah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nilah_1.jpg" + }, + { + "id": 11, + "name": "Coven Nilah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nilah_11.jpg" + }, + { + "id": 21, + "name": "Inkshadow Nilah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nilah_21.jpg" + } + ] + }, + { + "championName": "Nocturne", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nocturne_0.jpg" + }, + { + "id": 1, + "name": "Frozen Terror Nocturne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nocturne_1.jpg" + }, + { + "id": 2, + "name": "Void Nocturne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nocturne_2.jpg" + }, + { + "id": 3, + "name": "Ravager Nocturne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nocturne_3.jpg" + }, + { + "id": 4, + "name": "Haunting Nocturne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nocturne_4.jpg" + }, + { + "id": 5, + "name": "Eternum Nocturne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nocturne_5.jpg" + }, + { + "id": 6, + "name": "Cursed Revenant Nocturne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nocturne_6.jpg" + }, + { + "id": 7, + "name": "Old God Nocturne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nocturne_7.jpg" + }, + { + "id": 16, + "name": "Hextech Nocturne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nocturne_16.jpg" + }, + { + "id": 17, + "name": "Broken Covenant Nocturne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nocturne_17.jpg" + }, + { + "id": 26, + "name": "Empyrean Nocturne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nocturne_26.jpg" + } + ] + }, + { + "championName": "Nunu & Willump", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nunu_0.jpg" + }, + { + "id": 1, + "name": "Sasquatch Nunu & Willump", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nunu_1.jpg" + }, + { + "id": 2, + "name": "Workshop Nunu & Willump", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nunu_2.jpg" + }, + { + "id": 3, + "name": "Grungy Nunu & Willump", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nunu_3.jpg" + }, + { + "id": 4, + "name": "Nunu & Willump Bot", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nunu_4.jpg" + }, + { + "id": 5, + "name": "Demolisher Nunu & Willump", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nunu_5.jpg" + }, + { + "id": 6, + "name": "TPA Nunu & Willump", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nunu_6.jpg" + }, + { + "id": 7, + "name": "Zombie Nunu & Willump", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nunu_7.jpg" + }, + { + "id": 8, + "name": "Papercraft Nunu & Willump", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nunu_8.jpg" + }, + { + "id": 16, + "name": "Space Groove Nunu & Willump", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nunu_16.jpg" + }, + { + "id": 26, + "name": "Nunu & Beelump", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Nunu_26.jpg" + } + ] + }, + { + "championName": "Olaf", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Olaf_0.jpg" + }, + { + "id": 1, + "name": "Forsaken Olaf", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Olaf_1.jpg" + }, + { + "id": 2, + "name": "Glacial Olaf", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Olaf_2.jpg" + }, + { + "id": 3, + "name": "Brolaf", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Olaf_3.jpg" + }, + { + "id": 4, + "name": "Pentakill Olaf", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Olaf_4.jpg" + }, + { + "id": 5, + "name": "Marauder Olaf", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Olaf_5.jpg" + }, + { + "id": 6, + "name": "Butcher Olaf", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Olaf_6.jpg" + }, + { + "id": 15, + "name": "SKT T1 Olaf", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Olaf_15.jpg" + }, + { + "id": 16, + "name": "Dragonslayer Olaf", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Olaf_16.jpg" + }, + { + "id": 25, + "name": "Sentinel Olaf", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Olaf_25.jpg" + }, + { + "id": 35, + "name": "Pentakill III: Lost Chapter Olaf", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Olaf_35.jpg" + }, + { + "id": 44, + "name": "Infernal Olaf", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Olaf_44.jpg" + } + ] + }, + { + "championName": "Orianna", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Orianna_0.jpg" + }, + { + "id": 1, + "name": "Gothic Orianna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Orianna_1.jpg" + }, + { + "id": 2, + "name": "Sewn Chaos Orianna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Orianna_2.jpg" + }, + { + "id": 3, + "name": "Bladecraft Orianna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Orianna_3.jpg" + }, + { + "id": 4, + "name": "TPA Orianna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Orianna_4.jpg" + }, + { + "id": 5, + "name": "Winter Wonder Orianna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Orianna_5.jpg" + }, + { + "id": 6, + "name": "Heartseeker Orianna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Orianna_6.jpg" + }, + { + "id": 7, + "name": "Dark Star Orianna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Orianna_7.jpg" + }, + { + "id": 8, + "name": "Victorious Orianna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Orianna_8.jpg" + }, + { + "id": 11, + "name": "Pool Party Orianna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Orianna_11.jpg" + }, + { + "id": 20, + "name": "Orbeeanna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Orianna_20.jpg" + }, + { + "id": 29, + "name": "Star Guardian Orianna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Orianna_29.jpg" + }, + { + "id": 38, + "name": "T1 Orianna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Orianna_38.jpg" + } + ] + }, + { + "championName": "Ornn", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ornn_0.jpg" + }, + { + "id": 1, + "name": "Thunder Lord Ornn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ornn_1.jpg" + }, + { + "id": 2, + "name": "Elderwood Ornn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ornn_2.jpg" + }, + { + "id": 11, + "name": "Space Groove Ornn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ornn_11.jpg" + }, + { + "id": 20, + "name": "Choo-Choo Ornn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ornn_20.jpg" + } + ] + }, + { + "championName": "Pantheon", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pantheon_0.jpg" + }, + { + "id": 1, + "name": "Myrmidon Pantheon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pantheon_1.jpg" + }, + { + "id": 2, + "name": "Ruthless Pantheon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pantheon_2.jpg" + }, + { + "id": 3, + "name": "Perseus Pantheon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pantheon_3.jpg" + }, + { + "id": 4, + "name": "Full Metal Pantheon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pantheon_4.jpg" + }, + { + "id": 5, + "name": "Glaive Warrior Pantheon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pantheon_5.jpg" + }, + { + "id": 6, + "name": "Dragonslayer Pantheon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pantheon_6.jpg" + }, + { + "id": 7, + "name": "Zombie Slayer Pantheon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pantheon_7.jpg" + }, + { + "id": 8, + "name": "Baker Pantheon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pantheon_8.jpg" + }, + { + "id": 16, + "name": "Pulsefire Pantheon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pantheon_16.jpg" + }, + { + "id": 25, + "name": "Ruined Pantheon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pantheon_25.jpg" + }, + { + "id": 26, + "name": "Prestige Ascended Pantheon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pantheon_26.jpg" + }, + { + "id": 36, + "name": "Ashen Conqueror Pantheon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pantheon_36.jpg" + }, + { + "id": 38, + "name": "Chosen of the Wolf Pantheon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pantheon_38.jpg" + } + ] + }, + { + "championName": "Poppy", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Poppy_0.jpg" + }, + { + "id": 1, + "name": "Noxus Poppy", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Poppy_1.jpg" + }, + { + "id": 2, + "name": "Lollipoppy", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Poppy_2.jpg" + }, + { + "id": 3, + "name": "Blacksmith Poppy", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Poppy_3.jpg" + }, + { + "id": 4, + "name": "Ragdoll Poppy", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Poppy_4.jpg" + }, + { + "id": 5, + "name": "Battle Regalia Poppy", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Poppy_5.jpg" + }, + { + "id": 6, + "name": "Scarlet Hammer Poppy", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Poppy_6.jpg" + }, + { + "id": 7, + "name": "Star Guardian Poppy", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Poppy_7.jpg" + }, + { + "id": 14, + "name": "Snow Fawn Poppy", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Poppy_14.jpg" + }, + { + "id": 15, + "name": "Hextech Poppy", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Poppy_15.jpg" + }, + { + "id": 16, + "name": "Astronaut Poppy", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Poppy_16.jpg" + }, + { + "id": 24, + "name": "Bewitching Poppy", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Poppy_24.jpg" + }, + { + "id": 33, + "name": "Cafe Cuties Poppy", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Poppy_33.jpg" + } + ] + }, + { + "championName": "Pyke", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pyke_0.jpg" + }, + { + "id": 1, + "name": "Sand Wraith Pyke", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pyke_1.jpg" + }, + { + "id": 9, + "name": "Blood Moon Pyke", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pyke_9.jpg" + }, + { + "id": 16, + "name": "PROJECT: Pyke", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pyke_16.jpg" + }, + { + "id": 25, + "name": "PsyOps Pyke", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pyke_25.jpg" + }, + { + "id": 34, + "name": "Sentinel Pyke", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pyke_34.jpg" + }, + { + "id": 44, + "name": "Ashen Knight Pyke", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pyke_44.jpg" + }, + { + "id": 45, + "name": "Empyrean Pyke", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pyke_45.jpg" + }, + { + "id": 53, + "name": "Soul Fighter Pyke", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pyke_53.jpg" + }, + { + "id": 54, + "name": "Prestige Soul Fighter Pyke", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pyke_54.jpg" + }, + { + "id": 64, + "name": "Fright Night Pyke", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pyke_64.jpg" + }, + { + "id": 74, + "name": "Inkshadow Pyke", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pyke_74.jpg" + }, + { + "id": 75, + "name": "T1 Pyke", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Pyke_75.jpg" + } + ] + }, + { + "championName": "Qiyana", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Qiyana_0.jpg" + }, + { + "id": 1, + "name": "Battle Boss Qiyana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Qiyana_1.jpg" + }, + { + "id": 2, + "name": "True Damage Qiyana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Qiyana_2.jpg" + }, + { + "id": 10, + "name": "Prestige True Damage Qiyana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Qiyana_10.jpg" + }, + { + "id": 11, + "name": "Battle Queen Qiyana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Qiyana_11.jpg" + }, + { + "id": 20, + "name": "Shockblade Qiyana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Qiyana_20.jpg" + }, + { + "id": 30, + "name": "Lunar Empress Qiyana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Qiyana_30.jpg" + }, + { + "id": 40, + "name": "La Ilusión Qiyana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Qiyana_40.jpg" + }, + { + "id": 50, + "name": "Prestige Battle Academia Qiyana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Qiyana_50.jpg" + } + ] + }, + { + "championName": "Quinn", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Quinn_0.jpg" + }, + { + "id": 1, + "name": "Phoenix Quinn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Quinn_1.jpg" + }, + { + "id": 2, + "name": "Woad Scout Quinn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Quinn_2.jpg" + }, + { + "id": 3, + "name": "Corsair Quinn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Quinn_3.jpg" + }, + { + "id": 4, + "name": "Heartseeker Quinn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Quinn_4.jpg" + }, + { + "id": 5, + "name": "Warden Quinn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Quinn_5.jpg" + }, + { + "id": 14, + "name": "Star Guardian Quinn", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Quinn_14.jpg" + } + ] + }, + { + "championName": "Rakan", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rakan_0.jpg" + }, + { + "id": 1, + "name": "Cosmic Dawn Rakan", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rakan_1.jpg" + }, + { + "id": 2, + "name": "Sweetheart Rakan", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rakan_2.jpg" + }, + { + "id": 3, + "name": "SSG Rakan", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rakan_3.jpg" + }, + { + "id": 4, + "name": "iG Rakan", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rakan_4.jpg" + }, + { + "id": 5, + "name": "Star Guardian Rakan", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rakan_5.jpg" + }, + { + "id": 9, + "name": "Elderwood Rakan", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rakan_9.jpg" + }, + { + "id": 18, + "name": "Arcana Rakan", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rakan_18.jpg" + }, + { + "id": 27, + "name": "Broken Covenant Rakan", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rakan_27.jpg" + }, + { + "id": 36, + "name": "Redeemed Star Guardian Rakan", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rakan_36.jpg" + }, + { + "id": 37, + "name": "Dragonmancer Rakan", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rakan_37.jpg" + }, + { + "id": 38, + "name": "Prestige Dragonmancer Rakan", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rakan_38.jpg" + }, + { + "id": 47, + "name": "Battle Academia Rakan", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rakan_47.jpg" + } + ] + }, + { + "championName": "Rammus", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rammus_0.jpg" + }, + { + "id": 1, + "name": "King Rammus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rammus_1.jpg" + }, + { + "id": 2, + "name": "Chrome Rammus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rammus_2.jpg" + }, + { + "id": 3, + "name": "Molten Rammus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rammus_3.jpg" + }, + { + "id": 4, + "name": "Freljord Rammus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rammus_4.jpg" + }, + { + "id": 5, + "name": "Ninja Rammus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rammus_5.jpg" + }, + { + "id": 6, + "name": "Full Metal Rammus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rammus_6.jpg" + }, + { + "id": 7, + "name": "Guardian of the Sands Rammus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rammus_7.jpg" + }, + { + "id": 8, + "name": "Sweeper Rammus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rammus_8.jpg" + }, + { + "id": 16, + "name": "Hextech Rammus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rammus_16.jpg" + }, + { + "id": 17, + "name": "Astronaut Rammus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rammus_17.jpg" + }, + { + "id": 26, + "name": "Durian Defender Rammus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rammus_26.jpg" + } + ] + }, + { + "championName": "Rek'Sai", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/RekSai_0.jpg" + }, + { + "id": 1, + "name": "Eternum Rek'Sai", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/RekSai_1.jpg" + }, + { + "id": 2, + "name": "Pool Party Rek'Sai", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/RekSai_2.jpg" + }, + { + "id": 9, + "name": "Blackfrost Rek'Sai", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/RekSai_9.jpg" + }, + { + "id": 17, + "name": "Elderwood Rek'Sai", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/RekSai_17.jpg" + } + ] + }, + { + "championName": "Rell", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rell_0.jpg" + }, + { + "id": 1, + "name": "Battle Queen Rell", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rell_1.jpg" + }, + { + "id": 10, + "name": "Star Guardian Rell", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rell_10.jpg" + }, + { + "id": 20, + "name": "High Noon Rell", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rell_20.jpg" + }, + { + "id": 30, + "name": "Grand Reckoning Rell", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rell_30.jpg" + } + ] + }, + { + "championName": "Renata Glasc", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renata_0.jpg" + }, + { + "id": 1, + "name": "Admiral Glasc", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renata_1.jpg" + }, + { + "id": 10, + "name": "Fright Night Renata Glasc", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renata_10.jpg" + } + ] + }, + { + "championName": "Renekton", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renekton_0.jpg" + }, + { + "id": 1, + "name": "Galactic Renekton", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renekton_1.jpg" + }, + { + "id": 2, + "name": "Outback Renekton", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renekton_2.jpg" + }, + { + "id": 3, + "name": "Bloodfury Renekton", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renekton_3.jpg" + }, + { + "id": 4, + "name": "Rune Wars Renekton", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renekton_4.jpg" + }, + { + "id": 5, + "name": "Scorched Earth Renekton", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renekton_5.jpg" + }, + { + "id": 6, + "name": "Pool Party Renekton", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renekton_6.jpg" + }, + { + "id": 7, + "name": "Prehistoric Renekton", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renekton_7.jpg" + }, + { + "id": 8, + "name": "SKT T1 Renekton", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renekton_8.jpg" + }, + { + "id": 9, + "name": "Renektoy", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renekton_9.jpg" + }, + { + "id": 17, + "name": "Hextech Renekton", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renekton_17.jpg" + }, + { + "id": 18, + "name": "Blackfrost Renekton", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renekton_18.jpg" + }, + { + "id": 26, + "name": "PROJECT: Renekton", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renekton_26.jpg" + }, + { + "id": 33, + "name": "Dawnbringer Renekton", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renekton_33.jpg" + }, + { + "id": 42, + "name": "Worlds 2023 Renekton", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renekton_42.jpg" + }, + { + "id": 48, + "name": "Inkshadow Renekton", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Renekton_48.jpg" + } + ] + }, + { + "championName": "Rengar", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rengar_0.jpg" + }, + { + "id": 1, + "name": "Headhunter Rengar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rengar_1.jpg" + }, + { + "id": 2, + "name": "Night Hunter Rengar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rengar_2.jpg" + }, + { + "id": 3, + "name": "SSW Rengar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rengar_3.jpg" + }, + { + "id": 8, + "name": "Mecha Rengar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rengar_8.jpg" + }, + { + "id": 15, + "name": "Pretty Kitty Rengar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rengar_15.jpg" + }, + { + "id": 23, + "name": "Guardian of the Sands Rengar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rengar_23.jpg" + }, + { + "id": 30, + "name": "Sentinel Rengar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rengar_30.jpg" + }, + { + "id": 40, + "name": "Street Demons Rengar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rengar_40.jpg" + } + ] + }, + { + "championName": "Riven", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Riven_0.jpg" + }, + { + "id": 1, + "name": "Redeemed Riven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Riven_1.jpg" + }, + { + "id": 2, + "name": "Crimson Elite Riven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Riven_2.jpg" + }, + { + "id": 3, + "name": "Battle Bunny Riven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Riven_3.jpg" + }, + { + "id": 5, + "name": "Dragonblade Riven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Riven_5.jpg" + }, + { + "id": 6, + "name": "Arcade Riven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Riven_6.jpg" + }, + { + "id": 7, + "name": "Reignited Worlds 2012 Riven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Riven_7.jpg" + }, + { + "id": 16, + "name": "Dawnbringer Riven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Riven_16.jpg" + }, + { + "id": 18, + "name": "Pulsefire Riven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Riven_18.jpg" + }, + { + "id": 20, + "name": "Valiant Sword Riven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Riven_20.jpg" + }, + { + "id": 22, + "name": "Prestige Valiant Sword Riven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Riven_22.jpg" + }, + { + "id": 23, + "name": "Spirit Blossom Riven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Riven_23.jpg" + }, + { + "id": 34, + "name": "Sentinel Riven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Riven_34.jpg" + }, + { + "id": 44, + "name": "Battle Bunny Prime Riven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Riven_44.jpg" + }, + { + "id": 55, + "name": "Broken Covenant Riven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Riven_55.jpg" + }, + { + "id": 63, + "name": "Primal Ambush Riven", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Riven_63.jpg" + } + ] + }, + { + "championName": "Rumble", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rumble_0.jpg" + }, + { + "id": 1, + "name": "Rumble in the Jungle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rumble_1.jpg" + }, + { + "id": 2, + "name": "Bilgerat Rumble", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rumble_2.jpg" + }, + { + "id": 3, + "name": "Super Galaxy Rumble", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rumble_3.jpg" + }, + { + "id": 4, + "name": "Badlands Baron Rumble", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rumble_4.jpg" + }, + { + "id": 13, + "name": "Space Groove Rumble", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rumble_13.jpg" + }, + { + "id": 23, + "name": "Cafe Cuties Rumble", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Rumble_23.jpg" + } + ] + }, + { + "championName": "Ryze", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ryze_0.jpg" + }, + { + "id": 1, + "name": "Young Ryze", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ryze_1.jpg" + }, + { + "id": 2, + "name": "Tribal Ryze", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ryze_2.jpg" + }, + { + "id": 3, + "name": "Uncle Ryze", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ryze_3.jpg" + }, + { + "id": 4, + "name": "Triumphant Ryze", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ryze_4.jpg" + }, + { + "id": 5, + "name": "Professor Ryze", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ryze_5.jpg" + }, + { + "id": 6, + "name": "Zombie Ryze", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ryze_6.jpg" + }, + { + "id": 7, + "name": "Dark Crystal Ryze", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ryze_7.jpg" + }, + { + "id": 8, + "name": "Pirate Ryze", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ryze_8.jpg" + }, + { + "id": 9, + "name": "Ryze Whitebeard", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ryze_9.jpg" + }, + { + "id": 10, + "name": "SKT T1 Ryze", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ryze_10.jpg" + }, + { + "id": 13, + "name": "Guardian of the Sands Ryze", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ryze_13.jpg" + }, + { + "id": 20, + "name": "Arcana Ryze", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ryze_20.jpg" + }, + { + "id": 29, + "name": "Blood Moon Ryze", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ryze_29.jpg" + } + ] + }, + { + "championName": "Samira", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Samira_0.jpg" + }, + { + "id": 1, + "name": "PsyOps Samira", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Samira_1.jpg" + }, + { + "id": 10, + "name": "Space Groove Samira", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Samira_10.jpg" + }, + { + "id": 20, + "name": "High Noon Samira", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Samira_20.jpg" + }, + { + "id": 30, + "name": "Soul Fighter Samira", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Samira_30.jpg" + }, + { + "id": 33, + "name": "Masque of the Black Rose Samira", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Samira_33.jpg" + } + ] + }, + { + "championName": "Sejuani", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sejuani_0.jpg" + }, + { + "id": 1, + "name": "Sabretusk Sejuani", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sejuani_1.jpg" + }, + { + "id": 2, + "name": "Darkrider Sejuani", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sejuani_2.jpg" + }, + { + "id": 3, + "name": "Traditional Sejuani", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sejuani_3.jpg" + }, + { + "id": 4, + "name": "Bear Cavalry Sejuani", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sejuani_4.jpg" + }, + { + "id": 5, + "name": "Poro Rider Sejuani", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sejuani_5.jpg" + }, + { + "id": 6, + "name": "Beast Hunter Sejuani", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sejuani_6.jpg" + }, + { + "id": 7, + "name": "Sejuani Dawnchaser", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sejuani_7.jpg" + }, + { + "id": 8, + "name": "Firecracker Sejuani", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sejuani_8.jpg" + }, + { + "id": 15, + "name": "Hextech Sejuani", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sejuani_15.jpg" + }, + { + "id": 16, + "name": "PROJECT: Sejuani", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sejuani_16.jpg" + }, + { + "id": 26, + "name": "Solar Eclipse Sejuani", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sejuani_26.jpg" + }, + { + "id": 36, + "name": "Victorious Sejuani", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sejuani_36.jpg" + } + ] + }, + { + "championName": "Senna", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Senna_0.jpg" + }, + { + "id": 1, + "name": "True Damage Senna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Senna_1.jpg" + }, + { + "id": 9, + "name": "Prestige True Damage Senna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Senna_9.jpg" + }, + { + "id": 10, + "name": "High Noon Senna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Senna_10.jpg" + }, + { + "id": 16, + "name": "PROJECT: Senna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Senna_16.jpg" + }, + { + "id": 26, + "name": "Lunar Eclipse Senna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Senna_26.jpg" + }, + { + "id": 27, + "name": "Prestige Lunar Eclipse Senna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Senna_27.jpg" + }, + { + "id": 36, + "name": "Bewitching Senna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Senna_36.jpg" + }, + { + "id": 46, + "name": "Star Guardian Senna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Senna_46.jpg" + }, + { + "id": 56, + "name": "Winterblessed Senna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Senna_56.jpg" + }, + { + "id": 63, + "name": "Masked Justice Senna", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Senna_63.jpg" + } + ] + }, + { + "championName": "Seraphine", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Seraphine_0.jpg" + }, + { + "id": 1, + "name": "K/DA ALL OUT Seraphine Indie", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Seraphine_1.jpg" + }, + { + "id": 2, + "name": "K/DA ALL OUT Seraphine Rising Star", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Seraphine_2.jpg" + }, + { + "id": 3, + "name": "K/DA ALL OUT Seraphine Superstar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Seraphine_3.jpg" + }, + { + "id": 4, + "name": "Graceful Phoenix Seraphine", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Seraphine_4.jpg" + }, + { + "id": 14, + "name": "Ocean Song Seraphine", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Seraphine_14.jpg" + }, + { + "id": 15, + "name": "Prestige Ocean Song Seraphine", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Seraphine_15.jpg" + }, + { + "id": 24, + "name": "Faerie Court Seraphine", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Seraphine_24.jpg" + }, + { + "id": 34, + "name": "Star Guardian Seraphine", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Seraphine_34.jpg" + }, + { + "id": 43, + "name": "Battle Dove Seraphine", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Seraphine_43.jpg" + }, + { + "id": 50, + "name": "Dumpling Darlings Seraphine", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Seraphine_50.jpg" + } + ] + }, + { + "championName": "Sett", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sett_0.jpg" + }, + { + "id": 1, + "name": "Mecha Kingdoms Sett", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sett_1.jpg" + }, + { + "id": 8, + "name": "Obsidian Dragon Sett", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sett_8.jpg" + }, + { + "id": 9, + "name": "Prestige Obsidian Dragon Sett", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sett_9.jpg" + }, + { + "id": 10, + "name": "Pool Party Sett", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sett_10.jpg" + }, + { + "id": 19, + "name": "Firecracker Sett", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sett_19.jpg" + }, + { + "id": 38, + "name": "Spirit Blossom Sett", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sett_38.jpg" + }, + { + "id": 45, + "name": "Soul Fighter Sett", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sett_45.jpg" + }, + { + "id": 56, + "name": "HEARTSTEEL Sett", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sett_56.jpg" + }, + { + "id": 66, + "name": "Radiant Serpent Sett", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sett_66.jpg" + }, + { + "id": 67, + "name": "Spirit Blossom Springs Sett", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sett_67.jpg" + } + ] + }, + { + "championName": "Shaco", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shaco_0.jpg" + }, + { + "id": 1, + "name": "Mad Hatter Shaco", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shaco_1.jpg" + }, + { + "id": 2, + "name": "Royal Shaco", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shaco_2.jpg" + }, + { + "id": 3, + "name": "Nutcracko", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shaco_3.jpg" + }, + { + "id": 4, + "name": "Workshop Shaco", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shaco_4.jpg" + }, + { + "id": 5, + "name": "Asylum Shaco", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shaco_5.jpg" + }, + { + "id": 6, + "name": "Masked Shaco", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shaco_6.jpg" + }, + { + "id": 7, + "name": "Wild Card Shaco", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shaco_7.jpg" + }, + { + "id": 8, + "name": "Dark Star Shaco", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shaco_8.jpg" + }, + { + "id": 15, + "name": "Arcanist Shaco", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shaco_15.jpg" + }, + { + "id": 23, + "name": "Crime City Nightmare Shaco", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shaco_23.jpg" + }, + { + "id": 33, + "name": "Winterblessed Shaco", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shaco_33.jpg" + }, + { + "id": 43, + "name": "Soul Fighter Shaco", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shaco_43.jpg" + }, + { + "id": 44, + "name": "Prestige Soul Fighter Shaco", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shaco_44.jpg" + }, + { + "id": 54, + "name": "Fright Night Shaco", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shaco_54.jpg" + }, + { + "id": 64, + "name": "Cat-in-the-Box Shaco", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shaco_64.jpg" + } + ] + }, + { + "championName": "Shen", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shen_0.jpg" + }, + { + "id": 1, + "name": "Frozen Shen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shen_1.jpg" + }, + { + "id": 2, + "name": "Yellow Jacket Shen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shen_2.jpg" + }, + { + "id": 3, + "name": "Surgeon Shen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shen_3.jpg" + }, + { + "id": 4, + "name": "Blood Moon Shen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shen_4.jpg" + }, + { + "id": 5, + "name": "Warlord Shen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shen_5.jpg" + }, + { + "id": 6, + "name": "TPA Shen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shen_6.jpg" + }, + { + "id": 15, + "name": "Pulsefire Shen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shen_15.jpg" + }, + { + "id": 16, + "name": "Infernal Shen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shen_16.jpg" + }, + { + "id": 22, + "name": "PsyOps Shen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shen_22.jpg" + }, + { + "id": 40, + "name": "Shockblade Shen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shen_40.jpg" + }, + { + "id": 49, + "name": "Ashen Guardian Shen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shen_49.jpg" + }, + { + "id": 51, + "name": "Three Honors Shen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shen_51.jpg" + } + ] + }, + { + "championName": "Shyvana", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shyvana_0.jpg" + }, + { + "id": 2, + "name": "Boneclaw Shyvana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shyvana_2.jpg" + }, + { + "id": 3, + "name": "Darkflame Shyvana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shyvana_3.jpg" + }, + { + "id": 4, + "name": "Ice Drake Shyvana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shyvana_4.jpg" + }, + { + "id": 6, + "name": "Super Galaxy Shyvana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shyvana_6.jpg" + }, + { + "id": 8, + "name": "Ruined Shyvana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shyvana_8.jpg" + }, + { + "id": 17, + "name": "Immortal Journey Shyvana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Shyvana_17.jpg" + } + ] + }, + { + "championName": "Singed", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Singed_0.jpg" + }, + { + "id": 1, + "name": "Riot Squad Singed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Singed_1.jpg" + }, + { + "id": 2, + "name": "Hextech Singed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Singed_2.jpg" + }, + { + "id": 3, + "name": "Surfer Singed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Singed_3.jpg" + }, + { + "id": 4, + "name": "Mad Scientist Singed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Singed_4.jpg" + }, + { + "id": 5, + "name": "Augmented Singed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Singed_5.jpg" + }, + { + "id": 6, + "name": "Snow Day Singed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Singed_6.jpg" + }, + { + "id": 7, + "name": "SSW Singed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Singed_7.jpg" + }, + { + "id": 8, + "name": "Black Scourge Singed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Singed_8.jpg" + }, + { + "id": 9, + "name": "Beekeeper Singed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Singed_9.jpg" + }, + { + "id": 10, + "name": "Resistance Singed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Singed_10.jpg" + }, + { + "id": 19, + "name": "Astronaut Singed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Singed_19.jpg" + }, + { + "id": 28, + "name": "Arcane Shimmer Lab Singed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Singed_28.jpg" + } + ] + }, + { + "championName": "Sion", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sion_0.jpg" + }, + { + "id": 1, + "name": "Hextech Sion", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sion_1.jpg" + }, + { + "id": 2, + "name": "Barbarian Sion", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sion_2.jpg" + }, + { + "id": 3, + "name": "Lumberjack Sion", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sion_3.jpg" + }, + { + "id": 4, + "name": "Warmonger Sion", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sion_4.jpg" + }, + { + "id": 5, + "name": "Mecha Zero Sion", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sion_5.jpg" + }, + { + "id": 14, + "name": "Worldbreaker Sion", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sion_14.jpg" + }, + { + "id": 22, + "name": "Blackfrost Sion", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sion_22.jpg" + }, + { + "id": 30, + "name": "High Noon Sion", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sion_30.jpg" + }, + { + "id": 40, + "name": "Cosmic Paladin Sion", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sion_40.jpg" + }, + { + "id": 49, + "name": "Grand Reckoning Sion", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sion_49.jpg" + } + ] + }, + { + "championName": "Sivir", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_0.jpg" + }, + { + "id": 1, + "name": "Warrior Princess Sivir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_1.jpg" + }, + { + "id": 2, + "name": "Spectacular Sivir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_2.jpg" + }, + { + "id": 3, + "name": "Huntress Sivir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_3.jpg" + }, + { + "id": 4, + "name": "Bandit Sivir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_4.jpg" + }, + { + "id": 5, + "name": "PAX Sivir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_5.jpg" + }, + { + "id": 6, + "name": "Snowstorm Sivir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_6.jpg" + }, + { + "id": 7, + "name": "Warden Sivir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_7.jpg" + }, + { + "id": 8, + "name": "Victorious Sivir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_8.jpg" + }, + { + "id": 9, + "name": "Neo PAX Sivir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_9.jpg" + }, + { + "id": 10, + "name": "Pizza Delivery Sivir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_10.jpg" + }, + { + "id": 16, + "name": "Blood Moon Sivir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_16.jpg" + }, + { + "id": 25, + "name": "Odyssey Sivir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_25.jpg" + }, + { + "id": 34, + "name": "Cafe Cuties Sivir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_34.jpg" + }, + { + "id": 43, + "name": "Solar Eclipse Sivir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_43.jpg" + }, + { + "id": 50, + "name": "Mythmaker Sivir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_50.jpg" + }, + { + "id": 51, + "name": "Prestige Mythmaker Sivir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_51.jpg" + }, + { + "id": 61, + "name": "Primal Ambush Sivir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_61.jpg" + }, + { + "id": 70, + "name": "Ann-Sivir-sary", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sivir_70.jpg" + } + ] + }, + { + "championName": "Skarner", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Skarner_0.jpg" + }, + { + "id": 1, + "name": "Sandscourge Skarner", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Skarner_1.jpg" + }, + { + "id": 2, + "name": "Earthrune Skarner", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Skarner_2.jpg" + }, + { + "id": 3, + "name": "Battlecast Alpha Skarner", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Skarner_3.jpg" + }, + { + "id": 4, + "name": "Guardian of the Sands Skarner", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Skarner_4.jpg" + }, + { + "id": 5, + "name": "Cosmic Sting Skarner", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Skarner_5.jpg" + } + ] + }, + { + "championName": "Smolder", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Smolder_0.jpg" + }, + { + "id": 1, + "name": "Heavenscale Smolder", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Smolder_1.jpg" + } + ] + }, + { + "championName": "Sona", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sona_0.jpg" + }, + { + "id": 1, + "name": "Muse Sona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sona_1.jpg" + }, + { + "id": 2, + "name": "Pentakill Sona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sona_2.jpg" + }, + { + "id": 3, + "name": "Silent Night Sona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sona_3.jpg" + }, + { + "id": 4, + "name": "Guqin Sona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sona_4.jpg" + }, + { + "id": 5, + "name": "Arcade Sona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sona_5.jpg" + }, + { + "id": 6, + "name": "DJ Sona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sona_6.jpg" + }, + { + "id": 7, + "name": "Sweetheart Sona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sona_7.jpg" + }, + { + "id": 9, + "name": "Odyssey Sona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sona_9.jpg" + }, + { + "id": 17, + "name": "PsyOps Sona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sona_17.jpg" + }, + { + "id": 26, + "name": "Pentakill III: Lost Chapter Sona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sona_26.jpg" + }, + { + "id": 35, + "name": "Star Guardian Sona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sona_35.jpg" + }, + { + "id": 45, + "name": "Immortal Journey Sona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sona_45.jpg" + }, + { + "id": 46, + "name": "Prestige Immortal Journey Sona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sona_46.jpg" + }, + { + "id": 56, + "name": "Victorious Sona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sona_56.jpg" + }, + { + "id": 66, + "name": "Spirit Blossom Springs Sona", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sona_66.jpg" + } + ] + }, + { + "championName": "Soraka", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Soraka_0.jpg" + }, + { + "id": 1, + "name": "Dryad Soraka", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Soraka_1.jpg" + }, + { + "id": 2, + "name": "Divine Soraka", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Soraka_2.jpg" + }, + { + "id": 3, + "name": "Celestine Soraka", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Soraka_3.jpg" + }, + { + "id": 4, + "name": "Reaper Soraka", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Soraka_4.jpg" + }, + { + "id": 5, + "name": "Order of the Banana Soraka", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Soraka_5.jpg" + }, + { + "id": 6, + "name": "Program Soraka", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Soraka_6.jpg" + }, + { + "id": 7, + "name": "Star Guardian Soraka", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Soraka_7.jpg" + }, + { + "id": 8, + "name": "Pajama Guardian Soraka", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Soraka_8.jpg" + }, + { + "id": 9, + "name": "Winter Wonder Soraka", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Soraka_9.jpg" + }, + { + "id": 15, + "name": "Dawnbringer Soraka", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Soraka_15.jpg" + }, + { + "id": 16, + "name": "Nightbringer Soraka", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Soraka_16.jpg" + }, + { + "id": 17, + "name": "Prestige Star Guardian Soraka", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Soraka_17.jpg" + }, + { + "id": 18, + "name": "Cafe Cuties Soraka", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Soraka_18.jpg" + }, + { + "id": 27, + "name": "Spirit Blossom Soraka", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Soraka_27.jpg" + }, + { + "id": 37, + "name": "Immortal Journey Soraka", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Soraka_37.jpg" + }, + { + "id": 44, + "name": "Faerie Court Soraka", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Soraka_44.jpg" + } + ] + }, + { + "championName": "Swain", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Swain_0.jpg" + }, + { + "id": 1, + "name": "Northern Front Swain", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Swain_1.jpg" + }, + { + "id": 2, + "name": "Bilgewater Swain", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Swain_2.jpg" + }, + { + "id": 3, + "name": "Tyrant Swain", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Swain_3.jpg" + }, + { + "id": 4, + "name": "Dragon Master Swain", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Swain_4.jpg" + }, + { + "id": 11, + "name": "Hextech Swain", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Swain_11.jpg" + }, + { + "id": 12, + "name": "Crystal Rose Swain", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Swain_12.jpg" + }, + { + "id": 21, + "name": "Winterblessed Swain", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Swain_21.jpg" + }, + { + "id": 32, + "name": "Chosen of the Wolf Swain", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Swain_32.jpg" + }, + { + "id": 33, + "name": "Prestige Chosen of the Wolf Swain", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Swain_33.jpg" + } + ] + }, + { + "championName": "Sylas", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sylas_0.jpg" + }, + { + "id": 1, + "name": "Lunar Wraith Sylas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sylas_1.jpg" + }, + { + "id": 8, + "name": "Freljord Sylas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sylas_8.jpg" + }, + { + "id": 13, + "name": "PROJECT: Sylas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sylas_13.jpg" + }, + { + "id": 14, + "name": "Prestige PROJECT: Sylas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sylas_14.jpg" + }, + { + "id": 24, + "name": "Battle Wolf Sylas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sylas_24.jpg" + }, + { + "id": 34, + "name": "Ashen Slayer Sylas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sylas_34.jpg" + }, + { + "id": 36, + "name": "Winterblessed Sylas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sylas_36.jpg" + }, + { + "id": 46, + "name": "Dark Star Sylas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sylas_46.jpg" + }, + { + "id": 53, + "name": "Prestige T1 Sylas", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Sylas_53.jpg" + } + ] + }, + { + "championName": "Syndra", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Syndra_0.jpg" + }, + { + "id": 1, + "name": "Justicar Syndra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Syndra_1.jpg" + }, + { + "id": 2, + "name": "Atlantean Syndra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Syndra_2.jpg" + }, + { + "id": 3, + "name": "Queen of Diamonds Syndra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Syndra_3.jpg" + }, + { + "id": 4, + "name": "Snow Day Syndra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Syndra_4.jpg" + }, + { + "id": 5, + "name": "SKT T1 Syndra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Syndra_5.jpg" + }, + { + "id": 6, + "name": "Star Guardian Syndra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Syndra_6.jpg" + }, + { + "id": 7, + "name": "Pool Party Syndra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Syndra_7.jpg" + }, + { + "id": 16, + "name": "Withered Rose Syndra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Syndra_16.jpg" + }, + { + "id": 25, + "name": "Bewitching Syndra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Syndra_25.jpg" + }, + { + "id": 34, + "name": "Prestige Star Guardian Syndra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Syndra_34.jpg" + }, + { + "id": 44, + "name": "Spirit Blossom Syndra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Syndra_44.jpg" + }, + { + "id": 54, + "name": "Coven Syndra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Syndra_54.jpg" + }, + { + "id": 65, + "name": "Dumpling Darlings Syndra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Syndra_65.jpg" + } + ] + }, + { + "championName": "Tahm Kench", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TahmKench_0.jpg" + }, + { + "id": 1, + "name": "Master Chef Tahm Kench", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TahmKench_1.jpg" + }, + { + "id": 2, + "name": "Urf Kench", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TahmKench_2.jpg" + }, + { + "id": 3, + "name": "Coin Emperor Tahm Kench", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TahmKench_3.jpg" + }, + { + "id": 11, + "name": "Arcana Tahm Kench", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TahmKench_11.jpg" + }, + { + "id": 20, + "name": "High Noon Tahm Kench", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TahmKench_20.jpg" + } + ] + }, + { + "championName": "Taliyah", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Taliyah_0.jpg" + }, + { + "id": 1, + "name": "Freljord Taliyah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Taliyah_1.jpg" + }, + { + "id": 2, + "name": "SSG Taliyah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Taliyah_2.jpg" + }, + { + "id": 3, + "name": "Pool Party Taliyah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Taliyah_3.jpg" + }, + { + "id": 11, + "name": "Star Guardian Taliyah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Taliyah_11.jpg" + }, + { + "id": 21, + "name": "Crystalis Motus Taliyah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Taliyah_21.jpg" + } + ] + }, + { + "championName": "Talon", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Talon_0.jpg" + }, + { + "id": 1, + "name": "Renegade Talon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Talon_1.jpg" + }, + { + "id": 2, + "name": "Crimson Elite Talon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Talon_2.jpg" + }, + { + "id": 3, + "name": "Dragonblade Talon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Talon_3.jpg" + }, + { + "id": 4, + "name": "SSW Talon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Talon_4.jpg" + }, + { + "id": 5, + "name": "Blood Moon Talon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Talon_5.jpg" + }, + { + "id": 12, + "name": "Enduring Sword Talon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Talon_12.jpg" + }, + { + "id": 20, + "name": "Talon Blackwood", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Talon_20.jpg" + }, + { + "id": 29, + "name": "Withered Rose Talon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Talon_29.jpg" + }, + { + "id": 38, + "name": "High Noon Talon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Talon_38.jpg" + }, + { + "id": 39, + "name": "Prestige High Noon Talon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Talon_39.jpg" + }, + { + "id": 49, + "name": "Primal Ambush Talon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Talon_49.jpg" + }, + { + "id": 59, + "name": "Grand Reckoning Talon", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Talon_59.jpg" + } + ] + }, + { + "championName": "Taric", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Taric_0.jpg" + }, + { + "id": 1, + "name": "Emerald Taric", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Taric_1.jpg" + }, + { + "id": 2, + "name": "Armor of the Fifth Age Taric", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Taric_2.jpg" + }, + { + "id": 3, + "name": "Bloodstone Taric", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Taric_3.jpg" + }, + { + "id": 4, + "name": "Pool Party Taric", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Taric_4.jpg" + }, + { + "id": 9, + "name": "Taric Luminshield", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Taric_9.jpg" + }, + { + "id": 18, + "name": "Space Groove Taric", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Taric_18.jpg" + }, + { + "id": 27, + "name": "Fatebreaker Taric", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Taric_27.jpg" + } + ] + }, + { + "championName": "Teemo", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Teemo_0.jpg" + }, + { + "id": 1, + "name": "Happy Elf Teemo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Teemo_1.jpg" + }, + { + "id": 2, + "name": "Recon Teemo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Teemo_2.jpg" + }, + { + "id": 3, + "name": "Badger Teemo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Teemo_3.jpg" + }, + { + "id": 4, + "name": "Astronaut Teemo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Teemo_4.jpg" + }, + { + "id": 5, + "name": "Cottontail Teemo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Teemo_5.jpg" + }, + { + "id": 6, + "name": "Super Teemo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Teemo_6.jpg" + }, + { + "id": 7, + "name": "Panda Teemo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Teemo_7.jpg" + }, + { + "id": 8, + "name": "Omega Squad Teemo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Teemo_8.jpg" + }, + { + "id": 14, + "name": "Little Devil Teemo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Teemo_14.jpg" + }, + { + "id": 18, + "name": "Beemo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Teemo_18.jpg" + }, + { + "id": 25, + "name": "Spirit Blossom Teemo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Teemo_25.jpg" + }, + { + "id": 27, + "name": "Prestige Spirit Blossom Teemo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Teemo_27.jpg" + }, + { + "id": 37, + "name": "Firecracker Teemo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Teemo_37.jpg" + }, + { + "id": 47, + "name": "Space Groove Teemo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Teemo_47.jpg" + }, + { + "id": 54, + "name": "Spirit Blossom Springs Teemo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Teemo_54.jpg" + } + ] + }, + { + "championName": "Thresh", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Thresh_0.jpg" + }, + { + "id": 1, + "name": "Deep Terror Thresh", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Thresh_1.jpg" + }, + { + "id": 3, + "name": "Blood Moon Thresh", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Thresh_3.jpg" + }, + { + "id": 4, + "name": "SSW Thresh", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Thresh_4.jpg" + }, + { + "id": 5, + "name": "Dark Star Thresh", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Thresh_5.jpg" + }, + { + "id": 6, + "name": "High Noon Thresh", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Thresh_6.jpg" + }, + { + "id": 13, + "name": "Pulsefire Thresh", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Thresh_13.jpg" + }, + { + "id": 14, + "name": "Prestige Pulsefire Thresh", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Thresh_14.jpg" + }, + { + "id": 15, + "name": "FPX Thresh", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Thresh_15.jpg" + }, + { + "id": 17, + "name": "Spirit Blossom Thresh", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Thresh_17.jpg" + }, + { + "id": 27, + "name": "Unbound Thresh", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Thresh_27.jpg" + }, + { + "id": 28, + "name": "Steel Dragon Thresh", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Thresh_28.jpg" + }, + { + "id": 39, + "name": "Lunar Emperor Thresh", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Thresh_39.jpg" + }, + { + "id": 49, + "name": "Winterblessed Thresh", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Thresh_49.jpg" + }, + { + "id": 59, + "name": "Janitor Thresh", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Thresh_59.jpg" + } + ] + }, + { + "championName": "Tristana", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tristana_0.jpg" + }, + { + "id": 1, + "name": "Riot Girl Tristana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tristana_1.jpg" + }, + { + "id": 2, + "name": "Earnest Elf Tristana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tristana_2.jpg" + }, + { + "id": 3, + "name": "Firefighter Tristana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tristana_3.jpg" + }, + { + "id": 4, + "name": "Guerilla Tristana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tristana_4.jpg" + }, + { + "id": 5, + "name": "Buccaneer Tristana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tristana_5.jpg" + }, + { + "id": 6, + "name": "Rocket Girl Tristana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tristana_6.jpg" + }, + { + "id": 10, + "name": "Dragon Trainer Tristana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tristana_10.jpg" + }, + { + "id": 11, + "name": "Bewitching Tristana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tristana_11.jpg" + }, + { + "id": 12, + "name": "Omega Squad Tristana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tristana_12.jpg" + }, + { + "id": 24, + "name": "Little Demon Tristana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tristana_24.jpg" + }, + { + "id": 33, + "name": "Pengu Cosplay Tristana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tristana_33.jpg" + }, + { + "id": 40, + "name": "Hextech Tristana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tristana_40.jpg" + }, + { + "id": 41, + "name": "Firecracker Tristana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tristana_41.jpg" + }, + { + "id": 51, + "name": "Spirit Blossom Tristana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tristana_51.jpg" + }, + { + "id": 61, + "name": "Faerie Court Tristana", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tristana_61.jpg" + } + ] + }, + { + "championName": "Trundle", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Trundle_0.jpg" + }, + { + "id": 1, + "name": "Lil' Slugger Trundle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Trundle_1.jpg" + }, + { + "id": 2, + "name": "Junkyard Trundle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Trundle_2.jpg" + }, + { + "id": 3, + "name": "Traditional Trundle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Trundle_3.jpg" + }, + { + "id": 4, + "name": "Constable Trundle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Trundle_4.jpg" + }, + { + "id": 5, + "name": "Worldbreaker Trundle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Trundle_5.jpg" + }, + { + "id": 6, + "name": "Dragonslayer Trundle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Trundle_6.jpg" + }, + { + "id": 12, + "name": "Fright Night Trundle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Trundle_12.jpg" + }, + { + "id": 21, + "name": "Esports Fan Trundle", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Trundle_21.jpg" + } + ] + }, + { + "championName": "Tryndamere", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tryndamere_0.jpg" + }, + { + "id": 1, + "name": "Highland Tryndamere", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tryndamere_1.jpg" + }, + { + "id": 2, + "name": "King Tryndamere", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tryndamere_2.jpg" + }, + { + "id": 3, + "name": "Viking Tryndamere", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tryndamere_3.jpg" + }, + { + "id": 4, + "name": "Demonblade Tryndamere", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tryndamere_4.jpg" + }, + { + "id": 5, + "name": "Sultan Tryndamere", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tryndamere_5.jpg" + }, + { + "id": 6, + "name": "Warring Kingdoms Tryndamere", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tryndamere_6.jpg" + }, + { + "id": 7, + "name": "Nightmare Tryndamere", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tryndamere_7.jpg" + }, + { + "id": 8, + "name": "Beast Hunter Tryndamere", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tryndamere_8.jpg" + }, + { + "id": 9, + "name": "Chemtech Tryndamere", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tryndamere_9.jpg" + }, + { + "id": 10, + "name": "Blood Moon Tryndamere", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tryndamere_10.jpg" + }, + { + "id": 18, + "name": "Nightbringer Tryndamere", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tryndamere_18.jpg" + }, + { + "id": 27, + "name": "Victorious Tryndamere", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tryndamere_27.jpg" + }, + { + "id": 37, + "name": "Visions of the Fallen Tryndamere", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Tryndamere_37.jpg" + } + ] + }, + { + "championName": "Twisted Fate", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TwistedFate_0.jpg" + }, + { + "id": 1, + "name": "PAX Twisted Fate", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TwistedFate_1.jpg" + }, + { + "id": 2, + "name": "Jack of Hearts Twisted Fate", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TwistedFate_2.jpg" + }, + { + "id": 3, + "name": "The Magnificent Twisted Fate", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TwistedFate_3.jpg" + }, + { + "id": 4, + "name": "Tango Twisted Fate", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TwistedFate_4.jpg" + }, + { + "id": 5, + "name": "High Noon Twisted Fate", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TwistedFate_5.jpg" + }, + { + "id": 6, + "name": "Musketeer Twisted Fate", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TwistedFate_6.jpg" + }, + { + "id": 7, + "name": "Underworld Twisted Fate", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TwistedFate_7.jpg" + }, + { + "id": 8, + "name": "Red Card Twisted Fate", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TwistedFate_8.jpg" + }, + { + "id": 9, + "name": "Cutpurse Twisted Fate", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TwistedFate_9.jpg" + }, + { + "id": 10, + "name": "Blood Moon Twisted Fate", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TwistedFate_10.jpg" + }, + { + "id": 11, + "name": "Pulsefire Twisted Fate", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TwistedFate_11.jpg" + }, + { + "id": 13, + "name": "Odyssey Twisted Fate", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TwistedFate_13.jpg" + }, + { + "id": 23, + "name": "DWG Twisted Fate", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TwistedFate_23.jpg" + }, + { + "id": 25, + "name": "Crime City Nightmare Twisted Fate", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/TwistedFate_25.jpg" + } + ] + }, + { + "championName": "Twitch", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Twitch_0.jpg" + }, + { + "id": 1, + "name": "Kingpin Twitch", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Twitch_1.jpg" + }, + { + "id": 2, + "name": "Whistler Village Twitch", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Twitch_2.jpg" + }, + { + "id": 3, + "name": "Medieval Twitch", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Twitch_3.jpg" + }, + { + "id": 4, + "name": "Crime City Twitch", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Twitch_4.jpg" + }, + { + "id": 5, + "name": "Vandal Twitch", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Twitch_5.jpg" + }, + { + "id": 6, + "name": "Pickpocket Twitch", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Twitch_6.jpg" + }, + { + "id": 7, + "name": "SSW Twitch", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Twitch_7.jpg" + }, + { + "id": 8, + "name": "Omega Squad Twitch", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Twitch_8.jpg" + }, + { + "id": 12, + "name": "Ice King Twitch", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Twitch_12.jpg" + }, + { + "id": 27, + "name": "Twitch Shadowfoot", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Twitch_27.jpg" + }, + { + "id": 36, + "name": "Dragonslayer Twitch", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Twitch_36.jpg" + }, + { + "id": 45, + "name": "High Noon Twitch", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Twitch_45.jpg" + }, + { + "id": 55, + "name": "Cheddar Chief Twitch", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Twitch_55.jpg" + }, + { + "id": 64, + "name": "Pool Party Twitch", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Twitch_64.jpg" + } + ] + }, + { + "championName": "Udyr", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Udyr_0.jpg" + }, + { + "id": 1, + "name": "Black Belt Udyr", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Udyr_1.jpg" + }, + { + "id": 2, + "name": "Primal Udyr", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Udyr_2.jpg" + }, + { + "id": 3, + "name": "Spirit Guard Udyr", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Udyr_3.jpg" + }, + { + "id": 4, + "name": "Definitely Not Udyr", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Udyr_4.jpg" + }, + { + "id": 5, + "name": "Dragon Oracle Udyr", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Udyr_5.jpg" + }, + { + "id": 6, + "name": "Inkshadow Udyr", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Udyr_6.jpg" + } + ] + }, + { + "championName": "Urgot", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Urgot_0.jpg" + }, + { + "id": 1, + "name": "Giant Enemy Crabgot", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Urgot_1.jpg" + }, + { + "id": 2, + "name": "Butcher Urgot", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Urgot_2.jpg" + }, + { + "id": 3, + "name": "Battlecast Urgot", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Urgot_3.jpg" + }, + { + "id": 9, + "name": "High Noon Urgot", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Urgot_9.jpg" + }, + { + "id": 15, + "name": "Pajama Guardian Cosplay Urgot", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Urgot_15.jpg" + }, + { + "id": 23, + "name": "Fright Night Urgot", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Urgot_23.jpg" + }, + { + "id": 32, + "name": "Urgot the Clogfather", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Urgot_32.jpg" + } + ] + }, + { + "championName": "Varus", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Varus_0.jpg" + }, + { + "id": 1, + "name": "Blight Crystal Varus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Varus_1.jpg" + }, + { + "id": 2, + "name": "Arclight Varus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Varus_2.jpg" + }, + { + "id": 3, + "name": "Arctic Ops Varus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Varus_3.jpg" + }, + { + "id": 4, + "name": "Heartseeker Varus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Varus_4.jpg" + }, + { + "id": 5, + "name": "Varus Swiftbolt", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Varus_5.jpg" + }, + { + "id": 6, + "name": "Dark Star Varus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Varus_6.jpg" + }, + { + "id": 7, + "name": "Conqueror Varus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Varus_7.jpg" + }, + { + "id": 9, + "name": "Infernal Varus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Varus_9.jpg" + }, + { + "id": 16, + "name": "PROJECT: Varus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Varus_16.jpg" + }, + { + "id": 17, + "name": "Cosmic Hunter Varus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Varus_17.jpg" + }, + { + "id": 34, + "name": "High Noon Varus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Varus_34.jpg" + }, + { + "id": 44, + "name": "Snow Moon Varus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Varus_44.jpg" + }, + { + "id": 53, + "name": "Empyrean Varus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Varus_53.jpg" + }, + { + "id": 60, + "name": "Spirit Blossom Varus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Varus_60.jpg" + }, + { + "id": 69, + "name": "T1 Varus", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Varus_69.jpg" + } + ] + }, + { + "championName": "Vayne", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_0.jpg" + }, + { + "id": 1, + "name": "Vindicator Vayne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_1.jpg" + }, + { + "id": 2, + "name": "Aristocrat Vayne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_2.jpg" + }, + { + "id": 3, + "name": "Dragonslayer Vayne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_3.jpg" + }, + { + "id": 4, + "name": "Heartseeker Vayne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_4.jpg" + }, + { + "id": 5, + "name": "SKT T1 Vayne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_5.jpg" + }, + { + "id": 6, + "name": "Arclight Vayne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_6.jpg" + }, + { + "id": 10, + "name": "Soulstealer Vayne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_10.jpg" + }, + { + "id": 11, + "name": "PROJECT: Vayne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_11.jpg" + }, + { + "id": 12, + "name": "Firecracker Vayne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_12.jpg" + }, + { + "id": 13, + "name": "Prestige Firecracker Vayne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_13.jpg" + }, + { + "id": 14, + "name": "Spirit Blossom Vayne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_14.jpg" + }, + { + "id": 15, + "name": "FPX Vayne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_15.jpg" + }, + { + "id": 25, + "name": "Sentinel Vayne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_25.jpg" + }, + { + "id": 32, + "name": "Battle Bat Vayne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_32.jpg" + }, + { + "id": 44, + "name": "Dawnbringer Vayne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_44.jpg" + }, + { + "id": 55, + "name": "Dragonmancer Vayne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_55.jpg" + }, + { + "id": 64, + "name": "Risen Legend Vayne", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vayne_64.jpg" + } + ] + }, + { + "championName": "Veigar", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Veigar_0.jpg" + }, + { + "id": 1, + "name": "White Mage Veigar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Veigar_1.jpg" + }, + { + "id": 2, + "name": "Curling Veigar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Veigar_2.jpg" + }, + { + "id": 3, + "name": "Veigar Greybeard", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Veigar_3.jpg" + }, + { + "id": 4, + "name": "Leprechaun Veigar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Veigar_4.jpg" + }, + { + "id": 5, + "name": "Baron Von Veigar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Veigar_5.jpg" + }, + { + "id": 6, + "name": "Superb Villain Veigar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Veigar_6.jpg" + }, + { + "id": 7, + "name": "Bad Santa Veigar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Veigar_7.jpg" + }, + { + "id": 8, + "name": "Final Boss Veigar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Veigar_8.jpg" + }, + { + "id": 9, + "name": "Omega Squad Veigar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Veigar_9.jpg" + }, + { + "id": 13, + "name": "Elderwood Veigar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Veigar_13.jpg" + }, + { + "id": 23, + "name": "Furyhorn Cosplay Veigar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Veigar_23.jpg" + }, + { + "id": 32, + "name": "Astronaut Veigar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Veigar_32.jpg" + }, + { + "id": 41, + "name": "Monster Tamer Veigar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Veigar_41.jpg" + }, + { + "id": 51, + "name": "King Beegar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Veigar_51.jpg" + }, + { + "id": 60, + "name": "Fright Night Veigar", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Veigar_60.jpg" + } + ] + }, + { + "championName": "Vel'Koz", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Velkoz_0.jpg" + }, + { + "id": 1, + "name": "Battlecast Vel'Koz", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Velkoz_1.jpg" + }, + { + "id": 2, + "name": "Arclight Vel'Koz", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Velkoz_2.jpg" + }, + { + "id": 3, + "name": "Definitely Not Vel'Koz", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Velkoz_3.jpg" + }, + { + "id": 4, + "name": "Infernal Vel'Koz", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Velkoz_4.jpg" + }, + { + "id": 11, + "name": "Blackfrost Vel'Koz", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Velkoz_11.jpg" + } + ] + }, + { + "championName": "Vex", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vex_0.jpg" + }, + { + "id": 1, + "name": "Dawnbringer Vex", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vex_1.jpg" + }, + { + "id": 10, + "name": "Empyrean Vex", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vex_10.jpg" + }, + { + "id": 20, + "name": "Stargazer Vex", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vex_20.jpg" + } + ] + }, + { + "championName": "Vi", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vi_0.jpg" + }, + { + "id": 1, + "name": "Neon Strike Vi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vi_1.jpg" + }, + { + "id": 2, + "name": "Officer Vi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vi_2.jpg" + }, + { + "id": 3, + "name": "Debonair Vi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vi_3.jpg" + }, + { + "id": 4, + "name": "Demon Vi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vi_4.jpg" + }, + { + "id": 5, + "name": "Warring Kingdoms Vi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vi_5.jpg" + }, + { + "id": 11, + "name": "PROJECT: Vi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vi_11.jpg" + }, + { + "id": 12, + "name": "Heartbreaker Vi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vi_12.jpg" + }, + { + "id": 20, + "name": "PsyOps Vi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vi_20.jpg" + }, + { + "id": 30, + "name": "Heartache Vi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vi_30.jpg" + }, + { + "id": 39, + "name": "Primal Ambush Vi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vi_39.jpg" + }, + { + "id": 48, + "name": "Arcane Brawler Vi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vi_48.jpg" + }, + { + "id": 49, + "name": "T1 Vi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vi_49.jpg" + } + ] + }, + { + "championName": "Viego", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Viego_0.jpg" + }, + { + "id": 1, + "name": "Lunar Beast Viego", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Viego_1.jpg" + }, + { + "id": 10, + "name": "Dissonance of Pentakill Viego", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Viego_10.jpg" + }, + { + "id": 19, + "name": "EDG Viego", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Viego_19.jpg" + }, + { + "id": 21, + "name": "King Viego", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Viego_21.jpg" + }, + { + "id": 30, + "name": "Soul Fighter Viego", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Viego_30.jpg" + }, + { + "id": 37, + "name": "Worlds 2024 Viego", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Viego_37.jpg" + } + ] + }, + { + "championName": "Viktor", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Viktor_0.jpg" + }, + { + "id": 1, + "name": "Full Machine Viktor", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Viktor_1.jpg" + }, + { + "id": 2, + "name": "Prototype Viktor", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Viktor_2.jpg" + }, + { + "id": 3, + "name": "Creator Viktor", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Viktor_3.jpg" + }, + { + "id": 4, + "name": "Death Sworn Viktor", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Viktor_4.jpg" + }, + { + "id": 5, + "name": "PsyOps Viktor", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Viktor_5.jpg" + }, + { + "id": 14, + "name": "High Noon Viktor", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Viktor_14.jpg" + }, + { + "id": 24, + "name": "Arcane Savior Viktor", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Viktor_24.jpg" + } + ] + }, + { + "championName": "Vladimir", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vladimir_0.jpg" + }, + { + "id": 1, + "name": "Count Vladimir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vladimir_1.jpg" + }, + { + "id": 2, + "name": "Marquis Vladimir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vladimir_2.jpg" + }, + { + "id": 3, + "name": "Nosferatu Vladimir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vladimir_3.jpg" + }, + { + "id": 4, + "name": "Vandal Vladimir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vladimir_4.jpg" + }, + { + "id": 5, + "name": "Blood Lord Vladimir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vladimir_5.jpg" + }, + { + "id": 6, + "name": "Soulstealer Vladimir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vladimir_6.jpg" + }, + { + "id": 7, + "name": "Academy Vladimir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vladimir_7.jpg" + }, + { + "id": 8, + "name": "Dark Waters Vladimir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vladimir_8.jpg" + }, + { + "id": 14, + "name": "Nightbringer Vladimir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vladimir_14.jpg" + }, + { + "id": 21, + "name": "Cosmic Devourer Vladimir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vladimir_21.jpg" + }, + { + "id": 30, + "name": "Cafe Cuties Vladimir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vladimir_30.jpg" + }, + { + "id": 39, + "name": "Broken Covenant Vladimir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vladimir_39.jpg" + }, + { + "id": 48, + "name": "Masque of the Black Rose Vladimir", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Vladimir_48.jpg" + } + ] + }, + { + "championName": "Volibear", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Volibear_0.jpg" + }, + { + "id": 1, + "name": "Thunder Lord Volibear", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Volibear_1.jpg" + }, + { + "id": 2, + "name": "Northern Storm Volibear", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Volibear_2.jpg" + }, + { + "id": 3, + "name": "Runeguard Volibear", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Volibear_3.jpg" + }, + { + "id": 4, + "name": "Captain Volibear", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Volibear_4.jpg" + }, + { + "id": 5, + "name": "El Rayo Volibear", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Volibear_5.jpg" + }, + { + "id": 6, + "name": "The Thousand-Pierced Bear", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Volibear_6.jpg" + }, + { + "id": 7, + "name": "Duality Dragon Volibear", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Volibear_7.jpg" + }, + { + "id": 9, + "name": "Prestige Duality Dragon Volibear", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Volibear_9.jpg" + }, + { + "id": 19, + "name": "Inkshadow Volibear", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Volibear_19.jpg" + }, + { + "id": 29, + "name": "Spirit Blossom Springs Volibear", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Volibear_29.jpg" + } + ] + }, + { + "championName": "Warwick", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Warwick_0.jpg" + }, + { + "id": 1, + "name": "Grey Warwick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Warwick_1.jpg" + }, + { + "id": 2, + "name": "Urf the Manatee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Warwick_2.jpg" + }, + { + "id": 3, + "name": "Big Bad Warwick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Warwick_3.jpg" + }, + { + "id": 4, + "name": "Tundra Hunter Warwick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Warwick_4.jpg" + }, + { + "id": 5, + "name": "Feral Warwick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Warwick_5.jpg" + }, + { + "id": 6, + "name": "Firefang Warwick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Warwick_6.jpg" + }, + { + "id": 7, + "name": "Hyena Warwick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Warwick_7.jpg" + }, + { + "id": 8, + "name": "Marauder Warwick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Warwick_8.jpg" + }, + { + "id": 9, + "name": "Urfwick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Warwick_9.jpg" + }, + { + "id": 10, + "name": "Lunar Guardian Warwick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Warwick_10.jpg" + }, + { + "id": 16, + "name": "PROJECT: Warwick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Warwick_16.jpg" + }, + { + "id": 35, + "name": "Old God Warwick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Warwick_35.jpg" + }, + { + "id": 45, + "name": "Winterblessed Warwick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Warwick_45.jpg" + }, + { + "id": 46, + "name": "Prestige Winterblessed Warwick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Warwick_46.jpg" + }, + { + "id": 56, + "name": "Arcane Vander Warwick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Warwick_56.jpg" + } + ] + }, + { + "championName": "Wukong", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MonkeyKing_0.jpg" + }, + { + "id": 1, + "name": "Volcanic Wukong", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MonkeyKing_1.jpg" + }, + { + "id": 2, + "name": "General Wukong", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MonkeyKing_2.jpg" + }, + { + "id": 3, + "name": "Jade Dragon Wukong", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MonkeyKing_3.jpg" + }, + { + "id": 4, + "name": "Underworld Wukong", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MonkeyKing_4.jpg" + }, + { + "id": 5, + "name": "Radiant Wukong", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MonkeyKing_5.jpg" + }, + { + "id": 6, + "name": "Lancer Stratus Wukong", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MonkeyKing_6.jpg" + }, + { + "id": 7, + "name": "Battle Academia Wukong", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/MonkeyKing_7.jpg" + } + ] + }, + { + "championName": "Xayah", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xayah_0.jpg" + }, + { + "id": 1, + "name": "Cosmic Dusk Xayah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xayah_1.jpg" + }, + { + "id": 2, + "name": "Sweetheart Xayah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xayah_2.jpg" + }, + { + "id": 3, + "name": "SSG Xayah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xayah_3.jpg" + }, + { + "id": 4, + "name": "Star Guardian Xayah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xayah_4.jpg" + }, + { + "id": 8, + "name": "Elderwood Xayah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xayah_8.jpg" + }, + { + "id": 17, + "name": "Brave Phoenix Xayah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xayah_17.jpg" + }, + { + "id": 26, + "name": "Prestige Brave Phoenix Xayah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xayah_26.jpg" + }, + { + "id": 28, + "name": "Arcana Xayah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xayah_28.jpg" + }, + { + "id": 37, + "name": "Broken Covenant Xayah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xayah_37.jpg" + }, + { + "id": 38, + "name": "Redeemed Star Guardian Xayah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xayah_38.jpg" + }, + { + "id": 47, + "name": "Battle Bat Xayah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xayah_47.jpg" + }, + { + "id": 57, + "name": "Battle Academia Xayah", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xayah_57.jpg" + } + ] + }, + { + "championName": "Xerath", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xerath_0.jpg" + }, + { + "id": 1, + "name": "Runeborn Xerath", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xerath_1.jpg" + }, + { + "id": 2, + "name": "Battlecast Xerath", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xerath_2.jpg" + }, + { + "id": 3, + "name": "Scorched Earth Xerath", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xerath_3.jpg" + }, + { + "id": 4, + "name": "Guardian of the Sands Xerath", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xerath_4.jpg" + }, + { + "id": 5, + "name": "Dark Star Xerath", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xerath_5.jpg" + }, + { + "id": 12, + "name": "Arcana Xerath", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xerath_12.jpg" + }, + { + "id": 21, + "name": "Astronaut Xerath", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xerath_21.jpg" + }, + { + "id": 30, + "name": "Crystalis Indomitus Xerath", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Xerath_30.jpg" + } + ] + }, + { + "championName": "Xin Zhao", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/XinZhao_0.jpg" + }, + { + "id": 1, + "name": "Commando Xin Zhao", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/XinZhao_1.jpg" + }, + { + "id": 2, + "name": "Imperial Xin Zhao", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/XinZhao_2.jpg" + }, + { + "id": 3, + "name": "Viscero Xin Zhao", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/XinZhao_3.jpg" + }, + { + "id": 4, + "name": "Winged Hussar Xin Zhao", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/XinZhao_4.jpg" + }, + { + "id": 5, + "name": "Warring Kingdoms Xin Zhao", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/XinZhao_5.jpg" + }, + { + "id": 6, + "name": "Secret Agent Xin Zhao", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/XinZhao_6.jpg" + }, + { + "id": 13, + "name": "Dragonslayer Xin Zhao", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/XinZhao_13.jpg" + }, + { + "id": 20, + "name": "Cosmic Defender Xin Zhao", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/XinZhao_20.jpg" + }, + { + "id": 27, + "name": "Marauder Xin Zhao", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/XinZhao_27.jpg" + }, + { + "id": 36, + "name": "Firecracker Xin Zhao", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/XinZhao_36.jpg" + } + ] + }, + { + "championName": "Yasuo", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_0.jpg" + }, + { + "id": 1, + "name": "High Noon Yasuo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_1.jpg" + }, + { + "id": 2, + "name": "PROJECT: Yasuo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_2.jpg" + }, + { + "id": 3, + "name": "Blood Moon Yasuo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_3.jpg" + }, + { + "id": 9, + "name": "Nightbringer Yasuo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_9.jpg" + }, + { + "id": 10, + "name": "Odyssey Yasuo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_10.jpg" + }, + { + "id": 17, + "name": "Battle Boss Yasuo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_17.jpg" + }, + { + "id": 18, + "name": "True Damage Yasuo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_18.jpg" + }, + { + "id": 35, + "name": "Prestige True Damage Yasuo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_35.jpg" + }, + { + "id": 36, + "name": "Spirit Blossom Yasuo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_36.jpg" + }, + { + "id": 45, + "name": "Sea Dog Yasuo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_45.jpg" + }, + { + "id": 54, + "name": "Truth Dragon Yasuo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_54.jpg" + }, + { + "id": 55, + "name": "Dream Dragon Yasuo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_55.jpg" + }, + { + "id": 56, + "name": "Inkshadow Yasuo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_56.jpg" + }, + { + "id": 57, + "name": "Prestige Inkshadow Yasuo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_57.jpg" + }, + { + "id": 68, + "name": "Foreseen Yasuo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_68.jpg" + }, + { + "id": 77, + "name": "Battle Wolf Yasuo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_77.jpg" + }, + { + "id": 87, + "name": "Genesis Nightbringer Yasuo", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yasuo_87.jpg" + } + ] + }, + { + "championName": "Yone", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yone_0.jpg" + }, + { + "id": 1, + "name": "Spirit Blossom Yone", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yone_1.jpg" + }, + { + "id": 10, + "name": "Battle Academia Yone", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yone_10.jpg" + }, + { + "id": 19, + "name": "Dawnbringer Yone", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yone_19.jpg" + }, + { + "id": 26, + "name": "Ocean Song Yone", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yone_26.jpg" + }, + { + "id": 35, + "name": "Inkshadow Yone", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yone_35.jpg" + }, + { + "id": 45, + "name": "HEARTSTEEL Yone", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yone_45.jpg" + }, + { + "id": 46, + "name": "Prestige HEARTSTEEL Yone", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yone_46.jpg" + }, + { + "id": 55, + "name": "High Noon Yone", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yone_55.jpg" + }, + { + "id": 58, + "name": "Peacemaker High Noon Yone", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yone_58.jpg" + }, + { + "id": 65, + "name": "Masked Justice Yone", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yone_65.jpg" + }, + { + "id": 74, + "name": "T1 Yone", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yone_74.jpg" + } + ] + }, + { + "championName": "Yorick", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yorick_0.jpg" + }, + { + "id": 1, + "name": "Undertaker Yorick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yorick_1.jpg" + }, + { + "id": 2, + "name": "Pentakill Yorick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yorick_2.jpg" + }, + { + "id": 3, + "name": "Arclight Yorick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yorick_3.jpg" + }, + { + "id": 4, + "name": "Meowrick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yorick_4.jpg" + }, + { + "id": 12, + "name": "Resistance Yorick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yorick_12.jpg" + }, + { + "id": 21, + "name": "Pentakill III: Lost Chapter Yorick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yorick_21.jpg" + }, + { + "id": 30, + "name": "Spirit Blossom Yorick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yorick_30.jpg" + }, + { + "id": 40, + "name": "Dark Star Yorick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yorick_40.jpg" + }, + { + "id": 50, + "name": "High Noon Yorick", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yorick_50.jpg" + } + ] + }, + { + "championName": "Yunara", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yunara_0.jpg" + }, + { + "id": 1, + "name": "Spirit Blossom Springs Yunara", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yunara_1.jpg" + } + ] + }, + { + "championName": "Yuumi", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yuumi_0.jpg" + }, + { + "id": 1, + "name": "Battle Principal Yuumi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yuumi_1.jpg" + }, + { + "id": 11, + "name": "Heartseeker Yuumi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yuumi_11.jpg" + }, + { + "id": 19, + "name": "Yuubee", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yuumi_19.jpg" + }, + { + "id": 28, + "name": "Bewitching Yuumi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yuumi_28.jpg" + }, + { + "id": 37, + "name": "EDG Yuumi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yuumi_37.jpg" + }, + { + "id": 39, + "name": "Shiba Yuumi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yuumi_39.jpg" + }, + { + "id": 49, + "name": "Cyber Cat Yuumi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yuumi_49.jpg" + }, + { + "id": 50, + "name": "Prestige Cyber Cat Yuumi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yuumi_50.jpg" + }, + { + "id": 61, + "name": "Nightbringer Yuumi", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Yuumi_61.jpg" + } + ] + }, + { + "championName": "Zaahen", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zaahen_0.jpg" + }, + { + "id": 1, + "name": "Immortal Journey Zaahen", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zaahen_1.jpg" + } + ] + }, + { + "championName": "Zac", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zac_0.jpg" + }, + { + "id": 1, + "name": "Special Weapon Zac", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zac_1.jpg" + }, + { + "id": 2, + "name": "Pool Party Zac", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zac_2.jpg" + }, + { + "id": 6, + "name": "SKT T1 Zac", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zac_6.jpg" + }, + { + "id": 7, + "name": "Battlecast Zac", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zac_7.jpg" + }, + { + "id": 14, + "name": "Empyrean Zac", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zac_14.jpg" + }, + { + "id": 24, + "name": "Zesty Dip Zac", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zac_24.jpg" + } + ] + }, + { + "championName": "Zed", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zed_0.jpg" + }, + { + "id": 1, + "name": "Shockblade Zed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zed_1.jpg" + }, + { + "id": 2, + "name": "SKT T1 Zed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zed_2.jpg" + }, + { + "id": 3, + "name": "PROJECT: Zed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zed_3.jpg" + }, + { + "id": 11, + "name": "Death Sworn Zed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zed_11.jpg" + }, + { + "id": 13, + "name": "Galaxy Slayer Zed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zed_13.jpg" + }, + { + "id": 15, + "name": "PsyOps Zed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zed_15.jpg" + }, + { + "id": 30, + "name": "Prestige PROJECT: Zed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zed_30.jpg" + }, + { + "id": 31, + "name": "Debonair Zed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zed_31.jpg" + }, + { + "id": 38, + "name": "Empyrean Zed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zed_38.jpg" + }, + { + "id": 49, + "name": "Immortal Journey Zed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zed_49.jpg" + }, + { + "id": 58, + "name": "Blood Moon Zed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zed_58.jpg" + }, + { + "id": 68, + "name": "Quantum Galaxy Slayer Zed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zed_68.jpg" + }, + { + "id": 69, + "name": "Prestige Spirit Blossom Zed", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zed_69.jpg" + } + ] + }, + { + "championName": "Zeri", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zeri_0.jpg" + }, + { + "id": 1, + "name": "Withered Rose Zeri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zeri_1.jpg" + }, + { + "id": 10, + "name": "Ocean Song Zeri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zeri_10.jpg" + }, + { + "id": 19, + "name": "Immortal Journey Zeri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zeri_19.jpg" + }, + { + "id": 28, + "name": "Fright Night Zeri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zeri_28.jpg" + }, + { + "id": 29, + "name": "Prestige Fright Night Zeri", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zeri_29.jpg" + } + ] + }, + { + "championName": "Ziggs", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ziggs_0.jpg" + }, + { + "id": 1, + "name": "Mad Scientist Ziggs", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ziggs_1.jpg" + }, + { + "id": 2, + "name": "Major Ziggs", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ziggs_2.jpg" + }, + { + "id": 3, + "name": "Pool Party Ziggs", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ziggs_3.jpg" + }, + { + "id": 4, + "name": "Snow Day Ziggs", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ziggs_4.jpg" + }, + { + "id": 5, + "name": "Master Arcanist Ziggs", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ziggs_5.jpg" + }, + { + "id": 6, + "name": "Battle Boss Ziggs", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ziggs_6.jpg" + }, + { + "id": 7, + "name": "Odyssey Ziggs", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ziggs_7.jpg" + }, + { + "id": 14, + "name": "Sugar Rush Ziggs", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ziggs_14.jpg" + }, + { + "id": 23, + "name": "Hextech Ziggs", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ziggs_23.jpg" + }, + { + "id": 24, + "name": "BZZZiggs", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ziggs_24.jpg" + }, + { + "id": 33, + "name": "La Ilusión Ziggs", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Ziggs_33.jpg" + } + ] + }, + { + "championName": "Zilean", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zilean_0.jpg" + }, + { + "id": 1, + "name": "Old Saint Zilean", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zilean_1.jpg" + }, + { + "id": 2, + "name": "Groovy Zilean", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zilean_2.jpg" + }, + { + "id": 3, + "name": "Shurima Desert Zilean", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zilean_3.jpg" + }, + { + "id": 4, + "name": "Time Machine Zilean", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zilean_4.jpg" + }, + { + "id": 5, + "name": "Blood Moon Zilean", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zilean_5.jpg" + }, + { + "id": 6, + "name": "Sugar Rush Zilean", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zilean_6.jpg" + }, + { + "id": 14, + "name": "Winterblessed Zilean", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zilean_14.jpg" + }, + { + "id": 24, + "name": "Arcana Zilean", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zilean_24.jpg" + } + ] + }, + { + "championName": "Zoe", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zoe_0.jpg" + }, + { + "id": 1, + "name": "Cyber Pop Zoe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zoe_1.jpg" + }, + { + "id": 2, + "name": "Pool Party Zoe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zoe_2.jpg" + }, + { + "id": 9, + "name": "Star Guardian Zoe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zoe_9.jpg" + }, + { + "id": 18, + "name": "Arcanist Zoe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zoe_18.jpg" + }, + { + "id": 19, + "name": "Prestige Arcanist Zoe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zoe_19.jpg" + }, + { + "id": 20, + "name": "EDG Zoe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zoe_20.jpg" + }, + { + "id": 22, + "name": "Winterblessed Zoe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zoe_22.jpg" + }, + { + "id": 33, + "name": "Dark Star Zoe", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zoe_33.jpg" + } + ] + }, + { + "championName": "Zyra", + "skins": [ + { + "id": 0, + "name": "Default", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zyra_0.jpg" + }, + { + "id": 1, + "name": "Wildfire Zyra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zyra_1.jpg" + }, + { + "id": 2, + "name": "Haunted Zyra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zyra_2.jpg" + }, + { + "id": 3, + "name": "SKT T1 Zyra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zyra_3.jpg" + }, + { + "id": 4, + "name": "Dragon Sorceress Zyra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zyra_4.jpg" + }, + { + "id": 5, + "name": "Coven Zyra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zyra_5.jpg" + }, + { + "id": 6, + "name": "Prestige Coven Zyra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zyra_6.jpg" + }, + { + "id": 7, + "name": "Crystal Rose Zyra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zyra_7.jpg" + }, + { + "id": 16, + "name": "Crime City Nightmare Zyra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zyra_16.jpg" + }, + { + "id": 36, + "name": "Mythmaker Zyra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zyra_36.jpg" + }, + { + "id": 46, + "name": "Street Demons Zyra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zyra_46.jpg" + }, + { + "id": 55, + "name": "Blood Moon Zyra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zyra_55.jpg" + }, + { + "id": 64, + "name": "Spirit Blossom Zyra", + "url": "https://ddragon.leagueoflegends.com/cdn/img/champion/splash/Zyra_64.jpg" + } + ] + } +] diff --git a/src/modules/loldle-splash/state.js b/src/modules/loldle-splash/state.js new file mode 100644 index 0000000..682fca6 --- /dev/null +++ b/src/modules/loldle-splash/state.js @@ -0,0 +1,49 @@ +/** + * @file Game + stats persistence for loldle-splash. Adds `skinId` field so + * the SAME splash art persists across all guesses in a round. + */ + +const MAX_GUESSES = 4; +const GAME_TTL_SECONDS = 60 * 60 * 24 * 7; + +const gameKey = (subject) => `game:${subject}`; +const statsKey = (subject) => `stats:${subject}`; + +export { MAX_GUESSES }; + +export async function loadGame(db, subject) { + return db.getJSON(gameKey(subject)); +} + +export async function saveGame(db, subject, state) { + await db.putJSON(gameKey(subject), state, { expirationTtl: GAME_TTL_SECONDS }); +} + +export async function clearGame(db, subject) { + await db.delete(gameKey(subject)); +} + +export async function loadStats(db, subject) { + return ( + (await db.getJSON(statsKey(subject))) ?? { + played: 0, + wins: 0, + streak: 0, + bestStreak: 0, + } + ); +} + +export async function recordResult(db, subject, won) { + const s = await loadStats(db, subject); + s.played += 1; + if (won) { + s.wins += 1; + s.streak += 1; + if (s.streak > s.bestStreak) s.bestStreak = s.streak; + } else { + s.streak = 0; + } + await db.putJSON(statsKey(subject), s); + return s; +} diff --git a/tests/modules/loldle-ability/handlers.test.js b/tests/modules/loldle-ability/handlers.test.js new file mode 100644 index 0000000..ea57649 --- /dev/null +++ b/tests/modules/loldle-ability/handlers.test.js @@ -0,0 +1,89 @@ +import { beforeEach, describe, expect, it, vi } from "vitest"; +import { createStore } from "../../../src/db/create-store.js"; +import abilitiesData from "../../../src/modules/loldle-ability/abilities.json" with { + type: "json", +}; +import { + handleAbility, + handleGiveup, + handleStats, +} from "../../../src/modules/loldle-ability/handlers.js"; +import { loadStats } from "../../../src/modules/loldle-ability/state.js"; +import { makeFakeKv } from "../../fakes/fake-kv-namespace.js"; + +function pinRandom(value) { + // deterministic: force Math.random() to the floor of the first entry + vi.spyOn(Math, "random").mockReturnValue(value); +} + +function makeCtx({ text = "", fromId = 1, chatType = "private", chatId = 1 } = {}) { + const replies = []; + const photos = []; + return { + replies, + photos, + ctx: { + from: { id: fromId }, + chat: { id: chatId, type: chatType }, + message: { text }, + reply: async (body, opts) => { + replies.push({ body, opts }); + }, + replyWithPhoto: async (url, opts) => { + photos.push({ url, opts }); + }, + }, + }; +} + +describe("loldle-ability handlers — happy path", () => { + let db; + beforeEach(() => { + db = createStore("loldle-ability", { KV: makeFakeKv() }); + pinRandom(0); // picks abilitiesData[0] + abilities[0] + }); + + it("no-arg sends a photo with DDragon icon URL and caption", async () => { + const { ctx, photos } = makeCtx(); + await handleAbility(ctx, db); + expect(photos).toHaveLength(1); + expect(photos[0].url).toMatch(/^https:\/\/ddragon\.leagueoflegends\.com\//); + expect(photos[0].opts.caption).toMatch(/0\/5 guesses so far/); + }); + + it("correct guess wins and cites slot + ability name", async () => { + const target = abilitiesData[0]; + const { ctx, replies } = makeCtx({ text: `/loldle_ability ${target.championName}` }); + await handleAbility(ctx, db); + expect(replies[0].body).toContain("🎉 Got it!"); + expect(replies[0].body).toContain(target.championName); + expect(replies[0].body).toMatch(/\([PQWER]\)/); + const s = await loadStats(db, 1); + expect(s).toMatchObject({ played: 1, wins: 1, streak: 1 }); + }); + + it("wrong guess does not end the round", async () => { + const wrong = abilitiesData[1]; + const { ctx, replies } = makeCtx({ text: `/loldle_ability ${wrong.championName}` }); + await handleAbility(ctx, db); + expect(replies[0].body).toContain("❌"); + const s = await loadStats(db, 1); + expect(s.played).toBe(0); + }); + + it("giveup records loss and names the ability", async () => { + await handleAbility(makeCtx().ctx, db); + const { ctx, replies } = makeCtx(); + await handleGiveup(ctx, db); + expect(replies[0].body).toContain("🏳️"); + expect(replies[0].body).toMatch(/\([PQWER]\)/); + const s = await loadStats(db, 1); + expect(s).toMatchObject({ played: 1, wins: 0 }); + }); + + it("stats renders zero-state", async () => { + const { ctx, replies } = makeCtx(); + await handleStats(ctx, db); + expect(replies[0].body).toContain("Played: 0"); + }); +}); diff --git a/tests/modules/loldle-ability/lookup.test.js b/tests/modules/loldle-ability/lookup.test.js new file mode 100644 index 0000000..dcb688e --- /dev/null +++ b/tests/modules/loldle-ability/lookup.test.js @@ -0,0 +1,30 @@ +import { describe, expect, it } from "vitest"; +import { findChampion } from "../../../src/modules/loldle-ability/lookup.js"; + +const pool = [ + { championName: "Ahri", abilities: [{ slot: "Q", name: "Orb of Deception", icon: "x" }] }, + { championName: "Akali", abilities: [{ slot: "R", name: "Perfect Execution", icon: "x" }] }, + { championName: "Miss Fortune", abilities: [{ slot: "P", name: "Love Tap", icon: "x" }] }, +]; + +describe("findChampion (ability pool)", () => { + it("matches case-insensitively", () => { + expect(findChampion(pool, "ahri").championName).toBe("Ahri"); + }); + + it("normalizes punctuation and spaces", () => { + expect(findChampion(pool, "MissFortune").championName).toBe("Miss Fortune"); + expect(findChampion(pool, "miss fortune").championName).toBe("Miss Fortune"); + }); + + it("unique prefix resolves", () => { + expect(findChampion(pool, "mi").championName).toBe("Miss Fortune"); + expect(findChampion(pool, "ak").championName).toBe("Akali"); + }); + + it("returns null on empty / no-match / ambiguous", () => { + expect(findChampion(pool, "")).toBeNull(); + expect(findChampion(pool, "zzz")).toBeNull(); + expect(findChampion(pool, "a")).toBeNull(); + }); +}); diff --git a/tests/modules/loldle-ability/state.test.js b/tests/modules/loldle-ability/state.test.js new file mode 100644 index 0000000..cfa8201 --- /dev/null +++ b/tests/modules/loldle-ability/state.test.js @@ -0,0 +1,38 @@ +import { beforeEach, describe, expect, it } from "vitest"; +import { createStore } from "../../../src/db/create-store.js"; +import { + clearGame, + loadGame, + loadStats, + recordResult, + saveGame, +} from "../../../src/modules/loldle-ability/state.js"; +import { makeFakeKv } from "../../fakes/fake-kv-namespace.js"; + +describe("loldle-ability state", () => { + let db; + + beforeEach(() => { + db = createStore("loldle-ability", { KV: makeFakeKv() }); + }); + + it("round-trips a game with slot field", async () => { + const state = { target: "Ahri", slot: "Q", guesses: ["Akali"], startedAt: 1234 }; + await saveGame(db, 42, state); + expect(await loadGame(db, 42)).toEqual(state); + }); + + it("clearGame removes the record", async () => { + await saveGame(db, 42, { target: "Ahri", slot: "P", guesses: [], startedAt: null }); + await clearGame(db, 42); + expect(await loadGame(db, 42)).toBeNull(); + }); + + it("recordResult tracks streaks + bestStreak", async () => { + await recordResult(db, 42, true); + await recordResult(db, 42, true); + await recordResult(db, 42, false); + const s = await loadStats(db, 42); + expect(s).toMatchObject({ played: 3, wins: 2, streak: 0, bestStreak: 2 }); + }); +}); diff --git a/tests/modules/loldle-splash/handlers.test.js b/tests/modules/loldle-splash/handlers.test.js new file mode 100644 index 0000000..a7fd9ff --- /dev/null +++ b/tests/modules/loldle-splash/handlers.test.js @@ -0,0 +1,76 @@ +import { beforeEach, describe, expect, it, vi } from "vitest"; +import { createStore } from "../../../src/db/create-store.js"; +import { + handleGiveup, + handleSplash, + handleStats, +} from "../../../src/modules/loldle-splash/handlers.js"; +import splashesData from "../../../src/modules/loldle-splash/splashes.json" with { type: "json" }; +import { loadStats } from "../../../src/modules/loldle-splash/state.js"; +import { makeFakeKv } from "../../fakes/fake-kv-namespace.js"; + +function pinRandom(value) { + vi.spyOn(Math, "random").mockReturnValue(value); +} + +function makeCtx({ text = "", fromId = 1, chatType = "private", chatId = 1 } = {}) { + const replies = []; + const photos = []; + return { + replies, + photos, + ctx: { + from: { id: fromId }, + chat: { id: chatId, type: chatType }, + message: { text }, + reply: async (body, opts) => { + replies.push({ body, opts }); + }, + replyWithPhoto: async (url, opts) => { + photos.push({ url, opts }); + }, + }, + }; +} + +describe("loldle-splash handlers — happy path", () => { + let db; + beforeEach(() => { + db = createStore("loldle-splash", { KV: makeFakeKv() }); + pinRandom(0); // picks first champion + first skin + }); + + it("no-arg sends a splash photo with 0/4 caption", async () => { + const { ctx, photos } = makeCtx(); + await handleSplash(ctx, db); + expect(photos).toHaveLength(1); + expect(photos[0].url).toMatch( + /^https:\/\/ddragon\.leagueoflegends\.com\/cdn\/img\/champion\/splash\//, + ); + expect(photos[0].opts.caption).toMatch(/0\/4 guesses so far/); + }); + + it("correct guess wins and names the skin", async () => { + const target = splashesData[0]; + const { ctx, replies } = makeCtx({ text: `/loldle_splash ${target.championName}` }); + await handleSplash(ctx, db); + expect(replies[0].body).toContain("🎉 Got it!"); + expect(replies[0].body).toContain("skin"); + const s = await loadStats(db, 1); + expect(s).toMatchObject({ played: 1, wins: 1 }); + }); + + it("giveup records loss and names skin", async () => { + await handleSplash(makeCtx().ctx, db); + const { ctx, replies } = makeCtx(); + await handleGiveup(ctx, db); + expect(replies[0].body).toContain("🏳️"); + expect(replies[0].body).toContain("skin"); + }); + + it("stats renders zero-state", async () => { + const { ctx, replies } = makeCtx(); + await handleStats(ctx, db); + expect(replies[0].body).toContain("Played: 0"); + }); +}); diff --git a/tests/modules/loldle-splash/state.test.js b/tests/modules/loldle-splash/state.test.js new file mode 100644 index 0000000..ec638ef --- /dev/null +++ b/tests/modules/loldle-splash/state.test.js @@ -0,0 +1,37 @@ +import { beforeEach, describe, expect, it } from "vitest"; +import { createStore } from "../../../src/db/create-store.js"; +import { + clearGame, + loadGame, + loadStats, + recordResult, + saveGame, +} from "../../../src/modules/loldle-splash/state.js"; +import { makeFakeKv } from "../../fakes/fake-kv-namespace.js"; + +describe("loldle-splash state", () => { + let db; + + beforeEach(() => { + db = createStore("loldle-splash", { KV: makeFakeKv() }); + }); + + it("round-trips a game with skinId field", async () => { + const state = { target: "Ahri", skinId: 9, guesses: [], startedAt: null }; + await saveGame(db, 99, state); + expect(await loadGame(db, 99)).toEqual(state); + }); + + it("clearGame removes the record", async () => { + await saveGame(db, 99, { target: "Ahri", skinId: 0, guesses: [], startedAt: null }); + await clearGame(db, 99); + expect(await loadGame(db, 99)).toBeNull(); + }); + + it("recordResult tracks streaks + bestStreak", async () => { + await recordResult(db, 99, true); + await recordResult(db, 99, true); + const s = await loadStats(db, 99); + expect(s).toMatchObject({ played: 2, wins: 2, streak: 2, bestStreak: 2 }); + }); +}); diff --git a/wrangler.toml b/wrangler.toml index 41a2864..2628889 100644 --- a/wrangler.toml +++ b/wrangler.toml @@ -5,7 +5,7 @@ compatibility_date = "2025-10-01" # Enabled modules at runtime. Comma-separated. Must match static-map keys in src/modules/index.js. # Also duplicate this value into .env.deploy so scripts/register.js derives the same public command list. [vars] -MODULES = "util,wordle,loldle,loldle-emoji,loldle-quote,misc,trading,lolschedule,semantle,doantu,twentyq" +MODULES = "util,wordle,loldle,loldle-emoji,loldle-quote,loldle-ability,loldle-splash,misc,trading,lolschedule,semantle,doantu,twentyq" # KV namespace holding all module state. Each module auto-prefixes its keys via createStore(). # Production-only — no preview namespace. Create with: