Ремонт лотореи. Централизованная работа через БД. Дополнительная защита от ложных срабатываний.

This commit is contained in:
2023-06-08 21:33:56 +03:00
parent 02c76e76ad
commit cf2aea847a
9 changed files with 477 additions and 780 deletions

View File

@@ -1,30 +1,35 @@
<?php
if(!defined('GAME'))
{
die();
use Core\Config;
use Location\Loto;
use Model\ActionModel;
if (!defined('GAME')) {
die();
}
session_start();
if($u->room['file']=='loto')
{
$titm = mysql_fetch_array(mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.$u->info['id'].'" AND `vals` = "loto" ORDER BY `time` DESC LIMIT 1'));
if($_GET['get']=='20' && isset($titm['id']))
{
if ($u->info['money2']>5)
{
$u->info['money2'] = $u->info['money2'] - 5;
mysql_query('UPDATE `users` SET `money2`= `money2` - 5 WHERE `id` = "'.$u->info['id'].'"');
mysql_query('DELETE FROM `actions` WHERE `uid` = "'.$u->info['id'].'" AND `vals` = "loto"');
}
if ($u->room['file'] != 'loto') {
return;
}
$titm = mysql_fetch_array(mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.$u->info['id'].'" AND `vals` = "loto" AND `time` > '.(time()-24*60*60).' ORDER BY `time` DESC LIMIT 1'));
$loto = new Loto();
$am = new ActionModel($u->info['id']);
$titm = $am->getLastByVals($u->room['file']);
if ($_GET['get'] == '20' && isset($titm['id']) && $u->info['money2'] > 5) {
$u->info['money2'] = $u->info['money2'] - 5;
$u->addEkr(-5);
$am->deleteByVals($u->room['file']);
}
$titm = $am->getLastByValsAndTime($u->room['file'], 24 * 60 * 60);
?>
<TABLE width="100%" cellspacing="0" cellpadding="0">
<tr><td valign="top" id="centerBlockLoto"><div align="center" class="pH3"><h1>Ежедневная Бесплатная Рулетка</h1></div>
<br />
<TABLE width="100%" cellspacing="0" cellpadding="0">
<tr>
<td valign="top" id="centerBlockLoto">
<div align="center" class="pH3"><h1>Ежедневная Бесплатная Рулетка</h1></div>
<br/>
<div id="winDiv">
<p class="testDiv">Ваш приз: <span id="win"></span></p>
@@ -39,230 +44,40 @@ $titm = mysql_fetch_array(mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.
</div>
</div>
<p style="text-align: center">
<?if ($titm==false){?><button class="buttonRuletka" onclick="(<?= json_encode($idve) ?>)" formmethod="get">Запустить игру!</button><?}
else
{?><button class="buttonRuletka" disabled onclick="(<?= json_encode($idve) ?>)" formmethod="get">Приходите Завтра!</button><?}?>
<button class="buttonsElements">Предметы и шансы</button>
<?php if (!$titm): ?>
<button class="buttonRuletka" formmethod="get">Запустить игру!</button>
<?php else: ?>
<button class="buttonRuletka" disabled formmethod="get">
Приходите Завтра!
</button>
<?php endif; ?>
<button class="buttonsElements">Предметы и шансы</button>
<div id="tableItemChange" hidden>
<table>
<tr>
<th colspan="2">Предмет</th>
<!-- <th></th> -->
<th>Шанс выпадения</th>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/pot_base_200_alldmg2_p1k.gif"></td>
<td>Зелье Каменной Стойкости</td>
<td class="chanceItem">Частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/pot_base_200_allmag2_p1k.gif"></td>
<td>Зелье Стража Магии</td>
<td>Частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/pot_base_1000_str.gif"></td>
<td>Топливо для Големов</td>
<td>Частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/pot_base_1000_dex.gif"></td>
<td>Смазка для Големов</td>
<td>Частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/pot_base_1000_inst.gif"></td>
<td>Ускоритель для Големов</td>
<td>Частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/voda112.gif"></td>
<td>Живая Вода</td>
<td>Частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/otvar112.gif"></td>
<td>Отвар Когтей ПГ</td>
<td>Частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/grib112.gif"></td>
<td>Сушеный Мухомор</td>
<td>Частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/food_l11_e.gif"></td>
<td>Жёсткая Рыба</td>
<td class="chanceItem">Нормальное выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/food_l10_e.gif"></td>
<td>Яблоко Раздора</td>
<td>Нормальное выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/food_l5_eng.gif"></td>
<td>Бутерброд -The Best Friend-</td>
<td>Нормальное выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/ambosia_gora.gif"></td>
<td>Амброзия Скучающих Владык</td>
<td>Нормальное выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/poor.gif"></td>
<td>Плохое Железо</td>
<td>Нормальное выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/fine.gif"></td>
<td>Нормальное Железо</td>
<td>Нормальное выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/best.gif"></td>
<td>Хорошее Железо</td>
<td>Нормальное выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/invoke_plain_honor_attack_invul_any1.gif">
</td>
<td>Защита от Нападения [30]</td>
<td>Нормальное выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/joust_rew_s.gif"></td>
<td>Жетон Успеха</td>
<td class="chanceItem">Не частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/ambosia_gora.gif"></td>
<td>Амброзия подмастерья Владык</td>
<td>Не частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/jora10.gif"></td>
<td>Сумка Копателя Катакомб</td>
<td>Редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/jora9.gif"></td>
<td>Сумка Копателя Горы Легиона</td>
<td>Редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/jora7.gif"></td>
<td>Сумка Копателя Бездны</td>
<td>Редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/svitok1.png"></td>
<td>Свиток Репутации Горы Легиона</td>
<td>Редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/zolyaichko.gif"></td>
<td>Яйцо Дракона</td>
<td class="chanceItem">Очень редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/jora8.gif"></td>
<td>Сумка Защиты</td>
<td>Очень редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/svitok1.png"></td>
<td>Свиток Репутации Потерянного Входа</td>
<td>Очень редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/50ekkr.gif"></td>
<td>Чек на 50 Еврокредитов</td>
<td class="chanceItem">Невероятно редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/100ekkr.gif"></td>
<td>Чек на 100 Еврокредитов</td>
<td>Невероятно редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/lootbag_.gif"></td>
<td>Сумка Валлуара Великого</td>
<td>Невероятно редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/jora101.gif"></td>
<td>Улучшенная Сумка Короля</td>
<td>Невероятно редкое выпадение</td>
</tr>
<td><img src="//img.new-combats.tech/i/items/bag1291.gif"></td>
<td>Туманная Сумка</td>
<td>Невероятно редкое выпадение</td>
<?= $loto->getPrizeListByRarity() ?>
</table>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
let img = "<?= Config::get('img2') ?>/i/items";
let prizesArray = <?= json_encode($loto->getPrizes()) ?>;
let arrLiImg = [];
prizesArray.forEach(function (elem, key) {
arrLiImg.push(`<li><img src="${img}/${elem[0]}" title="${elem[1]}" alt="${elem[1]}" type="id${key}"></li>`);
});
var $ulImg = document.getElementsByClassName("list")[0]
var usedID = <?echo $u->info['id'];?>
let ulImg = document.getElementsByClassName("list")[0]
var $arrLiImg = [
'<li><img src="//img.new-combats.tech/i/items/pot_base_200_alldmg2_p1k.gif" type="id0" title="Зелье Каменной Стойкости"></li>',
'<li><img src="//img.new-combats.tech/i/items/pot_base_200_allmag2_p1k.gif" type="id1" title="Зелье Стража Магии"></li>',
'<li><img src="//img.new-combats.tech/i/items/pot_base_1000_str.gif" type="id2" title="Топливо для Големов"></li>',
'<li><img src="//img.new-combats.tech/i/items/pot_base_1000_dex.gif" type="id3" title="Смазка для Големов"></li>',
'<li><img src="//img.new-combats.tech/i/items/pot_base_1000_inst.gif" type="id4" title="Ускоритель для Големов"></li>',
'<li><img src="//img.new-combats.tech/i/items/food_l11_e.gif" type="id5" title="Жесткая Рыба"></li>',
'<li><img src="//img.new-combats.tech/i/items/food_l10_e.gif" type="id6" title="Яблоко Раздора"></li>',
'<li><img src="//img.new-combats.tech/i/items/food_l5_eng.gif" type="id7" title="Бутерброд -The Best Friend-"></li>',
'<li><img src="//img.new-combats.tech/i/items/ambosia_gora.gif" type="id8" title="Амброзия подмастерья Владык"></li>',
'<li><img src="//img.new-combats.tech/i/items/ambosia_gora.gif" type="id9" title="Амброзия Скучающих Владык"></li>',
'<li><img src="//img.new-combats.tech/i/items/poor.gif" type="id10" title="Плохое Железо"></li>',
'<li><img src="//img.new-combats.tech/i/items/fine.gif" type="id11" title="Нормальное Железо"></li>',
'<li><img src="//img.new-combats.tech/i/items/best.gif" type="id12" title="Хорошее Железо"></li>',
'<li><img src="//img.new-combats.tech/i/items/svitok1.png" type="id13" title="Свиток Репутации Потерянного Входа"></li>',
'<li><img src="//img.new-combats.tech/i/items/joust_rew_s.gif" type="id14" title="Жетон Успеха"></li>',
'<li><img src="//img.new-combats.tech/i/items/jora101.gif" type="id15" title="Улучшенная Сумка Короля"></li>',
'<li><img src="//img.new-combats.tech/i/items/jora8.gif" type="id16" title="Сумка Защиты"></li>',
'<li><img src="//img.new-combats.tech/i/items/jora10.gif" type="id17" title="Сумка Копателя Катакомб"></li>',
'<li><img src="//img.new-combats.tech/i/items/jora9.gif" type="id18" title="Сумка Копателя Горы Легиона"></li>',
'<li><img src="//img.new-combats.tech/i/items/jora7.gif" type="id19" title="Сумка Копателя Бездны"></li>',
'<li><img src="//img.new-combats.tech/i/items/lootbag_.gif" type="id20" title="Сумка Валлуара Великого"></li>',
'<li><img src="//img.new-combats.tech/i/items/bag1291.gif" type="id21" title="Туманная Сумка"></li>',
'<li><img src="//img.new-combats.tech/i/items/50ekkr.gif" type="id22" title="Чек на 50 Еврокредитов"></li>',
'<li><img src="//img.new-combats.tech/i/items/100ekkr.gif" type="id23" title="Чек на 100 Еврокредитов"></li>',
'<li><img src="//img.new-combats.tech/i/items/zolyaichko.gif" type="id24" title="Яйцо Дракона"></li>',
'<li><img src="//img.new-combats.tech/i/items/invoke_plain_honor_attack_invul_any1.gif" type="id25" title="Защита от Нападения [30]"></li>',
'<li><img src="//img.new-combats.tech/i/items/svitok1.png" type="id26" title="Свиток Репутации Горы Легиона"></li>',
'<li><img src="//img.new-combats.tech/i/items/voda112.gif" type="id27" title="Живая Вода"></li>',
'<li><img src="//img.new-combats.tech/i/items/otvar112.gif" type="id28" title="Отвар Когтей ПГ"></li>',
'<li><img src="//img.new-combats.tech/i/items/grib112.gif" type="id29" title="Сушеный Мухомор"></li>'
]
let finallyLiImg = arrLiImg.sort(() => 0.5 - Math.random())
function shuffle (array) {
var currentIndex = array.length, temporaryValue, randomIndex ;
while (0 != currentIndex) {
randomIndex = Math.floor(Math.random() * currentIndex);
currentIndex -= 1;
temporaryValue = array[currentIndex];
array[currentIndex] = array[randomIndex];
array[randomIndex] = temporaryValue;
}
return array;
}
var $finallyLiImg = shuffle($arrLiImg)
for (let key of $finallyLiImg) {
var $htmlElementsMessage = new DOMParser().parseFromString(key, "text/html").getElementsByTagName("li")[0]
$ulImg.append($htmlElementsMessage)
for (let key of finallyLiImg) {
let htmlElementsMessage = new DOMParser().parseFromString(key, "text/html").getElementsByTagName("li")[0]
ulImg.append(htmlElementsMessage)
}
var $button = document.getElementsByClassName("buttonRuletka")[0]
@@ -271,12 +86,10 @@ $titm = mysql_fetch_array(mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.
var $wrapper = document.getElementsByClassName("wraper")[0]
var $imgWin = document.getElementById("imgWin")
// $winWindow.style.top = `${$wrapper.offsetTop - 70}px`
// $winWindow.style.left = `${($wrapper.offsetWidth / 2) - 326}px`
$wrapper.style.marginTop = "110px"
$winWindow.hidden = true
var timeOutWin
var timeOutWin
$(document).ready(function () {
for (i = 0; i < 3; i++) {
@@ -298,9 +111,9 @@ $titm = mysql_fetch_array(mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.
var response = await fetch("/lotowork.php", {
method: "POST",
body: usedID
body: <?= $u->info['id'] ?>
})
$('.window').css({
right: "0"
})
@@ -311,7 +124,7 @@ $titm = mysql_fetch_array(mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.
var textFromResponse = await response.text()
var resultRegexp = textFromResponse.match(/\b[0-9]{0,2}\b/);
var idItem = '';
if (resultRegexp && resultRegexp[0] && resultRegexp[0] >= 0 && resultRegexp[0] <= 29) {
idItem = resultRegexp[0];
} else {
@@ -327,13 +140,13 @@ $titm = mysql_fetch_array(mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.
$winImg = $('.list li:eq(' + i + ')')[0]
}
}
$('.window').animate({
right: elemRul - 452.5
}, 10000, () => {
setTimeout( () => {
setTimeout(() => {
var idThing = $winImg.children[0].getAttribute("type")
var titleThing = $winImg.children[0].getAttribute("title")
$wrapper.style.marginTop = "0px"
@@ -347,15 +160,15 @@ $titm = mysql_fetch_array(mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.
var $img = document.createElement("img")
$img.src = $winImg.children[0].getAttribute("src")
$imgWin.append($img)
timeOutWin = setTimeout( () => {
timeOutWin = setTimeout(() => {
$imgWin.innerHTML = ""
$winWindow.hidden = true
$wrapper.style.marginTop = "110px"
}, 10000)
}, 300)
})
// });
// });
}
});
@@ -370,12 +183,11 @@ $titm = mysql_fetch_array(mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.
}
</script>
<style>
#centerBlockLoto {
display: flex;
flex-direction: column;
}
* {
padding: 0;
margin: 0;
@@ -386,9 +198,9 @@ $titm = mysql_fetch_array(mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.
display: inline-block;
float: left;
}
#tableItemChange table {
font-family: "Lucida Sans Unicode", "Lucida Grande", Sans-Serif;
font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif;
font-size: 14px;
text-align: center;
margin: auto;
@@ -400,7 +212,7 @@ $titm = mysql_fetch_array(mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.
border-collapse: collapse;
border-color: rgb(47, 1, 1);
padding: 3px 5px;
}
}
#tableItemChange table tr th {
font-size: 16px;
@@ -429,7 +241,7 @@ $titm = mysql_fetch_array(mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.
position: relative;
width: 25000px;
height: 82px;
right: 0px;
right: 0;
}
.wraper {
@@ -456,6 +268,7 @@ $titm = mysql_fetch_array(mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.
width: 75px;
height: 75px;
}
.arrowup {
position: absolute;
bottom: 0;
@@ -479,6 +292,7 @@ $titm = mysql_fetch_array(mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.
border-left: 5px solid transparent;
border-right: 5px solid transparent;
}
.buttonRuletka {
font-size: 17px;
padding: 5px;
@@ -487,9 +301,11 @@ $titm = mysql_fetch_array(mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.
background: rgba(0, 149, 25, 0.33);
margin: 10px 0;
}
.buttonRuletka:hover, .buttonsElements:hover {
background: rgba(0, 102, 149, 0.33);
}
#winDiv {
text-align: center;
border-radius: 3px;
@@ -498,46 +314,71 @@ $titm = mysql_fetch_array(mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.
margin: 10px auto 5px;
padding: 7px;
}
.testDiv {
font-size: 16px;
}
#win {
font-weight: 600;
}
</style>
<td width="50" valign="top">
<TABLE cellspacing="0" cellpadding="0"><TD width="100%">&nbsp;</TD><TD>
<table border="0" cellpadding="0" cellspacing="0">
<tr align="right" valign="top">
<td>
<!-- -->
<?= $goLis; ?>
<!-- -->
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td nowrap="nowrap">
<tr>
<td bgcolor="#D3D3D3"><img src="//img.new-combats.tech/i/move/links.gif" width="9" height="7" /></td>
<td bgcolor="#D3D3D3" nowrap><a href="#" id="greyText" class="menutop" onclick="location='main.php?loc=1.180.0.9&rnd=<?= $code; ?>';" title="<?php thisInfRm('1.180.0.9',1); ?>">Центральная площадь</a></td>
</tr>
<tr>
<td bgcolor="#D3D3D3"><img src="//img.new-combats.tech/i/move/links.gif" width="9" height="7" /></td>
<td bgcolor="#D3D3D3" nowrap><a href="#" id="greyText" class="menutop" onclick="location='main.php?loc=1.180.0.449&rnd=<?= $code; ?>';" title="<?php thisInfRm('1.180.0.449',1); ?>">Платная Комната</a></td>
</td>
</tr>
</td>
</tr>
</table>
</td></table>
</td></table>
<br/>
</td>
</table>
<br>
<div id="textgo" style="visibility:hidden;"></div>
<?php
}
?>
<td width="50" valign="top">
<TABLE cellspacing="0" cellpadding="0">
<tr>
<TD width="100%">&nbsp;</TD>
<TD>
<table border="0" cellpadding="0" cellspacing="0">
<tr align="right" valign="top">
<td>
<?= $goLis; ?>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td nowrap="nowrap">
<tr>
<td bgcolor="#D3D3D3">
<img src="<?= Config::get('img2') ?>/i/move/links.gif" width="9"
height="7">
</td>
<td bgcolor="#D3D3D3" nowrap>
<a
href="#"
id="greyText"
class="menutop"
onclick="location='main.php?loc=1.180.0.9&rnd=<?= PassGen::intCode(
) ?>';"
title="<?php thisInfRm('1.180.0.9', 1); ?>">
Центральная площадь
</a>
</td>
</tr>
<tr>
<td bgcolor="#D3D3D3">
<img src="<?= Config::get('img2') ?>/i/move/links.gif" width="9"
height="7">
</td>
<td bgcolor="#D3D3D3" nowrap>
<a
href="#"
id="greyText"
class="menutop"
onclick="location='main.php?loc=1.180.0.449&rnd=<?= PassGen::intCode(
) ?>';"
title="<?php thisInfRm('1.180.0.449', 1); ?>">
Платная Комната
</a>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</TABLE>
</td>
</tr>
</table>
<br><br>
<div id="textgo" style="visibility:hidden;"></div>

View File

@@ -1,17 +1,24 @@
<?php
if(!defined('GAME'))
{
die();
use Core\Config;
use Location\Loto;
if (!defined('GAME')) {
die();
}
session_start();
if ($u->room['file'] != 'loto2') {
return;
}
$loto = new Loto();
if($u->room['file']=='loto2')
{
?>
<TABLE width="100%" cellspacing="0" cellpadding="0">
<tr><td valign="top" id="centerBlockLoto"><div align="center" class="pH3"><h1>Платная Рулетка</h1></div>
<br />
<TABLE width="100%" cellspacing="0" cellpadding="0">
<tr>
<td valign="top" id="centerBlockLoto">
<div align="center" class="pH3"><h1>Платная Рулетка</h1></div>
<br/>
<div id="winDiv">
<p class="testDiv">Ваш приз: <span id="win"></span></p>
@@ -25,244 +32,51 @@ if($u->room['file']=='loto2')
<ul class="list"></ul>
</div>
</div>
<p id="ekrMessage">Стоимость платной прокрутки - 5 Еврокредитов! У Вас в наличии - <b id="ekr">---</b> Екр.<br>
<?if ($u->info['money2']>=5){?><button class="buttonRuletka" onclick="(<?= json_encode($idve) ?>)" formmethod="get">Запустить игру!</button><?}
else
{}?>
<button class="buttonsElements">Предметы и шансы</button>
<p id="ekrMessage">Стоимость платной прокрутки - 5 Еврокредитов! У Вас в наличии - <b id="ekr">---</b>
Екр.<br>
<?php if ($u->info['money2'] >= 5): ?>
<button class="buttonRuletka" formmethod="get">Запустить игру!</button>
<?php endif; ?>
<button class="buttonsElements">Предметы и шансы</button>
<div id="tableItemChange" hidden>
<table>
<tr>
<th colspan="2">Предмет</th>
<!-- <th></th> -->
<th>Шанс выпадения</th>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/pot_base_200_alldmg2_p1k.gif"></td>
<td>Зелье Каменной Стойкости</td>
<td class="chanceItem">Частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/pot_base_200_allmag2_p1k.gif"></td>
<td>Зелье Стража Магии</td>
<td>Частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/pot_base_1000_str.gif"></td>
<td>Топливо для Големов</td>
<td>Частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/pot_base_1000_dex.gif"></td>
<td>Смазка для Големов</td>
<td>Частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/pot_base_1000_inst.gif"></td>
<td>Ускоритель для Големов</td>
<td>Частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/voda112.gif"></td>
<td>Живая Вода</td>
<td>Частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/otvar112.gif"></td>
<td>Отвар Когтей ПГ</td>
<td>Частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/grib112.gif"></td>
<td>Сушеный Мухомор</td>
<td>Частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/food_l11_e.gif"></td>
<td>Жёсткая Рыба</td>
<td class="chanceItem">Нормальное выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/food_l10_e.gif"></td>
<td>Яблоко Раздора</td>
<td>Нормальное выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/food_l5_eng.gif"></td>
<td>Бутерброд -The Best Friend-</td>
<td>Нормальное выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/ambosia_gora.gif"></td>
<td>Амброзия Скучающих Владык</td>
<td>Нормальное выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/poor.gif"></td>
<td>Плохое Железо</td>
<td>Нормальное выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/fine.gif"></td>
<td>Нормальное Железо</td>
<td>Нормальное выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/best.gif"></td>
<td>Хорошее Железо</td>
<td>Нормальное выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/invoke_plain_honor_attack_invul_any1.gif">
</td>
<td>Защита от Нападения [30]</td>
<td>Нормальное выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/joust_rew_s.gif"></td>
<td>Жетон Успеха</td>
<td class="chanceItem">Не частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/ambosia_gora.gif"></td>
<td>Амброзия подмастерья Владык</td>
<td>Не частое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/jora10.gif"></td>
<td>Сумка Копателя Катакомб</td>
<td>Редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/jora9.gif"></td>
<td>Сумка Копателя Горы Легиона</td>
<td>Редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/jora7.gif"></td>
<td>Сумка Копателя Бездны</td>
<td>Редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/svitok1.png"></td>
<td>Свиток Репутации Горы Легиона</td>
<td>Редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/zolyaichko.gif"></td>
<td>Яйцо Дракона</td>
<td class="chanceItem">Очень редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/jora8.gif"></td>
<td>Сумка Защиты</td>
<td>Очень редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/svitok1.png"></td>
<td>Свиток Репутации Потерянного Входа</td>
<td>Очень редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/50ekkr.gif"></td>
<td>Чек на 50 Еврокредитов</td>
<td class="chanceItem">Невероятно редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/100ekkr.gif"></td>
<td>Чек на 100 Еврокредитов</td>
<td>Невероятно редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/lootbag_.gif"></td>
<td>Сумка Валлуара Великого</td>
<td>Невероятно редкое выпадение</td>
</tr>
<tr>
<td><img src="//img.new-combats.tech/i/items/jora101.gif"></td>
<td>Улучшенная Сумка Короля</td>
<td>Невероятно редкое выпадение</td>
</tr>
<td><img src="//img.new-combats.tech/i/items/bag1291.gif"></td>
<td>Туманная Сумка</td>
<td>Невероятно редкое выпадение</td>
<?= $loto->getPrizeListByRarity() ?>
</table>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
let img = "<?= Config::get('img2') ?>/i/items";
let prizesArray = <?= json_encode($loto->getPrizes()) ?>;
let arrLiImg = [];
prizesArray.forEach(function (elem, key) {
arrLiImg.push(`<li><img src="${img}/${elem[0]}" title="${elem[1]}" alt="${elem[1]}" type="id${key}"></li>`);
});
var $ulImg = document.getElementsByClassName("list")[0]
var usedID = <?echo $u->info['id'];?>
let ulImg = document.getElementsByClassName("list")[0]
var $ekrB = document.getElementById("ekr")
let ekrB = document.getElementById("ekr")
var testQ = 0
run()
async function run () {
var response = await fetch("/lotoworkekr.php", {
async function run() {
let response = await fetch("/lotoworkekr.php", {
method: "POST",
body: "ekr"
})
var ekrRes = await response.text()
$ekrB.textContent = ekrRes
ekrB.textContent = await response.text()
}
var $arrLiImg = [
'<li><img src="//img.new-combats.tech/i/items/pot_base_200_alldmg2_p1k.gif" type="id0" title="Зелье Каменной Стойкости"></li>',
'<li><img src="//img.new-combats.tech/i/items/pot_base_200_allmag2_p1k.gif" type="id1" title="Зелье Стража Магии"></li>',
'<li><img src="//img.new-combats.tech/i/items/pot_base_1000_str.gif" type="id2" title="Топливо для Големов"></li>',
'<li><img src="//img.new-combats.tech/i/items/pot_base_1000_dex.gif" type="id3" title="Смазка для Големов"></li>',
'<li><img src="//img.new-combats.tech/i/items/pot_base_1000_inst.gif" type="id4" title="Ускоритель для Големов"></li>',
'<li><img src="//img.new-combats.tech/i/items/food_l11_e.gif" type="id5" title="Жесткая Рыба"></li>',
'<li><img src="//img.new-combats.tech/i/items/food_l10_e.gif" type="id6" title="Яблоко Раздора"></li>',
'<li><img src="//img.new-combats.tech/i/items/food_l5_eng.gif" type="id7" title="Бутерброд -The Best Friend-"></li>',
'<li><img src="//img.new-combats.tech/i/items/ambosia_gora.gif" type="id8" title="Амброзия подмастерья Владык"></li>',
'<li><img src="//img.new-combats.tech/i/items/ambosia_gora.gif" type="id9" title="Амброзия Скучающих Владык"></li>',
'<li><img src="//img.new-combats.tech/i/items/poor.gif" type="id10" title="Плохое Железо"></li>',
'<li><img src="//img.new-combats.tech/i/items/fine.gif" type="id11" title="Нормальное Железо"></li>',
'<li><img src="//img.new-combats.tech/i/items/best.gif" type="id12" title="Хорошее Железо"></li>',
'<li><img src="//img.new-combats.tech/i/items/svitok1.png" type="id13" title="Свиток Репутации Потерянного Входа"></li>',
'<li><img src="//img.new-combats.tech/i/items/joust_rew_s.gif" type="id14" title="Жетон Успеха"></li>',
'<li><img src="//img.new-combats.tech/i/items/jora101.gif" type="id15" title="Улучшенная Сумка Короля"></li>',
'<li><img src="//img.new-combats.tech/i/items/jora8.gif" type="id16" title="Сумка Защиты"></li>',
'<li><img src="//img.new-combats.tech/i/items/jora10.gif" type="id17" title="Сумка Копателя Катакомб"></li>',
'<li><img src="//img.new-combats.tech/i/items/jora9.gif" type="id18" title="Сумка Копателя Горы Легиона"></li>',
'<li><img src="//img.new-combats.tech/i/items/jora7.gif" type="id19" title="Сумка Копателя Бездны"></li>',
'<li><img src="//img.new-combats.tech/i/items/lootbag_.gif" type="id20" title="Сумка Валлуара Великого"></li>',
'<li><img src="//img.new-combats.tech/i/items/bag1291.gif" type="id21" title="Туманная Сумка"></li>',
'<li><img src="//img.new-combats.tech/i/items/50ekkr.gif" type="id22" title="Чек на 50 Еврокредитов"></li>',
'<li><img src="//img.new-combats.tech/i/items/100ekkr.gif" type="id23" title="Чек на 100 Еврокредитов"></li>',
'<li><img src="//img.new-combats.tech/i/items/zolyaichko.gif" type="id24" title="Яйцо Дракона"></li>',
'<li><img src="//img.new-combats.tech/i/items/invoke_plain_honor_attack_invul_any1.gif" type="id25" title="Защита от Нападения [30]"></li>',
'<li><img src="//img.new-combats.tech/i/items/svitok1.png" type="id26" title="Свиток Репутации Горы Легиона"></li>',
'<li><img src="//img.new-combats.tech/i/items/voda112.gif" type="id27" title="Живая Вода"></li>',
'<li><img src="//img.new-combats.tech/i/items/otvar112.gif" type="id28" title="Отвар Когтей ПГ"></li>',
'<li><img src="//img.new-combats.tech/i/items/grib112.gif" type="id29" title="Сушеный Мухомор"></li>'
]
let finallyLiImg = arrLiImg.sort(() => 0.5 - Math.random())
function shuffle (array) {
var currentIndex = array.length, temporaryValue, randomIndex ;
while (0 != currentIndex) {
randomIndex = Math.floor(Math.random() * currentIndex);
currentIndex -= 1;
temporaryValue = array[currentIndex];
array[currentIndex] = array[randomIndex];
array[randomIndex] = temporaryValue;
}
return array;
}
var $finallyLiImg = shuffle($arrLiImg)
for (let key of $finallyLiImg) {
var $htmlElementsMessage = new DOMParser().parseFromString(key, "text/html").getElementsByTagName("li")[0]
$ulImg.append($htmlElementsMessage)
for (let key of finallyLiImg) {
let htmlElementsMessage = new DOMParser().parseFromString(key, "text/html").getElementsByTagName("li")[0];
ulImg.append(htmlElementsMessage)
}
var $button = document.getElementsByClassName("buttonRuletka")[0]
@@ -274,7 +88,7 @@ if($u->room['file']=='loto2')
$wrapper.style.marginTop = "110px"
$winWindow.hidden = true
var timeOutWin
var timeOutWin
$(document).ready(function () {
for (i = 0; i < 3; i++) {
@@ -293,7 +107,7 @@ if($u->room['file']=='loto2')
$imgWin.innerHTML = ""
$button.textContent = "Ожидание..."
$button.disabled = true
$('.window').css({
right: "0"
})
@@ -301,16 +115,16 @@ if($u->room['file']=='loto2')
border: '4px solid transparent'
})
var response = await fetch("/lotoworkekr.php", {
method: "POST",
body: usedID
body: <?= $u->info['id'] ?>
})
var textFromResponse = await response.text()
var resultRegexp = textFromResponse.match(/\b[0-9]{0,2}\b/);
var idItem = '';
if (resultRegexp && resultRegexp[0] && resultRegexp[0] >= 0 && resultRegexp[0] <= 29) {
idItem = resultRegexp[0];
} else {
@@ -326,13 +140,13 @@ if($u->room['file']=='loto2')
$winImg = $('.list li:eq(' + i + ')')[0]
}
}
$('.window').animate({
right: elemRul - 452.5
}, 10000, () => {
setTimeout( () => {
setTimeout(() => {
var idThing = $winImg.children[0].getAttribute("type")
var titleThing = $winImg.children[0].getAttribute("title")
$button.disabled = false
@@ -346,15 +160,15 @@ if($u->room['file']=='loto2')
var $img = document.createElement("img")
$img.src = $winImg.children[0].getAttribute("src")
$imgWin.append($img)
timeOutWin = setTimeout( () => {
timeOutWin = setTimeout(() => {
$imgWin.innerHTML = ""
$winWindow.hidden = true
$wrapper.style.marginTop = "110px"
}, 10000)
}, 300)
})
// }) ;
// }) ;
}
});
@@ -369,12 +183,11 @@ if($u->room['file']=='loto2')
}
</script>
<style>
#centerBlockLoto {
display: flex;
flex-direction: column;
}
* {
padding: 0;
margin: 0;
@@ -385,9 +198,9 @@ if($u->room['file']=='loto2')
display: inline-block;
float: left;
}
#tableItemChange table {
font-family: "Lucida Sans Unicode", "Lucida Grande", Sans-Serif;
font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif;
font-size: 14px;
text-align: center;
margin: auto;
@@ -399,7 +212,7 @@ if($u->room['file']=='loto2')
border-collapse: collapse;
border-color: rgb(47, 1, 1);
padding: 3px 5px;
}
}
#tableItemChange table tr th {
font-size: 16px;
@@ -428,7 +241,7 @@ if($u->room['file']=='loto2')
position: relative;
width: 25000px;
height: 82px;
right: 0px;
right: 0;
}
.wraper {
@@ -455,6 +268,7 @@ if($u->room['file']=='loto2')
width: 75px;
height: 75px;
}
.arrowup {
position: absolute;
bottom: 0;
@@ -480,6 +294,7 @@ if($u->room['file']=='loto2')
border-left: 5px solid transparent;
border-right: 5px solid transparent;
}
.buttonRuletka {
font-size: 17px;
padding: 5px;
@@ -488,9 +303,11 @@ if($u->room['file']=='loto2')
background: rgba(0, 149, 25, 0.33);
margin: 10px 0;
}
.buttonRuletka:hover, .buttonsElements:hover {
background: rgba(0, 102, 149, 0.33);
}
#winDiv {
text-align: center;
border-radius: 3px;
@@ -499,12 +316,15 @@ if($u->room['file']=='loto2')
margin: 10px auto 5px;
padding: 7px;
}
.testDiv {
font-size: 16px;
}
#win {
font-weight: 600;
}
#ekrMessage {
text-align: center;
font-size: 16px;
@@ -512,31 +332,45 @@ if($u->room['file']=='loto2')
}
</style>
<td width="50" valign="top">
<TABLE cellspacing="0" cellpadding="0"><TD width="100%">&nbsp;</TD><TD>
<table border="0" cellpadding="0" cellspacing="0">
<tr align="right" valign="top">
<td>
<!-- -->
<?= $goLis; ?>
<!-- -->
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td nowrap="nowrap">
<tr>
<td bgcolor="#D3D3D3"><img src="//img.new-combats.tech/i/move/links.gif" width="9" height="7" /></td>
<td bgcolor="#D3D3D3" nowrap><a href="#" id="greyText" class="menutop" onclick="location='main.php?loc=1.180.0.371&rnd=<?= $code; ?>';" title="<?php thisInfRm('1.180.0.371',1); ?>">Бесплатное Лото</a></td>
</tr>
</td>
</tr>
</table>
</td></table>
</td></table>
<br/>
</td>
</table>
<br>
<div id="textgo" style="visibility:hidden;"></div>
<?php
}
?>
<td width="50" valign="top">
<TABLE cellspacing="0" cellpadding="0">
<tr>
<TD width="100%">&nbsp;</TD>
<TD>
<table border="0" cellpadding="0" cellspacing="0">
<tr align="right" valign="top">
<td>
<?= $goLis; ?>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td nowrap="nowrap"></td>
</tr>
<tr>
<td bgcolor="#D3D3D3">
<img src="<?= Config::get('img2') ?>/i/move/links.gif" width="9"
height="7">
</td>
<td bgcolor="#D3D3D3" nowrap>
<a
href="#"
id="greyText"
class="menutop"
onclick="location='main.php?loc=1.180.0.371&rnd=<?= PassGen::intCode(
) ?>';"
title="<?php thisInfRm('1.180.0.371', 1); ?>">
Бесплатное Лото
</a>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
<br/><br>
<div id="textgo" style="visibility:hidden;"></div>