rsrc/extra/etc/shini.html
2026-10-26 21:20:12 +00:00

2 lines
38 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>index</title><style>:root{--bg:#000;--fg:#f4f4f4;--dim:#b7b7b7;--muted:#8e8e8e;--link:#dcdcdc;--hover:#fff;--visited:#cfcfcf;--ui:rgba(8,8,8,.98);--ui2:#0d0d0d;--line:#1b1b1b;--shadow:0 18px 60px rgba(0,0,0,.6)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font:12.5px/1.45 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace,system-ui,sans-serif}main{max-width:980px;margin:0 auto;padding:18px 14px 36px}a{color:var(--link);text-decoration:none}a:visited{color:var(--visited)}a:hover,a:focus{color:var(--hover);text-decoration:underline;outline:none}p{margin:0 0 12px;color:var(--dim)}h1,h2{margin:16px 0 8px;font-size:1em;font-weight:700;color:var(--fg)}ul{margin:0 0 14px 18px;padding:0}li{margin:0 0 7px;color:var(--dim)}dl{margin:0 0 10px}dt{margin:14px 0 5px;color:var(--fg);font-weight:700}dd{margin:0 0 10px 18px;color:var(--dim)}dd ul{margin:4px 0 0 18px}dd li{margin:0 0 4px}hr{border:0;height:1px;background:#111;margin:14px 0}img{vertical-align:middle}dt img{width:24px;height:24px}dd a img,li img{width:18px;height:18px}.footer{margin-top:20px;color:var(--muted)}.type{color:var(--dim)}.viewer{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(82vw,980px);height:min(78vh,760px);min-width:280px;min-height:220px;background:var(--ui);border:1px solid var(--line);box-shadow:var(--shadow);display:none;z-index:9999;overflow:hidden;backdrop-filter:blur(2px)}.viewer.active{display:flex;flex-direction:column}.viewer-header{display:flex;align-items:center;gap:8px;justify-content:space-between;padding:6px 8px;background:var(--ui2);border-bottom:1px solid var(--line);user-select:none;min-height:34px}.viewer-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--fg)}.viewer-controls{display:flex;gap:4px;align-items:center}.viewer button{appearance:none;border:1px solid #242424;background:#0a0a0a;color:var(--fg);padding:0;width:24px;height:24px;font:inherit;line-height:1;cursor:pointer;display:grid;place-items:center}.viewer button:hover,.viewer button:focus{border-color:#666;color:#fff;outline:none}.viewer-stage{position:relative;flex:1;overflow:hidden;background:#000;touch-action:none;cursor:grab}.viewer-stage.dragging{cursor:grabbing}.viewer-img{position:absolute;top:50%;left:50%;transform-origin:50% 50%;will-change:transform;image-rendering:auto;user-select:none;-webkit-user-drag:none;max-width:none;max-height:none}.viewer-footer{display:flex;justify-content:space-between;gap:8px;padding:6px 8px;background:var(--ui2);border-top:1px solid var(--line);color:var(--muted)}.viewer-status{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.viewer-help{display:none}.viewer-close{display:none}.viewer.active .viewer-close{display:grid}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media (max-width:760px){.viewer{width:calc(100vw - 16px);height:52vh;min-width:0}}</style></head><body><main><h2 id="main-pokemon-sprites"><a href="#main-pokemon-sprites">main pokémon sprites</a></h2><ul><li><a href="https://veekun.com/static/pokedex/downloads/generation-1.tar.gz">generation i (683KB)</a> — all sprites from Green, Red, Blue, and Yellow</li><li><a href="https://veekun.com/static/pokedex/downloads/generation-2.tar.gz">generation ii (2.15MB)</a> — all sprites from Gold, Silver, and Crystal (including animations)</li><li><a href="https://veekun.com/static/pokedex/downloads/generation-3.tar.gz">generation iii (9.02MB)</a> — all sprites from Ruby, Sapphire, Emerald (including animations), FireRed, and LeafGreen</li><li><a href="https://veekun.com/static/pokedex/downloads/generation-4.tar.gz">generation iv (12.6MB)</a> — all sprites from Diamond, Pearl, Platinum, HeartGold, and SoulSilver</li><li><a href="https://veekun.com/static/pokedex/downloads/generation-5.tar.gz">generation v (2.38MB)</a> — all sprites from Black and White</li></ul><h2 id="others"><a href="#others">others</a></h2><ul><li><a href="https://veekun.com/static/pokedex/downloads/pokemon-icons.tar.gz">pokémon icons (448KB)</a> — sprites used in the Pokémon screen (no animations)</li><li><a href="https://veekun.com/static/pokedex/downloads/overworld.tar.gz">overworld (2.68MB)</a> — overworld Pokémon sprites from HeartGold/SoulSilver, plus a few overworld trainers</li></ul><h1 id="main-sprite-montages"><a href="#main-sprite-montages">main sprite montages</a></h1><p>every Pokémon combined into a single large image by the <a href="http://www.imagemagick.org/script/montage.php"><code>montage</code></a> program.</p><dl><dt><img alt="Red (jp.)" src="https://veekun.com/static/pokedex/images/versions/red-jp.png" title="Red (jp.)"><img alt=", Green" src="https://veekun.com/static/pokedex/images/versions/green.png" title="Green"> red (jp.) / green</dt><dd><ul><li><span class="type">game boy:</span> <a class="viewable" data-viewer-title="red (jp.) / green — game boy" data-viewer-src="https://veekun.com/static/pokedex/downloads/red-green.png" href="https://veekun.com/static/pokedex/downloads/red-green.png">red-green.png (32.2KB)</a></li><li><span class="type">super game boy:</span> <a class="viewable" data-viewer-title="red (jp.) / green — super game boy" data-viewer-src="https://veekun.com/static/pokedex/downloads/red-green-sgb.png" href="https://veekun.com/static/pokedex/downloads/red-green-sgb.png">red-green-sgb.png (78.5KB)</a></li></ul></dd><dt><img alt="Red" src="https://veekun.com/static/pokedex/images/versions/red.png" title="Red"><img alt=", Blue" src="https://veekun.com/static/pokedex/images/versions/blue.png" title="Blue"> red / blue</dt><dd><ul><li><span class="type">game boy:</span> <a class="viewable" data-viewer-title="red / blue — game boy" data-viewer-src="https://veekun.com/static/pokedex/downloads/red-blue.png" href="https://veekun.com/static/pokedex/downloads/red-blue.png">red-blue.png (32.3KB)</a></li><li><span class="type">super game boy:</span> <a class="viewable" data-viewer-title="red / blue — super game boy" data-viewer-src="https://veekun.com/static/pokedex/downloads/red-blue-sgb.png" href="https://veekun.com/static/pokedex/downloads/red-blue-sgb.png">red-blue-sgb.png (76.5KB)</a></li></ul></dd><dt><img alt="Yellow" src="https://veekun.com/static/pokedex/images/versions/yellow.png" title="Yellow"> yellow</dt><dd><ul><li><span class="type">game boy:</span> <a class="viewable" data-viewer-title="yellow — game boy" data-viewer-src="https://veekun.com/static/pokedex/downloads/yellow.png" href="https://veekun.com/static/pokedex/downloads/yellow.png">yellow.png (30KB)</a></li><li><span class="type">super game boy:</span> <a class="viewable" data-viewer-title="yellow — super game boy" data-viewer-src="https://veekun.com/static/pokedex/downloads/yellow-sgb.png" href="https://veekun.com/static/pokedex/downloads/yellow-sgb.png">yellow-sgb.png (74.7KB)</a></li><li><span class="type">game boy color:</span> <a class="viewable" data-viewer-title="yellow — game boy color" data-viewer-src="https://veekun.com/static/pokedex/downloads/yellow-gbc.png" href="https://veekun.com/static/pokedex/downloads/yellow-gbc.png">yellow-gbc.png (74.6KB)</a></li></ul></dd><dt><img alt="Generation 1" src="https://veekun.com/static/pokedex/images/versions/generation-1.png" title="Generation 1"> generation 1 back</dt><dd><ul><li><span class="type">game boy:</span> <a class="viewable" data-viewer-title="generation 1 back — game boy" data-viewer-src="https://veekun.com/static/pokedex/downloads/generation-1-back.png" href="https://veekun.com/static/pokedex/downloads/generation-1-back.png">generation-1-back.png (10.3KB)</a></li><li><span class="type">super game boy:</span> <a class="viewable" data-viewer-title="generation 1 back — super game boy — red (jp.) / green / red / blue" data-viewer-src="https://veekun.com/static/pokedex/downloads/red-green-blue-back-sgb.png" href="https://veekun.com/static/pokedex/downloads/red-green-blue-back-sgb.png">red-green-blue-back-sgb.png (25.5KB)</a> for red (jp.), green, red, and blue</li><li><span class="type">super game boy:</span> <a class="viewable" data-viewer-title="generation 1 back — super game boy — yellow" data-viewer-src="https://veekun.com/static/pokedex/downloads/yellow-back-sgb.png" href="https://veekun.com/static/pokedex/downloads/yellow-back-sgb.png">yellow-back-sgb.png (25.5KB)</a> for yellow</li><li><span class="type">game boy color:</span> <a class="viewable" data-viewer-title="generation 1 back — game boy color — yellow" data-viewer-src="https://veekun.com/static/pokedex/downloads/yellow-back-gbc.png" href="https://veekun.com/static/pokedex/downloads/yellow-back-gbc.png">yellow-back-gbc.png (25.4KB)</a> for yellow</li></ul></dd></dl><hr><dl><dt><img alt="Gold" src="https://veekun.com/static/pokedex/images/versions/gold.png" title="Gold"> gold</dt><dd><ul><li><a class="viewable" data-viewer-title="gold — normal" data-viewer-src="https://veekun.com/static/pokedex/downloads/gold.png" href="https://veekun.com/static/pokedex/downloads/gold.png">normal (153KB)</a></li><li><a class="viewable" data-viewer-title="gold — shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/gold-shiny.png" href="https://veekun.com/static/pokedex/downloads/gold-shiny.png">shiny (154KB)</a></li></ul></dd><dt><img alt="Silver" src="https://veekun.com/static/pokedex/images/versions/silver.png" title="Silver"> silver</dt><dd><ul><li><a class="viewable" data-viewer-title="silver — normal" data-viewer-src="https://veekun.com/static/pokedex/downloads/silver.png" href="https://veekun.com/static/pokedex/downloads/silver.png">normal (155KB)</a></li><li><a class="viewable" data-viewer-title="silver — shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/silver-shiny.png" href="https://veekun.com/static/pokedex/downloads/silver-shiny.png">shiny (155KB)</a></li></ul></dd><dt><img alt="Crystal" src="https://veekun.com/static/pokedex/images/versions/crystal.png" title="Crystal"> crystal</dt><dd><ul><li><a class="viewable" data-viewer-title="crystal — normal" data-viewer-src="https://veekun.com/static/pokedex/downloads/crystal.png" href="https://veekun.com/static/pokedex/downloads/crystal.png">normal (154KB)</a></li><li><a class="viewable" data-viewer-title="crystal — shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/crystal-shiny.png" href="https://veekun.com/static/pokedex/downloads/crystal-shiny.png">shiny (155KB)</a></li></ul></dd><dt><img alt="Gold" src="https://veekun.com/static/pokedex/images/versions/gold.png" title="Gold"><img alt=", Silver" src="https://veekun.com/static/pokedex/images/versions/silver.png" title="Silver"> gold / silver back</dt><dd><ul><li><a class="viewable" data-viewer-title="gold / silver back — normal" data-viewer-src="https://veekun.com/static/pokedex/downloads/gold-silver-back.png" href="https://veekun.com/static/pokedex/downloads/gold-silver-back.png">normal (116KB)</a></li><li><a class="viewable" data-viewer-title="gold / silver back — shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/gold-silver-back-shiny.png" href="https://veekun.com/static/pokedex/downloads/gold-silver-back-shiny.png">shiny (117KB)</a></li></ul></dd><dt><img alt="Crystal" src="https://veekun.com/static/pokedex/images/versions/crystal.png" title="Crystal"> crystal back</dt><dd><ul><li><a class="viewable" data-viewer-title="crystal back — normal" data-viewer-src="https://veekun.com/static/pokedex/downloads/crystal-back.png" href="https://veekun.com/static/pokedex/downloads/crystal-back.png">normal (116KB)</a></li><li><a class="viewable" data-viewer-title="crystal back — shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/crystal-back-shiny.png" href="https://veekun.com/static/pokedex/downloads/crystal-back-shiny.png">shiny (117KB)</a></li></ul></dd></dl><hr><dl><dt><img alt="Generation 3" src="https://veekun.com/static/pokedex/images/versions/generation-3.png" title="Generation 3"> ruby / sapphire / emerald</dt><dd><ul><li><a class="viewable" data-viewer-title="ruby / sapphire / emerald — normal" data-viewer-src="https://veekun.com/static/pokedex/downloads/generation-3.png" href="https://veekun.com/static/pokedex/downloads/generation-3.png">normal (363KB)</a></li><li><a class="viewable" data-viewer-title="ruby / sapphire / emerald — shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/generation-3-shiny.png" href="https://veekun.com/static/pokedex/downloads/generation-3-shiny.png">shiny (365KB)</a></li></ul></dd><dt><img alt="Emerald" src="https://veekun.com/static/pokedex/images/versions/emerald.png" title="Emerald"> emerald</dt><dd><ul><li><a class="viewable" data-viewer-title="emerald — frame 2" data-viewer-src="https://veekun.com/static/pokedex/downloads/emerald-frame2.png" href="https://veekun.com/static/pokedex/downloads/emerald-frame2.png">frame 2 (356KB)</a></li><li><a class="viewable" data-viewer-title="emerald — frame 2 shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/emerald-frame2-shiny.png" href="https://veekun.com/static/pokedex/downloads/emerald-frame2-shiny.png">frame 2 shiny (358KB)</a></li></ul></dd><dt><img alt="FireRed" src="https://veekun.com/static/pokedex/images/versions/firered.png" title="FireRed"><img alt=", LeafGreen" src="https://veekun.com/static/pokedex/images/versions/leafgreen.png" title="LeafGreen"> firered / leafgreen</dt><dd><ul><li><a class="viewable" data-viewer-title="firered / leafgreen — generation 1 normal" data-viewer-src="https://veekun.com/static/pokedex/downloads/firered-leafgreen.png" href="https://veekun.com/static/pokedex/downloads/firered-leafgreen.png">generation 1 normal (143KB)</a></li><li><a class="viewable" data-viewer-title="firered / leafgreen — generation 1 shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/firered-leafgreen-shiny.png" href="https://veekun.com/static/pokedex/downloads/firered-leafgreen-shiny.png">generation 1 shiny (143KB)</a></li></ul></dd><dt><img alt="Generation 3" src="https://veekun.com/static/pokedex/images/versions/generation-3.png" title="Generation 3"> ruby / sapphire / emerald back</dt><dd><ul><li><a class="viewable" data-viewer-title="ruby / sapphire / emerald back — normal" data-viewer-src="https://veekun.com/static/pokedex/downloads/generation-3-back.png" href="https://veekun.com/static/pokedex/downloads/generation-3-back.png">normal (297KB)</a></li><li><a class="viewable" data-viewer-title="ruby / sapphire / emerald back — shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/generation-3-back-shiny.png" href="https://veekun.com/static/pokedex/downloads/generation-3-back-shiny.png">shiny (298KB)</a></li></ul></dd><dt><img alt="FireRed" src="https://veekun.com/static/pokedex/images/versions/firered.png" title="FireRed"><img alt=", LeafGreen" src="https://veekun.com/static/pokedex/images/versions/leafgreen.png" title="LeafGreen"> firered / leafgreen back</dt><dd><ul><li><a class="viewable" data-viewer-title="firered / leafgreen back — generation 1 normal" data-viewer-src="https://veekun.com/static/pokedex/downloads/firered-leafgreen-back.png" href="https://veekun.com/static/pokedex/downloads/firered-leafgreen-back.png">generation 1 normal (118KB)</a></li><li><a class="viewable" data-viewer-title="firered / leafgreen back — generation 1 shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/firered-leafgreen-back-shiny.png" href="https://veekun.com/static/pokedex/downloads/firered-leafgreen-back-shiny.png">generation 1 shiny (117KB)</a></li></ul></dd></dl><hr><dl><dt><img alt="Diamond" src="https://veekun.com/static/pokedex/images/versions/diamond.png" title="Diamond"><img alt=", Pearl" src="https://veekun.com/static/pokedex/images/versions/pearl.png" title="Pearl"> diamond / pearl</dt><dd><ul><li><a class="viewable" data-viewer-title="diamond / pearl — normal" data-viewer-src="https://veekun.com/static/pokedex/downloads/diamond-pearl.png" href="https://veekun.com/static/pokedex/downloads/diamond-pearl.png">normal (536KB)</a></li><li><a class="viewable" data-viewer-title="diamond / pearl — shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/diamond-pearl-shiny.png" href="https://veekun.com/static/pokedex/downloads/diamond-pearl-shiny.png">shiny (536KB)</a></li><li><a class="viewable" data-viewer-title="diamond / pearl — frame 2" data-viewer-src="https://veekun.com/static/pokedex/downloads/diamond-pearl-frame2.png" href="https://veekun.com/static/pokedex/downloads/diamond-pearl-frame2.png">frame 2 (524KB)</a></li><li><a class="viewable" data-viewer-title="diamond / pearl — shiny frame 2" data-viewer-src="https://veekun.com/static/pokedex/downloads/diamond-pearl-shiny-frame2.png" href="https://veekun.com/static/pokedex/downloads/diamond-pearl-shiny-frame2.png">shiny frame 2 (524KB)</a></li></ul></dd><dt><img alt="Platinum" src="https://veekun.com/static/pokedex/images/versions/platinum.png" title="Platinum"> platinum</dt><dd><ul><li><a class="viewable" data-viewer-title="platinum — normal" data-viewer-src="https://veekun.com/static/pokedex/downloads/platinum.png" href="https://veekun.com/static/pokedex/downloads/platinum.png">normal (534KB)</a></li><li><a class="viewable" data-viewer-title="platinum — shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/platinum-shiny.png" href="https://veekun.com/static/pokedex/downloads/platinum-shiny.png">shiny (535KB)</a></li><li><a class="viewable" data-viewer-title="platinum — frame 2" data-viewer-src="https://veekun.com/static/pokedex/downloads/platinum-frame2.png" href="https://veekun.com/static/pokedex/downloads/platinum-frame2.png">frame 2 (523KB)</a></li><li><a class="viewable" data-viewer-title="platinum — shiny frame 2" data-viewer-src="https://veekun.com/static/pokedex/downloads/platinum-shiny-frame2.png" href="https://veekun.com/static/pokedex/downloads/platinum-shiny-frame2.png">shiny frame 2 (523KB)</a></li></ul></dd><dt><img alt="HeartGold" src="https://veekun.com/static/pokedex/images/versions/heartgold.png" title="HeartGold"><img alt=", SoulSilver" src="https://veekun.com/static/pokedex/images/versions/soulsilver.png" title="SoulSilver"> heartgold / soulsilver</dt><dd><ul><li><a class="viewable" data-viewer-title="heartgold / soulsilver — normal" data-viewer-src="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver.png" href="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver.png">normal (530KB)</a></li><li><a class="viewable" data-viewer-title="heartgold / soulsilver — shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-shiny.png" href="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-shiny.png">shiny (530KB)</a></li><li><a class="viewable" data-viewer-title="heartgold / soulsilver — frame 2" data-viewer-src="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-frame2.png" href="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-frame2.png">frame 2 (518KB)</a></li><li><a class="viewable" data-viewer-title="heartgold / soulsilver — shiny frame 2" data-viewer-src="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-shiny-frame2.png" href="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-shiny-frame2.png">shiny frame 2 (517KB)</a></li></ul></dd><dt><img alt="Diamond" src="https://veekun.com/static/pokedex/images/versions/diamond.png" title="Diamond"><img alt=", Pearl" src="https://veekun.com/static/pokedex/images/versions/pearl.png" title="Pearl"> diamond / pearl back</dt><dd><ul><li><a class="viewable" data-viewer-title="diamond / pearl back — normal" data-viewer-src="https://veekun.com/static/pokedex/downloads/diamond-pearl-back.png" href="https://veekun.com/static/pokedex/downloads/diamond-pearl-back.png">normal (495KB)</a></li><li><a class="viewable" data-viewer-title="diamond / pearl back — shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/diamond-pearl-back-shiny.png" href="https://veekun.com/static/pokedex/downloads/diamond-pearl-back-shiny.png">shiny (496KB)</a></li></ul></dd><dt><img alt="Platinum" src="https://veekun.com/static/pokedex/images/versions/platinum.png" title="Platinum"> platinum back</dt><dd><ul><li><a class="viewable" data-viewer-title="platinum back — normal" data-viewer-src="https://veekun.com/static/pokedex/downloads/platinum-back.png" href="https://veekun.com/static/pokedex/downloads/platinum-back.png">normal (495KB)</a></li><li><a class="viewable" data-viewer-title="platinum back — shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/platinum-back-shiny.png" href="https://veekun.com/static/pokedex/downloads/platinum-back-shiny.png">shiny (496KB)</a></li><li><a class="viewable" data-viewer-title="platinum back — frame 2" data-viewer-src="https://veekun.com/static/pokedex/downloads/platinum-back-frame2.png" href="https://veekun.com/static/pokedex/downloads/platinum-back-frame2.png">frame 2 (497KB)</a></li><li><a class="viewable" data-viewer-title="platinum back — shiny frame 2" data-viewer-src="https://veekun.com/static/pokedex/downloads/platinum-back-shiny-frame2.png" href="https://veekun.com/static/pokedex/downloads/platinum-back-shiny-frame2.png">shiny frame 2 (498KB)</a></li></ul></dd><dt><img alt="HeartGold" src="https://veekun.com/static/pokedex/images/versions/heartgold.png" title="HeartGold"><img alt=", SoulSilver" src="https://veekun.com/static/pokedex/images/versions/soulsilver.png" title="SoulSilver"> heartgold / soulsilver back</dt><dd><ul><li><a class="viewable" data-viewer-title="heartgold / soulsilver back — normal" data-viewer-src="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-back.png" href="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-back.png">normal (495KB)</a></li><li><a class="viewable" data-viewer-title="heartgold / soulsilver back — shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-back-shiny.png" href="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-back-shiny.png">shiny (496KB)</a></li><li><a class="viewable" data-viewer-title="heartgold / soulsilver back — frame 2" data-viewer-src="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-back-frame2.png" href="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-back-frame2.png">frame 2 (499KB)</a></li><li><a class="viewable" data-viewer-title="heartgold / soulsilver back — shiny frame 2" data-viewer-src="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-back-shiny-frame2.png" href="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-back-shiny-frame2.png">shiny frame 2 (499KB)</a></li></ul></dd><dt><img alt="Generation 4" src="https://veekun.com/static/pokedex/images/versions/generation-4.png" title="Generation 4"> generation 4 ♂ vs ♀</dt><dd><ul><li><span class="type">diamond / pearl front:</span> <a class="viewable" data-viewer-title="diamond / pearl front — female differences" data-viewer-src="https://veekun.com/static/pokedex/downloads/diamond-pearl-female-diff.png" href="https://veekun.com/static/pokedex/downloads/diamond-pearl-female-diff.png">female differences (632KB)</a></li><li><span class="type">platinum front:</span> <a class="viewable" data-viewer-title="platinum front — female differences" data-viewer-src="https://veekun.com/static/pokedex/downloads/platinum-female-diff.png" href="https://veekun.com/static/pokedex/downloads/platinum-female-diff.png">female differences (603KB)</a></li><li><span class="type">heartgold / soulsilver front:</span> <a class="viewable" data-viewer-title="heartgold / soulsilver front — female differences" data-viewer-src="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-female-diff.png" href="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-female-diff.png">female differences (598KB)</a></li><li><span class="type">diamond / pearl back:</span> <a class="viewable" data-viewer-title="diamond / pearl back — female differences" data-viewer-src="https://veekun.com/static/pokedex/downloads/diamond-pearl-back-female-diff.png" href="https://veekun.com/static/pokedex/downloads/diamond-pearl-back-female-diff.png">female differences (581KB)</a></li><li><span class="type">platinum back:</span> <a class="viewable" data-viewer-title="platinum back — female differences" data-viewer-src="https://veekun.com/static/pokedex/downloads/platinum-back-female-diff.png" href="https://veekun.com/static/pokedex/downloads/platinum-back-female-diff.png">female differences (563KB)</a></li><li><span class="type">heartgold / soulsilver back:</span> <a class="viewable" data-viewer-title="heartgold / soulsilver back — female differences" data-viewer-src="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-back-female-diff.png" href="https://veekun.com/static/pokedex/downloads/heartgold-soulsilver-back-female-diff.png">female differences (555KB)</a></li></ul></dd></dl><hr><dl><dt><img alt="Black" src="https://veekun.com/static/pokedex/images/versions/black.png" title="Black"><img alt=", White" src="https://veekun.com/static/pokedex/images/versions/white.png" title="White"> black / white</dt><dd><ul><li><a class="viewable" data-viewer-title="black / white — normal" data-viewer-src="https://veekun.com/static/pokedex/downloads/black-white.png" href="https://veekun.com/static/pokedex/downloads/black-white.png">normal (749KB)</a></li><li><a class="viewable" data-viewer-title="black / white — shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/black-white-shiny.png" href="https://veekun.com/static/pokedex/downloads/black-white-shiny.png">shiny (750KB)</a></li></ul></dd><dt><img alt="Black" src="https://veekun.com/static/pokedex/images/versions/black.png" title="Black"><img alt=", White" src="https://veekun.com/static/pokedex/images/versions/white.png" title="White"> black / white back</dt><dd><ul><li><a class="viewable" data-viewer-title="black / white back — normal" data-viewer-src="https://veekun.com/static/pokedex/downloads/black-white-back.png" href="https://veekun.com/static/pokedex/downloads/black-white-back.png">normal (651KB)</a></li><li><a class="viewable" data-viewer-title="black / white back — shiny" data-viewer-src="https://veekun.com/static/pokedex/downloads/black-white-back-shiny.png" href="https://veekun.com/static/pokedex/downloads/black-white-back-shiny.png">shiny (652KB)</a></li></ul></dd><dt><img alt="Generation 5" src="https://veekun.com/static/pokedex/images/versions/generation-5.png" title="Generation 5"> generation 5 ♂ vs ♀</dt><dd><ul><li><span class="type">black / white front:</span> <a class="viewable" data-viewer-title="black / white front — female differences" data-viewer-src="https://veekun.com/static/pokedex/downloads/black-white-female-diff.png" href="https://veekun.com/static/pokedex/downloads/black-white-female-diff.png">female differences (711KB)</a></li><li><span class="type">black / white back:</span> <a class="viewable" data-viewer-title="black / white back — female differences" data-viewer-src="https://veekun.com/static/pokedex/downloads/black-white-back-female-diff.png" href="https://veekun.com/static/pokedex/downloads/black-white-back-female-diff.png">female differences (613KB)</a></li></ul></dd></dl><h1 id="other-montages"><a href="#other-montages">other montages</a></h1><ul><li><img alt="HeartGold" src="https://veekun.com/static/pokedex/images/versions/heartgold.png" title="HeartGold"><img alt=", SoulSilver" src="https://veekun.com/static/pokedex/images/versions/soulsilver.png" title="SoulSilver"> overworld: <a class="viewable" data-viewer-title="heartgold / soulsilver overworld — facing forwards" data-viewer-src="https://veekun.com/static/pokedex/downloads/overworld-down.png" href="https://veekun.com/static/pokedex/downloads/overworld-down.png">facing forwards (133KB)</a>; <a class="viewable" data-viewer-title="heartgold / soulsilver overworld — facing right" data-viewer-src="https://veekun.com/static/pokedex/downloads/overworld-right.png" href="https://veekun.com/static/pokedex/downloads/overworld-right.png">facing right (121KB)</a>; <a class="viewable" data-viewer-title="heartgold / soulsilver overworld — facing backwards" data-viewer-src="https://veekun.com/static/pokedex/downloads/overworld-up.png" href="https://veekun.com/static/pokedex/downloads/overworld-up.png">facing backwards (118KB)</a>; <a class="viewable" data-viewer-title="heartgold / soulsilver overworld — shiny forwards" data-viewer-src="https://veekun.com/static/pokedex/downloads/overworld-down-shiny.png" href="https://veekun.com/static/pokedex/downloads/overworld-down-shiny.png">shiny forwards (133KB)</a>; <a class="viewable" data-viewer-title="heartgold / soulsilver overworld — shiny right" data-viewer-src="https://veekun.com/static/pokedex/downloads/overworld-right-shiny.png" href="https://veekun.com/static/pokedex/downloads/overworld-right-shiny.png">shiny right (121KB)</a>; <a class="viewable" data-viewer-title="heartgold / soulsilver overworld — shiny backwards" data-viewer-src="https://veekun.com/static/pokedex/downloads/overworld-up-shiny.png" href="https://veekun.com/static/pokedex/downloads/overworld-up-shiny.png">shiny backwards (119KB)</a></li></ul><h1 id="other-files"><a href="#other-files">other files</a></h1><ul><li><a href="https://veekun.com/static/pokedex/downloads/pokemon-cries.tar.gz">pokémon cries (11.1MB)</a> — encoded as Ogg Vorbis quality 5</li><li><a href="https://veekun.com/static/pokedex/downloads/pokemon-sugimori.tar.gz">Sugimori art (404MB)</a> — official art for every Pokémon</li><li><a href="https://veekun.com/static/pokedex/downloads/pokemon-dream-world.tar.gz">Dream World art (7.36MB)</a> — vector art for pokémon</li><li><a href="https://veekun.com/static/pokedex/downloads/pokemon-global-link.tar.gz">Global Link artwork (16.6MB)</a></li><li><a href="https://veekun.com/static/pokedex/downloads/veekun-pokedex.sqlite.gz">full database as gzipped SQLite (15.1MB)</a> but see <a href="https://github.com/veekun/pokedex/wiki/Getting-Data">the documentation</a> for other databases or real instructions.</li><li><a href="https://github.com/veekun">source code</a>; <a href="http://git.veekun.com/pokedex-media.git">all sounds and images</a>; download a snapshot or do it <a href="https://github.com/veekun/veekun/wiki/Documentation">the real way</a></li></ul><p class="footer">assets and characters belong to Nintendo and related rights holders. credits: <a href="https://veekun.com/props">https://veekun.com/props</a></p></main><section class="viewer" id="viewer" aria-hidden="true" role="dialog" aria-label="image viewer"><div class="viewer-header"><div class="viewer-title" id="viewerTitle">viewer</div><div class="viewer-controls"><button type="button" id="zoomOut" aria-label="zoom out" title="zoom out">−</button><button type="button" id="zoomIn" aria-label="zoom in" title="zoom in">+</button><button type="button" id="zoomFit" aria-label="fit to window" title="fit to window">□</button><button type="button" id="zoom100" aria-label="actual size" title="actual size">1</button><button type="button" id="togglePin" aria-pressed="false" aria-label="pin viewer open" title="pin viewer">•</button><button type="button" class="viewer-close" id="closeViewer" aria-label="close viewer" title="close viewer">×</button></div></div><div class="viewer-stage" id="viewerStage" tabindex="0" aria-describedby="viewerHelp"><img class="viewer-img" id="viewerImg" alt=""></div><div class="viewer-footer"><div class="viewer-status" id="viewerStatus">ready</div><div class="viewer-help" id="viewerHelp">wheel: zoom · drag: pan · double tap/click: fit/100% · arrows: pan · +/-: zoom · 0: fit · 1: 100% · p: pin · esc: close</div></div></section><script>(()=>{const viewer=document.getElementById("viewer"),stage=document.getElementById("viewerStage"),img=document.getElementById("viewerImg"),titleEl=document.getElementById("viewerTitle"),statusEl=document.getElementById("viewerStatus"),closeBtn=document.getElementById("closeViewer"),zoomInBtn=document.getElementById("zoomIn"),zoomOutBtn=document.getElementById("zoomOut"),zoomFitBtn=document.getElementById("zoomFit"),zoom100Btn=document.getElementById("zoom100"),pinBtn=document.getElementById("togglePin"),help=document.getElementById("viewerHelp");const links=[...document.querySelectorAll("a.viewable")];let hoverTimer=0,hideTimer=0,currentLink=null,pinned=false,loaded=false,naturalW=0,naturalH=0,scale=1,minScale=.05,maxScale=32,fitScale=1,x=0,y=0,isDragging=false,startX=0,startY=0,startPanX=0,startPanY=0,lastPointerType="mouse",lastTap=0,lastTapX=0,lastTapY=0,lastTapTime=0;function updateTransform(){img.style.transform=`translate(${x}px,${y}px) translate(-50%,-50%) scale(${scale})`;statusEl.textContent=`${naturalW||0}×${naturalH||0} · ${Math.round(scale*100)}% · x:${Math.round(x)} y:${Math.round(y)}`}function setTitle(t){titleEl.textContent=t||"viewer";img.alt=t||"preview"}function clearTimers(){clearTimeout(hoverTimer);clearTimeout(hideTimer)}function showViewer(){viewer.classList.add("active");viewer.setAttribute("aria-hidden","false")}function hideViewer(force=false){clearTimers();if(pinned&&!force)return;viewer.classList.remove("active");viewer.setAttribute("aria-hidden","true");stage.classList.remove("dragging");isDragging=false;currentLink=null}function scheduleHide(){clearTimeout(hideTimer);if(pinned)return;hideTimer=setTimeout(()=>{if(!viewer.matches(":hover"))hideViewer()},650)}function fit(){if(!loaded)return;const r=stage.getBoundingClientRect();fitScale=Math.min(r.width/naturalW,r.height/naturalH)||1;scale=fitScale;x=0;y=0;updateTransform()}function actual(){if(!loaded)return;scale=1;x=0;y=0;updateTransform()}function toggleFitActual(){if(!loaded)return;Math.abs(scale-fitScale)<.01?actual():fit()}function clamp(n,min,max){return Math.max(min,Math.min(max,n))}function zoomAt(factor,cx,cy){if(!loaded)return;const rect=stage.getBoundingClientRect(),old=scale,next=clamp(old*factor,Math.min(minScale,fitScale*.25),Math.max(maxScale,fitScale*32));if(next===old)return;const sx=(cx??rect.width/2)-rect.width/2-x,sy=(cy??rect.height/2)-rect.height/2-y;x-=(sx/old)*(next-old);y-=(sy/old)*(next-old);scale=next;updateTransform()}function openLink(link,focusStage=false){clearTimers();const src=link.dataset.viewerSrc||link.href,t=link.dataset.viewerTitle||link.textContent.trim();currentLink=link;setTitle(t);showViewer();statusEl.textContent="loading…";loaded=false;const temp=new Image();temp.onload=()=>{naturalW=temp.naturalWidth;naturalH=temp.naturalHeight;img.src=src;loaded=true;fit();if(focusStage)stage.focus({preventScroll:true})};temp.onerror=()=>{statusEl.textContent="failed to load preview";img.removeAttribute("src");loaded=false};temp.src=src}function pointerDown(e){if(!loaded)return;lastPointerType=e.pointerType||"mouse";const now=Date.now();if((e.pointerType==="touch"||e.pointerType==="pen")&&now-lastTapTime<320&&Math.abs(e.clientX-lastTapX)<24&&Math.abs(e.clientY-lastTapY)<24){e.preventDefault();toggleFitActual();lastTapTime=0;return}lastTapTime=now;lastTapX=e.clientX;lastTapY=e.clientY;isDragging=true;stage.classList.add("dragging");startX=e.clientX;startY=e.clientY;startPanX=x;startPanY=y;stage.setPointerCapture(e.pointerId)}function pointerMove(e){if(!isDragging)return;x=startPanX+(e.clientX-startX);y=startPanY+(e.clientY-startY);updateTransform()}function pointerUp(e){isDragging=false;stage.classList.remove("dragging");try{stage.releasePointerCapture(e.pointerId)}catch{}}links.forEach(link=>{link.setAttribute("title","hover 3s to preview; click opens file");link.addEventListener("mouseenter",()=>{lastPointerType="mouse";clearTimeout(hoverTimer);hoverTimer=setTimeout(()=>openLink(link,false),3000)});link.addEventListener("mouseleave",()=>{clearTimeout(hoverTimer);if(currentLink===link&&!pinned)scheduleHide()});link.addEventListener("focus",()=>{clearTimeout(hoverTimer);hoverTimer=setTimeout(()=>openLink(link,false),3000)});link.addEventListener("blur",()=>{clearTimeout(hoverTimer);if(currentLink===link&&!pinned)scheduleHide()});link.addEventListener("click",e=>{if(e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;if(lastPointerType==="mouse"&&viewer.classList.contains("active")&&currentLink===link&&!pinned)return;openLink(link,true)})});viewer.addEventListener("mouseenter",()=>clearTimeout(hideTimer));viewer.addEventListener("mouseleave",()=>scheduleHide());stage.addEventListener("pointerdown",pointerDown);stage.addEventListener("pointermove",pointerMove);stage.addEventListener("pointerup",pointerUp);stage.addEventListener("pointercancel",pointerUp);stage.addEventListener("wheel",e=>{if(!viewer.classList.contains("active"))return;e.preventDefault();const rect=stage.getBoundingClientRect(),cx=e.clientX-rect.left,cy=e.clientY-rect.top;zoomAt(e.deltaY<0?1.12:.89,cx,cy)},{passive:false});stage.addEventListener("dblclick",e=>{e.preventDefault();toggleFitActual()});zoomInBtn.addEventListener("click",()=>zoomAt(1.2));zoomOutBtn.addEventListener("click",()=>zoomAt(.8333));zoomFitBtn.addEventListener("click",fit);zoom100Btn.addEventListener("click",actual);closeBtn.addEventListener("click",()=>hideViewer(true));pinBtn.addEventListener("click",()=>{pinned=!pinned;pinBtn.setAttribute("aria-pressed",String(pinned));pinBtn.style.color=pinned?"#fff":"";pinBtn.style.borderColor=pinned?"#666":"";if(!pinned)scheduleHide()});document.addEventListener("keydown",e=>{if(!viewer.classList.contains("active"))return;const k=e.key;if(k==="Escape"){hideViewer(true);return}if(k==="+"||k==="="){e.preventDefault();zoomAt(1.2);return}if(k==="-"||k==="_"){e.preventDefault();zoomAt(.8333);return}if(k==="0"){e.preventDefault();fit();return}if(k==="1"){e.preventDefault();actual();return}if(k.toLowerCase()==="p"){e.preventDefault();pinBtn.click();return}const step=e.shiftKey?80:32;if(k==="ArrowLeft"){e.preventDefault();x+=step;updateTransform()}else if(k==="ArrowRight"){e.preventDefault();x-=step;updateTransform()}else if(k==="ArrowUp"){e.preventDefault();y+=step;updateTransform()}else if(k==="ArrowDown"){e.preventDefault();y-=step;updateTransform()}});window.addEventListener("resize",()=>{if(viewer.classList.contains("active")&&loaded)fit()});})();</script></body></html>