nixbot

Adds a martingale bot to just-dice.com

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

You will need to install an extension such as Tampermonkey to install this script.

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name        nixbot
// @namespace   nixbot
// @include     https://just-dice.com/*
// @description Adds a martingale bot to just-dice.com
// @version     1
// @grant       none
// ==/UserScript==
//Copyright (C) 2013  CriticalNix
//
//This program is free software; you can redistribute it and/or
//modify it under the terms of the GNU General Public License
//version 2.
//
//This program is distributed in the hope that it will be useful,
//but WITHOUT ANY WARRANTY; without even the implied warranty of
//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//GNU General Public License for more details.
//
//A full copy of the GNU General Public License, version 2 can be found here. http://www.gnu.org/licenses/gpl-2.0.html
//-------------------------------------------------------------------
var winning = 2; // 1 = winning 0 = losing
var round_length = 0; // holds the amount of times we can multiply.
var running = 0; //running 1 is working.
var run_round = 0;
var betting = 0; //1 = making bet.
var start_balance = 0;
var balance = 0;
var start_values_check = 0;
var betid = 0;
var last_betid = 0;
var last_betid2 = 0;
var version_c = "3.0.5";
var heartbeat_bpm = 100; //this is the bots ticker if for some reason the site temp bans  for spam betting lower this to 125
var bet_data = [];
var arr_bets = [];
var ev_data = [];
var current_time = 1;
var start_time = 0;
var start_bet = 0;
var current_bet = 0;
var won = 0;
var lost = 0;
var win1 = 0;
var lose1 = 0;
var steps = 0;
var reset_steps = 0;
var max_win = 0;
var max_loss = 0;
var marti_limit = 0;
var betid_check = 0;
var reset_bet = 0;
var start_bal = 0;
var first_run = 0;
var current_profit = 0;
var hi_lo;
var randomizer_count = 0;
var randomizing = 0;
var cpr;
var site = 2;
var ddt = "Doge-Dice.com";
var jdt = "Just-Dice.com";
var delay_bet = 1000;
var reset_check = 0;
var win_ratio = 0;
var profit_lock_a = 0;
var flot = "https://cdnjs.cloudflare.com/ajax/libs/flot/0.8.3/jquery.flot.js";


var dep = [];

//window.location.reload(true);
//-------------------------------------- Heart and possibly soul of the bot. Everything is called from here.
function heart_beat() {

    gui();
    footer();
    cpr = !cpr;
    includeJS(flot);

    console.log(' Started ' + gets_date() + ' Heartbeat:' + heartbeat_bpm + '\n' + '\n');

    setInterval(function() {
        if (cpr) {
            value_grip();
            results();
            stats_update();
            total_check();
            Martingale();
        }
    }, heartbeat_bpm);
}

function includeJS(jsFile) {
    $('head').append($('<script>').attr('type', 'text/javascript').attr('src', jsFile));
}

//-------------------------------------- determine if we are on just-dice or doge-dice
function which_site() {

    var dd = $('div.header').text();


    if (dd == ddt) {
        site = 1;

    } else {
        site = 0;
    }
    console.log('we are on the ' + site + "-dice site" + "\n");
}

//-------------------------------------- increments max loss and max win display 
function max_loss_streak() { // longest loss streak
    $("#maxLossInput").css("color", "red");
    if (lose1 > max_loss) {
        max_loss++;
        $("#maxLossInput").val(max_loss);
    } else {
        // nothing here move along XD
    }
}

function max_win_streak() { //longest win streak
    $("#maxWinInput").css("color", "green");
    if (win1 > max_win) {
        max_win++;
        $("#maxWinInput").val(max_win);
    } else {
        // nothing here move along XD
    }
}

function stop_bank() {
    if ($('#profit_stop_check').prop('checked')) {
        var bal_checked = parseFloat($("#pct_balance").val());
        var stop_bank = parseFloat($("#stop_bank").val());
        if (bal_checked >= stop_bank) {
            running = 0;

        }
    }
}

function profit_lock() {
    if ($('#profit_lock').prop('checked')) {
        var bal_checked = parseFloat($("#pct_balance").val()); //profit_lock_val
        var profit_lock_val = parseFloat($("#profit_lock_val").val());
        var checky_bal = bal_checked - profit_lock_val;

        if (current_profit >= profit_lock_val && profit_lock_a == 0) {
            profit_lock_a = 1;
            console.log('profit lock active');
        }

        if (checky_bal <= 0 && profit_lock_a == 1) {
            running = 0;
            console.log('reached bottom');
        }
    }
}

//-------------------------------------- Randomizer function.
function randomizer() {
    if ($('#randomizer_check').prop('checked') && randomizer_count >= 12) {
        randomizer_count = 0;
        randomizing = 1;
        $("button#a_random").click();
        running = 0;
        setTimeout(function() {
            $("button.seed_button").click();
            running = 1;
            randomizing = 0;
        }, 1000);
    }
}

//-------------------------------------- Unused for now but will be used in future updates.
function randomString(length) {
    var chars = "0123456789";
    var string_length = length;
    var randomstring = '';
    for (var i = 0; i < string_length; i++) {
        var rnum = Math.floor(Math.random() * chars.length);
        randomstring += chars.substring(rnum, rnum + 1);
    }
    return randomstring;
}

//--------------------------------------- Local storage functions
function clearItem(key, value) {
    //console.log("Removing [" + key + ":" + value + "]");
    window.localStorage.removeItem(key);
}

function setItem(key, value) {
    //console.log("Storing [" + key + ":" + value + "]");
    window.localStorage.removeItem(key);
    window.localStorage.setItem(key, value);
    //console.log("Return from setItem" + key + ":" + value);
}

function getItem(key) {
    var value;
    //console.log('Retrieving key [' + key + ']');
    value = window.localStorage.getItem(key);
    //console.log("Returning value: " + value);
    return value;
}

//--------------------------------------- store and load functions
function loads() {
    var l1 = getItem('limiter');
    var m1 = getItem('multiplier');
    var r1 = getItem('reset_step');
    var r2 = getItem('reset_value');
    var s1 = getItem('stop_bank');

    $('#limiter').val(l1);
    $('#multiplier').val(m1);
    $('#reset_step').val(r1);
    $('#reset_value').val(r2);
    $('#stop_bank').val(s1);

}

function saves() {

    var limiters = parseFloat($("#limiter").val());
    var multipliers = parseFloat($("#multiplier").val());
    var reset_steps = parseFloat($("#reset_step").val());
    var reset_values = parseFloat($("#reset_value").val());
    var stop_banks = parseFloat($("#stop_bank").val());
    setItem('limiter', limiters);
    setItem('multiplier', multipliers);
    setItem('reset_step', reset_steps);
    setItem('reset_value', reset_values);
    setItem('stop_bank', stop_banks);

}


//--------------------------------------- Used to reset stats
function reset_stats() {

    //setTimeout(function(){ $("#a_hi").trigger('click') },delay_bet);
    reset_check = 1;
    start_balance = parseFloat($("#pct_balance").val());
    won = 0;
    win1 = 0;
    lose1 = 0;
    steps = 0;
    run_round = 0;
    lost = 0;
    max_win = 0;
    $("#maxWinInput").val(max_win);
    max_loss = 0;
    $("#maxLossInput").val(max_loss);
    cBust3 = 0;
    stats_update();
    reset_check = 0;
    var bet_data = [];
    var arr_bets = [];
    var ev_data = [];
    update_graphs();
}



//-------------------------------------- gathers results and increments counters
function results() {
    var results2 = $("div#me .results")[0];
    var result = $(results2).children()[0];
    var betid = $($(result).children(".betid")).text();
    balance = parseFloat($("#pct_balance").val());

    if (betid != last_betid) {
        last_betid = betid;

        max_loss_streak();
        max_win_streak();
        stop_bank();
        profit_lock();

        var win = ($($(result).children(".profit")).text()[0] == "+");
        //console.log('win:' + win + '\n');
        if (win) {
            won++;
            win1++;
            depth(lose1);
            lose1 = 0;
            steps = 0;
            reset_steps = 0;
            winning = 1;
            run_round++;
            betting = 0;
            if ($('#stopwin_check').prop('checked')) { // checks to see if stop on win is checked
                running = 0;
            }
            update_graphs();
            play_sound1();
            popArray();
            randomizer_count++;

        } else {
            win1 = 0;
            lose1++;
            steps++;
            reset_steps++;
            lost++;
            winning = 0;
            run_round++;
            hi_lo = !hi_lo;
            betting = 0;
            update_graphs();
            play_sound2();
            popArray();
            randomizer_count++;
            if (first_run === 0) {
                lose1--;
                steps--;
                run_round--;
                lost--;
                first_run = 1;
            }

        }

    }

}

//-------------------------------------- Invest function
function invest(value) {

    var invest_send = $('<button id="invest_all" style="width:80px;margin-right:10px;border:1px solid" onClick=\'javascript:socket.emit("invest_box", csrf); socket.emit("invest", csrf, "all", ' + value + ');\'></button>');

    $($footer).append(invest_send);
    $("#invest_all").trigger('click');
    invest_send.remove();

    console.log('invested:' + value + '\n');

}

//-------------------------------------- probability and stat's update
function stats_update() {
    //probability
    var ccbust1 = parseFloat($("#pct_chance").val());
    var ccbust2 = parseFloat($("#limiter").val());
    var cBust3 = 0;
    var results = $("div#me .results")[0];
    var result = $(results).children()[0];
    var betid = $($(result).children(".betid")).text();
    balance = parseFloat($("#pct_balance").val());


    cBust1 = 1 - ccbust1 / 100;
    cBust2 = Math.pow(cBust1, ccbust2) * 100;

    if (cBust3 != cBust2) {
        cBust3 = cBust2;

        scientific(cBust2);

        $("#probability").val(cBust2.toFixed(10));
    }

    $("#ebank").val(balance);

    //betsInput ---total bets
    $("#betsInput").val(run_round);

    //current loss length
    $("#c_loss").val(lose1);

    //profitInput ---profit  -- start_bal


    if (betid != last_betid2 || reset_check == 1) {
        last_betid2 = betid;
        current_profit = balance - start_balance;
        $("#profitInput").val(current_profit.toFixed(8));
    }

    win_ratio = ((won / run_round) * 100);
    if (isNaN(win_ratio)) {
        win_ratio = 0;
    }
    if (win_ratio !== 0) {
        win_ratio = win_ratio - ccbust1;
    }

    $("#percentWonInput").val(win_ratio.toFixed(8));

    if ($("#reconnect").is(':visible')) { //Thanks 'eltopo' prevents user timeout.
        $("#reconnect").click();
    }
}

//-------------------------------------- Populates bet array with information then offers to save on bust
function save_to_file() {
    window.webkitRequestFileSystem(window.TEMPORARY, 1024 * 1024, function(fs) {
        fs.root.getFile('open-with-notepad.bin', {
            create: true
        }, function(fileEntry) {
            fileEntry.createWriter(function(fileWriter) {

                var blob = new Blob([arr_bets]);

                fileWriter.addEventListener("writeend", function() {
                    // navigate to file, will download
                    location.href = fileEntry.toURL();
                }, false);

                fileWriter.write(blob);
            }, function() {});
        }, function() {});
    }, function() {});
}


function popArray() { //populate bet array

    if ($('#bet_logging').prop('checked')) {
        var results = $("div#me .results")[0];
        var result = $(results).children()[0];
        var betid = $($(result).children(".betid")).text();
        var c_balance = parseFloat($("#pct_balance").val());
        var c_chance = parseFloat($("#pct_chance").val());
        var arr_bet = parseFloat($("#pct_bet").val());

        arr_bets.push('\n');
        arr_bets.push(gets_date() + '   ');
        arr_bets.push('Bet number:' + run_round + '   ');
        arr_bets.push('betid:' + betid + '   ');
        arr_bet1 = scientific(arr_bet);
        arr_bet2 = parseFloat(arr_bet1).toFixed(8);
        arr_bets.push('bet amount:' + arr_bet2 + '   ');
        arr_bets.push('Balance:' + c_balance + '   ');
        arr_profit = scientific(current_profit);
        arr_profit2 = parseFloat(arr_profit).toFixed(8);
        arr_bets.push('profit:' + arr_profit2 + '   ');
        arr_bets.push('chance:' + c_chance + '   |');
    }

}

//-------------------------------------- Show version in footer
function footer() {
    $footer = $('<div style="position:fixed;bottom:0px;background-color:White;">v' + version_c + '</div>');
    $("body").append($footer);
}

//-------------------------------------- Grabs single instance values
function value_grip() {
    if (start_values_check === 0) {
        start_balance = parseFloat($("#pct_balance").val());
        if (isNaN(start_balance)) {
            console.log('start_balance ...Loading' + '\n');
        } else if (start_balance > 0.00000001) {
            start_values_check = 1;
            console.log('start balance found: ' + start_balance + '\n');
        }
    }

}

//-------------------------------------- Martingale Function
function Martingale() {
    // pass bet value here bet_click(bet_value)
    if (running == 1) {
        if (winning === 1 && betting === 0) {

            randomizer();
            bet_click(reset_bet);

        } else if (winning === 0 && betting === 0) {

            var new_bet = parseFloat($("#pct_bet").val() * $multiplierInput.val());

            randomizer();
            bet_click(new_bet);

        } else {

            //console.log('martingale else');
        }
    }
}

//-------------------------------------- bets from a value passed to it if it has not reached step limiter. Also switch on loss and random hi lo
function bet_click(bet_value) {
    var rndhilo = Math.random() < 0.5 ? 1 : 0;
    var marti_limit = parseFloat($("#limiter").val());
    var marti_reset_value = parseFloat($("#reset_value").val()); //value to reset to
    var marti_reset_step = parseFloat($("#reset_step").val()); //step number to reset to
    var balance_check_1 = parseFloat($("#pct_balance").val());
    var x = $("#step_option").val()

    delay_bet = parseFloat($("#bot_delay_length").val());       

    if (reset_steps == (marti_reset_step - 1) && steps < marti_limit && betting === 0 && running == 1 && $('#resetL_check').prop('checked')) {

        reset_steps = 0;

        if ($('#switch_loss_check').prop('checked') && betting === 0 && running == 1) {
            if (hi_lo) {
                betting = 1;
                var bet = bet_value * marti_reset_value;
                bet = scientific(bet);
                $("#pct_bet").val(bet);

                setTimeout(function() {
                    if (bet > balance_check_1) {
                        bust();
                    } else {
                        $("#a_hi").trigger('click');
                    }
                }, delay_bet);

            } else {
                betting = 1;
                var bet = bet_value * marti_reset_value;
                bet = scientific(bet);
                $("#pct_bet").val(bet);

                setTimeout(function() {
                    if (bet > balance_check_1) {
                        bust();
                    } else {
                        $("#a_lo").trigger('click');
                    }
                }, delay_bet);
            }
        } else if ($('#rstep_opts').prop('checked') && steps < marti_limit && betting === 0 && running == 1) { //rstep_opts
            if (hi_lo) {
                betting = 1;

                var step_option_num = parseFloat($("#option_loss").val());

                if ($('#step_option option:selected').val() == 1) {

                    var bet = (bet_value * marti_reset_value) + step_option_num;
                    bet = scientific(bet);
                    console.log('new bet: ' + bet + ' added: ' + step_option_num);
                    $("#pct_bet").val(bet);

                } else if ($('#step_option option:selected').val() == 2) {

                    var bet = (bet_value * marti_reset_value) - step_option_num;
                    bet = scientific(bet);
                    if (bet < 0) {
                        console.log('Preventing negative number:: bet set to minimum');
                        bet = 0.00000001;
                    }
                    console.log('new bet: ' + bet + ' minus: ' + step_option_num);
                    $("#pct_bet").val(bet);

                }
                setTimeout(function() {
                    if (bet > balance_check_1) {
                        bust();
                    } else {
                        $("#a_hi").trigger('click');
                    }
                }, delay_bet);

            } else {
                betting = 1;
                var step_option_num = parseFloat($("#option_loss").val());

                if ($('#step_option option:selected').val() == 1) {

                    var bet = (bet_value * marti_reset_value) + step_option_num;
                    bet = scientific(bet);
                    console.log('new bet: ' + bet + ' added: ' + step_option_num);
                    $("#pct_bet").val(bet);

                } else if ($('#step_option option:selected').val() == 2) {

                    var bet = (bet_value * marti_reset_value) - step_option_num;
                    bet = scientific(bet);
                    if (bet < 0) {
                        console.log('Preventing negative number:: bet set to minimum');
                        bet = 0.00000001;
                    }
                    console.log('new bet: ' + bet + ' minus: ' + step_option_num);
                    $("#pct_bet").val(bet);

                }

                setTimeout(function() {
                    if (bet > balance_check_1) {
                        bust();
                    } else {
                        $("#a_lo").trigger('click');
                    }
                }, delay_bet);
            }
        } else {

            betting = 1;
            var bet = bet_value * marti_reset_value;
            bet = scientific(bet);
            $("#pct_bet").val(bet);

            setTimeout(function() {
                if (bet > balance_check_1) {
                    bust();
                } else {
                    $("#a_hi").trigger('click');
                }
            }, delay_bet);
        }
    } else if (steps < marti_limit && betting === 0 && running == 1) {
        if ($('#switch_loss_check').prop('checked')) {
            if (hi_lo) {
                betting = 1;
                bet_value = scientific(bet_value);
                $("#pct_bet").val(bet_value);
                setTimeout(function() {
                    if (bet > balance_check_1) {
                        bust();
                    } else {
                        $("#a_hi").trigger('click');
                    }
                }, delay_bet);

            } else {
                betting = 1;
                bet_value = scientific(bet_value);
                $("#pct_bet").val(bet_value);
                setTimeout(function() {
                    if (bet > balance_check_1) {
                        bust();
                    } else {
                        $("#a_lo").trigger('click');
                    }
                }, delay_bet);
            }
        } else {

            betting = 1;
            bet_value = scientific(bet_value);
            $("#pct_bet").val(bet_value);

            setTimeout(function() {
                if (bet > balance_check_1) {
                    bust();
                } else {
                    $("#a_hi").trigger('click');
                }
            }, delay_bet);
        }
    } else if (randomizing == 1) {
        console.log('Randomizing Please wait....');
    } else {
        bust();
    }
}

function bust() {
    log_message('***limit reached***');
    console.log('***limit reached***');
    steps = 0;
    running = 0;
    $("#pct_bet").val(reset_bet);
    play_sound3();
}

//-------------------------Looks at bet depth and passes it to array ready for bar chart.
function depth(x) {
    if (!dep[x]) {
        dep[x] = 1;
    } else {
        dep[x]++;
    }
}

//-------------------------------------- Graphing functions
function generate_graph() {
    var res = [];
    var gb = parseFloat($("#graph_length").val());
    for (var i = 0; i < bet_data.length; ++i) {
        if (res.length >= gb) {
            while (res.length > gb) {
                res.shift();
            }

            res.push([i, bet_data[i]]);

        } else {
            res.push([i, bet_data[i]]);
        }
    }

    return res;
}

function generate_ev_graph() {
    var res = [];
    var gb = parseFloat($("#graph_length").val());
    for (var i = 0; i < ev_data.length; ++i) {
        if (res.length >= gb) {
            while (res.length > gb) {
                res.shift();
            }

            res.push([i, ev_data[i]]);

        } else {
            res.push([i, ev_data[i]]);
        }
    }

    return res;
}

function generate_bar_graph() {
    var res = [];
    for (var i = 0; i < dep.length; ++i) {

        res.push([i, dep[i]]);

    }

    return res;
}

function update_graphs() {
    var g_bal = $('#pct_balance').val();
    var ev_data1 = $("#percentWonInput").val();

    ev_data.push(ev_data1);
    bet_data.push(g_bal);

    var data1 = generate_graph();
    var data2 = generate_ev_graph();

    var data = [{
        data: data1,
        label: "profit",
        yaxis: 1,
        color: 'green',
        lines: {
            show: true
        }
    }, {
        data: data2,
        label: "EV",
        yaxis: 2,
        color: 'red',
        lines: {
            show: true
        }
    }];

    var options = {
        legend: {
            position: "nw",
            noColumns: 2,
            container: $("#chartLegend")
        },
        yaxes: [{

        }, {
            position: "right"
        }]
    };

    var plotb = $.plot("#g_placeholder2", [generate_bar_graph()], {
        series: {
            color: '#cdffcc'
        },
        bars: {
            show: true
        },
        yaxis: {},
        xaxis: {}
    });

    var plot2 = $.plot("#g_placeholder", data, options);

    plotb.setData([generate_bar_graph()]);

    plotb.setupGrid();
    plotb.draw();

}

//---------------------------------------------------------------------------- builds user interface

//-------------------------------------- Opens help html
function basicPopup(url) {
    popupWindow = window.open(url, 'popUpWindow', 'height=500,width=500,left=100,top=100,resizable=yes,scrollbars=yes,toolbar=yes,menubar=no,location=no,directories=no, status=yes');
}

function basicPopup2(url) {
    popupWindow = window.open(url, 'popUpWindow', 'height=620,width=1024,left=100,top=100,resizable=yes,scrollbars=yes,toolbar=no,menubar=no,location=no,directories=no, status=no');
}

function gui() { //

    //-------------------------------------- Invest all and divest all buttons
    $('.button_inner_group:nth(2)').append(      '<button onClick=\'javascript:socket.emit("invest_box", csrf); socket.emit("invest", csrf, "all", $("#invest_code").val());\'>invest all<div class="key">N</div></button>').append(      '<button onClick=\'javascript:socket.emit("invest_box", csrf); socket.emit("divest", csrf, "all", $("#divest_code").val());\'>divest all<div class="key">M</div></button>');

    //-------------------------------------- Options
    var $o_row1 = $('<div class="row"/>');

    //sound_check
    $sound_c = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="sound_check" id="sound_check" /> Play sound on win! </font></div>');
    $o_row1.append($sound_c);

    //sound_check2
    $sound_check2 = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="sound_check2" id="sound_check2" /> Play sound on loss! </font></div>');
    $o_row1.append($sound_check2);

    //sound_check3
    $sound_check3 = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="sound_check3" id="sound_check3"  /> Play sound on bust! </font></div>');
    $o_row1.append($sound_check3);

    //stopwin_check
    $swin_c = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="stopwin_check" id="stopwin_check" /> Stop on win</font></div>');

    //smile_check
    $smile_c = $('<div style="margin-right:10px"><font color="white">type !emote in chat to toggle smileys  </font></div>');
    $o_row1.append($smile_c);

    //switch_loss_check
    $switch_loss_check = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="switch_loss_check" id="switch_loss_check" /> switch hi/lo on loss </font></div>');
    $o_row1.append($switch_loss_check);

    //resetL_check
    $reset_loss_safety = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="resetL_check" id="resetL_check" value="checked" /> check to enable reset step </font></div>');
    $o_row1.append($reset_loss_safety);

    //profit_stop_check
    $profit_stop_check = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="profit_stop_check" id="profit_stop_check" /> stop on bank  </font></div>');
    $o_row1.append($profit_stop_check);

    //randomizer_check
    $randomizer_check = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="randomizer_check" id="randomizer_check" /> randomize every 12  </font></div>');
    $o_row1.append($randomizer_check);

    //bet_logging
    $bet_logging = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="bet_logging" id="bet_logging" /> bet logging enabled  </font></div>');
    $o_row1.append($bet_logging);

    //profit_lock
    $profit_lock = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="profit_lock" id="profit_lock" /> Profit lock </font></div>');
    $o_row1.append($profit_lock);

    //profit_lock_val
    $profit_lock_val = $('<div style="margin-left:10px;margin-right:10px"><font color="white"><input style="border:1px solid; border-color: #505050;" id="profit_lock_val" value="0"/> value to lock as profit </font></div>');
    $o_row1.append($profit_lock_val);

    //graph_length
    $graph_length = $('<div style="margin-left:10px;margin-right:10px"><font color="white"><input style="border:1px solid; border-color: #505050;" id="graph_length" value="200"/> max graph length  </font></div>');
    $o_row1.append($graph_length);

    //bot_delay_length
    $bot_delay_length = $('<div style="margin-left:10px;margin-right:10px"><font color="white"><input style="border:1px solid; border-color: #505050;" id="bot_delay_length" value="0"/> bot delay. 1000 = 1 second  </font></div>');
    $o_row1.append($bot_delay_length);

    $optional_lossInput = $('<form style="margin-left:10px;margin-right:10px" action=""><input style="border:1px solid; border-color: #505050;" id="option_loss" value="0"/><select id="step_option" name="step_option"><option value="1">plus</option><option value="2">minus</option></select><font color="white"> R step opts</font></form>'); 
    $o_row1.append($optional_lossInput);

    //rstep_opts
    $rstep_opts = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="rstep_opts" id="rstep_opts" /> Enable R step opts</font></div>');
    $o_row1.append($rstep_opts);

    //-------------------------------------- builds user interface
    $container = $('<div id="chipper" class="container"/>');
    $container2 = $('<div id="chipper2" class="container"/>');

    var $container2 = $('<div id="chipper2" class="container"/>');
    var $button_group = $('<div style="width:99%;border:2px solid; border-color: #525252;" class="button_group"/>');
    var $options_group = $('<div style="border:2px solid; border-color: #505050;" class="button_group"/>');
    $container.append($button_group);
    //$container2.append($options_group)

    var $martingale_button = $('<button class="button_label chance_toggle" style="margin-top:27px;margin-right:0px;height:65px;;width:70px;color:transparent;background-color:transparent;border:none;"></button>');
    $martingale_button.click(function() {
        //-----
        console.log('button clicked');
        //-----
    });

      
    var $run_div = $('<div background-color:rgba(35,35,35,0.5);border:2px solid; border-color: #999999;" class="button_inner_group"/>');

    //-------------------------------------- Outer UI buttons
      
    $run = $('<button id="c_run" style="color:green;margin-bottom:5px;margin-top:5px;margin-right:2px;height:22px">Go</button>');
    $run.click(function() {
        //-----
        //Start function
        //-----
        reset_bet = parseFloat($("#pct_bet").val());
        running = 1;
        console.log('running = 1' + '\n' + 'Start bet:' + scientific(reset_bet));
    });  
    $run_div.append($run);

    $store = $('<button id="c_run" style="color:blue;margin-bottom:5px;margin-top:5px;margin-right:2px;height:22px">Store</button>');
    $store.click(function() {
        //-----
        saves();
        //-----
    });  
    $run_div.append($store); 

    $load = $('<button id="c_run" style="color:blue;margin-bottom:5px;margin-top:5px;margin-right:2px;height:22px">Load</button>');
    $load.click(function() {
        //-----
        loads();
        //-----
    });  
    $run_div.append($load);      
    $Stop = $('<button id="c_stop" style="color:red;margin-bottom:5px;margin-top:5px;height:22px">Stop</button>');  
    $Stop.click(function() {
        //-----
        //Stop function
        //-----
        running = 0;
        console.log('running = 0' + '\n');
        steps = 0;
    });  
    $run_div.append($Stop);

    $reset = $('<button title="Resets stats" style="margin-right:10px;border:1px solid" id="fleft chatbutton" >reset stats</button>');  
    $reset.click(function() {
        //-----
        reset_stats();
        //----- 
    });  
    $container.append($reset);

    $showhidetrigger3 = $('<button title="Toggles bot graph" style="margin-right:10px;border:1px solid" id="showhidetrigger3" href="#">profit/ev</button>'); //toggle hide for graph
      
    $showhidetrigger3.click(function() {
        $('#chipper3').toggle(500);
        //update_graphs();
        $.plot($("#g_placeholder"), [
            []
        ]);
    });  
    $container.append($showhidetrigger3);

    $showhidetrigger3 = $('<button title="Toggles bot depth graph" style="margin-right:10px;border:1px solid" id="showhidetrigger4" href="#">depth</button>'); //toggle hide for graph
      
    $showhidetrigger3.click(function() {
        $('#chipperb4').toggle(500);
        //update_graphs();
        $.plot($("#g_placeholder2"), [
            []
        ]);
    });  
    $container.append($showhidetrigger3);

    $showhidetrigger13 = $('<button title="Toggles bot ev graph" style="margin-right:10px;border:1px solid" id="showhidetrigger4" href="#">ev</button>'); //toggle hide for graph
      
    $showhidetrigger13.click(function() {
        $('#chipperb5').toggle(500);
        //update_graphs();
        $.plot($("#g_placeholder3"), [
            []
        ]);
    });  
    //$container.append($showhidetrigger13);

    $showhidetrigger4 = $('<button title="Toggles bot option gui" style="margin-right:10px;border:1px solid" id="showhidetrigger4" href="#">options</button>'); //toggle hide for options
      
    $showhidetrigger4.click(function() {
        $('#chipper5').toggle(500);
    });  
    $container.append($showhidetrigger4);

    $showhidetrigger5 = $('<button title="Saves betting data" style="margin-right:10px;border:1px solid" id="showhidetrigger5" href="#">save</button>'); //toggle hide for options
      
    $showhidetrigger5.click(function() {
        save_to_file();
    });  
    $container.append($showhidetrigger5);

    $showhidetrigger6 = $('<button title="Much Help" style="margin-right:10px;border:1px solid" id="showhidetrigger6" href="#">HELP</button>'); //Popup help
      
    $showhidetrigger6.click(function() {

        var help_p = "https://googledrive.com/host/0BywRa_utENFgV0ZBNmdVRTJ0a0k/DD.html ";
        basicPopup(help_p);
    });  
    //$container.append($showhidetrigger6);

    $calculator = $('<button title="Much Help" style="margin-right:10px;border:1px solid" id="calculator" href="#">Calculator</button>'); //Popup help
      
    $calculator.click(function() {

        var calc = "http://sci-calc.comlu.com/ ";
        basicPopup2(calc);
    });  
    //$container.append($calculator);

    $stasis = $('<button title="Stops internal functions" style="margin-right:10px;border:1px solid" id="showhidetrigger6" href="#">Cardiology</button>'); //Popup help
      
    $stasis.click(function() {
        cpr = !cpr;
    });  
    $container.append($stasis);
    /*
    $showhidetrigger7 = $('<button title="Much Help" style="margin-right:10px;border:1px solid" id="showhidetrigger6" href="#">HELP</button>'); //Popup help
      $showhidetrigger7.click(function () {
            randomizer();   
    });
      $container.append($showhidetrigger7); 
*/

    //-------------------------------------- Inner UI input boxes
    var $row1a = $('<div class="row"/>'); ////////////////////////////////////// row 1a

      
    var $limiter = $('<p style="border:1px solid; border-color: #505050;" class="llabel">Steps</p>');  
    $limiterInput = $('<input style="border:1px solid; border-color: #505050;" id="limiter" value="100"/>');  
    var $limiterEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">#</p>');  
    $row1a.append($limiter);  
    $row1a.append($limiterInput);  
    $row1a.append($limiterEnd);

    var $row1b = $('<div class="row"/>'); ////////////////////////////////////// row 1b

      
    var $multiplier = $('<p style="border:1px solid; border-color: #505050;" class="llabel">multiplier</p>');  
    $multiplierInput = $('<input style="border:1px solid; border-color: #505050;" id="multiplier" value="1"/>');
    var $multiplierEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">x</p>');  
    $row1b.append($multiplier);  
    $row1b.append($multiplierInput);
    $row1b.append($multiplierEnd);

    var $row1c = $('<div class="row"/>'); ////////////////////////////////////// row 1c

      
    var $required_bank = $('<p style="border:1px solid; border-color: #505050;" class="llabel">required </p>');  
    $required_bankInput = $('<input style="border:1px solid; border-color: #505050;" id="required_bank" class="readonly" value="0"/>');
    var $required_bankEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">Ð</p>');
    var $required_bankEndb = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">€</p>');  
    $row1c.append($required_bank);  
    $row1c.append($required_bankInput);
    if (site == 1) {
        $row1c.append($required_bankEnd);
    } else if (site === 0) {
        $row1c.append($required_bankEndb);
    }

    var $row1d = $('<div class="row"/>'); ////////////////////////////////////// row 1d


    var $reset_step = $('<p style="border:1px solid; border-color: #505050;" class="llabel">reset step</p>');  
    $reset_stepInput = $('<input style="border:1px solid; border-color: #505050;" id="reset_step" value="7"/>');
    var $reset_stepEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">#</p>'); 
    $row1d.append($reset_step);  
    $row1d.append($reset_stepInput);
    $row1d.append($reset_stepEnd);

    var $row1e = $('<div class="row"/>'); ////////////////////////////////////// row 1e


    var $current_loss = $('<p style="border:1px solid; border-color: #505050;" class="llabel">cur loss</p>');  
    $current_lossInput = $('<input style="border:1px solid; border-color: #505050;" id="c_loss" class="readonly" value="0"/>');
    var $current_lossEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">#</p>');  
    $row1e.append($current_loss);  
    $row1e.append($current_lossInput);
    $row1e.append($current_lossEnd);  
    var $row2a = $('<div class="row"/>'); ////////////////////////////////////////////// row 2a

      
    var $maxLoss = $('<p style="border:1px solid; border-color: #505050;" class="llabel">loss streak</p>');  
    $maxLossInput = $('<input style="border:1px solid; border-color: #505050;" id="maxLossInput" class="readonly" value="0"/>');  
    var $maxLossEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">#</p>');  
    $row2a.append($maxLoss);  
    $row2a.append($maxLossInput);  
    $row2a.append($maxLossEnd);

    var $row2b = $('<div class="row"/>'); ////////////////////////////////////////////// row 2b

      
    var $maxWin = $('<p style="border:1px solid; border-color: #505050;" class="llabel">win streak</p>');  
    $maxWinInput = $('<input style="border:1px solid; border-color: #505050;" id="maxWinInput" class="readonly" value="0"/>');
    var $maxWinEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">#</p>');  
    $row2b.append($maxWin);  
    $row2b.append($maxWinInput);
    $row2b.append($maxWinEnd);

    var $row2c = $('<div class="row"/>'); ////////////////////////////////////// row 2c

      
    var $percentWon = $('<p style="border:1px solid; border-color: #505050;" class="llabel">ev</p>');  
    $percentWonInput = $('<input style="border:1px solid; border-color: #505050;" id="percentWonInput" class="readonly" value="0"/>');
    var $percentWonEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">#</p>');  
    $row2c.append($percentWon);  
    $row2c.append($percentWonInput);
    $row2c.append($percentWonEnd);

    var $row2d = $('<div class="row"/>'); ////////////////////////////////////// row 2d

      
    var $reset_value = $('<p style="border:1px solid; border-color: #505050;" class="llabel">reset mult</p>');  
    $reset_valueInput = $('<input style="border:1px solid; border-color: #505050;" id="reset_value" value="2.1"/>');
    var $reset_valueEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">x</p>');
    var $reset_valueEndb = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">x</p>');  
    $row2d.append($reset_value);  
    $row2d.append($reset_valueInput);
    if (site == 1) {
        $row2d.append($reset_valueEnd); //Ð
    } else if (site === 0) {
        $row2d.append($reset_valueEndb); //€
    }


    var $row3a = $('<div class="row"/>'); ///////////////////////////////// row 3a

      
    var $bets = $('<p style="border:1px solid; border-color: #505050;" class="llabel">total bets</p>');  
    $betsInput = $('<input style="border:1px solid; border-color: #505050;" id="betsInput" class="readonly" value="0"/>');  
    var $betsEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">#</p>');  
    $row3a.append($bets);  
    $row3a.append($betsInput);  
    $row3a.append($betsEnd);

    var $row3b = $('<div class="row"/>'); ///////////////////////////////// row 3b

    var $probability = $('<p style="border:1px solid; border-color: #505050;" class="llabel">probability</p>');  
    $probabilityInput = $('<input style="border:1px solid; border-color: #505050;" id="probability" class="readonly" value="0"/>');  
    var $probabilityEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">%</p>');  
    $row3b.append($probability);  
    $row3b.append($probabilityInput);  
    $row3b.append($probabilityEnd);

    var $row3c = $('<div class="row"/>'); ////////////////////////////////////////////// row 3c

      
    var $profit = $('<p style="border:1px solid; border-color: #505050;" class="llabel">profit</p>');  
    $profitInput = $('<input style="border:1px solid; border-color: #505050;" id="profitInput" class="readonly" value="0.00000000"/>');
    var $profitEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">Ð</p>');
    var $profitEndb = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">€</p>');  
    $row3c.append($profit);  
    $row3c.append($profitInput);
    if (site == 1) {
        $row3c.append($profitEnd); //Ð
    } else if (site === 0) {
        $row3c.append($profitEndb); //€
    }

    var $row3d = $('<div class="row"/>'); ////////////////////////////////////////////// row 3d

      
    var $stop_bank = $('<p style="border:1px solid; border-color: #505050;" class="llabel">stop bank</p>');  
    $stop_bankInput = $('<input style="border:1px solid; border-color: #505050;" id="stop_bank" value="0.00000000"/>');
    var $stop_bankEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">Ð</p>');
    var $stop_bankEndb = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">€</p>');  
    $row3d.append($stop_bank);  
    $row3d.append($stop_bankInput);
    if (site == 1) {
        $row3d.append($stop_bankEnd); //Ð
    } else if (site === 0) {
        $row3d.append($stop_bankEndb); //€
    }

    var $row3e = $('<div class="row"/>'); ////////////////////////////////////////////// row 3e

      
    var $ebank = $('<p style="border:1px solid; border-color: #505050;" class="llabel">bank</p>');  
    $ebankInput = $('<input style="border:1px solid; border-color: #505050;" id="ebank" class="readonly" value="0.00000000"/>');
    var $ebankEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">Ð</p>');
    var $ebankEndb = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">€</p>');  
    $row3e.append($ebank);  
    $row3e.append($ebankInput);
    if (site == 1) {
        $row3e.append($ebankEnd); //Ð
    } else if (site === 0) {
        $row3e.append($ebankEndb); //€
    }

    //-------------------------------------- Graph Div
    var $graphDiv = $('<fieldset id="chipper3" style="margin-left:70px;background-color:rgba(35,35,35,0.9);border:2px solid; border-color: #999999;width:700px;height:200px;margin-right:3px" class="graph-container"><div style="padding: 0;width:700px;height:200px;margin-right:0px" id="g_placeholder" class="graph-placeholder"></div>'); //graph holder

    var $legends = $('</br><div id="chartLegend" style="float:right;margin-right:10px;background-color:rgba(35,35,35,0.5);border:2px solid; border-color: #999999;" ></div>');

    var $graphDiv2 = $('<fieldset id="chipperb4" style="margin-left:70px;background-color:rgba(35,35,35,0.9);border:2px solid; border-color: #999999;width:700px;height:100px;margin-right:3px" class="graph-container2"><div style="padding: 0;width:700px;height:100px;margin-right:0px" id="g_placeholder2" class="graph-placeholder2"></div>'); //graph holder

    var $graphDiv3 = $('<fieldset id="chipperb5" style="margin-left:70px;background-color:rgba(35,35,35,0.9);border:2px solid; border-color: #999999;width:700px;height:100px;margin-right:3px" class="graph-container2"><div style="padding: 0;width:700px;height:100px;margin-right:0px" id="g_placeholder3" class="graph-placeholder3"></div>'); //graph holder

    //-------------------------------------- Putting it all together


    var $fieldset4 = $('<fieldset style="margin-left:33px;margin-right:auto;background-color:rgba(35,35,35,0.5);border:2px solid; border-color: #999999;"/>');
    $fieldset4.append($run_div);

    var $fieldset_o = $('<div id="chipper5" style="margin-top:8px;border:2px solid; border-color: #505050;" class="button_group"/>');
    $fieldset_o.append($o_row1);

    var $fieldset = $('<fieldset style="margin-left:50px;margin-right:2px;margin-top:10px;background-color:rgba(35,35,35,0.5);border:2px solid; border-color: #999999;"/>');
    $fieldset.append($row1a);
    $fieldset.append($row1b);
    $fieldset.append($row1c);
    $fieldset.append($row1d);
    $fieldset.append($row1e);

    var $fieldset2 = $('<fieldset style="margin-left:auto;margin-right:2px;margin-top:10px;background-color:rgba(35,35,35,0.5);border:2px solid; border-color: #999999;"/>');
    $fieldset2.append($row2a);
    $fieldset2.append($row2b);
    $fieldset2.append($row2c);
    $fieldset2.append($row2d);
    $fieldset2.append($fieldset4);

    var $fieldset3 = $('<fieldset style="margin-left:auto;margin-right:2px;margin-top:10px;background-color:rgba(35,35,35,0.5);border:2px solid; border-color: #999999;"/>');
    $fieldset3.append($row3a);
    $fieldset3.append($row3b);
    $fieldset3.append($row3c);
    $fieldset3.append($row3d);
    $fieldset3.append($row3e);

    $button_group.append($fieldset);
    $button_group.append($fieldset2);
    $button_group.append($fieldset3);
    //$button_group.append($martingale_button);

    $button_group.append($graphDiv);
    $button_group.append($legends);
    $button_group.append($graphDiv2);
    //$button_group.append($graphDiv3);
    $button_group.append("<div align='center' style='color:white;font-size:10pt;'>Inkha suite V" + version_c + " </div>");
    $container.append($fieldset_o);

    ///////////////////////////////// chat base buttons ////////////////////////////////////////

    var $chat_send = $('div#chat .chatbase:last-child'); //location of chatbase

    var $chat_button_group = $('<div style="width:675px;background-color:#787878 ;border:2px solid; border-color: #505050;" />');

    $button1 = $('<button title="REALLY DONT PRESS" style="width:80px;margin-right:10px;border:1px solid" id="button1" >DO NOT PRESS</button>');  
    $button1.click(function() {
        alert('ok now the world is gonna end... happy?');
    });  
    //$chat_button_group.append($button1);

    //$chat_send.append($chat_button_group);

    /////////////////////////////////////////////////////////////////////////////////////////////////


    //-------------------------------------- Add ui elements to page
    $(".chatstat").append('<a title="Toggles bot gui" id="showhidetrigger" href="#"><font color="blue">Show Bot</font></a>'); //toggles hide for gui
      
    $(".chatstat").append($container); 
    $(".chatstat").append('<div style="clear:left;"/>');

    //-------------------------------------- Hide Graph and options Div
    $(document).ready(function() { // toggle hide function for graph
        $('#chipper3').hide();
        $('#chipperb4').hide();
        //$('#chipperb5').hide();
        $('#chipper5').hide();
    });

    //-------------------------------------- Add toggle for UI
    $(document).ready(function() { // toggle hide function for gui
        $('#chipper').hide();
        $('a#showhidetrigger').click(function() {
            $('#chipper').toggle(500);
        });
    });

}

//-------------------------------------- grabs date in readable format
function gets_date() {
    var now = new Date();
    var strDateTime = [
        [AddZero(now.getDate()), AddZero(now.getMonth() + 1), now.getFullYear()].join("/"), [AddZero(now.getHours()), AddZero(now.getMinutes())].join(":"), now.getHours() >= 12 ? "PM" : "AM"
    ].join(" ");

    function AddZero(num) {
        return (num >= 0 && num < 10) ? "0" + num : num + "";
    }
    return strDateTime;
}

//-------------------------------------- sleep function
function sleep(milliseconds) {
    var start = new Date().getTime();
    for (var i = 0; i < 1e7; i++) {
        if ((new Date().getTime() - start) > milliseconds) {
            break;
        }
    }
}

//-------------------------------------- scientific notation
function scientific(n) {
    n = String(n);
    var info = /([\d\.]+)e-(\d+)/i.exec(n);
    if (!info) {
        return n;
    }

    var num = info[1].replace('.', ''),
        numDecs = info[2] - 1;
    var output = "0.";
    for (var i = 0; i < numDecs; i++) {
        output += "0";
    }
    output += num;

    return output;
}

//-------------------------------------- starts on page load
$(document).ready(function() {

    which_site();
    console.log('Welcome to the Enhancement suite V' + version_c + '');
    log_message('Welcome to the Enhancement suite V' + version_c + '');
    console.log('\n');
    heart_beat();


});

function total_check() { //logic and check if bot has enough bank for martingale

    if ($multiplierInput !== undefined &&   $limiterInput !== undefined)
        if ($.isNumeric($multiplierInput.val()) && $.isNumeric($limiterInput.val()) && $.isNumeric($('#pct_bet').val())) {

            var total = 0;
            var mult = 1;
            var i;
            var res_val = parseFloat($("#reset_value").val()) - 1;
            var res_step = parseFloat($("#reset_step").val());

            if ($('#resetL_check').prop('checked')) {


                for (i = 0; i < $limiterInput.val(); i++) {

                    total += $('#pct_bet').val() * mult;
                    mult *= $multiplierInput.val();           
                }

                var total2 = total * res_val;
                total += total2;
                $("#required_bank").val(total.toFixed(8));

            } else {

                for (i = 0; i < $limiterInput.val(); i++) {
                    total += $('#pct_bet').val() * mult;
                    mult *= $multiplierInput.val();           
                }
                $("#required_bank").val(total.toFixed(8));
            }

            if (total !== 0 && total < $('#pct_balance').val()) {
                // Good to go           
            } else {
                // not enough balance           
            }      
        } else {
            //something is missing      
        }
}

//-------------------------------------- Post message in the log area
function log_message(message) {
    document.querySelector(".log").innerHTML = (message);
    setInterval(function() {
        document.querySelector(".log").innerHTML = " ";
    }, 6000);
}

//-------------------------------------- Win sound
function play_sound1() {
    if ($('#sound_check').prop('checked')) {
        //snd_alert.pause();
        //snd_beep.pause();
        //coin_drop.play();
        //coin_drop.currentTime = 0;
    } else {
        return;
    }
}

//-------------------------------------- Lose sound
function play_sound2() {
    if ($('#sound_check2').prop('checked')) {
        //snd_alert.pause();
        //coin_drop.pause();
        //snd_beep.play();
        //snd_beep.currentTime = 0;
    } else {
        return;
    }
}

//-------------------------------------- Bust sound
function play_sound3() {
    if ($('#sound_check3').prop('checked')) {
        //snd_beep.pause();
        //coin_drop.pause();
        //snd_alert.play();
        //snd_alert.currentTime = 0;
        //alert("Bot has bust !!");
    } else {
        return;
    }
}