打开战旗TV页面自动签到,自动完成任务、老虎机,关闭广告。
当前为
// ==UserScript==
// @name 战旗自动签到任务等
// @namespace 黄毛
// @version 3.1
// @description 打开战旗TV页面自动签到,自动完成任务、老虎机,关闭广告。
// @author 黄毛
// @match *://www.zhanqi.tv/*
// @grant none
// ==/UserScript==
(function() {
// 'use strict';
var rex = /\"RoomId\":(\d+),/;
var myDate = new Date();
var ifSignToday = myDate.getMonth()*30 + myDate.getDate();
var lottery = 0;
setTimeout(function () { $("a.close").not("[class*='js']")[0].click(); }, 20000); // 20 秒后关闭评论区广告。
if(getCookie("ifSignToday")!=ifSignToday) { // 执行每日签到行为。
$.ajax({
url: "https://www.zhanqi.tv/api/actives/chance/send.share",
type: "post",
data: { },
contentType: "application/x-www-form-urlencoded; charset=utf-8"
});
$.getJSON('https://www.zhanqi.tv/api/user/follow.listsbypage?page=1&nums=10', function(json){
for(var i=0;i<json.data.list.length;i++){
$.ajax({
url: "https://www.zhanqi.tv/api/actives/signin/fans.sign",
type: "post",
data: { roomId: json.data.list[i].roomId },
contentType: "application/x-www-form-urlencoded; charset=utf-8"
});
}
});
console.info("Sign in Complete.");
document.cookie = "ifSignToday="+ifSignToday;
}
function getCookie(name){ // 每日签到的本地记录。
var strCookie=document.cookie;
var arrCookie=strCookie.split("; ");
for(var i=0;i<arrCookie.length;i++){
var arr=arrCookie[i].split("=");
if(arr[0]==name)return arr[1];
}
return "";
}
var timer_int=self.setInterval(function() { // 每 30 秒检查一遍任务清单,提交已经完成的任务。
$.getJSON('https://www.zhanqi.tv/api/user/task.get', function(json){
if(json.data.length!=0) {
for(var i=0;i<json.data.length;i++) {
var tmp = json.data[i].progress.current - json.data[i].progress.total;
console.info(json.data[i].name+":\t"+tmp);
if(tmp >=0) {
$.ajax({
url: "https://www.zhanqi.tv/api/user/task.complete",
type: "post",
data: { taskId: json.data[i].id },
contentType: "application/x-www-form-urlencoded; charset=utf-8"
});
}
}
}
else {
console.info("tasks Complete,Stop looping.");
self.clearInterval(timer_int);
}
});
},30000);
setTimeout(function () { // 延时执行检查。
console.info("开始循环检测老虎机;");
var timer_lot=self.setInterval(function() { // 每 30 秒检查一遍老虎机,自动摇奖。
lottery = $("div#js-slot-free-times")[0].innerHTML;
console.info("老虎机:\t"+lottery);
if(lottery > 0) {
$("a#js-slot-lottery").click();
} else {
console.info("lottery Complete,Stop looping.");
self.clearInterval(timer_lot);
}
},30000);
}, 5000);
})();