hwm_roulette

hwm_roulette_script

  1. // ==UserScript==
  2. // @name hwm_roulette
  3. // @namespace http://tampermonkey.net/
  4. // @version 3.0
  5. // @description hwm_roulette_script
  6. // @author Salmon
  7. // @match https://my.lordswm.com/roulette.php*
  8. // @match https://www.heroeswm.ru/roulette.php*
  9. // @include https://my.lordswm.com/roulette.php*
  10. // @include https://www.heroeswm.ru/roulette.php*
  11. // @icon https://www.google.com/s2/favicons?sz=64&domain=lordswm.com
  12. // @grant none
  13. // @license MIT
  14. // ==/UserScript==
  15.  
  16. (function() {
  17. 'use strict';
  18. //common styles
  19. 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;'
  20.  
  21. //constants
  22. const nums = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32', '33', '34', '35', '36'];
  23.  
  24. const createEl = (el, style, innerText, placeholder, type) => {
  25. let element = document.createElement(el);
  26. if (style) element.style = style;
  27. if (innerText) element.innerText = innerText;
  28. if (placeholder) element.placeholder = placeholder;
  29. if (type) element.type = type;
  30. return element;
  31. }
  32.  
  33. let link = [...document.getElementsByTagName('a')];
  34. link = link.filter(el => el.innerText === 'Прошлая игра');
  35. if (link[1] === undefined) {
  36. setTimeout(() => location.reload(), 10000);
  37. return;
  38. } else {
  39. link = link[1].href;
  40. }
  41.  
  42. const fetchXml = (callback, link) => {
  43. const xhr = new XMLHttpRequest();
  44. xhr.open('get', link);
  45. xhr.setRequestHeader('Content-type', 'text/html; charset=windows-1251');
  46. if (xhr.overrideMimeType) {
  47. xhr.overrideMimeType('text/html; charset=windows-1251');
  48. }
  49.  
  50. xhr.addEventListener('load', () => {
  51. let parser = new DOMParser();
  52. let doc = parser.parseFromString(xhr.responseText, "text/html");
  53. callback(doc);
  54. })
  55. xhr.send();
  56. }
  57.  
  58. //show/hide Script panel
  59. let toogleRouletteScript = JSON.parse(localStorage.getItem('toogleRouletteScript'));
  60. if (toogleRouletteScript === null) localStorage.setItem('toogleRouletteScript', JSON.stringify(true));
  61. let toogleShow = toogleRouletteScript;
  62. const toogleRouletteScriptBtn = createEl('div', 'width: 90px; height: 90px; border-radius: 100%; background: wheat; cursor: pointer; position: absolute; z-index: 99999; top: 110px; left: 5px;');
  63. toogleRouletteScriptBtn.addEventListener('click', () => {
  64. toogleShow = !toogleShow;
  65. localStorage.setItem('toogleRouletteScript', JSON.stringify(toogleShow));
  66. panel.style.visibility = toogleShow ? 'visible' : 'hidden';
  67. })
  68. toogleRouletteScriptBtn.innerHTML = `<div><img style='width: 90px; height: 90px' src='https://cfcdn.lordswm.com/i/new_top/_panelRoulette.png'/></div>`;
  69. document.body.appendChild(toogleRouletteScriptBtn);
  70.  
  71. //Bet value
  72. let moneyValue = JSON.parse(localStorage.getItem('moneyValue'));
  73. if (moneyValue === null) localStorage.setItem('moneyValue', JSON.stringify(1000));
  74. const setMoneyValue = createEl('input', 'height: 25px; width: 350px; border: 1px solid #592c08; border-radius: 5px;', '', 'ставка', 'number');
  75. const setMoneyValueBtn = createEl('button', styledBtn, 'Задать ставку');
  76. const setMoneyValueInfoBlock = createEl('div', 'font-weight: bold;', `Ставка: ${moneyValue}`);
  77.  
  78. setMoneyValueBtn.addEventListener('click', () => {
  79. localStorage.setItem('moneyValue', JSON.stringify(setMoneyValue.value));
  80. location.reload();
  81. });
  82.  
  83.  
  84. //Resource amount
  85. let resourceAmount = document.getElementById('ResourceAmount').innerText.replace(',', '');
  86. let resourceAmountStop = JSON.parse(localStorage.getItem('resourceAmountStop'));
  87. if (resourceAmountStop === null) localStorage.setItem('resourceAmountStop', JSON.stringify(0));
  88. const setResourceAmountStop = createEl('input', 'height: 25px; width: 350px; border: 1px solid #592c08; border-radius: 5px;', '', 'сумма остановки', 'number');
  89. const setResourceAmountStopBtn = createEl('button', styledBtn, 'Задать сумму остановки');
  90. const toogleResourceAmountStop = JSON.parse(localStorage.getItem('toogleResourceAmountStop'));
  91. if (toogleResourceAmountStop === null) localStorage.setItem('toogleResourceAmountStop', JSON.stringify(false));
  92. const toogleResourceAmountStopBtn = createEl('button', styledBtn, `${toogleResourceAmountStop ? 'Выключить остановку по сумме' : 'Включить остановку по сумме'}`);
  93. const resourceAmountStopInfoBlock = createEl('div', 'font-weight: bold;', `Сумма остановки: ${resourceAmountStop}`);
  94.  
  95. setResourceAmountStopBtn.addEventListener('click', () => {
  96. localStorage.setItem('resourceAmountStop', JSON.stringify(setResourceAmountStop.value));
  97. location.reload();
  98. });
  99.  
  100. toogleResourceAmountStopBtn.addEventListener('click', () => {
  101. localStorage.setItem('toogleResourceAmountStop', JSON.stringify(!toogleResourceAmountStop));
  102. location.reload();
  103. });
  104.  
  105. //Bets sorted by higher bet
  106. let betsAmountHTML = document.getElementsByTagName('table')[17];
  107. let betsAmountBlock = [...betsAmountHTML.getElementsByTagName('tr')];
  108. let label = betsAmountBlock.shift();
  109. betsAmountBlock = betsAmountBlock.sort((a, b) => Number(b.firstChild.innerText.replace(',', '')) - Number(a.firstChild.innerText.replace(',', '')));
  110. betsAmountBlock = betsAmountBlock.reduce((acc, el) => {
  111. acc += `<tr>${el.innerHTML}</tr>`;
  112. return acc;
  113. }, label.innerHTML)
  114. betsAmountHTML.innerHTML = `<tbody>${betsAmountBlock}</tbody>`;
  115.  
  116. //Bet buttons and inputs
  117. let betInput = [...document.getElementsByTagName('input')]
  118. betInput = betInput.filter(el => el.name === 'bet')[0];
  119.  
  120. let betType = [...document.getElementsByTagName('input')]
  121. betType = betType.filter(el => el.name === 'bettype')[0];
  122.  
  123. let betBtn = [...document.getElementsByTagName('input')]
  124. betBtn = betBtn.filter(el => el.value === 'Поставить!')[0];
  125.  
  126. //Creating panel element and playstyle buttons
  127. const panel = createEl('div', 'position: absolute; top: 150px; right: 30px; width: 450px; heigth: 250px; background-color: wheat; padding: 7px; text-align: center;', '');
  128. panel.style.visibility = toogleShow ? 'visible' : 'hidden';
  129.  
  130. const resetBtn = createEl('div', 'width: 40px; height: 40px; cursor: pointer;');
  131. resetBtn.innerHTML = `<div><img style='width: 40px; height: 40px' src='https://cfcdn.lordswm.com/i/pl_info/btn_reset.png'/></div>`;
  132. 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;');
  133.  
  134. //Setting Gameplays
  135. let playOneNum = JSON.parse(localStorage.getItem('playOneNum'));
  136. if (playOneNum === null) localStorage.setItem('playOneNum', JSON.stringify(true));
  137.  
  138. let playMultiNums = JSON.parse(localStorage.getItem('playMultiNums'));
  139. if (playMultiNums === null) localStorage.setItem('playMultiNums', JSON.stringify(false));
  140.  
  141. let playToogle = JSON.parse(localStorage.getItem('playToogle'));
  142. if (playToogle === null) localStorage.setItem('playToogle', JSON.stringify(false));
  143.  
  144. if (Number(resourceAmount) > Number(resourceAmountStop) && toogleResourceAmountStop) {
  145. localStorage.setItem('playToogle', JSON.stringify(false));
  146. };
  147.  
  148. const playStyleLabel = createEl('div', 'text-align: center; font-size: 14px; font-weight: bold; ', `Сейчас включен режим ${playOneNum ? '1 число по кругу' : '4 числа по кругу'}`)
  149. const setPlayOneNum = createEl('button', styledBtn, 'Играть 1 число по кругу');
  150. const setPlayMultiNums = createEl('button', styledBtn, 'Играть 4 числа по кругу');
  151. const setPlayToogle = createEl('button', styledBtn, `${playToogle ? 'Остановить скрипт' : 'Запустить скрипт'}`)
  152.  
  153. setPlayOneNum.addEventListener('click', () => {
  154. localStorage.setItem('playOneNum', JSON.stringify(true));
  155. localStorage.setItem('playMultiNums', JSON.stringify(false));
  156. location.reload();
  157. });
  158.  
  159. setPlayMultiNums.addEventListener('click', () => {
  160. localStorage.setItem('playOneNum', JSON.stringify(false));
  161. localStorage.setItem('playMultiNums', JSON.stringify(true));
  162. location.reload();
  163. });
  164.  
  165. setPlayToogle.addEventListener('click', () => {
  166. let toogle = playToogle;
  167. localStorage.setItem('playToogle', JSON.stringify(!playToogle));
  168. location.reload();
  169. });
  170.  
  171. //History
  172. let hour = new Date(Date.now()).getHours();
  173. let minutes = new Date(Date.now()).getMinutes();
  174. if (hour < 1) hour = '0' + hour;
  175. if (minutes < 10) minutes = '0' + minutes;
  176.  
  177. let toogleShowHistory = JSON.parse(localStorage.getItem('toogleShowHistory'));
  178. if (toogleShowHistory === null) localStorage.setItem('toogleShowHistory', JSON.stringify(false));
  179. let toogleShowHistoryLs = toogleShowHistory;
  180. const showHistoryBtn = createEl('button', styledBtn, `${toogleShowHistoryLs ? 'Скрыть историю' : 'Показать историю'}`);
  181. const clearHistoryBtn = createEl('button', styledBtn, 'Очистить историю');
  182.  
  183. const historyBlock = createEl('div', 'display: flex; flex-direction: column; align-items: center;');
  184. historyBlock.style.display = toogleShowHistoryLs ? 'flex' : 'none';
  185. const historyBet = createEl('div', 'display: flex;');
  186.  
  187. let historyString = JSON.parse(localStorage.getItem('historyString'));
  188. if (historyString === null) localStorage.setItem('historyString', JSON.stringify(historyBlock.innerHTML));
  189.  
  190. showHistoryBtn.addEventListener('click', () => {
  191. toogleShowHistoryLs = !toogleShowHistoryLs;
  192. historyBlock.style.display = toogleShowHistoryLs ? 'flex' : 'none';
  193. localStorage.setItem('toogleShowHistory', JSON.stringify(toogleShowHistoryLs));
  194. showHistoryBtn.innerText = toogleShowHistoryLs ? 'Скрыть историю' : 'Показать историю';
  195. clearHistoryBtn.style.visibility = toogleShowHistoryLs && historyString.length > 0 ? 'visible' : 'hidden';
  196. });
  197.  
  198. clearHistoryBtn.addEventListener('click', () => {
  199. localStorage.setItem('historyString', JSON.stringify(''));
  200. location.reload();
  201. })
  202.  
  203. clearHistoryBtn.style.visibility = toogleShowHistoryLs && historyString.length > 0 ? 'visible' : 'hidden';
  204.  
  205. historyBlock.innerHTML = historyString;
  206.  
  207. panel.appendChild(playStyleLabel);
  208. panel.appendChild(setPlayOneNum);
  209. panel.appendChild(setPlayMultiNums);
  210. panel.appendChild(setPlayToogle);
  211. panel.appendChild(setMoneyValue);
  212. panel.appendChild(setMoneyValueInfoBlock);
  213. panel.appendChild(setMoneyValueBtn);
  214. panel.appendChild(setResourceAmountStop);
  215. panel.appendChild(setResourceAmountStopBtn);
  216. panel.appendChild(resourceAmountStopInfoBlock);
  217. panel.appendChild(toogleResourceAmountStopBtn);
  218.  
  219. document.body.appendChild(panel);
  220.  
  221. //Gameplays
  222. if (playOneNum === true) {
  223. let temporaryNumsArray = JSON.parse(localStorage.getItem('temporaryNumsArray'));
  224. let numsCounter = JSON.parse(localStorage.getItem('numsCounter'));
  225.  
  226. if (numsCounter == null) {
  227. localStorage.setItem('numsCounter', JSON.stringify(0));
  228. location.reload();
  229. }
  230.  
  231. if (!temporaryNumsArray) {
  232. localStorage.setItem('temporaryNumsArray', JSON.stringify(nums));
  233. location.reload();
  234. }
  235.  
  236. const playBlock = createEl('div', 'diplay: flex; flex-directon: column');
  237. const setNumsCounterInput = createEl('input', 'height: 25px; width: 350px; border: 1px solid #592c08; border-radius: 5px;', '', 'количество прокруток всех чисел', 'number');
  238. const setNumsCounterBtn = createEl('button', styledBtn, 'Задать');
  239. const numsCounertInfoBlock = createEl('div', 'font-weight: bold;', '');
  240.  
  241. resetBtn.addEventListener('click', () => {
  242. localStorage.setItem('numsCounter', JSON.stringify(0));
  243. localStorage.setItem('temporaryNumsArray', JSON.stringify(nums));
  244. location.reload();
  245. })
  246.  
  247. playBlock.appendChild(setNumsCounterInput);
  248. playBlock.appendChild(setNumsCounterBtn);
  249. playBlock.appendChild(numsCounertInfoBlock);
  250. playBlock.appendChild(resetBtn);
  251.  
  252. numsCounertInfoBlock.innerText = `Осталось прокруток ${temporaryNumsArray.length} | Следующее число ${temporaryNumsArray.at(0)}`;
  253.  
  254. setNumsCounterBtn.addEventListener('click', () => {
  255. let num = Number(setNumsCounterInput.value);
  256. if (num > 0) {
  257. localStorage.setItem('numsCounter', JSON.stringify(num * nums.length));
  258. let temp = [];
  259. for (let i = 0; i < num; i++) {
  260. temp = [...temp, ...nums];
  261. }
  262. localStorage.setItem('temporaryNumsArray', JSON.stringify(temp));
  263. location.reload();
  264. }
  265. });
  266.  
  267.  
  268. panel.appendChild(playBlock);
  269. panel.appendChild(showHistoryBtn);
  270. panel.appendChild(historyBlock);
  271. panel.appendChild(clearHistoryBtn);
  272.  
  273. let checkMyBet = [...document.getElementsByTagName('center')];
  274. checkMyBet = checkMyBet[3].parentElement;
  275. checkMyBet = checkMyBet.getElementsByTagName('tr')[1].getElementsByTagName('td')[1].innerText;
  276.  
  277. if (playToogle) {
  278. if (checkMyBet.includes('Straight up')) {
  279. return;
  280. } else if (temporaryNumsArray.length && numsCounter > 0) {
  281. let gameLinkId = Number(link.match(/\d+/gi)[0]) + 1;
  282. let gameLink = link.replace(/\d+/gi, gameLinkId);
  283. betInput.value = moneyValue;
  284. betType.value = `Straight up ${temporaryNumsArray[0]}`;
  285. temporaryNumsArray.shift();
  286. localStorage.setItem('temporaryNumsArray', JSON.stringify(temporaryNumsArray));
  287. historyBet.innerHTML = `<a target='_blank' href=${gameLink}>Время:${hour}:${minutes} - баланс: ${resourceAmount}</a>`;
  288. historyBlock.appendChild(historyBet);
  289. localStorage.setItem('historyString', JSON.stringify(historyBlock.innerHTML));
  290. betBtn.click();
  291. } else {
  292. return;
  293. }
  294. }
  295. }
  296.  
  297. if (playMultiNums === true) {
  298. let multiNumsMainArray = JSON.parse(localStorage.getItem('multiNumsMainArray'));
  299. let multiNumsAdditionalArray = JSON.parse(localStorage.getItem('multiNumsAdditionalArray'));
  300. let gameIndex = localStorage.getItem('gameIndex');
  301. let multiNumsCounter = localStorage.getItem('multiNumsCounter');
  302. let multiNumsCounterBase = localStorage.getItem('multiNumsCounterBase');
  303.  
  304. if (multiNumsMainArray === null) {
  305. localStorage.setItem('multiNumsMainArray', JSON.stringify([]));
  306. location.reload();
  307. }
  308.  
  309. if (multiNumsAdditionalArray === null) {
  310. localStorage.setItem('multiNumsAdditionalArray', JSON.stringify([]));
  311. location.reload();
  312. }
  313.  
  314. if (gameIndex === null) {
  315. localStorage.setItem('gameIndex', 0);
  316. location.reload();
  317. }
  318.  
  319. if (multiNumsCounter === null) {
  320. localStorage.setItem('multiNumsCounter', 0);
  321. location.reload();
  322. }
  323.  
  324. if (multiNumsCounterBase === null) {
  325. localStorage.setItem('multiNumsCounterBase', 0);
  326. location.reload();
  327. }
  328.  
  329. const playBlock = createEl('div', 'diplay: flex; flex-directon: column');
  330.  
  331. const setmultiNumsMainArray = createEl('input', 'height: 25px; width: 350px; border: 1px solid #592c08; border-radius: 5px;', '', 'основной массив', 'text');
  332. const setmultiNumsAdditionalArray = createEl('input', 'height: 25px; width: 350px; border: 1px solid #592c08; border-radius: 5px;', '', 'дополнительный массив', 'text');
  333. const setmultiNumsCounter = createEl('input', 'height: 25px; width: 350px; border: 1px solid #592c08; border-radius: 5px;', '', 'число повторений', 'number');
  334. const setMainArrayBtn = createEl('button', styledBtn, 'Задать числа основного массива');
  335. const setAdditionalArrayBtn = createEl('button', styledBtn, 'Задать числа дополнительного массива');
  336. const setMultiNumsCounterBtn = createEl('button', styledBtn, 'Задать числа повторений');
  337.  
  338. const multiNumsMainArrayInfoBlock = createEl('div', 'font-weight: bold;', `Основной массив: ${multiNumsMainArray}`);
  339. const multiNumsAdditionalArrayInfoBlock = createEl('div', 'font-weight: bold;', `Дополнительный массив: ${multiNumsAdditionalArray}`);
  340. const multiNumsCounterInfoBlock = createEl('div', 'font-weight: bold;', `Количество повторений: ${multiNumsCounter}`);
  341.  
  342. setMainArrayBtn.addEventListener('click', () => {
  343. let nums = setmultiNumsMainArray.value;
  344. nums = nums.split(' ');
  345. localStorage.setItem('multiNumsMainArray', JSON.stringify(nums));
  346. location.reload();
  347. });
  348.  
  349. setAdditionalArrayBtn.addEventListener('click', () => {
  350. let nums = setmultiNumsAdditionalArray.value;
  351. nums = nums.split(' ');
  352. localStorage.setItem('multiNumsAdditionalArray', JSON.stringify(nums));
  353. location.reload();
  354. })
  355.  
  356. setMultiNumsCounterBtn.addEventListener('click', () => {
  357. if (!setmultiNumsCounter.value) {
  358. alert('Необходимо указать число');
  359. } else {
  360. localStorage.setItem('multiNumsCounter', Number(setmultiNumsCounter.value));
  361. localStorage.setItem('multiNumsCounterBase', Number(setmultiNumsCounter.value));
  362. location.reload();
  363. }
  364. })
  365.  
  366. resetBtn.addEventListener('click', () => {
  367. localStorage.setItem('multiNumsMainArray', JSON.stringify([]));
  368. localStorage.setItem('multiNumsAdditionalArray', JSON.stringify([]));
  369. localStorage.setItem('gameIndex', 0);
  370. localStorage.setItem('multiNumsCounter', 0);
  371. localStorage.setItem('multiNumsCounterBase', 0);
  372. location.reload();
  373. })
  374.  
  375. playBlock.appendChild(br);
  376. playBlock.appendChild(setmultiNumsMainArray);
  377. playBlock.appendChild(multiNumsMainArrayInfoBlock);
  378. playBlock.appendChild(setMainArrayBtn);
  379. playBlock.appendChild(br.cloneNode(true));
  380. playBlock.appendChild(setmultiNumsAdditionalArray);
  381. playBlock.appendChild(multiNumsAdditionalArrayInfoBlock);
  382. playBlock.appendChild(setAdditionalArrayBtn);
  383. playBlock.appendChild(br.cloneNode(true));
  384. playBlock.appendChild(multiNumsCounterInfoBlock);
  385. playBlock.appendChild(setmultiNumsCounter);
  386. playBlock.appendChild(setMultiNumsCounterBtn);
  387. playBlock.appendChild(resetBtn);
  388. panel.appendChild(playBlock);
  389. panel.appendChild(showHistoryBtn);
  390. panel.appendChild(historyBlock);
  391. panel.appendChild(clearHistoryBtn);
  392.  
  393. let checkMyBet = [...document.getElementsByTagName('center')];
  394. checkMyBet = checkMyBet[3].parentElement;
  395. let checkMyFirstBet = checkMyBet.getElementsByTagName('tr')[1].getElementsByTagName('td')[1].innerText;
  396. let checkMySecondBet = '';
  397. let checkMyThirdBet = '';
  398. let checkMyFourthBet = '';
  399.  
  400. if (checkMyBet.getElementsByTagName('tr')[2]) checkMySecondBet = checkMyBet.getElementsByTagName('tr')[2].getElementsByTagName('td')[1].innerText;
  401. if (checkMyBet.getElementsByTagName('tr')[3]) checkMyThirdBet = checkMyBet.getElementsByTagName('tr')[3].getElementsByTagName('td')[1].innerText;
  402. if (checkMyBet.getElementsByTagName('tr')[4]) checkMyFourthBet = checkMyBet.getElementsByTagName('tr')[4].getElementsByTagName('td')[1].innerText;
  403.  
  404. if (playToogle && Number(multiNumsCounter) > 0) {
  405. if (multiNumsMainArray.length < 4) {
  406. localStorage.setItem('playToogle', JSON.stringify(false));
  407. alert('в основном списке меньше 4 чисел!');
  408. location.reload();
  409. }
  410. if (+gameIndex >= 4) {
  411. let gameLinkId = Number(link.match(/\d+/gi)[0]) + 1;
  412. let gameLink = link.replace(/\d+/gi, gameLinkId);
  413. localStorage.setItem('gameIndex', 0);
  414. localStorage.setItem('multiNumsCounter', Number(multiNumsCounter) - 1);
  415. historyBet.innerHTML = `<a target='_blank' href=${gameLink}>Время:${hour}:${minutes} - баланс: ${resourceAmount}</a>`;
  416. historyBlock.appendChild(historyBet);
  417. localStorage.setItem('historyString', JSON.stringify(historyBlock.innerHTML));
  418. location.reload();
  419. }
  420. const checkLastBet = (doc) => {
  421. let lastNumber = doc.getElementsByTagName('table')[1];
  422. lastNumber = lastNumber.firstChild;
  423. lastNumber = lastNumber.firstChild.getElementsByTagName('b')[0].innerText;
  424.  
  425. if (multiNumsAdditionalArray.indexOf(lastNumber) !== -1) {
  426. multiNumsAdditionalArray = multiNumsAdditionalArray.filter(el => el !== lastNumber);
  427. localStorage.setItem('multiNumsAdditionalArray', JSON.stringify(multiNumsAdditionalArray));
  428. }
  429.  
  430. if (multiNumsMainArray.indexOf(lastNumber) !== -1) {
  431. multiNumsMainArray = multiNumsMainArray.filter(el => el !== lastNumber);
  432. multiNumsMainArray.push(multiNumsAdditionalArray[0]);
  433. localStorage.setItem('multiNumsMainArray', JSON.stringify(multiNumsMainArray));
  434. multiNumsAdditionalArray.shift();
  435. localStorage.setItem('multiNumsAdditionalArray', JSON.stringify(multiNumsAdditionalArray));
  436. localStorage.setItem('multiNumsCounter', Number(multiNumsCounterBase));
  437. location.reload();
  438. }
  439. if (checkMyFirstBet.includes('Straight up') && checkMySecondBet.includes('Straight up') && checkMyThirdBet.includes('Straight up') && checkMyFourthBet.includes('Straight up')) {
  440. return;
  441. } else {
  442. betInput.value = moneyValue;
  443. betType.value = `Straight up ${multiNumsMainArray[gameIndex]}`;
  444. localStorage.setItem('gameIndex', Number(gameIndex) + 1);
  445. betBtn.click();
  446. }
  447. }
  448. fetchXml(checkLastBet, link);
  449. }
  450. }
  451.  
  452. })();