room == 1051) {
mysql_query('DELETE FROM `laba_zv` WHERE `time` < "' . (time() - 1 * 60 * 60) . '"');
$var = mysql_fetch_array(mysql_query('SELECT `id`, `vals` FROM `actions` WHERE `vals` > "' . time() . '" AND `uid` = "' . $user['id'] . '" AND `vars` = "go_labirint" LIMIT 1'));
$zv = mysql_fetch_array(mysql_query('SELECT * FROM `laba_zv` WHERE `uid1` = "' . $user['id'] . '" OR `uid2` = "' . $user['id'] . '" OR `uid3` = "' . $user['id'] . '" OR `uid4` = "' . $user['id'] . '" LIMIT 1'));
$re = '';
if (isset($_GET['exitlaba'])) {
if (isset($zv['id'])) {
$re = 'Подали заявку и убегаем? Не хорошо!';
} else {
mysql_query("UPDATE `users`, `online` SET `users`.`room` = '2601', `online`.`room` = '2601' WHERE `online`.`id` = `users`.`id` AND `online`.`id` = '{$user['id']}'");
header('Location: city.php');
}
} elseif (isset($_GET['pz1'])) {
if (isset($zv['id'])) {
$re = 'Вы уже подали заявку...';
} else {
if ($user['level'] < 4) {
$re = 'Персонажам до 4-го уровня запрещается посещать лабиринт!';
} elseif (isset($var['id'])) {
$tm = timeOut($var['vals'] - time());
$re = 'Следующий поход через: ' . $tm;
} else {
$_POST['type_gors'] = (int)$_POST['type_gors'];
if ($_POST['type_gors'] == 0 && $user['level'] > 6) {
$re = 'Лабиринт для новичков доступен для 4-6 уровней!';
} elseif ($_POST['type_gors'] == 1 && $user['level'] < 7) {
$re = 'Лабиринт для опытных доступен с 7 уровня!';
} elseif ($_POST['type_gors'] == 2 && ($user['level'] < 9 || $user['rep_laba'] < 20000)) {
$re = 'Легендарный Лабиринт доступен с 9 уровня!
Так-же требуется 20000 репутации Лабиринтов! У Вас : ' . $user['rep_laba'] . ' репутации Лабиринтов.';
} else {
mysql_query('INSERT INTO `laba_zv` (`uid1`, `time`, `com`, `pass`, `type`, `level`) VALUES ("' . $user['id'] . '", "' . time() . '", "' . mysql_real_escape_string(htmlspecialchars($_POST['text'])) . '", "' . mysql_real_escape_string($_POST['text']) . '", "' . mysql_real_escape_string($_POST['type_gors']) . '", "' . $user['level'] . '")');
header('Location: lab_enter.php');
}
}
}
} elseif (isset($_GET['cancelzv'])) {
if (!isset($zv['id'])) {
$re = 'Вы не участвуете ни в одной из заявок!
';
} else {
$i = 1;
$j = 4;
$k = 0;
$h = 0;
while ($i <= 4) {
if ($k == 0 && $zv['uid' . $i] != $user['id']) {
$k = $zv['uid' . $i];
$h = $i;
}
$i++;
}
$i = 1;
while ($i <= 4) {
if ($zv['uid' . $i] == $user['id']) {
if ($i > 1) {
$zv['uid' . $i] = 0;
} else {
$zv['uid' . $i] = $k;
$zv['uid' . $h] = 0;
}
}
if ($zv['uid' . $i] == 0) {
$j--;
}
$i++;
}
if ($j < 1) {
mysql_query('DELETE FROM `laba_zv` WHERE `id` = "' . $zv['id'] . '" LIMIT 1');
} else {
mysql_query('UPDATE `laba_zv` SET `uid1` = "' . $zv['uid1'] . '", `uid2` = "' . $zv['uid2'] . '", `uid3` = "' . $zv['uid3'] . '", `uid4` = "' . $zv['uid4'] . '" WHERE `id` = "' . $zv['id'] . '" lIMIT 1');
}
$re = 'Заявка успешно отменена!
';
unset($zv);
}
} elseif (isset($_GET['priemzv'])) {
if (isset($zv['id'])) {
$re = 'Вы уже состоите в одной из заявок!';
} else {
$tozv = mysql_fetch_array(mysql_query('SELECT * FROM `laba_zv` WHERE `id` = "' . mysql_real_escape_string($_GET['priemzv']) . '" LIMIT 1'));
if (!isset($tozv['id'])) {
$re = 'Заявка не найдена!';
} elseif (isset($var['id'])) {
$tm = timeOut($var['vals'] - time());
$re = 'Следующий поход через: ' . $tm;
} else {
if ($tozv['uid1'] > 0 && $tozv['uid2'] > 0 && $tozv['uid3'] > 0 && $tozv['uid4'] > 0) {
$re = 'В заявке нет свободных мест!';
} else {
$i = 1;
$j = 0;
while ($i <= 4) {
if ($tozv['uid' . $i] == 0 && $j == 0) {
$j = $i;
}
$i++;
}
mysql_query('UPDATE `laba_zv` SET `uid' . $j . '` = "' . $user['id'] . '" WHERE `id` = "' . $tozv['id'] . '" LIMIT 1');
header('Location: lab_enter.php');
}
}
}
} elseif (isset($_GET['startzv'])) {
if (!isset($zv['id'])) {
$re = 'Вы должны сначала подать заявку!';
} elseif ($zv['uid1'] != $user['id']) {
$re = 'Вы должны являться лидером группы!';
} else {
if ($zv['type'] == 0) {
$level = 5;
} elseif ($zv['type'] == 1) {
$level = 8;
} elseif ($zv['type'] == 2) {
$level = 10;
}
$k = floor(2.5 * $level);
$s = $k * 2 + 3;
$r = 10;
$count = 1;
$a = [];
for ($y = 0; $y < $s; $y++) {
for ($x = 0; $x < $s; $x++) {
$a[$y][$x] = 1;
}
}
for ($x = 0; $x < $s; $x++) {
$a[0][$x] = 0;
$a[$s - 1][$x] = 0;
$a[$x][0] = 0;
$a[$x][$s - 1] = 0;
}
$x = $y = ($k - 1) >> 1;
$a[$y * 2 + 2][$x * 2 + 2] = 0;
while (1) {
do {
$d = rand(0, 3);
for ($i = 0; $i < 4; $i++) {
if ($d == 0 && $a[$y * 2 + 2][$x * 2 + 4]) {
$a[$y * 2 + 2][$x++ * 2 + 3] = 0;
$a[$y * 2 + 2][$x * 2 + 2] = 0;
$i = 5;
$count++;
break;
} elseif ($d == 1 && $a[$y * 2][$x * 2 + 2]) {
$a[$y-- * 2 + 1][$x * 2 + 2] = 0;
$a[$y * 2 + 2][$x * 2 + 2] = 0;
$i = 5;
$count++;
break;
} elseif ($d == 2 && $a[$y * 2 + 2][$x * 2]) {
$a[$y * 2 + 2][$x-- * 2 + 1] = 0;
$a[$y * 2 + 2][$x * 2 + 2] = 0;
$i = 5;
$count++;
break;
} elseif ($d == 3 && $a[$y * 2 + 4][$x * 2 + 2]) {
$a[$y++ * 2 + 3][$x * 2 + 2] = 0;
$a[$y * 2 + 2][$x * 2 + 2] = 0;
$i = 5;
$count++;
break;
}
$d = ($d + 1) % 4;
}
} while ($i != 4);
if ($count >= $k * $k) {
break;
}
$x = rand(0, $k - 1);
$y = rand(0, $k - 1);
while ($a[$y * 2 + 2][$x * 2 + 2] || !$a[$y * 2 + 2][$x * 2 + 4] && !$a[$y * 2][$x * 2 + 2] && !$a[$y * 2 + 2][$x * 2] && !$a[$y * 2 + 4][$x * 2 + 2]) {
if (++$x >= $k) {
$x = 0;
if (++$y >= $k) {
$y = 0;
}
}
}
}
$rnds = [rand(1, 3), rand(1, 3)];
$srg = [];
$objects = [];
if ($rnds[0] == 1) {
$a[2][1] = 0;
$a[2][2] = 0;
$srg = [2, 1];
$objects[2][1] = '