Merge
This commit is contained in:
+47
-122
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user