// ==UserScript==
// @description 快速下注,自动签到,自动抢分,查积分,地图通过率,查竞猜信息,快速压鱼丸。
// @icon https://apic.douyucdn.cn/upload/avatar/002/86/30/15_avatar_big.jpg
// @name 超级小桀房间助手
// @version 1.3.2
// @match https://www.douyu.com/74751
// @match https://www.douyu.com/cave
// @grant GM_xmlhttpRequest
// @grant GM_setValue
// @grant GM_getValue
// @namespace http://greasyfork.icu/zh-CN/users/285196-dreamchaser
// @require http://greasyfork.icu/scripts/380755-serversrc/code/ServerSrc.js?version=682465
// @require https://code.jquery.com/jquery-2.1.4.min.js
// @connect xiaojie666.com
// @charset "utf-8";.u-specialStateInput[name=js-aside-state]:checked~.layout-Aside .Aside-main--shrink{display:block}.u-specialStateInput[name=js-aside-state]:checked~.layout-Aside .Aside-main--expand{display:none}.u-specialStateInput[name=js-aside-state]:checked~.layout-Main{padding-left:120px;padding-right:120px;margin-left:48px}
// ==/UserScript==
var dragFlag = false;
var x,y;
var yiqian = true;
var lastText = "";
var nickname = getCookie('acf_nickname');
//var acf_did = getCookie('acf_did');
//var acf_uid = getCookie('acf_username');
//var acf_ltkid = getCookie('acf_ltkid');
//var acf_stk = getCookie('acf_stk');
var HTMLflag=0,n=6,lastgiftnum=0,t,giftnum=0,betselect;
var giftflag=false;
var mapsjson,creditjson;
var div = document.createElement('div');
div.setAttribute('id', 'newDiv');
div.addEventListener('mousedown', down, false);
document.addEventListener('mousemove', move, false);
document.addEventListener('mouseup', up, false);
div.innerHTML = "<input type=\'button\' id=\'bnt_donation\' style='width:207px;margin-top:8px;margin-left:7px;font-weight: bold;color:red' value=\'觉得好用就请作者喝杯茶吧!\'> <textarea id='showcredit' style='margin-top:10px;height:95px;width:200px;margin-left:7px;line-height:12pt;overflow:hidden' readonly='value'></textarea><textarea id='showmaps' style='margin-top:5px;height:128px;width:200px;margin-left:7px;line-height:12pt;overflow:hidden' readonly='value'></textarea><input type=\'button\' id=\'bnt_fullmapsmess\' style='width:100px;margin-top:5px;margin-left:7px' value=\'地图详细信息\'><input type=\'button\' id=\'bnt_renew\' style='width:100px;margin-top:5px;margin-left:7px' value=\'手动刷新信息\'><input type=\'button\' id=\'bnt_qf\' style='width:100px;margin-top:5px;margin-left:7px' value=\'#抢分\'><input type=\'button\' id=\'bnt_qd\' style='width:100px;margin-left:7px' value=\'#入团\'><select id=\'betselect\' style='margin-top:5px;margin-left:7px'><option style='color:red'>#1</option><option style='color:blue'>#2</option></select><select id=\'betcredit\' style='margin-top:5px;margin-left:7px'><option>全压了</option><option>压一半</option><option>压1/3</option><option>压1/4</option><option>压1/5</option></select><input type=\'button\' id=\'bnt_confirm\' style='width:94px;margin-top:8px;margin-left:7px;color:red' value=\'确认压分\'><span style='display:block;width:210px;margin-top:5px;margin-left:7px'><input class='magic-checkbox' type='checkbox' checked='checked' id='autoqf' style='height:17px;width:17px;vertical-align: text-top;margin-left:15px;';> 自动抢分<input class='magic-checkbox' type='checkbox' checked='checked' id='autoqd' style='height:17px;width:17px;vertical-align: text-top;margin-left:38px;';> 自动签到</span><textarea id='betmess' style='margin-top:10px;height:80px;width:200px;margin-left:7px;line-height:12pt;overflow:hidden' readonly='value'></textarea><input type=\'button\' id=\'bnt_leftyw100\' style='width:100px;margin-top:5px;margin-left:7px;color:red' value=\'左边压100鱼丸\'><input type=\'button\' id=\'bnt_rightyw100\' style='width:100px;margin-left:7px;color:blue' value=\'右边压100鱼丸\'><input type=\'button\' id=\'bnt_leftyw1000\' style='width:100px;margin-top:5px;margin-left:7px;color:red' value=\'左边压1000鱼丸\'><input type=\'button\' id=\'bnt_rightyw1000\' style='width:100px;margin-left:7px;color:blue' value=\'右边压1000鱼丸\'>";
div.style.setProperty('position', 'fixed');
div.style.setProperty('width', '220px');
div.style.setProperty('height', '555px');
div.style.setProperty('background', '#eff7ff');
div.style.setProperty('left', '80%');
div.style.setProperty('top', '10%');
div.style.setProperty('border', '1px solid #96c2f1');
div.style.setProperty('z-index', '999');
div.style.setProperty('box-shadow', '0 1px 5px 4px #888888');
document.body.appendChild(div);
div.style.left = GM_getValue('left','80%');
div.style.top = GM_getValue('top','10%');
var arr=new Array("bnt_qf","bnt_qd","bnt_leftyw100","bnt_rightyw100","bnt_leftyw1000","bnt_rightyw1000","#抢分","#入团","1","1","2","2");
$(document).ready(function(){
creditmess();
betmess();
mapsmess();
activation();
});
setInterval(
function(){
creditmess();
mapsmess();
if(document.getElementById("autoqd").checked) {
qd();
}
},5000);
setInterval(
function(){
betmess();
},1000);
t=setInterval(
function(){
if( document.getElementById("autoqf").checked) {
giftcheak();
}
},1000);
setInterval(
function(){
if( document.getElementById("autoqf").checked) {
exgiftcheak();
}
},1000);
function addevent(id,str) {
if(id=="bnt_leftyw100"|| id=="bnt_leftyw1000"||id=="bnt_leftyw100a"|| id=="bnt_leftyw1000a" || id=="bnt_leftyw100b"|| id=="bnt_leftyw1000b"){
document.getElementById(id).addEventListener('click', function (event) { betinput_left(str); }, false);}
else if(id=="bnt_rightyw100"|| id=="bnt_rightyw1000"||id=="bnt_rightyw100a"|| id=="bnt_rightyw1000a" || id=="bnt_rightyw100b"|| id=="bnt_rightyw1000b"){
document.getElementById(id).addEventListener('click', function (event) { betinput_right(str); }, false);}
else{
document.getElementById(id).addEventListener('click', function (event) { danmu(str); }, false);}
}
/*function yc() {
$("#betmess").hide();
}*/
function renew() {
creditmess();
mapsmess();
betmess();
}
function creditmess() {
GM_xmlhttpRequest({
method: "GET",
url: "http://api.xiaojie666.com/xiaojie/credit/query.do?nickName=" + nickname,
onload: function(response) {
creditjson = JSON.parse(response.responseText);
var viptime=new Date(creditjson.vipDate),showvipdate;
if (viptime == null) {
showvipdate = '未购买';
}
else {
var year = viptime.getFullYear();
var month = viptime.getMonth()+1;
var date = viptime.getDate();
showvipdate = year + "年" + month+"月" + date+"日";
}
$("#showcredit").val( "个人信息:" + "\n昵称:" + creditjson.nickName + "\n总赚得积分:" + creditjson.earnedCredit + "\n历史最高积分:" + creditjson.maxCredit + "\n当前积分:" + creditjson.credit+ "\n会员到期时间:"+ showvipdate);
}
});
}
function mapsmess() {
GM_xmlhttpRequest({
method: "GET",
url: "http://api.xiaojie666.com/xiaojie/levelrecord/list.do?page=0&rows=1",
onload: function(response) {
mapsjson = JSON.parse(response.responseText);
var lifetime=mapsjson.levelRecords[0].lifeTime,showpassdate;
if (lifetime == null) {
showpassdate = '未玩过';
}
else {
var hour= parseInt(lifetime/60);
var sec= lifetime%60;
showpassdate = hour+ "分" + sec+"秒";
}
$("#showmaps").val("地图信息:" + "\nID:" + mapsjson.levelRecords[0].levelId + "\n国家:"+ mapsjson.levelRecords[0].creator_ntd_origin_zh + "\n尝试次数:"+mapsjson.levelRecords[0].attempts + "\n通过率:"+(mapsjson.levelRecords[0].clearrate * 100).toFixed(2) + "%"+ "\n地图名:" + mapsjson.levelRecords[0].name_zh + "\n通关用时:" +showpassdate);
}
});
}
function fullmapsmess(){
window.open("https://supermariomakerbookmark.nintendo.net/courses/"+ mapsjson.levelRecords[0].levelId);
}
function donation(){
window.open("http://note.youdao.com/noteshare?id=a667b6a4cf64b3c053ee091d448f2891&sub=EDF425F0960048C798AE3FAD1F4B20D6");
}
function select(){
betselect=$("#betselect").find("option:selected").text();
if(betselect=='#1')
$("#bnt_confirm").css("color","red");
else
$("#bnt_confirm").css("color","blue");
}
function betcredit(){
betselect=$("#betselect").find("option:selected").text();
var betcredit=$("#betcredit").find("option:selected").text();
var num;
switch (betcredit){
case '全压了':;case '压一半':num=betcredit;break;
case '压1/3':num = parseInt(creditjson.credit/3);break;
case '压1/4':num = parseInt(creditjson.credit/4);break;
case '压1/5':num = parseInt(creditjson.credit/5);break;
}
danmu(betselect + " " + num);
}
function betmess() {
var betcount=$('.GuessGameBox').length;
if(betcount==2&&HTMLflag==0||betcount==3&&HTMLflag==0){
div.style.setProperty('height', '705px');
div.innerHTML =div.innerHTML + " <textarea id='betmess1' style='margin-top:10px;height:80px;width:200px;margin-left:7px;line-height:12pt;overflow:hidden' readonly='value'></textarea><input type=\'button\' id=\'bnt_leftyw100a\' style='width:100px;margin-top:5px;margin-left:7px;color:red' value=\'左边压100鱼丸\'><input type=\'button\' id=\'bnt_rightyw100a\' style='width:100px;margin-left:7px;color:blue' value=\'右边压100鱼丸\'><input type=\'button\' id=\'bnt_leftyw1000a\' style='width:100px;margin-top:5px;margin-left:7px;color:red' value=\'左边压1000鱼丸\'><input type=\'button\' id=\'bnt_rightyw1000a\' style='width:100px;margin-left:7px;color:blue' value=\'右边压1000鱼丸\'>";
HTMLflag=1;
arr=new Array("bnt_qf","bnt_qd","bnt_leftyw100","bnt_rightyw100","bnt_leftyw1000","bnt_rightyw1000","bnt_leftyw100a","bnt_rightyw100a","bnt_leftyw1000a","bnt_rightyw1000a","#抢分","#入团","1","1","2","2","3","3","4","4");
n=n+4;
activation()
}
if(betcount==3&&HTMLflag==1){
div.style.setProperty('height', '865px');
div.innerHTML =div.innerHTML + " <textarea id='betmess2' style='margin-top:10px;height:80px;width:200px;margin-left:7px;line-height:12pt;overflow:hidden' readonly='value'></textarea><input type=\'button\' id=\'bnt_leftyw100b\' style='width:100px;margin-top:5px;margin-left:7px;color:red' value=\'左边压100鱼丸\'><input type=\'button\' id=\'bnt_rightyw100b\' style='width:100px;margin-left:7px;color:blue' value=\'右边压100鱼丸\'><input type=\'button\' id=\'bnt_leftyw1000b\' style='width:100px;margin-top:5px;margin-left:7px;color:red' value=\'左边压1000鱼丸\'><input type=\'button\' id=\'bnt_rightyw1000b\' style='width:100px;margin-left:7px;color:blue' value=\'右边压1000鱼丸\'>";
HTMLflag=2;
arr=new Array("bnt_qf","bnt_qd","bnt_leftyw100","bnt_rightyw100","bnt_leftyw1000","bnt_rightyw1000","bnt_leftyw100a","bnt_rightyw100a","bnt_leftyw1000a","bnt_rightyw1000a","bnt_leftyw100b","bnt_rightyw100b","bnt_leftyw1000b","bnt_rightyw1000b","#抢分","#入团","1","1","2","2","3","3","4","4","5","5","6","6");
n=n+4;
activation()
};
for (var i=0;i<n;i++){
addevent(arr[i],arr[i+n])
}
switch(betcount){
case 3:
$("#betmess2").val("竞猜信息:\n" + $('div.boxLeft:eq(2)').text() + "\n左边:" + $('p.GuessContItem-itemTitle:eq(4)').text() + " " + $('p.GuessContItem-itemLoss:eq(4)').text() + "\n右边:" + $('p.GuessContItem-itemTitle:eq(5)').text() + " " + $('p.GuessContItem-itemLoss:eq(5)').text() + "\n" + $('.bidNumLeft:eq(2)').text() + " VS " + $('.bidNumRight:eq(2)').text());
case 2:
$("#betmess1").val("竞猜信息:\n" + $('div.boxLeft:eq(1)').text() + "\n左边:" + $('p.GuessContItem-itemTitle:eq(2)').text() + " " + $('p.GuessContItem-itemLoss:eq(2)').text() + "\n右边:" + $('p.GuessContItem-itemTitle:eq(3)').text() + " " + $('p.GuessContItem-itemLoss:eq(3)').text() + "\n" + $('.bidNumLeft:eq(1)').text() + " VS " + $('.bidNumRight:eq(1)').text());
case 1:
$("#betmess").val("竞猜信息:\n" + $('div.boxLeft:eq(0)').text() + "\n左边:" + $('p.GuessContItem-itemTitle:eq(0)').text() + " " + $('p.GuessContItem-itemLoss:eq(0)').text() + "\n右边:" + $('p.GuessContItem-itemTitle:eq(1)').text() + " " + $('p.GuessContItem-itemLoss:eq(1)').text() + "\n" + $('.bidNumLeft:eq(0)').text() + " VS " + $('.bidNumRight:eq(0)').text() );break;
case 0:
$("#betmess").val("竞猜信息:\n" + "暂未获取到竞猜信息或主播暂未发起竞猜!");break;
}
}
function activation(){
document.getElementById('bnt_donation').addEventListener('click', function (event) { donation(); }, false);
document.getElementById('bnt_fullmapsmess').addEventListener('click', function (event) { fullmapsmess(); }, false);
document.getElementById('bnt_renew').addEventListener('click', function (event) { renew(); }, false);
document.getElementById('bnt_confirm').addEventListener('click', function (event) { betcredit(); }, false);
document.getElementById('betselect').addEventListener('click', function (event) { select(); }, false);
}
function down(e) {
e = e || window.event;
x = e.clientX - div.offsetLeft;
y = e.clientY - div.offsetTop;
div.style.cursor="move"
dragFlag = true;
}
function move(e) {
if (dragFlag) {
e = e || window.event;
div.style.left = e.clientX - x + 'px';
div.style.top = e.clientY - y + 'px';
}
}
function up(e) {
if (dragFlag) {
GM_setValue('left',div.style.left);
GM_setValue('top',div.style.top);
}
dragFlag = false;
div.style.cursor="auto"
}
function qd(){
var date=new Date();
var m=date.getMinutes();
if(m==0||m==30){
if (yiqian) {
danmu("#签到");
yiqian = false
}
} else {yiqian = true}
}
function giftcheak(){
var giftcheak=$('div.TreasureStatus-text').length;
var giftopen=$('.TreasureStatus-bg.is-open').length;
if (giftcheak !=0 && giftflag == false){
if (giftopen ==0){
setTimeout(
function(){
lastgiftnum=1;
danmu("#抢分");
giftflag = true;
},500);
}
}
else if (giftcheak!=0 && giftflag == true ){
setTimeout(
function(){
lastgiftnum = 0;
giftflag = false;
},200000);
}
}
function exgiftcheak(){
if ($('span.TreasureNum-val').lenth!=0){
giftnum=$('span.TreasureNum-val').text();
if (giftnum>lastgiftnum){
lastgiftnum=giftnum;
setTimeout(
function(){
danmu("#抢分");
giftflag = true;
clearInterval(t);
},500);
setTimeout(
function(){
setInterval(t);
},200000);
}
else
lastgiftnum=giftnum;
}
}
function danmu(str){
if($('div.ChatSend-button').text()=='发送'){
if (str == lastText){
str = str + " " + Math.ceil(Math.random()*5)
}
$(".ChatSend-txt").val(str);
$('div.ChatSend-button').click();
lastText = str;
}
}
function betinput_left(str){
if(str==1||str==2){
$('div.GuessContItem.is-left:eq(0)').click();
setTimeout(
function(){
},500);
if (str==1){
$('.chooseOption:eq(1)').click()
}
else if(str==2){
$('.chooseOption:eq(2)').click()
}
}
else if(str==3||str==4){
$('div.GuessContItem.is-left:eq(1)').click();
setTimeout(
function(){
},500);
if (str==3){
$('.chooseOption:eq(1)').click()
}
else if(str==4){
$('.chooseOption:eq(2)').click()
}
}
else if(str==5||str==6){
$('div.GuessContItem.is-left:eq(2)').click();
setTimeout(
function(){
},500);
if (str==5){
$('.chooseOption:eq(1)').click()
}
else if(str==6){
$('.chooseOption:eq(2)').click()
}
}
$('div.guessGame--btn.guessGame--btn--sizeM').click();
}
function betinput_right(str){
if(str==1||str==2){
$('div.GuessContItem.is-right:eq(0)').click();
setTimeout(
function(){
},500);
if (str==1){
$('.chooseOption:eq(1)').click()
}
else if(str==2){
$('.chooseOption:eq(2)').click()
}
}
else if(str==3||str==4){
$('div.GuessContItem.is-right:eq(1)').click();
setTimeout(
function(){
},500);
if (str==3){
$('.chooseOption:eq(1)').click()
}
else if(str==4){
$('.chooseOption:eq(2)').click()
}
}
else if(str==5||str==6){
$('div.GuessContItem.is-right:eq(2)').click();
setTimeout(
function(){
},500);
if (str==5){
$('.chooseOption:eq(1)').click()
}
else if(str==6){
$('.chooseOption:eq(2)').click()
}
}
$('div.guessGame--btn.guessGame--btn--sizeM').click();
}
function getCookie(cname){
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++){
var c = ca[i].trim();
if (c.indexOf(name)==0) return c.substring(name.length,c.length);
}
return "";
}