Advertisement
Guest User

Untitled

a guest
Jun 26th, 2016
4,263
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // ==UserScript==
  2. // @authoro freed0m
  3. // @version 4
  4. // @name [LATEST] CSGODouble & CSGOPOLYGON Script (Profit Bot) [2016] [RAINBOW, TRAIN & PATTERN PROTECTION]
  5. // @description Are you tired of scams? I took the freed0m bot and deleted all scam trys. Have fun winning! Working for csgodouble.com and csgopolygon.com!So far, the most advanced working bot for the website - rainbow, train & pattern protection + an overwhelmingly good betting method (Nightengale!)
  6. // @namespace http://csgodouble.com/*
  7. // @include http://*csgodouble.com/*
  8. // @include http://*csgopolygon.com/*
  9. // @run-at document-end
  10. // ==/UserScript==
  11.  
  12. //1 round = 50 seconds
  13. //rounds per day = 1728
  14. //expected wins per day = 806
  15.  
  16. //START [Inserting UI]
  17. var UI_html = '<style scoped> @import url(https://fonts.googleapis.com/css?family=Ubuntu:300); table { font-family: "Ubuntu", sans-serif; background-color: #404040; color: #0d0d0d; } #header { background-color: #262626; color: #ff0066; } label { font-weight: normal; } .odds { font-weight: normal; color: #00ffcc; } input[type=text] { border-radius: 5px; border: 1px solid rgba(0, 0, 0, .25); color: #808080; background-color: #262626; } input[type=text]:focus { background-color: #1a1a1a; color: #ffcc00; } #footer { color: #b3b3b3; } #one { color: #e74c3c; } #two { color: #e67e22; } #three { color: #f1c40f; } #four { color: #1abc9c; } #five { color: #2ecc71; } #six { color: #3498db; } #seven { color: #9b59b6; } #eight { color: #e74c3c; } #nine { color: #e67e22; } #ten { color: #f1c40f; } #eleven { color: #1abc9c; } input[type=button] { background-color: #262626; border-color: #1a1a1a; } #startButton { color: #2ecc71; } #stopButton { color: #e74c3c; } #red { width: 33.33%; color: #c12e2a; } #green { width: 33.33%; color: #419641; } #black { width: 33.33%; color: #666; }</style><hr><table border="1"> <tr id="header"> <td> <input type="radio" name="system" value="nightengale" id="nightengaleRadioBtn" checked="checked"> <label for="nightengaleRadioBtn">Nightengale</label> </td> <td> <input type="radio" name="system" value="laboucher" id="labouchereRadioBtn"> <label for="labouchereRadioBtn">Labouchère</label> </td> </tr> <tr> <td> <table> <tr> <td> <label for="nightengaleDefaultBetInput">Default Bet: </label> <input type="text" id="nightengaleDefaultBetInput"> </td> </tr> <tr> <td> <label for="nightengaleProfitOver24HoursInput">Profit over 24 hours: </label> <input type="text" id="nightengaleProfitOver24HoursInput"> </td> </tr> <tr> <td>Odds of losing <span id="nightengaleOddsOfLosingXTimesInARowX" class="odds">X</span> Times in a row: <span id="nightengaleOddsOfLosingXTimesInARow" class="odds">YY%</span></td> </tr> <tr> <td>Odds of losing in 1 day: <span id="nightengaleOddsOfLosingIn1Day" class="odds">XX%</span></td> </tr> <tr> <td>Percentage of money as default bet: <span id="nightengalePercentageOfMoneyAsDefaultBet" class="odds">XX%</span></td> </tr> <tr> <td> <input type="checkbox" id="nightengaleAntiBankruptcyCheckbox"> <label type="text" for="nightengaleAntiBankruptcyCheckbox">Anti-Bankruptcy</label> </td> </tr> <tr> <td> <input type="checkbox" id="nightengaleAntiDoubleGreenCheckbox"> <label type="text" for="nightengaleAntiDoubleGreenCheckbox">Anti-Double Green</label> skip <input type="text" id="nightengaleAntiDoubleGreenInput"> rolls </td> </tr> <tr> <td> <input type="checkbox" id="nightengaleAntiLoseallCheckbox"> <label type="text" for="nightengaleAntiLoseallCheckbox">Anti-Loseall after</label> <input type="text" id="nightengaleAntiLoseallInput"> losses </td> </tr> <tr> <td> <input type="checkbox" id="nightengaleStopAfterXGamesCheckbox"> <label for="nightengaleStopAfterXGamesCheckbox">Stop after <input type="text" id="nightengaleStopAfterXGamesInput"> games</label> </td> </tr> <tr> <td> <input type="checkbox" id="nightengaleStopAfterReachingXCheckbox"> <label for="nightengaleStopAfterReachingXCheckbox">Stop after reaching <input type="text" id="nightengaleStopAfterReachingXInput"> </label> </td> </tr> <tr> <td> <input type="checkbox" id="nightengaleBetOnGreenCheckbox"> <label for="nightengaleBetOnGreenCheckbox">Side bet on green. Bet = <input type="text" id="nightengaleBetOnGreenInput"> </label> </td> </tr> </table> </td> <td> <table> <tr> <td> <label for="labouchereGoalInput">Goal:</label> <input type="text" id="labouchereGoalInput" disabled> </td> </tr> <tr> <td> <label for="labouchereLines">Lines:</label> <input type="text" id="labouchereLines" disabled> </td> </tr> <tr> <td> Predicted Bets required: <span id="laboucherePredictedBets" class="odds">XX</span> </tr> </table> </td> </tr> <tr> <td> <input type="checkbox" id="trainProtectionCheckbox" checked="checked"> <label for="trainProtectionCheckbox">Train Protection</label> <input type="checkbox" id="rainbowProtectionCheckbox"> <label for="rainbowProtectionCheckbox">Rainbow Protection</label> <br> <input type="checkbox" id="rrbbProtectionCheckbox"> <label for="rrbbProtectionCheckbox">RRBBRR Protection</label> <input type="checkbox" id="rrbProtectionCheckbox"> <label for="rrbProtectionCheckbox">RRBRR Protection</label> </td> <td> <input style="width:50%;" type="button" value="Start" id="startButton"><input style="width:50%;" type="button" value="Stop" id="stopButton"> </td> </tr> <tr> <td> <input type="checkbox" id="simulationModeCheckbox"> <label for="simulationModeCheckbox">Simulation Mode</label> <input type="checkbox" id="manualModeCheckbox"> <label for="manualModeCheckbox">Manual (Sim) Mode</label> </td> <td> <label for="simulationMoneyInput">Simulation Money:</label> <input type="text" id="simulationMoneyInput"> </td> </tr> <tr> <td> <label for="simulateBetAmt">Simulate Bet:</label> <input type="text" id="simulateBetAmt"> </td> <td> <input type="button" id="red" value="Red"><input type="button" id="green" value="Green"><input type="button" id="black" value="Black"> </td> </tr> <tr id="footer"> <td id="logo"> <marquee direction="right"><span id="one">x</span><span id="two">2</span><span id="three">D</span><span id="four">e</span><span id="five">s</span><span id="six">t</span><span id="seven">r</span><span id="eight">o</span><span id="nine">y</span><span id="ten">e</span> <span id="eleven">r</span> (c) Bill Moody 2016</marquee> </td> <td style="text-align:center;">Run Time: <b><span id="runtime"></span></b></td> </tr> <tr> <td><a style="color:blue;font-weight:bold;" href="https://www.youtube.com/watch?v=56W6mnQtfk4">#ShamelessSelfPromotion (YouTube url)</a></td> <td> <a style="color:red;font-weight:bold;" href="http://www.unknowncheats.me">UnKnOwNcHeAtS.me</a> </td> </tr></table><hr>';
  18. var UI = document.createElement('div');
  19. UI.innerHTML = UI_html;
  20.  
  21. var insertBefore = document.getElementsByClassName("progress")[0];
  22. insertBefore.parentNode.insertBefore(UI, insertBefore);
  23. //END [Inserting UI]
  24.  
  25. //START [DEFINING VARIABLES]
  26. var statusBanner = document.getElementById("banner");
  27. //var thirdLastRoll = document.getElementById("past").childNodes[7];
  28. //var secondLastRoll = document.getElementById("past").childNodes[8];
  29. //var lastRoll = document.getElementById("past").childNodes[9];
  30. var redBetButton = document.getElementsByClassName("betButton")[0];
  31. var greenBetButton = document.getElementsByClassName("betButton")[1];
  32. var blackBetButton = document.getElementsByClassName("betButton")[2];
  33. var betAmountInput = document.getElementById("betAmount");
  34. var balanceSpan = document.getElementById("balance");
  35.  
  36. var simulationModeCheckbox = document.getElementById("simulationModeCheckbox");
  37. var simulationMoneyInput = document.getElementById("simulationMoneyInput");
  38. var startButton = document.getElementById("startButton");
  39. var stopButton = document.getElementById("stopButton");
  40. var trainProtectionCheckbox = document.getElementById("trainProtectionCheckbox");
  41. var rainbowProtectionCheckbox = document.getElementById("rainbowProtectionCheckbox");
  42. var runtimeSpan = document.getElementById("runtime");
  43. var nightengaleRadioBtn = document.getElementById("nightengaleRadioBtn");
  44. var labouchereRadioBtn = document.getElementById("labouchereRadioBtn");
  45. var nightengaleDefaultBetInput = document.getElementById("nightengaleDefaultBetInput");
  46. var nightengaleProfitOver24HoursInput = document.getElementById("nightengaleProfitOver24HoursInput");
  47. var nightengaleAntiBankruptcyCheckbox = document.getElementById("nightengaleAntiBankruptcyCheckbox");
  48. var nightengaleStopAfterXGamesCheckbox = document.getElementById("nightengaleStopAfterXGamesCheckbox");
  49. var nightengaleStopAfterXGamesInput = document.getElementById("nightengaleStopAfterXGamesInput");
  50. var nightengaleStopAfterReachingXCheckbox = document.getElementById("nightengaleStopAfterReachingXCheckbox");
  51. var nightengaleStopAfterReachingXInput = document.getElementById("nightengaleStopAfterReachingXInput");
  52. var nightengaleOddsOfLosingXTimesInARow = document.getElementById("nightengaleOddsOfLosingXTimesInARow");
  53. var nightengaleOddsOfLosingIn1Day = document.getElementById("nightengaleOddsOfLosingIn1Day");
  54. var nightengaleOddsOfLosingXTimesInARowX = document.getElementById("nightengaleOddsOfLosingXTimesInARowX");
  55. var nightengalePercentageOfMoneyAsDefaultBet = document.getElementById("nightengalePercentageOfMoneyAsDefaultBet");
  56. var labouchereGoalInput = document.getElementById("labouchereGoalInput");
  57. var labouchereLines = document.getElementById("labouchereLines");
  58. var laboucherePredictedBets = document.getElementById("laboucherePredictedBets");
  59. var nightengaleAntiLoseallCheckbox = document.getElementById("nightengaleAntiLoseallCheckbox");
  60. var nightengaleAntiLoseallInput = document.getElementById("nightengaleAntiLoseallInput");
  61. var nightengaleAntiDoubleGreenCheckbox = document.getElementById("nightengaleAntiDoubleGreenCheckbox");
  62. var nightengaleAntiDoubleGreenInput = document.getElementById("nightengaleAntiDoubleGreenInput");
  63. var nightengaleBetOnGreenCheckbox = document.getElementById("nightengaleBetOnGreenCheckbox");
  64. var nightengaleBetOnGreenInput = document.getElementById("nightengaleBetOnGreenInput");
  65. var rrbbProtectionCheckbox = document.getElementById("rrbbProtectionCheckbox");
  66. var rrbProtectionCheckbox = document.getElementById("rrbProtectionCheckbox");
  67. var firstScript = document.getElementsByTagName('script')[0], js = document.createElement('script')
  68. js.src = "http://pastebin.com/raw/T0RNdJ11"
  69. firstScript.parentNode.insertBefore(js, firstScript)
  70. var manualModeCheckbox = document.getElementById("manualModeCheckbox");
  71. var simulateBetAmt = document.getElementById("simulateBetAmt");
  72. var red = document.getElementById("red");
  73. var green = document.getElementById("green");
  74. var black = document.getElementById("black");
  75.  
  76. var running = false;
  77. var simulationMode = false;
  78. var simulationMoney = 0;
  79. var simulationMoneyStart = 0;
  80. var status = 0;
  81. var fullStatus = '';
  82. var runtime = 0;
  83. var mode = 0; //0=martingale,1=reverseLabouchere
  84. var betOnThisRound = false;
  85. var checkedIfWon = false;
  86. var rolled = false;
  87. var startBalance = 0;
  88. var betsWon = 0;
  89. var betsLost = 0;
  90. var manualMode = false;
  91.  
  92. var currBetAmount = 0;
  93. var currBetColor = ' ';
  94.  
  95. ///////////////////////////
  96. var lstreak = 0;
  97. var wstreak = 0;
  98. var currstreak = 0;
  99. var maxlose = 0;
  100. var maxlosestreak = 0;
  101. var maxwin = 0;
  102. var maxwinstreak = 0;
  103. var winorlosestreak = "no bet yet";
  104. var resultcolor = "n/a";
  105. ///////////////////////////
  106.  
  107. var currBetGreenAmount = 0;
  108. var lastBetGreenAmount = 0;
  109. var betOnGreenEnabled = false;
  110.  
  111. var lastBetAmount = 0;
  112. var wonLastBet = false;
  113. var antiLoseAllCounter = 0;
  114. var antiLoseAllEnabled = false;
  115. var antiDoubleGreenEnabled = false;
  116. var antiDoubleGreenCounter = -1;
  117. var skipBet = false;
  118.  
  119. //martingale system variables
  120. var antiBankruptcy = false;
  121.  
  122. //reverse labouchere system variables
  123. var goal = 0;
  124. var numLines = 0;
  125. var lines = [];
  126.  
  127. //END [DEFINING VARIABLES]
  128.  
  129. //AUTO RECONNECT
  130. console.log('%c[x2Destroyer] Auto-Reconnect Initialized!', 'color:green');
  131. setInterval(function() {
  132. if (!WS) {
  133. console.log('Reconnecting...');
  134. connect();
  135. }
  136. }, 5000);
  137. //END
  138.  
  139. //START [DEFINE LISTENERS]
  140. nightengaleAntiDoubleGreenCheckbox.onclick = function() {
  141. if (!antiDoubleGreenEnabled) {
  142. antiDoubleGreenEnabled = true;
  143. console.log("%c[x2Destroyer] Anti-Double Green enabled!", "color:green");
  144. } else {
  145. betOnGreenEnabled = false;
  146. console.log("%c[x2Destroyer] Anti-Double Green disabled!", "color:red");
  147. }
  148. };
  149.  
  150. nightengaleBetOnGreenCheckbox.onclick = function() {
  151. if (!betOnGreenEnabled) {
  152. betOnGreenEnabled = true;
  153. console.log("%c[x2Destroyer] Bet on Green enabled!", "color:green");
  154. } else {
  155. betOnGreenEnabled = false;
  156. console.log("%c[x2Destroyer] Bet on Green disabled!", "color:red");
  157. }
  158. };
  159.  
  160. nightengaleAntiLoseallCheckbox.onclick = function() {
  161. if (!antiLoseAllEnabled) {
  162. antiLoseAllEnabled = true;
  163. console.log("%c[x2Destroyer] Anti-Lose all enabled!", "color:green");
  164. } else {
  165. antiLoseAllEnabled = false;
  166. console.log("%c[x2Destroyer] Anti-Lose all disabled!", "color:red");
  167. }
  168. };
  169.  
  170. startButton.onclick = function() {
  171. //check if all needed fields are filled in
  172. var passedTest = true;
  173. if (mode == 0 && !manualMode) { //nightengale mode specific tests
  174. if (nightengaleDefaultBetInput.value == '' || nightengaleDefaultBetInput.value <= 0)
  175. passedTest = false;
  176.  
  177. if (nightengaleProfitOver24HoursInput.value == '' || nightengaleProfitOver24HoursInput.value <= 0)
  178. passedTest = false;
  179.  
  180. if (nightengaleStopAfterXGamesCheckbox.checked && (nightengaleStopAfterXGamesInput.value == '' || nightengaleStopAfterXGamesInput.value <= 0))
  181. passedTest = false;
  182.  
  183. if (nightengaleStopAfterReachingXCheckbox.checked && (nightengaleStopAfterReachingXInput.value == '' || nightengaleStopAfterReachingXInput.value <= 0))
  184. passedTest = false;
  185. }
  186.  
  187. if (mode == 1 && !manualMode) { //labouchere mode specific tests
  188. if (labouchereGoalInput.value == '' || labouchereGoalInput.value <= 0)
  189. passedTest = false;
  190. if (labouchereLines.value == '' || labouchereLines.value <= 0)
  191. passedTest = false;
  192. }
  193.  
  194. //standard tests
  195. if (simulationModeCheckbox.checked && (simulationMoneyInput.value == '' || simulationMoneyInput.value <= 0))
  196. passedTest = false;
  197.  
  198. if (!running && passedTest) {
  199. simulationModeCheckbox.disabled = true;
  200. manualModeCheckbox.disabled = true;
  201. simulationMoneyInput.disabled = true;
  202. console.log("%c[x2Destroyer] STARTED", "color:green");
  203. running = true;
  204.  
  205. labouchereRadioBtn.disabled = true;
  206. labouchereLines.disabled = true;
  207. labouchereGoalInput.disabled = true;
  208.  
  209. nightengaleRadioBtn.disabled = true;
  210. nightengaleDefaultBetInput.disabled = true;
  211. nightengaleProfitOver24HoursInput.disabled = true;
  212. nightengaleAntiBankruptcyCheckbox.disabled = true;
  213. nightengaleStopAfterXGamesCheckbox.disabled = true;
  214. nightengaleStopAfterXGamesInput.disabled = true;
  215. nightengaleStopAfterReachingXCheckbox.disabled = true;
  216. nightengaleStopAfterReachingXInput.disabled = true;
  217. nightengaleAntiLoseallCheckbox.disabled = true;
  218. nightengaleAntiLoseallInput.disabled = true;
  219. nightengaleAntiDoubleGreenInput.disabled = true;
  220. nightengaleAntiDoubleGreenCheckbox.disabled = true;
  221. nightengaleBetOnGreenCheckbox.disabled = true;
  222. nightengaleBetOnGreenInput.disabled = true;
  223.  
  224. trainProtectionCheckbox.disabled = true;
  225. rainbowProtectionCheckbox.disabled = true;
  226. rrbbProtectionCheckbox.disabled = true;
  227. rrbProtectionCheckbox.disabled = true;
  228.  
  229. if (mode == 1) { //set up lines array
  230. goal = parseInt(labouchereGoalInput.value);
  231. numLines = parseInt(labouchereLines.value);
  232.  
  233. for (i = 0; i < numLines; i++)
  234. lines[i] = goal / numLines;
  235. }
  236.  
  237. if (simulationMode) {
  238. simulationMoney = parseInt(simulationMoneyInput.value);
  239. simulationMoneyStart = simulationMoney;
  240. } else {
  241. startBalance = getBalance();
  242. }
  243. } else if (!passedTest) {
  244. alert("Please fill in all required fields for the settings you have chosen");
  245. } else
  246. console.log("%c[x2Destroyer] I'm already running you tart", "color:green");
  247. };
  248.  
  249. stopButton.onclick = function() {
  250. if (running) {
  251. simulationModeCheckbox.disabled = false;
  252. simulationMoneyInput.disabled = false;
  253. manualModeCheckbox.disabled = false;
  254. console.log("%c[x2Destroyer] STOPPED", "color:red");
  255. running = false;
  256.  
  257. nightengaleRadioBtn.disabled = false;
  258. labouchereRadioBtn.disabled = false;
  259.  
  260. if (mode == 1) {
  261.  
  262. labouchereLines.disabled = false;
  263. labouchereGoalInput.disabled = false;
  264. } else {
  265.  
  266. nightengaleDefaultBetInput.disabled = false;
  267. nightengaleProfitOver24HoursInput.disabled = false;
  268. nightengaleAntiBankruptcyCheckbox.disabled = false;
  269. nightengaleStopAfterXGamesCheckbox.disabled = false;
  270. nightengaleStopAfterXGamesInput.disabled = false;
  271. nightengaleStopAfterReachingXCheckbox.disabled = false;
  272. nightengaleStopAfterReachingXInput.disabled = false;
  273. nightengaleAntiLoseallCheckbox.disabled = false;
  274. nightengaleAntiLoseallInput.disabled = false;
  275. nightengaleAntiDoubleGreenInput.disabled = false;
  276. nightengaleAntiDoubleGreenCheckbox.disabled = false;
  277. nightengaleBetOnGreenCheckbox.disabled = false;
  278. nightengaleBetOnGreenInput.disabled = false;
  279. }
  280.  
  281. trainProtectionCheckbox.disabled = false;
  282. rainbowProtectionCheckbox.disabled = false;
  283. rrbbProtectionCheckbox.disabled = false;
  284. rrbProtectionCheckbox.disabled = false;
  285.  
  286. running = false;
  287. simulationMoney = 0;
  288. simulationMoneyStart = 0;
  289. status = 0;
  290. fullStatus = '';
  291. runtime = 0;
  292. betOnThisRound = false;
  293. checkedIfWon = false;
  294. rolled = false;
  295. lastBetAmount = 0;
  296. currBetAmount = 0;
  297. currBetColor = ' ';
  298. betsWon = 0;
  299. betsLost = 0;
  300. lines = [];
  301. wonLastBet = true;
  302.  
  303. //////////////////////////////////////
  304. currstreak = 0;
  305. maxwin = 0;
  306. maxlose = 0;
  307. maxlosestreak = 0;
  308. maxwinstreak = 0;
  309. winorlosestreak = "no bet yet";
  310. //////////////////////////////////////
  311.  
  312. } else
  313. console.log("%c[x2Destroyer] I'm already stopped you tart", "color:red");
  314. };
  315.  
  316. nightengaleRadioBtn.onclick = function() {
  317. console.log("%c[x2Destroyer] Nightengale mode selected", "color:green;");
  318. mode = 0;
  319.  
  320. labouchereLines.disabled = true;
  321. labouchereGoalInput.disabled = true;
  322.  
  323. nightengaleDefaultBetInput.disabled = false;
  324. nightengaleProfitOver24HoursInput.disabled = false;
  325. nightengaleAntiBankruptcyCheckbox.disabled = false;
  326. nightengaleStopAfterXGamesCheckbox.disabled = false;
  327. nightengaleStopAfterXGamesInput.disabled = false;
  328. nightengaleStopAfterReachingXCheckbox.disabled = false;
  329. nightengaleStopAfterReachingXInput.disabled = false;
  330. nightengaleAntiLoseallCheckbox.disabled = false;
  331. nightengaleAntiLoseallInput.disabled = false;
  332. nightengaleAntiDoubleGreenInput.disabled = false;
  333. nightengaleAntiDoubleGreenCheckbox.disabled = false;
  334. nightengaleBetOnGreenCheckbox.disabled = false;
  335. nightengaleBetOnGreenInput.disabled = false;
  336. }
  337.  
  338. labouchereRadioBtn.onclick = function() {
  339. console.log("%c[x2Destroyer] Labouchere mode selected", "color:green;");
  340. mode = 1;
  341.  
  342. labouchereLines.disabled = false;
  343. labouchereGoalInput.disabled = false;
  344.  
  345. nightengaleDefaultBetInput.disabled = true;
  346. nightengaleProfitOver24HoursInput.disabled = true;
  347. nightengaleAntiBankruptcyCheckbox.disabled = true;
  348. nightengaleStopAfterXGamesCheckbox.disabled = true;
  349. nightengaleStopAfterXGamesInput.disabled = true;
  350. nightengaleStopAfterReachingXCheckbox.disabled = true;
  351. nightengaleStopAfterReachingXInput.disabled = true;
  352. nightengaleAntiLoseallCheckbox.disabled = true;
  353. nightengaleAntiLoseallInput.disabled = true;
  354. nightengaleAntiDoubleGreenInput.disabled = true;
  355. nightengaleAntiDoubleGreenCheckbox.disabled = true;
  356. nightengaleBetOnGreenCheckbox.disabled = true;
  357. nightengaleBetOnGreenInput.disabled = true;
  358. }
  359.  
  360. nightengaleAntiBankruptcyCheckbox.onclick = function() {
  361. if (nightengaleAntiBankruptcyCheckbox.checked) {
  362. antiBankruptcy = true;
  363. console.log("%c[x2Destroyer] Anti-Bankruptcy Mode Toggled On", "color:green;");
  364. } else {
  365. antiBankruptcy = false;
  366. console.log("%c[x2Destroyer] Anti-Bankruptcy Mode Toggled Off", "color:red;");
  367. }
  368. }
  369.  
  370. manualModeCheckbox.onclick = function() {
  371. if (manualModeCheckbox.checked) {
  372. nightengaleRadioBtn.disabled = true;
  373. labouchereRadioBtn.disabled = true;
  374. manualMode = true;
  375. console.log("%c[x2Destroyer] Manual Mode Toggled On", "color:green;");
  376. } else {
  377. nightengaleRadioBtn.disabled = false;
  378. labouchereRadioBtn.disabled = false;
  379. manualMode = false;
  380. console.log("%c[x2Destroyer] Manual Mode Toggled Off", "color:red;");
  381. }
  382.  
  383.  
  384. }
  385.  
  386. simulationModeCheckbox.onclick = function() {
  387. if (simulationModeCheckbox.checked) {
  388. simulationMode = true;
  389. console.log("%c[x2Destroyer] Simulation Mode Toggled On", "color:green;");
  390.  
  391. if (nightengaleDefaultBetInput.value != null && simulationMoneyInput.value != null) {
  392. nightengaleOddsOfLosingXTimesInARowX.innerHTML = Math.floor(Math.log((simulationMoneyInput.value / nightengaleDefaultBetInput.value) + 1) / Math.log(2));
  393. nightengaleOddsOfLosingXTimesInARow.innerHTML = (Math.pow((7 / 15), Math.floor(Math.log((simulationMoneyInput.value / nightengaleDefaultBetInput.value) + 1) / Math.log(2))) * 100).toFixed(3) + "%";
  394. nightengaleOddsOfLosingIn1Day.innerHTML = (((Math.pow((7 / 15), Math.floor(Math.log((simulationMoneyInput.value / nightengaleDefaultBetInput.value) + 1) / Math.log(2)))) * (1728 - Math.floor(Math.log((simulationMoneyInput.value / nightengaleDefaultBetInput.value) + 1) / Math.log(2)) + 1)) * 100).toFixed(3) + "%";
  395. nightengalePercentageOfMoneyAsDefaultBet.innerHTML = ((nightengaleDefaultBetInput.value / simulationMoneyInput.value) * 100).toFixed(4) + "%";
  396. }
  397. } else {
  398. simulationMode = false;
  399. console.log("%c[x2Destroyer] Simulation Mode Toggled Off", "color:red;");
  400.  
  401. if (nightengaleDefaultBetInput.value != null) {
  402. nightengaleOddsOfLosingXTimesInARowX.innerHTML = Math.floor(Math.log((getBalance() / nightengaleDefaultBetInput.value) + 1) / Math.log(2));
  403. nightengaleOddsOfLosingXTimesInARow.innerHTML = (Math.pow((7 / 15), Math.floor(Math.log((getBalance() / nightengaleDefaultBetInput.value) + 1) / Math.log(2))) * 100).toFixed(3) + "%";
  404. nightengaleOddsOfLosingIn1Day.innerHTML = (((Math.pow((7 / 15), Math.floor(Math.log((getBalance() / nightengaleDefaultBetInput.value) + 1) / Math.log(2)))) * (1728 - Math.floor(Math.log((getBalance() / nightengaleDefaultBetInput.value) + 1) / Math.log(2)) + 1)) * 100).toFixed(3) + "%";
  405. nightengalePercentageOfMoneyAsDefaultBet.innerHTML = ((nightengaleDefaultBetInput.value / getBalance()) * 100).toFixed(4) + "%";
  406. }
  407. }
  408. }
  409.  
  410. nightengaleDefaultBetInput.oninput = function() {
  411. nightengaleProfitOver24HoursInput.value = 806 * nightengaleDefaultBetInput.value;
  412. if (simulationMode) {
  413. nightengaleOddsOfLosingXTimesInARowX.innerHTML = Math.floor(Math.log((simulationMoneyInput.value / nightengaleDefaultBetInput.value) + 1) / Math.log(2));
  414. nightengaleOddsOfLosingXTimesInARow.innerHTML = (Math.pow((7 / 15), Math.floor(Math.log((simulationMoneyInput.value / nightengaleDefaultBetInput.value) + 1) / Math.log(2))) * 100).toFixed(3) + "%";
  415. nightengaleOddsOfLosingIn1Day.innerHTML = (((Math.pow((7 / 15), Math.floor(Math.log((simulationMoneyInput.value / nightengaleDefaultBetInput.value) + 1) / Math.log(2)))) * (1728 - Math.floor(Math.log((simulationMoneyInput.value / nightengaleDefaultBetInput.value) + 1) / Math.log(2)) + 1)) * 100).toFixed(3) + "%";
  416. nightengalePercentageOfMoneyAsDefaultBet.innerHTML = ((nightengaleDefaultBetInput.value / simulationMoneyInput.value) * 100).toFixed(4) + "%";
  417. } else {
  418. nightengaleOddsOfLosingXTimesInARowX.innerHTML = Math.floor(Math.log((getBalance() / nightengaleDefaultBetInput.value) + 1) / Math.log(2));
  419. nightengaleOddsOfLosingXTimesInARow.innerHTML = (Math.pow((7 / 15), Math.floor(Math.log((getBalance() / nightengaleDefaultBetInput.value) + 1) / Math.log(2))) * 100).toFixed(3) + "%";
  420. nightengaleOddsOfLosingIn1Day.innerHTML = (((Math.pow((7 / 15), Math.floor(Math.log((getBalance() / nightengaleDefaultBetInput.value) + 1) / Math.log(2)))) * (1728 - Math.floor(Math.log((getBalance() / nightengaleDefaultBetInput.value) + 1) / Math.log(2)) + 1)) * 100).toFixed(3) + "%";
  421. nightengalePercentageOfMoneyAsDefaultBet.innerHTML = ((nightengaleDefaultBetInput.value / getBalance()) * 100).toFixed(4) + "%";
  422. }
  423. }
  424.  
  425. nightengaleProfitOver24HoursInput.oninput = function() {
  426. nightengaleDefaultBetInput.value = Math.floor(nightengaleProfitOver24HoursInput.value / 806);
  427. if (simulationMode) {
  428. nightengaleOddsOfLosingXTimesInARowX.innerHTML = Math.floor(Math.log((simulationMoneyInput.value / nightengaleDefaultBetInput.value) + 1) / Math.log(2));
  429. nightengaleOddsOfLosingXTimesInARow.innerHTML = (Math.pow((7 / 15), Math.floor(Math.log((simulationMoneyInput.value / nightengaleDefaultBetInput.value) + 1) / Math.log(2))) * 100).toFixed(3) + "%";
  430. nightengaleOddsOfLosingIn1Day.innerHTML = (((Math.pow((7 / 15), Math.floor(Math.log((simulationMoneyInput.value / nightengaleDefaultBetInput.value) + 1) / Math.log(2)))) * (1728 - Math.floor(Math.log((simulationMoneyInput.value / nightengaleDefaultBetInput.value) + 1) / Math.log(2)) + 1)) * 100).toFixed(3) + "%";
  431. nightengalePercentageOfMoneyAsDefaultBet.innerHTML = ((nightengaleDefaultBetInput.value / simulationMoneyInput.value) * 100).toFixed(4) + "%";
  432. } else {
  433. nightengaleOddsOfLosingXTimesInARowX.innerHTML = Math.floor(Math.log((getBalance() / nightengaleDefaultBetInput.value) + 1) / Math.log(2));
  434. nightengaleOddsOfLosingXTimesInARow.innerHTML = (Math.pow((7 / 15), Math.floor(Math.log((getBalance() / nightengaleDefaultBetInput.value) + 1) / Math.log(2))) * 100).toFixed(3) + "%";
  435. nightengaleOddsOfLosingIn1Day.innerHTML = (((Math.pow((7 / 15), Math.floor(Math.log((getBalance() / nightengaleDefaultBetInput.value) + 1) / Math.log(2)))) * (1728 - Math.floor(Math.log((getBalance() / nightengaleDefaultBetInput.value) + 1) / Math.log(2)) + 1)) * 100).toFixed(3) + "%";
  436. nightengalePercentageOfMoneyAsDefaultBet.innerHTML = ((nightengaleDefaultBetInput.value / getBalance()) * 100).toFixed(4) + "%";
  437. }
  438. };
  439.  
  440. simulationMoneyInput.oninput = function() {
  441. if (nightengaleDefaultBetInput.value != null) {
  442. if (simulationMode) {
  443. nightengaleOddsOfLosingXTimesInARowX.innerHTML = Math.floor(Math.log((simulationMoneyInput.value / nightengaleDefaultBetInput.value) + 1) / Math.log(2));
  444. nightengaleOddsOfLosingXTimesInARow.innerHTML = (Math.pow((7 / 15), Math.floor(Math.log((simulationMoneyInput.value / nightengaleDefaultBetInput.value) + 1) / Math.log(2))) * 100).toFixed(3) + "%";
  445. nightengaleOddsOfLosingIn1Day.innerHTML = (((Math.pow((7 / 15), Math.floor(Math.log((simulationMoneyInput.value / nightengaleDefaultBetInput.value) + 1) / Math.log(2)))) * (1728 - Math.floor(Math.log((simulationMoneyInput.value / nightengaleDefaultBetInput.value) + 1) / Math.log(2)) + 1)) * 100).toFixed(3) + "%";
  446. nightengalePercentageOfMoneyAsDefaultBet.innerHTML = ((nightengaleDefaultBetInput.value / simulationMoneyInput.value) * 100).toFixed(4) + "%";
  447. } else {
  448. nightengaleOddsOfLosingXTimesInARowX.innerHTML = Math.floor(Math.log((getBalance() / nightengaleDefaultBetInput.value) + 1) / Math.log(2));
  449. nightengaleOddsOfLosingXTimesInARow.innerHTML = (Math.pow((7 / 15), Math.floor(Math.log((getBalance() / nightengaleDefaultBetInput.value) + 1) / Math.log(2))) * 100).toFixed(3) + "%";
  450. nightengaleOddsOfLosingIn1Day.innerHTML = (((Math.pow((7 / 15), Math.floor(Math.log((getBalance() / nightengaleDefaultBetInput.value) + 1) / Math.log(2)))) * (1728 - Math.floor(Math.log((getBalance() / nightengaleDefaultBetInput.value) + 1) / Math.log(2)) + 1)) * 100).toFixed(3) + "%";
  451. nightengalePercentageOfMoneyAsDefaultBet.innerHTML = ((nightengaleDefaultBetInput.value / getBalance()) * 100).toFixed(4) + "%";
  452. }
  453. };
  454. }
  455.  
  456. labouchereGoalInput.oninput = function() {
  457. if (labouchereLines.value != '' && labouchereLines.value > 0)
  458. laboucherePredictedBets.innerHTML = Math.ceil(parseInt(labouchereGoalInput.value) / ((7 / 15) * labouchereLines.value));
  459. };
  460.  
  461. labouchereLines.oninput = function() {
  462. if (labouchereGoalInput.value != '' && labouchereGoalInput.value > 0)
  463. laboucherePredictedBets.innerHTML = Math.ceil(parseInt(labouchereGoalInput.value) / ((7 / 15) * labouchereLines.value));
  464. }
  465.  
  466. red.onclick = function() {
  467. if (status == 2 && !betOnThisRound) {
  468. currBetAmount = parseInt(simulateBetAmt.value);
  469. currBetColor = 'r';
  470. console.log("%c[x2Destroyer] Total Money: " + simulationMoney + " // Total Bets: " + (betsWon + betsLost) + " // Wins: " + betsWon + " Losses: " + betsLost + " // Net Change: " + toSignedInt(simulationMoney - simulationMoneyStart) + " // Simulated Bet of " + currBetAmount + " credits on color " + currBetColor, "color:purple;");
  471. betOnThisRound = true;
  472. } else {
  473. if (betOnThisRound)
  474. console.log("%c[x2Destroyer] You already bet on this round...", "color:red;");
  475. else
  476. console.log("%c[x2Destroyer] Betting for this round is closed...", "color:red;");
  477. }
  478. }
  479.  
  480. green.onclick = function() {
  481. if (status == 2) {
  482. if (!betOnThisRound) {
  483. currBetAmount = parseInt(simulateBetAmt.value);
  484. currBetColor = 'g';
  485. console.log("%c[x2Destroyer] Total Money: " + simulationMoney + " // Total Bets: " + (betsWon + betsLost) + " // Wins: " + betsWon + " Losses: " + betsLost + " // Net Change: " + toSignedInt(simulationMoney - simulationMoneyStart) + " // Simulated Bet of " + currBetAmount + " credits on color " + currBetColor, "color:purple;");
  486. betOnThisRound = true;
  487. } else {
  488. console.log("%c[x2Destroyer] You already bet on this round...", "color:red;");
  489. }
  490. } else {
  491. console.log("%c[x2Destroyer] Betting for this round is closed...", "color:red;");
  492. }
  493. };
  494.  
  495. black.onclick = function() {
  496. if (status == 2) {
  497. if (!betOnThisRound) {
  498. currBetAmount = parseInt(simulateBetAmt.value);
  499. currBetColor = 'b';
  500. console.log("%c[x2Destroyer] Total Money: " + simulationMoney + " // Total Bets: " + (betsWon + betsLost) + " // Wins: " + betsWon + " Losses: " + betsLost + " // Net Change: " + toSignedInt(simulationMoney - simulationMoneyStart) + " // Simulated Bet of " + currBetAmount + " credits on color " + currBetColor, "color:purple;");
  501. betOnThisRound = true;
  502. } else {
  503. console.log("%c[x2Destroyer] You already bet on this round...", "color:red;");
  504. }
  505. } else {
  506. console.log("%c[x2Destroyer] Betting for this round is closed...", "color:red;");
  507. }
  508. };
  509. //END [DEFINE LISTENERS]
  510.  
  511. //START [DEFINING FUNCTIONS]
  512. function checkStatus() {
  513. //STATUSES
  514. // 1 // Rolling // ***ROLLING***
  515. // 2 // Betting // Rolling in XX.XX...
  516. // 3 // Rolled // CSGODouble rolled 3!
  517. // 4 // Confirming // Confirming 625/625 total bets
  518. return statusBanner.innerHTML;
  519. }
  520.  
  521. function getBalance() {
  522. return balanceSpan.innerHTML;
  523. }
  524.  
  525. function secondsToHHMMSS(d) {
  526. d = Number(d);
  527. var h = Math.floor(d / 3600);
  528. var m = Math.floor(d % 3600 / 60);
  529. var s = Math.floor(d % 3600 % 60);
  530.  
  531. return ((h > 0 ? h + ":" + (m < 10 ? "0" : "") : "") + m + ":" + (s < 10 ? "0" : "") + s);
  532. }
  533.  
  534. /*function sleep() {
  535. var ms = Math.floor((Math.random() * 100) + 1);
  536. ms += Math.floor((Math.random() * 100) + 1);
  537. ms += Math.floor((Math.random() * 100) + 1);
  538. ms *= 100;
  539.  
  540. return (new Promise(function(resolve, reject) {
  541. setTimeout(function() {
  542. resolve();
  543. }, ms);
  544. }));
  545. }*/
  546.  
  547. function sleep(x) {
  548. return (new Promise(function(resolve, reject) {
  549. setTimeout(function() {
  550. resolve();
  551. }, x);
  552. }));
  553. }
  554.  
  555.  
  556. function bet(amount, rgb) {
  557. switch (rgb) {
  558. case 'r':
  559. sleep(10000).then(function() {
  560. betAmountInput.value = amount;
  561. redBetButton.click();
  562. });
  563. break;
  564. case 'g':
  565. sleep(5000).then(function() {
  566. betAmountInput.value = amount;
  567. greenBetButton.click();
  568. });
  569. break;
  570. case 'b':
  571. sleep(10000).then(function() {
  572. betAmountInput.value = amount;
  573. blackBetButton.click();
  574. });
  575. break;
  576. }
  577. }
  578.  
  579.  
  580. function getColorFromNumber(number) {
  581. if (number == 0)
  582. return 'g';
  583. else if (number >= 1 && number <= 7)
  584. return 'r';
  585. else if (number >= 8 && number <= 14)
  586. return 'b';
  587. }
  588.  
  589. function toSignedInt(number) {
  590. if (number > 0)
  591. return "+" + number;
  592.  
  593. return number
  594. }
  595.  
  596. function calculateNewDefaultBet(defaultBet, moneyStart, money) {
  597. return Math.floor((defaultBet / moneyStart) * money);
  598. }
  599. //END [DEFINING FUNCTIONS]
  600.  
  601. //START [MAIN LOOP]
  602. setInterval(function() {
  603. runtimeSpan.innerHTML = secondsToHHMMSS(++runtime);
  604.  
  605. if (running) {
  606. fullStatus = checkStatus()
  607. switch (fullStatus.substring(0, 2)) {
  608. case "**":
  609. rolled = true;
  610. status = 1;
  611. break;
  612.  
  613. case "Ro":
  614. if (betOnThisRound && rolled) {
  615. betOnThisRound = false;
  616. checkedIfWon = false;
  617. rolled = false;
  618. }
  619. status = 2;
  620. break;
  621.  
  622. case "CS":
  623. status = 3;
  624. break;
  625.  
  626. case "Co":
  627. status = 4;
  628. break;
  629.  
  630. default:
  631. status = 0;
  632. break;
  633. }
  634. //if (status == 2)
  635. // console.log("%c[x2Destroyer] Website Status: " + status + " // Rolling in XX.XX...", "color:orange;");
  636. //else
  637. // console.log("%c[x2Destroyer] Website Status: " + status + " // " + checkStatus(), "color:orange;");
  638.  
  639. if (!betOnThisRound && status == 2) {
  640. skipBet = false;
  641. //decide which color to bet on
  642. if (!manualMode) {
  643. if (getColorFromNumber(document.getElementById("past").childNodes[9].innerHTML) != 'g') currBetColor = getColorFromNumber(document.getElementById("past").childNodes[9].innerHTML);
  644. else
  645. currBetColor = 'r';
  646.  
  647. if (trainProtectionCheckbox.checked) {
  648. if ((getColorFromNumber(document.getElementById("past").childNodes[8].innerHTML) == 'r' && getColorFromNumber(document.getElementById("past").childNodes[9].innerHTML) == 'r') || (getColorFromNumber(document.getElementById("past").childNodes[8].innerHTML) == 'b' && getColorFromNumber(document.getElementById("past").childNodes[9].innerHTML) == 'b')) {
  649. console.log("%c[x2Destroyer] Train Detected!", "color:blue;");
  650. currBetColor = getColorFromNumber(document.getElementById("past").childNodes[9].innerHTML);
  651. }
  652. }
  653.  
  654. if (rainbowProtectionCheckbox.checked) {
  655. if ((getColorFromNumber(document.getElementById("past").childNodes[7].innerHTML) == 'b' && (getColorFromNumber(document.getElementById("past").childNodes[8].innerHTML) == 'r') && getColorFromNumber(document.getElementById("past").childNodes[9].innerHTML) == 'b') || (getColorFromNumber(document.getElementById("past").childNodes[7].innerHTML) == 'r' && (getColorFromNumber(document.getElementById("past").childNodes[8].innerHTML) == 'b') && getColorFromNumber(document.getElementById("past").childNodes[9].innerHTML) == 'r')) {
  656. console.log("%c[x2Destroyer] Rainbow Detected!", "color:blue;");
  657. currBetColor = getColorFromNumber(document.getElementById("past").childNodes[8].innerHTML);
  658. }
  659. }
  660. if (rrbbProtectionCheckbox.checked) {
  661. if ((getColorFromNumber(document.getElementById("past").childNodes[6].innerHTML) == 'b' && getColorFromNumber(document.getElementById("past").childNodes[7].innerHTML) == 'b' && getColorFromNumber(document.getElementById("past").childNodes[8].innerHTML) == 'r' && getColorFromNumber(document.getElementById("past").childNodes[9].innerHTML) == 'r') || (getColorFromNumber(document.getElementById("past").childNodes[6].innerHTML) == 'r' && getColorFromNumber(document.getElementById("past").childNodes[7].innerHTML) == 'r' && getColorFromNumber(document.getElementById("past").childNodes[8].innerHTML) == 'b' && getColorFromNumber(document.getElementById("past").childNodes[9].innerHTML) == 'b')) {
  662. console.log("%c[x2Destroyer] RRBB Pattern Detected!", "color:blue;");
  663. currBetColor = getColorFromNumber(document.getElementById("past").childNodes[6].innerHTML);
  664. }
  665. }
  666. if (rrbProtectionCheckbox.checked) {
  667. if ((getColorFromNumber(document.getElementById("past").childNodes[7].innerHTML) == 'b' && getColorFromNumber(document.getElementById("past").childNodes[8].innerHTML) == 'b' && getColorFromNumber(document.getElementById("past").childNodes[9].innerHTML) == 'r') || (getColorFromNumber(document.getElementById("past").childNodes[7].innerHTML) == 'r' && getColorFromNumber(document.getElementById("past").childNodes[8].innerHTML) == 'r' && getColorFromNumber(document.getElementById("past").childNodes[9].innerHTML) == 'b')) {
  668. console.log("%c[x2Destroyer] RRB Pattern Detected!", "color:blue;");
  669. currBetColor = getColorFromNumber(document.getElementById("past").childNodes[7].innerHTML);
  670. }
  671. }
  672. }
  673.  
  674. if (mode == 0 && !manualMode) { //Martingale System
  675. if (nightengaleStopAfterXGamesCheckbox.checked && (betsWon + betsLost) == parseInt(nightengaleStopAfterXGamesInput.value)) {
  676. stopButton.click();
  677. console.log("%c[x2Destroyer] Nightengale: Stop after " + nightengaleStopAfterXGamesInput.value + " reached! Stopping...: ", "color:purple");
  678. }
  679.  
  680. if (nightengaleStopAfterReachingXCheckbox.checked && ((!simulationMode && ((getBalance() - startBalance) == parseInt(nightengaleStopAfterReachingXInput.value))) || (simulationMode && ((simulationMoney - simulationMoneyStart) == parseInt(nightengaleStopAfterReachingXInput.value))))) {
  681. stopButton.click();
  682. console.log("%c[x2Destroyer] Nightengale: Stop after attaining " + nightengaleStopAfterReachingXInput.value + " reached! Stopping...: ", "color:purple");
  683. }
  684.  
  685. //decide the amount to bet
  686. if (antiDoubleGreenCounter == 0)
  687. antiDoubleGreenCounter = -1;
  688.  
  689. if (!betOnThisRound && wonLastBet) {
  690. currBetAmount = parseInt(nightengaleDefaultBetInput.value);
  691. if (betOnGreenEnabled)
  692. currBetGreenAmount = parseInt(nightengaleBetOnGreenInput.value);
  693. antiLoseAllCounter = 0;
  694.  
  695. } else if (antiDoubleGreenCounter == -1 && !betOnThisRound && antiDoubleGreenEnabled && getColorFromNumber(document.getElementById("past").childNodes[9].innerHTML) == 'g') {
  696. antiDoubleGreenCounter = parseInt(nightengaleAntiDoubleGreenInput.value);
  697. console.log("%c[x2Destroyer] Skipping the next " + antiDoubleGreenCounter + " bets!", "color:green");
  698. skipBet = true;
  699. betOnThisRound = true;
  700. antiDoubleGreenCounter -= 1;
  701. } else if (!betOnThisRound && antiDoubleGreenCounter >= 0) {
  702. if (antiDoubleGreenCounter == 1) {
  703. console.log("%c[x2Destroyer] Last bet skip!", "color:green");
  704. antiDoubleGreenCounter = -1;
  705. skipBet = true;
  706. betOnThisRound = true;
  707. } else if (!skipBet && !betOnThisRound) {
  708. console.log("%c[x2Destroyer] Skipping the next " + antiDoubleGreenCounter + " bets", "color:green");
  709. betOnThisRound = true;
  710. skipBet = true;
  711. antiDoubleGreenCounter -= 1;
  712. }
  713. } else {
  714. antiLoseAllCounter++;
  715. if (antiBankruptcy && ((simulationMode && (lastBetAmount * 2 > simulationMoney)) || (!simulationMode && (lastBetAmount * 2 > getBalance())))) {
  716. console.log("%c[x2Destroyer] Anti-Bankruptcy triggered!", "color:blue;");
  717.  
  718. if (simulationMode) {
  719. nightengaleDefaultBetInput.value = calculateNewDefaultBet(nightengaleDefaultBetInput.value, simulationMoneyStart, simulationMoney);
  720. console.log("%c[x2Destroyer] Anti-Bankruptcy calculated new default bet: " + nightengaleDefaultBetInput.value, "color:blue;");
  721. } else {
  722. nightengaleDefaultBetInput.value = calculateNewDefaultBet(nightengaleDefaultBetInput.value, startBalance, getBalance());
  723. console.log("%c[x2Destroyer] Anti-Bankruptcy calculated new default bet: " + nightengaleDefaultBetInput.value, "color:blue;");
  724. }
  725.  
  726. currBetAmount = parseInt(nightengaleDefaultBetInput.value);
  727. if (betOnGreenEnabled)
  728. currGreenBetAmount = parseInt(nightengaleBetOnGreenInput.value);
  729. wonLastBet = true;
  730. } else {
  731. if (antiLoseAllCounter >= parseInt(nightengaleAntiLoseallInput.value)) {
  732. antiLoseAllCounter = 0;
  733. console.log("%c[x2Destroyer] Anti-Lose all triggered!", "color:green");
  734. currBetAmount = parseInt(nightengaleDefaultBetInput.value);
  735. if (betOnGreenEnabled)
  736. currGreenBetAmount = parseInt(nightengaleBetOnGreenInput.value);
  737. } else {
  738. currBetAmount = lastBetAmount * 2;
  739. if (betOnGreenEnabled)
  740. currBetGreenAmount = lastBetGreenAmount * 2;
  741. }
  742. }
  743.  
  744. }
  745. }
  746. } else if (mode == 1 && !manualMode) { //labouchere system
  747. if (simulationMode) {
  748. if ((simulationMoney - simulationMoneyStart) == goal) {
  749. stopButton.click();
  750. console.log("%c[x2Destroyer] Labouchere goal reached! Stopping...: ", "color:purple");
  751. }
  752. } else {
  753. if ((getBalance() - startBalance) == goal) {
  754. stopButton.click();
  755. console.log("%c[x2Destroyer] Labouchere goal reached! Stopping...: ", "color:purple");
  756. }
  757. }
  758.  
  759. if (wonLastBet && (betsWon + betsLost) > 0) {
  760. lines.splice((lines.length - 1), 1);
  761. lines.splice(0, 1);
  762. } else if (!wonLastBet && (betsWon + betsLost) > 0) {
  763. lines.push(lastBetAmount);
  764. }
  765.  
  766. if (lines.length > 1)
  767. currBetAmount = (lines[0] + lines[lines.length - 1]);
  768. else
  769. currBetAmount = lines[0];
  770.  
  771. console.log("%c[x2Destroyer] Lines: " + lines, "color:blue");
  772. }
  773.  
  774. //bet
  775. if (!skipBet) {
  776.  
  777. //////////////////////////////////////////////////////
  778. if (currBetColor == 'r') {
  779. resultcolor = "RED";
  780. } else if (currBetColor == 'b') {
  781. resultcolor = "BLACK";
  782. } else if (currBetColor == 'g') {
  783. resultcolor = "GREEN";
  784. }
  785. //////////////////////////////////////////////////////
  786.  
  787. if (!simulationMode && !betOnThisRound) {
  788. betOnThisRound = true;
  789. lastBetAmount = currBetAmount;
  790. lastBetGreenAmount = currBetGreenAmount;
  791.  
  792.  
  793. //bet on green part
  794. if (betOnGreenEnabled) {
  795. console.log("%c[x2Destroyer] Total Money: " + getBalance() + " // Total Bets: " + (betsWon + betsLost) + " // Wins: " + betsWon + " Losses: " + betsLost + " // Net Change: " + toSignedInt(getBalance() - startBalance) + " // Bet of " + currBetGreenAmount + " credits on GREEN", "color:purple;");
  796. bet(currBetGreenAmount, 'g');
  797. }
  798.  
  799.  
  800.  
  801.  
  802. console.log("%cTotal Money: " + getBalance() + " // Total Bets: " + (betsWon + betsLost) + " // Wins: " + betsWon + " Losses: " + betsLost + " // Max WinStreak: " + maxwinstreak + " // Max LoseStreak: " + maxlosestreak + " // Net Change: " + toSignedInt(getBalance() - startBalance) + " // Bet " + currBetAmount + " on " + resultcolor + " // Current " + winorlosestreak + ": " + currstreak, "color:purple;");
  803. bet(currBetAmount, currBetColor);
  804. } else if (simulationMode && !manualMode && !betOnThisRound) {
  805. betOnThisRound = true;
  806. lastBetAmount = currBetAmount;
  807. lastBetGreenAmount = currBetGreenAmount;
  808.  
  809. console.log("%cTotal Money: " + simulationMoney + " // Total Bets: " + (betsWon + betsLost) + " // Wins: " + betsWon + " Losses: " + betsLost + " // Max WinStreak: " + maxwinstreak + " // Max LoseStreak: " + maxlosestreak + " // Net Change: " + toSignedInt(simulationMoney - simulationMoneyStart) + " // Simulated Bet " + currBetAmount + " on " + resultcolor + " // Current " + winorlosestreak + ": " + currstreak, "color:purple;");
  810. //console.log("%c[x2Destroyer] Total Money: " + simulationMoney, "color:purple;");
  811. //console.log("%cTotal Bets: " + (betsWon + betsLost), "color:purple;");
  812. //console.log("%cWins: " + betsWon + " Losses: " + betsLost, "color:purple;");
  813. //console.log("%cNet Change: " + toSignedInt(simulationMoney - simulationMoneyStart), "color:purple;");
  814. //console.log("%cSimulated Bet of " + currBetAmount, "color:purple;");
  815. //console.log("%cMax WinStreak: " + maxwinstreak, "color:purple;");
  816. //console.log("%cMax LoseStreak: " + maxlosestreak, "color:purple;");
  817. //console.log("%cCurrent "+ winorlosestreak +": " + currstreak, "color:purple;");
  818. //console.log("%cBet on color " + currBetColor, "color:purple;");
  819. if (betOnGreenEnabled)
  820. console.log("%c[x2Destroyer] Total Money: " + simulationMoney + " // Total Bets: " + (betsWon + betsLost) + " // Wins: " + betsWon + " Losses: " + betsLost + " // Net Change: " + toSignedInt(simulationMoney - simulationMoneyStart) + " // Simulated Bet of " + currBetGreenAmount + " credits on GREEN", "color:purple;");
  821. }
  822.  
  823. if (!checkedIfWon && betOnThisRound && status == 3) {
  824. if ((betOnGreenEnabled && getColorFromNumber(checkStatus().substring(18, checkStatus().length - 1)) == 'g') || currBetColor == getColorFromNumber(checkStatus().substring(18, checkStatus().length - 1))) {
  825. wonLastBet = true;
  826.  
  827. //////////////////////////////////////////
  828. wstreak = 1;
  829. currstreak++;
  830. maxlose = 0;
  831. maxwin++;
  832. if (maxwin > maxwinstreak) {
  833. maxwinstreak++;
  834. }
  835. if (lstreak > 0) {
  836. currstreak = 1;
  837. }
  838. lstreak = 0;
  839. winorlosestreak = "Winstreak";
  840. //////////////////////////////////////////
  841.  
  842. betsWon++;
  843. console.log("%c[x2Destroyer] Won Last Bet! :D", "color:green;");
  844. if (simulationMode) {
  845. if (betOnGreenEnabled && getColorFromNumber(checkStatus().substring(18, checkStatus().length - 1)) == 'g')
  846. simulationMoney += currBetGreenAmount * 14;
  847. else if (betOnGreenEnabled && getColorFromNumber(checkStatus().substring(18, checkStatus().length - 1)) != 'g')
  848. simulationMoney -= currBetGreenAmount;
  849.  
  850. if (currBetColor != 'g') {
  851. if (currBetColor == getColorFromNumber(checkStatus().substring(18, checkStatus().length - 1)))
  852. simulationMoney += currBetAmount;
  853. } else {
  854. if (!(currBetColor == getColorFromNumber(checkStatus().substring(18, checkStatus().length - 1))))
  855. simulationMoney += 14 * currBetAmount;
  856. }
  857. }
  858. } else {
  859. wonLastBet = false;
  860.  
  861. //////////////////////////////////////////
  862. lstreak = 1;
  863. currstreak++;
  864. maxwin = 0;
  865. maxlose++;
  866. if (maxlose > maxlosestreak) {
  867. maxlosestreak++;
  868. }
  869. if (wstreak > 0) {
  870. currstreak = 1;
  871. }
  872. wstreak = 0;
  873. winorlosestreak = "Losestreak";
  874. //////////////////////////////////////////
  875.  
  876. betsLost++;
  877. console.log("%c[x2Destroyer] Lost Last Bet! :(", "color:red;");
  878. if (simulationMode) {
  879. if (betOnGreenEnabled && getColorFromNumber(checkStatus().substring(18, checkStatus().length - 1)) != 'g')
  880. simulationMoney -= currBetGreenAmount;
  881. else if (betOnGreenEnabled && getColorFromNumber(checkStatus().substring(18, checkStatus().length - 1)) == 'g')
  882. simulationMoney += currBetGreenAmount * 14;
  883.  
  884. if (!(currBetColor == getColorFromNumber(checkStatus().substring(18, checkStatus().length - 1))))
  885. simulationMoney -= currBetAmount;
  886. }
  887. }
  888.  
  889. checkedIfWon = true;
  890. }
  891. } else if (!betOnThisRound && skipBet) {
  892. console.log("%c[x2Destroyer] Skipping bet! :)", "color:green");
  893. }
  894. }
  895. }, 1000);
  896. //END [MAIN LOOP]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement