diff --git a/output.js b/output.js
index 8ba450f..c02349d 100644
--- a/output.js
+++ b/output.js
@@ -1,194 +1,647 @@
-//Thu Jun 05 2025 08:15:42 GMT+0000 (Coordinated Universal Time)
+//Thu Jun 05 2025 13:20:49 GMT+0000 (Coordinated Universal Time)
//Base:https://github.com/echo094/decode-js
//Modify:https://github.com/smallfawn/decode_action
-const sortByKey = (_0x3f50ba, _0x1be3b8, _0x47a7a1) => _0x1be3b8.sort(({
- [_0x3f50ba]: _0x46a3d7
- }, {
- [_0x3f50ba]: _0x40dcfb
- }) => _0x47a7a1(_0x46a3d7, _0x40dcfb)),
- hlsDecodeAction = function (_0x1d40f8, _0xe812c2) {
- const _0x2e82d3 = new Hls({
- "debug": false,
- "p2pConfig": {
- "logLevel": false,
- "live": false
- }
- });
- _0x2e82d3.loadSource(_0xe812c2);
- _0x2e82d3.attachMedia(_0x1d40f8);
- _0x2e82d3.on(Hls.Events.MANIFEST_PARSED, function () {
- _0x1d40f8.play();
- });
- _0x2e82d3.p2pEngine.on("stats", function ({
- totalHTTPDownloaded: _0x46660f,
- totalP2PDownloaded: _0x5d164f,
- totalP2PUploaded: _0x311b03
- }) {
- {
- let _0x4692a2 = _0x46660f + _0x5d164f,
- _0x446a5b = "p2p ratio: " + Math.round(_0x5d164f / _0x4692a2 * 100) + "%, saved traffic: " + _0x5d164f + "KB, uploaded: " + _0x311b03 + "KB";
- console.log(_0x446a5b);
- }
- });
- };
-document.domain.indexOf("player.ikmz.cc") < 0 && document.domain.indexOf("player.mcue.cc") < 0 && (window.location.href = "//rinima.com");
-function player(_0x4806b4) {
- let _0x166b53 = decrypt(_0x4806b4.url);
- if (isEmpty(_0x166b53)) return TheError(), false;
- MPlayer(_0x166b53, _0x4806b4);
+let data = null;
+let currentMapID = null;
+let zoomFactor = 1.315;
+let offsetX = -60.3;
+let offsetY = -148.5;
+let angleOffset = -180;
+let direction = 0;
+const correctionValues = [[-1, 0, 0, -1], [-1, 0, 0, 1], [1, 0, 0, -1], [1, 0, 0, 1], [0, -1, -1, 0], [0, -1, 1, 0], [0, 1, -1, 0], [0, 1, 1, 0]];
+let a = correctionValues[0][0];
+let b = correctionValues[0][1];
+let c = correctionValues[0][2];
+let d = correctionValues[0][3];
+function updateOptions() {
+ if (!data) {
+ return;
+ }
+ const _0x26940b = document.getElementById("playerSelector");
+ const _0x27ab12 = _0x26940b.value;
+ _0x26940b.innerHTML = "";
+ data.data.forEach(_0x17ea12 => {
+ const _0x4602dd = document.createElement("option");
+ if (_0x17ea12.mingzi === "0") {
+ return;
+ }
+ if (_0x17ea12.Xueliang === 0) {
+ return;
+ }
+ _0x4602dd.text = _0x17ea12.mingzi;
+ _0x26940b.add(_0x4602dd);
+ });
+ if (!Array.from(_0x26940b.options).some(_0x4a0166 => _0x4a0166.text === _0x27ab12)) {
+ const _0x2aad67 = document.createElement("option");
+ _0x2aad67.text = _0x27ab12;
+ _0x26940b.add(_0x2aad67);
+ }
+ _0x26940b.value = _0x27ab12;
}
-function MPlayer(_0x2609bc, _0x33be5e) {
- $("#loading").remove();
- let _0x24b27c = _0x33be5e.next,
- _0x55791e = _0x33be5e.vkey,
- _0x4c72fc = _0x33be5e.title,
- _0x1c6bb8 = _0x33be5e.logo;
- $("body").append("
");
- var _0x1f81a7 = {
- "container": "#mui-player",
- "themeColor": _0x33be5e.theme,
- "poster": _0x33be5e.poster,
- "src": _0x2609bc,
- "title": _0x4c72fc,
- "autoplay": true,
- "initFullFixed": true,
- "preload": "auto",
- "autoOrientaion": true,
- "dragSpotShape": "square",
- "lang": "zh-cn",
- "volume": "1",
- "custom": {
- "footerControls": [{
- "slot": "nextMedia",
- "position": "left",
- "tooltip": "下一集",
- "oftenShow": true,
- "click": function (_0x3d1226) {
- top.location.href = _0x24b27c;
- },
- "style": {}
- }]
- },
- "videoAttribute": [{
- "attrKey": "webkit-playsinline",
- "attrValue": "webkit-playsinline"
- }, {
- "attrKey": "playsinline",
- "attrValue": "playsinline"
- }, {
- "attrKey": "x5-video-player-type",
- "attrValue": "h5-page"
- }],
- "plugins": [new MuiPlayerDesktopPlugin({
- "leaveHiddenControls": true,
- "fullScaling": 1,
- "contextmenu": [{
- "name": "mycopyright",
- "context": _0x33be5e.contextmenu,
- "zIndex": 0,
- "show": true,
- "click": function (_0x5dcc85) {
- top.location.href = _0x33be5e.contextlink;
- }
- }]
- }), new MuiPlayerMobilePlugin({
- "key": "01I01I01H01J01L01K01J01I01K01J01H01D01J01G01E",
- "showMenuButton": true
- })]
- };
- if (_0x2609bc.indexOf(".m3u8") > 0) Hls.isSupported() && Hls.WEBRTC_SUPPORT ? (console.log("P2P ON"), _0x1f81a7.parse = {
- "customKernel": hlsDecodeAction
- }) : _0x1f81a7.parse = {
- "type": "hls",
- "loader": Hls,
- "config": {
- "debug": false
+function moveDiv(_0xa11262, _0xdfadf7, _0x5a5016) {
+ const _0x106db6 = document.getElementById("canvas-container");
+ _0x106db6.style.left = 256 - _0xa11262 + "px";
+ _0x106db6.style.top = 256 - _0xdfadf7 + "px";
+ _0x106db6.style.transformOrigin = _0xa11262 + "px " + _0xdfadf7 + "px";
+ _0x106db6.style.transform = "rotate(" + _0x5a5016 + "deg)";
+}
+let reverseAngle = 0;
+function drawCanvas() {
+ if (!data) {
+ return;
+ }
+ const _0x1ee776 = document.getElementById("drawLines").checked;
+ const _0x2043c1 = document.getElementById("drawNames").checked;
+ const _0x554381 = document.getElementById("drawHPs").checked;
+ const _0x2f22ad = document.getElementById("drawFriends").checked;
+ const _0x2f4dda = document.getElementById("drawFollow").checked;
+ const _0x37be0c = document.getElementById("playerSize").value;
+ const _0x513a6c = document.getElementById("playerSelector").selectedOptions[0].textContent;
+ const _0x4b7888 = document.getElementById("canvas");
+ const _0x88a7d6 = _0x4b7888.getContext("2d");
+ const _0x59d66b = 2;
+ _0x4b7888.width = _0x4b7888.clientWidth * _0x59d66b;
+ _0x4b7888.height = _0x4b7888.clientHeight * _0x59d66b;
+ _0x88a7d6.scale(_0x59d66b, _0x59d66b);
+ _0x88a7d6.imageSmoothingEnabled = true;
+ _0x88a7d6.clearRect(0, 0, _0x4b7888.clientWidth, _0x4b7888.clientHeight);
+ data.data.forEach(_0x41cfbc => {
+ var _0x2792d7 = _0x41cfbc.camp;
+ var _0x2c6598 = _0x41cfbc.Xueliang;
+ var _0x15035a = _0x41cfbc.xaxis;
+ var _0x34172e = _0x41cfbc.yaxis;
+ var _0x412e96 = _0x41cfbc.Angle + angleOffset;
+ var _0x4be42b = _0x41cfbc.mingzi;
+ var _0x312f41 = _0x15035a;
+ var _0x3aed98;
+ if (_0x4be42b === "0") {
+ return;
}
- };else _0x2609bc.indexOf(".flv") > 0 && (_0x1f81a7.parse = {
- "type": "flv",
- "loader": flvjs,
- "config": {
- "cors": true
+ if (_0x41cfbc.Xueliang === 0) {
+ return;
}
- });
- var _0x2f7ce1 = new MuiPlayer(_0x1f81a7);
- _0x2f7ce1.on("ready", function () {
- {
- var _0x4a1122 = _0x2f7ce1.video(),
- _0x54d18b = localStorage.getItem(_0x55791e);
- _0x4a1122.addEventListener("loadedmetadata", function () {
- this.currentTime = _0x54d18b;
- });
- _0x4a1122.addEventListener("timeupdate", function () {
- var _0x5e5f21 = Math.floor(_0x4a1122.currentTime);
- localStorage.setItem(_0x55791e, _0x5e5f21);
- });
- _0x4a1122.addEventListener("ended", function () {
- localStorage.removeItem(_0x55791e);
- !!_0x24b27c && (top.location.href = _0x24b27c);
- });
- _0x4a1122.addEventListener("play", function () {
- $("#player_pauses").length > 0 && $("#player_pauses").remove();
- });
- _0x4a1122.addEventListener("pause", function (_0x3707c9) {
- {
- if (_0x33be5e.ad.on == "1" && isEmpty(_0x33be5e.ad.img) == false) {
- let _0x33e8a2 = "";
- $(".player-wrapper").append(_0x33e8a2);
- }
- }
- });
- if (isEmpty(_0x1c6bb8) == false) {
- $(".player-wrapper").append("
");
+ _0x15035a = a * _0x34172e + b * _0x15035a;
+ _0x34172e = c * _0x34172e + d * _0x312f41;
+ var _0x38bb8b = (_0x15035a + 20000) * 512 / 40000 * zoomFactor + offsetX;
+ var _0x5821bf = (_0x34172e + 20000) * 512 / 40000 * zoomFactor + offsetY;
+ _0x513a6c === "请选择队友" ? _0x2792d7 === 6 && (_0x2792d7 = 2) : (_0x2792d7 === 6 && (_0x2792d7 = 0), _0x4be42b === _0x513a6c && (_0x2792d7 = 2));
+ if (_0x2792d7 === 0 && _0x2f22ad === false) {
+ return;
+ }
+ switch (_0x2792d7) {
+ case 0:
+ _0x3aed98 = document.getElementById("type0").value;
+ break;
+ case 1:
+ _0x3aed98 = document.getElementById("type1").value;
+ break;
+ case 2:
+ _0x3aed98 = document.getElementById("type2").value;
+ _0x2f4dda && moveDiv(_0x38bb8b, _0x5821bf, -_0x412e96 + 270);
+ reverseAngle = _0x412e96 + 90;
+ break;
+ case 3:
+ _0x3aed98 = document.getElementById("type3").value;
+ break;
+ default:
+ _0x3aed98 = "black";
+ }
+ !_0x2f4dda && (moveDiv(256, 256, 0), reverseAngle = 0);
+ _0x88a7d6.beginPath();
+ _0x88a7d6.fillStyle = _0x3aed98;
+ _0x88a7d6.arc(_0x38bb8b, _0x5821bf, _0x37be0c - 0.6, 0, Math.PI * 2);
+ _0x88a7d6.fill();
+ _0x88a7d6.strokeStyle = "white";
+ _0x88a7d6.lineWidth = 0.6;
+ _0x88a7d6.beginPath();
+ _0x88a7d6.arc(_0x38bb8b, _0x5821bf, _0x37be0c, 0, Math.PI * 2);
+ _0x88a7d6.stroke();
+ if (_0x1ee776) {
+ _0x88a7d6.beginPath();
+ let _0x305dfc;
+ let _0x4ff104;
+ let _0x5e6e76;
+ switch (_0x2792d7) {
+ case 2:
+ _0x305dfc = (_0x412e96 - 8) * Math.PI / 180;
+ _0x4ff104 = (_0x412e96 + 8) * Math.PI / 180;
+ _0x5e6e76 = 30;
+ break;
+ case 0:
+ _0x305dfc = (_0x412e96 - 16.5) * Math.PI / 180;
+ _0x4ff104 = (_0x412e96 + 16.5) * Math.PI / 180;
+ _0x5e6e76 = 13;
+ break;
+ case 1:
+ default:
+ _0x305dfc = (_0x412e96 - 16.5) * Math.PI / 180;
+ _0x4ff104 = (_0x412e96 + 16.5) * Math.PI / 180;
+ _0x5e6e76 = 26;
}
- isEmpty(_0x24b27c) && $(".footer-control[slot='nextMedia']").remove();
+ _0x88a7d6.moveTo(_0x38bb8b, _0x5821bf);
+ _0x88a7d6.arc(_0x38bb8b, _0x5821bf, _0x5e6e76, _0x305dfc, _0x4ff104, false);
+ let _0x53ff0b = _0x88a7d6.createRadialGradient(_0x38bb8b, _0x5821bf, 0, _0x38bb8b, _0x5821bf, _0x5e6e76);
+ _0x53ff0b.addColorStop(0, "rgba(255, 255, 255, 1)");
+ _0x53ff0b.addColorStop(1, "rgba(255, 255, 255, 0.3)");
+ _0x88a7d6.fillStyle = _0x53ff0b;
+ _0x88a7d6.globalAlpha = 0.9;
+ _0x88a7d6.fill();
+ _0x88a7d6.globalAlpha = 1;
}
- });
- _0x2f7ce1.on("ready", function () {
- _0x2f7ce1.showToast(_0x33be5e.msgready, 6000);
- });
- _0x2f7ce1.on("error", function () {
- _0x2f7ce1.showToast(_0x33be5e.msgerror, 5000);
- });
- _0x2f7ce1.on("seek-progress", function () {
- _0x2f7ce1.showToast("加载中...");
+ (_0x2043c1 || _0x554381) && (_0x88a7d6.save(), _0x88a7d6.translate(_0x38bb8b, _0x5821bf), _0x88a7d6.rotate(reverseAngle * Math.PI / 180), _0x88a7d6.translate(-_0x38bb8b, -_0x5821bf), _0x2043c1 && (_0x88a7d6.font = "8px Arial, 黑体", _0x88a7d6.strokeStyle = "white", _0x88a7d6.lineWidth = 1, _0x88a7d6.strokeText(_0x4be42b, _0x38bb8b - 11, _0x5821bf + 11), _0x88a7d6.fillStyle = "#007BA7", _0x88a7d6.fillText(_0x4be42b, _0x38bb8b - 11, _0x5821bf + 11)), _0x554381 && (_0x88a7d6.fillStyle = "LightCyan", _0x88a7d6.font = "10px Arial, 宋体", _0x88a7d6.fillText(_0x2c6598, _0x38bb8b - 6, _0x5821bf - 5)), _0x88a7d6.restore());
});
}
-function TheError(_0x15d882 = "404") {
- $("body").append("" + _0x15d882 + "
");
- $("#loading").remove();
+function analysis(_0x4270a6) {
+ try {
+ const _0x4a9b3c = JSON.parse(_0x4270a6);
+ let _0x4569f0 = parseInt(_0x4a9b3c.map, 10);
+ if (_0x4569f0 !== currentMapID) {
+ currentMapID = _0x4569f0;
+ let _0xe2645 = "";
+ switch (currentMapID) {
+ case 0:
+ _0xe2645 = "港口-竞技荣耀-保卫者专用.png";
+ zoomFactor = 1.518;
+ offsetX = -130.4;
+ offsetY = -237.5;
+ direction = 5;
+ angleOffset = 90;
+ break;
+ case 1:
+ _0xe2645 = "港口-竞技荣耀-潜伏者专用.png";
+ zoomFactor = 1.518;
+ offsetX = -153.8;
+ offsetY = -73.4;
+ direction = 6;
+ angleOffset = -90;
+ break;
+ case 2:
+ _0xe2645 = "港口-世界冠军AG-保卫者专用.png";
+ zoomFactor = 1.379;
+ offsetX = -122.1;
+ offsetY = -59.7;
+ direction = 5;
+ angleOffset = 90;
+ break;
+ case 3:
+ _0xe2645 = "港口-世界冠军AG-潜伏者专用.png";
+ zoomFactor = 1.342;
+ offsetX = -115.1;
+ offsetY = -123.7;
+ direction = 6;
+ angleOffset = -90;
+ break;
+ case 4:
+ _0xe2645 = "供电所-保卫者专用.png";
+ zoomFactor = 1.2;
+ offsetX = -76.8;
+ offsetY = -23.8;
+ direction = 3;
+ angleOffset = 0;
+ break;
+ case 5:
+ _0xe2645 = "供电所-潜伏者专用.png";
+ zoomFactor = 1.2;
+ offsetX = -61.8;
+ offsetY = -92.1;
+ direction = 0;
+ angleOffset = 180;
+ break;
+ case 6:
+ _0xe2645 = "黑色城镇-保卫者专用.png";
+ zoomFactor = 1.315;
+ offsetX = -73.8;
+ offsetY = -100.8;
+ direction = 0;
+ angleOffset = -180;
+ break;
+ case 7:
+ _0xe2645 = "黑色城镇-潜伏者专用.png";
+ zoomFactor = 1.315;
+ offsetX = -105.1;
+ offsetY = -75.4;
+ direction = 3;
+ angleOffset = 0;
+ break;
+ case 8:
+ _0xe2645 = "潜艇-保卫者专用.png";
+ zoomFactor = 1.635;
+ offsetX = -85.1;
+ offsetY = -210.3;
+ direction = 3;
+ angleOffset = 0;
+ break;
+ case 9:
+ _0xe2645 = "潜艇-潜伏者专用.png";
+ zoomFactor = 1.635;
+ offsetX = -263;
+ offsetY = -123.5;
+ direction = 0;
+ angleOffset = 180;
+ break;
+ case 10:
+ _0xe2645 = "卫星基地-竞技荣耀-保卫者专用.png";
+ zoomFactor = 1.355;
+ offsetX = -93.5;
+ offsetY = -87.9;
+ direction = 5;
+ angleOffset = 90;
+ break;
+ case 11:
+ _0xe2645 = "卫星基地-竞技荣耀-潜伏者专用.png";
+ zoomFactor = 1.355;
+ offsetX = -108;
+ offsetY = -71.3;
+ direction = 6;
+ angleOffset = -90;
+ break;
+ case 12:
+ _0xe2645 = "新黑色城镇-保卫者专用.png";
+ zoomFactor = 1.315;
+ offsetX = -60.3;
+ offsetY = -148.5;
+ direction = 0;
+ angleOffset = -180;
+ break;
+ case 13:
+ _0xe2645 = "新黑色城镇-潜伏者专用.png";
+ zoomFactor = 1.315;
+ offsetX = -87;
+ offsetY = -62.9;
+ direction = 3;
+ angleOffset = 0;
+ break;
+ case 14:
+ _0xe2645 = "新年广场-保卫者专用.png";
+ zoomFactor = 1.749;
+ offsetX = -189.2;
+ offsetY = -189.7;
+ direction = 5;
+ angleOffset = 90;
+ break;
+ case 15:
+ _0xe2645 = "新年广场-潜伏者专用.png";
+ zoomFactor = 1.749;
+ offsetX = -174.1;
+ offsetY = -216.2;
+ direction = 3;
+ angleOffset = 0;
+ break;
+ case 16:
+ _0xe2645 = "新潜艇-保卫者专用.png";
+ zoomFactor = 1.625;
+ offsetX = -167.9;
+ offsetY = -162.3;
+ direction = 3;
+ angleOffset = 0;
+ break;
+ case 17:
+ _0xe2645 = "新潜艇-潜伏者专用.png";
+ zoomFactor = 1.625;
+ offsetX = -187.3;
+ offsetY = -176.2;
+ direction = 0;
+ angleOffset = 180;
+ break;
+ case 18:
+ _0xe2645 = "新沙漠-灰-保卫者专用.png";
+ zoomFactor = 1.285;
+ offsetX = -98.4;
+ offsetY = -128.7;
+ direction = 0;
+ angleOffset = 180;
+ break;
+ case 19:
+ _0xe2645 = "新沙漠-灰-潜伏者专用.png";
+ zoomFactor = 1.285;
+ offsetX = -54.9;
+ offsetY = -72.4;
+ direction = 3;
+ angleOffset = 0;
+ break;
+ case 20:
+ _0xe2645 = "新沙丘-保卫者专用.png";
+ zoomFactor = 1.668;
+ offsetX = -191.1;
+ offsetY = -203;
+ direction = 5;
+ angleOffset = 90;
+ break;
+ case 21:
+ _0xe2645 = "新沙丘-潜伏者专用.png";
+ zoomFactor = 1.668;
+ offsetX = -211.1;
+ offsetY = -101.8;
+ direction = 6;
+ angleOffset = -90;
+ break;
+ case 22:
+ _0xe2645 = "新卫星基地-保卫者专用.png";
+ zoomFactor = 1.288;
+ offsetX = -66.2;
+ offsetY = -83.8;
+ direction = 5;
+ angleOffset = 90;
+ break;
+ case 23:
+ _0xe2645 = "新卫星基地-潜伏者专用.png";
+ zoomFactor = 1.288;
+ offsetX = -104.1;
+ offsetY = -68.6;
+ direction = 6;
+ angleOffset = -90;
+ break;
+ case 24:
+ _0xe2645 = "新鹰眼-CFPL十周年纪念版-保卫者专用.png";
+ zoomFactor = 1.62;
+ offsetX = -195.4;
+ offsetY = -198.2;
+ direction = 5;
+ angleOffset = 90;
+ break;
+ case 25:
+ _0xe2645 = "新鹰眼-CFPL十周年纪念版-潜伏者专用.png";
+ zoomFactor = 1.62;
+ offsetX = -143.4;
+ offsetY = -179.5;
+ direction = 6;
+ angleOffset = -90;
+ break;
+ case 26:
+ _0xe2645 = "异域小城-世界冠军Q9-保卫者专用.png";
+ zoomFactor = 1.315;
+ offsetX = -83.1;
+ offsetY = -127.4;
+ direction = 5;
+ angleOffset = 90;
+ break;
+ case 27:
+ _0xe2645 = "异域小城-世界冠军Q9-潜伏者专用.png";
+ zoomFactor = 1.315;
+ offsetX = -99.7;
+ offsetY = -90;
+ direction = 6;
+ angleOffset = -90;
+ break;
+ case 28:
+ _0xe2645 = "鹰眼-保卫者专用.png";
+ zoomFactor = 1.54;
+ offsetX = -147.6;
+ offsetY = -119.2;
+ direction = 5;
+ angleOffset = 90;
+ break;
+ case 29:
+ _0xe2645 = "鹰眼-潜伏者专用.png";
+ zoomFactor = 1.54;
+ offsetX = -153.8;
+ offsetY = -179.5;
+ direction = 6;
+ angleOffset = -90;
+ break;
+ case 30:
+ _0xe2645 = "新运输船-保卫者专用.png";
+ zoomFactor = 3.093;
+ offsetX = -536.8;
+ offsetY = -458.4;
+ direction = 3;
+ angleOffset = 0;
+ break;
+ case 31:
+ _0xe2645 = "新运输船-潜伏者专用.png";
+ zoomFactor = 3.142;
+ offsetX = -551.3;
+ offsetY = -645.7;
+ direction = 0;
+ angleOffset = -180;
+ break;
+ case 32:
+ _0xe2645 = "新姑苏-保卫者专用.png";
+ zoomFactor = 1.648;
+ offsetX = -191.3;
+ offsetY = -194.1;
+ direction = 5;
+ angleOffset = 90;
+ break;
+ case 33:
+ _0xe2645 = "新姑苏-潜伏者专用.png";
+ zoomFactor = 1.648;
+ offsetX = -168.4;
+ offsetY = -165.1;
+ direction = 6;
+ angleOffset = -90;
+ break;
+ case 34:
+ _0xe2645 = "供电所-竞技荣耀-保卫者专用.png";
+ zoomFactor = 1.588;
+ offsetX = -143;
+ offsetY = -102.5;
+ direction = 3;
+ angleOffset = 0;
+ break;
+ case 35:
+ _0xe2645 = "供电所-竞技荣耀-潜伏者专用.png";
+ zoomFactor = 1.588;
+ offsetX = -168.4;
+ offsetY = -189;
+ direction = 0;
+ angleOffset = -180;
+ break;
+ case 36:
+ _0xe2645 = "新沙漠-灰-保卫者专用.png";
+ zoomFactor = 1.285;
+ offsetX = -78.9;
+ offsetY = -137.9;
+ direction = 0;
+ angleOffset = 180;
+ break;
+ case 37:
+ _0xe2645 = "新沙漠-灰-潜伏者专用.png";
+ zoomFactor = 1.285;
+ offsetX = -70.6;
+ offsetY = -65;
+ direction = 3;
+ angleOffset = 0;
+ break;
+ case 38:
+ _0xe2645 = "巷战-保卫者专用.png";
+ zoomFactor = 2.525;
+ offsetX = -406.8;
+ offsetY = -405.4;
+ direction = 6;
+ angleOffset = -90;
+ break;
+ case 39:
+ _0xe2645 = "巷战-潜伏者专用.png";
+ zoomFactor = 2.525;
+ offsetX = -397.3;
+ offsetY = -401.1;
+ direction = 5;
+ angleOffset = 90;
+ break;
+ case 40:
+ _0xe2645 = "新沙漠TD-保卫者专用.png";
+ zoomFactor = 2.525;
+ offsetX = -406.8;
+ offsetY = -405.4;
+ direction = 6;
+ angleOffset = -90;
+ break;
+ case 41:
+ _0xe2645 = "新沙漠TD-潜伏者专用.png";
+ zoomFactor = 2.525;
+ offsetX = -397.3;
+ offsetY = -401.1;
+ direction = 5;
+ angleOffset = 90;
+ break;
+ case 42:
+ _0xe2645 = "新金字塔-保卫者专用.png";
+ zoomFactor = 2.525;
+ offsetX = -406.8;
+ offsetY = -405.4;
+ direction = 6;
+ angleOffset = -90;
+ break;
+ case 43:
+ _0xe2645 = "新金字塔-潜伏者专用.png";
+ zoomFactor = 2.525;
+ offsetX = -397.3;
+ offsetY = -401.1;
+ direction = 5;
+ angleOffset = 90;
+ break;
+ case 44:
+ _0xe2645 = "异域小城-竞技荣耀-保卫者专用.png";
+ zoomFactor = 1.336;
+ offsetX = -80.2;
+ offsetY = -80.4;
+ direction = 5;
+ angleOffset = 90;
+ break;
+ case 45:
+ _0xe2645 = "异域小城-竞技荣耀-潜伏者专用.png";
+ zoomFactor = 1.336;
+ offsetX = -90.1;
+ offsetY = -98.8;
+ direction = 6;
+ angleOffset = -90;
+ break;
+ case 100:
+ _0xe2645 = "守望之城.png";
+ zoomFactor = 2.03;
+ offsetX = -255.9;
+ offsetY = -243.8;
+ direction = 6;
+ angleOffset = -90;
+ break;
+ case 200:
+ _0xe2645 = "屋顶机场.png";
+ zoomFactor = 1.78;
+ offsetX = -227;
+ offsetY = -204.8;
+ direction = 5;
+ angleOffset = 90;
+ break;
+ case 300:
+ _0xe2645 = "地下研究所.png";
+ zoomFactor = 2.19;
+ offsetX = -308.4;
+ offsetY = -318.4;
+ direction = 0;
+ angleOffset = 180;
+ break;
+ case 400:
+ _0xe2645 = "胜利广场.png";
+ zoomFactor = 1.749;
+ offsetX = -193;
+ offsetY = -189.7;
+ direction = 5;
+ angleOffset = 90;
+ break;
+ case 500:
+ _0xe2645 = "失落的遗迹.png";
+ zoomFactor = 1.78;
+ offsetX = -208.4;
+ offsetY = -183.7;
+ direction = 0;
+ angleOffset = 180;
+ break;
+ case 600:
+ _0xe2645 = "狼穴.png";
+ zoomFactor = 1.86;
+ offsetX = -237.1;
+ offsetY = -310.6;
+ direction = 6;
+ angleOffset = -90;
+ break;
+ default:
+ _0xe2645 = "黑.png";
+ break;
+ }
+ [a, b, c, d] = correctionValues[direction];
+ document.getElementById("canvas-container").style.backgroundImage = "url(maps/" + _0xe2645 + ")";
+ }
+ data = _0x4a9b3c;
+ return true;
+ } catch (_0x3e2227) {}
}
-function isEmpty(_0x1d33ee) {
- if (typeof _0x1d33ee == "undefined" || _0x1d33ee == null || _0x1d33ee == "") return true;else {
+function test() {
+ analysis("{\"map\": 2,\"info\":[[0,100,237.2,200.3,270.0,\"佳鹏哥哥\"],[0,100,250.1,305.9,271.0,\"队友A\"],[0,100,220.1,365.9,269.0,\"队友B\"],[1,100,234.4,79.1,434.9,\"敌人\"],[1,100,234.4,90.1,435.9,\"敌人\"],[1,100,234.4,110.1,433.9,\"敌人\"]]}");
+ updateOptions();
+ document.getElementById("playerSelector").value = "佳鹏哥哥";
+ drawCanvas();
+}
+function verification() {
+ let _0x218321 = new Date();
+ let _0x4a9272 = _0x218321.getTime();
+ let _0xb21dd8 = Math.floor(_0x4a9272 / 1000);
+ if (_0xb21dd8 > 2553506483) {
return false;
}
+ return true;
}
-function turnoff(_0x488260) {
- document.getElementById(_0x488260).style.display = "none";
+function display() {
+ var _0x10b57d = document.getElementById("toggleButton");
+ var _0x3a2bdb = document.getElementById("menuContent");
+ var _0x452584 = document.getElementById("input-container");
+ var _0x51235d = document.getElementById("tips");
+ _0x3a2bdb.style.display === "none" ? (_0x3a2bdb.style.display = "block", _0x452584.style.height = "auto", _0x452584.style.width = "250px", _0x51235d.style.display = "block", _0x10b57d.innerHTML = ">>>>菜单<<<<", _0x452584.style.background = "#2b2b2b") : (_0x3a2bdb.style.display = "none", _0x452584.style.height = _0x10b57d.style.height, _0x452584.style.width = "auto", _0x452584.style.background = "rgba(255,255,255,0)", _0x51235d.style.display = "none", _0x10b57d.innerHTML = "<>");
}
-function decrypt(_0x4b1c4d) {
- let _0x28b767 = $("meta[name=\"viewport\"]").attr("id").replace("now_", ""),
- _0x95a22a = $("meta[charset=\"UTF-8\"]").attr("id").replace("now_", ""),
- _0x31ca84 = [],
- _0x316e38 = [],
- _0x183f1c = "";
- for (var _0x103d82 = 0; _0x103d82 < _0x95a22a.length; _0x103d82++) {
- _0x31ca84.push({
- "id": _0x95a22a[_0x103d82],
- "text": _0x28b767[_0x103d82]
- });
+const url = new URL(window.location);
+const params = new URLSearchParams(url.search);
+const key = params.get("key");
+console.log("Key:", key);
+var hostname = url.hostname;
+port = 9503;
+console.log("Hostname:", hostname);
+if (!!key) {
+ function createWebSocket(_0x552958) {
+ var _0x2658d4 = new WebSocket("ws://" + _0x552958 + ":" + port);
+ _0x2658d4.onopen = () => {
+ console.log("已连接到 WebSocket 服务器");
+ _0x2658d4.send(key);
+ };
+ _0x2658d4.onmessage = _0x174862 => {
+ if (!verification()) {
+ return;
+ }
+ console.log("收到消息:", _0x174862.data);
+ analysis(_0x174862.data) && drawCanvas();
+ };
+ _0x2658d4.onclose = () => {
+ _0x2658d4.close();
+ _0x2658d4 = null;
+ console.log("WebSocket 连接已关闭");
+ setTimeout(() => createWebSocket(_0x552958), 1000);
+ };
+ _0x2658d4.onerror = _0x32462f => {
+ _0x2658d4.close();
+ _0x2658d4 = null;
+ console.log("WebSocket 错误:", _0x32462f);
+ setTimeout(() => createWebSocket(_0x552958), 1000);
+ };
+ return _0x2658d4;
}
- _0x316e38 = sortByKey("id", _0x31ca84, (_0x57c2e1, _0x54ada1) => _0x57c2e1 - _0x54ada1);
- for (var _0x103d82 = 0; _0x103d82 < _0x316e38.length; _0x103d82++) {
- _0x183f1c += _0x316e38[_0x103d82].text;
- }
- let _0x154728 = CryptoJS.MD5(_0x183f1c + "lemon").toString(),
- _0x5e11fb = CryptoJS.enc.Utf8.parse(_0x154728.substring(16)),
- _0x3d7890 = CryptoJS.enc.Utf8.parse(_0x154728.substring(0, 16)),
- _0x29f44b = CryptoJS.AES.decrypt(_0x4b1c4d, _0x5e11fb, {
- "iv": _0x3d7890,
- "mode": CryptoJS.mode.CBC,
- "padding": CryptoJS.pad.Pkcs7
- });
- return _0x29f44b.toString(CryptoJS.enc.Utf8);
+ createWebSocket(hostname);
}
\ No newline at end of file
diff --git a/output.py b/output.py
index e9d2233..e0d1def 100644
Binary files a/output.py and b/output.py differ