Advertisement
Guest User

Untitled

a guest
Dec 7th, 2019
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.33 KB | None | 0 0
  1. // ==UserScript==
  2. // @name DRGN.DOUBLE
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.1
  5. // @author Roman Rage (https://vk.com/romanrage)
  6. // @match https://drgn.wtf/double
  7. // @require http://code.jquery.com/jquery-3.4.1.min.js
  8. // @grant none
  9. // ==/UserScript==
  10.  
  11. (function() {
  12. 'use strict';
  13. var auto = false;
  14. var baseBet = 0;
  15. var currBet = 0;
  16. var lastLose = false;
  17. var lastColor = "";
  18. var betTimer = null;
  19.  
  20. window.notifyMe = function(text) {
  21. console.log(text);
  22. }
  23.  
  24. window.startAuto = function(bet) {
  25. if(!auto) {
  26. if(!bet) {
  27. window.notifyMe("Укажите базовую ставку!", "error");
  28. return;
  29. }
  30.  
  31. auto = true;
  32. baseBet = bet;
  33. console.log("Waiting for new round...");
  34. window.notifyMe("Ожидаем начало следущего раунда...", "warning");
  35. document.getElementById("autobet").innerText = "СТОП";
  36. } else {
  37. clearTimeout(betTimer);
  38. auto = false;
  39. document.getElementById("autobet").innerText = "СТАРТ";
  40. }
  41. }
  42.  
  43.  
  44. const WebSocketProxy = new Proxy(window.WebSocket, {
  45. construct(target, args) {
  46. //console.log(args);
  47. const instance = new target(...args);
  48. const openHandler = (event) => {
  49. console.log('Open', event);
  50. window.notifyMe("WEBSOCKET CONNECTION HOOKED!\nСоединение успешно перехвачено!", "success");
  51. document.getElementsByClassName("menu-cont")[0].innerHTML += "<br><div id=\"calypsotoolz\"><input id=\"autobet-value\" placeholder=\"Значение для авто-ставок\">" +
  52. "<button class=\"buttoninzc\" id=\"autobet\" onclick=\"startAuto(document.getElementById('autobet-value').value);\">СТАРТ</button></div>";
  53. };
  54.  
  55. const messageHandler = (event) => {
  56. window.bla = event.data;
  57.  
  58. try {
  59. if(auto && event.data.toString().indexOf("double_roll") != -1) {
  60. var parsed;
  61. try {
  62. parsed = JSON.parse(event.data.substring(2));
  63. console.log(parsed);
  64. } catch(e) {}
  65. if(currBet == 0) {
  66.  
  67. // только начинаем ставить
  68. betTimer = setTimeout(function() {
  69. // var betRed = randomInteger(1, 2) == 1;
  70. lastColor = "black";
  71. setBet(baseBet);
  72. // window.notifyMe("СТАВИМ " + currBet + " НА " + (betRed ? "RED" : "BLACK"), "success");
  73. /*if(betRed) {
  74. document.getElementsByClassName("header-side-d rr1 betButton")[0].click();
  75. } else {
  76. document.getElementsByClassName("header-side-d rr3 betButton")[0].click();
  77. lastColor = "black";
  78. }*/
  79. document.getElementsByClassName("header-side-d rr0 betButton")[0].click();
  80. }, randomInteger(10000, 15000));
  81. return;
  82. }
  83. var data = event.data.toString();
  84. console.log("ROLLED: " + parsed[1].win_type);
  85. var rolledN = parsed[1].win_type;
  86.  
  87. if(rolledN == "r" && lastColor == "red") {
  88. window.notifyMe("ВЫИГРАЛИ!", "success");
  89. setBet(baseBet);
  90. } else if(rolledN == "b" && lastColor == "black") {
  91. window.notifyMe("ВЫИГРАЛИ!", "success");
  92. setBet(baseBet);
  93. } else if(rolledN == "y" && lastColor == "yellow") {
  94. window.notifyMe("ПРОИГРАЛИ, УВЕЛИЧИВАЕМ СТАВКУ: " + currBet * 2, "error");
  95. setBet(currBet * 2);
  96. } else {
  97. window.notifyMe("ПРОИГРАЛИ, УВЕЛИЧИВАЕМ СТАВКУ: " + currBet * 2, "error");
  98. setBet(currBet * 2);
  99. }
  100.  
  101. betTimer = setTimeout(function() {
  102. /*
  103. var betRed = randomInteger(1, 2) == 1;
  104. lastColor = "red";
  105. window.notifyMe("СТАВИМ " + currBet + " НА " + (betRed ? "RED" : "BLACK"), "success");
  106. if(betRed) {
  107. document.getElementsByClassName("header-side-d rr1 betButton")[0].click();
  108. } else {
  109. document.getElementsByClassName("header-side-d rr3 betButton")[0].click();
  110. lastColor = "black";
  111. }*/
  112. lastColor = "black";
  113. document.getElementsByClassName("header-side-d rr0 betButton")[0].click();
  114. }, randomInteger(10000, 15000));
  115. }
  116. } catch(err) {}
  117. };
  118.  
  119. const closeHandler = (event) => {
  120. console.log('Close', event);
  121. window.notifyMe("СОЕДИНЕНИЕ ПРЕРВАНО, ОБНОВИТЕ СТРАНИЦУ!", "error");
  122. var e = document.getElementById("calypsotoolz");
  123. e.parentNode.removeChild(e);
  124. clearTimeout(betTimer);
  125. instance.removeEventListener('open', openHandler);
  126. instance.removeEventListener('message', messageHandler);
  127. instance.removeEventListener('close', closeHandler);
  128. };
  129.  
  130. instance.addEventListener('open', openHandler);
  131. instance.addEventListener('message', messageHandler);
  132. instance.addEventListener('close', closeHandler);
  133.  
  134. const sendProxy = new Proxy(instance.send, {
  135. apply: function(target, thisArg, _args) {
  136. // console.log('Send', _args);
  137. target.apply(thisArg, _args);
  138. }
  139. });
  140.  
  141. window.server = instance;
  142. instance.send = sendProxy;
  143.  
  144. return instance;
  145. },
  146. });
  147.  
  148. window.WebSocket = WebSocketProxy;
  149.  
  150. function setBet(val) {
  151. currBet = val;
  152. document.getElementById("insumm").value = currBet;
  153. var event = document.createEvent('Event');
  154. event.initEvent('input', true, true);
  155. document.getElementById('insumm').dispatchEvent(event);
  156. }
  157.  
  158. function isRed(i) {
  159. return i >= 1 && i <= 7;
  160. }
  161.  
  162. function isBlack(i) {
  163. return i >= 8 && i <= 14;
  164. }
  165.  
  166. function randomInteger(min, max) {
  167. var rand = min - 0.5 + Math.random() * (max - min + 1)
  168. return Math.round(rand);
  169. }
  170. })();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement