Greasy Fork is available in English.

赛尔号启航Pc

赛尔号启航Pc.

17.12.2024 itibariyledir. En son verisyonu görün.

  1. // ==UserScript==
  2. // @name 赛尔号启航Pc
  3. // @name:en 赛尔号启航Pc
  4. // @namespace 赛尔号启航Pc
  5. // @version 3.1.5
  6. // @description 赛尔号启航Pc.
  7. // @description:en helpersaiier
  8. // @include http://s.61.com/*
  9. // @require https://greasyfork.org/scripts/372672-everything-hook/code/Everything-Hook.js?version=881251
  10. // @author 2942332601QQ
  11. // @match https://s.61.com/*
  12. // @run-at document-start
  13. // @grant none
  14. // @license GPL-3.0-or-later
  15. // ==/UserScript==
  16. (function () {
  17. document.addEventListener('DOMContentLoaded', function () {
  18. // 获取目标iframe元素
  19. const iframe = document.querySelector('iframe');
  20.  
  21. // 修改iframe的sandbox属性,允许跨域访问
  22. iframe.setAttribute('sandbox', 'allow-same-origin allow-scripts allow-popups allow-forms');
  23. });
  24.  
  25.  
  26. 'use strict';
  27. //去除左侧小贴士
  28. var targetClass = 'age-tip';
  29. var targetClass1 = 'years'
  30. var observer = new MutationObserver(function (mutations) {
  31. mutations.forEach(function (mutation) {
  32. mutation.addedNodes.forEach(function (node) {
  33. if (node.classList && node.classList.contains(targetClass)) {
  34. node.style.display = 'none';
  35. }
  36. if (node.classList && node.classList.contains(targetClass1)) {
  37. node.style.display = 'none';
  38. }
  39. });
  40. });
  41. });
  42. // 监听整个文档的变化
  43. observer.observe(document, { childList: true, subtree: true });
  44. var bossStatus = false
  45. var doneRound = false
  46. var tttt
  47. var SelfUid = ""
  48. var skillID = "" //获取首发精灵skillID
  49. var skillStarId = ""
  50. var myTeam = [] //获取精灵配置信息
  51. var myTeamDone = 0
  52. var StartJson = "" //存储迷航当前进度id
  53. var rewrite = 0
  54. var CmdArr = []
  55. var changePet = ""
  56. var nextRound = false
  57. var 战斗资源加载完毕
  58. var PetMsgDetail = ""
  59. var skillSecondId = ""
  60. var doneBattleMsg = ""
  61. var 捕捉ok = false
  62. var catchCount = 0
  63. var 捕捉情况 = ""
  64. var floorContent = ""
  65. var ptfloorContent = ""
  66. var Buff = ""
  67.  
  68. var logicDoneRound = false
  69.  
  70.  
  71. var roundContent = ""
  72.  
  73. // fixMsg()
  74. // 创建一个 div
  75. var topWindow = window.top;
  76. //判断顶层body
  77. if (topWindow == window) {
  78. if (window.location.href.indexOf("http://s.61.com/home") != -1) {
  79. window.location.href = "https://s.61.com/home/"
  80. }
  81. // if (window.location.href.indexOf("http://s.61.com/home/") != -1) {
  82. // window.location.href = "https://s.61.com/home/"
  83. // }
  84. var div = document.createElement("div");
  85. div.style.zIndex = 999996;
  86. div.id = "cardPage";
  87. div.style.position = "fixed";
  88. div.style.left = "50px";
  89. div.style.top = "40px";
  90. div.style.width = "250px";
  91. div.style.height = "80%";
  92. div.style.backgroundColor = "lightblue";
  93.  
  94.  
  95.  
  96. var div1 = document.createElement("div");
  97. div1.style.position = "fixed";
  98. div1.style.left = "30px";
  99. div1.style.top = "90%";
  100. div1.style.zIndex = 999996;
  101. // div1.style.width = "10px";
  102. div1.style.height = "20px";
  103.  
  104. // 创建一个按钮
  105. var tosmall = document.createElement("button");
  106. tosmall.innerHTML = "缩";
  107. tosmall.style.display = "block";
  108. // tosmall.style.margin = "10px auto";
  109. tosmall.style.width = "25px";
  110. tosmall.style.height = "20px";
  111. // 在点击按钮时输出日志到文本框中
  112. tosmall.onclick = function () {
  113. if (tosmall.innerHTML == "缩") {
  114. tosmall.innerHTML = "展"
  115. document.getElementById("cardPage").style.display = "none"
  116. } else {
  117. tosmall.innerHTML = "缩"
  118. document.getElementById("cardPage").style.display = "block"
  119. }
  120. };
  121.  
  122.  
  123. div1.appendChild(tosmall)
  124.  
  125.  
  126.  
  127. var button0 = document.createElement("h3");
  128. button0.innerHTML = "⚡启航护肝小助手3.1.2⚡\n ";
  129. button0.style.display = "block";
  130. button0.style.margin = "1px auto";
  131. button0.style.marginTop = "5px"
  132. button0.style.width = "250px";
  133. // button0.style.height = "30px";
  134. button0.style.fontSize = "16px";
  135. button0.style.fontWeight = "bold"
  136. button0.style.textAlign = "center";
  137. div.appendChild(button0);
  138.  
  139.  
  140.  
  141.  
  142. // 创建单选按钮1
  143. var radio1 = document.createElement('input');
  144. radio1.type = 'radio';
  145. radio1.name = 'option';
  146. radio1.value = '4001';
  147. radio1.style.marginLeft = "10px";
  148.  
  149. // 创建标签1
  150. var label1 = document.createElement('label');
  151. label1.innerHTML = '初级胶囊';
  152. label1.style.fontSize = "10px";
  153. // 创建单选按钮2
  154. var radio2 = document.createElement('input');
  155. radio2.type = 'radio';
  156. radio2.name = 'option';
  157. radio2.value = '4002';
  158. // 创建标签2
  159. var label2 = document.createElement('label');
  160. label2.innerHTML = '中级胶囊';
  161. label2.style.fontSize = "10px";
  162. // 创建单选按钮3
  163. var radio3 = document.createElement('input');
  164. radio3.type = 'radio';
  165. radio3.name = 'option';
  166. radio3.value = '4003';
  167. // 创建标签3
  168. var label3 = document.createElement('label');
  169. label3.innerHTML = '高级胶囊';
  170. label3.style.fontSize = "10px";
  171. // 添加单选按钮和标签到div
  172. div.appendChild(radio1);
  173. div.appendChild(label1);
  174.  
  175. div.appendChild(radio2);
  176. div.appendChild(label2);
  177.  
  178. div.appendChild(radio3);
  179. div.appendChild(label3);
  180.  
  181. // // 设置单选按钮样式
  182. // radio1.style.display = 'block';
  183. // radio2.style.display = 'block';
  184. // radio3.style.display = 'block';
  185. // // 添加其他样式设置...
  186.  
  187. // // 设置标签样式
  188. // label1.style.display = 'block';
  189. // label2.style.display = 'block';
  190. // label3.style.display = 'block';
  191. // 添加其他样式设置...
  192.  
  193.  
  194.  
  195. var produceLogPanel = 0
  196. var tttt
  197. // 创建一个按钮
  198. var button1 = document.createElement("button");
  199. button1.innerHTML = "开启";
  200. button1.style.margin = "4px";
  201. button1.style.width = "45px";
  202. button1.style.height = "30px";
  203. // 在点击按钮时输出日志到文本框中
  204. button1.onclick = function () {
  205. if (rewrite == 0) {
  206. try {
  207. var userI = document.querySelector("iframe").contentWindow.UserManager.getInstance()
  208.  
  209. } catch (e) {
  210. var userI = UserManager.getInstance()
  211. }
  212. if (userI.userInfo == undefined) {
  213. writeLog("请先登入游戏再点击开启监听!!")
  214. return
  215. }
  216. rewrite = 1
  217. fixMsg()
  218. showToast("顺利开启监听,宝贝")
  219. showNotice("V3.1.2\n新增PVP 巅峰狂野模式 竞技 乱斗 挂机 ")
  220. if (produceLogPanel == 0) {
  221. produceLogPanel = 1
  222. produceLog()
  223. }
  224. button1.innerHTML = "关闭";
  225. } else if (rewrite == 1) {
  226. rewrite = 0
  227. backMSg()
  228. showToast("顺利关闭,内存得到部分释放")
  229. button1.innerHTML = "开启";
  230. }
  231.  
  232. };
  233. div.appendChild(button1);
  234.  
  235.  
  236.  
  237. var button5 = document.createElement("button");
  238. button5.innerHTML = "迷航";
  239. button5.style.margin = "4px";
  240. button5.style.width = "45px";
  241. button5.style.height = "30px";
  242. button5.style.marginLeft = "10px"
  243. // 在点击按钮时输出日志到文本框中
  244. button5.onclick = async function () {
  245. await starTrek()
  246. };
  247. div.appendChild(button5);
  248.  
  249.  
  250.  
  251.  
  252.  
  253. // 创建一个按钮
  254. var button = document.createElement("button");
  255. button.innerHTML = "资源";
  256. button.style.margin = "4px";
  257. button.style.width = "45px";
  258. button.style.height = "30px";
  259. // 在点击按钮时输出日志到文本框中
  260. button.onclick = async function () {
  261. if (rewrite == 0) {
  262. showToast("请先开启监听!宝贝");
  263. return
  264. }
  265. try {
  266. let firTime = UserManager.getInstance().userInfo.defaultTeam[0]
  267. skillID = PetManager.getInstance().getPetInfoByGetTime(firTime).skills[0];
  268. } catch (e) {
  269. let firTime = document.querySelector("iframe").contentWindow.UserManager.getInstance().userInfo.defaultTeam[0]
  270. skillID = document.querySelector("iframe").contentWindow.PetManager.getInstance().getPetInfoByGetTime(firTime).skills[0];
  271. }
  272.  
  273. writeLog("皮皮星第一层")
  274. while (true) {
  275. //查询轮盘
  276. await sendMsg(1176, { planetId: 1 })
  277. let reward = ""
  278. CmdArr.forEach(item => {
  279. if (parseInt(Object.keys(item)[0]) == 1176) {
  280. reward = JSON.parse(item["1176"]).reward
  281. }
  282. })
  283. if (reward["1"] == undefined) {
  284. writeLog("皮皮星①第1次奖励!")
  285. }
  286. else if (reward["1"] < 10) {
  287. writeLog("皮皮星①第" + reward["1"] + "次奖励!")
  288. } else {
  289. writeLog("皮皮星①完成!")
  290. CmdArr = []
  291. break
  292. }
  293.  
  294. await getObjs(20001, 109, 1)
  295. await wait(200)
  296. CmdArr = []
  297. }
  298. await wait(200)
  299.  
  300. writeLog("皮皮第二层")
  301. while (true) {
  302. //查询轮盘
  303. await sendMsg(1176, { planetId: 1 })
  304. let reward = ""
  305. CmdArr.forEach(item => {
  306. if (parseInt(Object.keys(item)[0]) == 1176) {
  307. reward = JSON.parse(item["1176"]).reward
  308. }
  309. })
  310. if (reward["2"] == undefined) {
  311. writeLog("皮皮星②第1次奖励!")
  312. }
  313. else if (reward["2"] < 10) {
  314. writeLog("皮皮星②第" + reward["2"] + "次奖励!")
  315. } else {
  316. writeLog("皮皮星②完成!")
  317. CmdArr = []
  318. break
  319. }
  320. await wait(200)
  321.  
  322. await getObjs(20002, 87, 2)
  323. CmdArr = []
  324. }
  325. await wait(200)
  326. writeLog("皮皮第三层")
  327. while (true) {
  328. //查询轮盘
  329. await sendMsg(1176, { planetId: 1 })
  330. let reward = ""
  331. CmdArr.forEach(item => {
  332. if (parseInt(Object.keys(item)[0]) == 1176) {
  333. reward = JSON.parse(item["1176"]).reward
  334. }
  335. })
  336.  
  337. if (reward["3"] < 5) {
  338. let oneC = isNaN(parseInt(reward["3"])) ? 0 : parseInt(reward["3"])
  339. let twoC = isNaN(parseInt(reward["4"])) ? 0 : parseInt(reward["4"])
  340. writeLog("皮皮星③第" + (oneC + twoC) + "次奖励!")
  341. await getObjs(20003, 29, 3)
  342.  
  343. } else if (reward["4"] < 5) {
  344. let oneC = isNaN(parseInt(reward["3"])) ? 0 : parseInt(reward["3"])
  345. let twoC = isNaN(parseInt(reward["4"])) ? 0 : parseInt(reward["4"])
  346. writeLog("皮皮星③第" + (oneC + twoC) + "次奖励!")
  347.  
  348. await getObjs(20003, 29, 4)
  349. } else if (reward["3"] == undefined) {
  350. await getObjs(20003, 29, 3)
  351. } else if (reward["4"] == undefined) {
  352. await getObjs(20003, 29, 4)
  353. } else {
  354. writeLog("皮皮星③完成!")
  355. CmdArr = []
  356. await wait(200)
  357. break
  358. }
  359.  
  360. CmdArr = []
  361. }
  362.  
  363. await wait(200)
  364. writeLog("水星第一层")
  365. while (true) {
  366. CmdArr = []
  367. //查询轮盘
  368. await sendMsg(1176, { planetId: 2 })
  369. let reward = ""
  370. CmdArr.forEach(item => {
  371. if (parseInt(Object.keys(item)[0]) == 1176) {
  372. reward = JSON.parse(item["1176"]).reward
  373. }
  374. })
  375. if (reward["9"] == undefined) {
  376. writeLog("水星①第1次奖励!")
  377. } else if (reward["9"] < 20) {
  378. writeLog("水星①第" + reward["9"] + "次奖励!")
  379. } else {
  380. writeLog("水星①完成!")
  381. CmdArr = []
  382. break
  383. }
  384. await wait(200)
  385.  
  386. await getObjs(20004, 31, 9)
  387. CmdArr = []
  388. }
  389.  
  390. await wait(200)
  391. writeLog("水星第二层")
  392. while (true) {
  393. CmdArr = []
  394. //查询轮盘
  395. await sendMsg(1176, { planetId: 2 })
  396. let reward = ""
  397. CmdArr.forEach(item => {
  398. if (parseInt(Object.keys(item)[0]) == 1176) {
  399. reward = JSON.parse(item["1176"]).reward
  400. }
  401. })
  402. if (reward["10"] == undefined) {
  403. writeLog("水星②第1次奖励!")
  404. } else if (reward["10"] < 10) {
  405. writeLog("水星②第" + reward["10"] + "次奖励!")
  406. } else {
  407. writeLog("水星②完成!")
  408. CmdArr = []
  409. break
  410. }
  411. await wait(200)
  412. await getObjs(20005, 31, 10)
  413. CmdArr = []
  414. }
  415. await wait(200)
  416. writeLog("水星第三层")
  417. while (true) {
  418. CmdArr = []
  419. //查询轮盘
  420. await sendMsg(1176, { planetId: 2 })
  421. let reward = ""
  422. CmdArr.forEach(item => {
  423. if (parseInt(Object.keys(item)[0]) == 1176) {
  424. reward = JSON.parse(item["1176"]).reward
  425. }
  426. })
  427.  
  428. if (reward["11"] == undefined) {
  429. writeLog("水星③第1次奖励!")
  430. }
  431.  
  432. else if (reward["11"] < 3) {
  433. writeLog("水星③第" + reward["11"] + "次奖励!")
  434. } else {
  435. writeLog("水星③完成!")
  436. CmdArr = []
  437. break
  438. }
  439.  
  440. await getObjs(20006, 31, 11)
  441. CmdArr = []
  442. await wait(200)
  443. }
  444.  
  445.  
  446. await wait(200)
  447. writeLog("火星第一层")
  448. while (true) {
  449. CmdArr = []
  450. //查询轮盘
  451. await sendMsg(1176, { planetId: 3 })
  452. let reward = ""
  453. CmdArr.forEach(item => {
  454. if (parseInt(Object.keys(item)[0]) == 1176) {
  455. reward = JSON.parse(item["1176"]).reward
  456. }
  457. })
  458. if (reward["12"] == undefined) {
  459. writeLog("火星①第1次奖励!")
  460. } else if (reward["12"] < 10) {
  461. writeLog("火星①第" + reward["12"] + "次奖励!")
  462. } else {
  463. writeLog("火星①完成!")
  464. CmdArr = []
  465. break
  466. }
  467. await wait(200)
  468. await getObjs(20007, 9, 12)
  469. CmdArr = []
  470. }
  471.  
  472.  
  473. await wait(200)
  474. writeLog("火星第二层")
  475. while (true) {
  476. CmdArr = []
  477. //查询轮盘
  478. await sendMsg(1176, { planetId: 3 })
  479. let reward = ""
  480. CmdArr.forEach(item => {
  481. if (parseInt(Object.keys(item)[0]) == 1176) {
  482. reward = JSON.parse(item["1176"]).reward
  483. }
  484. })
  485. if (reward["13"] == undefined) {
  486. writeLog("火星②第1次奖励!")
  487. } else if (reward["13"] < 20) {
  488. writeLog("火星②第" + reward["13"] + "次奖励!")
  489. } else {
  490. writeLog("火星②完成!")
  491. CmdArr = []
  492. break
  493. }
  494. await wait(200)
  495.  
  496. await getObjs(20008, 9, 13)
  497. CmdArr = []
  498. }
  499.  
  500.  
  501. await wait(200)
  502. writeLog("火星第三层")
  503. while (true) {
  504. CmdArr = []
  505. //查询轮盘
  506. await sendMsg(1176, { planetId: 3 })
  507. let reward = ""
  508. CmdArr.forEach(item => {
  509. if (parseInt(Object.keys(item)[0]) == 1176) {
  510. reward = JSON.parse(item["1176"]).reward
  511. }
  512. })
  513. if (reward["14"] == undefined) {
  514. writeLog("火星③第1次奖励!")
  515. } else if (reward["14"] < 3) {
  516. writeLog("火星③第" + reward["14"] + "次奖励!")
  517. } else {
  518. writeLog("火星③第1次奖励!")
  519. CmdArr = []
  520. break
  521. }
  522. await wait(200)
  523.  
  524. await getObjs(20009, 9, 14)
  525. CmdArr = []
  526. }
  527.  
  528.  
  529. await wait(200)
  530. writeLog("云霄星第一层")
  531. while (true) {
  532. CmdArr = []
  533. //查询轮盘
  534. await sendMsg(1176, { planetId: 5 })
  535. let reward = ""
  536. CmdArr.forEach(item => {
  537. if (parseInt(Object.keys(item)[0]) == 1176) {
  538. reward = JSON.parse(item["1176"]).reward
  539. }
  540. })
  541. if (reward["33"] == undefined) {
  542. writeLog("云霄星①第1次奖励!")
  543. } else if (reward["33"] < 20) {
  544. writeLog("云霄星①第" + reward["33"] + "次奖励!")
  545. } else {
  546. writeLog("云霄星完成!")
  547. CmdArr = []
  548. break
  549. }
  550. await wait(200)
  551. await getObjs(20015, 10, 33)
  552. CmdArr = []
  553. }
  554.  
  555.  
  556. await wait(200)
  557. writeLog("云霄星第二层")
  558. while (true) {
  559. CmdArr = []
  560. //查询轮盘
  561. await sendMsg(1176, { planetId: 5 })
  562. let reward = ""
  563. CmdArr.forEach(item => {
  564. if (parseInt(Object.keys(item)[0]) == 1176) {
  565. reward = JSON.parse(item["1176"]).reward
  566. }
  567. })
  568. if (reward["34"] == undefined) {
  569. writeLog("云霄星②第1次奖励!")
  570. } else if (reward["34"] < 10) {
  571. writeLog("云霄星②第" + reward["34"] + "次奖励!")
  572. } else {
  573. writeLog("云霄星②完成!")
  574. CmdArr = []
  575. break
  576. }
  577. await wait(200)
  578. await getObjs(20016, 9, 34)
  579. CmdArr = []
  580. }
  581.  
  582.  
  583.  
  584. await wait(200)
  585. writeLog("云霄星第三层")
  586. while (true) {
  587. CmdArr = []
  588. //查询轮盘
  589. await sendMsg(1176, { planetId: 5 })
  590. let reward = ""
  591. CmdArr.forEach(item => {
  592. if (parseInt(Object.keys(item)[0]) == 1176) {
  593. reward = JSON.parse(item["1176"]).reward
  594. }
  595. })
  596. if (reward["35"] == undefined) {
  597. writeLog("云霄星③第1次奖励!")
  598. } else if (reward["35"] < 5) {
  599. writeLog("云霄星③第" + reward["35"] + "次奖励!")
  600. } else {
  601. writeLog("云霄星③完成!")
  602. CmdArr = []
  603. break
  604. }
  605. await wait(200)
  606.  
  607. await getObjs(20017, 10, 35)
  608. CmdArr = []
  609. }
  610.  
  611.  
  612.  
  613.  
  614.  
  615. await wait(200)
  616. writeLog("喷泉星第一层")
  617. while (true) {
  618. CmdArr = []
  619. //查询轮盘
  620. await sendMsg(1176, { planetId: 6 })
  621. let reward = ""
  622. CmdArr.forEach(item => {
  623. if (parseInt(Object.keys(item)[0]) == 1176) {
  624. reward = JSON.parse(item["1176"]).reward
  625. }
  626. })
  627. if (reward["179"] == undefined) {
  628. writeLog("喷泉星①第1次奖励!")
  629. } else if (reward["179"] < 10) {
  630. writeLog("喷泉星①第" + reward["179"] + "次奖励!")
  631. } else {
  632. writeLog("喷泉星①完成!")
  633. CmdArr = []
  634. break
  635. }
  636.  
  637. await getObjs(20018, 9, 179)
  638. await wait(200)
  639.  
  640. CmdArr = []
  641. }
  642.  
  643.  
  644.  
  645. await wait(200)
  646. writeLog("喷泉星第二层")
  647. while (true) {
  648. CmdArr = []
  649. //查询轮盘
  650. await sendMsg(1176, { planetId: 6 })
  651. let reward = ""
  652. CmdArr.forEach(item => {
  653. if (parseInt(Object.keys(item)[0]) == 1176) {
  654. reward = JSON.parse(item["1176"]).reward
  655. }
  656. })
  657. if (reward["60"] == undefined) {
  658. writeLog("喷泉星②第1次奖励!")
  659. } else if (reward["60"] < 10) {
  660. writeLog("喷泉星②第" + reward["60"] + "次奖励!")
  661. } else {
  662. writeLog("喷泉星②完成!")
  663. CmdArr = []
  664. break
  665. }
  666. await getObjs(20020, 9, 60)
  667. CmdArr = []
  668. await wait(200)
  669. }
  670.  
  671.  
  672.  
  673. await wait(200)
  674. writeLog("暗影星第一层")
  675. while (true) {
  676. CmdArr = []
  677. //查询轮盘
  678. await sendMsg(1176, { planetId: 8 })
  679. let reward = ""
  680. CmdArr.forEach(item => {
  681. if (parseInt(Object.keys(item)[0]) == 1176) {
  682. reward = JSON.parse(item["1176"]).reward
  683. }
  684. })
  685. if (reward["66"] == undefined) {
  686. writeLog("暗影星①第一次奖励!")
  687. } else if (reward["66"] < 20) {
  688. writeLog("暗影星①第" + reward["66"] + "次奖励!")
  689. } else {
  690. writeLog("暗影星①完成!")
  691. CmdArr = []
  692. break
  693. }
  694. await getObjs(20026, 43, 66)
  695. await wait(200)
  696.  
  697. CmdArr = []
  698. }
  699. console.log("刷资源")
  700. };
  701. div.appendChild(button);
  702.  
  703. var ziyuan2 = document.createElement("button");
  704. ziyuan2.innerHTML = "资源2";
  705. ziyuan2.style.margin = "4px";
  706. ziyuan2.style.width = "50px";
  707. ziyuan2.style.height = "30px";
  708. // 在点击按钮时输出日志到文本框中
  709. ziyuan2.onclick = async function () {
  710. if (rewrite == 0) {
  711. showToast("请先开启监听!宝贝")
  712. return
  713. }
  714. await fightan()
  715. };
  716. div.appendChild(ziyuan2)
  717.  
  718.  
  719.  
  720. var button3 = document.createElement("button");
  721. button3.innerHTML = "打怪";
  722. button3.style.margin = "4px";
  723. button3.style.width = "45px";
  724. button3.style.height = "30px";
  725. // 在点击按钮时输出日志到文本框中
  726. button3.onclick = async function () {
  727. if (rewrite == 0) {
  728. showToast("请先开启监听!宝贝")
  729. return
  730. }
  731. await fightQiu()
  732. };
  733. div.appendChild(button3);
  734.  
  735.  
  736.  
  737.  
  738.  
  739.  
  740. // 创建一个按钮
  741. var button2 = document.createElement("button");
  742. button2.innerHTML = "雇佣";
  743. button2.style.margin = "4px";
  744. button2.style.width = "45px";
  745. button2.style.height = "30px";
  746. // 在点击按钮时输出日志到文本框中
  747. button2.onclick = async function () {
  748. if (rewrite == 0) {
  749. showToast("请先开启监听!宝贝")
  750. return
  751. }
  752. SelfUid = 雇佣Uid.value
  753. console.log(SelfUid)
  754. let nowSkillId = skillID
  755.  
  756.  
  757. while (1) {
  758. CmdArr = []
  759. await sendMsg(10042, {
  760. "friendPageNo": 1,
  761. "friendPageSize": 1000,
  762. "teamPageNo": 1,
  763. "teamPageSize": 1000
  764. })
  765. let HireArr = []
  766. CmdArr.forEach(item => {
  767. if (parseInt(Object.keys(item)[0]) == 10042) {
  768. let teamHireList = JSON.parse(item["10042"]).teamHireList
  769. teamHireList.forEach(item0 => {
  770. if (item0.userId == parseInt(SelfUid)) {
  771. console.log(item0)
  772. HireArr.push(item0)
  773. }
  774. })
  775. }
  776. })
  777.  
  778. let doneGet = 0
  779. for (let index = 0; index < HireArr.length; index++) {
  780. if (HireArr[index].petHireTimes < 10) {
  781. doneGet = 1
  782. writeLog("" + HireArr[index].roleNick + "的第" + (index + 1) + "只精灵,雇佣次数:" + HireArr[index].petHireTimes)
  783. let newTeamList = []
  784.  
  785. for (let index = 0; index < myTeam.length; index++) {
  786. if (myTeam[index].indexOf("_") != -1) {
  787. break
  788. } else {
  789. newTeamList.push(myTeam[index])
  790. }
  791. }
  792.  
  793. newTeamList.push(SelfUid + "_" + HireArr[index].type + "_" + HireArr[index].pos)
  794.  
  795.  
  796.  
  797. CmdArr = []
  798. await sendMsg(10043, {
  799. "type": HireArr[index].type,
  800. "pos": HireArr[index].pos,
  801. "targetUid": parseInt(SelfUid)
  802. })
  803. let goalPet
  804. //取出雇佣目标精灵信息
  805. CmdArr.forEach(item => {
  806. if (parseInt(Object.keys(item)[0]) == 10043) {
  807. goalPet = JSON.parse(item["10043"]).pet
  808. }
  809. })
  810.  
  811. console.log({
  812. "levelId": 36,
  813. "hirePetList": newTeamList,
  814. "attachBattleSkill": [
  815. {
  816. "petId": goalPet.petId,
  817. "level": goalPet.level,
  818. "skillList": goalPet.skills,
  819. "getTime": HireArr[index].getTime,
  820. "otherUid": parseInt(SelfUid),
  821. "type": HireArr[index].type
  822. }
  823. ]
  824. })
  825. //开始进入草系关卡
  826. await sendMsg(4881, {
  827. "levelId": 1,
  828. "hirePetList": newTeamList,
  829. "attachBattleSkill": [
  830. {
  831. "petId": goalPet.petId,
  832. "level": goalPet.level,
  833. "skillList": goalPet.skills,
  834. "getTime": HireArr[index].getTime,
  835. "otherUid": parseInt(SelfUid),
  836. "type": HireArr[index].type
  837. }
  838. ]
  839. })
  840.  
  841.  
  842. await sendMsg(1042, {
  843. "groupId": "",
  844. "battleType": 0
  845. })
  846.  
  847.  
  848. await sendMsg(1045, {
  849. "data": null,
  850. "groupId": "",
  851. "opType": 5
  852. });
  853. CmdArr = []
  854.  
  855. await sendMsg(1057, {
  856. "groupId": "",
  857. });
  858. CmdArr = []
  859.  
  860.  
  861. await sendMsg(1045, {
  862. opType: 1,
  863. data: {
  864. skillID: nowSkillId,
  865. },
  866. groupId: "",
  867. });
  868. CmdArr = []
  869. writeLog("本次雇佣完毕")
  870. console.log("打完了!")
  871. await wait(100)
  872. break
  873. }
  874.  
  875. }
  876. if (doneGet == 0) {
  877. writeLog("雇佣完毕!!")
  878. return
  879. }
  880. }
  881.  
  882.  
  883.  
  884.  
  885. };
  886. div.appendChild(button2);
  887.  
  888.  
  889.  
  890. var button3 = document.createElement("button");
  891. button3.innerHTML = "采集";
  892. button3.style.margin = "4px";
  893. button3.style.width = "45px";
  894. button3.style.height = "30px";
  895. button3.style.marginLeft = "10px"
  896. // 在点击按钮时输出日志到文本框中
  897. button3.onclick = async function () {
  898. await getResource()
  899. };
  900. div.appendChild(button3);
  901.  
  902.  
  903.  
  904. var button4 = document.createElement("button");
  905. button4.innerHTML = "轮盘";
  906. button4.style.margin = "4px";
  907. button4.style.width = "45px";
  908. button4.style.height = "30px";
  909.  
  910. // 在点击按钮时输出日志到文本框中
  911. button4.onclick = async function () {
  912. await goPrize()
  913. };
  914. div.appendChild(button4);
  915.  
  916.  
  917.  
  918. var button9 = document.createElement("button");
  919. button9.innerHTML = "捕捉";
  920. button9.style.margin = "4px";
  921. button9.style.width = "45px";
  922. button9.style.height = "30px";
  923. // 在点击按钮时输出日志到文本框中
  924. button9.onclick = async function () {
  925. if (rewrite == 0) {
  926. showToast("请先开启监听!宝贝")
  927. return
  928. }
  929. catchCount = 0
  930. let opt = getSelectedOptions()
  931. if (opt.length == 0) {
  932. showToast("请先选择使用胶囊种类!!")
  933. return
  934. }
  935. if (isNaN(catchC.value)) {
  936. showToast("请输入捕捉次数!!")
  937. return
  938. }
  939. while (1) {
  940. await catchPet()
  941. if (catchCount >= catchC.value) {
  942. writeLog("捕捉结束")
  943. break
  944. }
  945. }
  946.  
  947.  
  948.  
  949. };
  950. div.appendChild(button9);
  951.  
  952.  
  953.  
  954.  
  955. // var stopStatus = false
  956. var battleFloor = document.createElement("button");
  957. battleFloor.innerHTML = "教皇";
  958. battleFloor.style.margin = "4px";
  959. battleFloor.style.width = "45px";
  960. battleFloor.style.height = "30px";
  961. // 在点击按钮时输出日志到文本框中
  962. battleFloor.onclick = async function () {
  963. if (rewrite == 0) {
  964. showToast("请先开启监听!宝贝")
  965. return
  966. }
  967. await battleF()
  968. };
  969. div.appendChild(battleFloor);
  970.  
  971. var ptbattleFloor = document.createElement("button");
  972. ptbattleFloor.innerHTML = "阶梯";
  973. ptbattleFloor.style.margin = "4px";
  974. ptbattleFloor.style.width = "45px";
  975. ptbattleFloor.style.height = "30px";
  976. // 在点击按钮时输出日志到文本框中
  977. ptbattleFloor.onclick = async function () {
  978. if (rewrite == 0) {
  979. showToast("请先开启监听!宝贝")
  980. return
  981. }
  982. await ptbattleF()
  983. };
  984. div.appendChild(ptbattleFloor);
  985.  
  986.  
  987. var actionPvpBtn = document.createElement("button");
  988. actionPvpBtn.innerHTML = "PVP";
  989. actionPvpBtn.style.margin = "4px";
  990. actionPvpBtn.style.width = "45px";
  991. actionPvpBtn.style.height = "30px";
  992. // 在点击按钮时输出日志到文本框中
  993. actionPvpBtn.onclick = async function () {
  994. if (rewrite == 0) {
  995. showToast("请先开启监听!最上方的开启")
  996. return
  997. }
  998. if (getSelectedOptionsPVP() == "dianfeng") {
  999. await dianfeng()
  1000. }
  1001. if (getSelectedOptionsPVP() == "luandou") {
  1002. await luandou()
  1003. }
  1004.  
  1005. if (getSelectedOptionsPVP() == "jingji") {
  1006. await jingji()
  1007. }
  1008.  
  1009.  
  1010. };
  1011. div.appendChild(actionPvpBtn);
  1012. var LpBtn = document.createElement("button");
  1013. LpBtn.innerHTML = "云令牌";
  1014. LpBtn.style.margin = "4px";
  1015. LpBtn.style.width = "60px";
  1016. LpBtn.style.height = "30px";
  1017. // 在点击按钮时输出日志到文本框中
  1018. LpBtn.onclick = async function () {
  1019. if (rewrite == 0) {
  1020. writeLog("请先开启监听!宝贝")
  1021. return
  1022. }
  1023. else{
  1024. let mimiid
  1025. try{
  1026. mimiid=document.querySelector("iframe").contentWindow.MFC.userInfo.uid
  1027. }
  1028. catch(e){
  1029. mimiid=MFC.userInfo.uid
  1030. }
  1031. try {
  1032. let input = document.createElement('input');
  1033. document.body.appendChild(input);
  1034. let value = {
  1035. mimiID: localStorage["mimiID" + mimiid.toString()],
  1036. duid: localStorage["taomee-sdk-duid"]
  1037. }
  1038. input.setAttribute('value', JSON.stringify(value));
  1039. input.select();
  1040. if (document.execCommand('copy')) {
  1041. document.execCommand('copy');
  1042. }
  1043. document.body.removeChild(input);
  1044. writeLog("复制令牌参数成功!");
  1045. } catch (error) {
  1046. writeLog("复制异常,请重新启动再尝试!");
  1047. }
  1048. }
  1049.  
  1050.  
  1051. };
  1052. div.appendChild(LpBtn);
  1053.  
  1054. // 创建单选按钮1
  1055. var radio1 = document.createElement('input');
  1056. radio1.type = 'radio';
  1057. radio1.name = 'optionPVP';
  1058. radio1.value = 'luandou';
  1059. radio1.style.marginLeft = "10px";
  1060. // 创建标签1
  1061. var label1 = document.createElement('label');
  1062. label1.innerHTML = '乱斗';
  1063. label1.style.fontSize = "10px";
  1064. // 创建单选按钮2
  1065. var radio2 = document.createElement('input');
  1066. radio2.type = 'radio';
  1067. radio2.name = 'optionPVP';
  1068. radio2.value = 'dianfeng';
  1069. // 创建标签2
  1070. var label2 = document.createElement('label');
  1071. label2.innerHTML = '巅峰';
  1072. label2.style.fontSize = "10px";
  1073. // 创建单选按钮3
  1074. var radio3 = document.createElement('input');
  1075. radio3.type = 'radio';
  1076. radio3.name = 'optionPVP';
  1077. radio3.value = 'jingji';
  1078. // 创建标签3
  1079. var label3 = document.createElement('label');
  1080. label3.innerHTML = '竞技';
  1081. label3.style.fontSize = "10px";
  1082. // 添加单选按钮和标签到div
  1083. div.appendChild(document.createElement('br'));
  1084. div.appendChild(radio1);
  1085. div.appendChild(label1);
  1086. div.appendChild(radio2);
  1087. div.appendChild(label2);
  1088. div.appendChild(radio3);
  1089. div.appendChild(label3);
  1090.  
  1091.  
  1092.  
  1093.  
  1094.  
  1095. div.appendChild(document.createElement("br"));
  1096. var 雇佣Uid = document.createElement("input");
  1097. 雇佣Uid.style.marginLeft = "10px"
  1098. 雇佣Uid.id = '雇佣Uid';
  1099. 雇佣Uid.placeholder = "输入雇佣uid"
  1100. 雇佣Uid.style.width = "100px"
  1101. div.appendChild(雇佣Uid);
  1102.  
  1103. var catchC = document.createElement("input");
  1104. catchC.style.marginLeft = "10px"
  1105. catchC.id = 'catchC';
  1106. catchC.placeholder = "输入捕捉次数"
  1107. catchC.style.width = "100px"
  1108. div.appendChild(catchC);
  1109.  
  1110. // 创建一个文本框用于输出日志
  1111. var logTextArea = document.createElement("textarea");
  1112. logTextArea.id = 'logId';
  1113. logTextArea.style.resize = 'none';
  1114. logTextArea.readOnly = 'readOnly';
  1115. logTextArea.style.display = "block";
  1116. logTextArea.style.width = "90%";
  1117. logTextArea.style.height = "70px";
  1118. logTextArea.style.margin = "10px auto";
  1119. logTextArea.scrollTop = logTextArea.scrollHeight;
  1120. logTextArea.placeholder = "b站搜 代码块 三个字 获取全新云挂机"
  1121. div.appendChild(logTextArea);
  1122.  
  1123.  
  1124. setTimeout(() => {
  1125. // 将 div 添加到页面中
  1126. let bdTag = document.getElementsByTagName("html")[0]
  1127. bdTag.appendChild(div1);
  1128. bdTag.appendChild(div);
  1129. }, 5000)
  1130. }
  1131. // 创建 MutationObserver 实例
  1132. const observer1 = new MutationObserver((mutationsList) => {
  1133. // 监听到内容变化时的回调函数
  1134. logTextArea.scrollTop = logTextArea.scrollHeight;
  1135. });
  1136.  
  1137. // 配置 MutationObserver 监听的内容变化类型
  1138. const config = { childList: true, subtree: true };
  1139.  
  1140. // 开始监听 logTextArea 内容的变化
  1141. if (logTextArea) {
  1142. observer1.observe(logTextArea, config);
  1143. } else {
  1144. console.error("yhyh未监听到内容");
  1145. }
  1146.  
  1147.  
  1148.  
  1149.  
  1150.  
  1151.  
  1152. async function sendSkillAndCatch(nowSkillId) {
  1153. await sendMsg(1042, {
  1154. "groupId": "",
  1155. "battleType": 0
  1156. })
  1157. await wait(100)
  1158.  
  1159. await sendMsg(1045, {
  1160. "opType": 5,
  1161. "data": null,
  1162. "groupId": ""
  1163. })
  1164.  
  1165.  
  1166.  
  1167. await wait(100)
  1168. await sendMsg(1057, {
  1169. "groupId": ""
  1170. })
  1171.  
  1172. await sendMsg(1045, {
  1173. "opType": 1,
  1174. "data": {
  1175. "skillID": nowSkillId
  1176. },
  1177. "groupId": ""
  1178. })
  1179.  
  1180.  
  1181.  
  1182. while (1) {
  1183. if (nextRound == true) {
  1184. console.log("$$$$$$$$$$$$$$本回合结束$$$$$$$$$$$$$$")
  1185. nextRound = false
  1186. break
  1187. } else {
  1188. await wait(50)
  1189. }
  1190. }
  1191.  
  1192.  
  1193.  
  1194.  
  1195. await sendMsg(1057, {
  1196. "groupId": ""
  1197. })
  1198. await sendMsg(1045, {
  1199. "opType": 3,
  1200. "data": {
  1201. "itemID": 4001
  1202. },
  1203. "groupId": ""
  1204. })
  1205.  
  1206. await wait(300)
  1207.  
  1208.  
  1209.  
  1210.  
  1211.  
  1212.  
  1213.  
  1214. }
  1215.  
  1216. function produceLog() {
  1217. try {
  1218. tttt = new WatchChatList;
  1219. tttt.skinName = "WatchChatListSkin";
  1220. tttt.strMsg = ""
  1221. tttt.y = 100;
  1222. RES.loadConfig("resource/ui/battle.json", "resource/ui/").then(() => {
  1223. MFC.rootLayer.addChild(tttt)
  1224. tttt.$doRemoveChild(0)
  1225. tttt.$doRemoveChild(3)
  1226. tttt.$doRemoveChild(2)
  1227. tttt.$doRemoveChild(0)
  1228. tttt.$doRemoveChild(1)
  1229. tttt.$doRemoveChild(2)
  1230. })
  1231. } catch (e) {
  1232. let WatchChatList = document.querySelector("iframe").contentWindow.WatchChatList
  1233. tttt = new WatchChatList;
  1234. tttt.skinName = "WatchChatListSkin";
  1235. tttt.strMsg = ""
  1236. tttt.y = 100;
  1237. document.querySelector("iframe").contentWindow.RES.loadConfig("resource/ui/battle.json", "resource/ui/").then(() => {
  1238. document.querySelector("iframe").contentWindow.MFC.rootLayer.addChild(tttt)
  1239. tttt.$doRemoveChild(0)
  1240. tttt.$doRemoveChild(3)
  1241. tttt.$doRemoveChild(2)
  1242. tttt.$doRemoveChild(0)
  1243. tttt.$doRemoveChild(1)
  1244. tttt.$doRemoveChild(2)
  1245. })
  1246. }
  1247.  
  1248. }
  1249. function newLogOutput() {
  1250. logTextArea.scrollTop = logTextArea.scrollHeight;
  1251. }
  1252. function writeLog(logStr) {
  1253. logTextArea.value += logStr + "\n";
  1254. newLogOutput();
  1255. //第二代版本
  1256. // try {
  1257. // tttt.strMsg = "<font color='#bbff00'>[护肝助手]</font><font color='#FFFFFF'>" + logStr + "</font>\n" + tttt.strMsg
  1258. // tttt.txtMsg.textFlow = (new egret.HtmlTextParser).parser(tttt.strMsg)
  1259. // } catch (e) {
  1260. // tttt.strMsg = "<font color='#bbff00'>[护肝助手]</font><font color='#FFFFFF'>" + logStr + "</font>\n" + tttt.strMsg
  1261. // let TextParser = document.querySelector("iframe").contentWindow.egret.HtmlTextParser
  1262. // tttt.txtMsg.textFlow = (new TextParser).parser(tttt.strMsg)
  1263. // }
  1264. }
  1265.  
  1266.  
  1267.  
  1268. async function fightQiu() {
  1269. for (let index = 1; index <= 120; index++) {
  1270. var FirgetTime
  1271. var Pet
  1272. try {
  1273. FirgetTime = document.querySelector("iframe").contentWindow.UserManager.getInstance().userInfo.defaultTeam[0]
  1274. Pet = document.querySelector("iframe").contentWindow.PetManager.getInstance().getPetInfoByGetTime(FirgetTime)
  1275. } catch (e) {
  1276. FirgetTime = UserManager.getInstance().userInfo.defaultTeam[0]
  1277. Pet = PetManager.getInstance().getPetInfoByGetTime(FirgetTime)
  1278. }
  1279.  
  1280.  
  1281. writeLog(Pet.nick + "进入战斗")
  1282. //17 进入战斗
  1283. await sendMsg(1172, {
  1284. "levelId": 2,
  1285. "battleType": 3
  1286. })
  1287. while (1) {
  1288. if (bossStatus == true) {
  1289.  
  1290. bossStatus = false
  1291. break
  1292. }
  1293. await wait(100)
  1294. }
  1295. await sendSkillToSuccess(Pet.skills[0])
  1296. writeLog("第" + index + "战斗顺利!")
  1297. }
  1298.  
  1299.  
  1300.  
  1301.  
  1302. }
  1303.  
  1304. async function sendSkillToSuccess(nowSkillId) {
  1305. await sendMsg(1042, {
  1306. "groupId": "",
  1307. "battleType": 0
  1308. })
  1309. await wait(100)
  1310.  
  1311. await sendMsg(1045, {
  1312. "opType": 5,
  1313. "data": null,
  1314. "groupId": ""
  1315. })
  1316. doneRound = false
  1317. let CountBattle = 0
  1318. while (1) {
  1319. await wait(100)
  1320. await sendMsg(1057, {
  1321. "groupId": ""
  1322. })
  1323. CountBattle++
  1324. writeLog("释放第" + CountBattle + "次技能")
  1325. await sendMsg(1045, {
  1326. "opType": 1,
  1327. "data": {
  1328. "skillID": nowSkillId
  1329. },
  1330. "groupId": ""
  1331. })
  1332.  
  1333. let oldTime = new Date().getTime()
  1334. while (1) {
  1335. if ((new Date().getTime() - oldTime) / 1000 < 2) {
  1336. if (doneRound == true) {
  1337. doneRound = false
  1338. await wait(50)
  1339. return
  1340. } else {
  1341. await wait(50)
  1342. }
  1343. } else {
  1344. break
  1345. }
  1346. }
  1347.  
  1348.  
  1349. await wait(50)
  1350. }
  1351.  
  1352. }
  1353.  
  1354.  
  1355. function showToast(txtMsg) {
  1356. try {
  1357. document.querySelector("iframe").contentWindow.MFC.bubbleAlert.showAlert(txtMsg)
  1358. } catch (e) {
  1359. MFC.bubbleAlert.showAlert(txtMsg)
  1360. }
  1361.  
  1362. }
  1363.  
  1364. function showNotice(txtMsg) {
  1365. try {
  1366. document.querySelector("iframe").contentWindow.MFC.alert.showSimpleTxt(txtMsg) //普通提示
  1367. } catch (e) {
  1368. MFC.alert.showSimpleTxt(txtMsg) //普通提示
  1369. }
  1370. }
  1371.  
  1372. async function getObjs(mapId, viewId, levelId) {
  1373. await sendMsg(279, {})
  1374. CmdArr = []
  1375.  
  1376. await sendMsg(4354, { mapId: mapId, viewId: viewId })
  1377. CmdArr = []
  1378.  
  1379.  
  1380. await sendMsg(1172, {
  1381. "levelId": levelId,
  1382. "battleType": 3
  1383. });
  1384. CmdArr = []
  1385.  
  1386.  
  1387. await sendMsg(1045, {
  1388. "data": "",
  1389. "groupId": "",
  1390. "battleType": 5
  1391. });
  1392. CmdArr = []
  1393.  
  1394. await sendMsg(1057, {
  1395. "groupId": "",
  1396. });
  1397. CmdArr = []
  1398.  
  1399.  
  1400. await sendMsg(1045, {
  1401. opType: 1,
  1402. data: {
  1403. skillID: skillID,
  1404. },
  1405. groupId: "",
  1406. });
  1407. CmdArr = []
  1408.  
  1409.  
  1410.  
  1411. console.log("打完了!")
  1412. }
  1413.  
  1414.  
  1415. function sendMsg(nowCmd, nowBody) {
  1416. return new Promise((resolve) => {
  1417. if (document.querySelector("iframe").contentWindow.GlobalSocket == undefined) {
  1418. GlobalSocket.PROTOCOL_SOCKET.send(
  1419. nowCmd,
  1420. nowBody
  1421. );
  1422. } else {
  1423. document.querySelector("iframe").contentWindow.GlobalSocket.PROTOCOL_SOCKET.send(
  1424. nowCmd,
  1425. nowBody
  1426. );
  1427. }
  1428.  
  1429.  
  1430. // if(stopStatus == true){
  1431. // writeLog("顺利停止!")
  1432. // stopStatus = false
  1433. // let p = 0/0
  1434. // }
  1435.  
  1436.  
  1437. console.log({ "指令": nowCmd, "发送体": nowBody });
  1438.  
  1439. async function checkCmd() {
  1440. while (true) {
  1441. await new Promise((resolve) => setTimeout(resolve, 1));
  1442.  
  1443. let keysArr = []
  1444. CmdArr.forEach(item => {
  1445. keysArr.push(parseInt(Object.keys(item)[0]))
  1446. })
  1447. if (keysArr.indexOf(nowCmd) != -1) {
  1448. console.info("接收到了信息!" + nowCmd)
  1449.  
  1450. resolve();
  1451. break;
  1452. }
  1453. }
  1454. }
  1455.  
  1456. checkCmd().then(resolve);
  1457. });
  1458. }
  1459.  
  1460.  
  1461.  
  1462. function getSelectedOptionsPVP() {
  1463. var radios = document.getElementsByName('optionPVP');
  1464. var selectedOptions = [];
  1465. for (var i = 0; i < radios.length; i++) {
  1466. if (radios[i].checked) {
  1467. selectedOptions.push(radios[i].value);
  1468. }
  1469. }
  1470. return selectedOptions;
  1471. }
  1472.  
  1473. function getSelectedOptions() {
  1474. var radios = document.getElementsByName('option');
  1475. var selectedOptions = [];
  1476. for (var i = 0; i < radios.length; i++) {
  1477. if (radios[i].checked) {
  1478. selectedOptions.push(radios[i].value);
  1479. }
  1480. }
  1481. return selectedOptions;
  1482. }
  1483. function getRandomIndex(array) {
  1484. var randomIndex = Math.floor(Math.random() * array.length);
  1485. return randomIndex;
  1486. }
  1487.  
  1488.  
  1489.  
  1490. async function catchPet() {
  1491. let opt = getSelectedOptions()[0]
  1492. try {
  1493. var cap = document.querySelector("iframe").contentWindow.ItemManager.getInstance().getItemNumById(opt)
  1494. } catch (e) {
  1495. var cap = ItemManager.getInstance().getItemNumById(opt)
  1496. }
  1497. let nowStr = opt == "4001" ? "普通" : opt == "4002" ? "中级" : opt == "4003" ? "高级" : "";
  1498. writeLog(`目前${nowStr}胶囊剩余数量:` + cap);
  1499. try {
  1500. let randomIndex = getRandomIndex(document.querySelector("iframe").contentWindow.MFC.mapManager._bossManager.bossDataList)
  1501. var levelId = document.querySelector("iframe").contentWindow.MFC.mapManager._bossManager.bossDataList[randomIndex].id
  1502.  
  1503.  
  1504. } catch (e) {
  1505. let randomIndex = getRandomIndex(MFC.mapManager._bossManager.bossDataList)
  1506. var levelId = MFC.mapManager._bossManager.bossDataList[randomIndex].id
  1507.  
  1508. }
  1509. await sendMsg(1172, {
  1510. "levelId": levelId,
  1511. "battleType": 3
  1512. })
  1513. while (1) {
  1514. if (bossStatus == true) {
  1515. bossStatus = false
  1516. break
  1517. }
  1518. await wait(100)
  1519. }
  1520.  
  1521.  
  1522. //首发技能
  1523. var Pet
  1524. var FirgetTime
  1525. try {
  1526. FirgetTime = document.querySelector("iframe").contentWindow.UserManager.getInstance().userInfo.defaultTeam[0]
  1527. Pet = document.querySelector("iframe").contentWindow.PetManager.getInstance().getPetInfoByGetTime(FirgetTime)
  1528. } catch (e) {
  1529. FirgetTime = UserManager.getInstance().userInfo.defaultTeam[0]
  1530. Pet = PetManager.getInstance().getPetInfoByGetTime(FirgetTime)
  1531. }
  1532. await sendSkillAndCatch(Pet.skills[0], parseInt(opt))
  1533. }
  1534.  
  1535.  
  1536. async function sendSkillAndCatch(nowSkillId, capID) {
  1537. await sendMsg(1042, {
  1538. "groupId": "",
  1539. "battleType": 0
  1540. })
  1541. await wait(100)
  1542. await sendMsg(1045, {
  1543. "opType": 5,
  1544. "data": null,
  1545. "groupId": ""
  1546. })
  1547. await wait(100)
  1548. while (1) {
  1549. if (nextRound == true) {
  1550. console.log("$$$$$$$$$$$$$$本回合结束$$$$$$$$$$$$$$")
  1551. writeLog("顺利进入对局!")
  1552. nextRound = false
  1553. break
  1554. } else {
  1555. await wait(50)
  1556. }
  1557. }
  1558. await wait(100)
  1559.  
  1560. while (1) {
  1561. await sendMsg(1057, {
  1562. "groupId": ""
  1563. })
  1564.  
  1565. await sendMsg(1045, {
  1566. "opType": 1,
  1567. "data": {
  1568. "skillID": nowSkillId
  1569. },
  1570. "groupId": ""
  1571. })
  1572.  
  1573. while (1) {
  1574. if (nextRound == true) {
  1575. console.log("$$$$$$$$$$$$$$本回合结束$$$$$$$$$$$$$$")
  1576. writeLog("继续释放技能!")
  1577. nextRound = false
  1578. break
  1579. } else {
  1580. await wait(50)
  1581. }
  1582. }
  1583. //等待1s 等待288结算的出现
  1584. let oldTime = new Date().getTime()
  1585. while (1) {
  1586. if ((new Date().getTime() - oldTime) / 1000 < 2) {
  1587. if (doneRound == true) {
  1588. console.log("##############战斗结束##############")
  1589. doneRound = false
  1590. await wait(50)
  1591. return
  1592. } else {
  1593. await wait(50)
  1594. }
  1595. } else {
  1596. break
  1597. }
  1598. }
  1599.  
  1600.  
  1601. var haveHp = PetMsgDetail.result.playerInfos[1].petInfos[0].crtHp
  1602. writeLog("野怪还剩余hp:" + haveHp)
  1603. if (haveHp <= 1) {
  1604. writeLog("开始捕捉!")
  1605. await wait(1000)
  1606. await sendMsg(1057, {
  1607. "groupId": ""
  1608. })
  1609. await wait(1000)
  1610. break
  1611. }
  1612. }
  1613. // doneRound = false;
  1614. let useC = 0
  1615. // nextRound = false
  1616. changePet = ""
  1617. while (1) {
  1618. useC++
  1619. writeLog("丢出第" + useC + "次胶囊捕捉~")
  1620. await sendMsg(1045, {
  1621. "opType": 3,
  1622. "data": {
  1623. "itemID": capID
  1624. },
  1625. "groupId": ""
  1626. })
  1627. if (useC >= 5) {
  1628. writeLog("5次还没捕捉到,跑路了")
  1629. await sendMsg(8201, {})
  1630. await sendMsg(8209, {})
  1631. //逃跑
  1632. await sendMsg(303, {})
  1633. return
  1634.  
  1635. }
  1636.  
  1637. // while (1) {
  1638. // if (changePet != "") {
  1639. // if (JSON.stringify(changePet).indexOf("getTime") != -1) {
  1640. // writeLog("捕捉成功:" + changePet.changePetList[0].nick + " 天赋: " + changePet.changePetList[0].talent)
  1641. // await wait(2000)
  1642. // return
  1643. // } else {
  1644. // writeLog("捕捉失败")
  1645. // await wait(1000)
  1646. // break
  1647. // }
  1648. // } else {
  1649. // await wait(1000)
  1650. // }
  1651. // }
  1652. // changePet = ""
  1653. await wait(200)
  1654. while (1) {
  1655. if (nextRound == true) {
  1656. console.log("$$$$$$$$$$$$$$捕捉,本回合结束$$$$$$$$$$$$$$")
  1657. nextRound = false
  1658. break
  1659. } else {
  1660. await wait(100)
  1661. console.log("等待捕捉回合结束")
  1662. }
  1663. }
  1664. while (1) {
  1665. if (捕捉情况 != "") {
  1666. if (JSON.stringify(捕捉情况).indexOf("getTime") != -1) {
  1667. catchCount++
  1668. await wait(2000)
  1669. return
  1670. } else {
  1671. writeLog("捕捉失败")
  1672. await wait(1000)
  1673. break
  1674. }
  1675. } else {
  1676. await wait(1000)
  1677. }
  1678. }
  1679. 捕捉情况 = ""
  1680.  
  1681. //等待1s 等待288结算的出现
  1682. let oldTime = new Date().getTime()
  1683. while (1) {
  1684. if ((new Date().getTime() - oldTime) / 1000 < 2) {
  1685. if (doneRound == true) {
  1686. console.log("##############战斗结束##############")
  1687. doneRound = false
  1688. await wait(50)
  1689. return
  1690. } else {
  1691. await wait(50)
  1692. }
  1693. } else {
  1694. break
  1695. }
  1696. }
  1697.  
  1698. await wait(200)
  1699. await sendMsg(1057, {
  1700. "groupId": ""
  1701. })
  1702. await wait(200)
  1703.  
  1704. // await sendMsg(1057, {
  1705. // "groupId": ""
  1706. // })
  1707.  
  1708. }
  1709.  
  1710. }
  1711.  
  1712. async function ptbattleF() {
  1713. if (rewrite == 0) {
  1714. showToast("请先开启监听!宝贝")
  1715. return
  1716. }
  1717. showNotice("1.艾尔伊洛带幻化利刃增幅技能放一号位\n2.蒙多带光闪击增幅技能放二号位\n3.奥斯卡带圣灵击放三号位")
  1718. //首次读取层数
  1719. await sendMsg(1184,
  1720. {}
  1721. )
  1722. while (1) {
  1723. await wait(100)
  1724. await sendMsg(1184,
  1725. {}
  1726. )
  1727. writeLog("当前层数:" + (parseInt(ptfloorContent.fragments.split("_")[1]) - 11))
  1728. if (parseInt(ptfloorContent.fragments.split("_")[1]) >= 42) {
  1729. writeLog("顺利通关!,脚本结束")
  1730. await wait(200)
  1731. break
  1732. }
  1733. if (parseInt(ptfloorContent.fragments.split("_")[1]) < 22) {
  1734. await sendMsg(1184,
  1735. {}
  1736. )
  1737. writeLog("当前层数:" + ptfloorContent.fragments.split("_")[1])
  1738. await sendMsg(1185,
  1739. {
  1740. "idList": [
  1741. 0
  1742. ]
  1743. })
  1744. while (1) {
  1745. if (bossStatus == true) {
  1746. console.log("顺利加载战斗资源")
  1747. bossStatus = false
  1748. break
  1749. } else {
  1750. await wait(50)
  1751. }
  1752. }
  1753. await sendMsg(1042, {
  1754. "groupId": "",
  1755. "battleType": 0
  1756. })
  1757. await sendMsg(1045, {
  1758. "opType": 5,
  1759. "data": null,
  1760. "groupId": ""
  1761. })
  1762. await sendMsg(1057, {
  1763. "groupId": "",
  1764. });
  1765. writeLog(`释放幻化利刃`)
  1766. await sendMsg(1045, {
  1767. "opType": 1,
  1768. "data": {
  1769. "skillID": 100377
  1770. //10864
  1771. //100377
  1772. },
  1773. "groupId": ""
  1774. })
  1775. await wait(100)
  1776. await sendMsg(8201, {})
  1777. await sendMsg(8209, {})
  1778. //逃跑
  1779. await sendMsg(303, {})
  1780. await wait(50)
  1781. //顺利释放一次
  1782. console.log("顺利释放一次")
  1783. }
  1784. if (parseInt(ptfloorContent.fragments.split("_")[1]) >= 22) {
  1785. var Ha = ""
  1786. if (Buff == true) {
  1787. Ha = true
  1788.  
  1789. }
  1790. if (Ha == true) {
  1791. writeLog("重生逃跑")
  1792. await sendMsg(1185,
  1793. {
  1794. "idList": [
  1795. 2
  1796. ]
  1797. })
  1798. while (1) {
  1799. if (bossStatus == true) {
  1800. console.log("顺利加载战斗资源")
  1801. bossStatus = false
  1802. break
  1803. } else {
  1804. await wait(50)
  1805. }
  1806. }
  1807. await sendMsg(1042, {
  1808. "groupId": "",
  1809. "battleType": 0
  1810. })
  1811. await sendMsg(1045, {
  1812. "opType": 5,
  1813. "data": null,
  1814. "groupId": ""
  1815. })
  1816. await sendMsg(1057, {
  1817. "groupId": "",
  1818. })
  1819. writeLog(`释放圣灵击`)
  1820. await sendMsg(1045, {
  1821. "opType": 1,
  1822. "data": {
  1823. "skillID": 14861
  1824. //100436
  1825. //14861
  1826. },
  1827. "groupId": ""
  1828. })
  1829. await sendMsg(8201, {})
  1830. await sendMsg(8209, {})
  1831. //逃跑
  1832. await sendMsg(303, {})
  1833. await wait(50)
  1834. Ha = ""
  1835. //顺利释放一次
  1836. console.log("顺利释放一次")
  1837. }
  1838. else {
  1839. await sendMsg(1184,
  1840. {}
  1841. )
  1842. await sendMsg(1185,
  1843. {
  1844. "idList": [
  1845. 1
  1846. ]
  1847. })
  1848. while (1) {
  1849. if (bossStatus == true) {
  1850. console.log("顺利加载战斗资源")
  1851. bossStatus = false
  1852. break
  1853. } else {
  1854. await wait(50)
  1855. }
  1856. }
  1857. await sendMsg(1042, {
  1858. "groupId": "",
  1859. "battleType": 0
  1860. })
  1861. await sendMsg(1045, {
  1862. "opType": 5,
  1863. "data": null,
  1864. "groupId": ""
  1865. })
  1866. await sendMsg(1057, {
  1867. "groupId": "",
  1868. });
  1869. writeLog(`释放光闪击`)
  1870. await sendMsg(1045, {
  1871. "opType": 1,
  1872. "data": {
  1873. "skillID": 100023
  1874. },
  1875. "groupId": ""
  1876. })
  1877. await wait(100)
  1878. await sendMsg(8201, {})
  1879. await sendMsg(8209, {})
  1880. //逃跑
  1881. await sendMsg(303, {})
  1882. await wait(50)
  1883. //顺利释放一次
  1884. console.log("顺利释放一次")
  1885. }
  1886. }
  1887. }
  1888. }
  1889.  
  1890. async function battleF() {
  1891. var doneKing = 0
  1892. while (1) {
  1893. await sendMsg(12496,
  1894. {
  1895. "type": 2,
  1896. "petList": [],
  1897. "idList": [],
  1898. "saveType": 0
  1899. }
  1900. )
  1901. while (1) {
  1902. if (floorContent != "") {
  1903. if (doneKing == 1 && (floorContent.fragments.split("_")[1] == 0)) {
  1904. writeLog("顺利击毙教皇!,脚本结束")
  1905. return
  1906. }
  1907. if (floorContent.fragments.split("_")[1] == "15") {
  1908. writeLog("当前层数:13,到教皇了")
  1909. doneKing = 1
  1910. } else {
  1911. writeLog("当前层数:" + floorContent.fragments.split("_")[1])
  1912. }
  1913. floorContent = ""
  1914. break
  1915. } else {
  1916. await wait(200)
  1917. }
  1918. }
  1919. floorContent = ""
  1920. if (doneKing == 0) {
  1921. await sendMsg(12496,
  1922. {
  1923. "type": 3,
  1924. "petList": [],
  1925. "idList": [
  1926. 0
  1927. ],
  1928. "saveType": 0
  1929. }
  1930. )
  1931. } else {
  1932. await sendMsg(12496,
  1933. {
  1934. "type": 3,
  1935. "petList": [],
  1936. "idList": [
  1937. 1
  1938. ],
  1939. "saveType": 0
  1940. }
  1941. )
  1942. }
  1943.  
  1944. writeLog("开始进入战斗")
  1945. while (1) {
  1946. if (bossStatus == true) {
  1947. console.log("顺利加载战斗资源")
  1948. bossStatus = false
  1949. break
  1950. } else {
  1951. await wait(50)
  1952. }
  1953. }
  1954.  
  1955.  
  1956. await sendMsg(1042, {
  1957. "groupId": "",
  1958. "battleType": 0
  1959. })
  1960.  
  1961.  
  1962. await sendMsg(1045, {
  1963. "opType": 5,
  1964. "data": null,
  1965. "groupId": ""
  1966. })
  1967. await sendMsg(1057, {
  1968. "groupId": "",
  1969. });
  1970.  
  1971.  
  1972. if (doneKing == 0) {
  1973. writeLog(`释放蒙多光闪击`)
  1974. await sendMsg(1045, {
  1975. "opType": 1,
  1976. "data": {
  1977. "skillID": 100023
  1978. },
  1979. "groupId": ""
  1980. })
  1981. } else {
  1982. writeLog(`释放雷伊雷神天明闪`)
  1983. await sendMsg(1045, {
  1984. "opType": 1,
  1985. "data": {
  1986. "skillID": 10825
  1987. },
  1988. "groupId": ""
  1989. })
  1990. }
  1991.  
  1992.  
  1993. await wait(100)
  1994. await sendMsg(8201, {})
  1995.  
  1996.  
  1997. await sendMsg(8209, {})
  1998. //逃跑
  1999. await sendMsg(303, {})
  2000.  
  2001.  
  2002. await wait(300)
  2003.  
  2004. //顺利释放一次
  2005. console.log("顺利释放一次")
  2006.  
  2007. // while (1) {
  2008. // if (floorContent != "") {
  2009. // // writeLog("当前层数:" + floorContent.fragments.split("_")[1])
  2010. // floorContent = ""
  2011. // break
  2012. // }else {
  2013. // await wait(50)
  2014. // }
  2015. // }
  2016. }
  2017. }
  2018.  
  2019.  
  2020.  
  2021. async function jingji(){
  2022. let PvpC = 0
  2023. while (1) {
  2024. while (1) {
  2025. await wait(100)
  2026. var allTouchs = getTouchs("_source", "arena_img_go_png")
  2027. if (allTouchs) {
  2028. touchBtn(allTouchs[2])
  2029. await wait(1000)
  2030. writeLog("前往竞技")
  2031. }
  2032. var allTouchs = getTouchs("_source", "arena_06_png")
  2033. if (allTouchs) {
  2034. //到达匹配界面
  2035. writeLog("到达竞技界面")
  2036. break
  2037. } else {
  2038. try {
  2039. document.querySelector("iframe").contentWindow.MFC.moduleManager.openModule(249)
  2040. } catch (error) {
  2041. MFC.moduleManager.openModule(249)
  2042. }
  2043. await wait(300)
  2044. }
  2045. var allTouchs = getTouchs("_source", "arena_top_fight_img_btn_pipei_png")
  2046. if (allTouchs) {
  2047. var nowUis = await findUIs("_source", "arena_top_fight_img_close_png")
  2048. writeLog("关闭巅峰窗口")
  2049. touchBtn(nowUis[0])
  2050. await wait(300)
  2051. }
  2052. var allTouchs = getTouchs("_source", "arena_77_png")
  2053. if (allTouchs) {
  2054. var nowUis = await findUIs("_source", "close_button_nor_png")
  2055. writeLog("关闭乱斗窗口")
  2056. touchBtn(nowUis[0].$parent)
  2057. await wait(300)
  2058. }
  2059. }
  2060. writeLog("点击竞技匹配")
  2061. await wait(800)
  2062. var nowUis = await findUIs("_source", "arena_06_png")
  2063. await wait(800)
  2064. writeLog("响应竞技匹配")
  2065. touchBtn(nowUis[0].$parent)
  2066.  
  2067. var nowUis = await findUIs("_source", "toolbar_auto_battle_off_png")
  2068. writeLog("开始自动战斗")
  2069. await wait(800)
  2070. touchBtn(nowUis[0])
  2071. logicDoneRound = false
  2072. while (1) {
  2073. await wait(200)
  2074. if (logicDoneRound) {
  2075. break
  2076. }
  2077. try {
  2078. if (roundContent.result.roundNum >= 10) {
  2079. writeLog("到达十回合 发起投降")
  2080. //! !!发起投降
  2081. try {
  2082. document.querySelector("iframe").contentWindow.MFC.battleManager.surrenderPvp({
  2083. "type": 10,
  2084. "cmd": null,
  2085. "mapID": 1001
  2086. })
  2087. } catch (e) {
  2088. MFC.battleManager.surrenderPvp({
  2089. "type": 10,
  2090. "cmd": null,
  2091. "mapID": 1001
  2092. })
  2093. }
  2094. break
  2095. }
  2096. } catch (e) {
  2097. }
  2098. }
  2099. writeLog("竞技战斗结束")
  2100. PvpC++
  2101. writeLog("PVP 竞技: " + PvpC + "次")
  2102. while (1) {
  2103. await wait(900)
  2104. let clickx1 = nnnn.touch.stage.$screen.stage.$stageWidth / 3
  2105. let clicky1 = nnnn.touch.stage.$screen.stage.$stageHeight / 3
  2106. nnnn.touch.onTouchBegin(clickx1, clicky1, 0); nnnn.touch.onTouchEnd(clickx1, clicky1, 0);
  2107. var allTouchs = getTouchs("_source", "button_yellow_up_100_png")
  2108. if (allTouchs) {
  2109. writeLog("升段提示,点击确认")
  2110. touchBtn(allTouchs[0])
  2111. await wait(1200)
  2112. }
  2113. var allTouchs = getTouchs("_source", "arena_06_png")
  2114. if (allTouchs) {
  2115. break
  2116. }
  2117. }
  2118.  
  2119. }
  2120. }
  2121.  
  2122. async function luandou() {
  2123. let PvpC = 0
  2124. while (1) {
  2125. while (1) {
  2126. await wait(100)
  2127. var allTouchs = getTouchs("_source", "arena_img_go_png")
  2128. if (allTouchs) {
  2129. touchBtn(allTouchs[0])
  2130. await wait(1000)
  2131. writeLog("前往乱斗")
  2132. }
  2133. var allTouchs = getTouchs("_source", "arena_77_png")
  2134. if (allTouchs) {
  2135. //到达匹配界面
  2136. writeLog("到达乱斗界面")
  2137. break
  2138. } else {
  2139. try {
  2140. document.querySelector("iframe").contentWindow.MFC.moduleManager.openModule(249)
  2141. } catch (error) {
  2142. MFC.moduleManager.openModule(249)
  2143. }
  2144. await wait(300)
  2145. }
  2146. var allTouchs = getTouchs("_source", "arena_top_fight_img_btn_pipei_png")
  2147. if (allTouchs) {
  2148. var nowUis = await findUIs("_source", "arena_top_fight_img_close_png")
  2149. writeLog("关闭巅峰窗口")
  2150. touchBtn(nowUis[0])
  2151. await wait(300)
  2152. }
  2153. var allTouchs = getTouchs("_source", "arena_06_png")
  2154. if (allTouchs) {
  2155. var nowUis = await findUIs("_source", "close_button_nor_png")
  2156. writeLog("关闭竞技窗口")
  2157. touchBtn(nowUis[0].$parent)
  2158. await wait(300)
  2159. }
  2160. }
  2161. writeLog("点击乱斗匹配")
  2162. await wait(800)
  2163. var nowUis = await findUIs("_source", "arena_77_png")
  2164. await wait(800)
  2165. writeLog("响应乱斗匹配")
  2166. touchBtn(nowUis[0].$parent)
  2167.  
  2168. var nowUis = await findUIs("_source", "toolbar_auto_battle_off_png")
  2169. writeLog("开始自动战斗")
  2170. await wait(800)
  2171. touchBtn(nowUis[0])
  2172. logicDoneRound = false
  2173. while (1) {
  2174. await wait(200)
  2175. if (logicDoneRound) {
  2176. break
  2177. }
  2178. try {
  2179. if (roundContent.result.roundNum >= 10) {
  2180. writeLog("到达十回合 发起投降")
  2181. //! !!发起投降
  2182. try {
  2183. document.querySelector("iframe").contentWindow.MFC.battleManager.surrenderPvp({
  2184. "type": 10,
  2185. "cmd": null,
  2186. "mapID": 1001
  2187. })
  2188. } catch (e) {
  2189. MFC.battleManager.surrenderPvp({
  2190. "type": 10,
  2191. "cmd": null,
  2192. "mapID": 1001
  2193. })
  2194. }
  2195. break
  2196. }
  2197. } catch (e) {
  2198. }
  2199. }
  2200. writeLog("大乱斗战斗结束")
  2201. PvpC++
  2202. writeLog("PVP 乱斗: " + PvpC + "次")
  2203. while (1) {
  2204. await wait(900)
  2205. let clickx1 = nnnn.touch.stage.$screen.stage.$stageWidth / 3
  2206. let clicky1 = nnnn.touch.stage.$screen.stage.$stageHeight / 3
  2207. nnnn.touch.onTouchBegin(clickx1, clicky1, 0); nnnn.touch.onTouchEnd(clickx1, clicky1, 0);
  2208. var allTouchs = getTouchs("_source", "button_yellow_up_100_png")
  2209. if (allTouchs) {
  2210. writeLog("升段提示,点击确认")
  2211. touchBtn(allTouchs[0])
  2212. await wait(1200)
  2213. }
  2214. var allTouchs = getTouchs("_source", "arena_77_png")
  2215. if (allTouchs) {
  2216. break
  2217. }
  2218. }
  2219.  
  2220. }
  2221. }
  2222.  
  2223.  
  2224.  
  2225.  
  2226.  
  2227. async function dianfeng() {
  2228. let PvpC = 0
  2229. while (1) {
  2230. while (1) {
  2231. await wait(100)
  2232. var allTouchs = getTouchs("_source", "arena_img_go_png")
  2233. if (allTouchs) {
  2234. touchBtn(allTouchs[1])
  2235. await wait(1000)
  2236. writeLog("前往巅峰")
  2237. }
  2238. var allTouchs = getTouchs("_source", "arena_top_fight_img_btn_pipei_png")
  2239. if (allTouchs) {
  2240. //到达匹配界面
  2241. writeLog("到达匹配界面")
  2242. break
  2243. } else {
  2244. try {
  2245. document.querySelector("iframe").contentWindow.MFC.moduleManager.openModule(249)
  2246. } catch (error) {
  2247. MFC.moduleManager.openModule(249)
  2248. }
  2249. await wait(300)
  2250. }
  2251. var allTouchs = getTouchs("_source", "arena_77_png")
  2252. if (allTouchs) {
  2253. var nowUis = await findUIs("_source", "close_button_nor_png")
  2254. showAllMsg("关闭乱斗窗口")
  2255. touchBtn(nowUis[0].$parent)
  2256. await wait(300)
  2257. }
  2258. var allTouchs = getTouchs("_source", "arena_06_png")
  2259. if (allTouchs) {
  2260. var nowUis = await findUIs("_source", "close_button_nor_png")
  2261. showAllMsg("关闭竞技窗口")
  2262. touchBtn(nowUis[0].$parent)
  2263. await wait(300)
  2264. }
  2265. }
  2266.  
  2267. var nowUis = await findUIs("_groupName", "rbg_top_switch")
  2268. writeLog("点击狂野模式")
  2269. touchBtn(nowUis[2])
  2270. await wait(800)
  2271. var nowUis = await findUIs("_source", "arena_top_fight_img_btn_pipei_png")
  2272. await wait(800)
  2273. touchBtn(nowUis[0])
  2274. var nowUis = await findUIs("_source", "toolbar_auto_battle_off_png")
  2275. writeLog("开始自动战斗")
  2276. await wait(800)
  2277. touchBtn(nowUis[0])
  2278. writeLog("等待战斗结束")
  2279. logicDoneRound = false
  2280. while (1) {
  2281. await wait(200)
  2282. if (logicDoneRound) {
  2283. break
  2284. }
  2285. try {
  2286. if (roundContent.result.roundNum >= 10) {
  2287. writeLog("到达十回合 发起投降")
  2288. //! !!发起投降
  2289. try {
  2290. document.querySelector("iframe").contentWindow.MFC.battleManager.surrenderPvp({
  2291. "type": 10,
  2292. "cmd": null,
  2293. "mapID": 1001
  2294. })
  2295. } catch (e) {
  2296. MFC.battleManager.surrenderPvp({
  2297. "type": 10,
  2298. "cmd": null,
  2299. "mapID": 1001
  2300. })
  2301. }
  2302. break
  2303. }
  2304. } catch (e) {
  2305. }
  2306. }
  2307. writeLog("巅峰战斗结束")
  2308. PvpC++
  2309. writeLog("PVP 巅峰: " + PvpC + "次")
  2310. await wait(1400)
  2311. while (1) {
  2312. await wait(900)
  2313. let clickx1 = nnnn.touch.stage.$screen.stage.$stageWidth / 2
  2314. let clicky1 = nnnn.touch.stage.$screen.stage.$stageHeight / 2
  2315. nnnn.touch.onTouchBegin(clickx1, clicky1, 0); nnnn.touch.onTouchEnd(clickx1, clicky1, 0);
  2316. var allTouchs = getTouchs("_source", "button_yellow_up_100_png")
  2317. if (allTouchs) {
  2318. writeLog("升段提示,点击确认")
  2319. touchBtn(allTouchs[0])
  2320. await wait(1200)
  2321. }
  2322. var allTouchs = getTouchs("_source", "arena_top_fight_img_btn_pipei_png")
  2323. if (allTouchs) {
  2324. break
  2325. }
  2326. }
  2327. }
  2328. }
  2329.  
  2330.  
  2331. async function findUIs(attr, pngStr) {
  2332. while (1) {
  2333. await wait(100)
  2334. var allTouchs = getTouchs(attr, pngStr)
  2335. if (allTouchs) {
  2336. return allTouchs
  2337. }
  2338. }
  2339. }
  2340.  
  2341.  
  2342.  
  2343. function getTouchs(attr, btnName) {
  2344. var uiObjects = [];
  2345. function findUIObjects(container) {
  2346. var children = container.$children;
  2347. for (var i = 0; i < children.length; i++) {
  2348. var child = children[i];
  2349. try {
  2350. if (child instanceof document.querySelector("iframe").contentWindow.egret.DisplayObjectContainer) {
  2351. uiObjects.push(child);
  2352. findUIObjects(child);
  2353. } else {
  2354. // 这里可以根据需要判断其他类型的UI对象,将其加入uiObjects数组中
  2355. }
  2356. } catch (error) {
  2357. if (child instanceof egret.DisplayObjectContainer) {
  2358. uiObjects.push(child);
  2359. findUIObjects(child);
  2360. } else {
  2361. // 这里可以根据需要判断其他类型的UI对象,将其加入uiObjects数组中
  2362. }
  2363. }
  2364. }
  2365. }
  2366. // 假设this.stage为舞台对象
  2367. findUIObjects(sta);
  2368. //!遍历所有 uiObjects
  2369. var goalUis = []
  2370. for (let index = 0; index < uiObjects.length; index++) {
  2371. let element = uiObjects[index];
  2372. if (element.$children) {
  2373. let nowC = element.$children
  2374. nowC.forEach((item) => {
  2375. try {
  2376. if (item[attr + ""]) {
  2377. if (item[attr + ""] == btnName) {
  2378. goalUis.push(item)
  2379. }
  2380. }
  2381. } catch (error) {
  2382. }
  2383. })
  2384. }
  2385. }
  2386. if (goalUis.length == 0) {
  2387. return false
  2388. }
  2389. return goalUis
  2390. }
  2391.  
  2392.  
  2393. function touchBtn(goalUi) {
  2394. try {
  2395. document.querySelector("iframe").contentWindow.egret.TouchEvent.dispatchTouchEvent(goalUi, document.querySelector("iframe").contentWindow.egret.TouchEvent.TOUCH_BEGIN, !0, !0, 111, 111, 0, !0)
  2396. document.querySelector("iframe").contentWindow.egret.TouchEvent.dispatchTouchEvent(goalUi, document.querySelector("iframe").contentWindow.egret.TouchEvent.TOUCH_TAP, !0, !0, 111, 111, 0, !0)
  2397. document.querySelector("iframe").contentWindow.egret.TouchEvent.dispatchTouchEvent(goalUi, document.querySelector("iframe").contentWindow.egret.TouchEvent.TOUCH_END, !0, !0, 111, 111, 0, !0)
  2398. } catch (e) {
  2399. egret.TouchEvent.dispatchTouchEvent(goalUi, egret.TouchEvent.TOUCH_BEGIN, !0, !0, 111, 111, 0, !0)
  2400. egret.TouchEvent.dispatchTouchEvent(goalUi, egret.TouchEvent.TOUCH_TAP, !0, !0, 111, 111, 0, !0)
  2401. egret.TouchEvent.dispatchTouchEvent(goalUi, egret.TouchEvent.TOUCH_END, !0, !0, 111, 111, 0, !0)
  2402. }
  2403. }
  2404.  
  2405.  
  2406. function fixMsg() {
  2407. // 保存原函数
  2408. var originalCreateMsg;
  2409. try {
  2410. var socketPrototype = document.querySelector("iframe").contentWindow.SocketSeqMsgs.prototype;
  2411. if (socketPrototype.createMsg === undefined) {
  2412. originalCreateMsg = SocketSeqMsgs.prototype.createMsg;
  2413. socketPrototype = SocketSeqMsgs.prototype;
  2414. } else {
  2415. originalCreateMsg = socketPrototype.createMsg;
  2416. }
  2417. } catch (e) {
  2418. originalCreateMsg = SocketSeqMsgs.prototype.createMsg;
  2419. socketPrototype = SocketSeqMsgs.prototype;
  2420. }
  2421.  
  2422.  
  2423.  
  2424.  
  2425.  
  2426.  
  2427.  
  2428. try {
  2429. var originalGetLocation
  2430. var WebTouchPrototype = document.querySelector("iframe").contentWindow.egret.web.WebTouchHandler.prototype
  2431. originalGetLocation = WebTouchPrototype.getLocation;
  2432. WebTouchPrototype.getLocation = function (nowT) {
  2433. window.globalThis.nnnn = this
  2434. // 在这里可以修改constructor函数的执行过程,加入你自己的逻辑
  2435. var result = originalGetLocation.call(this, nowT); // 调用原始的 getLocation 函数,并获取返回值
  2436. return result; // 返回原始 getLocation 函数的返回值
  2437. };
  2438. } catch (e) {
  2439. var originalGetLocation
  2440. var WebTouchPrototype = egret.web.WebTouchHandler.prototype
  2441. originalGetLocation = WebTouchPrototype.getLocation;
  2442. WebTouchPrototype.getLocation = function (nowT) {
  2443. window.global.nnnn = this
  2444. // 在这里可以修改constructor函数的执行过程,加入你自己的逻辑
  2445. var result = originalGetLocation.call(this, nowT); // 调用原始的 getLocation 函数,并获取返回值
  2446. return result; // 返回原始 getLocation 函数的返回值
  2447. };
  2448. }
  2449.  
  2450.  
  2451.  
  2452.  
  2453.  
  2454.  
  2455.  
  2456. var originalCreateMsg;
  2457. try {
  2458. var originalTarget
  2459. var sysTouchPrototype = document.querySelector("iframe").contentWindow.egret.sys.TouchHandler.prototype
  2460. originalTarget = sysTouchPrototype.findTarget;
  2461. sysTouchPrototype.findTarget = function (t, e) {
  2462. window.globalThis.sta = this.stage
  2463. // 在这里可以修改constructor函数的执行过程,加入你自己的逻辑
  2464. var result = originalTarget.call(this, t, e); // 调用原始的 getLocation 函数,并获取返回值
  2465. return result; // 返回原始 getLocation 函数的返回值
  2466. };
  2467. } catch (e) {
  2468. var originalTarget
  2469. var sysTouchPrototype = egret.sys.TouchHandler.prototype
  2470. originalTarget = sysTouchPrototype.findTarget;
  2471. sysTouchPrototype.findTarget = function (t, e) {
  2472. window.global.sta = this.stage
  2473. // 在这里可以修改constructor函数的执行过程,加入你自己的逻辑
  2474. var result = originalTarget.call(this, t, e); // 调用原始的 getLocation 函数,并获取返回值
  2475. return result; // 返回原始 getLocation 函数的返回值
  2476. };
  2477. }
  2478.  
  2479.  
  2480. socketPrototype.createMsg = function (t, e) {
  2481. originalCreateMsg.call(this, t, e);
  2482. var s = this._tmpBytesArray[this._tmpBytesArray.length - 1];
  2483. var raw = s.raw;
  2484. var cmd = parseInt((s.header.cmd + "").trim());
  2485. CmdArr.push({ [cmd]: raw });
  2486. // console.log("=======");
  2487. // console.log('接收cmd:', cmd);
  2488. // console.log('raw:', raw);
  2489. try {
  2490. if (cmd == 1056) {
  2491. roundContent = JSON.parse(raw);
  2492. console.log("本回合结束")
  2493. nextRound = true;
  2494. PetMsgDetail = JSON.parse(raw);
  2495. let result = JSON.parse(raw).result.result
  2496. // 0未结束战斗 1我方获胜 2对方获胜
  2497. battleResult = result
  2498. console.error("对战结果:" + battleResult)
  2499. if (result) {
  2500. logicDoneRound = true
  2501. } else {
  2502. logicDoneRound = false
  2503. }
  2504. }
  2505. if (cmd == 1049) {
  2506. console.log("顺利加载进入战斗!")
  2507. bossStatus = true;
  2508. }
  2509. if (raw.indexOf("defaultTeam") != -1) {
  2510. myTeam = JSON.parse(raw).value;
  2511. console.log(myTeam);
  2512. // writeLog("顺利获取精灵配置信息!")
  2513. }
  2514. if ((cmd == 1120) && (raw.indexOf("starMedal") != -1)) {
  2515. StartJson = JSON.parse(raw);
  2516. }
  2517.  
  2518. if (cmd == 12501) {
  2519. let arr = JSON.parse(raw).map
  2520. writeLog("蟠桃情况~")
  2521. arr.forEach(item => {
  2522. writeLog(item)
  2523. })
  2524. }
  2525.  
  2526. if (cmd == 12496 && (raw.indexOf("fragments") != -1)) {
  2527. floorContent = JSON.parse(raw);
  2528. if (raw.indexOf("10825") != -1) {
  2529. skillSecondId = 10825
  2530. }
  2531. if (raw.indexOf("100484") != -1) {
  2532. skillSecondId = 100484
  2533. }
  2534. if (raw.indexOf("12776") != -1) {
  2535. skillSecondId = 12776
  2536. }
  2537. }
  2538.  
  2539.  
  2540. if (cmd == 1056) {
  2541. const idValues = JSON.parse(raw).result.affects.map((item) => {
  2542. return item && item.id ? item.id : null;
  2543. });
  2544. const Number = 143;
  2545. if (idValues.includes(Number)) {
  2546. Buff = true;
  2547. }
  2548. }
  2549. if (cmd == 1184) {
  2550. ptfloorContent = JSON.parse(raw);
  2551. Buff = "";
  2552. }
  2553.  
  2554. if (cmd == 1044) {
  2555. 捕捉ok = true;
  2556. }
  2557. if (cmd == 288) {
  2558. changePet = JSON.parse(raw);
  2559. }
  2560.  
  2561. if (cmd == 769 || cmd == 513) {
  2562. // if (JSON.parse(raw).subCmd == 1) {
  2563. // console.log(JSON.parse(raw))
  2564. 捕捉情况 = JSON.parse(raw);
  2565. // }
  2566. if (JSON.parse(raw).subCmd == 1) {
  2567. writeLog("捕捉成功:" + JSON.parse(raw).pet.nick + " 天赋: " + JSON.parse(raw).pet.talent)
  2568. }
  2569. }
  2570. if (cmd == 1109) {
  2571. console.log("战斗结束")
  2572. doneRound = true;
  2573. doneBattleMsg = JSON.parse(raw);
  2574.  
  2575. }
  2576. } catch (e) { }
  2577.  
  2578. // console.log("=======");
  2579. };
  2580.  
  2581.  
  2582.  
  2583.  
  2584.  
  2585.  
  2586. // //重写图鉴监听方法
  2587. // var PetView
  2588. // if (document.querySelector("iframe").contentWindow.SocketSeqMsgs == undefined) {
  2589. // PetView = petIllustrated.PetIllustrated.prototype.updatePetAttrView;
  2590. // // 重写updatePetAttrView方法
  2591. // petIllustrated.PetIllustrated.prototype.updatePetAttrView = function (e) {
  2592. // console.log(e)
  2593. // // 执行原有的createMsg方法e
  2594. // PetView.call(this, e);
  2595.  
  2596. // }
  2597. // } else {
  2598. // PetView = document.querySelector("iframe").contentWindow.petIllustrated.PetIllustrated.prototype.updatePetAttrView;
  2599. // // 重写updatePetAttrView方法
  2600. // document.querySelector("iframe").contentWindow.petIllustrated.PetIllustrated.prototype.updatePetAttrView = function (e) {
  2601. // console.log(e)
  2602. // // 执行原有的createMsg方法e
  2603. // PetView.call(this, e);
  2604.  
  2605. // }
  2606. // }
  2607.  
  2608. }
  2609.  
  2610.  
  2611.  
  2612. function backMSg() {
  2613. // 保存原函数
  2614. if (document.querySelector("iframe").contentWindow.SocketSeqMsgs == undefined) {
  2615. var originalCreateMsg = SocketSeqMsgs.prototype.createMsg;
  2616. SocketSeqMsgs.prototype.createMsg = function (t, e) {
  2617. // 执行原有的createMsg方法
  2618. originalCreateMsg.call(this, t, e);
  2619.  
  2620. }
  2621. } else {
  2622. var originalCreateMsg = document.querySelector("iframe").contentWindow.SocketSeqMsgs.prototype.createMsg;
  2623. document.querySelector("iframe").contentWindow.SocketSeqMsgs.prototype.createMsg = function (t, e) {
  2624. // 执行原有的createMsg方法
  2625. originalCreateMsg.call(this, t, e);
  2626.  
  2627. }
  2628. }
  2629.  
  2630. }
  2631.  
  2632. function wait(ms) {
  2633. return new Promise(resolve => setTimeout(() => resolve(), ms));
  2634. };
  2635.  
  2636. function getCountByItemId(itemID) {
  2637. let count
  2638. try {
  2639. count = ItemManager.getInstance().getItemNumById(itemID);
  2640. } catch (e) {
  2641. count = document.querySelector("iframe").contentWindow.ItemManager.getInstance().getItemNumById(itemID);
  2642. }
  2643. return count
  2644. }
  2645.  
  2646.  
  2647. function checkPet(skillList) {
  2648. for (let index = 0; index < skillList.length; index++) {
  2649. if (skillList[index].id == 100023) {
  2650. skillStarId = "100023"
  2651. return
  2652. }
  2653. if (skillList[index].id == 11022) {
  2654. return
  2655. }
  2656. }
  2657. skillStarId = skillList[0].id
  2658. }
  2659.  
  2660.  
  2661. //迷航
  2662. async function starTrek() {
  2663. if (rewrite == 0) {
  2664. showToast("请先开启监听!宝贝")
  2665. return
  2666. }
  2667. showNotice("如有不能正常运行。\n1.请确保魔焰和蒙多放到一号二号位置喔~~\n2.请确定魔焰猩猩是否带了绝命,蒙多是否带了光闪击\n3.请确保蒙多具有瞬杀特性\n4.只需要带这两只精灵即可")
  2668. //首次读取技能
  2669. await sendMsg(1120, {
  2670. "type": 0
  2671. })
  2672. checkPet(StartJson.petList[0].useSkills)
  2673. checkPet(StartJson.petList[1].useSkills)
  2674.  
  2675. while (1) {
  2676. await wait(100)
  2677. await sendMsg(1120, {
  2678. "type": 0
  2679. })
  2680. writeLog(`迷航进度: ${parseInt(StartJson.levelId) + 1}关卡`)
  2681. if (parseInt(StartJson.levelId) >= 15) {
  2682. writeLog(`完成迷航,进行领取`)
  2683. await wait(200)
  2684. await sendMsg(1223, {})
  2685. break
  2686. }
  2687. if ((parseInt(StartJson.levelId) + 1) > 8) {
  2688. let skillList = StartJson.petList[0].useSkills
  2689. for (let index = 0; index < skillList.length; index++) {
  2690. if (skillList[index].id == 11022) {
  2691. writeLog(`首发为蒙多,继续!`)
  2692. await sendMsg(1122, {
  2693. "petList": [
  2694. StartJson.petList[1].getTime,
  2695. StartJson.petList[0].getTime,
  2696. 0,
  2697. 0,
  2698. 0,
  2699. 0
  2700. ],
  2701. "attachBattleSkill": []
  2702. })
  2703. await sendMsg(1120, {
  2704. "type": 0
  2705. })
  2706. }
  2707.  
  2708. }
  2709. }
  2710.  
  2711. //前8关卡
  2712. if ((parseInt(StartJson.levelId) + 1) <= 8) {
  2713. let skillList = StartJson.petList[0].useSkills
  2714. for (let index = 0; index < skillList.length; index++) {
  2715. if (skillList[index].id == skillStarId) {
  2716. writeLog(`首发为魔焰,继续!`)
  2717. await sendMsg(1122, {
  2718. "petList": [
  2719. StartJson.petList[1].getTime,
  2720. StartJson.petList[0].getTime,
  2721. 0,
  2722. 0,
  2723. 0,
  2724. 0
  2725. ],
  2726. "attachBattleSkill": []
  2727. })
  2728. await sendMsg(1120, {
  2729. "type": 0
  2730. })
  2731. }
  2732. }
  2733. }
  2734.  
  2735. //2.进入迷航关卡
  2736.  
  2737.  
  2738. await sendMsg(1121, {
  2739. "getTimeList": [
  2740. StartJson.petList[0].getTime,
  2741. StartJson.petList[1].getTime,
  2742. 0,
  2743. 0,
  2744. 0,
  2745. 0
  2746. ]
  2747. })
  2748. while (1) {
  2749. if (bossStatus == true) {
  2750.  
  2751. console.log("顺利加载战斗资源")
  2752. bossStatus = false
  2753. break
  2754. } else {
  2755. await wait(50)
  2756. }
  2757. }
  2758.  
  2759.  
  2760. await sendMsg(1042, {
  2761. "groupId": "",
  2762. "battleType": 0
  2763. })
  2764.  
  2765.  
  2766. await sendMsg(1045, {
  2767. "opType": 5,
  2768. "data": null,
  2769. "groupId": ""
  2770. })
  2771. await sendMsg(1057, {
  2772. "groupId": "",
  2773. });
  2774.  
  2775.  
  2776. if (parseInt(StartJson.levelId) + 1 <= 8) {
  2777. writeLog(`释放绝命火焰`)
  2778. await sendMsg(1045, {
  2779. "opType": 1,
  2780. "data": {
  2781. "skillID": 11022
  2782. },
  2783. "groupId": ""
  2784. })
  2785.  
  2786. } else {
  2787. writeLog(`释放蒙多光闪击`)
  2788. await sendMsg(1045, {
  2789. "opType": 1,
  2790. "data": {
  2791. "skillID": skillStarId
  2792. },
  2793. "groupId": ""
  2794. })
  2795. }
  2796. await wait(100)
  2797.  
  2798.  
  2799.  
  2800.  
  2801. await sendMsg(8201, {})
  2802.  
  2803.  
  2804. await sendMsg(8209, {})
  2805. //逃跑
  2806. await sendMsg(303, {})
  2807.  
  2808.  
  2809. await wait(50)
  2810.  
  2811. //顺利释放一次
  2812. console.log("顺利释放一次")
  2813. }
  2814.  
  2815. }
  2816.  
  2817.  
  2818.  
  2819.  
  2820.  
  2821. //轮盘
  2822. async function goPrize() {
  2823. if (rewrite == 0) {
  2824. showToast("请先开启监听!宝贝")
  2825. return
  2826. }
  2827. //皮皮星轮盘 每次消耗5个
  2828. let CountC = 0
  2829. while (1) {
  2830. var count = getCountByItemId(100014) //获取物品id对应数量 光合能量
  2831. if (count >= 5) {
  2832. CountC++
  2833. writeLog("皮皮星轮盘第" + CountC + "次")
  2834. await wait(200)
  2835. await sendMsg(8997, {
  2836. "levelId": 1,
  2837. "prizePool": 1
  2838. })
  2839. } else {
  2840. writeLog("皮皮星轮盘清空!")
  2841. break
  2842. }
  2843. }
  2844.  
  2845. CountC = 0
  2846. //海洋星2级轮盘 每次消耗2个 和 1个 1个
  2847. while (1) {
  2848. var count0 = getCountByItemId(100015); //甲烷
  2849. var count1 = getCountByItemId(100016);; //青晶石
  2850. var count2 = getCountByItemId(100017); //黑曜石
  2851. if (count0 >= 2 && count1 >= 1 && count2 >= 1) {
  2852. CountC++
  2853. writeLog("海洋星2级轮盘第" + CountC + "次")
  2854. await wait(200)
  2855. await sendMsg(8997, {
  2856. "levelId": 2,
  2857. "prizePool": 2
  2858. })
  2859. } else {
  2860. writeLog("海洋星2级轮盘清空!")
  2861. break
  2862. }
  2863. }
  2864.  
  2865.  
  2866. CountC = 0
  2867. //海洋星1级轮盘 每次消耗2个 和 1个
  2868. while (1) {
  2869. var count0 = getCountByItemId(100015); //甲烷
  2870. var count1 = getCountByItemId(100016); //青晶石
  2871. if (count0 >= 2 && count1 >= 1) {
  2872. CountC++
  2873. writeLog("海洋星1级轮盘第" + CountC + "次")
  2874. await wait(200)
  2875. await sendMsg(8997, {
  2876. "levelId": 2,
  2877. "prizePool": 1
  2878. })
  2879. } else {
  2880. writeLog("海洋星1级轮盘清空!")
  2881. break
  2882. }
  2883. }
  2884.  
  2885.  
  2886. CountC = 0
  2887. //火山星1轮盘 每次消耗1个 和 2个
  2888. while (1) {
  2889. var count0 = getCountByItemId(100029); //甲烷
  2890. var count1 = getCountByItemId(100030); //青晶石
  2891. if (count0 >= 1 && count1 >= 2) {
  2892. CountC++
  2893. writeLog("火山星1级轮盘第" + CountC + "次")
  2894. await wait(200)
  2895. await sendMsg(8997, {
  2896. "levelId": 3,
  2897. "prizePool": 1
  2898. })
  2899. } else {
  2900. writeLog("火山星1级轮盘清空!")
  2901. break
  2902. }
  2903. }
  2904.  
  2905.  
  2906. CountC = 0
  2907. //火山星2轮盘 每次消耗 1个
  2908. while (1) {
  2909. var count = getCountByItemId(100031);
  2910. if (count >= 1) {
  2911. CountC++
  2912. writeLog("火山星2级轮盘第" + CountC + "次")
  2913. await wait(200)
  2914. await sendMsg(8997, {
  2915. "levelId": 3,
  2916. "prizePool": 2
  2917. })
  2918. } else {
  2919. writeLog("火山星2级轮盘清空!")
  2920. break
  2921. }
  2922. }
  2923.  
  2924.  
  2925. CountC = 0
  2926. //云霄1轮盘 每次消耗2个
  2927. while (1) {
  2928. var count = getCountByItemId(100076); //空气结晶
  2929. if (count >= 2) {
  2930. CountC++
  2931. writeLog("云霄星1级轮盘第" + CountC + "次")
  2932. await wait(200)
  2933. await sendMsg(8997, {
  2934. "levelId": 5,
  2935. "prizePool": 1
  2936. })
  2937. } else {
  2938. writeLog("云霄星1级轮盘清空!")
  2939. break
  2940. }
  2941. }
  2942.  
  2943.  
  2944. CountC = 0
  2945. //云霄2轮盘 每次消耗2个 1个
  2946. while (1) {
  2947. var count0 = getCountByItemId(100077); //不息云壤
  2948. var count1 = getCountByItemId(100078); //幻影之羽
  2949. if (count0 >= 2 && count1 >= 1) {
  2950. CountC++
  2951. writeLog("云霄星2级轮盘第" + CountC + "次")
  2952.  
  2953. await wait(200)
  2954. await sendMsg(8997, {
  2955. "levelId": 5,
  2956. "prizePool": 2
  2957. })
  2958. } else {
  2959. writeLog("云霄星2级轮盘清空!")
  2960. break
  2961. }
  2962. }
  2963.  
  2964.  
  2965. CountC = 0
  2966. //双子阿尔法星 每次消耗1个 1个
  2967. while (1) {
  2968. count0 = getCountByItemId(100191);
  2969. count1 = getCountByItemId(100193);
  2970. if (count0 >= 1 && count1 >= 1) {
  2971. CountC++
  2972. writeLog("双子阿尔法星1级轮盘第" + CountC + "次")
  2973. await wait(200)
  2974. await sendMsg(8997, {
  2975. "levelId": 6,
  2976. "prizePool": 1
  2977. })
  2978. } else {
  2979. writeLog("双子阿尔法星1级轮盘清空!")
  2980. break
  2981. }
  2982. }
  2983. CountC = 0
  2984. while (1) {
  2985. count = getCountByItemId(100195);
  2986. if (count >= 1) {
  2987. CountC++
  2988. writeLog("双子阿尔法星2级轮盘第" + CountC + "次")
  2989. await wait(200)
  2990. await sendMsg(8997, {
  2991. "levelId": 6,
  2992. "prizePool": 2
  2993. })
  2994. } else {
  2995. writeLog("双子阿尔法星2级轮盘清空!")
  2996. break
  2997. }
  2998. }
  2999.  
  3000.  
  3001.  
  3002. CountC = 0
  3003. //暗影星轮盘 每次消耗 2个
  3004. while (1) {
  3005. count = getCountByItemId(100313);
  3006. if (count >= 2) {
  3007. CountC++
  3008. writeLog("暗影星1级轮盘第" + CountC + "次")
  3009. await wait(200)
  3010. await sendMsg(8997, {
  3011. "levelId": 8,
  3012. "prizePool": 1
  3013. })
  3014. } else {
  3015. writeLog("暗影星1级轮盘清空!")
  3016. break
  3017. }
  3018. }
  3019. CountC = 0
  3020. while (1) {
  3021. count = getCountByItemId(100315);
  3022. if (count >= 1) {
  3023. CountC++
  3024. writeLog("暗影星2级轮盘第" + CountC + "次")
  3025. await wait(200)
  3026. await sendMsg(8997, {
  3027. "levelId": 8,
  3028. "prizePool": 2
  3029. })
  3030. } else {
  3031. writeLog("暗影星2级轮盘清空!")
  3032. break
  3033. }
  3034. }
  3035.  
  3036.  
  3037.  
  3038.  
  3039.  
  3040.  
  3041.  
  3042.  
  3043. }
  3044.  
  3045. async function fightan() {
  3046. if (rewrite == 0) {
  3047. showToast("请先开启监听!宝贝");
  3048. return
  3049. }
  3050. for (let g = 1; g <= 2; g++) {
  3051. if (g == 2) {
  3052. try {
  3053. var ziyuan1 = document.querySelector("iframe").contentWindow.ItemManager.getInstance().getItemNumById(100314)
  3054. } catch (e) {
  3055. ziyuan1 = ItemManager.getInstance().getItemNumById(100314)
  3056. }
  3057. if (parseInt(ziyuan1) < 3) {
  3058. showToast("没有材料打不了!!")
  3059. }
  3060. else {
  3061. var FirgetTime
  3062. var Pet
  3063. try {
  3064. FirgetTime = document.querySelector("iframe").contentWindow.UserManager.getInstance().userInfo.defaultTeam[0]
  3065. Pet = document.querySelector("iframe").contentWindow.PetManager.getInstance().getPetInfoByGetTime(FirgetTime)
  3066. } catch (e) {
  3067. FirgetTime = UserManager.getInstance().userInfo.defaultTeam[0]
  3068. Pet = PetManager.getInstance().getPetInfoByGetTime(FirgetTime)
  3069. }
  3070. while (true) {
  3071. //查询轮盘
  3072. await sendMsg(1176, { planetId: 8 })
  3073. let reward = ""
  3074. CmdArr.forEach(item => {
  3075. if (parseInt(Object.keys(item)[0]) == 1176) {
  3076. reward = JSON.parse(item["1176"]).reward
  3077. }
  3078. })
  3079. if (reward["233"] < 3 || reward["233"] == undefined) {
  3080. await sendMsg(1172, {
  3081. "levelId": 233,
  3082. "battleType": 3
  3083. })
  3084. while (1) {
  3085. if (bossStatus == true) {
  3086. bossStatus = false
  3087. break
  3088. }
  3089. await wait(100)
  3090. }
  3091. await sendSkillToSuccess(Pet.skills[0])
  3092. writeLog("拜伦号" + (reward["233"] + 1) + "次奖励!")
  3093. } else {
  3094. writeLog("拜伦号②完成!")
  3095. CmdArr = []
  3096. break
  3097. }
  3098. }
  3099. await wait(200)
  3100. }
  3101. }
  3102. if (g == 1) {
  3103. try {
  3104. var ziyuan2 = document.querySelector("iframe").contentWindow.ItemManager.getInstance().getItemNumById(100194)
  3105. } catch (e) {
  3106. ziyuan2 = ItemManager.getInstance().getItemNumById(100194)
  3107. }
  3108. if (parseInt(ziyuan2) < 3) {
  3109. showToast("没有材料打不了!!")
  3110. }
  3111. else {
  3112. try {
  3113. FirgetTime = document.querySelector("iframe").contentWindow.UserManager.getInstance().userInfo.defaultTeam[0]
  3114. Pet = document.querySelector("iframe").contentWindow.PetManager.getInstance().getPetInfoByGetTime(FirgetTime)
  3115. } catch (e) {
  3116. FirgetTime = UserManager.getInstance().userInfo.defaultTeam[0]
  3117. Pet = PetManager.getInstance().getPetInfoByGetTime(FirgetTime)
  3118. }
  3119. while (true) {
  3120. //查询轮盘
  3121. await sendMsg(1176, { planetId: 6 })
  3122. let reward = ""
  3123. CmdArr.forEach(item => {
  3124. if (parseInt(Object.keys(item)[0]) == 1176) {
  3125. reward = JSON.parse(item["1176"]).reward
  3126. }
  3127. })
  3128. if (reward["178"] < 3 || reward["178"] == undefined) {
  3129. await sendMsg(1172, {
  3130. "levelId": 178,
  3131. "battleType": 3
  3132. })
  3133. while (1) {
  3134. if (bossStatus == true) {
  3135. bossStatus = false
  3136. break
  3137. }
  3138. await wait(100)
  3139. }
  3140. await sendSkillToSuccess(Pet.skills[0])
  3141. writeLog("双子阿尔法星②" + (reward["178"] + 1) + "次奖励!")
  3142. } else {
  3143. writeLog("双子阿尔法星②完成!")
  3144. CmdArr = []
  3145. break
  3146. }
  3147. }
  3148. await wait(200)
  3149. }
  3150. }
  3151. }
  3152. }
  3153. async function getResource() {
  3154. if (rewrite == 0) {
  3155. showToast("请先开启监听!宝贝")
  3156. return
  3157. }
  3158. for (let index = 0; index <= 4; index++) {
  3159. await wait(200)
  3160. await sendMsg(9147, { id: 1 }) //黄晶矿
  3161. }
  3162. for (let index = 0; index <= 4; index++) {
  3163. await wait(200)
  3164. await sendMsg(9147, { id: 2 }) //黄晶矿
  3165. }
  3166. for (let index = 0; index <= 4; index++) {
  3167. await wait(200)
  3168. await sendMsg(9147, { id: 3 }) //黄晶矿
  3169. }
  3170. writeLog("黄晶矿采集完成!!")
  3171. for (let index = 0; index <= 9; index++) {
  3172. await wait(200)
  3173. await sendMsg(9147, { id: 34 }) //砂金石
  3174. }
  3175. writeLog("砂金石采集完成!!")
  3176. for (let index = 0; index <= 1; index++) {
  3177. await wait(200)
  3178. await sendMsg(9147, { id: 4 }) //甲烷燃气
  3179. }
  3180. for (let index = 0; index <= 1; index++) {
  3181. await wait(200)
  3182. await sendMsg(9147, { id: 5 }) //甲烷燃气
  3183. }
  3184. for (let index = 0; index <= 1; index++) {
  3185. await wait(200)
  3186. await sendMsg(9147, { id: 6 }) //甲烷燃气
  3187. }
  3188. writeLog("甲烷燃气采集完成!!")
  3189. for (let index = 0; index <= 2; index++) {
  3190. await wait(200)
  3191. await sendMsg(9147, { id: 7 })
  3192. }
  3193. writeLog("蘑菇结晶采集完成!!")
  3194. for (let index = 0; index <= 0; index++) {
  3195. await wait(200)
  3196. await sendMsg(9147, { id: 8 })
  3197. }
  3198. writeLog("豆豆果实采集完成!!")
  3199. for (let index = 0; index <= 0; index++) {
  3200. await wait(200)
  3201. await sendMsg(9147, { id: 9 })
  3202. }
  3203. writeLog("纳格晶体采集完成!!")
  3204. for (let index = 0; index <= 1; index++) {
  3205. await wait(200)
  3206. await sendMsg(9147, { id: 10 })
  3207. }
  3208. writeLog("电能石采集完成!!")
  3209. }
  3210. // Your code here...
  3211. })();
  3212.  
  3213. if (window.performance) window.performance.now = Date.now;
  3214.  
  3215. (function () {
  3216. 'use strict';
  3217. // 延迟执行的函数
  3218. function delayedFunction() {
  3219. !function (t, e) { "object" == typeof exports && "undefined" != typeof module ? module.exports = e() : "function" == typeof define && define.amd ? define(e) : (t = "undefined" != typeof globalThis ? globalThis : t || self).$hookTimer = e() }(this, (function () {
  3220. "use strict"; function t(t, e) { if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function") } function e(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function n(t, n, r) { return n && e(t.prototype, n), r && e(t, r), t } function r(t) { if (void 0 === t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return t } function o(t, e) { return (o = Object.setPrototypeOf || function (t, e) { return t.__proto__ = e, t })(t, e) } function i(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && o(t, e) } function a(t) { return (a = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (t) { return typeof t } : function (t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function u(t, e) { return !e || "object" !== a(e) && "function" != typeof e ? r(t) : e } function c(t) { return (c = Object.setPrototypeOf ? Object.getPrototypeOf : function (t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } function l(t, e, n) { return e in t ? Object.defineProperty(t, e, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : t[e] = n, t } var s, f, h, d = 1e3; function y() { return d++ } function p() { return null == s && (s = "undefined" == typeof unsafeWindow ? window : unsafeWindow), s } function v() { var t = p().parent !== p(); try { t = t && "FRAMESET" !== p().parent.document.body.tagName } catch (t) { } return t } function g(t) { var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 1 / 0, n = Array.prototype.flat || function () { var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 1 / 0; if (t < 1) return this; var e = [], r = t - 1; return this.forEach((function (t) { t instanceof Array ? e = e.concat(n.call(t, r)) : e.push(t) })), e }; return n.call(t, e) } function m(t, e) { (null == e || e > t.length) && (e = t.length); for (var n = 0, r = new Array(e); n < e; n++)r[n] = t[n]; return r } function b(t, e) { if (t) { if ("string" == typeof t) return m(t, e); var n = Object.prototype.toString.call(t).slice(8, -1); return "Object" === n && t.constructor && (n = t.constructor.name), "Map" === n || "Set" === n ? Array.from(t) : "Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? m(t, e) : void 0 } } function w(t, e) { return function (t) { if (Array.isArray(t)) return t }(t) || function (t, e) { var n = t && ("undefined" != typeof Symbol && t[Symbol.iterator] || t["@@iterator"]); if (null != n) { var r, o, i = [], a = !0, u = !1; try { for (n = n.call(t); !(a = (r = n.next()).done) && (i.push(r.value), !e || i.length !== e); a = !0); } catch (t) { u = !0, o = t } finally { try { a || null == n.return || n.return() } finally { if (u) throw o } } return i } }(t, e) || b(t, e) || function () { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") }() } function k(t, e) { var n = "undefined" != typeof Symbol && t[Symbol.iterator] || t["@@iterator"]; if (!n) { if (Array.isArray(t) || (n = function (t, e) { if (!t) return; if ("string" == typeof t) return x(t, e); var n = Object.prototype.toString.call(t).slice(8, -1); "Object" === n && t.constructor && (n = t.constructor.name); if ("Map" === n || "Set" === n) return Array.from(t); if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return x(t, e) }(t)) || e && t && "number" == typeof t.length) { n && (t = n); var r = 0, o = function () { }; return { s: o, n: function () { return r >= t.length ? { done: !0 } : { done: !1, value: t[r++] } }, e: function (t) { throw t }, f: o } } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") } var i, a = !0, u = !1; return { s: function () { n = n.call(t) }, n: function () { var t = n.next(); return a = t.done, t }, e: function (t) { u = !0, i = t }, f: function () { try { a || null == n.return || n.return() } finally { if (u) throw i } } } } function x(t, e) { (null == e || e > t.length) && (e = t.length); for (var n = 0, r = new Array(e); n < e; n++)r[n] = t[n]; return r } function O() { return null == h && (h = "undefined" == typeof unsafeWindow ? window : unsafeWindow), h } function R() { var t = O().parent !== O(); try { t = t && "FRAMESET" !== O().parent.document.body.tagName } catch (t) { } return t } !function (t) { t.BOOLEAN = "boolean", t.STRING = "string", t.NUMBER = "number", t.SHORTCUT = "shortcut", t.LONG_STRING = "long_string", t.DATE = "date", t.COLOR = "color", t.ARRAY = "array", t.PICKLIST = "picklist", t.DUELING_PICKLIST = "dueling_picklist" }(f || (f = {})); var M = "__hooks_load_module", _ = Object.getOwnPropertyNames.bind(Object), A = Object.getPrototypeOf.bind(Object); function S(t) { var e, n = {}, r = k(_(t)); try { for (r.s(); !(e = r.n()).done;) { var o = e.value; n[o] = t[o] } } catch (t) { r.e(t) } finally { r.f() } return n } var C = [[Array.prototype], [Object, !1]].map((function (t) { var e = w(t, 1)[0]; return [e, S(e)] })); function T(t) { var e, n = k(C); try { for (n.s(); !(e = n.n()).done;) { var r = w(e.value, 2), o = r[0], i = r[1]; if (t === o) return i } } catch (t) { n.e(t) } finally { n.f() } return t } function I(t, e) { return function (t, e) { var n = T(arguments.length > 2 && void 0 !== arguments[2] && !arguments[2] ? t : A(t)), r = n[e]; return "function" == typeof r ? r.bind(t) : n[e] }(e.conditions || [], "reduce")((function (e, n) { return e || Object.entries(n).every((function (e) { var n = w(e, 2), r = n[0], o = n[1]; return t[r] === o })) }), !1) } var E = {}; try { E.addStyle = GM_addStyle } catch (t) { } try { E.addElement = GM_addElement } catch (t) { } try { E.deleteValue = GM_deleteValue } catch (t) { } try { E.listValues = GM_listValues } catch (t) { } try { E.getValue = GM_getValue } catch (t) { } try { E.setValue = GM_setValue } catch (t) { } try { E.addValueChangeListener = GM_addValueChangeListener } catch (t) { } try { E.removeValueChangeListener = GM_removeValueChangeListener } catch (t) { } try { E.xmlhttpRequest = GM_xmlhttpRequest } catch (t) { } try { E.registerMenuCommand = GM_registerMenuCommand } catch (t) { } try { E.unregisterMenuCommand = GM_unregisterMenuCommand } catch (t) { } try { E.download = GM_download } catch (t) { } try { E.log = GM_log } catch (t) { } try { E.openInTab = GM_openInTab } catch (t) { } try { E.setClipboard = GM_setClipboard } catch (t) { } try { E.info = GM_info } catch (t) { } try { E.getResourceText = GM_getResourceText } catch (t) { } try { E.getResourceURL = GM_getResourceURL } catch (t) { } try { E.getTab = GM_getTab } catch (t) { } try { E.getTabs = GM_getTabs } catch (t) { } try { E.saveTab = GM_saveTab } catch (t) { } try { E.notification = GM_notification } catch (t) { } var j = window, D = new Proxy({}, { get: function (t, e) { var n = ["GM", e].join("_"); return j[n] ? j[n] : E[e] ? E[e] : j.GM && j.GM[e] ? j.GM[e] : void 0 } }), P = function () { if (!R()) { for (var t = arguments.length, e = new Array(t), n = 0; n < t; n++)e[n] = arguments[n]; var r; if (e.unshift("[TimerHook]"), "function" == typeof D.log) D.log(e.join(" ")); else (r = console).log.apply(r, e) } }, N = function () { if (!R()) { for (var t, e = arguments.length, n = new Array(e), r = 0; r < e; r++)n[r] = arguments[r]; n.unshift("[TimerHook]"), (t = console).warn.apply(t, n) } }, L = function () { function e() { t(this, e), l(this, "host", void 0), l(this, "isActive", !1), l(this, "isMountHost", !1) } return n(e, [{ key: "mountHost", value: function (t) { this.host = t, this.isMountHost = !0, this.onMounted() } }, { key: "activate", value: function () { this.isActive = !0, this.init() } }, { key: "deactivate", value: function () { this.isActive = !1, this.onDestroy() } }, { key: "moduleName", get: function () { } }, { key: "priority", get: function () { return 50 } }, { key: "autoActivate", get: function () { return !0 } }, { key: "isCoreModule", get: function () { return !1 } }, { key: "isOnlyOuterIframe", get: function () { return !1 } }, { key: "getDependencyModule", value: function (t) { if (null != this.host) { var e = this.host.getModule(t); return e && e.moduleIdentityName ? e : void 0 } } }, { key: "init", value: function () { } }, { key: "onMounted", value: function () { } }, { key: "onDestroy", value: function () { } }, { key: "declareConfigs", value: function () { return [] } }, { key: "setConfig", value: function (t, e) { var n = this.getDependencyModule("configs"); n && n.available() || N("Config module not found, can't set configs values."), n.setValue(this.moduleIdentityName, t, e) } }, { key: "getConfig", value: function (t) { var e, n = this.getDependencyModule("configs"), r = (this.declareConfigs().find((function (e) { return e.key === t })) || {}).default; return n && n.available() && null !== (e = n.getValue(this.moduleIdentityName, t)) && void 0 !== e ? e : r } }, { key: "window", get: function () { return this.host ? this.host.getWindow() : O() } }, { key: "document", get: function () { return this.window.document } }]), e }(); function B(t, e, n) { return (B = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function (t, e, n) { var r = function (t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = c(t));); return t }(t, e); if (r) { var o = Object.getOwnPropertyDescriptor(r, e); return o.get ? o.get.call(n) : o.value } })(t, e, n || t) } function V(t) { var e = function () { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function () { }))), !0 } catch (t) { return !1 } }(); return function () { var n, r = c(t); if (e) { var o = c(this).constructor; n = Reflect.construct(r, arguments, o) } else n = r.apply(this, arguments); return u(this, n) } } var U = function (e) { i(a, e); var o = V(a); function a() { var e; t(this, a); for (var n = arguments.length, i = new Array(n), u = 0; u < n; u++)i[u] = arguments[u]; return l(r(e = o.call.apply(o, [this].concat(i))), "rate", 1), l(r(e), "host", void 0), e } return n(a, [{ key: "onRateChange", value: function (t) { this.rate = t } }, { key: "mountHost", value: function (t) { B(c(a.prototype), "mountHost", this).call(this, t), this.rate = t.rate } }]), a }(L); function G(t) { var e = function () { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function () { }))), !0 } catch (t) { return !1 } }(); return function () { var n, r = c(t); if (e) { var o = c(this).constructor; n = Reflect.construct(r, arguments, o) } else n = r.apply(this, arguments); return u(this, n) } } var H = function (e) { i(a, e); var o = G(a); function a() { var e; t(this, a); for (var n = arguments.length, i = new Array(n), u = 0; u < n; u++)i[u] = arguments[u]; return l(r(e = o.call.apply(o, [this].concat(i))), "isDOMLoaded", !1), l(r(e), "waitDomLoadedCallback", void 0), e } return n(a, [{ key: "onMounted", value: function () { var t = this; B(c(a.prototype), "onMounted", this).call(this), this.document.addEventListener("readystatechange", (function () { "interactive" !== t.document.readyState && "complete" !== t.document.readyState || (t.isDOMLoaded = !0, "function" == typeof t.waitDomLoadedCallback && t.waitDomLoadedCallback(void 0)) })) } }, { key: "waitDomLoaded", value: function () { var t, e, n, r = this; return this.isDOMLoaded || null !== (t = this.document) && void 0 !== t && null !== (e = t.body) && void 0 !== e && null !== (n = e.childNodes) && void 0 !== n && n.length ? Promise.resolve() : new Promise((function (t) { r.waitDomLoadedCallback = t })) } }, { key: "applyStyle", value: function (t) { var e = this.style(), n = this.document.createElement("style"); if (n.setAttribute("type", "text/css"), n.styleSheet) n.styleSheet.cssText = e; else { var r = this.document.createTextNode(e); n.appendChild(r) } t.appendChild(n) } }, { key: "applyElement", value: function () { var t = this.element(); return this.document.body.appendChild(t), t } }, { key: "onUiRateChange", value: function (t) { } }, { key: "onRateChange", value: function (t) { var e = this.rate !== t; B(c(a.prototype), "onRateChange", this).call(this, t), e && this.onUiRateChange(t) } }, { key: "init", value: function () { var t = this; P("Started to loading '".concat(this.moduleIdentityName, "' component...")), this.waitDomLoaded().then((function () { t.applyStyle(t.applyElement()), P("UI component '".concat(t.moduleIdentityName, "' loaded.")) })) } }]), a }(U); function W(t) { var e = function () { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function () { }))), !0 } catch (t) { return !1 } }(); return function () { var n, r = c(t); if (e) { var o = c(this).constructor; n = Reflect.construct(r, arguments, o) } else n = r.apply(this, arguments); return u(this, n) } } var q = "hook_timer__change_rate", F = function (e) { i(a, e); var o = W(a); function a() { var e; t(this, a); for (var n = arguments.length, i = new Array(n), u = 0; u < n; u++)i[u] = arguments[u]; return l(r(e = o.call.apply(o, [this].concat(i))), "rate", 1), l(r(e), "state", "preparing"), l(r(e), "setIntervalOrigin", void 0), l(r(e), "clearIntervalOrigin", void 0), l(r(e), "inTimeCheckId", void 0), e } return n(a, [{ key: "setSpeed", value: function (t) { var e = arguments.length > 1 && void 0 !== arguments[1] && arguments[1]; if (0 === t && (t = this.defaultRate), t && (t !== this.rate || e) && t > 0 && (this.rate = t, this.onRateChanged(t)), null == t) { var n = prompt("输入欲改变计时器变化倍率(当前:" + this.rate + ")"); n && this.setSpeed(parseFloat(n)) } } }, { key: "speedDown", value: function (t) { null == t && (t = this.getConfig("decrementRate")), this.setSpeed(this.rate - t) } }, { key: "speedUp", value: function (t) { null == t && (t = this.getConfig("incrementRate")), this.setSpeed(this.rate + t) } }, { key: "speedDivide", value: function (t) { null == t && (t = this.getConfig("divideRate")), this.setSpeed(this.rate / (t || 1)) } }, { key: "speedMultiply", value: function (t) { null == t && (t = this.getConfig("multiplyRate")), this.setSpeed(this.rate * (t || 1)) } }, { key: "onRateChanged", value: function (t) { P("Timer speed rate changed to:", t), this.sentChangesToIframe(), this.getAllActivateModules().filter((function (t) { return t.onRateChange })).forEach((function (e) { e.onRateChange(t) })) } }, { key: "beginInTimeCheck", value: function () { var t = this; this.keptInTime && (this.inTimeCheckId = this.setIntervalOrigin.call(this.getWindow(), (function () { t.rate && 1 !== t.rate && t.setSpeed(t.rate, !0) }), this.keptInterval)) } }, { key: "catchOriginMethod", value: function () { this.setIntervalOrigin = this.getWindow().setInterval, this.clearIntervalOrigin = this.getWindow().clearInterval } }, { key: "keptInTime", get: function () { return this.getConfig("keptInTime") } }, { key: "keptInterval", get: function () { return this.getConfig("keptInterval") } }, { key: "defaultRate", get: function () { return this.getConfig("defaultRate") } }, { key: "bootstrap", value: function () { "preparing" === this.state && (this.catchOriginMethod(), this.listenParentEvent(), this.launchModules(this.getAllModules()), this.setSpeed(this.defaultRate), this.beginInTimeCheck(), this.waitForModulesLoad(), this.state = "started") } }, { key: "launchModules", value: function (t) { var e = this; t.filter((function (t) { return t.autoActivate })).forEach((function (t) { var n = t.moduleIdentityName; e.deactivateModules.includes(n) && !t.isCoreModule || e.activateModule(n) })) } }, { key: "registerModules", value: function (t) { var e = this; return t.filter((function (t) { var n = t.moduleIdentityName; return n && e.registerModule(t, t.isOnlyOuterIframe), n })) } }, { key: "waitForModulesLoad", value: function () { var t = this, e = this.getWindow().___hooks_preModules || []; e.length > 0 && this.launchModules(this.registerModules(e)), this.getWindow()[M] = 1, this.getWindow().addEventListener(M, (function (e) { e.detail && e.detail.moduleIdentityName && t.launchModules(t.registerModules([e.detail])) })) } }, { key: "exportOuter", value: function () { var t = this; this.getWindow()._OxA ? (this.getWindow().$hookTimer = this, this.getWindow()._OxA = this) : Object.defineProperty(this.getWindow(), "_OxA", { get: function () { return 1 }, set: function (e) { "_OxA" === e && (t.getWindow().$hookTimer = t) } }) } }, { key: "listenParentEvent", value: function () { var t = this; v() && this.getWindow().addEventListener("message", (function (e) { var n = e.data; (n.type || "") === q && t.setSpeed(n.rate || 0) })) } }, { key: "deactivateModules", get: function () { return this.getConfig("deactivateModules") } }, { key: "sentChangesToIframe", value: function () { var t = this.getWindow().document, e = t.querySelectorAll("iframe") || [], n = t.querySelectorAll("frame"); if (e.length) for (var r = 0; r < e.length; r++)e[r].contentWindow.postMessage({ type: q, rate: this.rate }, "*"); if (n.length) for (var o = 0; o < n.length; o++)n[o].contentWindow.postMessage({ type: q, rate: this.rate }, "*") } }, { key: "declareConfigs", value: function () { return [{ key: "multiplyRate", type: f.NUMBER, default: 2 }, { key: "divideRate", type: f.NUMBER, default: 2 }, { key: "decrementRate", type: f.NUMBER, default: 2 }, { key: "incrementRate", type: f.NUMBER, default: 2 }, { key: "defaultRate", type: f.NUMBER, default: 1 }, { key: "keptInTime", type: f.BOOLEAN, default: !0 }, { key: "keptInterval", type: f.NUMBER, default: 4e3 }, { key: "deactivateModules", type: f.ARRAY, values: this.getAllModules().map((function (t) { return { key: t.moduleIdentityName } })), default: [] }] } }, { key: "setConfig", value: function (t, e) { var n = this.getModule("configs"); n && n.available() || N("Config module not found, can't set configs values."), n.setValue("host", t, e) } }, { key: "getConfig", value: function (t) { var e, n = this.getModule("configs"), r = (this.declareConfigs().find((function (e) { return e.key === t })) || {}).default; return n && n.available() && null !== (e = n.getValue("host", t)) && void 0 !== e ? e : r } }]), a }(function () { function e() { t(this, e), l(this, "modules", {}) } return n(e, [{ key: "activateModule", value: function (t) { var e = this.getModule(t); e ? (e.activate(), P("Module - '".concat(t, "' activated"))) : N("Activate module failed, ".concat(t, " is not found")) } }, { key: "deactivateModule", value: function (t) { var e = this.getModule(t); e || N("Deactivate module failed, '".concat(t, "' is not found")), e.deactivate() } }, { key: "getModule", value: function (t) { return this.modules[t] } }, { key: "registerModule", value: function (t) { var e = arguments.length > 1 && void 0 !== arguments[1] && arguments[1]; e && v() || (this.modules[t.moduleIdentityName] = t, t.mountHost(this)) } }, { key: "getAllActivateModules", value: function () { return Object.values(this.modules).filter((function (t) { return t.isActive })) } }, { key: "getAllModules", value: function () { return Object.values(this.modules) } }, { key: "getWindow", value: function () { return p() } }]), e }()); var z = function (t, e) { if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function") }; function Y(t, e) { return t(e = { exports: {} }, e.exports), e.exports } var $ = Y((function (t) { function e(n, r) { return t.exports = e = Object.setPrototypeOf || function (t, e) { return t.__proto__ = e, t }, e(n, r) } t.exports = e })); var K = function (t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && $(t, e) }, J = Y((function (t) { function e(n) { return "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? t.exports = e = function (t) { return typeof t } : t.exports = e = function (t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t }, e(n) } t.exports = e })); var Q = function (t) { if (void 0 === t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return t }; var X = function (t, e) { return !e || "object" !== J(e) && "function" != typeof e ? Q(t) : e }, Z = Y((function (t) { function e(n) { return t.exports = e = Object.setPrototypeOf ? Object.getPrototypeOf : function (t) { return t.__proto__ || Object.getPrototypeOf(t) }, e(n) } t.exports = e })); var tt = function (t, e) { (null == e || e > t.length) && (e = t.length); for (var n = 0, r = new Array(e); n < e; n++)r[n] = t[n]; return r }; var et = function (t) { if (Array.isArray(t)) return tt(t) }; var nt = function (t) { if ("undefined" != typeof Symbol && Symbol.iterator in Object(t)) return Array.from(t) }; var rt = function (t, e) { if (t) { if ("string" == typeof t) return tt(t, e); var n = Object.prototype.toString.call(t).slice(8, -1); return "Object" === n && t.constructor && (n = t.constructor.name), "Map" === n || "Set" === n ? Array.from(t) : "Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? tt(t, e) : void 0 } }; var ot = function () { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") }; var it = function (t) { return et(t) || nt(t) || rt(t) || ot() }; function at(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } var ut = function (t, e, n) { return e && at(t.prototype, e), n && at(t, n), t }; var ct = function (t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = Z(t));); return t }, lt = Y((function (t) { function e(n, r, o) { return "undefined" != typeof Reflect && Reflect.get ? t.exports = e = Reflect.get : t.exports = e = function (t, e, n) { var r = ct(t, e); if (r) { var o = Object.getOwnPropertyDescriptor(r, e); return o.get ? o.get.call(n) : o.value } }, e(n, r, o || n) } t.exports = e })); var st = function (t) { return -1 !== Function.toString.call(t).indexOf("[native code]") }; var ft = function () { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], (function () { }))), !0 } catch (t) { return !1 } }, ht = Y((function (t) { function e(n, r, o) { return ft() ? t.exports = e = Reflect.construct : t.exports = e = function (t, e, n) { var r = [null]; r.push.apply(r, e); var o = new (Function.bind.apply(t, r)); return n && $(o, n.prototype), o }, e.apply(null, arguments) } t.exports = e })), dt = Y((function (t) { function e(n) { var r = "function" == typeof Map ? new Map : void 0; return t.exports = e = function (t) { if (null === t || !st(t)) return t; if ("function" != typeof t) throw new TypeError("Super expression must either be null or a function"); if (void 0 !== r) { if (r.has(t)) return r.get(t); r.set(t, e) } function e() { return ht(t, arguments, Z(this).constructor) } return e.prototype = Object.create(t.prototype, { constructor: { value: e, enumerable: !1, writable: !0, configurable: !0 } }), $(e, t) }, e(n) } t.exports = e })); function yt(t, e) { var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : "initAssign", r = Object.getPrototypeOf(e); return Object.setPrototypeOf(t, r), "function" == typeof r[n] && r[n].call(t, e), t } function pt(t) { return Number(Math.random().toString().substr(3, t) + Date.now()).toString(36) } function vt(t) { var e = function () { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], (function () { }))), !0 } catch (t) { return !1 } }(); return function () { var n, r = Z(t); if (e) { var o = Z(this).constructor; n = Reflect.construct(r, arguments, o) } else n = r.apply(this, arguments); return X(this, n) } } !function (t, e) { t(e = { exports: {} }, e.exports) }((function (t) { function e(n) { return "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? t.exports = e = function (t) { return typeof t } : t.exports = e = function (t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t }, e(n) } t.exports = e })); var gt = { instanceType: function (t) { K(n, t); var e = vt(n); function n() { return z(this, n), e.apply(this, arguments) } return ut(n, [{ key: "initAssign", value: function (t) { this.id = pt(7), function (t, e, n, r) { e && void 0 !== e[n] ? t[n] = e[n] : "function" == typeof r && (t[n] = r()) }(this, t, "uniqueId", (function () { return pt(7) })) } }, { key: "bind", value: function (t) { var e, r = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : []; return yt((e = lt(Z(n.prototype), "bind", this)).call.apply(e, [this, t].concat(it(r))), this) } }, { key: "before", value: function (t) { var e = arguments.length > 1 && void 0 !== arguments[1] && arguments[1]; return this.surround({ before: t, adaptAsync: e }) } }, { key: "after", value: function (t) { var e = arguments.length > 1 && void 0 !== arguments[1] && arguments[1]; return this.surround({ after: t, adaptAsync: e }) } }, { key: "surround", value: function (t) { var e = t.before, n = void 0 === e ? void 0 : e, r = t.after, o = void 0 === r ? void 0 : r, i = t.onError, a = void 0 === i ? void 0 : i, u = t.adaptAsync, c = void 0 !== u && u, l = this; return "function" != typeof l ? l : yt((function () { for (var t = this, e = arguments.length, r = new Array(e), i = 0; i < e; i++)r[i] = arguments[i]; var u = {}, s = { origin: l, args: r, trans: u }, f = "function" == typeof a; try { var h, d, y = !1; return "function" == typeof n && (h = n.call(this, Object.assign({}, s, { preventDefault: function () { y = !0 } })), y) ? h : (d = h instanceof Promise && c ? h.then((function () { return l.apply(t, r) })) : l.apply(this, r), "function" == typeof o && (d = d instanceof Promise && c ? d.then((function (e) { return o.call(t, Object.assign({}, s, { lastValue: e })) })) : o.call(this, Object.assign({}, s, { lastValue: d }))), d instanceof Promise && c && f ? d.catch((function (e) { var n = !1, r = ""; return Promise.resolve(a.call(t, Object.assign({}, s, { error: e, resolve: function (t) { r = t, n = !0 } }))).then((function (t) { if (!n) throw e; return r || t })) })) : d) } catch (t) { if (!f) throw t; var p = !1, v = "", g = function (t) { v = t, p = !0 }, m = a.call(this, Object.assign({}, s, { error: t, resolve: g })); if (!p) throw t; return v || m } }), this) } }, { key: "then", value: function (t) { var e = this; return yt((function () { for (var n = arguments.length, r = new Array(n), o = 0; o < n; o++)r[o] = arguments[o]; var i = e.apply(this, r); return Promise.resolve(i).then(t) }), this) } }, { key: "catch", value: function (t) { var e = this; return yt((function () { var n; try { for (var r = arguments.length, o = new Array(r), i = 0; i < r; i++)o[i] = arguments[i]; if ((n = e.apply(this, o)) instanceof Promise) return n.catch(t) } catch (e) { n = t.call(this, e) } return n }), this) } }, { key: "finally", value: function (t) { var e = this; return yt((function () { var n = function () { try { t.call(this) } catch (t) { } }; try { for (var r = arguments.length, o = new Array(r), i = 0; i < r; i++)o[i] = arguments[i]; var a = e.apply(this, o); return a instanceof Promise ? "function" == typeof a.finally ? a.finally((function () { return n() })) : a.catch((function (t) { return t })).then((function (t) { if (n(), t instanceof Error) throw t })) : (n(), a) } catch (t) { throw n(), t } }), this) } }, { key: "register", value: function () { var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; return this.registerClass((function (e) { var n = function (t) { K(n, t); var e = vt(n); function n() { return z(this, n), e.apply(this, arguments) } return n }(e); return Object.assign(n.prototype, t), n })) } }, { key: "registerClass", value: function (t) { var e = t(this.constructor), n = this.bind(this); if (Object.setPrototypeOf(n, e.prototype), "function" != typeof e || !(n instanceof this.constructor)) throw new Error("Registered class must extend FunctionInstance"); return n } }]), n }(dt(Function)) }; function mt(t, e) { var n = function () { for (var e = arguments.length, n = new Array(e), r = 0; r < e; r++)n[r] = arguments[r]; return (t || function () { }).apply(this, n) }; return function (t, e) { var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : "initAssign", r = e.prototype; Object.setPrototypeOf(t, r), "function" == typeof r[n] && r[n].call(t) }(n, (e = Object.assign({}, gt, e)).instanceType), n } var bt, wt = { protect: !1, syncDesc: !0, native: !1 }, kt = Object.defineProperty, xt = Object.defineProperties; function Ot(t, e, n) { var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {}, o = t[e]; if ("function" == typeof o) { var i = Object.assign({}, wt, r), a = i.native, u = n(a ? o : mt(o)); t[e] = a ? u : function () { for (var t = arguments.length, e = new Array(t), n = 0; n < t; n++)e[n] = arguments[n]; try { return u.apply(this, e) } catch (t) { return console.warn("[Hook JS]", "Hooks running lost once."), o.apply(this, e) } }; var c = i.protect, l = i.syncDesc; c && At(t, e), l && St(o, t[e]) } } function Rt(t, e, n, r) { var o = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : {}; return Ot(t, e, (function (t) { return t[n](r) }), o) } function Mt(t, e, n) { var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {}; return Rt(t, e, "before", n, r) } function _t(t, e, n) { var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {}; return Ot(t, e, n, Object.assign({}, r, { native: !0 })) } function At(t, e) { kt.call(Object, t, e, { writable: !1 }) } function St(t, e) { xt.call(Object, e, { toString: { enumerable: !1, writable: !0, value: function () { return t.toString() } }, toLocaleString: { enumerable: !1, writable: !0, value: function () { return t.toLocaleString() } } }) } function Ct(t) { var e = function () { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function () { }))), !0 } catch (t) { return !1 } }(); return function () { var n, r = c(t); if (e) { var o = c(this).constructor; n = Reflect.construct(r, arguments, o) } else n = r.apply(this, arguments); return u(this, n) } } !function (t) { t.TIMEOUT = "timeout", t.INTERVAL = "interval" }(bt || (bt = {})); var Tt = function (e) { i(a, e); var o = Ct(a); function a() { var e; t(this, a); for (var n = arguments.length, i = new Array(n), u = 0; u < n; u++)i[u] = arguments[u]; return l(r(e = o.call.apply(o, [this].concat(i))), "percentage", void 0), l(r(e), "interval", {}), l(r(e), "timeout", {}), l(r(e), "setIntervalOrigin", void 0), l(r(e), "setTimeoutOrigin", void 0), l(r(e), "clearIntervalOrigin", void 0), l(r(e), "clearTimeoutOrigin", void 0), e } return n(a, [{ key: "onMounted", value: function () { B(c(a.prototype), "onMounted", this).call(this), this.setIntervalOrigin = this.window.setInterval, this.setTimeoutOrigin = this.window.setTimeout, this.clearIntervalOrigin = this.window.clearInterval, this.clearTimeoutOrigin = this.window.clearTimeout } }, { key: "init", value: function () { var t = this; this.percentage = 1 / this.rate, _t(this.window, "setInterval", (function (e) { return t.getHookedTimerFunction(bt.INTERVAL, e) })), _t(this.window, "setTimeout", (function (e) { return t.getHookedTimerFunction(bt.TIMEOUT, e) })), Mt(this.window, "clearInterval", (function (e) { var n = e.args; t.redirectNewestId(n) })), Mt(this.window, "clearTimeout", (function (e) { var n = e.args; t.redirectNewestId(n) })) } }, { key: "onRateChange", value: function (t) { var e = this; B(c(a.prototype), "onRateChange", this).call(this, t), this.percentage = 1 / t, Object.values(this.interval).forEach((function (t) { t.args[1] = Math.floor((t.originMS || 1) * e.percentage), e.clearIntervalOrigin.call(e.window, t.nowId), t.nowId = e.setIntervalOrigin.apply(e.window, t.args) })), Object.values(this.timeout).forEach((function (t) { var n = Date.now(), r = t.exceptNextFireTime, o = t.oldPercentage, i = r - n; i < 0 && (i = 0); var a = Math.floor(e.percentage / o * i); t.args[1] = a, t.exceptNextFireTime = n + a, t.oldPercentage = e.percentage, e.clearTimeoutOrigin.call(e.window, t.nowId), t.nowId = e.setTimeoutOrigin.apply(e.window, t.args) })) } }, { key: "notifyExec", value: function (t) { var e = this; t && Object.values(this.timeout).filter((function (e) { return e.uniqueId === t })).forEach((function (t) { e.clearTimeoutOrigin.call(e.window, t.nowId), delete e.timeout[t.originId] })) } }, { key: "redirectNewestId", value: function (t) { var e = t[0]; this.interval[e] && (t[0] = this.interval[e].nowId, delete this.interval[e]), this.timeout[e] && (t[0] = this.timeout[e].nowId, delete this.timeout[e]) } }, { key: "getHookedTimerFunction", value: function (t, e) { var n = t, r = this; return function () { for (var t = arguments.length, o = new Array(t), i = 0; i < t; i++)o[i] = arguments[i]; var a = y(), u = o[0]; "string" == typeof u && (r.window.__timer = { notifyExec: r.notifyExec.bind(r) }, u += ";__timer.notifyExec(" + a + ")", o[0] = u), "function" == typeof u && (o[0] = function () { var t = u.apply(this, arguments); return r.notifyExec(a), t }); var c = o[1]; o[1] *= r.percentage; var l = e.apply(r.window, o); return r[n][l] = { args: o, originMS: c, originId: l, nowId: l, uniqueId: a, oldPercentage: r.percentage, exceptNextFireTime: Date.now() + c }, l } } }, { key: "moduleIdentityName", get: function () { return "timer" } }]), a }(U); function It(t) { var e = function () { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function () { }))), !0 } catch (t) { return !1 } }(); return function () { var n, r = c(t); if (e) { var o = c(this).constructor; n = Reflect.construct(r, arguments, o) } else n = r.apply(this, arguments); return u(this, n) } } var Et, jt = function (e) { i(a, e); var o = It(a); function a() { var e; t(this, a); for (var n = arguments.length, i = new Array(n), u = 0; u < n; u++)i[u] = arguments[u]; return l(r(e = o.call.apply(o, [this].concat(i))), "DateOrigin", void 0), l(r(e), "DateModified", void 0), l(r(e), "rate", 1), l(r(e), "lastDatetime", void 0), l(r(e), "lastMDatetime", void 0), e } return n(a, [{ key: "onMounted", value: function () { B(c(a.prototype), "onMounted", this).call(this), this.lastDatetime = Date.now(), this.lastMDatetime = Date.now(), this.DateOrigin = this.window.Date, this.DateModified = this.window.Date } }, { key: "init", value: function () { this.hookedDate() } }, { key: "onRateChange", value: function (t) { this.DateModified && (this.lastMDatetime = this.DateModified.now(), this.lastDatetime = this.DateOrigin.now()), B(c(a.prototype), "onRateChange", this).call(this, t) } }, { key: "hookedDate", value: function () { var e = this, n = this; _t(this.window, "Date", (function (e) { var r = function (e) { i(o, e); var r = It(o); function o() { t(this, o); for (var e = arguments.length, i = new Array(e), a = 0; a < e; a++)i[a] = arguments[a]; if (0 === i.length) { var u = n.DateOrigin.now(), c = u - n.lastDatetime, l = c * n.rate; i.push(n.lastMDatetime + l) } return r.call.apply(r, [this].concat(i)) } return o }(e); return r = r.bind(new r) })), this.DateModified = this.window.Date, _t(this.DateModified, "now", (function () { return function () { return (new e.DateModified).getTime() } })) } }, { key: "moduleIdentityName", get: function () { return "dateTimer" } }]), a }(U); function Dt(t, e) { var n = "undefined" != typeof Symbol && t[Symbol.iterator] || t["@@iterator"]; if (!n) { if (Array.isArray(t) || (n = function (t, e) { if (!t) return; if ("string" == typeof t) return Pt(t, e); var n = Object.prototype.toString.call(t).slice(8, -1); "Object" === n && t.constructor && (n = t.constructor.name); if ("Map" === n || "Set" === n) return Array.from(t); if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Pt(t, e) }(t)) || e && t && "number" == typeof t.length) { n && (t = n); var r = 0, o = function () { }; return { s: o, n: function () { return r >= t.length ? { done: !0 } : { done: !1, value: t[r++] } }, e: function (t) { throw t }, f: o } } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") } var i, a = !0, u = !1; return { s: function () { n = n.call(t) }, n: function () { var t = n.next(); return a = t.done, t }, e: function (t) { u = !0, i = t }, f: function () { try { a || null == n.return || n.return() } finally { if (u) throw i } } } } function Pt(t, e) { (null == e || e > t.length) && (e = t.length); for (var n = 0, r = new Array(e); n < e; n++)r[n] = t[n]; return r } function Nt(t) { var e = function () { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function () { }))), !0 } catch (t) { return !1 } }(); return function () { var n, r = c(t); if (e) { var o = c(this).constructor; n = Reflect.construct(r, arguments, o) } else n = r.apply(this, arguments); return u(this, n) } } !function (t) { t.CTRL = "ctrl", t.META = "meta", t.CMD = "meta", t.SHIFT = "shift", t.ALT = "alt" }(Et || (Et = {})); var Lt = function (e) { i(o, e); var r = Nt(o); function o() { return t(this, o), r.apply(this, arguments) } return n(o, [{ key: "init", value: function () { var t = this, e = this.shortcutList; this.window.addEventListener("keydown", (function (n) { var r, o = Dt(e); try { for (o.s(); !(r = o.n()).done;) { var i = r.value; I(n, i) && (n.preventDefault(), n.stopPropagation(), i.operator(t.host)) } } catch (t) { o.e(t) } finally { o.f() } })) } }, { key: "shortcutList", get: function () { var t = this; return [["shortcutExpressions.+", function (t) { return t.speedUp() }], ["shortcutExpressions.-", function (t) { return t.speedDown() }], ["shortcutExpressions.*", function (t) { return t.speedMultiply() }], ["shortcutExpressions./", function (t) { return t.speedDivide() }], ["shortcutExpressions.reset", function (t) { return t.setSpeed(1) }], ["shortcutExpressions.custom", function (t) { return t.setSpeed() }]].map((function (e) { var n = w(e, 2), r = n[0], o = n[1]; return { expressions: t.getConfig(r), operator: o } })).map((function (t) { return e = t, "string" == typeof (n = Object.assign({}, e, { conditions: [] })).expressions && (n.expressions = n.expressions.split(";")), n.expressions && n.expressions instanceof Array && (n.conditions = n.expressions.map((function (t) { return function (t) { var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "+", n = t.split(e).map((function (t) { return t.trim() })).filter((function (t) { return t })), r = { code: n.pop() || "UNKNOWN_KEY" }; return n.forEach((function (t) { r[t + "Key"] = !0 })), r }(t) }))), n; var e, n })) } }, { key: "moduleIdentityName", get: function () { return "shortcutKey" } }, { key: "declareConfigs", value: function () { return [{ type: f.ARRAY, itemType: f.SHORTCUT, key: "shortcutExpressions.+", default: ["ctrl + Equal", "meta + Equal", "ctrl + Period", "meta + Period"] }, { type: f.ARRAY, itemType: f.SHORTCUT, key: "shortcutExpressions.-", default: ["ctrl + Minus", "meta + Minus", "ctrl + Comma", "meta + Comma"] }, { type: f.ARRAY, itemType: f.SHORTCUT, key: "shortcutExpressions.*", default: ["alt + Equal", "alt + Period"] }, { type: f.ARRAY, itemType: f.SHORTCUT, key: "shortcutExpressions./", default: ["alt + Minus", "alt + Comma"] }, { type: f.ARRAY, itemType: f.SHORTCUT, key: "shortcutExpressions.reset", default: ["ctrl + Digit0", "meta + Digit0", "alt + Digit0"] }, { type: f.ARRAY, itemType: f.SHORTCUT, key: "shortcutExpressions.custom", default: ["ctrl + Digit9", "meta + Digit9"] }] } }]), o }(U); function Bt(t) { var e = function () { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function () { }))), !0 } catch (t) { return !1 } }(); return function () { var n, r = c(t); if (e) { var o = c(this).constructor; n = Reflect.construct(r, arguments, o) } else n = r.apply(this, arguments); return u(this, n) } } function Vt(t, e) { var n = "undefined" != typeof Symbol && t[Symbol.iterator] || t["@@iterator"]; if (!n) { if (Array.isArray(t) || (n = function (t, e) { if (!t) return; if ("string" == typeof t) return Ut(t, e); var n = Object.prototype.toString.call(t).slice(8, -1); "Object" === n && t.constructor && (n = t.constructor.name); if ("Map" === n || "Set" === n) return Array.from(t); if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Ut(t, e) }(t)) || e && t && "number" == typeof t.length) { n && (t = n); var r = 0, o = function () { }; return { s: o, n: function () { return r >= t.length ? { done: !0 } : { done: !1, value: t[r++] } }, e: function (t) { throw t }, f: o } } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") } var i, a = !0, u = !1; return { s: function () { n = n.call(t) }, n: function () { var t = n.next(); return a = t.done, t }, e: function (t) { u = !0, i = t }, f: function () { try { a || null == n.return || n.return() } finally { if (u) throw i } } } } function Ut(t, e) { (null == e || e > t.length) && (e = t.length); for (var n = 0, r = new Array(e); n < e; n++)r[n] = t[n]; return r } function Gt(t) { var e, n = {}, r = Vt(Object.entries(t).filter((function (t) { var e = w(t, 1)[0]; return !["target", "key"].includes(e) }))); try { for (r.s(); !(e = r.n()).done;) { var o = w(e.value, 2), i = o[0], a = o[1]; n[i] = a } } catch (t) { r.e(t) } finally { r.f() } return n } var Ht = function (e) { i(a, e); var o = Bt(a); function a() { var e; t(this, a); for (var n = arguments.length, i = new Array(n), u = 0; u < n; u++)i[u] = arguments[u]; return l(r(e = o.call.apply(o, [this].concat(i))), "defines", []), l(r(e), "definePropertiesOrigin", void 0), l(r(e), "definePropertyOrigin", void 0), e } return n(a, [{ key: "onMounted", value: function () { B(c(a.prototype), "onMounted", this).call(this), this.definePropertiesOrigin = this.window.Object.defineProperties, this.definePropertyOrigin = this.window.Object.defineProperty } }, { key: "isCoreModule", get: function () { return !0 } }, { key: "init", value: function () { var t = this; Mt(this.window.Object, "defineProperties", (function (e) { var n, r = e.args, o = w(r, 2), i = o[0], a = o[1], u = Object.entries(a).map((function (e) { var n = w(e, 2), o = n[0], a = n[1], u = Object.assign({ target: i, key: o }, a); return t.hookDefine(u) ? (r[0] = u.target, [u.key, Gt(u)]) : [!1] })).filter((function (t) { return w(t, 1)[0] })); r[1] = (n = {}, u.forEach((function (t) { n[null == t[0] ? "" : t[0]] = t[1] })), n) })), Mt(this.window.Object, "defineProperty", (function (e) { var n = e.args, r = e.preventDefault, o = w(n, 3), i = o[0], a = o[1], u = o[2], c = Object.assign({ target: i, key: a }, u); t.hookDefine(c) ? (n[0] = c.target, n[1] = c.key, n[2] = Gt(c)) : r() })) } }, { key: "hookDefine", value: function (t) { var e, n = Vt(this.defines); try { for (n.s(); !(e = n.n()).done;) { if ((0, e.value)(t)) return !1 } } catch (t) { n.e(t) } finally { n.f() } return !0 } }, { key: "applyDefineRole", value: function (t) { this.defines.push(t) } }, { key: "moduleIdentityName", get: function () { return "definition" } }]), a }(L); function Wt(t) { return function (t) { if (Array.isArray(t)) return m(t) }(t) || function (t) { if ("undefined" != typeof Symbol && null != t[Symbol.iterator] || null != t["@@iterator"]) return Array.from(t) }(t) || b(t) || function () { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") }() } function qt(t) { var e = function () { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function () { }))), !0 } catch (t) { return !1 } }(); return function () { var n, r = c(t); if (e) { var o = c(this).constructor; n = Reflect.construct(r, arguments, o) } else n = r.apply(this, arguments); return u(this, n) } } var Ft = function (e) { i(a, e); var o = qt(a); function a() { var e; t(this, a); for (var n = arguments.length, i = new Array(n), u = 0; u < n; u++)i[u] = arguments[u]; return l(r(e = o.call.apply(o, [this].concat(i))), "extraElements", []), e } return n(a, [{ key: "init", value: function () { var t = this; !function (t, e, n) { Rt(t, e, "after", n, arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {}) }(this.window.Element.prototype, "attachShadow", (function (e) { var n = e.lastValue; return t.extraElements.push(n), n })) } }, { key: "querySelectorAll", value: function (t) { return g(this.extraElements.map((function (e) { return Wt(e.querySelectorAll(t)) }))) } }, { key: "moduleIdentityName", get: function () { return "shadowDOM" } }, { key: "isCoreModule", get: function () { return !0 } }]), a }(L); function zt(t, e) { var n = "undefined" != typeof Symbol && t[Symbol.iterator] || t["@@iterator"]; if (!n) { if (Array.isArray(t) || (n = function (t, e) { if (!t) return; if ("string" == typeof t) return Yt(t, e); var n = Object.prototype.toString.call(t).slice(8, -1); "Object" === n && t.constructor && (n = t.constructor.name); if ("Map" === n || "Set" === n) return Array.from(t); if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Yt(t, e) }(t)) || e && t && "number" == typeof t.length) { n && (t = n); var r = 0, o = function () { }; return { s: o, n: function () { return r >= t.length ? { done: !0 } : { done: !1, value: t[r++] } }, e: function (t) { throw t }, f: o } } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") } var i, a = !0, u = !1; return { s: function () { n = n.call(t) }, n: function () { var t = n.next(); return a = t.done, t }, e: function (t) { u = !0, i = t }, f: function () { try { a || null == n.return || n.return() } finally { if (u) throw i } } } } function Yt(t, e) { (null == e || e > t.length) && (e = t.length); for (var n = 0, r = new Array(e); n < e; n++)r[n] = t[n]; return r } function $t(t) { var e = function () { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function () { }))), !0 } catch (t) { return !1 } }(); return function () { var n, r = c(t); if (e) { var o = c(this).constructor; n = Reflect.construct(r, arguments, o) } else n = r.apply(this, arguments); return u(this, n) } } var Kt = function (e) { i(o, e); var r = $t(o); function o() { return t(this, o), r.apply(this, arguments) } return n(o, [{ key: "onRateChange", value: function (t) { B(c(o.prototype), "onRateChange", this).call(this, t); var e, n = zt(this.allVideoElements); try { for (n.s(); !(e = n.n()).done;) { var r = e.value; this.changePlaybackRate(r, t) } } catch (t) { n.e(t) } finally { n.f() } } }, { key: "init", value: function () { this.preventPlaybackRateLock() } }, { key: "changePlaybackRate", value: function (t, e) { e = e >= 16 ? 16 : e <= .065 ? .065 : e, this.unlockPlaybackRate(t), t.playbackRate = e, 1 !== e && this.lockPlaybackRate(t) } }, { key: "lockPlaybackRate", value: function (t) { var e = (this.definitionModule || {}).definePropertyOrigin; (void 0 === e ? Object.defineProperty : e).call(Object, t, "playbackRate", { configurable: !0, get: function () { return 1 }, set: function () { } }) } }, { key: "unlockPlaybackRate", value: function (t) { delete t.playbackRate, delete t.playbackRate, delete t.playbackRate } }, { key: "definitionModule", get: function () { return this.getDependencyModule("definition") } }, { key: "preventPlaybackRateLock", value: function () { var t = this.definitionModule; t ? t.applyDefineRole((function (t) { if (t.target instanceof HTMLVideoElement && "playbackRate" === t.key) return N("已阻止对该网站视频视频倍率的锁定"), !0 })) : N("`Video Speed Module`, dependency: `definition` module is required.") } }, { key: "allVideoElements", get: function () { var t = this.getDependencyModule("shadowDOM"); return t || N("`Video Speed Module`, dependency: `shadowDOM` module is required."), [].concat(Wt(t ? t.querySelectorAll("video") : []), Wt(this.document.querySelectorAll("video"))) } }, { key: "moduleIdentityName", get: function () { return "videoSpeed" } }]), o }(U); function Jt(t) { var e = function () { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function () { }))), !0 } catch (t) { return !1 } }(); return function () { var n, r = c(t); if (e) { var o = c(this).constructor; n = Reflect.construct(r, arguments, o) } else n = r.apply(this, arguments); return u(this, n) } } var Qt = function (e) { i(o, e); var r = Jt(o); function o(e) { var n, i = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "__CM"; return t(this, o), (n = r.call(this)).storage = e, n.prefix = i, n } return n(o, [{ key: "isCoreModule", get: function () { return !0 } }, { key: "openPage", value: function (t) { "function" == typeof D.openInTab ? D.openInTab(t, { active: !0 }) : this.window.open(t) } }, { key: "init", value: function () { var t = this; B(c(o.prototype), "init", this).call(this), "function" == typeof D.registerMenuCommand && (D.registerMenuCommand("主页", (function () { t.openPage("https://timer.palerock.cn") })), D.registerMenuCommand("打开配置页面", (function () { t.openPage("https://timer.palerock.cn/configuration") }))) } }, { key: "getAllConfigs", value: function () { var t = this; return this.getDeclaredConfigurations().map((function (e) { var n = t.getValue(e.namespace, e.key); return Object.assign({}, e, { value: null != n ? n : e.default }) })) } }, { key: "getDeclaredConfigurations", value: function () { return g([this.host.declareConfigs().map((function (t) { return Object.assign({}, t, { namespace: "host" }) }))].concat(Wt(this.host.getAllActivateModules().map((function (t) { return t.declareConfigs().map((function (e) { return Object.assign({}, e, { namespace: t.moduleIdentityName, modelName: t.moduleName }) })) }))))) } }, { key: "moduleIdentityName", get: function () { return "configs" } }, { key: "saveAllConfigs", value: function (t) { var e = this; t.forEach((function (t) { var n; e.setValue(t.namespace, t.key, null !== (n = t.value) && void 0 !== n ? n : t.default) })) } }, { key: "getValue", value: function (t, e) { if (this.available()) return this.storage.get([this.prefix, t, e].join("_")) } }, { key: "setValue", value: function (t, e, n) { this.available() && this.storage.set([this.prefix, t, e].join("_"), n) } }, { key: "available", value: function () { return !!this.storage && this.storage.available() } }, { key: "resetAll", value: function () { var t = this; this.storage.list().filter((function (e) { return e.startsWith(t.prefix) })).forEach((function (e) { t.storage.remove(e) })) } }]), o }(L), Xt = function () { function e() { t(this, e), l(this, "isAvailable", void 0) } return n(e, [{ key: "get", value: function (t) { return D.getValue(t) } }, { key: "list", value: function () { return D.listValues() } }, { key: "remove", value: function (t) { D.deleteValue(t) } }, { key: "set", value: function (t, e) { D.setValue(t, e) } }, { key: "available", value: function () { return null == this.isAvailable && (this.isAvailable = [a(D.setValue), a(D.getValue), a(D.listValues), a(D.deleteValue)].every((function (t) { return "function" === t }))), this.isAvailable } }]), e }(); function Zt(t) { var e = function () { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function () { }))), !0 } catch (t) { return !1 } }(); return function () { var n, r = c(t); if (e) { var o = c(this).constructor; n = Reflect.construct(r, arguments, o) } else n = r.apply(this, arguments); return u(this, n) } } var te = function (e) { i(a, e); var o = Zt(a); function a() { var e; t(this, a); for (var n = arguments.length, i = new Array(n), u = 0; u < n; u++)i[u] = arguments[u]; return l(r(e = o.call.apply(o, [this].concat(i))), "nodeElement", void 0), l(r(e), "clickMapper", { "_item-input": function (t) { t.setSpeed() }, "_item-x2": function (t) { t.speedUp() }, "_item-x-2": function (t) { t.speedDown() }, "_item-xx2": function (t) { t.speedMultiply() }, "_item-xx-2": function (t) { t.speedDivide() }, "_item-reset": function (t) { t.setSpeed(0) } }), l(r(e), "setTimeoutOrigin", setTimeout), e } return n(a, [{ key: "moduleIdentityName", get: function () { return "legacyUi" } }, { key: "displayNum", get: function () { return (this.rate.toString().split(".")[1] || "").length > 2 ? this.rate.toFixed(2) : this.rate.toString() } }, { key: "showSuspendedBall", get: function () { return this.getConfig("showSuspendedBall") } }, { key: "deeplyColor", get: function () { return this.getConfig("deeplyColor") } }, { key: "genElement", value: function () { var t = this.document.createElement("div"); t.innerHTML = (this.showSuspendedBall ? '<div class="_th-container" >\n <div class="_th-click-hover _item-input">\n x' + this.displayNum + '\n </div>\n <div class="_th-item _item-x2">&gt;</div>\n <div class="_th-item _item-x-2">&lt;</div>\n <div class="_th-item _item-xx2">&gt;&gt;</div>\n <div class="_th-item _item-xx-2">&lt;&lt;</div>\n <div class="_th-item _item-reset">O</div>\n</div>\n' : "") + '<div class="_th_cover-all-show-times _th_hidden">\n <div class="_th_times">x' + this.displayNum + "</div>\n</div>"; var e = this; return Object.keys(this.clickMapper).forEach((function (n) { var r = e.clickMapper[n], o = t.getElementsByClassName(n)[0]; o && (o.onclick = function () { r(e.host, e.rate) }) })), t } }, { key: "element", value: function () { return this.nodeElement || (this.nodeElement = this.genElement()), this.nodeElement } }, { key: "style", value: function () { var t = this.position, e = this.positionOffset, n = "right" === t ? "left" : "right", r = "left" === t; return "\n ._th-container ._th-item {\n margin-bottom: 3px;\n position: relative;\n width: 0;\n height: 0;\n cursor: pointer;\n opacity: .3;\n background-color: aquamarine;\n border-radius: 100%;\n text-align: center;\n line-height: 30px;\n -webkit-transition: all .35s;\n -o-transition: all .35s;\n transition: all .35s;\n ".concat(n, ": 30px;\n }\n\n ._th-container ._th-item, ._th-container ._th-click-hover, ._th_cover-all-show-times ._th_times {\n -webkit-box-shadow: ").concat(this.deeplyColor ? "4px 5px 10px 6px #b2b2b2" : "-3px 4px 12px -5px black", ";\n box-shadow: ").concat(this.deeplyColor ? "4px 5px 10px 6px #b2b2b2" : "-3px 4px 12px -5px black", ";\n }\n\n ._th-container:hover ._th-item._item-x2 {\n margin-").concat(t, ": 18px;\n width: 40px;\n height: 40px;\n line-height: 40px\n }\n\n ._th-container:hover ._th-item._item-x-2 {\n margin-").concat(t, ": 17px;\n width: 38px;\n height: 38px;\n line-height: 38px\n }\n\n ._th-container:hover ._th-item._item-xx2 {\n width: 36px;\n height: 36px;\n margin-").concat(t, ": 16px;\n line-height: 36px\n }\n\n ._th-container:hover ._th-item._item-xx-2 {\n width: 32px;\n height: 32px;\n line-height: 32px;\n margin-").concat(t, ": 14px\n }\n\n ._th-container:hover ._th-item._item-reset {\n width: 30px;\n line-height: 30px;\n height: 30px;\n margin-").concat(t, ": 10px\n }\n\n ._th-click-hover {\n position: relative;\n -webkit-transition: all .5s;\n -o-transition: all .5s;\n transition: all .5s;\n height: 45px;\n width: 45px;\n cursor: pointer;\n opacity: .6;\n border-radius: 100%;\n background-color: aquamarine;\n text-align: center;\n line-height: 45px;\n ").concat(n, ": 0\n }\n\n ._th-container:hover {\n ").concat(t, ": -5px\n }\n\n ._th-container {\n font-size: 12px;\n -webkit-transition: all .5s;\n -o-transition: all .5s;\n transition: all .5s;\n ").concat(t, ": -30px;\n top: ").concat(e, ";\n position: fixed;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n z-index: 999996;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n display: flex;\n width: 58px;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: ").concat(r ? "normal" : "reverse", ";\n -ms-flex-direction: ").concat(r ? "row" : "row-reverse", ";\n flex-direction: ").concat(r ? "row" : "row-reverse", ";\n }\n\n ._th-container ._th-item:hover {\n opacity: .8;\n background-color: #5fb492;\n color: aliceblue\n }\n\n ._th-container ._th-item:active {\n opacity: .9;\n background-color: #1b3a26;\n color: aliceblue\n }\n\n ._th-container:hover ._th-click-hover {\n opacity: .8\n }\n\n ._th-container:hover ._th-item {\n opacity: .6;\n ").concat(n, ": 0\n }\n\n ._th-container ._th-click-hover:hover {\n opacity: .8;\n background-color: #5fb492;\n color: aliceblue\n }\n\n ._th_cover-all-show-times {\n position: fixed;\n top: 0;\n ").concat(n, ": 0;\n width: 100%;\n height: 100%;\n z-index: 999996;\n opacity: 1;\n font-weight: 900;\n font-size: 30px;\n color: #4f4f4f;\n background-color: rgba(0, 0, 0, 0.1)\n }\n\n ._th_cover-all-show-times._th_hidden {\n z-index: -99999;\n opacity: 0;\n -webkit-transition: 1s all;\n -o-transition: 1s all;\n transition: 1s all\n }\n\n ._th_cover-all-show-times ._th_times {\n width: 300px;\n height: 300px;\n border-radius: 50%;\n background-color: rgba(127, 255, 212, 0.51);\n text-align: center;\n line-height: 300px;\n position: absolute;\n top: 50%;\n ").concat(n, ": 50%;\n margin-top: -150px;\n margin-").concat(n, ": -150px\n }\n ") } }, { key: "onUiRateChange", value: function (t) { if (B(c(a.prototype), "onUiRateChange", this).call(this, t), this.nodeElement) { var e = this.nodeElement.querySelector("._th-click-hover") || {}, n = this.nodeElement.querySelector("._th_times") || {}, r = this.displayNum; e.innerHTML = "x" + r, n.innerHTML = "x" + r; var o = this.nodeElement.querySelector("._th_cover-all-show-times") || {}; o.className = "_th_cover-all-show-times", this.setTimeoutOrigin.bind(this.window)((function () { o.className = "_th_cover-all-show-times _th_hidden" }), 100) } } }, { key: "position", get: function () { return this.getConfig("position") } }, { key: "positionOffset", get: function () { return this.getConfig("positionOffset") } }, { key: "declareConfigs", value: function () { return [{ key: "position", type: f.STRING, default: "left" }, { key: "positionOffset", type: f.STRING, default: "20%" }, { key: "showSuspendedBall", type: f.BOOLEAN, default: !0, title: "Show Suspended Ball" }, { key: "deeplyColor", type: f.BOOLEAN, default: !0, title: "Deeply Color" }] } }]), a }(H), ee = new F; return ee.exportOuter(), ee.registerModule(new Qt(new Xt)), ee.registerModule(new Ht), ee.registerModule(new Ft), ee.registerModule(new Tt), ee.registerModule(new jt), ee.registerModule(new Kt), ee.registerModule(new Lt, !0), ee.registerModule(new te, !0), ee.bootstrap(), ee
  3221. })); if (window.performance) window.performance.now = Date.now;
  3222.  
  3223. // 在这里编写希望延迟执行的代码
  3224. console.log("这段代码将在5秒后执行!");
  3225. }
  3226.  
  3227. // 设置延迟时间(毫秒)
  3228. var delayMilliseconds = 5000; // 5秒
  3229.  
  3230. // 使用setTimeout来延迟执行函数
  3231. setTimeout(delayedFunction, delayMilliseconds);
  3232.  
  3233. })();