roulette_phone_friendly

roulette_phone_friendly_new

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Greasemonkey 油猴子Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Userscripts ,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         roulette_phone_friendly
// @namespace    http://tampermonkey.net/
// @version      0.2
// @description  roulette_phone_friendly_new
// @author       Salmon
// @match        /^https{0,1}:\/\/((www|my)\.(heroeswm|lordswm)\.(ru|com)|178\.248\.235\.15)\/(roulette).php*/
// @include      /^https{0,1}:\/\/((www|my)\.(heroeswm|lordswm)\.(ru|com)|178\.248\.235\.15)\/(roulette).php*/
// @icon         https://www.google.com/s2/favicons?sz=64&domain=lordswm.com
// @grant        none
// @license      MIT
// ==/UserScript==

(function() {
    'use strict';
    //common styles
    const styledBtn = 'border: none; overflow: hidden; width:350px; margin-bottom: 4px; margin-top: 4px; text-overflow: ellipsis; white-space: nowrap; color: #592c08; font-family: verdana,geneva,arial cyr; position: relative; text-align: center; font-weight: 700; background: url(../i/homeico/art_btn_bg_gold.png) #dab761; background-size: 100% 100%; border-radius: 5px; box-shadow: inset 0 0 0 1px #fce6b0,inset 0 0 0 2px #a78750,0 0 0 1px rgba(0,0,0,.13); line-height: 25px; cursor: pointer; transition: -webkit-filter .15s;transition: filter .15s;'

    //constants

    const createEl = (el, style, innerText, placeholder, type) => {
        let element = document.createElement(el);
        if (style) element.style = style;
        if (innerText) element.innerText = innerText;
        if (placeholder) element.placeholder = placeholder;
        if (type) element.type = type;
        return element;
    }

    let link = [...document.getElementsByTagName('a')];
    link = link.filter(el => el.innerText === 'Прошлая игра');
    if (link[1] === undefined) {
        setTimeout(() => location.reload(), 10000);
        return;
    } else {
        link = link[1].href;
    }

    //show/hide Script panel
    let toogleRouletteScript = JSON.parse(localStorage.getItem('toogleRouletteScript'));
    if (toogleRouletteScript === null) localStorage.setItem('toogleRouletteScript', JSON.stringify(true));
    let toogleShow = toogleRouletteScript;
    const toogleRouletteScriptBtn = createEl('div', 'width: 90px; height: 90px; border-radius: 100%; background: wheat; cursor: pointer; position: absolute; z-index: 99999; top: 110px; left: 5px;');
    toogleRouletteScriptBtn.addEventListener('click', () => {
        toogleShow = !toogleShow;
        localStorage.setItem('toogleRouletteScript', JSON.stringify(toogleShow));
        panel.style.visibility = toogleShow ? 'visible' : 'hidden';
    })
    toogleRouletteScriptBtn.innerHTML = `<div><img style='width: 90px; height: 90px' src='https://cfcdn.lordswm.com/i/new_top/_panelRoulette.png'/></div>`;
    document.body.appendChild(toogleRouletteScriptBtn);

    //Bet value
    let moneyValue = JSON.parse(localStorage.getItem('moneyValue'));
    if (moneyValue === null) localStorage.setItem('moneyValue', JSON.stringify(1000));
    const setMoneyValue = createEl('input', 'height: 25px; width: 350px; border: 1px solid #592c08; border-radius: 5px;', '', 'ставка', 'number');
    const setMoneyValueBtn = createEl('button', styledBtn, 'Задать ставку');
    const setMoneyValueInfoBlock = createEl('div', 'font-weight: bold;', `Ставка: ${moneyValue}`);

    setMoneyValueBtn.addEventListener('click', () => {
        localStorage.setItem('moneyValue', JSON.stringify(setMoneyValue.value));
        location.reload();
    });

    //Bet buttons and inputs
    let betInput = [...document.getElementsByTagName('input')]
    betInput = betInput.filter(el => el.name === 'bet')[0];

    let betType = [...document.getElementsByTagName('input')]
    betType = betType.filter(el => el.name === 'bettype')[0];

    let betBtn = [...document.getElementsByTagName('input')]
    betBtn = betBtn.filter(el => el.value === 'Поставить!')[0];

    //Creating panel element and playstyle buttons
    const panel = createEl('div', 'position: absolute; top: 150px; right: 30px; width: 450px; heigth: 250px; background-color: wheat; padding: 7px; text-align: center;', '');
    panel.style.visibility = toogleShow ? 'visible' : 'hidden';

    const resetBtn = createEl('div', 'width: 40px; height: 40px; cursor: pointer;');
    resetBtn.innerHTML = `<div><img style='width: 40px; height: 40px' src='https://cfcdn.lordswm.com/i/pl_info/btn_reset.png'/></div>`;
    const br = createEl('div', 'border-radius: 7px; border-bottom: 4px solid rgb(218, 183, 97); ; border-top: 4px solid rgb(218, 183, 97); margin: 6px;');

    //Setting Gameplays
    let playOneNum = JSON.parse(localStorage.getItem('playOneNum'));
    if (playOneNum === null) localStorage.setItem('playOneNum', JSON.stringify(true));

    let playToogle = JSON.parse(localStorage.getItem('playToogle'));
    if (playToogle === null) localStorage.setItem('playToogle', JSON.stringify(false));

    const setPlayToogle = createEl('button', styledBtn, `${playToogle ? 'Остановить скрипт' : 'Запустить скрипт'}`)

    setPlayToogle.addEventListener('click', () => {
        let toogle = playToogle;
        localStorage.setItem('playToogle', JSON.stringify(!playToogle));
        location.reload();
    });

    panel.appendChild(setPlayToogle);
    panel.appendChild(setMoneyValue);
    panel.appendChild(setMoneyValueInfoBlock);
    panel.appendChild(setMoneyValueBtn);

    document.body.appendChild(panel);

    //Gameplays
    if (playOneNum === true) {
        let num_to_play_ls = JSON.parse(localStorage.getItem('num_to_play_ls'));
        let num_to_play_count_ls = JSON.parse(localStorage.getItem('num_to_play_count_ls'));

        if (num_to_play_ls == null) {
            localStorage.setItem('num_to_play_ls', JSON.stringify(0));
            location.reload();
        } else if (num_to_play_count_ls == null) {
            localStorage.setItem('num_to_play_count_ls', JSON.stringify(0));
            location.reload();
        }

        const playBlock = createEl('div', 'diplay: flex; flex-directon: column');
        const setNumToPlayInput = createEl('input', 'height: 25px; width: 350px; border: 1px solid #592c08; border-radius: 5px;', '', 'вказати число, яке потрібно ловити', 'number');
        const setNumCountInput = createEl('input', 'height: 25px; width: 350px; border: 1px solid #592c08; border-radius: 5px;', '', 'кількість спінів', 'number');
        const setNumToPlayBtn = createEl('button', styledBtn, 'Зберегти вказане число');
        const setNumCountBtn = createEl('button', styledBtn, 'Зберегти кількість спінів');
        const numToPlayInfoBlock = createEl('div', 'font-weight: bold; font-size: 15px;', '');
        const numsCounterInfoBlock = createEl('div', 'font-weight: bold; font-size: 15px;', '');

        resetBtn.addEventListener('click', () => {
            localStorage.setItem('num_to_play_ls', JSON.stringify(0));
            localStorage.setItem('num_to_play_count_ls', JSON.stringify(0));
            location.reload();
        })

        setNumToPlayBtn.addEventListener('click', () => {
            if (setNumToPlayInput.value.length !== 0) {
                localStorage.setItem('num_to_play_ls', JSON.stringify(Number(setNumToPlayInput.value)));
                location.reload();
            } else {
                alert('Вкажіть число!')
            }
        })

        setNumCountBtn.addEventListener('click', () => {
            if (setNumCountInput.value.length !== 0) {
                localStorage.setItem('num_to_play_count_ls', JSON.stringify(Number(setNumCountInput.value)));
                location.reload();
            } else {
                alert('Вкажіть кількість спінів!')
            }
        })

        playBlock.appendChild(setNumToPlayInput);
        playBlock.appendChild(setNumToPlayBtn);
        playBlock.appendChild(setNumCountInput);
        playBlock.appendChild(setNumCountBtn);
        playBlock.appendChild(numToPlayInfoBlock);
        playBlock.appendChild(numsCounterInfoBlock);

        numToPlayInfoBlock.innerText = `Зараз ловимо число ${num_to_play_ls}`;
        numsCounterInfoBlock.innerText = `Залишилося спінів ${num_to_play_count_ls}`;

        panel.appendChild(playBlock);

        let checkMyBet = [...document.getElementsByTagName('center')];
        checkMyBet = checkMyBet[3].parentElement;
        checkMyBet = checkMyBet.getElementsByTagName('tr')[1].getElementsByTagName('td')[1].innerText;
        if (num_to_play_count_ls <= 0) {
            playToogle = false;
            localStorage.setItem('playToogle', JSON.stringify(playToogle));
        }
        if (playToogle) {
            if (checkMyBet.includes('Straight up')) {
                return;
            } else {
                betInput.value = moneyValue;
                betType.value = `Straight up ${num_to_play_ls}`;
                localStorage.setItem('num_to_play_count_ls', JSON.stringify(Number(num_to_play_count_ls - 1)));
                betBtn.click();
            }
        }
    }

})();