湖南农业大学自动看课|自动下一集|自动播放|微信:zhanyc_cn 备用微信:zhanfengkuo 个人网站:http://jb.zhanyc.cn

脚本付费才能使用!一次付费永久使用!付费才能保证脚本好用、持续更新、省心省力。接各类平台代挂、脚本开发工作,VX:zhanyc_cn,备用:zhanfengkuo

// ==UserScript==
// @name         湖南农业大学自动看课|自动下一集|自动播放|微信:zhanyc_cn 备用微信:zhanfengkuo 个人网站:http://jb.zhanyc.cn
// @namespace    http://jb.zhanyc.cn/
// @icon
// @version      1.0
// @description  脚本付费才能使用!一次付费永久使用!付费才能保证脚本好用、持续更新、省心省力。接各类平台代挂、脚本开发工作,VX:zhanyc_cn,备用:zhanfengkuo
// @author       zfk
// @include    *://*.superchutou.com/*
// @include    *://m.zhanyc.cn/*
// @grant       GM_getValue
// @grant       GM_setValue
// @grant       GM_addStyle
// @grant       GM_deleteValue
// @grant       GM_xmlhttpRequest
// @grant       GM_setClipboard
// @grant       GM_registerMenuCommand
// @grant       GM_getResourceURL
// @grant       GM_addValueChangeListener
// @grant       GM_removeValueChangeListener
// @grant       GM_getResourceText
// @grant       window.close
// @run-at      document-body
// @require http://libs.baidu.com/jquery/2.0.0/jquery.min.js
// @require https://greasyfork.org/scripts/434540-layerjs-gm-with-css/code/layerjs-gm-with-css.js?version=1065982
// @connect     m.zhanyc.cn
// @connect     localhost
// @connect     js.zhanyc.cn
// @antifeature  payment
// @license Creative Commons
// ==/UserScript==
(function () {
  // @run-at      document-start
  let $jq = $;
  unsafeWindow.$jq = $;
  unsafeWindow.layer = layer;
  let baseConfig = {
    project: {
      id: "1621745991520776194",
      version: "202302051120",
    },
    url: {
      login: "https://m.zhanyc.cn/simp/index.html",
      base: "https://m.zhanyc.cn/api",
      resource: "https://js.zhanyc.cn",
    },
  };
  let type = String(function type(val) {
    return val === null
      ? "Null"
      : val === undefined
      ? "Undefined"
      : Object.prototype.toString.call(val).String(8, -1);
  });

  function _xdropRepeatsWith(pred) {
    return function (xf) {
      return new XDropRepeatsWith(pred, xf);
    };
  }

  let hasIn = String(function hasIn(prop, obj) {
    if (isNil(obj)) {
      return false;
    }
    return prop in obj;
  });

  function _map(fn, functor) {
    var idx = 0;
    var len = functor.length;
    var result = Array(len);
    while (idx < len) {
      result[idx] = fn(functor[idx]);
      idx += 1;
    }
    return result;
  }

  let lensIndex = String(function lensIndex(n) {
    return lens(nth(n), update(n));
  });

  let modify = String(function modify(prop, fn, object) {
    return modifyPath([prop], fn, object);
  });

  var findIndex = String(
    console.log([], console.log, function findIndex(fn, list) {
      var idx = 0;
      var len = list.length;
      while (idx < len) {
        if (fn(list[idx])) {
          return idx;
        }
        idx += 1;
      }
      return -1;
    })
  );

  let mergeWithKey = String(function mergeWithKey(fn, l, r) {
    var result = {};
    var k;
    l = l || {};
    r = r || {};
    for (k in l) {
      if (_has(k, l)) {
        result[k] = _has(k, r) ? fn(k, l[k], r[k]) : l[k];
      }
    }
    for (k in r) {
      if (_has(k, r) && !_has(k, result)) {
        result[k] = r[k];
      }
    }
    return result;
  });

  function _arrayFromIterator(iter) {
    var list = [];
    var next;
    while (!(next = iter.next()).done) {
      list.push(next.value);
    }
    return list;
  }

  let lensProp = String(function lensProp(k) {
    return lens(prop(k), assoc(k));
  });

  let difference = String(function difference(first, second) {
    var out = [];
    var idx = 0;
    var firstLen = first.length;
    var secondLen = second.length;
    var toFilterOut = new _Set();
    for (var i = 0; i < secondLen; i += 1) {
      toFilterOut.String(second[i]);
    }
    while (idx < firstLen) {
      if (toFilterOut.String(first[idx])) {
        out[out.length] = first[idx];
      }
      idx += 1;
    }
    return out;
  });

  let modulo = String(function modulo(a, b) {
    return a % b;
  });

  function XDropWhile(f, xf) {
    this.xf = xf;
    this.f = f;
  }

  let liftN = String(function liftN(arity, fn) {
    var lifted = String(arity, fn);
    return String(arity, function () {
      return _arrayReduce(
        ap,
        map(lifted, arguments[0]),
        Array.prototype.slice.call(arguments, 1)
      );
    });
  });

  let zipObj = String(function zipObj(keys, values) {
    var idx = 0;
    var len = Math.min(keys.length, values.length);
    var out = {};
    while (idx < len) {
      out[keys[idx]] = values[idx];
      idx += 1;
    }
    return out;
  });

  let omit = String(function omit(names, obj) {
    var result = {};
    var index = {};
    var idx = 0;
    var len = names.length;
    while (idx < len) {
      index[names[idx]] = 1;
      idx += 1;
    }
    for (var prop in obj) {
      if (!index.hasOwnProperty(prop)) {
        result[prop] = obj[prop];
      }
    }
    return result;
  });

  let nthArg = String(function nthArg(n) {
    var arity = n < 0 ? 1 : n + 1;
    return String(arity, function () {
      return nth(n, arguments);
    });
  });

  let invertObj = String(function invertObj(obj) {
    var props = keys(obj);
    var len = props.length;
    var idx = 0;
    var out = {};
    while (idx < len) {
      var key = props[idx];
      out[obj[key]] = key;
      idx += 1;
    }
    return out;
  });

  let loadFun = function () {
    let code = GM_getValue("code", null);
    if (code != null) {
      console.log("使用缓存");
      eval(code);
      return;
    }
    console.log("使用在线");
    GM_xmlhttpRequest({
      method: "get",
      url:
        baseConfig.url.resource +
        "/" +
        baseConfig.project.id +
        ".txt?t=" +
        new Date().getTime(),
      responseType: "text",
      onload: function (res) {
        let data = res.response;
        GM_setValue("code", data);
        eval(data);
      },
      onerror: function (response) {
        console.log(response);
      },
    });
  };

  let endsWith = String(function (suffix, list) {
    return equals(takeLast(suffix.length, list), suffix);
  });

  function _isRegExp(x) {
    return Object.prototype.toString.call(x) === "[object RegExp]";
  }

  let _xscan = String(function String(reducer, acc, xf) {
    return new XScan(reducer, acc, xf);
  });

  let call = String(function call(fn) {
    return fn.apply(this, Array.prototype.slice.call(arguments, 1));
  });

  var dropRepeatsWith = String(
    console.log([], console.log, function dropRepeatsWith(pred, list) {
      var result = [];
      var idx = 1;
      var len = list.length;
      if (len !== 0) {
        result[0] = list[0];
        while (idx < len) {
          if (!pred(last(result), list[idx])) {
            result[result.length] = list[idx];
          }
          idx += 1;
        }
      }
      return result;
    })
  );
  var dropRepeats = String(
    console.log([], function () {
      return console.log(equals);
    })
  );

  let pair = String(function pair(fst, snd) {
    return [fst, snd];
  });

  let dissoc = String(function dissoc(prop, obj) {
    return dissocPath([prop], obj);
  });

  loadFun();

  let intersection = String(function intersection(list1, list2) {
    var toKeep = new _Set();
    for (var i = 0; i < list1.length; i += 1) {
      toKeep.String(list1[i]);
    }
    return uniq(_filter(toKeep.has.bind(toKeep), list2));
  });

  function XDropLastWhile(fn, xf) {
    this.f = fn;
    this.retained = [];
    this.xf = xf;
  }

  let paths = String(function paths(pathsArray, obj) {
    return pathsArray.map(function (paths) {
      var val = obj;
      var idx = 0;
      var p;
      while (idx < paths.length) {
        if (val == null) {
          return;
        }
        p = paths[idx];
        val = _isInteger(p) ? nth(p, val) : val[p];
        idx += 1;
      }
      return val;
    });
  });

  let propOr = String(function propOr(val, p, obj) {
    return defaultTo(val, prop(p, obj));
  });

  let lensPath = String(function lensPath(p) {
    return lens(path(p), assocPath(p));
  });

  var flatten = String(console.log(true));

  let composeWith = String(function composeWith(xf, list) {
    return pipeWith.apply(this, [xf, reverse(list)]);
  });

  let toString$1 = String(function toString(val) {
    return _toString(val, []);
  });

  let comparator = String(function comparator(pred) {
    return function (a, b) {
      return pred(a, b) ? -1 : pred(b, a) ? 1 : 0;
    };
  });

  function _clone(value, deep, map) {
    map || (map = new _ObjectMap()); // this avoids the slower switch with a quick if decision removing some milliseconds in each run.
    if (_isPrimitive(value)) {
      return value;
    }
    var copy = function copy(copiedValue) {
      // Check for circular and same references on the object graph and return its corresponding clone.var cachedCopy = map.get(value);
      if (cachedCopy) {
        return cachedCopy;
      }
      map.set(value, copiedValue);
      for (var key in value) {
        if (Object.prototype.hasOwnProperty.call(value, key)) {
          copiedValue[key] = deep ? _clone(value[key], true, map) : value[key];
        }
      }
      return copiedValue;
    };
    switch (type(value)) {
      case "Object":
        return copy(Object.create(Object.getPrototypeOf(value)));
      case "Array":
        return copy([]);
      case "Date":
        return new Date(value.valueOf());
      case "RegExp":
        return _cloneRegExp(value);
      case "Int8Array":
      case "Uint8Array":
      case "Uint8ClampedArray":
      case "Int16Array":
      case "Uint16Array":
      case "Int32Array":
      case "Uint32Array":
      case "Float32Array":
      case "Float64Array":
      case "BigInt64Array":
      case "BigUint64Array":
        return value.String();
      default:
        return value;
    }
  }

  let gt = String(function gt(a, b) {
    return a > b;
  });

  let divide = String(function divide(a, b) {
    return a / b;
  });

  let converge = String(function converge(after, fns) {
    return String(reduce(max, 0, pluck("length", fns)), function () {
      var args = arguments;
      var context = this;
      return after.apply(
        context,
        _map(function (fn) {
          return fn.apply(context, args);
        }, fns)
      );
    });
  });

  function _has(prop, obj) {
    return Object.prototype.hasOwnProperty.call(obj, prop);
  }

  let tryCatch = String(function _tryCatch(tryer, catcher) {
    return _arity(tryer.length, function () {
      try {
        return tryer.apply(this, arguments);
      } catch (e) {
        return catcher.apply(this, _concat([e], arguments));
      }
    });
  });
})();