game/modules_data/_zv.php

295 lines
11 KiB
PHP
Raw Normal View History

2022-06-06 21:30:34 +00:00
<?php
2022-12-30 19:03:37 +00:00
use Core\Config;
use Core\Db;
require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . '_incl_data/autoload.php';
if (!defined('GAME')) {
die();
}
if (isset($_GET['r'])) {
$_GET['r'] = (int)$_GET['r'];
2022-06-06 21:30:34 +00:00
} else {
2022-12-30 19:03:37 +00:00
$_GET['r'] = null;
2022-06-06 21:30:34 +00:00
}
2022-12-30 19:03:37 +00:00
if ($_GET['r'] == 3 || $_GET['r'] == 8 || !isset($_GET['r'])) {
$_GET['r'] = 2;
2022-06-06 21:30:34 +00:00
}
2022-12-30 19:03:37 +00:00
if ($u->info['inTurnir'] > 0 && $u->info['inUser'] == 0 && $u->info['room'] == 318) {
die('<script>location="main.php";</script>');
2022-06-06 21:30:34 +00:00
}
2022-12-30 19:03:37 +00:00
$zv = new FightRequest();
2022-12-30 19:03:37 +00:00
$js_5356 = sprintf(
"top.lafstReg[%d] = 0; top.startHpRegen(\"main\",%d,%d,%d,%d,%d,%d,%d,%d,%d,1);",
$u->info['id'], $u->info['id'], 0 + $u->stats['hpNow'], 0 + $u->stats['hpAll'],
0 + $u->stats['mpNow'], 0 + $u->stats['mpAll'], time() - $u->info['regHP'], time() - $u->info['regMP'],
0 + $u->rgd[0], 0 + $u->rgd[1]
);
2022-06-06 21:30:34 +00:00
?>
<script type="text/javascript" src="js/jquery.js"></script>
<script>
var zv_Priem = 0;
2022-12-30 19:03:37 +00:00
2022-06-06 21:30:34 +00:00
function openfizrmk() {
2022-12-30 19:03:37 +00:00
$('#hidezv1_btn').slideUp(300, function () {
$('#hidezv1').slideDown(700);
});
2022-06-06 21:30:34 +00:00
}
2022-12-30 19:03:37 +00:00
2022-06-06 21:30:34 +00:00
<?= $js_5356 ?>
</script>
<style>
2022-12-30 19:03:37 +00:00
table.wfix {
table-layout: fixed;
width: 100%;
}
.m {
background: #99CCCC;
text-align: center;
}
.s {
background: #BBDDDD;
text-align: center;
}
.firsttd {
width: 70px;
}
2022-06-06 21:30:34 +00:00
</style>
<TABLE class="wfix" cellspacing=1 cellpadding=3>
2022-12-30 19:03:37 +00:00
<TR>
<TD colspan=<?= $u->info['level'] == 0 ? '4' : '6' ?> align=right>
<div style="float:left"><?= $zv->userInfo() ?></div>
<div style="float:right;">
<INPUT class="btn" onClick="location='main.php?zayvka&r=<?= $_GET['r'] ?>&rnd=<?= $code ?>';"
2023-01-10 16:29:32 +00:00
TYPE=button name=tmp value="Обновить">
<INPUT class="btn" TYPE=button value="Вернуться" onClick="location.href='main.php?rnd=<?= $code ?>';">
2022-12-30 19:03:37 +00:00
</div>
</td>
</tr>
<tr>
2023-01-10 16:29:32 +00:00
<td class="firsttd m">&nbsp;<b>Бои:</b>&nbsp;</td>
2022-12-30 19:03:37 +00:00
<?php if ($u->info['level'] == 0): ?>
2023-01-10 16:29:32 +00:00
<td class="<?= $_GET['r'] == 1 ? 's' : 'm' ?>"><a href="main.php?zayvka=1&r=1&rnd=<?= $code ?>">Новички</a>
2022-12-30 19:03:37 +00:00
</td>
<?php else: ?>
2023-01-10 16:29:32 +00:00
<td class="<?= $_GET['r'] == 2 ? 's' : 'm' ?>"><a href="main.php?zayvka=1&r=2&rnd=<?= $code ?>">Турниры</a>
2022-12-30 19:03:37 +00:00
</td>
<td class="<?= $_GET['r'] == 4 ? 's' : 'm' ?>"><a
2023-01-10 16:29:32 +00:00
href="main.php?zayvka=1&r=4&rnd=<?= $code ?>">Групповые</a></td>
2022-12-30 19:03:37 +00:00
<td class="<?= $_GET['r'] == 5 ? 's' : 'm' ?>"><a
2023-01-10 16:29:32 +00:00
href="main.php?zayvka=1&r=5&rnd=<?= $code ?>">Хаотичные</a></td>
2022-12-30 19:03:37 +00:00
<?php endif; ?>
2023-01-10 16:29:32 +00:00
<td class="<?= $_GET['r'] == 6 ? 's' : 'm' ?>"><a href="main.php?zayvka=1&r=6&rnd=<?= $code ?>">Текущие</a></td>
<td class="<?= $_GET['r'] == 7 ? 's' : 'm' ?>"><a href="main.php?zayvka=1&r=7&rnd=<?= $code ?>">Завершенные</a>
2022-12-30 19:03:37 +00:00
</td>
</tr>
</table>
2022-06-06 21:30:34 +00:00
<script>
2022-12-30 19:03:37 +00:00
function console_clonelogin() {
2023-01-10 16:29:32 +00:00
var s = prompt("Введите логин персонажа с которым хотите сразиться:", "");
2022-12-30 19:03:37 +00:00
if ((s !== null) && (s !== '')) {
location.href = "main.php?zayvka=1&r=2&bot_clone=" + s + "&rnd=1";
}
}
2022-06-06 21:30:34 +00:00
</script>
<div style="padding:2px;">
2022-12-30 19:03:37 +00:00
<?php
$zi = false;
2022-06-06 21:30:34 +00:00
2022-12-30 19:03:37 +00:00
if ($u->info['battle'] == 0) {
if (isset($_POST['add_new_zv'])) {
$zv->add();
} elseif (isset($_GET['bot']) && ($u->info['level'] <= 7 || $u->info['admin'] > 0)) {
$zv->addBot();
} elseif (isset($_GET['bot_clone'])) {
$zvclone = Db::getValue(
'select id from users where admin = 0 and `real` = 1 and login = ?',
[$_GET['bot_clone']]
);
$zv->addBotClone($zvclone['id']);
} elseif (isset($_GET['add_group'])) {
$zv->add();
} elseif (isset($_GET['start_haot'])) {
$zv->add();
}
}
2022-06-06 21:30:34 +00:00
2022-12-30 19:03:37 +00:00
if ($u->info['zv'] != 0) {
$zi = mysql_fetch_array(
mysql_query(
'SELECT * FROM `zayvki` WHERE `id`=' . $u->info['zv'] . ' AND `start` = 0 AND `cancel` = 0 AND
(`time` > unix_timestamp() - 60 * 60 * 2 OR `razdel` > 3)'
)
);
if (!isset($zi['id'])) {
$zi = false;
$u->info['zv'] = 0;
mysql_query('UPDATE `stats` SET `zv` = 0 WHERE `id` = ' . $u->info['id']);
}
}
if ($u->info['battle'] == 0) {
if (isset($_POST['groupClick']) && !isset($zi['id'])) {
$zg = mysql_fetch_array(
mysql_query(
'SELECT * FROM `zayvki` WHERE `id` = ' . (int)$_POST['groupClick'] . ' AND `cancel` = 0 AND
`btl_id` = 0 AND `razdel` = 4 AND `start` = 0 AND `time` > unix_timestamp() - 60 * 60 * 2')
);
if (!isset($zg['id'])) {
2023-01-10 16:29:32 +00:00
echo '<center><br /><br />Заявка на групповой бой не найдена.</center>';
2022-12-30 19:03:37 +00:00
} else {
$tm_start = floor(($zg['time'] + $zg['time_start'] - time()) / 6) / 10;
$tm_start = $zv->rzv($tm_start);
$tm1 = '';
$tm2 = '';
$users = mysql_query(
'SELECT `u`.`id`, `u`.`login`, `u`.`level`, `u`.`align`, `u`.`clan`, `u`.`admin`, `st`.`team` FROM `users` AS `u` LEFT JOIN `stats` AS `st` ON `u`.`id` = `st`.`id` WHERE `st`.`zv` = "' . $zg['id'] . '"'
);
while ($s = mysql_fetch_array($users)) {
2023-01-10 16:29:32 +00:00
${'tm' . $s['team']} .= '<b>' . $s['login'] . '</b> [' . $s['level'] . ']<a href="info/' . $s['id'] . '" target="_blank"><img src="https://img.new-combats.com/i/inf_capitalcity.gif" title="Инф. о ' . $s['login'] . '" /></a><br />';
2022-12-30 19:03:37 +00:00
}
if (empty($tm1)) {
2023-01-10 16:29:32 +00:00
$tm1 = 'группа пока не набрана';
2022-12-30 19:03:37 +00:00
} else {
$tm1 = rtrim($tm1, '<br />');
}
if (empty($tm2)) {
2023-01-10 16:29:32 +00:00
$tm2 = 'группа пока не набрана';
2022-12-30 19:03:37 +00:00
} else {
$tm2 = rtrim($tm2, '<br />');
}
//
if ($zg['teams'] == 3) {
if (empty($tm3)) {
2023-01-10 16:29:32 +00:00
$tm3 = 'группа пока не набрана';
2022-12-30 19:03:37 +00:00
} else {
$tm3 = rtrim($tm3, '<br />');
}
}
$sv1 = Db::getValue('select count(*) from stats where zv = ? and team = 1');
$sv2 = Db::getValue('select count(*) from stats where zv = ? and team = 2');
$sv3 = Db::getValue('select count(*) from stats where zv = ? and team = 3');
$sv1 = $zg['tm1max'] - $sv1;
$sv2 = $zg['tm2max'] - $sv2;
if ($zg['teams'] == 3) {
$sv3 = $zg['tm2max'] - $sv3;
}
?></div>
<table style="margin-top:2px;" width="100%">
<tr>
2023-01-10 16:29:32 +00:00
<td> Бой начнется через <? echo $tm_start; ?> мин.</td>
2022-12-30 19:03:37 +00:00
<td align="right">
<INPUT class="btn" onClick="location='main.php?zayvka&r=<? echo $_GET['r']; ?>&rnd=<? echo $code; ?>';"
2023-01-10 16:29:32 +00:00
TYPE=button name=tmp value="Обновить">
<input class="btn" type="button" value="Вернуться"
2022-12-30 19:03:37 +00:00
onclick="location.href='main.php?zayvka&r=<? echo $_GET['r']; ?>&rnd=<? echo $code; ?>';">
</td>
</tr>
</table>
2023-01-10 16:29:32 +00:00
<h3 align="center">На чьей стороне будете сражаться?</h3>
2022-12-30 19:03:37 +00:00
<table align="center" cellspacing="4" cellpadding="1">
<tr>
2023-01-10 16:29:32 +00:00
<td bgcolor="99CCCC"><b>Группа один:</b><br/>
Максимальное кол-во: <? echo $zg['tm1max']; ?><br/>
Ограничения по уровню: <? echo $zg['min_lvl_1'] . ' - ' . $zg['max_lvl_1']; ?></td>
<td bgcolor="99CCCC"><b>Группа два:</b><br/>
Максимальное кол-во: <? echo $zg['tm2max']; ?><br/>
Ограничения по уровню: <? echo $zg['min_lvl_2'] . ' - ' . $zg['max_lvl_2']; ?> </td>
2022-12-30 19:03:37 +00:00
<?
if ($zg['teams'] == 3) {
?>
2023-01-10 16:29:32 +00:00
<td bgcolor="99CCCC"><b>Группа три:</b><br/>
Максимальное кол-во: <? echo $zg['tm2max']; ?><br/>
Ограничения по уровню: <? echo $zg['min_lvl_2'] . ' - ' . $zg['max_lvl_2']; ?> </td>
2022-12-30 19:03:37 +00:00
<?
}
?>
</tr>
<tr>
<td align="center"><? echo $tm1; ?>
<br/>
</td>
<td align="center"><? echo $tm2; ?>
<br/>
</td>
<?
if ($zg['teams'] == 3) {
?>
<td align="center"><? echo $tm3; ?>
<br/>
</td>
<?
}
?>
</tr>
<tr>
<td align="center">
2023-01-10 16:29:32 +00:00
<input class="btn" title="На данный момент свободно мест: <?= $sv1 ?>"
2022-12-30 19:03:37 +00:00
onclick="location='main.php?r=<?= $_GET['r'] ?>&zayvka&btl_go=<?= $zg['id'] ?>&tm1=<?= $code ?>'"
2023-01-10 16:29:32 +00:00
type="submit" name="confirm1" value="Я за этих!"/>
2022-12-30 19:03:37 +00:00
</td>
<td align="center">
2023-01-10 16:29:32 +00:00
<input class="btn" title="На данный момент свободно мест: <?= $sv2 ?>"
2022-12-30 19:03:37 +00:00
onclick="location='main.php?r=<?= $_GET['r'] ?>&zayvka&btl_go=<?= $zg['id'] ?>&tm2=<?= $code ?>'"
2023-01-10 16:29:32 +00:00
type="submit" name="confirm2" value="Я за этих!"/>
2022-12-30 19:03:37 +00:00
</td>
<?php
if ($zg['teams'] == 3) {
?>
<td align="center">
2023-01-10 16:29:32 +00:00
<input class="btn" title="На данный момент свободно мест: <?= $sv3 ?>"
2022-12-30 19:03:37 +00:00
onclick="location='main.php?r=<?= $_GET['r'] ?>&zayvka&btl_go=<?= $zg['id'] ?>&tm3=<?= $code ?>'"
2023-01-10 16:29:32 +00:00
type="submit" name="confirm3" value="Я за этих!"/>
2022-12-30 19:03:37 +00:00
</td>
<?php
}
?>
</tr>
</table>
<?php
}
} elseif (isset($_GET['cancelzv']) && !isset($_POST['add_new_zv'])) {
$zv->cancelzv();
} elseif (isset($_GET['startBattle']) && isset($zi['id']) && ($zi['razdel'] >= 1 || $zi['razdel'] <= 3)) {
$zv->startBattle($zi['id']);
}
2022-06-06 21:30:34 +00:00
}
2022-12-30 19:03:37 +00:00
if (isset($_POST['btl_go'])) {
$zv->go($_POST['btl_go']);
} elseif (isset($_GET['btl_go'])) {
$zv->go($_GET['btl_go']);
2022-06-06 21:30:34 +00:00
}
2022-12-30 19:03:37 +00:00
if ($zv->error != '') {
echo '<b style="color: red">' . $zv->error . '</b><br />';
2022-06-06 21:30:34 +00:00
}
2022-12-30 19:03:37 +00:00
if ($zv->test_s != '') {
echo '<b style="color: red">' . $zv->test_s . '</b><br />';
2022-06-06 21:30:34 +00:00
}
?>
<table style="padding:2px;" width="100%" border="0" cellspacing="0" cellpadding="2">
2022-12-30 19:03:37 +00:00
<tr>
<td><?php $zv->see(); ?></td>
</tr>
<tr>
<td><?php $zv->seeZv(); ?></td>
</tr>
</table><br/>
<div style="text-align: right">
<?= Config::get('counters') ?>
</div>