1<!DOCTYPE html> 2<html lang="zh-CN"> 3 4<head> 5 <meta charset="UTF-8"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 7 <title>游æçæ¦ç计ç®å¨ - 天天åèç³çå·¥å ·ç®±</title> 8 <meta name="description" content="游æçæ¦ç计ç®å¨ - ä¸ä¸çå¡ç»æ¦çåæå·¥å ·ï¼æ¯æèªå®ä¹æ¡ä»¶å¤æï¼ç²¾ç¡®è®¡ç®å¯å¨çå䏿ççæ¦çã帮æ¨ä¼åå¡ç»æçã"> 9 <meta name="keywords" content="游æç, æ¦ç计ç®, å¡ç»å·¥å ·"> 10 <link rel="stylesheet" href="../../assets/css/styles.css"> 11 <link rel="stylesheet" href="../../assets/css/yu-gi-oh-probability-calculator.css"> 12 <!-- Google tag (gtag.js) -->
vendor: 68 bytes, lines 12-13
12 13 <script async src="https://www.googletagmanager.com/gtag/js?id=
13G-HYJXFSRHF5
vendor: 16 bytes, lines 13-14
13"></script> 14
14<script> 15
vendor: 155 bytes, lines 15-19
15window.dataLayer = window.dataLayer || []; 16 function gtag() { dataLayer.push(arguments); } 17 gtag('js', new Date()); 18 19 gtag('config', '
19G-HYJXFSRHF5
vendor: 8 bytes, lines 19-20
19'); 20
20</script>
20 21</head> 22 23<body> 24 <!-- é¡µå¤´ç± assets/js/site-chrome.js ç»ä¸æ³¨å ¥ --> 25 <site-header></site-header> 26 27 <main class="container"> 28 <h1>游æçæ¦ç计ç®å¨</h1> 29 30 <div class="card card--elevated"> 31 <!-- å¡ç»ç®¡ç --> 32 <div class="deck-management mb-1"> 33 <div class="form-group"> 34 <label for="deckList">éæ©å¡ç»</label> 35 <select id="deckList" class="form-control"> 36 <option value="">-- éæ©å¡ç» --</option> 37 </select> 38 </div> 39 <div class="form-group"> 40 <label for="deckName">å¡ç»åç§°</label> 41 <input type="text" id="deckName" class="form-control" placeholder="è¾å ¥å¡ç»åç§°"> 42 </div> 43 <div class="form-group deck-actions"> 44 <button onclick="saveDeck()" class="btn btn--success">ä¿å</button> 45 <button onclick="loadDeck()" class="btn btn--secondary">å è½½</button> 46 <button onclick="deleteDeck()" class="btn btn--danger">å é¤</button> 47 </div> 48 </div> 49 50 <div class="main-content"> 51 <!-- å¡çè¾å ¥ --> 52 <div class="card-input-section"> 53 <div class="flex align-center justify-space-between mb-2"> 54 <h2 class="mt-1 mb-0">å¡çè¾å ¥</h2> 55 <button id="importDeckBtn" type="button" class="btn btn--small btn--outline">å¯¼å ¥å¡ç»</button> 56 </div> 57 <div id="cardInputs" class="card-input-grid"> 58 <!-- éæå¡çè¾å ¥é¡¹ï¼èªå¨çæA-AZå ±52项 --> 59
59<script> 60 (function () { 61 const labels = []; 62 for (let i = 0; i < 52; i++) { 63 let label = ''; 64 if (i < 26) label = String.fromCharCode(65 + i) + 'ç±»å¡'; 65 else label = 'A' + String.fromCharCode(65 + i - 26) + 'ç±»å¡'; 66 document.write(` 67 <div class="form-group${i >= 26 ? ' hidden' : ''}"> 68 <label>${label}</label> 69 <input type="number" id="card${i}" placeholder="æ°é" min="0" class="form-control card-count" onchange="updateTotalDeck()"> 70 <input type="text" id="cardName${i}" class="form-control mt-1" placeholder="å¡å"> 71 </div> 72 `); 73 } 74 })(); 75 </script>
75 76 <!-- æ¾ç¤ºæ´å¤/æ¾ç¤ºæ´å°æé® --> 77 <div class="form-group flex flex--column gap-0"> 78 <label>æ¾ç¤ºæ´å°</label> 79 <button id="showLessCardsBtn" type="button" 80 class="btn btn--outline full-width full-height">â</button> 81 </div> 82 <div class="form-group flex flex--column gap-0"> 83 <label>æ¾ç¤ºæ´å¤</label> 84 <button id="showMoreCardsBtn" type="button" 85 class="btn btn--outline full-width full-height">â</button> 86 </div> 87 </div> 88 </div> 89 90 <!-- å³ä¾§åºå --> 91 <div class="right-section"> 92 <!-- 饼å¾å®¹å¨ --> 93 <div class="Pie-composition"> 94 <h2 class="mt-1 mb-2">å¡ç»ææ</h2> 95 <div class="chart-section"> 96 <canvas id="deckPieChart"></canvas> 97 </div> 98 </div> 99 100 <!-- æ½å¡è®¾ç½® --> 101 <div class="draw-settings"> 102 <h2 class="mt-1 mb-2">æ½å¡è®¾ç½®</h2> 103 <div class="draw-inputs"> 104 <div class="form-group"> 105 <label for="total">å¡ç»æ»æ°</label> 106 <input type="number" id="total" class="form-control" readonly> 107 </div> 108 <div class="form-group"> 109 <div class="flex gap-0 align-center"> 110 <label for="draws">æ½å¡æ°</label> 111 <label for="autoIncrementDraws"> 112 <input type="checkbox" id="autoIncrementDraws"> 计ç®å+ 113 </label> 114 <input id="incrementValue" class="form-control" value="1" min="0"> 115 </div> 116 <input type="number" id="draws" class="form-control" value="5" min="1"> 117 </div> 118 </div> 119 </div> 120 </div> 121 </div> 122 123 <!-- æ°å¸å±ï¼å·¦å³åæ å®¹å¨ --> 124 <div class="condition-results-container"> 125 <div class="condition-column"> 126 <!-- é»è¾å¤ææ¡ä»¶ --> 127 <h2 class="mt-1 mb-2">é»è¾å¤ææ¡ä»¶</h2> 128 <!-- åéæé®ç» --> 129 <div class="condition-mode"> 130 <label> 131 <input type="radio" name="conditionInputMode" value="manual" checked> 132 æå¨è¾å ¥ 133 </label> 134 <label> 135 <input type="radio" name="conditionInputMode" value="builder"> 136 æ¡ä»¶æå»ºå¨è¾å ¥ 137 </label> 138 </div> 139 <div class="form-group" id="manualConditionInput"> 140 <textarea id="condition" rows="3" placeholder="è¾å ¥é»è¾å¤ææ¡ä»¶ï¼ä¾å¦ï¼ 141a >= 1 // è³å°æ½å°1å¼ Aç±»å¡ 142 143(a >= 1 || b >= 1) && c == 0 // æ½å°AæBç±»å¡ä¸æ²¡æCç±»å¡ 144 145a + b >= 3 // AåBç±»å¡å计è³å°3å¼ 146 147ç°æµä¸½ >= 1 && 墿®çG >= 1 && æ¹æä¹æåè == 0 // 使ç¨èªå®çå¡åæ¥åè¡¨è¾¾å¼ 148 149PROB(50) && a >= 1 // 50%æ¦ç满足æ¡ä»¶ä¸è³å°æ½å°1å¼ Aç±»å¡ 150 151a + b >= 3 && PROB(64.59) // AåBç±»å¡å计è³å°3å¼ ï¼ä¸64.59%æ¦ç满足æ¡ä»¶"></textarea> 152 </div> 153 <!-- ç§»å¨ç«¯è¾å ¥è¯´æ --> 154 <div class="operator-help-mobile"> 155 <strong>è¾å ¥è¯´æï¼</strong><br> 156 <strong>
156è¿ç®ç¬¦ï¼ä¼å 级ä»é«å°ä½ï¼ï¼</strong> 157 <code>()</code> - æç¡®è¿ç®ä¼å 级ï¼<code>!</code> - é»è¾éï¼<code>*</code> - ä¹ï¼<code>/</code> - 158 é¤ï¼<code>%</code> - 159 忍¡ï¼<code>+</code> - å ï¼<code>-</code> - åï¼ 160 <strong>æ¯è¾è¿ç®ç¬¦ï¼</strong> 161 <code>></code> - 大äºï¼<code>>=</code> - 大äºçäºï¼<code><</code> - å°äºï¼<code><=</code> - 162 å°äºçäºï¼<code>==</code> - çäºï¼<code>!=</code> - ä¸çï¼<code>&&</code> - é»è¾ä¸ï¼<code>||</code> - é»è¾æï¼<br> 163 <strong>åéåï¼</strong> 164 <code>a</code>,<code>b</code>,<code>c</code>,...,<code>z</code>,<code>aa</code>,<code>ab</code>,...对åºAç±»å¡ï¼Bç±»å¡ï¼...,Zç±»å¡ï¼AAç±»å¡ï¼ABç±»å¡ï¼çç...ã<br> 165 <strong>èªå®ä¹å¡åï¼</strong> 166 å¯ä»¥ç´æ¥ä½¿ç¨æ¨è¾å ¥çèªå®å¡åä½ä¸ºåéåã计ç®å¨ä¼å¸®æ¨å°èªå®å¡åæ¿æ¢ä¸ºå¯¹åºçåéåï¼æä»¥èªå®å¡å建议é¿å 使ç¨å®¹ææ··æ·çåç§°ï¼å¦çº¯è±æåæ¯ãæ°åçï¼ã建议使ç¨çº¯ä¸æåã<br> 167 <strong>æ¦ç彿°åè½ï¼</strong> 168 <code>PROB(n)</code>表示n%çæ¦çæ»¡è¶³æ¡ä»¶ï¼næ¯0-100çä»»ææ°ãæ¤åè½å¯ä»¥ç¨æ¥æ¨¡æä¸äºå ·ææ¦çæ§çå¡çææï¼ä¾å¦ï¼<br> 169 - <code>PROB(50) && a >= 1</code> 表示ï¼50%æ¦ç满足ä¸è³å°1å¼ Aç±»å¡<br> 170 - <code>a + b >= 3 && PROB(34.68)</code> 表示ï¼A+Bç±»å¡â¥3å¼ ä¸34.68%æ¦ç满足<br> 171 精度说æï¼næ¯æ0-100çæ°å¼ãç²¾ç¡®è®¡ç®æ¶ç²¾åº¦æé«ä¸ºå°æ°ç¹å两ä½ï¼è®¡ç®æ¶èªå¨åèäºå ¥ï¼ï¼å¤ä¸ªé«ç²¾åº¦ç<code>PROB(n)</code>å并夿ä¼å¯¼è´ç²¾ç¡®è®¡ç®æ¶é¿ææ°çº§ä¸åãå¿«éä¼°ç®æ¶ä¼ä½¿ç¨å®é è¾å ¥çç¾åæ¯è¿è¡è®¡ç®ã<br> 172 <strong>注æäºé¡¹ï¼</strong> 173 卿¡ä»¶è¡¨è¾¾å¼ä¸ï¼<code>=</code>æ¯èµå¼è¿ç®ç¬¦ã妿æ¨è¦å¤æç¸çï¼è¯·ä½¿ç¨<code>==</code>æ<code>===</code>ãæ³¨æä¸è¦ä½¿ç¨ä¸ææ ç¹ç¬¦å·æ¥ä¹¦åè¿ç®ç¬¦ï¼ä¾å¦ä¸ææ¬å·ï¼ã<br> 174 - å½å¡ç§ç±»åæ½å¡æ°è¾é«æ¶ï¼è®¡ç®æ¶é´ä¼åææ°çº§ä¸åï¼æ¤æ¶æ¨è使ç¨å¿«éä¼°ç®ã 175 </div> 176 <!-- æ¡ä»¶æå»ºå¨åºå --> 177 <div id="builderConditionInput" class="form-group hidden"> 178 <div id="conditionBuilder"></div> 179 <!-- æ°å¢ï¼å®æ¶æ¾ç¤ºæå»ºå¨çæçæ¡ä»¶è¡¨è¾¾å¼ --> 180 <label class="mt-1 mb-1" for="builderConditionPreview"><strong>çæçé»è¾å¤ææ¡ä»¶ï¼</strong></label> 181 <textarea id="builderConditionPreview" rows="2" readonly></textarea> 182 </div> 183 </div> 184 <div class="calculation-column"> 185 <h2 class="mt-1 mb-2">è®¡ç®æä½</h2> 186 <!-- è®¡ç®æé®ç» --> 187 <div class="calculation-actions mt-2 mb-2"> 188 <button onclick="calculate()" class="btn btn--primary">精确计ç®</button> 189 <button onclick="monteCarloCalculate()" class="btn btn--secondary">å¿«éä¼°ç®</button> 190 <button onclick="cancelCalculation()" id="cancelBtn" 191 class="btn btn--danger hidden">åæ¶è®¡ç®</button> 192 </div> 193 <div class="calculation-actions mt-2 mb-2"> 194 <button onclick="exportCalculationRecords()" class="btn btn--outline">导åºè®°å½</button> 195 <button onclick="clearCalculationRecords()" class="btn btn--danger">å é¤è®°å½</button> 196 </div> 197 <!-- è¿åº¦æ¡ --> 198 <div id="progressContainer" class="progress-container"> 199 <div class="form-group"> 200 <label>计ç®è¿åº¦</label> 201 <progress id="calculationProgress" value="
2010" max="100"></progress> 202 <div id="progressText" class="text-center">çå¾ è®¡ç®...</div> 203 </div> 204 </div> 205 <!-- ç»æè¾åº --> 206 <div class="result-section"> 207 <h2 class="mt-1 mb-2">计ç®ç»æ</h2> 208 <div class="result-grid grid"> 209 <div class="form-group"> 210 <label for="probability">æ¦ç</label> 211 <input type="text" id="probability" class="form-control" readonly> 212 </div> 213 <div class="form-group"> 214 <label for="validCombinations">满足æ¡ä»¶ç»åæ°</label> 215 <input type="text" id="validCombinations" class="form-control" readonly> 216 </div> 217 <div class="form-group"> 218 <label for="totalCombinations">æ»ç»åæ°</label> 219 <input type="text" id="totalCombinations" class="form-control" readonly> 220 </div> 221 </div> 222 </div> 223 </div> 224 </div> 225 <!-- æ°å¢ï¼æ¡é¢ç«¯è¾å ¥è¯´æï¼æ¾ç¤ºå¨æ¡ä»¶ä¸è®¡ç®æä½/ç»æä¸é¢ --> 226 <div class="operator-help-desktop"> 227 <strong>è¾å ¥è¯´æï¼</strong><br> 228 <strong>è¿ç®ç¬¦ï¼ä¼å 级ä»é«å°ä½ï¼ï¼</strong> 229 <code>()</code> - æç¡®è¿ç®ä¼å 级ï¼<code>!</code> - é»è¾éï¼<code>*</code> - ä¹ï¼<code>/</code> - é¤ï¼<code>%</code> - 230 忍¡ï¼<code>+</code> - å ï¼<code>-</code> - åï¼ 231 <strong>æ¯è¾è¿ç®ç¬¦ï¼</strong> 232 <code>></code> - 大äºï¼<code>>=</code> - 大äºçäºï¼<code><</code> - å°äºï¼<code><=</code> - 233 å°äºçäºï¼<code>==</code> - çäºï¼<code>!=</code> - ä¸çï¼<code>&&</code> - é»è¾ä¸ï¼<code>||</code> - é»è¾æï¼<br> 234 <strong>åéåï¼</strong> 235 <code>a</code>,<code>b</code>,<code>c</code>,...,<code>z</code>,<code>aa</code>,<code>ab</code>,...对åºAç±»å¡ï¼Bç±»å¡ï¼...,Zç±»å¡ï¼AAç±»å¡ï¼ABç±»å¡ï¼çç...ã<br> 236 <strong>èªå®ä¹å¡åï¼</strong> 237 å¯ä»¥ç´æ¥ä½¿ç¨æ¨è¾å ¥çèªå®å¡åä½ä¸ºåéåã计ç®å¨ä¼å¸®æ¨å°èªå®å¡åæ¿æ¢ä¸ºå¯¹åºçåéåï¼æä»¥èªå®å¡å建议é¿å 使ç¨å®¹ææ··æ·çåç§°ï¼å¦çº¯è±æåæ¯ãæ°åçï¼ã建议使ç¨çº¯ä¸æåã<br> 238 <strong>æ¦ç彿°åè½ï¼</strong> 239 <code>PROB(n)</code>表示n%çæ¦çæ»¡è¶³æ¡ä»¶ï¼næ¯0-100çä»»ææ°ãæ¤åè½å¯ä»¥ç¨æ¥æ¨¡æä¸äºå ·ææ¦çæ§çå¡çææï¼ä¾å¦ï¼<br> 240 - <code>PROB(50) && a >= 1</code> 表示ï¼50%æ¦ç满足ä¸è³å°1å¼ Aç±»å¡<br> 241 - <code>a + b >= 3 && PROB(34.68)</code> 表示ï¼A+Bç±»å¡â¥3å¼ ä¸34.68%æ¦ç满足<br> 242 精度说æï¼næ¯æ0-100çæ°å¼ãç²¾ç¡®è®¡ç®æ¶ç²¾åº¦æé«ä¸ºå°æ°ç¹å两ä½ï¼è®¡ç®æ¶èªå¨åèäºå ¥ï¼ï¼å¤ä¸ªé«ç²¾åº¦ç<code>PROB(n)</code>å并夿ä¼å¯¼è´ç²¾ç¡®è®¡ç®æ¶é¿ææ°çº§ä¸åãå¿«éä¼°ç®æ¶ä¼ä½¿ç¨å®é è¾å ¥çç¾åæ¯è¿è¡è®¡ç®ã<br> 243 <strong>注æäºé¡¹ï¼</strong> 244 卿¡ä»¶è¡¨è¾¾å¼ä¸ï¼<code>=</code>æ¯èµå¼è¿ç®ç¬¦ã妿æ¨è¦å¤æç¸çï¼è¯·ä½¿ç¨<code>==</code>æ<code>===</code>ãæ³¨æä¸è¦ä½¿ç¨ä¸ææ ç¹ç¬¦å·æ¥ä¹¦åè¿ç®ç¬¦ï¼ä¾å¦ä¸ææ¬å·ï¼ã<br> 245 - å½å¡ç§ç±»åæ½å¡æ°è¾é«æ¶ï¼è®¡ç®æ¶é´ä¼åææ°çº§ä¸åï¼æ¤æ¶æ¨è使ç¨å¿«éä¼°ç®ã 246 </div> 247 <div class="source-info mb-1 mt-6"> 248 <div> 249 è¯¥å·¥å ·é¨å代ç ä¸æè·¯æ¥æºäº<a href="https://tieba.baidu.com/home/main?id=tb.1.700dbce0.kfzKa-FBDB-cm-gMSey3Yw" 250 target="_blank">@jyhyqw</a>å¨è´´å§<a href="https://tieba.baidu.com/p/5516965391" 251 target="_blank">ä¸ä½å¡ç»å§åå¸</a>åå¸ç<a href="æ¦ç计ç®å¨æ¹.zip" 252 target="_blank">游æçæ¦ç计ç®å¨</a>ãæ¡ä»¶æå»ºå¨çå®ç°åèäºx6udç<a href="https://gitee.com/x6ud/ygo-draw-simulator" 253 target="_blank">游æçä¸æçæµè¯å¨</a>ã<br> 254 </div> 255 <div>å¡çæ°æ®ç±ç¾é¸½(ygocdb.com)APIæä¾ï¼ç¹æ¤æè°¢ã<br></div> 256 <div>ä¸è½½ä½¿ç¨æ¬å·¥å ·ç<a 257 href="../../tools/yu-gi-oh-probability-calculator/游æçæ¦ç计ç®å¨ - æ¬å°ç - 2026-01-15.zip">æ¬å°ç</a>ã 258 </div> 259 <div><a href="https://www.bilibili.com/video/BV1Gqjpz5Eyp/">æç¨è§é¢</a>ã 260 </div> 261 </div> 262 </div> 263 264 <!-- 计ç®åå²è®°å½åºå --> 265 <div class="card card--elevated hidden" id="historyTable"> 266 <div class="history-container"> 267 <!-- æ¦çæçº¿å¾ --> 268 <div class="history-chart"> 269 <h2 class="mt-1 mb-2">å岿¦çåå</h2> 270 <div class="history-chart-section">
271 <canvas id="historyLineChart"></canvas> 272 </div> 273 </div> 274 </div> 275 </div> 276 277 <!-- 计ç®åå²è®°å½æ§å¶æé® --> 278 <div class="form-group flex flex--column gap-0"> 279 <button id="showHistoryBtn" type="button" class="btn btn--outline full-width full-height">æ¾ç¤ºåå²è®°å½</button> 280 <button id="hideHistoryBtn" type="button" 281 class="btn btn--outline full-width full-height hidden">éèåå²è®°å½</button> 282 </div> 283 284 <!-- å·¥å ·å¡çåºå --> 285 <div class="grid grid-2 mt-5"> 286 <div class="card card--elevated"> 287 <div class="flex--column flex full-height"> 288 <h2 class="mt-0">æ¦ç对æè®¡ç®å¨</h2> 289 <div> 290 <div> 291 <label for="positiveProb">æ£æ¹æåç(%)</label> 292 <input type="number" id="positiveProb" class="" min="0" max="100" step="0.1" 293 placeholder="è¾å ¥æ£æ¹æåç"> 294 </div> 295 <div> 296 <label for="negativeProb">åæ¹æåç(%)</label> 297 <input type="number" id="negativeProb" class="" min="0" max="100" step="0.1" 298 placeholder="è¾å ¥åæ¹æåç"> 299 </div> 300 </div> 301 <div> 302 <div class="probability-grid"> 303 <div class="probability probability-header">å¹¶ä¸</div> 304 <div class="probability probability-header">æ£æ¹æå</div> 305 <div class="probability probability-header">æ£æ¹å¤±è´¥</div> 306 307 <div class="probability probability-header">åæ¹æå</div> 308 <div class="probability probability-cell" id="bothSuccess">0%</div> 309 <div class="probability probability-cell" id="negativeSuccess">0%</div> 310 311 <div class="probability probability-header">åæ¹å¤±è´¥</div> 312 <div class="probability probability-cell" id="positiveSuccess">0%</div> 313 <div class="probability probability-cell" id="bothFail">0%</div> 314 </div> 315 </div> 316 </div> 317 </div> 318 <div class="card card--elevated"> 319 <div class="flex--column flex full-height"> 320 <h2 class="mt-0">å®é ç»åçæå¨</h2> 321 <div class="flex flex--column"> 322 <div class="condition-mode"> 323 <label> 324 <input type="radio" name="combinationType" value="valid" checked> 325 ç¬¦åæ¡ä»¶çç»å 326 </label> 327 <label> 328 <input type="radio" name="combinationType" value="invalid"> 329 ä¸ç¬¦åæ¡ä»¶çç»å 330 </label> 331 </div> 332 <div class="condition-mode"> 333 <label for="combinationCount">çææ°é</label> 334 <input type="number" id="combinationCount" class="form-control auto-width" min="1" 335 value="10"> 336 </div> 337 <button class="btn btn--primary" onclick="generateCombinations()">çæç»å</button> 338 </div> 339 <div class="form-group"> 340 <label for="combinationResults">ç»æ</label> 341 <textarea id="combinationResults" class="form-control" rows="8" readonly></textarea> 342 </div> 343 </div> 344 </div> 345 </div> 346 </main> 347 348 <!-- 页èç± assets/js/site-chrome.js ç»ä¸æ³¨å ¥ --> 349 <site-footer></site-footer> 350 351 <!-- å¯¼å ¥å¡ç»æ¨¡æçªå£ --> 352 <div id="importDeckModal" class="modal hidden"> 353 <div class="modal-content"> 354 <div class="modal-header"> 355 <h3 class="modal-title">å¯¼å ¥å¡ç»</h3> 356 <button type="button" class="modal-close" id="closeImportModalBtn">×</button> 357 </div> 358 <div class="modal-body"> 359 <div class="form-group"> 360 <label>å¯¼å ¥æ¹å¼</label> 361 <div class="condition-mode"> 362 <label> 363 <input type="radio" name="importMethod" value="file" checked> 364 éæ©.ydkæä»¶ 365 </label> 366 <label> 367 <input type="radio" name="importMethod" value="text"> 368 è¾å ¥ydkææ¬ 369 </label> 370 </div> 371 </div> 372 373 <div id="fileImportSection" class="import-section"> 374 <div class="form-group"> 375 <label for="ydkFile">éæ©.ydkæä»¶</label> 376 <input type="file" id="ydkFile" accept=".ydk" class="form-control"> 377 </div> 378 <div class="form-group"> 379 <label for="filePreview">æä»¶é¢è§</label> 380 <textarea id="filePreview" class="form-control" rows="5" readonly 381 placeholder="éæ©æä»¶åæ¾ç¤ºå 容..."></textarea> 382 </div> 383 </div> 384 385 <div id="textImportSection" class="import-section hidden"> 386 <div class="form-group"> 387 <label for="ydkText">è¾å ¥.ydkæ ¼å¼ææ¬</label> 388 <textarea id="ydkText" class="form-control" rows="10" placeholder="ç²è´´.ydkæä»¶å 容ï¼ä¾å¦ï¼ 389#main 39028306253 39165681983 39245171524 393..."></textarea> 394 </div> 395 </div> 396 397 <div class="form-group"> 398 <label for="importStatus">å¯¼å ¥ç¶æ</label> 399 <textarea id="importStatus" class="form-control" rows="3" readonly placeholder="çå¾ å¯¼å ¥..."></textarea> 400 </div> 401 </div> 402 <div class="modal-footer"> 403 <button type="button" class="btn btn--secondary" id="cancelImportBtn">åæ¶</button> 404 <button type="button" class="btn btn--primary" id="importBtn">å¯¼å ¥</button> 405 </div> 406 </div> 407 </div> 408 409 <!-- 游æçæ¦ç计ç®å¨å模å --> 410 <!-- Chart.js æ¹ä¸ºåæ¥å è½½ï¼ä½äºä¸å¡èæ¬ä¹åï¼ï¼é¿å async ç«æå¯¼è´ Chart is not defined --> 411
411<script src="../../assets/js/chart.umd.min.js"></script>
411 412
412<script src="../../assets/js/ui-utils.js"></script>
412 413
413<script src="../../assets/js/data-manager.js"></script>
413 414
414<script src="../../assets/js/condition-builder.js"></script>
414 415
415<script src="../../assets/js/calculation-engine.js"></script>
415 416
416<script src="../../assets/js/probability-adversary-calculator.js"></script>
416 417 <!-- å¡ç»å¯¼å ¥æ¨¡å --> 418
418<script src="../../assets/js/deck-importer.js"></script>
418 419 <!-- 游æçæ¦ç计ç®å¨ä¸»æ¨¡å --> 420
420<script src="../../assets/js/yu-gi-oh-probability-calculator.js"></script>
420 421 422 <!-- å®é ç»åçæå¨ --> 423
423<script src="../../assets/js/combination-generator.js"></script>
423 424 425 <!-- ç«ç¹å ±äº«é¡µå¤´/é¡µèæ³¨å ¥ --> 426
426<script src="../../assets/js/site-chrome.js"></script>
426 427
428<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"853ec85d76f94cf48e60241243558d48","r":1,"spa":2}' crossorigin="anonymous"></script>
428 429</body> 430 431</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.