{"id":304,"date":"2026-07-01T23:37:28","date_gmt":"2026-07-01T15:37:28","guid":{"rendered":"https:\/\/qingtianptcg.com\/?page_id=304"},"modified":"2026-07-02T11:24:56","modified_gmt":"2026-07-02T03:24:56","slug":"%e6%99%b4%e5%a4%a9ptcg%e6%a8%a1%e6%8b%9f%e5%bc%80%e5%8c%85","status":"publish","type":"page","link":"https:\/\/qingtianptcg.com\/index.php\/%e6%99%b4%e5%a4%a9ptcg%e6%a8%a1%e6%8b%9f%e5%bc%80%e5%8c%85\/","title":{"rendered":"\u6a21\u62df\u5f00\u5305"},"content":{"rendered":"\n<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n<meta charset=\"UTF-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n<title>\u6674\u5929PTCG \u5355\u5305\u6a21\u62df<\/title>\n\n<style>\nbody{\n  margin:0;\n  font-family:system-ui;\n  background:linear-gradient(135deg,#8ed6ff,#fff3b0);\n  text-align:center;\n  padding:28px;\n}\n.pack{\n  width:150px;\n  height:210px;\n  margin:18px auto;\n  border-radius:18px;\n  background:linear-gradient(145deg,#3568b8,#ffcb05);\n  box-shadow:0 14px 30px rgba(0,0,0,.25);\n  display:flex;\n  align-items:center;\n  justify-content:center;\n  font-size:26px;\n  font-weight:900;\n  cursor:pointer;\n}\n.pack.opening{animation:openPack .7s ease}\n@keyframes openPack{\n  0%{transform:scale(1) rotate(0)}\n  40%{transform:scale(1.15) rotate(-6deg)}\n  100%{transform:scale(1) rotate(0)}\n}\nbutton{\n  border:0;\n  border-radius:999px;\n  padding:12px 28px;\n  font-size:16px;\n  font-weight:800;\n  background:#ffcb05;\n  cursor:pointer;\n}\n.cards{\n  max-width:850px;\n  margin:25px auto;\n  display:grid;\n  grid-template-columns:repeat(auto-fit,minmax(130px,1fr));\n  gap:12px;\n}\n.card{\n  height:180px;\n  border-radius:16px;\n  background:white;\n  border:3px solid #ddd;\n  box-shadow:0 8px 20px rgba(0,0,0,.15);\n  display:flex;\n  flex-direction:column;\n  align-items:center;\n  justify-content:center;\n  animation:flip .5s ease both;\n}\n@keyframes flip{\n  from{transform:rotateY(90deg);opacity:0}\n  to{transform:rotateY(0);opacity:1}\n}\n.emoji{font-size:40px}\n.name{font-size:16px;font-weight:900}\n.rarity{font-size:13px;color:#666;margin-top:4px}\n.c{border-color:#aaa}\n.u{border-color:#43a047}\n.sr{\n  border-color:#8e24aa;\n  background:linear-gradient(135deg,#fff,#f6dcff);\n}\n.sar{\n  border-color:#fb8c00;\n  background:linear-gradient(135deg,#fff7c2,#fff,#ffd36b);\n  animation:flip .5s ease both, glow 1.2s infinite;\n}\n@keyframes glow{\n  0%{filter:brightness(1)}\n  50%{filter:brightness(1.25)}\n  100%{filter:brightness(1)}\n}\n.stats{\n  max-width:650px;\n  margin:18px auto;\n  background:white;\n  border-radius:16px;\n  padding:14px;\n  line-height:1.7;\n}\n@media(max-width:600px){\n  body{padding:16px}\n  .cards{grid-template-columns:repeat(2,1fr)}\n}\n<\/style>\n<\/head>\n\n<body>\n\n<p>\u4e00\u6b21\u5f00 1 \u5305\uff0c\u6bcf\u5305 5 \u5f20\u5361<\/p>\n\n<div id=\"pack\" class=\"pack\">\u6674\u5929\u5305<\/div>\n<button id=\"openBtn\" type=\"button\">\u5f00\u4e00\u5305\uff01<\/button>\n\n<h2 id=\"message\"><\/h2>\n<div id=\"stats\" class=\"stats\"><\/div>\n<div id=\"cards\" class=\"cards\"><\/div>\n\n<script>\ndocument.addEventListener(\"DOMContentLoaded\", function(){\n\n  const gen1 = [\n    \"\u5999\u86d9\u79cd\u5b50\",\"\u5999\u86d9\u8349\",\"\u5999\u86d9\u82b1\",\"\u5c0f\u706b\u9f99\",\"\u706b\u6050\u9f99\",\"\u55b7\u706b\u9f99\",\"\u6770\u5c3c\u9f9f\",\"\u5361\u54aa\u9f9f\",\"\u6c34\u7bad\u9f9f\",\n    \"\u7eff\u6bdb\u866b\",\"\u94c1\u7532\u86f9\",\"\u5df4\u5927\u8776\",\"\u72ec\u89d2\u866b\",\"\u94c1\u58f3\u86f9\",\"\u5927\u9488\u8702\",\"\u6ce2\u6ce2\",\"\u6bd4\u6bd4\u9e1f\",\"\u5927\u6bd4\u9e1f\",\n    \"\u5c0f\u62c9\u8fbe\",\"\u62c9\u8fbe\",\"\u70c8\u96c0\",\"\u5927\u5634\u96c0\",\"\u963f\u67cf\u86c7\",\"\u963f\u67cf\u602a\",\"\u76ae\u5361\u4e18\",\"\u96f7\u4e18\",\"\u7a7f\u5c71\u9f20\",\"\u7a7f\u5c71\u738b\",\n    \"\u5c3c\u591a\u5170\u2640\",\"\u5c3c\u591a\u5a1c\",\"\u5c3c\u591a\u540e\",\"\u5c3c\u591a\u5170\u2642\",\"\u5c3c\u591a\u529b\u8bfa\",\"\u5c3c\u591a\u738b\",\"\u76ae\u76ae\",\"\u76ae\u53ef\u897f\",\"\u516d\u5c3e\",\"\u4e5d\u5c3e\",\n    \"\u80d6\u4e01\",\"\u80d6\u53ef\u4e01\",\"\u8d85\u97f3\u8760\",\"\u5927\u5634\u8760\",\"\u8d70\u8def\u8349\",\"\u81ed\u81ed\u82b1\",\"\u9738\u738b\u82b1\",\"\u6d3e\u62c9\u65af\",\"\u6d3e\u62c9\u65af\u7279\",\"\u6bdb\u7403\",\"\u6469\u9c81\u86fe\",\n    \"\u5730\u9f20\",\"\u4e09\u5730\u9f20\",\"\u55b5\u55b5\",\"\u732b\u8001\u5927\",\"\u53ef\u8fbe\u9e2d\",\"\u54e5\u8fbe\u9e2d\",\"\u7334\u602a\",\"\u706b\u66b4\u7334\",\"\u5361\u8482\u72d7\",\"\u98ce\u901f\u72d7\",\n    \"\u868a\u9999\u874c\u86aa\",\"\u868a\u9999\u541b\",\"\u868a\u9999\u6cf3\u58eb\",\"\u51ef\u897f\",\"\u52c7\u57fa\u62c9\",\"\u80e1\u5730\",\"\u8155\u529b\",\"\u8c6a\u529b\",\"\u602a\u529b\",\"\u5587\u53ed\u82bd\",\"\u53e3\u5446\u82b1\",\"\u5927\u98df\u82b1\",\n    \"\u739b\u7459\u6c34\u6bcd\",\"\u6bd2\u523a\u6c34\u6bcd\",\"\u5c0f\u62f3\u77f3\",\"\u9686\u9686\u77f3\",\"\u9686\u9686\u5ca9\",\"\u5c0f\u706b\u9a6c\",\"\u70c8\u7130\u9a6c\",\"\u5446\u5446\u517d\",\"\u5446\u58f3\u517d\",\n    \"\u5c0f\u78c1\u602a\",\"\u4e09\u5408\u4e00\u78c1\u602a\",\"\u5927\u8471\u9e2d\",\"\u561f\u561f\",\"\u561f\u561f\u5229\",\"\u5c0f\u6d77\u72ee\",\"\u767d\u6d77\u72ee\",\"\u81ed\u6ce5\",\"\u81ed\u81ed\u6ce5\",\n    \"\u5927\u820c\u8d1d\",\"\u523a\u7532\u8d1d\",\"\u9b3c\u65af\",\"\u9b3c\u65af\u901a\",\"\u803f\u9b3c\",\"\u5927\u5ca9\u86c7\",\"\u50ac\u7720\u8c98\",\"\u5f15\u68a6\u8c98\u4eba\",\"\u5927\u94b3\u87f9\",\"\u5de8\u94b3\u87f9\",\n    \"\u9739\u96f3\u7535\u7403\",\"\u987d\u76ae\u96f7\u5f39\",\"\u86cb\u86cb\",\"\u6930\u86cb\u6811\",\"\u5361\u62c9\u5361\u62c9\",\"\u560e\u5566\u560e\u5566\",\"\u98de\u817f\u90ce\",\"\u5feb\u62f3\u90ce\",\"\u5927\u820c\u5934\",\n    \"\u74e6\u65af\u5f39\",\"\u53cc\u5f39\u74e6\u65af\",\"\u72ec\u89d2\u7280\u725b\",\"\u94bb\u89d2\u7280\u517d\",\"\u5409\u5229\u86cb\",\"\u8513\u85e4\u602a\",\"\u888b\u517d\",\"\u58a8\u6d77\u9a6c\",\"\u6d77\u523a\u9f99\",\n    \"\u89d2\u91d1\u9c7c\",\"\u91d1\u9c7c\u738b\",\"\u6d77\u661f\u661f\",\"\u5b9d\u77f3\u6d77\u661f\",\"\u9b54\u5899\u4eba\u5076\",\"\u98de\u5929\u87b3\u8782\",\"\u8ff7\u5507\u59d0\",\"\u7535\u51fb\u517d\",\"\u9e2d\u5634\u706b\u517d\",\n    \"\u51ef\u7f57\u65af\",\"\u80af\u6cf0\u7f57\",\"\u9ca4\u9c7c\u738b\",\"\u66b4\u9ca4\u9f99\",\"\u62c9\u666e\u62c9\u65af\",\"\u767e\u53d8\u602a\",\"\u4f0a\u5e03\",\"\u6c34\u4f0a\u5e03\",\"\u96f7\u4f0a\u5e03\",\"\u706b\u4f0a\u5e03\",\n    \"\u591a\u8fb9\u517d\",\"\u83ca\u77f3\u517d\",\"\u591a\u523a\u83ca\u77f3\u517d\",\"\u5316\u77f3\u76d4\",\"\u9570\u5200\u76d4\",\"\u5316\u77f3\u7ffc\u9f99\",\"\u5361\u6bd4\u517d\",\"\u6025\u51bb\u9e1f\",\"\u95ea\u7535\u9e1f\",\"\u706b\u7130\u9e1f\",\n    \"\u8ff7\u4f60\u9f99\",\"\u54c8\u514b\u9f99\",\"\u5feb\u9f99\",\"\u8d85\u68a6\",\"\u68a6\u5e7b\"\n  ];\n\n  const emojiList = [\"\u26a1\",\"\ud83d\udd25\",\"\ud83d\udca7\",\"\ud83c\udf31\",\"\ud83c\udf08\",\"\u2728\",\"\ud83c\udf1f\",\"\ud83d\udc8e\",\"\ud83d\udc09\",\"\ud83e\udd8a\",\"\ud83d\udc7b\",\"\ud83e\udd4a\",\"\ud83c\udf0a\",\"\ud83d\udca4\",\"\ud83e\udea8\",\"\ud83e\udebd\"];\n\n  const pools = {\n    c: gen1.map((name, i) => [name, emojiList[i % emojiList.length]]),\n    u: gen1.map((name, i) => [name + \" U\", emojiList[(i + 3) % emojiList.length]]),\n    sr: gen1.map((name, i) => [name + \" SR\", emojiList[(i + 6) % emojiList.length]]),\n    sar: gen1.map((name, i) => [name + \" SAR\", emojiList[(i + 9) % emojiList.length]])\n  };\n\n  let totalPacks = 0;\n  let totalCards = 0;\n  let countC = 0;\n  let countU = 0;\n  let countSR = 0;\n  let countSAR = 0;\n\n  const pack = document.getElementById(\"pack\");\n  const btn = document.getElementById(\"openBtn\");\n  const cards = document.getElementById(\"cards\");\n  const message = document.getElementById(\"message\");\n  const stats = document.getElementById(\"stats\");\n\n  function pickRarity(){\n    const r = Math.random() * 100;\n\n    if(r < 1){\n      return \"sar\";     \/\/ 1%\n    }else if(r < 6){\n      return \"sr\";      \/\/ 5%\n    }else if(r < 40){\n      return \"u\";       \/\/ 34%\n    }else{\n      return \"c\";       \/\/ 60%\n    }\n  }\n\n  function pickCard(rarity){\n    const pool = pools[rarity];\n    return pool[Math.floor(Math.random() * pool.length)];\n  }\n\n  function rarityName(rarity){\n    if(rarity === \"c\") return \"C\";\n    if(rarity === \"u\") return \"U\";\n    if(rarity === \"sr\") return \"SR\";\n    if(rarity === \"sar\") return \"SAR\";\n  }\n\n  function openPack(){\n    cards.innerHTML = \"\";\n    message.textContent = \"\u5f00\u5305\u4e2d...\";\n\n    pack.classList.remove(\"opening\");\n    void pack.offsetWidth;\n    pack.classList.add(\"opening\");\n\n    totalPacks++;\n\n    let hasSR = false;\n    let hasSAR = false;\n\n    setTimeout(function(){\n      for(let i = 0; i < 5; i++){\n        const rarity = pickRarity();\n        const card = pickCard(rarity);\n\n        totalCards++;\n\n        if(rarity === \"c\") countC++;\n        if(rarity === \"u\") countU++;\n        if(rarity === \"sr\"){\n          countSR++;\n          hasSR = true;\n        }\n        if(rarity === \"sar\"){\n          countSAR++;\n          hasSAR = true;\n        }\n\n        const div = document.createElement(\"div\");\n        div.className = \"card \" + rarity;\n        div.style.animationDelay = (i * 0.08) + \"s\";\n\n        div.innerHTML = `\n          <div class=\"emoji\">${card[1]}<\/div>\n          <div class=\"name\">${card[0]}<\/div>\n          <div class=\"rarity\">${rarityName(rarity)}<\/div>\n        `;\n\n        cards.appendChild(div);\n      }\n\n      if(hasSAR){\n        message.textContent = \"\ud83c\udf89 \u795e\u5305\uff01\u51fa\u4e86 SAR\uff01\";\n      }else if(hasSR){\n        message.textContent = \"\u2728 \u4e0d\u9519\uff01\u51fa\u4e86 SR\uff01\";\n      }else{\n        message.textContent = \"\u8fd9\u5305\u662f C \/ U\uff0c\u518d\u6765\u4e00\u5305\u8bd5\u8bd5\uff5e\";\n      }\n\n      renderStats();\n    }, 500);\n  }\n\n  function renderStats(){\n    stats.innerHTML = `\n      \u5df2\u5f00\u5305\uff1a<strong>${totalPacks}<\/strong> \u5305\uff5c\n      \u603b\u5361\u6570\uff1a<strong>${totalCards}<\/strong> \u5f20<br>\n      C\uff1a${countC}\uff5c\n      U\uff1a${countU}\uff5c\n      SR\uff1a${countSR}\uff5c\n      SAR\uff1a${countSAR}<br>\n      \u5f53\u524d\u7edf\u8ba1\u6982\u7387\uff1a\n      C <strong>${totalCards ? (countC \/ totalCards * 100).toFixed(2) : 0}%<\/strong>\uff5c\n      U <strong>${totalCards ? (countU \/ totalCards * 100).toFixed(2) : 0}%<\/strong>\uff5c\n      SR <strong>${totalCards ? (countSR \/ totalCards * 100).toFixed(2) : 0}%<\/strong>\uff5c\n      SAR <strong>${totalCards ? (countSAR \/ totalCards * 100).toFixed(2) : 0}%<\/strong>\n    `;\n  }\n\n  pack.onclick = openPack;\n  btn.onclick = openPack;\n  renderStats();\n\n});\n<\/script>\n\n<\/body>\n<\/html>\n","protected":false},"excerpt":{"rendered":"<p>\u6674\u5929PTCG \u5355\u5305\u6a21\u62df \u4e00\u6b21\u5f00 1 \u5305\uff0c\u6bcf\u5305 5 \u5f20\u5361 \u6674\u5929\u5305 \u5f00\u4e00\u5305\uff01<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":4,"comment_status":"closed","ping_status":"closed","template":"","meta":{"ngg_post_thumbnail":0,"footnotes":""},"class_list":["post-304","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/qingtianptcg.com\/index.php\/wp-json\/wp\/v2\/pages\/304","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/qingtianptcg.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/qingtianptcg.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/qingtianptcg.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/qingtianptcg.com\/index.php\/wp-json\/wp\/v2\/comments?post=304"}],"version-history":[{"count":7,"href":"https:\/\/qingtianptcg.com\/index.php\/wp-json\/wp\/v2\/pages\/304\/revisions"}],"predecessor-version":[{"id":311,"href":"https:\/\/qingtianptcg.com\/index.php\/wp-json\/wp\/v2\/pages\/304\/revisions\/311"}],"wp:attachment":[{"href":"https:\/\/qingtianptcg.com\/index.php\/wp-json\/wp\/v2\/media?parent=304"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}