- // ==UserScript==
- // @name 🎇🎇🎇防沉迷减点料🎇🎇🎇
-
- // @description [❤️支持全面] 已支持4366,37,9377,游戏狗,u7u9,7724,17yy,qq空间部分游戏,07073,7k7k,4399 4399网页游戏还能到点不踢 [⚡️更加快速] 0.99秒急速减料 [😱别怕大人] 大人来了就按"大人键" [✔️高可用率] 持续更新更靠谱 [🕶 手动减料] 防沉迷减料不成功? 对着防沉迷弹窗按快捷键 [😵💫智障减料] 误杀率高, 没卵用的实验性功能 [⛔ 强制登录] 7k7k 未成年限制登录个锤子 👍👍👍 热烈庆祝 GreasyFork 总安装量破千 👏👏👏
-
- // @namespace https://fcmsb250.github.io/
- // @version 4.8.3
- // @icon https://dsy4567.github.io/logo.svg
- // @author dsy4567 https://greasyfork.org/zh-CN/users/822325 | https://github.com/dsy4567
- // @run-at document-start
- // @require https://code.jquery.com/jquery-3.6.0.min.js
- // @license GPL-3.0
-
- // @match *://*.17yy.com/*
- // @match *://*.4399.com/*
- // @match *://*.7k7k.com/*
- // @match *://*.aiwan4399.com/*
- // @match *://*.iwan4399.com/*
- // @match *://*.zxwyouxi.com/*
- // @match *://*.5054399.net/*
- // @match *://*.5054399.com/*
- // @match *://h5.07073.com/*
- // @match *://*.7724.com/*
- // @match *://*.u7u9.com/*
- // @match *://*.gamedog.cn/*
- // @match *://*.9377.com/*
- // @match *://*.37.com/*
- // @match *://*.4366.com/*
-
- // @grant GM_addStyle
- // @grant GM_addValueChangeListener
- // @grant GM_getValue
- // @grant GM_info
- // @grant GM_notification
- // @grant GM_openInTab
- // @grant GM_registerMenuCommand
- // @grant GM_setValue
- // @grant GM_unregisterMenuCommand
- // @grant unsafeWindow
-
- // @homepageURL https://fcmsb250.github.io/
- // @supportURL https://github.com/dsy4567/Fucking-Anti-Indulgence/
-
- // ==/UserScript==
-
- /**
- * ________ ___ ___ ________ ___ __ ___ _________
- * |\ _____\\ \|\ \|\ ____\|\ \|\ \ |\ \|\___ ___\ |
- * \ \ \__/\ \ \\\ \ \ \___|\ \ \/ /|_ \ \ \|___ \ \_| |
- * \ \ __\\ \ \\\ \ \ \ \ \ ___ \ \ \ \ \ \ \ |
- * \ \ \_| \ \ \\\ \ \ \____\ \ \\ \ \ \ \ \ \ \ \ |
- * \ \__\ \ \_______\ \_______\ \__\\ \__\ \ \__\ \ \__\ \|/
- * \|__| \|_______|\|_______|\|__| \|__| \|__| \|__| v
- *
- * ________________________________________________________________
- * | |
- * | 未成年限制登录提醒 |
- * | |
- * |您使用的是未成年账号,仅周五、周六、周日及法定节假日晚上8:00- |
- * |9:00可以游戏!当前已被限制! |
- * | |
- * | ______________________________________ |
- * | | 下次可玩游戏时段 | |
- * | | | |
- * | | 本周五晚上8:00-9:00 | |
- * | |____________________________________| |
- * | |
- * |温馨提示: |
- * |1.如果身份信息有误,请点击》》申请修改《《 |
- * |2.如果您身份信息已经变动,可点击》》刷新身份《《 |
- * | ____________ ____________ |
- * | | | | | |
- * | | 更换账号 | | 确定 | |
- * | |__________| |__________| |
- * |______________________________________________________________|
- */
-
- "use strict";
- var D = new Date();
-
- // if (self == top) {
- // if (
- // GM_getValue("版本") != GM_info.script.version &&
- // GM_info.script.version == "4.8.1.1"
- // ) {
- // GM_notification(
- // "快看看有什么新功能吧",
- // "🎇🎇🎇防沉迷减点料🎇🎇🎇 更新完毕",
- // "",
- // () => {
- // GM_openInTab(
- // "https://greasyfork.org/zh-CN/scripts/437233-%E9%98%B2%E6%B2%89%E8%BF%B7%E5%8A%A0%E7%82%B9%E6%96%99"
- // );
- // }
- // );
- // }
- // }
-
- function 改变值(值, 默认值, 回调) {
- if (GM_getValue(值, 默认值) == "1") {
- GM_setValue(值, "0");
- } else if (GM_getValue(值, 默认值) == "0") {
- GM_setValue(值, "1");
- } else {
- GM_setValue(值, 默认值);
- }
- if (回调) {
- 回调();
- }
- }
- function 初始化值(值, 默认值, 回调) {
- if (GM_getValue(值, "天知道是啥") == "天知道是啥") {
- GM_setValue(值, 默认值);
- }
- if (回调) {
- 回调();
- }
- }
- function 检测状态(值) {
- if (GM_getValue(值) == "1") {
- return "✅已启用 ";
- } else if (GM_getValue(值) == "0") {
- return "❌已停用 ";
- } else {
- return "⚠️配置错误 ";
- }
- }
- function qs(选择器) {
- return document.querySelector(选择器);
- }
- function qsa(选择器) {
- return document.querySelectorAll(选择器);
- }
-
- // GM_setValue("版本", GM_info.script.version);
- 初始化值("安装日期", String(Math.floor(D.getTime() / 1000 / 60 / 60 / 24)));
- 初始化值("已提建议", "0");
- 初始化值("停用快捷键", "0");
- 初始化值("开发环境", "0");
-
- var 用了多少天 =
- Math.ceil(D.getTime() / 1000 / 60 / 60 / 24) -
- Number(GM_getValue("安装日期"));
- var 减料成功 = 0;
- var 一个弹窗的样式 = { remove: () => {} };
- var 最后一个菜单id = 0;
- var 游戏真实地址_17yy = "";
- /**
- * @type {Function}
- */
- var _playLoading;
- var 开发者配置 = {};
-
- const 网址 = location.href;
- const 脚本信息 = JSON.stringify({
- 浏览器: navigator.userAgent,
- 脚本能更新: GM_info.scriptWillUpdate,
- 脚本版本: GM_info.script.version,
- 脚本更新地址: GM_info.script.updateURL,
- 脚本管理器: GM_info.scriptHandler,
- 脚本管理器版本: GM_info.version,
- 用多久: 用了多少天,
- });
-
- if (GM_getValue("开发环境") == "1") {
- 开发者配置.启用控制台输出 = 1;
- // 开发者配置.启用调试 = 1;
- 开发者配置.禁用自动防沉迷减料 = 1;
- 开发者配置.在控制台使用脚本变量函数和GM = 1;
- } else {
- 开发者配置.启用控制台输出 = 0;
- 开发者配置.启用调试 = 0;
- 开发者配置.禁用自动防沉迷减料 = 0;
- 开发者配置.在控制台使用脚本变量函数和GM = 0;
- }
-
- var 一堆伞兵玩意 = [
- "#addiv",
- "#anti-indulge",
- "#anti-indulge-prompt",
- "#Anti_mask",
- "#Anti_open",
- "#app > div > div.cover.splash",
- "#chCoverDiv",
- "#codepop6",
- "#cover",
- "#div_dialog",
- "#easyDialogBox",
- "#fcmIframe",
- "#Guide",
- "#loginCertify",
- "#messageBox",
- "#overlay",
- "#page_wallpaper > div.xiaowei.xiaowei-orange > div.xw-left > div.xw-game > div.xw-top > div > div",
- "#pop2",
- "#pusher",
- "#shadow",
- "#swfdiv > div.box",
- "#tc100",
- "#yx_log",
-
- ".codegs",
- ".cmMask",
- ".fixedModal",
- ".mask",
- ".play_load",
- ".popup-c",
- ".realName",
- ".sdkDialog",
- ".toolDialog",
- ".ui-forbidden",
- ".webtipss",
-
- "body > div.show_box.popup_bg",
- ];
-
- /**
- * 为某个字符串获取两个字符串中间的字符串(不包括那两个字符串)
- * @param {String} 开始
- * @param {String} 结束
- * @param {String} 值
- * @param {String} 类型 "1": 网址, "2": 字母 + 数字, "3": 数字
- * @param {String} 前面追加
- * @returns {String}
- */
- function 获取中间(开始, 结束, 值, 类型, 前面追加) {
- 值 = 值.substring(值.indexOf(开始) + 开始.length);
- if (结束) {
- 值 = decodeURI(值.substring(0, 值.indexOf(结束)));
- }
- if (前面追加) {
- 值 = 前面追加 + 值;
- }
- switch (类型) {
- case "1":
- if (
- !(
- 值.substring(0, 2) == "//" ||
- 值.substring(0, 7) == "http://" ||
- 值.substring(0, 8) == "https://"
- )
- ) {
- throw new Error("不正确的字符串");
- }
- break;
- case "2":
- if (!/^[0-9a-zA-Z]*$/g.test(值)) {
- throw new Error("不正确的字符串");
- }
- break;
- case "3":
- if (isNaN(Number(值))) {
- throw new Error("不正确的字符串");
- }
- break;
-
- default:
- break;
- }
- return 值;
- }
-
- function 首字母大写(str) {
- str = str[0].toUpperCase() + str.substring(1, str.length);
- return str;
- }
-
- function log(a, b, c, d, e, f, g) {
- if (开发者配置.启用控制台输出) console.log(a, b, c, d, e, f, g);
- }
-
- function 智障减料() {
- let 游戏元素id或class = ["flash", "game", "play", "youxi", "swf", "flash"];
- let 防沉迷元素id或class = [
- "anti",
- "fcm",
- "verify",
- "mask",
- "certify",
- "dialog",
- "popup",
- "login",
- "cover",
- ];
- let 临时数组 = [];
- let 样式表 = "";
-
- 游戏元素id或class.forEach((str) => {
- 临时数组.push(
- "iframe[id*='" + str + "'],",
- "iframe[class*='" + str + "'],",
- "iframe[id*='" + str.toUpperCase() + "'],",
- "iframe[class*='" + str.toUpperCase() + "'],",
- "iframe[id*='" + 首字母大写(str) + "'],",
- "iframe[class*='" + 首字母大写(str) + "'],"
- );
- });
- 临时数组.forEach((str) => {
- 样式表 += str;
- });
- 样式表 += `#ctmdfcm
- {
- display: block !important;
- left: 0 !important;
- top: 0 !important;
- position: absolute !important;
- z-index: 999999 !important;
- }`;
- 临时数组 = [];
-
- 防沉迷元素id或class.forEach((str) => {
- 临时数组.push(
- "[id*='" + str + "'],",
- "[class*='" + str + "'],",
- "[id*='" + str.toUpperCase() + "'],",
- "[class*='" + str.toUpperCase() + "'],",
- "[id*='" + 首字母大写(str) + "'],",
- "[class*='" + 首字母大写(str) + "'],"
- );
- });
- 临时数组.forEach((str) => {
- 样式表 += str;
- });
- 样式表 += `#ctmdfcm
- {
- display: none !important;
- min-width: 0 !important;
- width: 0 !important;
- max-width: 0 !important;
- min-height: 0 !important;
- height: 0 !important;
- max-height: 0 !important;
- z-index: -999 !important;
- font-size: 0 !important;
- overflow: hidden !important;
- }`;
- 临时数组 = [];
-
- GM_addStyle(样式表);
- }
-
- // function get(url, call) {
- // let xhr = new XMLHttpRequest();
- // let response = "";
- // xhr.open("get", url);
- // xhr.send(null);
- // xhr.onload = () => {
- // response = xhr.responseText;
- // call(response);
- // };
- // }
-
- // function ajax(o) {
- // let xhr = new XMLHttpRequest();
- // let response = "";
- // xhr.open("post", o.url);
- // xhr.send("action=getStatus&id=" + o.data.id);
- // xhr.onload = () => {
- // response = xhr.responseText;
- // o.success(JSON.parse(response));
- // };
- // }
-
- function 更新菜单() {
- const 一堆菜单 = [
- ["⚠️沉迷于游戏不利于身心健康,请合理安排游戏时间,适度游戏⚠️"],
- ["❤️您已尽情欢乐" + 用了多少天 + "天", undefined, undefined, 1],
- [
- "✨没有防沉迷的游戏平台(作者没有收钱)",
- () => {
- GM_openInTab("https://fcmsb250.github.io/no-anti.html");
- },
- undefined,
- 1,
- ],
- [
- "👉再次减料按 alt + 鼠标中键",
- () => {
- 减料成功 = 0;
- if (_playLoading) {
- unsafeWindow.play22.playLoading = _playLoading;
- }
- 减料();
- 普通减料();
- },
- undefined,
- ],
- [
- "👉大人来了按 shift + 鼠标中键 (解除请再次减料)",
- () => {
- 大人来了();
- },
- undefined,
- ],
- [
- "👉手动减料对着防沉迷按 shift + alt + 鼠标右键",
- () => {
- alert("手动减料对着防沉迷按 shift + alt + 鼠标右键");
- },
- undefined,
- ],
- [
- "👉智障减料(不保证实用性)",
- () => {
- GM_setValue("开始智障减料", Math.random());
- },
- undefined,
- ],
- [
- 检测状态("停用快捷键") + " 停用快捷键",
- () => {
- 改变值("停用快捷键", "0", () => {
- 更新菜单();
- });
- },
- undefined,
- ],
- [
- "👍给个好评/📝反馈问题",
- () => {
- GM_openInTab(
- "https://greasyfork.org/zh-CN/scripts/437233/feedback"
- );
- },
- undefined,
- ],
- [
- "⛔解决访问错误",
- () => {
- location.href = 网址;
- },
- undefined,
- ],
- [
- "⛔7k7k强制登录",
- () => {
- location.href =
- "http://www.7k7k.com/swf/204220.htm?fai-doLogin";
- },
- undefined,
- ],
- ];
- 最后一个菜单id = 一堆菜单.length;
-
- // TM
- for (
- let 菜单id = 最后一个菜单id - 一堆菜单.length * 2;
- 菜单id < 最后一个菜单id + 一堆菜单.length * 2;
- 菜单id++
- ) {
- GM_unregisterMenuCommand(菜单id);
- }
-
- // VM
- 一堆菜单.forEach((菜单) => {
- GM_unregisterMenuCommand(菜单[0]);
- });
- GM_unregisterMenuCommand("✅已启用 停用快捷键");
- GM_unregisterMenuCommand("❌已停用 停用快捷键");
- GM_unregisterMenuCommand("⚠️配置错误 停用快捷键");
-
- 一堆菜单.forEach((菜单) => {
- const 菜单名 = 菜单[0];
- const 函数 = 菜单[1];
- const 快捷键 = 菜单[2];
-
- 最后一个菜单id = GM_registerMenuCommand(菜单名, 函数, 快捷键);
- });
- }
-
- function 大人来了() {
- log("[防沉迷减点料] 大人来了");
- try {
- 一个弹窗的样式.remove();
- log("[防沉迷减点料] 已去除样式");
- } catch (err) {}
-
- 一个弹窗的样式 = GM_addStyle(
- '*{margin:0;padding:0}ul{list-style:none;}.fl{float:left;}.fr{float:right;}.mysdkDialog{position:absolute;left:50%;top:50vh;margin:-210px 0 0 -309px;width:618px;z-index:20020}.mysdkDialog .myfcmdialog{color:black;position:absolute;left:0;top:0;width:620px;padding-bottom:30px;font-family:"microsoft yahei";font-size:14px;background:#fff;border-radius:8px;}.mysdkDialog .myfcmdialog .close-btn{position:absolute;right:0;top:0;width:40px;height:40px;background-color:red;line-height:40px;cursor:pointer;display:none}.mysdkDialog .myfcmdialog .title{line-height:30px;text-align:center;font-size:22px;font-weight:700;padding:25px 0 0;margin:0 40px;color:#454545;border:0;height:auto;float:none;width:auto;text-indent:0;}.mysdkDialog .myfcmdialog .stitle{text-align:left;line-height:1.6;margin:15px 40px 0;font-size:16px;}.mysdkDialog .myfcmdialog .stitle span{color:#ffa92d;}.mysdkDialog .myfcmdialog .mod-tip{margin:20px 40px 0;background:#F0F0F0;padding:12px 15px;border-radius:4px;color:#333;text-align:left}.mysdkDialog .myfcmdialog .tip-title{font-size:16px;font-weight:400;}.mysdkDialog .myfcmdialog .tip-info{margin-top:5px;line-height:26px;font-size:14px;}.mysdkDialog .myfcmdialog .tip-info li{font-size:16px;line-height:26px}.mysdkDialog .myfcmdialog .tip-info a{color:#FAA61B;text-decoration:underline;margin:0 4px;cursor:pointer;}.mysdkDialog .myfcmdialog .mod-btn{text-align:center;font-size:0;line-height:0;margin:25px 40px 0;}.mysdkDialog .myfcmdialog .mod-btn .btn-fcmprimary{display:inline-block;width:140px;height:38px;line-height:38px;border:1px solid #69bb01;color:#69bb01;font-size:14px;margin:0 15px;border-radius:5px;cursor:pointer;}.mysdkDialog .myfcmdialog .mod-btn .fr,.mysdkDialog .myfcmdialog .mod-btn .fl{width:250px;margin:0;}.mysdkDialog .myfcmdialog .mod-btn .btn-fcmprimary:hover{-webkit-filter:brightness(1);filter:brightness(1)}.mysdkDialog .myfcmdialog .mod-btn .btn-identity{background-color:#69bb01;color:#f8ffef}.fcmIframe{position:absolute;left:50%;top:270px;margin:0 0 0 -309px;width:618px;height:354px;z-index:2019;border:0 none;background-color:#000}.countDown{background:#eee;border-radius:3px;padding:10px;text-align:center;margin:20px 40px 0;font-size:16px;color:#666}.countDown .txt1{font-size:16px;height:28px;line-height:28px;color:#717171;}.countDown .txt2{height:40px;line-height:40px;font-size:26px;font-weight:bold;color:#54ba3d;}.mycmMask{display:none;width:100%;position:absolute;left:0;top:0;background:rgb(0,0,0);}'
- ); // 不知道从哪借(chao)鉴(xi)来的
- let 一个弹窗 = document.createElement("div");
- 一个弹窗.className = "mysdkDialog";
- 一个弹窗.innerHTML +=
- '<div class="myfcmdialog"><span class="close-btn">关闭</span><h2 class="title">未成年限制登录提醒</h2><div class="stitle">您使用的是未成年账号,仅周五、周六、周日及法定节假日晚上8:00-9:00可以游戏!当前已被限制!</div><div class="countDown" style=""><p class="txt1">下次可玩游戏时段</p><p class="txt2">本周五晚上8:00-9:00</p></div><div class="countDown" style="display:none">当前已限制游戏</div><div class="mod-tip" style=""><h3 class="tip-title">温馨提示:</h3><ul class="tip-info">1.如果身份信息有误,请点击<a href="https://u.4399.com/profile/realname-bizId-1199006632.html" target="_blank">》》申请修改《《</a><br>2.如果您身份信息已经变动,可点击<a target="_self" href="#">》》刷新身份《《</a></ul></div><div class="mod-btn" style=""><span class="btn-fcmprimary">更换账号</span><span class="btn-fcmprimary">确定</span></div></div>';
- // 不知道从哪借(chao)鉴(xi)来的
- document.body.appendChild(一个弹窗);
- let 遮罩 = document.createElement("div");
- 遮罩.className = "mycmMask";
- 遮罩.style.cssText =
- "height: " +
- document.documentElement.offsetHeight +
- "px; z-index: 9999; display: block";
- 遮罩.innerHTML = "";
- document.body.appendChild(遮罩);
- }
-
- function 减料() {
- if (减料成功) {
- return log("[防沉迷减点料] 减料被取消");
- }
-
- let 开始 = new Date().getTime();
-
- let $full_screen_frame = qs("#full_screen_frame");
- let $app_canvas_frame = qs("#app_canvas_frame");
- let $ifm = qs("#ifm");
-
- if (网址.includes("4399")) {
- // 搞破坏
- if (开发者配置.启用调试) {
- debugger;
- }
-
- try {
- Object.defineProperty(unsafeWindow, "smevent", {
- value: null, // 原来是Function, 这样做可以使防沉迷报错
- writable: false,
- });
- 减料成功 = 1;
- } catch (e) {}
- try {
- Object.defineProperty(unsafeWindow, "PageWebApiSdk", {
- value: null,
- writable: false,
- });
- 减料成功 = 1;
- } catch (e) {}
- try {
- Object.defineProperty(unsafeWindow, "getBizid", {
- value: null,
- writable: false,
- });
- 减料成功 = 1;
- } catch (e) {}
- } else if (unsafeWindow.play22 && 网址.includes("7k7k.com")) {
- // 7k7k获取游戏直链1
- if (开发者配置.启用调试) {
- debugger;
- }
-
- try {
- log("[防沉迷减点料] 尝试7k7k防沉迷减料");
- if (开发者配置.启用调试) {
- debugger;
- }
- // unsafeWindow.Play24.prototype.playLoading();
- unsafeWindow.play22.playLoading();
- if (!_playLoading) {
- _playLoading = unsafeWindow.play22.playLoading;
- }
- unsafeWindow.play22.playLoading = () => {}; // 防止重复调用
- 减料成功 = 1;
- // unsafeWindow.Play24.prototype.playLoading = ()=> {};
- } catch (err) {
- console.error(err);
- }
- } else if ($ifm && 网址.includes("m.7k7k.com/player")) {
- if (开发者配置.启用调试) {
- debugger;
- }
-
- if ($ifm.src != location.href && $ifm.src) {
- // 7k7k获取游戏直链2
- try {
- log("[防沉迷减点料] 尝试7k7k手机端防沉迷减料");
- if (开发者配置.启用调试) {
- debugger;
- }
- 减料成功 = 1;
- location.href = $ifm.src;
- } catch (err) {
- console.error(err);
- }
- }
- } else if (网址.includes("h5.7k7k.com/web/H5GAMES.html")) {
- if (开发者配置.启用调试) {
- debugger;
- }
-
- // 7k7k获取游戏直链3
- try {
- log("[防沉迷减点料] 尝试7k7k h5页游防沉迷减料");
- if (开发者配置.启用调试) {
- debugger;
- }
-
- $.get(
- "http://h5.7k7k.com/api_redirect/game/start/?client=0&account=" +
- 获取中间("userid=", ";", document.cookie, "2") +
- "&appkey=" +
- 获取中间("gid=", "&", 网址, "2") +
- "&uid=" +
- 获取中间("userid=", ";", document.cookie, "2") +
- "&tid=" +
- 获取中间("tid=", "&", 网址, "2"),
- (json) => {
- location.href = JSON.parse(json).url;
- }
- );
- 减料成功 = 1;
- } catch (err) {
- console.error(err);
- }
- } else if (网址.includes("h5.7k7k.com/game/")) {
- // 7k7k获取游戏直链3
- try {
- if (开发者配置.启用调试) {
- debugger;
- }
-
- console.log("[防沉迷减点料] 尝试7k7k h5页游(手机端)防沉迷破解");
- _$.get(
- "http://h5.7k7k.com/api_redirect/game/start/?client=0&account=" +
- 获取中间("userid=", ";", document.cookie, "2") +
- "&appkey=" +
- // eslint-disable-next-line no-undef
- unsafeWindow.gid[0] +
- "&uid=" +
- 获取中间("userid=", ";", document.cookie, "2") +
- "&tid=" +
- // eslint-disable-next-line no-undef
- unsafeWindow.tid,
- (json) => {
- let url = JSON.parse(json).url;
- if (url) location.href = url;
- }
- );
- 减料成功 = 1;
- } catch (err) {
- console.error(err);
- }
- } else if ($app_canvas_frame) {
- if (开发者配置.启用调试) {
- debugger;
- }
-
- try {
- if ($app_canvas_frame.src && $app_canvas_frame.src != 网址) {
- log("[防沉迷减点料] 尝试阻止QQ空间自动跳转1");
- if (开发者配置.启用调试) {
- debugger;
- }
- 减料成功 = 1;
- location.href = $app_canvas_frame.src;
- }
- } catch (err) {
- console.error(err);
- }
- } else if ($full_screen_frame) {
- if (开发者配置.启用调试) {
- debugger;
- }
-
- try {
- if ($full_screen_frame.src && $full_screen_frame.src != 网址) {
- log("[防沉迷减点料] 尝试阻止QQ空间自动跳转2");
- if (开发者配置.启用调试) {
- debugger;
- }
- 减料成功 = 1;
- location.href = $full_screen_frame.src;
- }
- } catch (err) {
- console.error(err);
- }
- } else if (网址.includes("//i.7724.com/user/danjilogin?url=")) {
- if (开发者配置.启用调试) {
- debugger;
- }
-
- try {
- log("[防沉迷减点料] 尝试7724防沉迷减料");
- // var url = 网址.substring(网址.indexOf("danjilogin?url=") + "danjilogin?url=".length);
- // if (
- // url.substring(0, 2) == "//" ||
- // url.substring(0, 7) == "http://" ||
- // url.substring(0, 8) == "https://"
- // ) {
- // }
- let url = 获取中间("danjilogin?url=", undefined, 网址, "1");
- location.href = url;
- 减料成功 = 1;
- } catch (err) {}
- } else if (网址.includes("wvw.9377.com/game_login.php")) {
- if (开发者配置.启用调试) {
- debugger;
- }
-
- try {
- log("[防沉迷减点料] 尝试9377防沉迷减料");
- $.get(网址, (html) => {
- // var url = html.substring(
- // html.indexOf('id="iframe" src="') + 'id="iframe" src="'.length,
- // html.indexOf('" name="mainFrame" scrolling="auto"')
- // );
- let url = 获取中间(
- 'id="iframe" src="',
- '" name="mainFrame" scrolling="auto"',
- html,
- "1"
- );
- location.href = url;
- });
- 减料成功 = 1;
- } catch (err) {}
- } else if (网址.includes("game.37.com/play.php")) {
- if (开发者配置.启用调试) {
- debugger;
- }
-
- try {
- log("[防沉迷减点料] 尝试37防沉迷减料");
- $.get(网址, (html) => {
- // var url = html.substring(
- // html.indexOf('src="//gameapp.37.com/controller/enter_game.php') +
- // 'src="'.length,
- // html.indexOf('" id="mainFrame"')
- // );
- let url = 获取中间(
- 'src="//gameapp.37.com/controller/enter_game.php',
- '" id="mainFrame"',
- html,
- "1",
- "//gameapp.37.com/controller/enter_game.php"
- );
- location.href = url;
- });
- 减料成功 = 1;
- } catch (err) {}
- } else if (网址.includes("wvw.4366.com/game_login.php")) {
- if (开发者配置.启用调试) {
- debugger;
- }
-
- try {
- log("[防沉迷减点料] 尝试4366防沉迷减料");
- $.get(网址, (html) => {
- // var url = html.substring(
- // html.indexOf('align="left" id="iframe" src="') +
- // 'align="left" id="iframe" src="'.length,
- // html.indexOf('" name="mainFrame" scrolling="auto"')
- // // );
- // if (
- // url.substring(0, 2) == "//" ||
- // url.substring(0, 7) == "http://" ||
- // url.substring(0, 8) == "https://"
- // ) {
- // location.href = url;
- // }
- let url = 获取中间(
- 'align="left" id="iframe" src="',
- '" name="mainFrame" scrolling="auto"',
- html,
- "1"
- );
- location.href = url;
- });
- 减料成功 = 1;
- } catch (err) {}
- } else if (网址.includes("www.17yy.com/f/play")) {
- if (开发者配置.启用调试) {
- debugger;
- }
-
- try {
- try {
- if (qs("#flashgame").src == 游戏真实地址_17yy) return;
- } catch (e) {}
- try {
- if (qs("#flash_frame").src == 游戏真实地址_17yy) return;
- } catch (e) {}
-
- $.ajax({
- url: "http://www.17yy.com/e/payapi/vip_ajax.php",
- data: {
- action: "getStatus",
- id: 获取中间("/f/play/", ".html", 网址, "3"),
- },
- type: "POST",
- dataType: "json",
- success: function (resp) {
- try {
- qs("#flashgame").src = 游戏真实地址_17yy =
- "http://" +
- unsafeWindow.server +
- "/" +
- unsafeWindow.classes +
- "/" +
- unsafeWindow.date +
- "/" +
- resp.data.game_path;
- } catch (e) {}
- try {
- qs("#flash_frame").src = 游戏真实地址_17yy =
- "http://" +
- unsafeWindow.server +
- "/" +
- unsafeWindow.classes +
- "/" +
- unsafeWindow.date +
- "/" +
- resp.data.game_path;
- } catch (e) {}
- },
- });
- 减料成功 = 1;
- } catch (err) {}
- }
-
- if (开发者配置.输出减料时间) {
- log(
- "[防沉迷减点料] 减料结束, 用时" +
- (new Date().getTime() - 开始) +
- "ms"
- );
- }
- }
-
- function 普通减料() {
- try {
- // 简单暴力的减料方式
- for (let 索引 = 0; 索引 < 一堆伞兵玩意.length; 索引++) {
- const element = 一堆伞兵玩意[索引];
- if (qsa(element)[0]) {
- qsa(element).forEach((el) => {
- el.remove();
- log("[防沉迷减点料] -减料成功- " + element);
- });
- }
- }
-
- [".mycmMask", ".myfcmdialog", ".mysdkDialog"].forEach((element) => {
- if (qsa(element)[0]) {
- qsa(element).forEach((el) => {
- el.remove();
- log("[防沉迷减点料] -解除大人来了成功- " + element);
- });
- }
- });
-
- try {
- 一个弹窗的样式.remove();
- log("[防沉迷减点料] 已去除样式");
- } catch (err) {}
- } catch (err) {
- console.error(err);
- }
- }
-
- function 减点料() {
- // 多来几次以防万一
- if (!开发者配置.禁用自动防沉迷减料) {
- 减料();
- for (let i = 1; i < 10; i++) {
- setTimeout(减料, i * 500);
- }
- }
- }
-
- // 加样式表
- if (!开发者配置.禁用自动防沉迷减料) {
- let css = "";
- for (let 索引 = 0; 索引 < 一堆伞兵玩意.length; 索引++) {
- const element = 一堆伞兵玩意[索引];
- css += element + ",";
- }
- css += `#ctmdfcm
- {
- display: none !important;
- min-width: 0 !important;
- width: 0 !important;
- max-width: 0 !important;
- min-height: 0 !important;
- height: 0 !important;
- max-height: 0 !important;
- z-index: -999 !important;
- font-size: 0 !important;
- overflow: hidden !important;
- }`;
- GM_addStyle(css);
- log("[防沉迷减点料] 加样式表成功");
- }
-
- // 一些无关紧要的代码
- (async () => {
- GM_addValueChangeListener(
- "开始智障减料",
- (name, old_value, new_value, remote) => {
- 智障减料();
- }
- );
-
- if (self == top) {
- //判断是否在iframe中
- // 烦人的提醒
- if (用了多少天 >= 3 && GM_getValue("已提建议") == "0") {
- GM_setValue("已提建议", "1");
- GM_notification(
- "请给我提点建议,帮助这个脚本变得更好",
- "🎇🎇🎇防沉迷减点料🎇🎇🎇 用的怎样?",
- "",
- () => {
- GM_openInTab(
- "https://greasyfork.org/zh-CN/scripts/437233/feedback"
- );
- }
- );
- }
- 更新菜单();
-
- // 精美图片
- log(
- "%c ",
- "font-size:512px;background-size:100% 100%;background-repeat:no-repeat;background-image:url(https://fcmsb250.github.io/fuck-anti.webp);"
- );
- }
-
- // 快捷键
- document.addEventListener(
- "mousedown",
- function (e) {
- if (GM_getValue("停用快捷键") == "0") {
- if (e.button == 1 && e.shiftKey && !e.altKey) {
- 大人来了();
- }
- if (e.button == 2 && e.shiftKey && e.altKey) {
- let el = document.elementFromPoint(e.x, e.y);
- log(
- "[防沉迷减点料] -手动减料成功- ." +
- el.className +
- " #" +
- el.id +
- " <" +
- el.tagName +
- ">"
- );
- el.style.display = "none";
- }
- if (e.button == 1 && e.altKey && !e.shiftKey) {
- 减料成功 = 0;
- 减料();
- 普通减料();
- }
- }
- },
- true
- );
-
- if (网址.includes("ptlogin.4399.com")) {
- setTimeout(() => {
- if (document.querySelector(".ptlogin_btn")) {
- document
- .querySelector(".ptlogin_btn")
- .addEventListener("mouseup", () => {
- alert("请在稍后刷新网页");
- });
- }
- }, 1000);
- }
-
- if (location.host == "www.7k7k.com") {
- try {
- document.querySelector("div.login_no").title =
- "✨防沉迷减点料支持7k7k强制登录, 请移步至脚本菜单";
- } catch (e) {}
-
- if (location.href.includes("fai-doLogin"))
- document
- .querySelector("div.login_no > div.h_login.login_btn > span")
- .click();
- }
-
- if (qs("script[src*='chpenmljpdpkebnohfbbdpfelabcnlnp']")) {
- GM_registerMenuCommand(
- "⚠️您已经安装了防沉迷终结者, 不推荐二者同时使用"
- );
- }
-
- if (开发者配置.在控制台使用脚本变量函数和GM) {
- unsafeWindow.更新在控制台使用的脚本变量函数和GM = () => {
- // GM_*
- unsafeWindow._GM_addStyle = GM_addStyle;
- unsafeWindow._GM_getValue = GM_getValue;
- unsafeWindow._GM_info = GM_info;
- unsafeWindow._GM_notification = GM_notification;
- unsafeWindow._GM_openInTab = GM_openInTab;
- unsafeWindow._GM_registerMenuCommand = GM_registerMenuCommand;
- unsafeWindow._GM_setValue = GM_setValue;
- unsafeWindow._GM_unregisterMenuCommand = GM_unregisterMenuCommand;
-
- // 普通变量
- unsafeWindow._D = D;
- unsafeWindow._最后一个菜单id = 最后一个菜单id;
- // unsafeWindow._玩了几分钟 = 玩了几分钟;
- unsafeWindow._用了多少天 = 用了多少天;
- unsafeWindow._减料成功 = 减料成功;
- unsafeWindow._脚本信息 = 脚本信息;
- unsafeWindow._开发者配置 = 开发者配置;
- unsafeWindow._一堆伞兵玩意 = 一堆伞兵玩意;
-
- // 自定函数
- unsafeWindow._改变值 = 改变值;
- unsafeWindow._初始化值 = 初始化值;
- unsafeWindow._检测状态 = 检测状态;
- unsafeWindow._更新菜单 = 更新菜单;
- unsafeWindow._大人来了 = 大人来了;
- // unsafeWindow._检测网址是否包含指定字符串 =
- // 检测网址是否包含指定字符串;
- // unsafeWindow._游戏中 = 游戏中;
- unsafeWindow._减料 = 减料;
- unsafeWindow._普通减料 = 普通减料;
- unsafeWindow._减点料 = 减点料;
- unsafeWindow._一个弹窗的样式 = 一个弹窗的样式;
- };
- unsafeWindow.更新在控制台使用的脚本变量函数和GM();
- }
-
- log(
- "[防沉迷减点料] " + 网址 + "\n\n脚本信息: ",
- 脚本信息,
- "\n\n开发者配置: ",
- 开发者配置
- );
-
- log(
- "[防沉迷减点料] 脚本执行完毕, 用时" +
- (new Date().getTime() - D.getTime()) +
- "ms ",
- 网址
- );
- })();
-
- addEventListener("load", () => {
- 减点料();
-
- setTimeout(() => {
- // 以防万一
- qsa("canvas").forEach((element) => {
- element.addEventListener(
- "mousedown",
- function (e) {
- if (GM_getValue("停用快捷键") == "0") {
- if (e.button == 1 && e.shiftKey) {
- 大人来了();
- }
- if (e.button == 1 && e.altKey) {
- 减料成功 = 0;
- 减料();
- }
- }
- },
- true
- );
- });
- }, 5000);
-
- });
-
- 减点料();