room['file'] == 'enterbezdna') {
if (isset($_GET['rz'])) {
$rz = 1;
} else {
$rz = 0;
}
$dun = 101;
$er = '';
$dzs = '';
$g111 = 1;
$g11 = $u->testAction('`uid` = "' . $u->info['id'] . '" AND `vars` = "psh101" AND `time` > ' . (time() - 60 * 60 * 2) . ' LIMIT 1', 1);
$moder = mysql_fetch_array(mysql_query('SELECT * FROM `moder` WHERE `align` = "' . $u->info['align'] . '" LIMIT 1'));
if ($u->info['dn'] > 0) {
$zv = mysql_fetch_array(mysql_query('SELECT * FROM `dungeon_zv` WHERE `id`="' . $u->info['dn'] . '" AND `delete` = "0" LIMIT 1'));
if (!isset($zv['id'])) {
mysql_query('UPDATE `stats` SET `dn` = "0" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
$u->info['dn'] = 0;
}
}
if (isset($g11['id'])) {
$g111 = 0;
if (isset($_GET['start'])) {
$re = 'До следующего похода осталось еще: ' . Conversion::secondsToTimeout(60 * 60 * 2 - time() + $g11['time']);
}
}
if (isset($_GET['start']) && $zv['uid'] == $u->info['id'] && $g111 == 1) {
//начинаем поход
//начинаем поход
$ig = 1;
if ($ig > 0) {
//перемещаем игроков в пещеру
//$u->addAction(time(),'psh101','');
$ins = mysql_query(
'INSERT INTO `dungeon_now` (`city`,`uid`,`id2`,`name`,`time_start`)
VALUES ("' . $zv['city'] . '","' . $zv['uid'] . '","' . $dun . '","Бездна","' . time() . '")'
);
if ($ins) {
$zid = mysql_insert_id();
mysql_query('UPDATE `dungeon_zv` SET `delete` = "' . time() . '" WHERE `id` = "' . $zv['id'] . '" LIMIT 1');
//обновляем пользователей
$su = mysql_query(
'SELECT `u`.`id`,`st`.`dn` FROM `stats` AS `st` LEFT JOIN `users` AS `u` ON (`st`.`id` = `u`.`id`) WHERE `st`.`dn`="' . $zv['id'] . '" LIMIT ' . ($zv['team_max'] + 1) . ''
);
$ids = '';
$map_locs = [];
$spm2 = mysql_query('SELECT `id`,`x`,`y` FROM `dungeon_map` WHERE `id_dng` = "' . $dun . '"');
while ($plm2 = mysql_fetch_array($spm2)) {
$map_locs[] = [$plm2['x'], $plm2['y']];
}
unset($spm2, $plm2);
$ppx = 0;
while ($pu = mysql_fetch_array($su)) {
$ppx++;
$ids .= ' `id` = "' . $pu['id'] . '" OR';
$u->addAction(time(), 'psh101', '', $pu['id']);
//Добавляем квестовые обьекты для персонажей
$sp = mysql_query('SELECT * FROM `actions` WHERE `uid` = "' . $pu['id'] . '" AND `vars` LIKE "%start_quest%" AND `vals` = "go" LIMIT 100');
//$sp = mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.$u->info['id'].'" AND `vars` LIKE "%start_quest%" AND `vals` = "go" LIMIT 100');
while ($pl2 = mysql_fetch_array($sp)) {
$pl = mysql_fetch_array(mysql_query('SELECT * FROM `quests` WHERE `id` = "' . (str_replace('start_quest', '', $pl2['vars'])) . '" AND `line` = "101" LIMIT 1'));
if (isset($pl['id'])) {
$act = explode(',', $pl['act_date']);
$i = 0;
while ($i < count($act)) {
$xr = explode(':=:', $act[$i]);
//Сбор ресурсов
if ($xr[0] == 'tk_itm') {
$xr2 = explode('=', $xr[1]);
if ($xr2[2] == 0) {
//Добавляем обьект для юзера
$j = 0;
while ($j < $xr2[1]) {
$cord = $map_locs[rand(0, count($map_locs) - 1)];
if ($cord[0] != 0 || $cord[1] != 0) {
mysql_query(
'INSERT INTO `dungeon_items` (`dn`,`user`,`item_id`,`time`,`x`,`y`,`onlyfor`,`quest`) VALUES (
"' . $zid . '","' . $pu['id'] . '","' . $xr2[0] . '","' . time() . '","' . $cord[0] . '","' . $cord[1] . '","' . $pu['id'] . '","' . $pl['id'] . '"
)'
);
}
$j++;
}
} else {
//Предмет находится в конкретном месте
mysql_query(
'INSERT INTO `dungeon_items` (`dn`,`user`,`item_id`,`time`,`x`,`y`,`onlyfor`,`quest`) VALUES (
"' . $zid . '","' . $pu['id'] . '","' . $xr2[0] . '","' . time() . '","' . $xr2[2] . '","' . $xr2[3] . '","' . $pu['id'] . '","' . $pl['id'] . '"
)'
);
}
//
}
$i++;
}
}
}
//
}
$ids = rtrim($ids, 'OR');
$upd1 = mysql_query(
'UPDATE `stats` SET `s`="1",`res_s`="1",`x`="0",`y`="0",`res_x`="0",`res_y`="0",`dn` = "0",`dnow` = "' . $zid . '" WHERE ' . $ids . ' LIMIT ' . ($zv['team_max'] + 1) . ''
);
if ($upd1) {
$upd2 = mysql_query('UPDATE `users` SET `room` = "360" WHERE ' . $ids . ' LIMIT ' . ($zv['team_max'] + 1) . '');
//Добавляем ботов и обьекты в пещеру $zid с for_dn = $dun
//Добавляем ботов
$vls = '';
$sp = mysql_query('SELECT * FROM `dungeon_bots` WHERE `for_dn` = "' . $dun . '"');
while ($pl = mysql_fetch_array($sp)) {
$vls .= '("' . $zid . '","' . $pl['id_bot'] . '","' . $pl['colvo'] . '","' . $pl['items'] . '","' . $pl['x'] . '","' . $pl['y'] . '","' . $pl['dialog'] . '","' . $pl['items'] . '"),';
}
$vls = rtrim($vls, ',');
$ins1 = mysql_query('INSERT INTO `dungeon_bots` (`dn`,`id_bot`,`colvo`,`items`,`x`,`y`,`dialog`,`atack`) VALUES ' . $vls . '');
//Добавляем обьекты
$vls = '';
$sp = mysql_query('SELECT * FROM `dungeon_obj` WHERE `for_dn` = "' . $dun . '"');
while ($pl = mysql_fetch_array($sp)) {
$vls .= '("' . $zid . '","' . $pl['name'] . '","' . $pl['img'] . '","' . $pl['x'] . '","' . $pl['y'] . '","' . $pl['action'] . '","' . $pl['type'] . '","' . $pl['w'] . '","' . $pl['h'] . '","' . $pl['s'] . '","' . $pl['s2'] . '","' . $pl['os1'] . '","' . $pl['os2'] . '","' . $pl['os3'] . '","' . $pl['os4'] . '","' . $pl['type2'] . '","' . $pl['top'] . '","' . $pl['left'] . '","' . $pl['date'] . '"),';
}
//Добавление обьектов (день святого валентина)
if (floor(date('m')) == 2 && floor(date('d')) >= 7 && $u->info['admin'] > 0) {
//Раскидываем предметы по пещере (Блёклый подземник)
$i = 1;
while ($i <= $ppx) {
$j = rand(1, 3);
while ($j >= 0) {
$rndx = 0;
$rndy = 0;
$vls .= '("' . $zid . '","Блеклый подземник","vbig1.gif","' . $rndx . '","' . $rndy . '","fileact:101/vbig1","0","81","81","0","0","5","8","12","0","0","0","0","{use:\'takeit\',rt2:154,rl2:146,rt3:139,rl3:154,rt4:125,rl4:161}"),';
$j--;
}
$i++;
}
}
//
$vls = rtrim($vls, ',');
if ($vls != '') {
$ins2 = mysql_query(
'INSERT INTO `dungeon_obj` (`dn`,`name`,`img`,`x`,`y`,`action`,`type`,`w`,`h`,`s`,`s2`,`os1`,`os2`,`os3`,`os4`,`type2`,`top`,`left`,`date`) VALUES ' . $vls . ''
);
} else {
$ins2 = true;
}
if ($upd2 && $ins1 && $ins2) {
die('');
} else {
$re = 'Ошибка перехода в подземелье...';
}
} else {
$re = 'Ошибка перехода в подземелье...';
}
} else {
$re = 'Ошибка перехода в подземелье...';
}
}
} elseif (isset($_POST['go'], $_POST['goid']) && $g111 == 1) {
if (!isset($zv['id'])) {
$zv = mysql_fetch_array(
mysql_query('SELECT * FROM `dungeon_zv` WHERE `city` = "' . $u->info['city'] . '" AND `id`="' . mysql_real_escape_string($_POST['goid']) . '" AND `delete` = "0" LIMIT 1')
);
if (isset($zv['id']) && $u->info['dn'] == 0) {
if ($zv['pass'] != '' && $_POST['pass_com'] != $zv['pass']) {
$re = 'Вы ввели неправильный пароль';
} elseif ($u->info['level'] > 7) {
$row = 0;
if (5 > $row) {
$upd = mysql_query('UPDATE `stats` SET `dn` = "' . $zv['id'] . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
if (!$upd) {
$re = 'Не удалось вступить в эту группу';
unset($zv);
} else {
$u->info['dn'] = $zv['id'];
}
} else {
$re = 'В группе нет места';
unset($zv);
}
} else {
$re = 'Вы не подходите по уровню';
unset($zv);
}
} else {
$re = 'Заявка не найдена';
}
} else {
$re = 'Вы уже находитесь в группе';
}
} elseif (isset($_POST['leave']) && isset($zv['id']) && $g111 == 1) {
if ($zv['uid'] == $u->info['id']) {
//ставим в группу нового руководителя
$ld = mysql_fetch_array(mysql_query('SELECT `id` FROM `stats` WHERE `dn` = "' . $zv['id'] . '" AND `id` != "' . $u->info['id'] . '" LIMIT 1'));
if (isset($ld['id'])) {
$zv['uid'] = $ld['id'];
mysql_query('UPDATE `dungeon_zv` SET `uid` = "' . $zv['uid'] . '" WHERE `id` = "' . $zv['id'] . '" LIMIT 1');
mysql_query('UPDATE `stats` SET `dn` = "0" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
$u->info['dn'] = 0;
unset($zv);
} else {
//удаляем группу целиком
mysql_query('UPDATE `dungeon_zv` SET `delete` = "' . time() . '" WHERE `id` = "' . $zv['id'] . '" LIMIT 1');
mysql_query('UPDATE `stats` SET `dn` = "0" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
$u->info['dn'] = 0;
unset($zv);
}
} else {
//просто выходим с группы
mysql_query('UPDATE `stats` SET `dn` = "0" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
$u->info['dn'] = 0;
unset($zv);
}
} elseif (isset($_POST['add']) && $u->info['level'] > 1 && $g111 == 1) {
if ($u->info['dn'] == 0) {
$ins = mysql_query(
'INSERT INTO `dungeon_zv`
(`city`,`time`,`uid`,`dun`,`pass`,`com`,`lvlmin`,`lvlmax`,`team_max`) VALUES
("' . $u->info['city'] . '","' . time() . '","' . $u->info['id'] . '","' . $dun . '",
"' . mysql_real_escape_string($_POST['pass']) . '",
"' . mysql_real_escape_string($_POST['text']) . '",
"8",
"21",
"5")'
);
if ($ins) {
$u->info['dn'] = mysql_insert_id();
$zv['id'] = $u->info['dn'];
$zv['uid'] = $u->info['id'];
mysql_query('UPDATE `stats` SET `dn` = "' . $u->info['dn'] . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
$re = 'Вы успешно создали группу';
} else {
$re = 'Не удалось создать группу';
}
} else {
$re = 'Вы уже находитесь в группе';
}
}
//Генерируем список групп
$sp = mysql_query('SELECT * FROM `dungeon_zv` WHERE `city` = "' . $u->info['city'] . '" AND `dun` = "101" AND `delete` = "0" AND `time` > "' . (time() - 60 * 60 * 2) . '"');
while ($pl = mysql_fetch_array($sp)) {
$dzs .= '
';
if ($u->info['dn'] == 0) {
$dzs .= '
';
}
$dzs .= '
' . date('H:i', $pl['time']) . ' ';
$pus = ''; //группа
$su = mysql_query(
'SELECT `u`.`id`,`u`.`login`,`u`.`level`,`u`.`align`,`u`.`clan`,`st`.`dn`,`u`.`city`,`u`.`room` FROM `stats` AS `st` LEFT JOIN `users` AS `u` ON (`st`.`id` = `u`.`id`) WHERE `st`.`dn`="' . $pl['id'] . '" LIMIT ' . ($pl['team_max'] + 1) . ''
);
while ($pu = mysql_fetch_array($su)) {
$pus .= '
' . $pu['login'] . ' [' . $pu['level'] . ']
';
$pus .= ', ';
}
$pus = trim($pus, ', ');
$dzs .= $pus;
if ($pl['pass'] != '' && $u->info['dn'] == 0) {
$dzs .= '
';
}
if ($pl['com'] != '') {
$dl = '';
if (($moder['boi'] == 1 || $u->info['admin'] > 0) && $pl['dcom'] == 0) {
$dl .= ' (
удалить комментарий)';
if (isset($_GET['delcom']) && $_GET['delcom'] == $pl['id'] && $u->newAct($_GET['key']) == true) {
mysql_query('UPDATE `dungeon_zv` SET `dcom` = "' . $u->info['id'] . '" WHERE `id` = "' . $pl['id'] . '" LIMIT 1');
$pl['dcom'] = $u->info['id'];
}
}
$pl['com'] = htmlspecialchars($pl['com'], null);
if ($pl['dcom'] > 0) {
$dl = '
комментарий удален модератором';
}
if ($pl['dcom'] > 0) {
if ($moder['boi'] == 1 || $u->info['admin'] > 0) {
$pl['com'] = '
' . $pl['com'] . '';
} else {
$pl['com'] = '';
}
}
$dzs .= '
| ' . $pl['com'] . '' . $dl . '';
}
$dzs .= '
';
}
?>
' . $re . '
';
}
//отображаем
if ($dzs == '') {
$dzs = '';
} else {
if (!isset($zv['id']) || $u->info['dn'] == 0) {
if ($g111 == 1 || $u->info['dn'] == 0) {
$pr = '';
}
$dzs = '';
}
$dzs .= '
';
}
if ($rz == 0) {
echo $dzs;
}
if ($rz == 1) {
?>
'capitalcity', 2 => 'demonscity', 3 => 'angelscity'];
if ($_GET['buy1'] == 1) {
//покупаем статы
$price = 2000 + ($u->rep['add_stats'] * 100);
$cur_price = ['price' => 0];
if (25 - $u->rep['add_stats'] > 0 && $u->rep['allrep'] - $u->rep['allnurep'] >= $price) { // Характеристики!
foreach ($dungeon as $key => $val) {
if (!($cur_price['price'] >= $price)) {
if ($u->rep['rep' . $val] - $u->rep['nu_' . $val] > $price) {
$cur_price['price'] = $price;
$cur_price['nu_' . $val] = $price;
} elseif ($u->rep['rep' . $val] - $u->rep['nu_' . $val] < $price) {
$cur_price['price'] += $cur = ($price > ($cur_price['price'] + ($u->rep['rep' . $val] - $u->rep['nu_' . $val])) ? ($u->rep['rep' . $val] - $u->rep['nu_' . $val]) : (($u->rep['rep' . $val] - $u->rep['nu_' . $val]) - ((($price - $cur_price['price']) - ($u->rep['rep' . $val] - $u->rep['nu_' . $val])) * -1)));
$cur_price['nu_' . $val] = $cur;
}
}
}
if ($price == $cur_price['price']) {
echo '
Вы успешно приобрели 1 способность за ' . $price . ' ед. награды';
$u->info['ability'] += 1;
$u->rep['add_stats'] += 1;
foreach ($dungeon as $key => $val) {
if ($key != 'price') {
$u->rep['nu_' . $val] += $cur_price['nu_' . $val];
mysql_query('UPDATE `rep` SET `nu_' . $val . '` = "' . $u->rep['nu_' . $val] . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
}
}
mysql_query('UPDATE `rep` SET `add_stats` = "' . $u->rep['add_stats'] . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
mysql_query('UPDATE `stats` SET `ability` = "' . $u->info['ability'] . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
} else {
echo 'Недостаточно репутации.';
}
} else {
echo '
Ничего не получилось...';
}
} elseif ($_GET['buy1'] == 2) { // Умения!
$price = 2000 + (2000 * $u->rep['add_skills']);
$cur_price = ['price' => 0];
if (10 - $u->rep['add_skills'] > 0 && $u->rep['allrep'] - $u->rep['allnurep'] >= $price) { // Умения!
foreach ($dungeon as $key => $val) {
if (!($cur_price['price'] >= $price)) {
if ($u->rep['rep' . $val] - $u->rep['nu_' . $val] > $price) {
$cur_price['price'] = $price;
$cur_price['nu_' . $val] = $price;
} elseif ($u->rep['rep' . $val] - $u->rep['nu_' . $val] < $price) {
$cur_price['price'] += $cur = ($price > ($cur_price['price'] + ($u->rep['rep' . $val] - $u->rep['nu_' . $val])) ? ($u->rep['rep' . $val] - $u->rep['nu_' . $val]) : (($u->rep['rep' . $val] - $u->rep['nu_' . $val]) - ((($price - $cur_price['price']) - ($u->rep['rep' . $val] - $u->rep['nu_' . $val])) * -1)));
$cur_price['nu_' . $val] = $cur;
}
}
}
if ($price == $cur_price['price']) {
echo '
Вы успешно приобрели 1 умение за ' . $price . ' ед. награды';
$u->info['skills'] += 1;
$u->rep['add_skills'] += 1;
foreach ($dungeon as $key => $val) {
if ($key != 'price') {
$u->rep['nu_' . $val] += $cur_price['nu_' . $val];
mysql_query('UPDATE `rep` SET `nu_' . $val . '` = "' . $u->rep['nu_' . $val] . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
}
}
mysql_query('UPDATE `rep` SET `add_skills` = "' . $u->rep['add_skills'] . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
mysql_query('UPDATE `stats` SET `skills` = "' . $u->info['skills'] . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
} else {
echo 'Недостаточно репутации.';
}
} else {
echo '
Ничего не получилось...';
}
} elseif ($_GET['buy1'] == 3) { // Кредиты
$price = 100;
$cur_price = ['price' => 0];
if ($u->rep['allrep'] - $u->rep['allnurep'] >= $price) { // Покупаем кредиты
foreach ($dungeon as $key => $val) {
if (!($cur_price['price'] >= $price)) {
if ($u->rep['rep' . $val] - $u->rep['nu_' . $val] > $price) {
$cur_price['price'] = $price;
$cur_price['nu_' . $val] = $price;
} elseif ($u->rep['rep' . $val] - $u->rep['nu_' . $val] < $price) {
$cur_price['price'] += $cur = ($price > ($cur_price['price'] + ($u->rep['rep' . $val] - $u->rep['nu_' . $val])) ? ($u->rep['rep' . $val] - $u->rep['nu_' . $val]) : (($u->rep['rep' . $val] - $u->rep['nu_' . $val]) - ((($price - $cur_price['price']) - ($u->rep['rep' . $val] - $u->rep['nu_' . $val])) * -1)));
$cur_price['nu_' . $val] = $cur;
}
}
}
if ($price == $cur_price['price']) {
echo '
Вы успешно приобрели 10 кр. за ' . $price . ' ед. награды';
$u->info['money'] += 10;
$u->rep['add_money'] += 10;
foreach ($dungeon as $key => $val) {
if ($key != 'price') {
$u->rep['nu_' . $val] += $cur_price['nu_' . $val];
mysql_query('UPDATE `rep` SET `nu_' . $val . '` = "' . $u->rep['nu_' . $val] . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
}
}
mysql_query('UPDATE `rep` SET `add_money` = "' . $u->rep['add_money'] . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
mysql_query('UPDATE `users` SET `money` = "' . $u->info['money'] . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
} else {
echo 'Недостаточно репутации.';
}
} else {
echo '
Ничего не получилось...';
}
} elseif ($_GET['buy1'] == 4) { // Особенности
$price = 3000;
$cur_price = ['price' => 0];
if (5 - $u->rep['add_skills2'] > 0 && $u->rep['allrep'] - $u->rep['allnurep'] >= $price) { // Особенности
foreach ($dungeon as $key => $val) {
if (!($cur_price['price'] >= $price)) {
if ($u->rep['rep' . $val] - $u->rep['nu_' . $val] > $price) {
$cur_price['price'] = $price;
$cur_price['nu_' . $val] = $price;
} elseif ($u->rep['rep' . $val] - $u->rep['nu_' . $val] < $price) {
$cur_price['price'] += $cur = ($price > ($cur_price['price'] + ($u->rep['rep' . $val] - $u->rep['nu_' . $val])) ? ($u->rep['rep' . $val] - $u->rep['nu_' . $val]) : (($u->rep['rep' . $val] - $u->rep['nu_' . $val]) - ((($price - $cur_price['price']) - ($u->rep['rep' . $val] - $u->rep['nu_' . $val])) * -1)));
$cur_price['nu_' . $val] = $cur;
}
}
}
if ($price == $cur_price['price']) {
echo '
Вы успешно приобрели 1 особенность за ' . $price . ' ед. награды';
$u->info['nskills'] += 1;
$u->rep['add_skills2'] += 1;
foreach ($dungeon as $key => $val) {
if ($key != 'price') {
$u->rep['nu_' . $val] += $cur_price['nu_' . $val];
mysql_query('UPDATE `rep` SET `nu_' . $val . '` = "' . $u->rep['nu_' . $val] . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
}
}
mysql_query('UPDATE `rep` SET `add_skills2` = "' . $u->rep['add_skills2'] . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
mysql_query('UPDATE `stats` SET `nskills` = "' . $u->info['nskills'] . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
} else {
echo 'Недостаточно репутации.';
}
} else {
echo '
Ничего не получилось...';
}
}
}
?>
info['dn'] == 0) {
?>
info['id']) {
$psh_start = ' ';
}
echo '
';
}
}
?>
Но Вы всегда можете приобрести ключ от прохода у любого "копателя пещер" в Торговом зале ;)';
}
}
}