if(!defined('GAME')) { die(); }
if($u->room['file'] == 'dungeon_enter_all') {
/*if( date('H') >= 22 && date('H') <= 24 ) {
if($u->info['align'] >= 1 && $u->info['align'] < 2) {
$room = 220;
}elseif($u->info['align'] >= 3 && $u->info['align'] < 4){
$room = 2;
}elseif($u->info['align']==7) {
$room = 5;
}else{
$room = 4;
}
if($_GET['GoBattle']=='1') {
mysql_query('UPDATE `users` SET `room` = "'.$room.'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1');
}
?>
die('Подземелья закрыты с 22:00 до 00:00 ');
}*/
$error = ''; // Собираем ошибки.
$dungeonGroupList = ''; // Сюда помещаем список Групп.
$dungeonGo = 1; // По умолчанию, мы идем в пещеру.
$dungeon = mysql_fetch_assoc( mysql_query('SELECT `id` as room, city, `dungeon_room` as d_room, city, `shop`, `dungeon_id` as id, `dungeon_name` as name, quest FROM `dungeon_room` WHERE `id`="'.$u->room['id'].'" LIMIT 1') );
//
$dungeon['quest'] = 1;
//
$dunname = array(
12 => array('capitalcity','Пещера Тысячи Проклятий'),
3 => array('demonscity','Катакомбы'),
101 => array('angelscity','Бездна'),
16 => array('sandcity','Пещеры Мглы'),
9 => array('emeraldscity','Потерянный вход'), //108
10 => array('suncity','Грибница'),
1 => array('dreamscity','Водосток'),
13 => array('abandonedplain','Гора Легиона'),
31 => array('devilscity','Туманные Низины'),
109 => array('izlom16','Излом Хаоса'),
444 => array('eastcity','Тропа Инквизиции')
);
if($u->info['admin'] > 0) $dunname[999] = array('capitalcity','Тестовая локация');
if( $dungeon['id'] == 104 && isset($_GET['freego'])) {
if( $u->info['level'] > 7 ) {
}elseif( $u->info['money4'] < $u->info['level'] * 5 ) {
echo 'Недостаточно зубов, необходимо '.$u->zuby( ($u->info['level'] * 5) ,1).'
';
}else{
mysql_query('DELETE FROM `actions` WHERE `uid` = "'.$u->info['id'].'" AND `vars` = "psh0" AND `time` >= '.(time()-60*60*2).' LIMIT 1');
$u->info['money4'] -= $u->info['level'] * 5;
mysql_query('UPDATE `users` SET `money4` = "'.$u->info['money4'].'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1');
echo 'Вы успешно сняли задержку на поход за '.$u->zuby( ($u->info['level'] * 5) ,1).'
';
}
}
if(isset($_GET['rz']) && $dungeon['quest'] == 1) $roomSection = 1; // Получаем Задание
else $roomSection = 0; // Собираем группу для похода
//if( $u->info['admin'] > 0 ) var_info($dungeon);
$all_dungeon = mysql_query('SELECT `city` FROM `dungeon_room` WHERE `city` IS NOT NULL AND `active`=1 ');
while( $t = mysql_fetch_array($all_dungeon) ) { $dungeon['list'][] = $t['city']; }
unset($all_dungeon);
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;
}
}
$dungeon_timeout = $u->testAction('`uid` = "'.$u->info['id'].'" AND `vars` = "psh0" AND `time` > '.(time()-60*60*2).' LIMIT 1',1);
if($u->info['admin']>0) unset($dungeon_timeout); // $dungeon_timeout - задержка на посещение пещеры.
if(isset($dungeon_timeout['id'])) // Кто-то передумал и не пойдет в пещеру, так-как уже там был.
{
$dungeonGo = 0;
if(isset($_GET['start'])){
$error = 'До следующего похода осталось еще: '.$u->timeOut(60*60*2-time()+$dungeon_timeout['time']);
}
}
if( isset( $_GET['start'] ) && $zv['uid'] == $u->info['id'] && $dungeonGo == 1 ) {
$ig = 1;
if( $ig > 0 ){ //перемещаем игроков в пещеру
//$u->addAction(time(),'psh'.$dun,'');
//
$dungeon['room'] = 321;
$dungeon['id'] = $zv['dun'];
//
$ins = mysql_query('INSERT INTO `dungeon_now` (`city`,`uid`,`id2`,`name`,`time_start`)
VALUES ("'.$zv['city'].'","'.$zv['uid'].'","'.$zv['dun'].'","'.$dunname[$zv['dun']][1].'","'.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 = array();
$spm2 = mysql_query('SELECT `id`,`x`,`y` FROM `dungeon_map` WHERE `id_dng` = "'.$zv['dun'].'"');
while( $plm2 = mysql_fetch_array( $spm2 ) ) {
$map_locs[] = array($plm2['x'],$plm2['y']);
}
unset( $spm2 , $plm2 );
$pxd = 0;
while( $pu = mysql_fetch_array($su) ) {
$pxd++;
$ids .= ' `id` = "'.$pu['id'].'" OR';
if( $u->stats['silver'] >= 3 ) {
$u->addAction( ( time() - ((60*60*2)/100*30) ) ,'psh0',$pu['id'],$pu['id']);
}else{
$u->addAction(time(),'psh0',$pu['id'],$pu['id']);
}
if(date('w') == 0 || date('w') == 6 || date('w') == 1) {
$u->repexp_add($pu['id'],5); //Репутация +5
}
//Добавляем квестовые обьекты для персонажей
$sp = mysql_query('SELECT * FROM `actions` WHERE `uid` = "'.$u->info['id'].'" AND `room` = '.$dungeon['room'].' 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` = "'.$dungeon['id'].'" LIMIT 1'));
if( isset($pl['id']) ) {
$act = explode(',',$pl['act_date']);
$i = 0;
while( $i < count($act) ) {
$act_date = explode(':|:',$act[$i]);
foreach($act_date as $key=>$val){
$val = explode(':=:',$val);
$actdate[$val[0]] = $val[1];
}
//Сбор ресурсов
if( isset($actdate['tk_itm']) && $actdate['tk_itm'] != '' ) {
$xr2 = explode('=',$actdate['tk_itm']);
if( $xr2[2] == 0 ) {
if( isset($actdate['tk_itm_fromY']) && isset($actdate['tk_itm_toY']) ) {
$actdate['tk_itm_fromY'] = (integer)$actdate['tk_itm_fromY'];
$actdate['tk_itm_toY'] = (integer)$actdate['tk_itm_toY'];
}
$ml_arr = array();
foreach($map_locs as $ml){ // tk_itm_fromY tk_itm_toY - отсеиваем позицию для дропа предметов.
if( (isset($actdate['tk_itm_fromY']) && isset($actdate['tk_itm_toY'])) OR (!isset($actdate['tk_itm_fromY']) && isset($actdate['tk_itm_toY'])) ) {
if( $ml[1] > $actdate['tk_itm_fromY'] && $actdate['tk_itm_toY'] > $ml[1] )$ml_arr[] = $ml;
elseif( !isset($actdate['tk_itm_fromY']) && $actdate['tk_itm_toY'] > $ml[1] ) $ml_arr[] = $ml;
} else $ml_arr[] = $ml;
}
if( isset($ml_arr) && count($ml_arr) == 0 ) $ml_arr = $map_locs;
//Добавляем обьект для юзера
$j = 0;
while( $j < $xr2[1] ){
$cord = $ml_arr[rand(0,count($ml_arr)-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.'","'.$u->info['id'].'","'.$xr2[0].'","'.time().'","'.$cord[0].'","'.$cord[1].'","'.$u->info['id'].'","'.$pl['id'].'"
)');
}
$j++;
}
}else{
//Предмет находится в конкретном месте
mysql_query('INSERT INTO `dungeon_items` (`dn`,`user`,`item_id`,`time`,`x`,`y`,`onlyfor`,`quest`) VALUES (
"'.$zid.'","'.$u->info['id'].'","'.$xr2[0].'","'.time().'","'.$xr2[2].'","'.$xr2[3].'","'.$u->info['id'].'","'.$pl['id'].'"
)');
}
}
$i++;
}
}
}
}
$ids = rtrim($ids,'OR');
$snew = 1;
$upd1 = mysql_query('UPDATE `stats` SET `s`="'.$snew.'",`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` = "405" WHERE '.$ids.' LIMIT '.($zv['team_max']+1).'');
//Добавляем ботов и обьекты в пещеру $zid с for_dn = $dungeon['id']
//Добавляем ботов
$vls = '';
$sp = mysql_query('SELECT * FROM `dungeon_bots` WHERE `for_dn` = "'.$zv['dun'].'"');
while( $pl = mysql_fetch_array( $sp ) ) {
if( $pl['id_bot'] == 0 && $pl['bot_group'] !=''){
$bots = explode( ',', $pl['bot_group'] );
$pl['id_bot'] = (int)$bots[rand(0, count($bots)-1 )];
}
if( $pl['id_bot'] > 0 )$vls .= '("'.$zid.'","'.$pl['id_bot'].'","'.$pl['colvo'].'","'.$pl['items'].'","'.$pl['x'].'","'.$pl['y'].'","'.$pl['dialog'].'","'.$pl['items'].'","'.$pl['go_bot'].'","'.$pl['noatack'].'"),';
unset($bots);
}
$vls = rtrim($vls,',');
$ins1 = mysql_query('INSERT INTO `dungeon_bots` (`dn`,`id_bot`,`colvo`,`items`,`x`,`y`,`dialog`,`atack`,`go_bot`,`noatack`) VALUES '.$vls.'');
//Добавляем обьекты
$vls = '';
$sp = mysql_query('SELECT * FROM `dungeon_obj` WHERE `for_dn` = "'.$zv['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 && floor(date('d')) <= 20) {
if( floor(date('m')) == 2 && floor(date('d')) >= 14 && floor(date('d')) <= 20) {
//Появляются мобы которые принимают цветы
$vlsbts = '';
$ins1bts = NULL;
if( $zv['dun'] == 1 ) {
//4 уровня (КАНАЛИЗАЦИЯ)
$vlsbts .='("'.$zid.'","410","1","","-5","3","8","0","0"),';
//4-7 уровня
$vlsbts .='("'.$zid.'","413","1","","8","46","9","0","0"),';
}elseif( $zv['dun'] == 12 ) {
//(ПТП)
//4-7 уровня
$vlsbts .='("'.$zid.'","413","1","","-3","18","9","0","0"),';
//4-9 уровня
$vlsbts .='("'.$zid.'","414","1","","-2","29","10","0","0"),';
}elseif( $zv['dun'] == 3 ) {
//(КАТАКОМБЫ)
//4-7 уровня
$vlsbts .='("'.$zid.'","413","1","","15","8","9","0","0"),';
//4-9 уровня
$vlsbts .='("'.$zid.'","414","1","","3","35","10","0","0"),';
}elseif( $zv['dun'] == 101 ) {
//(бездна)
//4-7 уровня
$vlsbts .='("'.$zid.'","413","1","","-2","21","9","0","0"),';
//4-9 уровня
$vlsbts .='("'.$zid.'","414","1","","2","43","10","0","0"),';
}
if( $vlsbts != '' ) {
$vlsbts = rtrim($vlsbts,',');
$ins1bts = mysql_query('INSERT INTO `dungeon_bots` (`dn`,`id_bot`,`colvo`,`items`,`x`,`y`,`dialog`,`atack`,`go_bot`) VALUES '.$vlsbts.'');
}
unset($vlsbts,$ins1bts);
}
//Раскидываем предметы по пещере (Блёклый подземник)
$dcords = array();
$c_sp = mysql_query('SELECT * FROM `dungeon_map` WHERE `id_dng` = "'.$zv['dun'].'"');
while( $c_pl = mysql_fetch_array($c_sp)) {
$dcords[] = array($c_pl['x'],$c_pl['y']);
}
$fcords = array();
$i = 1;
while($i <= $pxd) {
$j = rand(1,10);
while( $j >= 0 ) {
$rndxy = rand(0,count($dcords)-1);
$rndx = $dcords[$rndxy][0];
$rndy = $dcords[$rndxy][1];
$fcords[$rndx][$rndy] = true;
unset($dcords[$rndxy]);
$vls .= '("'.$zid.'","Блеклый подземник","vbig1.gif","'.$rndx.'","'.$rndy.'","fileact: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++;
}
//Раскидываем предметы по пещере (Черепичный подземник)
$sp = mysql_query('SELECT * FROM `dungeon_bots` WHERE `for_dn` = "'.$zv['dun'].'"');
$test = array();
$dcords2 = array();
$dcords3 = array();
while( $pl = mysql_fetch_array( $sp ) ) {
if(!isset($test[$pl['id_bot']])) {
$test[$pl['id_bot']] = mysql_fetch_array(mysql_query('SELECT * FROM `test_bot` WHERE `id` = "'.$pl['id_bot'].'" LIMIT 1'));
}
if( isset($test[$pl['id_bot']]['id']) && $test[$pl['id_bot']] != 2 ) {
if( $test[$pl['id_bot']]['level'] > 6 ) {
$dcords2[] = array($pl['x'],$pl['y']);
}
if( $test[$pl['id_bot']]['level'] >= 8 && $test[$pl['id_bot']]['align'] == 9 ) {
$dcords3[] = array($pl['x'],$pl['y']);
}
}else{
$test[$pl['id_bot']] = 2;
}
}
$i = 1;
while($i <= $pxd) {
$j = rand(1,5);
while( $j >= 0 ) {
$rndxy = rand(0,count($dcords2)-1);
$rndx = $dcords2[$rndxy][0];
$rndy = $dcords2[$rndxy][1];
if(!isset($fcords[$rndx][$rndy]) && isset($dcords2[$rndxy][0])) {
$fcords[$rndx][$rndy] = true;
unset($dcords2[$rndxy]);
$vls .= '("'.$zid.'","Черепичный подземник","vbig2.gif","'.$rndx.'","'.$rndy.'","fileact:vbig2","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++;
}
$i = 1;
while($i <= $pxd) {
$j = rand(1,2);
while( $j >= 0 ) {
$rndxy = rand(0,count($dcords3)-1);
$rndx = $dcords3[$rndxy][0];
$rndy = $dcords3[$rndxy][1];
if(!isset($fcords[$rndx][$rndy]) && isset($dcords3[$rndxy][0])) {
$fcords[$rndx][$rndy] = true;
unset($dcords3[$rndxy]);
$vls .= '("'.$zid.'","Кровавый подземник","vbig3.gif","'.$rndx.'","'.$rndy.'","fileact:vbig3","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++;
}
unset($test);
}
//
$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 {
$error = 'Ошибка перехода в подземелье...';
}
} else {
$error = 'Ошибка перехода в подземелье...';
}
} else {
$error = 'Ошибка перехода в подземелье...';
}
}
} elseif( isset( $_POST['go'] , $_POST['goid'] ) && $dungeonGo == 1 ) {
if(!isset($zv['id'])) {
$zv = mysql_fetch_array(mysql_query('SELECT * FROM `dungeon_zv` WHERE `city` = "all" 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'] ) {
$error = 'Вы ввели неправильный пароль';
} elseif( $u->info['level'] > 7 && $zv['dun'] != 1 ){
$row = 0;
if( 5 > $row ) {
$upd = mysql_query('UPDATE `stats` SET `dn` = "'.$zv['id'].'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1');
if( !$upd ){
$error = 'Не удалось вступить в эту группу';
unset($zv);
} else {
$u->info['dn'] = $zv['id'];
}
} else {
$error = 'В группе нет места';
unset($zv);
}
} elseif( $zv['dun'] == 1 ){
//Канализация
$row_max = 5;
if( $u->info['level'] == 4 ) {
$row_max = 4;
}elseif( $u->info['level'] == 5 ) {
$row_max = 3;
}elseif( $u->info['level'] == 6 ) {
$row_max = 2;
}elseif( $u->info['level'] >= 7 ) {
$row_max = 1;
}
$row = mysql_fetch_array(mysql_query('SELECT COUNT(*) FROM `stats` WHERE `dn` = "'.$zv['id'].'" LIMIT 1'));
$row1 = mysql_fetch_array(mysql_query('SELECT * FROM `stats` WHERE `dn` = "'.$zv['id'].'" LIMIT 1'));
$row2 = mysql_fetch_array(mysql_query('SELECT * FROM `users` WHERE `id` = "'.$row1['id'].'" LIMIT 1'));
$row = $row[0];
if( $row2['level'] != $u->info['level'] ) {
$error = 'Вы не подходите по уровню';
}elseif( $row_max > $row ) {
$upd = mysql_query('UPDATE `stats` SET `dn` = "'.$zv['id'].'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1');
if( !$upd ){
$error = 'Не удалось вступить в эту группу';
unset($zv);
} else {
$u->info['dn'] = $zv['id'];
}
} else {
$error = 'В группе нет места';
unset($zv);
}
} elseif( $u->info['level'] < 4 && $zv['dun'] == 104 ){
//Шахты
$row_max = 3;
if( $u->info['level'] > 3 ) {
$row_max = 1;
}
$row = mysql_fetch_array(mysql_query('SELECT COUNT(*) FROM `stats` WHERE `dn` = "'.$zv['id'].'" LIMIT 1'));
$row1 = mysql_fetch_array(mysql_query('SELECT * FROM `stats` WHERE `dn` = "'.$zv['id'].'" LIMIT 1'));
$row2 = mysql_fetch_array(mysql_query('SELECT * FROM `users` WHERE `id` = "'.$row1['id'].'" LIMIT 1'));
$row = $row[0];
if( $row2['level'] != $u->info['level'] && $u->info['level'] > 3 ) {
$error = 'Вы не подходите по уровню';
}elseif( $row_max > $row ) {
$upd = mysql_query('UPDATE `stats` SET `dn` = "'.$zv['id'].'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1');
if( !$upd ){
$error = 'Не удалось вступить в эту группу';
unset($zv);
} else {
$u->info['dn'] = $zv['id'];
}
} else {
$error = 'В группе для вас нет места';
unset($zv);
}
} else {
$error = 'Вы не подходите по уровню';
unset($zv);
}
} else {
$error = 'Заявка не найдена';
}
} else {
$error = 'Вы уже находитесь в группе';
}
} elseif( isset( $_POST['leave'] ) && isset( $zv['id'] ) && $dungeonGo == 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 && $dungeonGo == 1 ) {
if( $u->info['dn'] == 0 ) {
$dun5 = $dungeon['id'];
//
if(isset($_POST['rpmg1'])) {
if($_POST['rpmg1']==2) {
$dun5 = 101; //Бездна
}elseif($_POST['rpmg1']==8) {
$dun5 = 12; //ПТП
}elseif($_POST['rpmg1']==10) {
$dun5 = 1; //Водосток
}elseif($_POST['rpmg1']==16) {
$dun5 = 16; //Пещера Мглы
}elseif($_POST['rpmg1']==4) {
$dun5 = 3; //Катакомбы
}elseif($_POST['rpmg1']==5) {
$dun5 = 9; //Потерянный вход
}elseif($_POST['rpmg1']==444) {
$dun5 = 444; //Тропа Инквизиции
}elseif($_POST['rpmg1']==6) {
$dun5 = 10; //Грибница
}elseif($_POST['rpmg1']==11) {
$dun5 = 13; //Гора легиона
}elseif($_POST['rpmg1']==106) {
$dun5 = 31; //Низины
}elseif($_POST['rpmg1']==999) {
$dun5 = 999; //Тестовая локация
}elseif($_POST['rpmg1']==9) {
$dun5 = 9; //Потеряный вход
}else{
$dun5 = 12; //ПТП
}
}else{
$dun5 = 12; //ПТП
}
//
$ins = mysql_query('INSERT INTO `dungeon_zv`
(`city`,`time`,`uid`,`dun`,`pass`,`com`,`lvlmin`,`lvlmax`,`team_max`) VALUES
("all","'.time().'","'.$u->info['id'].'","'.$dun5.'",
"'.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');
$error = 'Вы успешно создали группу';
} else {
$error = 'Не удалось создать группу';
}
} else {
$error = 'Вы уже находитесь в группе';
}
}
//Генерируем список групп
$sp = mysql_query('SELECT * FROM `dungeon_zv` WHERE `city` = "all" AND `delete` = "0" AND `time` > "'.(time()-60*60*2).'"');
while( $pl = mysql_fetch_array( $sp ) ){
$dungeonGroupList .= '';
if( $u->info['dn'] == 0 ) $dungeonGroupList .= '
';
$dungeonGroupList .= '
'.date('H:i',$pl['time']).' ';
$dungeonGroupList .= '
';
$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, ', ' );
$dungeonGroupList .= $pus; unset($pus);
if( $pl['pass'] != '' && $u->info['dn'] == 0 ) $dungeonGroupList .= '
';
if( $pl['com'] != '' ) {
$dl = '';
// Если модератор, даем возможность удалять комментарий к походу.
$moder = mysql_fetch_array(mysql_query('SELECT * FROM `moder` WHERE `align` = "'.$u->info['align'].'" LIMIT 1'));
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,'cp1251');
if( $pl['dcom'] > 0 ) {
$dl = '
комментарий удален модератором ';
}
if( $pl['dcom'] > 0 ) {
if( $moder['boi'] == 1 || $u->info['admin'] > 0 ) {
$pl['com'] = '
'.$pl['com'].' ';
} else {
$pl['com'] = '';
}
}
$dungeonGroupList .= '
| '.$pl['com'].''.$dl.' ';
}
$dungeonGroupList .= '
';
}
?>
if( $roomSection == 0 ) { ?>
Вход в подземелье
}?>
if($roomSection==0) { ?>
} ?>
if( $roomSection == 1 ) { ?>
Рыцарский Магазин
} else { ?>
if($u->info['level'] > 7) {
?>
}?>
} ?>
if($error!='')echo ''.$error.' ';
//отображаем
if( $dungeonGroupList == '' ) {
$dungeonGroupList = '';
} else {
if( !isset( $zv['id'] ) || $u->info['dn'] == 0 ) {
if($dungeonGo==1 || $u->info['dn'] == 0 ) {
$pr = ' ';
}
$dungeonGroupList = '';
}
$dungeonGroupList .= ' ';
}
if( $roomSection == 0 ) { echo $dungeonGroupList; }
if( $roomSection == 1 ) {
# endQuest завершаем задание по нажатию.
if(!empty($_GET['endQuest'])){
$action = mysql_fetch_array(mysql_query('SELECT * FROM `actions` WHERE `uid` = '.$u->info['id'].' AND `id`="'.$_GET['endQuest'].'" AND `vals` = "go" LIMIT 1'));
$quest = mysql_fetch_array(mysql_query('SELECT * FROM `quests` WHERE `id` = "'.str_replace('start_quest','',$action['vars']).'" LIMIT 1'));
if( $q->questCheckEnd($quest)==1 ){
$q->questSuccesEnd($quest, $action);
}
}
?>
//Начисление бонуса награды
if( isset( $_GET['buy1'] ) ) {
$rt = 1;
if( $_GET['buy1'] == 1 ) {
//покупаем статы
$price = 2000;
$cur_price = array('price'=>0);
if( 50 - $u->rep['add_stats'] > 0 && $u->rep['allrep'] - $u->rep['allnurep'] >= $price ) { // Характеристики!
foreach( $dungeon['list'] as $key => $val ) {
if( !( $cur_price['price'] >= $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;
}
}
//$mnt1 = ( isset( $rt ) && $rt == 1 ? ($u->rep['allrep']-$u->rep['allnurep'])-$cur_price['price'] : ($u->rep['allrep']-$u->rep['allnurep']) );
//print_r($dungeon['list']);
//
if( $price == $cur_price['price'] ) {
foreach( $dungeon['list'] as $key => $val ) {
//echo '['.$val.'->'.$cur_price['nu_'.$val].'->'.$u->rep['nu_'.$val].'->'.$rt.']';
if( isset( $cur_price['nu_'.$val] ) && isset( $u->rep['nu_'.$val] ) && $rt == 1 ) {
$u->rep['nu_'.$val] += $cur_price['nu_'.$val];
$r = mysql_query('UPDATE `rep` SET `nu_'.$val.'` = "'.$u->rep['nu_'.$val].'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1');
if($r) $rt = 1; else $rt = 0;
}
}
if($rt==1){
$u->info['ability'] += 1; $u->rep['add_stats'] += 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');
echo '
Вы успешно приобрели 1 способность за '.$price.' ед. награды ';
} else {
echo '
Ничего не получилось... ';
}
} else echo 'Недостаточно репутации.';
} else {
echo '
Ничего не получилось... ';
}
} elseif( $_GET['buy1'] == 2 ) { // Умения!
$price = 5000;
$cur_price = array('price'=>0);
if(15-$u->rep['add_skills']>0 && $u->rep['allrep']-$u->rep['allnurep'] >= $price ) { // Умения!
foreach($dungeon['list'] as $key=>$val){
if( !( $cur_price['price'] >= $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'] ) {
foreach( $dungeon['list'] as $key => $val ) {
if( isset( $cur_price['nu_'.$val] ) && isset( $u->rep['nu_'.$val] ) && $rt == 1 ) {
$u->rep['nu_'.$val] += $cur_price['nu_'.$val];
$r = mysql_query('UPDATE `rep` SET `nu_'.$val.'` = "'.$u->rep['nu_'.$val].'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1');
if($r) $rt = 1; else $rt = 0;
}
}
if($rt==1){
$u->info['skills'] += 1; $u->rep['add_skills'] += 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');
echo '
Вы успешно приобрели 1 умение за '.$price.' ед. награды ';
} else {
echo '
Ничего не получилось... ';
}
} else echo 'Недостаточно репутации.';
} else {
echo '
Ничего не получилось... ';
}
} elseif( $_GET['buy1'] == 3 ) { // Кредиты
$price = 100;
$cur_price = array('price'=>0);
if( $u->rep['allrep'] - $u->rep['allnurep'] >= $price) { // Покупаем кредиты
foreach($dungeon['list'] as $key=>$val){
if( !( $cur_price['price'] >= $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'] ) {
foreach( $dungeon['list'] as $key => $val ) {
if( isset( $cur_price['nu_'.$val] ) && isset( $u->rep['nu_'.$val] ) && $rt == 1 ) {
$u->rep['nu_'.$val] += $cur_price['nu_'.$val];
$r = mysql_query('UPDATE `rep` SET `nu_'.$val.'` = "'.$u->rep['nu_'.$val].'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1');
if($r) $rt = 1; else $rt = 0;
}
}
if($rt==1){
$u->info['money'] += 10; $u->rep['add_money'] += 10;
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');
echo '
Вы успешно приобрели 10 кр. за '.$price.' ед. награды ';
} else {
echo '
Ничего не получилось... ';
}
} else echo 'Недостаточно репутации.';
}else{
echo '
Ничего не получилось... ';
}
} elseif( $_GET['buy1'] == 4 ) { // Особенности
$price = 3000;
$cur_price = array('price'=>0);
if( 5 - $u->rep['add_skills2'] > 0 && $u->rep['allrep']-$u->rep['allnurep'] >= $price ) { // Особенности
foreach($dungeon['list'] as $key=>$val){
if( !( $cur_price['price'] >= $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'] ) {
foreach( $dungeon['list'] as $key => $val ) {
if( isset( $cur_price['nu_'.$val] ) && isset( $u->rep['nu_'.$val] ) && $rt == 1 ) {
$u->rep['nu_'.$val] += $cur_price['nu_'.$val];
$r = mysql_query('UPDATE `rep` SET `nu_'.$val.'` = "'.$u->rep['nu_'.$val].'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1');
if($r) $rt = 1; else $rt = 0;
}
}
if($rt==1){
$u->info['sskills'] += 1; $u->rep['add_skills2'] += 1;
mysql_query('UPDATE `rep` SET `add_skills2` = "'.$u->rep['add_skills2'].'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1');
mysql_query('UPDATE `stats` SET `sskills` = "'.$u->info['sskills'].'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1');
echo '
Вы успешно приобрели 1 особенность за '.$price.' ед. награды ';
} else {
echo '
Ничего не получилось... ';
}
} else echo 'Недостаточно репутации.';
} else {
echo '
Ничего не получилось... ';
}
}elseif( $_GET['buy1'] == 5 ) {
//покупаем слоты
$price = 2000+($u->rep['add_slot']*2000);
$price_kr = 500+($u->rep['add_slot']*500);
$cur_price = array('price'=>0);
if( $price_kr > $u->info['money'] ) {
echo '
Недостаточно денег ';
}elseif( 4 - $u->rep['add_slot'] > 0 && $u->rep['allrep'] - $u->rep['allnurep'] >= $price ) { // Характеристики!
foreach( $dungeon['list'] as $key => $val ) {
if( !( $cur_price['price'] >= $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;
}
}
//$mnt1 = ( isset( $rt ) && $rt == 1 ? ($u->rep['allrep']-$u->rep['allnurep'])-$cur_price['price'] : ($u->rep['allrep']-$u->rep['allnurep']) );
//print_r($dungeon['list']);
//
if( $price == $cur_price['price'] ) {
foreach( $dungeon['list'] as $key => $val ) {
//echo '['.$val.'->'.$cur_price['nu_'.$val].'->'.$u->rep['nu_'.$val].'->'.$rt.']';
if( isset( $cur_price['nu_'.$val] ) && isset( $u->rep['nu_'.$val] ) && $rt == 1 ) {
$u->rep['nu_'.$val] += $cur_price['nu_'.$val];
$r = mysql_query('UPDATE `rep` SET `nu_'.$val.'` = "'.$u->rep['nu_'.$val].'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1');
if($r) $rt = 1; else $rt = 0;
}
}
if($rt==1){
$u->info['priemslot'] += 1;
$u->rep['add_slot'] += 1;
$u->info['money'] -= $price_kr;
mysql_query('UPDATE `rep` SET `add_slot` = "'.$u->rep['add_slot'].'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1');
mysql_query('UPDATE `stats` SET `priemslot` = "'.$u->info['priemslot'].'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1');
mysql_query('UPDATE `users` SET `money` = "'.$u->info['money'].'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1');
echo '
Вы успешно приобрели 1 слот для приема за '.$price.' награды и '.$price_kr.' кр. ';
} else {
echo '
Ничего не получилось... ';
}
} else echo 'Недостаточно репутации.';
} else {
echo '
Ничего не получилось... ';
}
}
}
//цена на слоты
?>
Наград: echo ( isset( $rt ) && $rt == 1 ? ($u->rep['allrep']-$u->rep['allnurep'])-$cur_price['price'] : ($u->rep['allrep']-$u->rep['allnurep']) );?>
ед.
$chk = mysql_fetch_array(mysql_query('SELECT COUNT(`u`.`id`),SUM(`m`.`price1`) FROM `items_users` AS `u` LEFT JOIN `items_main` AS `m` ON `u`.`item_id` = `m`.`id` WHERE `m`.`type` = "61" AND `u`.`delete` = "0" AND `u`.`inOdet` = "0" AND `u`.`inShop` = "0" AND `u`.`inTransfer` = "0" AND `u`.`uid` = "'.$u->info['id'].'" LIMIT 1000'));
if(isset($_GET['buy777']) && $chk[0]>0) {
?>
$chk_cl = mysql_query('SELECT `u`.`id`,`m`.`price1` FROM `items_users` AS `u` LEFT JOIN `items_main` AS `m` ON `u`.`item_id` = `m`.`id` WHERE `m`.`type` = "61" AND `u`.`delete` = "0" AND `u`.`inOdet` = "0" AND `u`.`inShop` = "0" AND `u`.`inTransfer` = "0" AND `u`.`uid` = "'.$u->info['id'].'" LIMIT 1000');
while($chk_pl = mysql_fetch_array($chk_cl)) {
if(mysql_query('UPDATE `items_users` SET `delete` = "'.time().'" WHERE `id` = "'.$chk_pl['id'].'" LIMIT 1'));
{
$x++; $prc += $chk_pl['price1'];
}
}
$u->info['money'] += $prc;
mysql_query('UPDATE `users` SET `money` = "'.$u->info['money'].'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1');
echo 'Вы успешно сдали чеки в количестве '.$x.' шт. на сумму '.$prc.' кр. ';
$chk[0] = 0;
?>
}
if($chk[0]>0) {
?>
} ?>
foreach($dungeon['list'] as $key=>$val){
if( $u->rep['rep'.$val] >= 0 ) {
echo '
Репутация в '.ucfirst(str_replace('city',' city',$val)).':
'.$u->rep['rep'.$val].' ед.
';
}
}
?>
Текущая репутация:
} else {
if($dungeonGo == 1){
if($u->info['dn']==0){
?>
} else {
$psh_start = '';
if(isset($zv['id'])){
if($zv['uid']==$u->info['id']){
$psh_start = ' ';
}
echo ' ';
}
}
}else{
echo 'Поход в пещеры разрешен один раз в два часа. Осталось еще: '.$u->timeOut(60*60*2-time()+$dungeon_timeout['time']).'Но Вы всегда можете приобрести ключ от прохода у любого "копателя пещер" в Торговом зале ;) ';
//if( $dungeon['id'] == 104 ) {
//echo ' Вы можете посетить подземелье без ожидания: Снять задержку за '.$u->zuby(($u->info['level'] * 5),1).' ';
//}
}
}
}
?>