Alienware Arena 贈品密鑰檢查器

在頁面左上角產生一個按鈕,以查看可用的國家/地區和剩餘的密鑰。

安裝腳本?
作者推薦腳本

您可能也會喜歡 AWA 神器裝備計時器

安裝腳本
  1. // ==UserScript==
  2. // @name Alienware Arena Giveaway Keys Checker
  3. // @name:ja Alienware Arena ギブアウェイキー チェッカー
  4. // @name:zh-CN Alienware Arena 赠品密钥检查器
  5. // @name:zh-TW Alienware Arena 贈品密鑰檢查器
  6. // @license GPL-3.0
  7. // @namespace https://twitch.tv/kikka1225
  8. // @version 1.9.3
  9. // @description Generate a button in the top left corner of the page to check the available country and remaining keys.
  10. // @description:ja ページの左上に、利用可能な国と残りのキーを確認するためのボタンを生成します。
  11. // @description:zh-CN 在页面左上角生成一个按钮,用于检查可用的国家/地区和剩余密钥。
  12. // @description:zh-TW 在頁面左上角產生一個按鈕,以查看可用的國家/地區和剩餘的密鑰。
  13. // @author Saulios & Misha
  14. // @match *://*.alienwarearena.com/ucf/show/*/Giveaway/*
  15. // @match *://*.alienwarearena.com/ucf/Giveaway
  16. // @icon data:image/webp;base64,UklGRmQEAABXRUJQVlA4IFgEAAAQFgCdASpaAFoAPm0ylkekIqIspHZrmZANiWQAv2xWECfK/kz+QHYQdI+Fej7tHnS+KX0ivMB5zvSAf0n/M9ZL6AHSsft56QDyNDWoZ2ZX44vpL2DP1o6ID2VSftZa4e9NF9BFIYpv7LM/gdaKHEIXpwhQxskxDiNaqk+1LrzGK+JK5ODt6WEJK6iiMBCTDygJsQtOBAsNO9+0UgbiNCKwer1RWr/7G1JQmreJlJNdg5hiI3VW8HKeAAD+ubJ7JuE2f/UGFOZFFj//EMShCERN2Z28b8ofZ34CKzIJVgbOrRmLp//nHpHjhAmBAOnVDZ/yfRD/t1ZwzDerm+r1RPkQzXNnXBMwt64Q5Mjz4GVcZF8be2A3gc7WOmZkJDRdSgMHAJ1L1VHBWKupG1uH+biA7g9nrXu2jd9JPF1FRShz46dXB13FQtcs4RRePGaU0vgJC/D/o252tWPE2S1F0GI6Ux7dr4XkSLrHoGOxei0zWMBXDfheSpB01f5xge2fTdEl/0TveavbTUnsSxXzLLIMB2Hwd7P+LDTab/XdufQKdkUJn2sLhIHddWgxpt1gDbAQ8bXm/ZlQiAsAc/OWkj2SfzhL+4zogOIcbrEr2LVGPgYsnPSupzIF3N4MNujbvGAq6/LgG6Dh+6voPM0cD/8ci/38Hw9IY0/eC8h3XfWm9xgmBYoiWuzQ2Pt1/pEJnLxEqUupdPWTlOG9wyZ4rSWhHM1l6eOcEUG7FxO7MVsTWzcfH6EdeNiy8Rk/S/DbdTa/CHJqTKlPdxNvI1XBTs7j4ArulK0CUPuLl8ospJ2Xr/TCfbzPXdF68QtYheYsLtSQTNNWgMq4dm6w4VBFM+j0BppbmsH/X8aN184PTe2c5OnqYmyoxeqS4MD5LVfss0k93wN6VIQ/s5hzCcdj+NDvZB/6MCkcyAwz6awMBNGyfz7UVxOv5IWB4i4/aj5VTxMMCX++8kcFOv0eP0X25jTTfm0beAlqkjxcVsxc5a7GuCPMWut6Wz9jqk0i9/zn5/sRBaZeXNV6I6Z7DDjKR+p4+5t/6iz9Rd3J7vztncuRkjledVSnUI5XJcGvT2U0p+Zm2NEzdFn3BQNtENIbgYnLeQu/vKqX8nuQoP8rQODSopxfiocdfFLKgy/97ykCNM7HyYdmGvThhBDR68JutTs1h3K+6qIyKtAxGQMCAwom+HmzAKr6ooYdi80m69kp85TP6tnLTnyDw+mqnIRWDwSs5axLCJLt/rr3/lcRw1mjFC2BwMya4+IJKWeNQk8P9FE8IL48RP/iwN1nF+v9De7fyf+hnje4cwq/L/zkw4vY0WlfZC36ofPLm9+qChJfiTbzrU+KbTHqYFRGQAHxLRT59CURVc0dRaw1zw+KpcVLk01/jz70wZ6a0V4v8YPOUKRDF9s5l0HD36/kyHYojf2KrN++/qgF3wdSp4WUojZOFTqOdxXThPjKAPOqPH6IcJR0WOf2+bAAAA==
  17. // @grant none
  18. // @run-at document-idle
  19. // @supportURL https://github.com/Mishasama/UserScript/issues
  20. // @homepageURL https://github.com/Mishasama/UserScript/tree/master/Misha's%20US/AWA%20GA%20Keys%20Checker/
  21. // @contributionURL https://ko-fi.com/mishasama
  22. // @contributionAmount 1¥
  23. // @compatible Chrome
  24. // @compatible Edge
  25. // @compatible Firefox
  26. // ==/UserScript==
  27.  
  28. (function() {
  29. 'use strict';
  30.  
  31. // ボタンのテキストを設定する関数
  32. function getButtonText() {
  33. const lang = navigator.language || navigator.userLanguage;
  34. switch (lang) {
  35. case 'ja':
  36. return '残りのキーを確認';
  37. case 'zh-CN':
  38. return '检查剩余密钥';
  39. case 'zh-TW':
  40. return '檢查剩餘密鑰';
  41. default:
  42. return 'Check Keys';
  43. }
  44. }
  45.  
  46. // メッセージのテキストを設定する関数
  47. function getMessageText(type) {
  48. const lang = navigator.language || navigator.userLanguage;
  49. const messages = {
  50. 'withKeys': {
  51. 'ja': 'キーがある国:',
  52. 'zh-CN': '有密钥的国家:',
  53. 'zh-TW': '有密鑰的國家:',
  54. 'en': 'Countries with keys:'
  55. },
  56. 'withoutKeys': {
  57. 'ja': 'キーがない国:',
  58. 'zh-CN': '没有密钥的国家:',
  59. 'zh-TW': '沒有密鑰的國家:',
  60. 'en': 'Countries without keys:'
  61. },
  62. 'allOut': {
  63. 'ja': 'すべて終了!このギブアウェイにはもうキーが残っていません!',
  64. 'zh-CN': '全部派完了!本次赠送活动中的密钥被抢光了!',
  65. 'zh-TW': '全部發完了!本次贈送活動中的密鑰壹個都不剩了!',
  66. 'en': 'All out! There are no more keys left in this giveaway!'
  67. },
  68. 'everyCountry': {
  69. 'ja': 'すべての国にキーがあります!',
  70. 'zh-CN': '所有的国家都有密钥!',
  71. 'zh-TW': '每個國家都有密鑰!',
  72. 'en': 'Every country has keys available!'
  73. },
  74. 'keyAvailability': {
  75. 'ja': 'キー在庫状況:',
  76. 'zh-CN': '密钥库存情况:',
  77. 'zh-TW': '密鑰庫存狀況:',
  78. 'en': 'Key Availability:'
  79. }
  80. };
  81. return messages[type][lang] || messages[type]['en'];
  82. }
  83.  
  84. // ボタンを作成してスタイルを設定
  85. const button = document.createElement('button');
  86. button.textContent = getButtonText();
  87. button.style.position = 'fixed';
  88. button.style.top = '100px';
  89. button.style.left = '100px';
  90. button.style.padding = '10px 20px';
  91. button.style.backgroundColor = '#007bff';
  92. button.style.color = '#fff';
  93. button.style.border = 'none';
  94. button.style.borderRadius = '5px';
  95. button.style.cursor = 'pointer';
  96. button.style.zIndex = '1000';
  97. button.style.whiteSpace = 'pre-wrap'; // 多行表示のサポート
  98.  
  99. // 閉じるボタンを作成してスタイルを設定
  100. const closeButton = document.createElement('button');
  101. closeButton.textContent = '×';
  102. closeButton.style.position = 'fixed';
  103. closeButton.style.top = '100px';
  104. closeButton.style.left = `calc(${button.style.left} - 30px)`; // メインボタンの左側
  105. closeButton.style.padding = '10px';
  106. closeButton.style.backgroundColor = '#dc3545';
  107. closeButton.style.color = '#fff';
  108. closeButton.style.border = 'none';
  109. closeButton.style.borderRadius = '5px';
  110. closeButton.style.cursor = 'pointer';
  111. closeButton.style.zIndex = '1000';
  112.  
  113. // ボタンをクリックしたときに実行する関数
  114. let originalText = getButtonText();
  115. button.onclick = function() {
  116. if (button.textContent === originalText) {
  117. var country_with_keys = [];
  118. var country_without_keys = [];
  119. var countries = new function () {
  120. var list = [{
  121. code: "AF",
  122. name: "Afghanistan"}, {
  123. code: "AX",
  124. name: "Aland Islands"}, {
  125. code: "AL",
  126. name: "Albania"}, {
  127. code: "DZ",
  128. name: "Algeria"}, {
  129. code: "AS",
  130. name: "American Samoa"}, {
  131. code: "AD",
  132. name: "Andorra"}, {
  133. code: "AO",
  134. name: "Angola"}, {
  135. code: "AI",
  136. name: "Anguilla"}, {
  137. code: "AQ",
  138. name: "Antarctica"}, {
  139. code: "AG",
  140. name: "Antigua and Barbuda"}, {
  141. code: "AR",
  142. name: "Argentina"}, {
  143. code: "AM",
  144. name: "Armenia"}, {
  145. code: "AW",
  146. name: "Aruba"}, {
  147. code: "AU",
  148. name: "Australia"}, {
  149. code: "AT",
  150. name: "Austria"}, {
  151. code: "AZ",
  152. name: "Azerbaijan"}, {
  153. code: "BS",
  154. name: "Bahamas"}, {
  155. code: "BH",
  156. name: "Bahrain"}, {
  157. code: "BD",
  158. name: "Bangladesh"}, {
  159. code: "BB",
  160. name: "Barbados"}, {
  161. code: "BY",
  162. name: "Belarus"}, {
  163. code: "BE",
  164. name: "Belgium"}, {
  165. code: "BZ",
  166. name: "Belize"}, {
  167. code: "BJ",
  168. name: "Benin"}, {
  169. code: "BM",
  170. name: "Bermuda"}, {
  171. code: "BT",
  172. name: "Bhutan"}, {
  173. code: "BO",
  174. name: "Bolivia"}, {
  175. code: "BQ",
  176. name: "Bonaire, Sint Eustatius and Saba"}, {
  177. code: "BA",
  178. name: "Bosnia and Herzegovina"}, {
  179. code: "BW",
  180. name: "Botswana"}, {
  181. code: "BV",
  182. name: "Bouvet Island"}, {
  183. code: "BR",
  184. name: "Brazil"}, {
  185. code: "IO",
  186. name: "British Indian Ocean Territory"}, {
  187. code: "BN",
  188. name: "Brunei Darussalam"}, {
  189. code: "BG",
  190. name: "Bulgaria"}, {
  191. code: "BF",
  192. name: "Burkina Faso"}, {
  193. code: "BI",
  194. name: "Burundi"}, {
  195. code: "CV",
  196. name: "Cabo Verde"}, {
  197. code: "KH",
  198. name: "Cambodia"}, {
  199. code: "CM",
  200. name: "Cameroon"}, {
  201. code: "CA",
  202. name: "Canada"}, {
  203. code: "KY",
  204. name: "Cayman Islands"}, {
  205. code: "CF",
  206. name: "Central African Republic"}, {
  207. code: "TD",
  208. name: "Chad"}, {
  209. code: "CL",
  210. name: "Chile"}, {
  211. code: "CN",
  212. name: "China"}, {
  213. code: "CX",
  214. name: "Christmas Island"}, {
  215. code: "CC",
  216. name: "Cocos (Keeling) Islands"}, {
  217. code: "CO",
  218. name: "Colombia"}, {
  219. code: "KM",
  220. name: "Comoros"}, {
  221. code: "CG",
  222. name: "Congo"}, {
  223. code: "CD",
  224. name: "Congo"}, {
  225. code: "CK",
  226. name: "Cook Islands"}, {
  227. code: "CR",
  228. name: "Costa Rica"}, {
  229. code: "CI",
  230. name: "Côte d\"Ivoire"}, {
  231. code: "HR",
  232. name: "Croatia"}, {
  233. code: "CU",
  234. name: "Cuba"}, {
  235. code: "CW",
  236. name: "Curaçao"}, {
  237. code: "CY",
  238. name: "Cyprus"}, {
  239. code: "CZ",
  240. name: "Czech Republic"}, {
  241. code: "DK",
  242. name: "Denmark"}, {
  243. code: "DJ",
  244. name: "Djibouti"}, {
  245. code: "DM",
  246. name: "Dominica"}, {
  247. code: "DO",
  248. name: "Dominican Republic"}, {
  249. code: "EC",
  250. name: "Ecuador"}, {
  251. code: "EG",
  252. name: "Egypt"}, {
  253. code: "SV",
  254. name: "El Salvador"}, {
  255. code: "GQ",
  256. name: "Equatorial Guinea"}, {
  257. code: "ER",
  258. name: "Eritrea"}, {
  259. code: "EE",
  260. name: "Estonia"}, {
  261. code: "ET",
  262. name: "Ethiopia"}, {
  263. code: "FK",
  264. name: "Falkland Islands"}, {
  265. code: "FO",
  266. name: "Faroe Islands"}, {
  267. code: "FJ",
  268. name: "Fiji"}, {
  269. code: "FI",
  270. name: "Finland"}, {
  271. code: "FR",
  272. name: "France"}, {
  273. code: "GF",
  274. name: "French Guiana"}, {
  275. code: "PF",
  276. name: "French Polynesia"}, {
  277. code: "TF",
  278. name: "French Southern Territories"}, {
  279. code: "GA",
  280. name: "Gabon"}, {
  281. code: "GM",
  282. name: "Gambia"}, {
  283. code: "GE",
  284. name: "Georgia"}, {
  285. code: "DE",
  286. name: "Germany"}, {
  287. code: "GH",
  288. name: "Ghana"}, {
  289. code: "GI",
  290. name: "Gibraltar"}, {
  291. code: "GR",
  292. name: "Greece"}, {
  293. code: "GL",
  294. name: "Greenland"}, {
  295. code: "GD",
  296. name: "Grenada"}, {
  297. code: "GP",
  298. name: "Guadeloupe"}, {
  299. code: "GU",
  300. name: "Guam"}, {
  301. code: "GT",
  302. name: "Guatemala"}, {
  303. code: "GG",
  304. name: "Guernsey"}, {
  305. code: "GN",
  306. name: "Guinea"}, {
  307. code: "GW",
  308. name: "Guinea-Bissau"}, {
  309. code: "GY",
  310. name: "Guyana"}, {
  311. code: "HT",
  312. name: "Haiti"}, {
  313. code: "HM",
  314. name: "Heard Island and McDonald Islands"}, {
  315. code: "VA",
  316. name: "Holy See"}, {
  317. code: "HN",
  318. name: "Honduras"}, {
  319. code: "HK",
  320. name: "Hong Kong"}, {
  321. code: "HU",
  322. name: "Hungary"}, {
  323. code: "IS",
  324. name: "Iceland"}, {
  325. code: "IN",
  326. name: "India"}, {
  327. code: "ID",
  328. name: "Indonesia"}, {
  329. code: "IR",
  330. name: "Iran"}, {
  331. code: "IQ",
  332. name: "Iraq"}, {
  333. code: "IE",
  334. name: "Ireland"}, {
  335. code: "IM",
  336. name: "Isle of Man"}, {
  337. code: "IL",
  338. name: "Israel"}, {
  339. code: "IT",
  340. name: "Italy"}, {
  341. code: "JM",
  342. name: "Jamaica"}, {
  343. code: "JP",
  344. name: "Japan"}, {
  345. code: "JE",
  346. name: "Jersey"}, {
  347. code: "JO",
  348. name: "Jordan"}, {
  349. code: "KZ",
  350. name: "Kazakhstan"}, {
  351. code: "KE",
  352. name: "Kenya"}, {
  353. code: "KI",
  354. name: "Kiribati"}, {
  355. code: "KP",
  356. name: "Korea"}, {
  357. code: "KR",
  358. name: "Korea"}, {
  359. code: "KW",
  360. name: "Kuwait"}, {
  361. code: "KG",
  362. name: "Kyrgyzstan"}, {
  363. code: "LA",
  364. name: "Lao"}, {
  365. code: "LV",
  366. name: "Latvia"}, {
  367. code: "LB",
  368. name: "Lebanon"}, {
  369. code: "LS",
  370. name: "Lesotho"}, {
  371. code: "LR",
  372. name: "Liberia"}, {
  373. code: "LY",
  374. name: "Libya"}, {
  375. code: "LI",
  376. name: "Liechtenstein"}, {
  377. code: "LT",
  378. name: "Lithuania"}, {
  379. code: "LU",
  380. name: "Luxembourg"}, {
  381. code: "MO",
  382. name: "Macao"}, {
  383. code: "MK",
  384. name: "Macedonia"}, {
  385. code: "MG",
  386. name: "Madagascar"}, {
  387. code: "MW",
  388. name: "Malawi"}, {
  389. code: "MY",
  390. name: "Malaysia"}, {
  391. code: "MV",
  392. name: "Maldives"}, {
  393. code: "ML",
  394. name: "Mali"}, {
  395. code: "MT",
  396. name: "Malta"}, {
  397. code: "MH",
  398. name: "Marshall Islands"}, {
  399. code: "MQ",
  400. name: "Martinique"}, {
  401. code: "MR",
  402. name: "Mauritania"}, {
  403. code: "MU",
  404. name: "Mauritius"}, {
  405. code: "YT",
  406. name: "Mayotte"}, {
  407. code: "MX",
  408. name: "Mexico"}, {
  409. code: "FM",
  410. name: "Micronesia"}, {
  411. code: "MD",
  412. name: "Moldova"}, {
  413. code: "MC",
  414. name: "Monaco"}, {
  415. code: "MN",
  416. name: "Mongolia"}, {
  417. code: "ME",
  418. name: "Montenegro"}, {
  419. code: "MS",
  420. name: "Montserrat"}, {
  421. code: "MA",
  422. name: "Morocco"}, {
  423. code: "MZ",
  424. name: "Mozambique"}, {
  425. code: "MM",
  426. name: "Myanmar"}, {
  427. code: "NA",
  428. name: "Namibia"}, {
  429. code: "NR",
  430. name: "Nauru"}, {
  431. code: "NP",
  432. name: "Nepal"}, {
  433. code: "NL",
  434. name: "Netherlands"}, {
  435. code: "NC",
  436. name: "New Caledonia"}, {
  437. code: "NZ",
  438. name: "New Zealand"}, {
  439. code: "NI",
  440. name: "Nicaragua"}, {
  441. code: "NE",
  442. name: "Niger"}, {
  443. code: "NG",
  444. name: "Nigeria"}, {
  445. code: "NU",
  446. name: "Niue"}, {
  447. code: "NF",
  448. name: "Norfolk Island"}, {
  449. code: "MP",
  450. name: "Northern Mariana Islands"}, {
  451. code: "NO",
  452. name: "Norway"}, {
  453. code: "OM",
  454. name: "Oman"}, {
  455. code: "PK",
  456. name: "Pakistan"}, {
  457. code: "PW",
  458. name: "Palau"}, {
  459. code: "PS",
  460. name: "Palestine"}, {
  461. code: "PA",
  462. name: "Panama"}, {
  463. code: "PG",
  464. name: "Papua New Guinea"}, {
  465. code: "PY",
  466. name: "Paraguay"}, {
  467. code: "PE",
  468. name: "Peru"}, {
  469. code: "PH",
  470. name: "Philippines"}, {
  471. code: "PN",
  472. name: "Pitcairn"}, {
  473. code: "PL",
  474. name: "Poland"}, {
  475. code: "PT",
  476. name: "Portugal"}, {
  477. code: "PR",
  478. name: "Puerto Rico"}, {
  479. code: "QA",
  480. name: "Qatar"}, {
  481. code: "RE",
  482. name: "Réunion"}, {
  483. code: "RO",
  484. name: "Romania"}, {
  485. code: "RU",
  486. name: "Russia"}, {
  487. code: "RW",
  488. name: "Rwanda"}, {
  489. code: "BL",
  490. name: "Saint Barthélemy"}, {
  491. code: "SH",
  492. name: "Saint Helena, Ascension and Tristan da Cunha"}, {
  493. code: "KN",
  494. name: "Saint Kitts and Nevis"}, {
  495. code: "LC",
  496. name: "Saint Lucia"}, {
  497. code: "MF",
  498. name: "Saint Martin"}, {
  499. code: "PM",
  500. name: "Saint Pierre and Miquelon"}, {
  501. code: "VC",
  502. name: "Saint Vincent and the Grenadines"}, {
  503. code: "WS",
  504. name: "Samoa"}, {
  505. code: "SM",
  506. name: "San Marino"}, {
  507. code: "ST",
  508. name: "Sao Tome and Principe"}, {
  509. code: "SA",
  510. name: "Saudi Arabia"}, {
  511. code: "SN",
  512. name: "Senegal"}, {
  513. code: "RS",
  514. name: "Serbia"}, {
  515. code: "SC",
  516. name: "Seychelles"}, {
  517. code: "SL",
  518. name: "Sierra Leone"}, {
  519. code: "SG",
  520. name: "Singapore"}, {
  521. code: "SX",
  522. name: "Sint Maarten"}, {
  523. code: "SK",
  524. name: "Slovakia"}, {
  525. code: "SI",
  526. name: "Slovenia"}, {
  527. code: "SB",
  528. name: "Solomon Islands"}, {
  529. code: "SO",
  530. name: "Somalia"}, {
  531. code: "ZA",
  532. name: "South Africa"}, {
  533. code: "GS",
  534. name: "South Georgia and the South Sandwich Islands"}, {
  535. code: "SS",
  536. name: "South Sudan"}, {
  537. code: "ES",
  538. name: "Spain"}, {
  539. code: "LK",
  540. name: "Sri Lanka"}, {
  541. code: "SD",
  542. name: "Sudan"}, {
  543. code: "SR",
  544. name: "Suriname"}, {
  545. code: "SJ",
  546. name: "Svalbard and Jan Mayen"}, {
  547. code: "SZ",
  548. name: "Swaziland"}, {
  549. code: "SE",
  550. name: "Sweden"}, {
  551. code: "CH",
  552. name: "Switzerland"}, {
  553. code: "SY",
  554. name: "Syrian Arab Republic"}, {
  555. code: "TW",
  556. name: "Taiwan"}, {
  557. code: "TJ",
  558. name: "Tajikistan"}, {
  559. code: "TZ",
  560. name: "Tanzania"}, {
  561. code: "TH",
  562. name: "Thailand"}, {
  563. code: "TL",
  564. name: "Timor-Leste"}, {
  565. code: "TG",
  566. name: "Togo"}, {
  567. code: "TK",
  568. name: "Tokelau"}, {
  569. code: "TO",
  570. name: "Tonga"}, {
  571. code: "TT",
  572. name: "Trinidad and Tobago"}, {
  573. code: "TN",
  574. name: "Tunisia"}, {
  575. code: "TR",
  576. name: "Turkey"}, {
  577. code: "TM",
  578. name: "Turkmenistan"}, {
  579. code: "TC",
  580. name: "Turks and Caicos Islands"}, {
  581. code: "TV",
  582. name: "Tuvalu"}, {
  583. code: "UG",
  584. name: "Uganda"}, {
  585. code: "UA",
  586. name: "Ukraine"}, {
  587. code: "AE",
  588. name: "United Arab Emirates"}, {
  589. code: "GB",
  590. name: "United Kingdom"}, {
  591. code: "US",
  592. name: "United States of America"}, {
  593. code: "UM",
  594. name: "United States Minor Outlying Islands"}, {
  595. code: "UY",
  596. name: "Uruguay"}, {
  597. code: "UZ",
  598. name: "Uzbekistan"}, {
  599. code: "VU",
  600. name: "Vanuatu"}, {
  601. code: "VE",
  602. name: "Venezuela"}, {
  603. code: "VN",
  604. name: "Vietnam"}, {
  605. code: "VG",
  606. name: "Virgin Islands (British)"}, {
  607. code: "VI",
  608. name: "Virgin Islands (U.S.)"}, {
  609. code: "WF",
  610. name: "Wallis and Futuna"}, {
  611. code: "EH",
  612. name: "Western Sahara"}, {
  613. code: "YE",
  614. name: "Yemen"}, {
  615. code: "ZM",
  616. name: "Zambia"}, {
  617. code: "ZW",
  618. name: "Zimbabwe"}, {
  619. code: "AN",
  620. name: "Netherlands Antilles"}, {
  621. code: "CS",
  622. name: "Serbia and Montenegro"}, {
  623. code: "AC",
  624. name: "Ascension Island"}, {
  625. code: "CP",
  626. name: "Clipperton Island"}, {
  627. code: "DG",
  628. name: "Diego Garcia"}, {
  629. code: "EA",
  630. name: "Ceuta, Melilla"}, {
  631. code: "EU",
  632. name: "European Union"}, {
  633. code: "IC",
  634. name: "Canary Islands"}, {
  635. code: "TA",
  636. name: "Tristan da Cunha"}, {
  637. code: "QO",
  638. name: "Outlying Oceania"}
  639. ];
  640. var codes = {};
  641.  
  642. for (var i = 0; i < list.length; ++i) {
  643. var entry = list[i];
  644. codes[entry.code] = entry;
  645. }
  646.  
  647. this.getEntry = function (code) {
  648. return codes[code];
  649. };
  650. };
  651.  
  652. for (var country in countryKeys) {
  653. var get_country = countries.getEntry(country);
  654. var get_country_name = get_country.name
  655. if (countryKeys[country].length === 0) {
  656. country_without_keys.push(" " + get_country_name);
  657. } else {
  658. country_with_keys.push(" " + get_country_name);
  659. }
  660. };
  661. country_with_keys.sort();
  662. country_without_keys.sort();
  663. if (country_with_keys.length !== 0) {
  664. country_with_keys[0] = country_with_keys[0].split(" ").join("");
  665. }
  666. if (country_without_keys.length !== 0) {
  667. country_without_keys[0] = country_without_keys[0].split(" ").join("");
  668. }
  669.  
  670. let content = '';
  671. if (country_without_keys.length !== 0 && country_with_keys.length !== 0) {
  672. content += `${getMessageText('withKeys')}\n${country_with_keys.toString()}\n`;
  673. } else if (country_with_keys.length === 0) {
  674. content += `${getMessageText('allOut')}\n`;
  675. button.style.backgroundColor = '#dc3545'; // すべてのキーが配布されると、ボタンは赤色で表示されます。
  676. } else {
  677. content += `${getMessageText('everyCountry')}\n`;
  678. }
  679. for (var country in countryKeys) {
  680. if (countryKeys[country].length === 0) {
  681. continue
  682. };
  683. for (var level in countryKeys[country]) {
  684. content += `${getMessageText('keyAvailability')}\nTier: ${level} - Keys: ${countryKeys[country][level]}\n`;
  685. };
  686. break
  687. };
  688. if (country_without_keys.length !== 0 && country_with_keys.length !== 0) {
  689. content += `${getMessageText('withoutKeys')}\n${country_without_keys.toString()}\n`;
  690. }
  691.  
  692. button.textContent = content;
  693. if (country_with_keys.length !== 0) {
  694. button.style.backgroundColor = '#28a745'; // 変更後の背景色
  695. }
  696. } else {
  697. button.textContent = originalText;
  698. button.style.backgroundColor = '#007bff'; // 元の背景色
  699. }
  700. };
  701.  
  702. // 閉じるボタンをクリックしたときに実行する関数
  703. closeButton.onclick = function() {
  704. document.body.removeChild(button);
  705. document.body.removeChild(closeButton);
  706. };
  707.  
  708. // ボタンをページに追加
  709. document.body.appendChild(button);
  710. document.body.appendChild(closeButton);
  711. })();
  712.  

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址