{"id":35187,"date":"2025-12-03T16:38:03","date_gmt":"2025-12-03T08:38:03","guid":{"rendered":"https:\/\/18r.shixinote.com\/?p=35187"},"modified":"2025-12-10T11:03:57","modified_gmt":"2025-12-10T03:03:57","slug":"%e6%99%b6%e7%89%87","status":"publish","type":"post","link":"https:\/\/18r.shixinote.com\/?p=35187","title":{"rendered":"\u96f6\u59cb\u4e4b\u9580\uff5c\u6676\u7247\u5347\u7d1a\u8a08\u7b97\u6a5f"},"content":{"rendered":"<div id=\"chip-exp-calculator\">\r\n\r\n  <!-- \u6676\u7247\u7a2e\u985e\u6309\u9215\u5217 -->\r\n<div class=\"chip-type-buttons\">\r\n  <button type=\"button\" class=\"chip-type-btn attack-btn active\" data-type=\"attack\">\r\n    \u5f37\u5316\u578b\u6676\u7247\uff08\u653b\u64ca\uff09\r\n  <\/button>\r\n  <button type=\"button\" class=\"chip-type-btn defense-btn\" data-type=\"defense\">\r\n    \u9632\u79a6\u578b\u6676\u7247\uff08\u9632\u79a6\uff09\r\n  <\/button>\r\n  <button type=\"button\" class=\"chip-type-btn hp-btn\" data-type=\"hp\">\r\n    \u589e\u5f37\u578b\u6676\u7247\uff08\u751f\u547d\uff09\r\n  <\/button>\r\n<\/div>\r\n\r\n\r\n  <!-- \u7b49\u7d1a\u8f38\u5165 -->\r\n  <div class=\"input-group\">\r\n    <label for=\"current-level\">\u76ee\u524d\u7b49\u7d1a<\/label>\r\n    <input type=\"number\" id=\"current-level\" min=\"1\" max=\"15\" value=\"1\">\r\n  <\/div>\r\n\r\n  <div class=\"input-group\">\r\n    <label for=\"target-level\">\u76ee\u6a19\u7b49\u7d1a<\/label>\r\n    <input type=\"number\" id=\"target-level\" min=\"2\" max=\"15\" value=\"2\">\r\n  <\/div>\r\n\r\n  <!-- \u6309\u9215\u7f6e\u4e2d -->\r\n  <div class=\"btn-center\">\r\n    <button id=\"calculate-btn\">\u958b\u59cb\u8a08\u7b97<\/button>\r\n  <\/div>\r\n\r\n  <!-- \u7d50\u679c\u5340 -->\r\n  <div id=\"result-area\" style=\"display:none;\">\r\n    <h3>\u8a08\u7b97\u7d50\u679c<\/h3>\r\n    <p id=\"total-exp\"><\/p>\r\n    <p id=\"memory-needed\"><\/p>\r\n    <p id=\"coin-cost\"><\/p>\r\n    <p id=\"stat-gain\"><\/p>\r\n    <p id=\"efficiency\"><\/p>\r\n    <p id=\"unlock-passive\"><\/p>\r\n  <\/div>\r\n<\/div>\r\n\r\n<style>\r\n  \/* \u6574\u9ad4\u5bb9\u5668 *\/\r\n  #chip-exp-calculator {\r\n    max-width: 500px;\r\n    width: 100%;\r\n    margin: 1.5rem auto;\r\n    padding: 1rem;\r\n    border: 1px solid #ccc;\r\n    border-radius: 8px;\r\n    box-sizing: border-box;\r\n  }\r\n\r\n  .input-group {\r\n    margin-bottom: 12px;\r\n  }\r\n\r\n  .input-group label {\r\n    display: block;\r\n    margin-bottom: 4px;\r\n  }\r\n\r\n  .input-group input {\r\n    width: 100%;\r\n    padding: 6px;\r\n    box-sizing: border-box;\r\n  }\r\n\r\n  \/* \u6676\u7247\u7a2e\u985e\u6309\u9215\u5217\uff1a\u4e09\u500b\u5e73\u5747\u5bec\u5ea6\u4e26\u6392 *\/\r\n.chip-type-buttons {\r\n  display: flex;\r\n  gap: 8px;\r\n  margin-bottom: 16px;\r\n}\r\n\r\n.chip-type-btn {\r\n  flex: 1;\r\n  padding: 8px 6px;\r\n  cursor: pointer;\r\n  border-radius: 6px;\r\n  font-size: 0.9rem;\r\n  color: #fff;\r\n  border: none;\r\n  font-weight: 500;\r\n  transition: 0.15s ease;\r\n}\r\n\/* \u984f\u8272\uff1a\u653b\u64ca\uff1d\u7d05\u3001\u9632\u79a6\uff1d\u85cd\u3001\u751f\u547d\uff1d\u7da0 *\/\r\n.attack-btn { background: #d9534f; }   \/* bootstrap \u98a8\u7d05\u8272 *\/\r\n.defense-btn { background: #0275d8; }  \/* \u4eae\u85cd\u8272 *\/\r\n.hp-btn { background: #5cb85c; }       \/* \u660e\u4eae\u7da0\u8272 *\/\r\n\r\n\/* hover \u6548\u679c *\/\r\n.attack-btn:hover { background: #c9302c; }\r\n.defense-btn:hover { background: #025aa5; }\r\n.hp-btn:hover { background: #449d44; }\r\n\r\n\/* active\uff08\u9078\u53d6\u4e2d\uff09\u6309\u9215\uff1a\u7a0d\u5fae\u8b8a\u6df1\uff0b\u52a0\u7c97 *\/\r\n.chip-type-btn.active {\r\n  filter: brightness(0.85);\r\n  font-weight: 700;\r\n}\r\n\r\n\r\n  .btn-center {\r\n    text-align: center;\r\n    margin-top: 8px;\r\n  }\r\n\r\n  #calculate-btn {\r\n    padding: 8px 16px;\r\n    cursor: pointer;\r\n  }\r\n\r\n  #result-area p {\r\n    margin: 4px 0;\r\n  }\r\n\r\n  \/* \u624b\u6a5f\u97ff\u61c9\u5f0f\uff1a\u4e3b\u6309\u9215\u5168\u5bec\uff0c\u6676\u7247\u6309\u9215\u5728\u7a84\u87a2\u5e55\u7dad\u6301\u4e26\u6392\u4f46\u6703\u81ea\u52d5\u63db\u884c *\/\r\n  @media (max-width: 480px) {\r\n    #calculate-btn {\r\n      width: 100%;\r\n    }\r\n    .chip-type-btn {\r\n      font-size: 0.85rem;\r\n      padding: 6px 4px;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n<script>\r\n  \/\/ ===========================\r\n  \/\/ \u5404\u7b49\u7d1a\u5347\u7d1a\u6240\u9700 EXP\r\n  \/\/ ===========================\r\n  const expTable = {\r\n    2: 2068,\r\n    3: 2482,\r\n    4: 2896,\r\n    5: 3309,\r\n    6: 3723,\r\n    7: 6205,\r\n    8: 6619,\r\n    9: 7033,\r\n    10: 7446,\r\n    11: 20684,\r\n    12: 24821,\r\n    13: 28958,\r\n    14: 33094,\r\n    15: 37231\r\n  };\r\n\r\n  \/\/ ===========================\r\n  \/\/ \u4e09\u7a2e\u6676\u7247\u5c6c\u6027\u8868\r\n  \/\/ ===========================\r\n  const attackTable = {\r\n    1: 10,  2: 12,  3: 16,  4: 20,  5: 26,\r\n    6: 33,  7: 41,  8: 51,  9: 61,  10: 73,\r\n    11: 86, 12: 100, 13: 116, 14: 132, 15: 150\r\n  };\r\n\r\n  const defenseTable = {\r\n    1: 2,  2: 3,  3: 4,  4: 5,  5: 6,\r\n    6: 7,  7: 9,  8: 11, 9: 13, 10: 15,\r\n    11: 18, 12: 22, 13: 27, 14: 32, 15: 37\r\n  };\r\n\r\n  const hpTable = {\r\n    1: 57,  2: 69,  3: 86,  4: 110, 5: 139,\r\n    6: 174, 7: 215, 8: 262, 9: 314, 10: 373,\r\n    11: 437, 12: 508, 13: 584, 14: 666, 15: 754\r\n  };\r\n\r\n  const statTables = {\r\n    attack: { label: \"\u653b\u64ca\u529b\", table: attackTable },\r\n    defense: { label: \"\u9632\u79a6\u529b\", table: defenseTable },\r\n    hp: { label: \"\u751f\u547d\u503c\", table: hpTable }\r\n  };\r\n\r\n  \/\/ \u5168\u90e8\u4f7f\u7528\u9ad8\u7d1a\u8a18\u61b6\u9ad4 EXP 50\r\n  const MEMORY_50 = 50;\r\n\r\n  \/\/ ===========================\r\n  \/\/ \u6676\u7247\u7a2e\u985e\u6309\u9215\u5207\u63db\r\n  \/\/ ===========================\r\n  let selectedChipType = \"attack\"; \/\/ \u9810\u8a2d\u5f37\u5316\u578b\r\n\r\n  const chipButtons = document.querySelectorAll(\".chip-type-btn\");\r\n  chipButtons.forEach(function (btn) {\r\n    btn.addEventListener(\"click\", function () {\r\n      \/\/ \u79fb\u9664\u5176\u4ed6\u6309\u9215\u7684 active \u6a23\u5f0f\r\n      chipButtons.forEach(b => b.classList.remove(\"active\"));\r\n      \/\/ \u8a2d\u5b9a\u76ee\u524d\u6309\u9215\u70ba active\r\n      btn.classList.add(\"active\");\r\n      \/\/ \u66f4\u65b0\u9078\u64c7\u7684\u7a2e\u985e\r\n      selectedChipType = btn.getAttribute(\"data-type\");\r\n    });\r\n  });\r\n\r\n  \/\/ ===========================\r\n  \/\/ \u4e3b\u8a08\u7b97\u6d41\u7a0b\r\n  \/\/ ===========================\r\n  document.getElementById(\"calculate-btn\").addEventListener(\"click\", function () {\r\n    const statInfo = statTables[selectedChipType];\r\n    const statLabel = statInfo.label;\r\n    const table = statInfo.table;\r\n\r\n    const current = parseInt(document.getElementById(\"current-level\").value, 10);\r\n    const target = parseInt(document.getElementById(\"target-level\").value, 10);\r\n\r\n    if (isNaN(current) || isNaN(target)) {\r\n      alert(\"\u8acb\u8f38\u5165\u6b63\u78ba\u7684\u7b49\u7d1a\u6578\u5b57\u3002\");\r\n      return;\r\n    }\r\n    if (current < 1 || current > 15 || target < 1 || target > 15) {\r\n      alert(\"\u7b49\u7d1a\u7bc4\u570d\u70ba 1\uff5e15\u3002\");\r\n      return;\r\n    }\r\n    if (target <= current) {\r\n      alert(\"\u76ee\u6a19\u7b49\u7d1a\u5fc5\u9808\u9ad8\u65bc\u76ee\u524d\u7b49\u7d1a\u3002\");\r\n      return;\r\n    }\r\n\r\n    \/\/ 1. \u8a08\u7b97\u7e3d EXP\r\n    let totalExp = 0;\r\n    for (let lv = current + 1; lv <= target; lv++) {\r\n      totalExp += expTable[lv];\r\n    }\r\n\r\n    \/\/ 2. \u5168\u7528\u9ad8\u7d1a\u8a18\u61b6\u9ad4\uff08EXP 50\uff09\r\n    const need50 = Math.ceil(totalExp \/ MEMORY_50);\r\n    const coinCost = need50 * MEMORY_50 * 6;\r\n\r\n    \/\/ 3. \u8a72\u5c6c\u6027\u63d0\u5347\u91cf\r\n    const currentStat = table[current];\r\n    const targetStat = table[target];\r\n    const statIncrease = targetStat - currentStat;\r\n\r\n    \/\/ \u5347\u7d1a\u6548\u7387\uff1a\u6bcf 1 \u9ede\u5c6c\u6027\u82b1\u8cbb\u591a\u5c11\u786c\u5e63\uff08\u8981\u6709\u5343\u5206\u4f4d\uff09\r\n    let efficiencyText;\r\n    if (statIncrease > 0) {\r\n      const coinPerStat = coinCost \/ statIncrease; \/\/ \u53ef\u80fd\u6709\u5c0f\u6578\r\n      const coinPerStatFormatted = Number(coinPerStat.toFixed(2)).toLocaleString();\r\n      efficiencyText =\r\n        \"\u5347\u7d1a\u6548\u7387\uff1a\u6bcf 1 \u9ede\" + statLabel + \" \u7d04\u82b1\u8cbb \" +\r\n        coinPerStatFormatted + \" \u786c\u5e63\";\r\n    } else {\r\n      efficiencyText = \"\u5347\u7d1a\u6548\u7387\uff1a\u672c\u6b21\u5347\u7d1a \" + statLabel + \" \u7121\u8b8a\u5316\u3002\";\r\n    }\r\n\r\n    \/\/ 4. \u6f5b\u80fd\u89e3\u9396\r\n    const unlockedLevels = [];\r\n    if (current < 5 && target >= 5) unlockedLevels.push(\"LV5\");\r\n    if (current < 10 && target >= 10) unlockedLevels.push(\"LV10\");\r\n    if (current < 15 && target >= 15) unlockedLevels.push(\"LV15\");\r\n\r\n    const passiveMsg =\r\n      unlockedLevels.length > 0\r\n        ? \"\u6f5b\u80fd\u89e3\u9396\uff1a\" + unlockedLevels.join(\"\u3001\")\r\n        : \"\u6f5b\u80fd\u89e3\u9396\uff1a\u2014\";\r\n\r\n    \/\/ 5. \u986f\u793a\u7d50\u679c\uff08\u5168\u90e8\u5343\u5206\u4f4d\uff09\r\n    document.getElementById(\"total-exp\").textContent =\r\n      \"\u7e3d\u5171\u9700\u8981 EXP\uff1a\" + totalExp.toLocaleString();\r\n\r\n    document.getElementById(\"memory-needed\").textContent =\r\n      \"\u9700\u8981\u9ad8\u7d1a\u8a18\u61b6\u9ad4\uff08EXP 50\uff09\uff1a\" +\r\n      need50.toLocaleString() + \" \u500b\";\r\n\r\n    document.getElementById(\"coin-cost\").textContent =\r\n      \"\u9700\u8981\u786c\u5e63\uff1a\" + coinCost.toLocaleString();\r\n\r\n    document.getElementById(\"stat-gain\").textContent =\r\n      statLabel + \" \u63d0\u5347\uff1a\" +\r\n      statIncrease.toLocaleString() +\r\n      \"\uff08\u5f9e \" +\r\n      currentStat.toLocaleString() +\r\n      \" \u2192 \" +\r\n      targetStat.toLocaleString() +\r\n      \"\uff09\";\r\n\r\n    document.getElementById(\"efficiency\").textContent = efficiencyText;\r\n    document.getElementById(\"unlock-passive\").textContent = passiveMsg;\r\n\r\n    document.getElementById(\"result-area\").style.display = \"block\";\r\n  });\r\n<\/script>\r\n\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":30362,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[85],"tags":[],"class_list":["post-35187","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-85"],"blocksy_meta":[],"jetpack_featured_media_url":"https:\/\/18r.shixinote.com\/wp-content\/uploads\/2024\/07\/pexels-photo-7054399-1.jpeg","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/18r.shixinote.com\/index.php?rest_route=\/wp\/v2\/posts\/35187","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/18r.shixinote.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/18r.shixinote.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/18r.shixinote.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/18r.shixinote.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=35187"}],"version-history":[{"count":3,"href":"https:\/\/18r.shixinote.com\/index.php?rest_route=\/wp\/v2\/posts\/35187\/revisions"}],"predecessor-version":[{"id":35217,"href":"https:\/\/18r.shixinote.com\/index.php?rest_route=\/wp\/v2\/posts\/35187\/revisions\/35217"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/18r.shixinote.com\/index.php?rest_route=\/wp\/v2\/media\/30362"}],"wp:attachment":[{"href":"https:\/\/18r.shixinote.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=35187"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/18r.shixinote.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=35187"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/18r.shixinote.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=35187"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}