This commit is contained in:
2023-07-31 20:06:51 +03:00
109 changed files with 15204 additions and 33584 deletions
+47 -122
View File
@@ -1,161 +1,86 @@
<?php
const GAME = true;
include_once('_incl_data/__config.php');
include_once('_incl_data/class/__db_connect.php');
if (!defined('GAME_VERSION')) {
require_once '_incl_data/autoload.php';
}
use Core\Db;
$u = User::start();
if ($u->room['name'] != 'Однорукий бандит') {
die();
}
//Раздаем выйгрыши
function get2str($key = '', $val = '')
function roll(int $w1, int $w2, int $w3): array
{
$get = $_GET;
if (is_array($key)) {
if (count($key) > 0) {
foreach ($key as $k => $v) {
$get[$k] = $v;
}
}
} else {
$get[$key] = $val;
}
if (count($get) > 0) {
foreach ($get as $k => $v) {
if (empty($v)) {
unset($get[$k]);
}
}
}
if (count($get) > 0) {
foreach ($get as $k => $v) {
$get[$k] = $k . '=' . urlencode($v);
}
return '?' . implode('&', $get);
$w = $w1 . $w2 . $w3;
$combo = [
'000' => [50, 0],
'111' => [20, 1],
'222' => [10, 2],
'333' => [4, 3],
'444' => [2, 4],
];
$win = 0;
$n = 99;
if (isset($combo[$w])) {
[$win, $n] = $combo[$w];
} elseif ($w1 == 4 && $w2 == 4 || $w1 == 4 && $w3 == 4 || $w2 == 4 && $w3 == 4) {
// 1 2 3
$win = 1;
$n = 5;
}
return ['win' => $win, 'n' => $n, 'combination' => $w];
}
//Раздаем выйгрыши
$r = '';
if (isset($_GET['bet'])) {
$s = 1;
$bet = 1;
if ($_GET['bet'] == 2) {
$s = 2;
$bet = 2;
} elseif ($_GET['bet'] == 3) {
$s = 3;
$bet = 3;
}
if ($u->bank['money2'] >= $s) {
if ($u->info['money2'] >= $bet) {
//Играем!
$w1 = rand(0, 4);
$w2 = rand(0, 4);
$w3 = rand(0, 4);
//
$win = 0;
$n = 99;
if ($w1 == 0 && $w2 == 0 && $w3 == 0) {
// 50 100 150
$win = 50;
$n = 0;
} elseif ($w1 == 1 && $w2 == 1 && $w3 == 1) {
// 20 40 60
$win = 20;
$n = 1;
} elseif ($w1 == 2 && $w2 == 2 && $w3 == 2) {
// 10 20 30
$win = 10;
$n = 2;
} elseif ($w1 == 3 && $w2 == 3 && $w3 == 3) {
// 4 8 12
$win = 4;
$n = 3;
} elseif ($w1 == 4 && $w2 == 4 && $w3 == 4) {
// 2 4 6
$win = 2;
$n = 4;
} elseif ($w1 == 4 && $w2 == 4) {
// 1 2 3
$win = 1;
$n = 5;
} elseif ($w1 == 4 && $w3 == 4 || $w2 == 4 && $w3 == 4) {
// 1 2 3
$win = 1;
$n = 5;
}
[$win, $n, $combination] = roll(rand(0, 4), rand(0, 4), rand(0, 4));
if (($n == 5 || $n == 4 || $n == 3) && rand(0, 100) >= 50) {
//Играем!
$w1 = rand(0, 2);
$w2 = rand(0, 3);
$w3 = rand(0, 3);
//
$win = 0;
$n = 99;
if ($w1 == 0 && $w2 == 0 && $w3 == 0) {
// 50 100 150
$win = 50;
$n = 0;
} elseif ($w1 == 1 && $w2 == 1 && $w3 == 1) {
// 20 40 60
$win = 20;
$n = 1;
} elseif ($w1 == 2 && $w2 == 2 && $w3 == 2) {
// 10 20 30
$win = 10;
$n = 2;
} elseif ($w1 == 3 && $w2 == 3 && $w3 == 3) {
// 4 8 12
$win = 4;
$n = 3;
} elseif ($w1 == 4 && $w2 == 4 && $w3 == 4) {
// 2 4 6
$win = 2;
$n = 4;
} elseif ($w1 == 4 && $w2 == 4) {
// 1 2 3
$win = 1;
$n = 5;
} elseif ($w1 == 4 && $w3 == 4 || $w2 == 4 && $w3 == 4) {
// 1 2 3
$win = 1;
$n = 5;
}
[$win, $n, $combination] = roll(rand(0, 2), rand(0, 3), rand(0, 3));
}
//
$u->bank['money2'] -= $s;
$u->bank['money2'] += $s * $win;
mysql_query(
'UPDATE `bank` SET `money2` = "' . $u->bank['money2'] . '" WHERE `id` = "' . $u->bank['id'] . '" LIMIT 1'
);
$u->info['money2'] -= $bet;
$u->info['money2'] += $bet * $win;
$u->addEkr($bet * $win - $bet);
//
mysql_query(
'INSERT INTO `bandit` (`uid`,`time`,`room`,`s`,`wm`,`w`) VALUES (
"' . $u->info['id'] . '","' . time(
) . '","' . $u->info['room'] . '","' . $s . '","' . ($s * $win) . '","' . $w1 . $w2 . $w3 . '"
) '
);
$gid = mysql_insert_id();
Db::sql('insert into bandit (uid, time, room, s, wm, w) VALUES (?,unix_timestamp(), ?, ?, ?, ?)',
[$u->info['id'], $u->info['room'], $bet, $bet * $win, $combination]);
$gid = Db::lastInsertId();
//
if ($win > 0) {
$prize = $s * $win;
$prize = $bet * $win;
$chatDto = new ChatMessage();
$chatDto->setCity($u->info['city']);
$chatDto->setRoom(390);
$chatDto->setLogin('<span style="color: #0066FF">Крупье</span>');
$chatDto->setText("<small>Игрок {$u->info['login']} выиграл $prize екр, ставка $s екр, игра №$gid</small>");
$chatDto->setText("<small>Игрок {$u->info['login']} выиграл $prize екр, ставка $bet екр, игра №$gid</small>");
$chatDto->setType(6);
(new Chat())->sendMsg($chatDto);
}
//
$r .= 'cash=' . floor($u->bank['money2']);
$r .= '&w1=' . $w1 . '&w2=' . $w2 . '&w3=' . $w3 . '&n=' . $n . '&win=' . ($s * $win);
$r .= 'cash=' . floor($u->info['money2']);
$r .= '&combination=' . $combination . '&n=' . $n . '&win=' . ($bet * $win);
}
} else {
$r .= 'cash=' . floor($u->bank['money2']);
$r .= 'cash=' . floor($u->info['money2']);
}
echo $r;