2022-06-07 00:30:34 +03:00
< ?
if ( ! defined ( 'GAME' )) { die (); }
if ( $u -> room [ 'file' ] == 'dungeon_enter' ) {
2023-01-10 18:29:32 +02:00
$error = '' ; // Собираем ошибки.
$dungeonGroupList = '' ; // Сюда помещаем список Групп.
$dungeonGo = 1 ; // По умолчанию, мы идем в пещеру.
2022-06-07 00:30:34 +03:00
$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' ) );
if ( $dungeon [ 'id' ] == 104 && isset ( $_GET [ 'freego' ])) {
if ( $u -> info [ 'level' ] > 7 ) {
} elseif ( $u -> info [ 'money4' ] < $u -> info [ 'level' ] * 5 ) {
2023-01-10 18:29:32 +02:00
echo '<div><b style="color:#F00">Недостаточно зубов, необходимо ' . $u -> zuby ( ( $u -> info [ 'level' ] * 5 ) , 1 ) . '</b></div>' ;
2022-06-07 00:30:34 +03:00
} 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' );
2023-01-10 18:29:32 +02:00
echo '<div><b style="color:#F00">Вы успешно сняли задержку на поход за ' . $u -> zuby ( ( $u -> info [ 'level' ] * 5 ) , 1 ) . '</b></div>' ;
2022-06-07 00:30:34 +03:00
}
}
2023-01-10 18:29:32 +02:00
if ( isset ( $_GET [ 'rz' ]) && $dungeon [ 'quest' ] == 1 ) $roomSection = 1 ; // Получаем Задание
else $roomSection = 0 ; // Собираем группу для похода
2022-06-07 00:30:34 +03:00
//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 );
2023-01-10 18:29:32 +02:00
if ( $u -> info [ 'admin' ] > 0 ) unset ( $dungeon_timeout ); // $dungeon_timeout - задержка на посещение пещеры.
if ( isset ( $dungeon_timeout [ 'id' ])) // Кто-то передумал и не пойдет в пещеру, так-как уже там был.
2022-06-07 00:30:34 +03:00
{
$dungeonGo = 0 ;
if ( isset ( $_GET [ 'start' ])){
2023-01-10 18:29:32 +02:00
$error = 'До следующего похода осталось еще: ' . $u -> timeOut ( 60 * 60 * 2 - time () + $dungeon_timeout [ 'time' ]);
2022-06-07 00:30:34 +03:00
}
}
if ( isset ( $_GET [ 'start' ] ) && $zv [ 'uid' ] == $u -> info [ 'id' ] && $dungeonGo == 1 ) {
$ig = 1 ;
2023-01-10 18:29:32 +02:00
if ( $ig > 0 ){ //перемещаем игроков в пещеру
2022-06-07 00:30:34 +03:00
//$u->addAction(time(),'psh'.$dun,'');
$ins = mysql_query ( 'INSERT INTO `dungeon_now` (`city`,`uid`,`id2`,`name`,`time_start`)
VALUES ("' . $zv [ 'city' ] . '","' . $zv [ 'uid' ] . '","' . $dungeon [ 'id' ] . '","' . $dungeon [ 'name' ] . '","' . time () . '")' );
if ( $ins ){
$zid = mysql_insert_id ();
mysql_query ( 'UPDATE `dungeon_zv` SET `delete` = "' . time () . '" WHERE `id` = "' . $zv [ 'id' ] . '" LIMIT 1' );
2023-01-10 18:29:32 +02:00
//обновляем пользователей
2022-06-07 00:30:34 +03:00
$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` = "' . $dungeon [ 'id' ] . '"' );
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' ]);
}
2023-01-10 18:29:32 +02:00
//Добавляем квестовые обьекты для персонажей
2022-06-07 00:30:34 +03:00
$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 ];
}
2023-01-10 18:29:32 +02:00
//Сбор ресурсов
2022-06-07 00:30:34 +03:00
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 ();
2023-01-10 18:29:32 +02:00
foreach ( $map_locs as $ml ){ // tk_itm_fromY tk_itm_toY - отсеиваем позицию для дропа предметов.
2022-06-07 00:30:34 +03:00
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 ;
2023-01-10 18:29:32 +02:00
//Добавляем обьект для юзера
2022-06-07 00:30:34 +03:00
$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 {
2023-01-10 18:29:32 +02:00
//Предмет находится в конкретном месте
2022-06-07 00:30:34 +03:00
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 ;
if ( $dungeon [ 'id' ] == 106 ) {
$snew = 4 ;
} elseif ( $dungeon [ 'id' ] == 104 ) {
$snew = 4 ;
}
$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` = "' . $dungeon [ 'd_room' ] . '" WHERE ' . $ids . ' LIMIT ' . ( $zv [ 'team_max' ] + 1 ) . '' );
2023-01-10 18:29:32 +02:00
//Добавляем ботов и обьекты в пещеру $zid с for_dn = $dungeon['id']
//Добавляем ботов
2022-06-07 00:30:34 +03:00
$vls = '' ;
$sp = mysql_query ( 'SELECT * FROM `dungeon_bots` WHERE `for_dn` = "' . $dungeon [ 'id' ] . '"' );
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 . '' );
2023-01-10 18:29:32 +02:00
//Добавляем обьекты
2022-06-07 00:30:34 +03:00
$vls = '' ;
$sp = mysql_query ( 'SELECT * FROM `dungeon_obj` WHERE `for_dn` = "' . $dungeon [ 'id' ] . '"' );
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' ] . '"),' ;
}
2023-01-10 18:29:32 +02:00
//Добавление обьектов (день святого валентина)
2022-06-07 00:30:34 +03:00
if ( floor ( date ( 'm' )) == 2 && floor ( date ( 'd' )) >= 7 ) {
if ( floor ( date ( 'm' )) == 2 && floor ( date ( 'd' )) >= 14 ) {
2023-01-10 18:29:32 +02:00
//Появляются мобы которые принимают цветы
2022-06-07 00:30:34 +03:00
$vlsbts = '' ;
$ins1bts = NULL ;
if ( $dungeon [ 'id' ] == 1 ) {
2023-01-10 18:29:32 +02:00
//4 уровня (КАНАЛИЗАЦИЯ)
2022-06-07 00:30:34 +03:00
$vlsbts .= '("' . $zid . '","410","1","","-5","3","8","0","0"),' ;
2023-01-10 18:29:32 +02:00
//4-7 уровня
2022-06-07 00:30:34 +03:00
$vlsbts .= '("' . $zid . '","413","1","","8","46","9","0","0"),' ;
} elseif ( $dungeon [ 'id' ] == 12 ) {
2023-01-10 18:29:32 +02:00
//(ПТП)
//4-7 уровня
2022-06-07 00:30:34 +03:00
$vlsbts .= '("' . $zid . '","413","1","","-3","18","9","0","0"),' ;
2023-01-10 18:29:32 +02:00
//4-9 уровня
2022-06-07 00:30:34 +03:00
$vlsbts .= '("' . $zid . '","414","1","","-2","29","10","0","0"),' ;
} elseif ( $dungeon [ 'id' ] == 3 ) {
2023-01-10 18:29:32 +02:00
//(КАТАКОМБЫ)
//4-7 уровня
2022-06-07 00:30:34 +03:00
$vlsbts .= '("' . $zid . '","413","1","","15","8","9","0","0"),' ;
2023-01-10 18:29:32 +02:00
//4-9 уровня
2022-06-07 00:30:34 +03:00
$vlsbts .= '("' . $zid . '","414","1","","3","35","10","0","0"),' ;
} elseif ( $dungeon [ 'id' ] == 101 ) {
2023-01-10 18:29:32 +02:00
//(бездна)
//4-7 уровня
2022-06-07 00:30:34 +03:00
$vlsbts .= '("' . $zid . '","413","1","","-2","21","9","0","0"),' ;
2023-01-10 18:29:32 +02:00
//4-9 уровня
2022-06-07 00:30:34 +03:00
$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 );
}
2023-01-10 18:29:32 +02:00
//Раскидываем предметы по пещере (Блёклый подземник)
2022-06-07 00:30:34 +03:00
$dcords = array ();
$c_sp = mysql_query ( 'SELECT * FROM `dungeon_map` WHERE `id_dng` = "' . $dungeon [ 'id' ] . '"' );
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 ]);
2023-01-10 18:29:32 +02:00
$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}"),' ;
2022-06-07 00:30:34 +03:00
$j -- ;
}
$i ++ ;
}
2023-01-10 18:29:32 +02:00
//Раскидываем предметы по пещере (Черепичный подземник)
2022-06-07 00:30:34 +03:00
$sp = mysql_query ( 'SELECT * FROM `dungeon_bots` WHERE `for_dn` = "' . $dungeon [ 'id' ] . '"' );
$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 ]);
2023-01-10 18:29:32 +02:00
$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}"),' ;
2022-06-07 00:30:34 +03:00
}
$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 ]);
2023-01-10 18:29:32 +02:00
$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}"),' ;
2022-06-07 00:30:34 +03:00
}
$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 ( '<script>location="main.php?rnd=' . $code . '";</script>' );
} else {
2023-01-10 18:29:32 +02:00
$error = 'Ошибка перехода в подземелье...' ;
2022-06-07 00:30:34 +03:00
}
} else {
2023-01-10 18:29:32 +02:00
$error = 'Ошибка перехода в подземелье...' ;
2022-06-07 00:30:34 +03:00
}
} else {
2023-01-10 18:29:32 +02:00
$error = 'Ошибка перехода в подземелье...' ;
2022-06-07 00:30:34 +03:00
}
}
} elseif ( isset ( $_POST [ 'go' ] , $_POST [ 'goid' ] ) && $dungeonGo == 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' ] ) {
2023-01-10 18:29:32 +02:00
$error = 'Вы ввели неправильный пароль' ;
2022-06-07 00:30:34 +03:00
} 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 ){
2023-01-10 18:29:32 +02:00
$error = 'Не удалось вступить в эту группу' ;
2022-06-07 00:30:34 +03:00
unset ( $zv );
} else {
$u -> info [ 'dn' ] = $zv [ 'id' ];
}
} else {
2023-01-10 18:29:32 +02:00
$error = 'В группе нет места' ;
2022-06-07 00:30:34 +03:00
unset ( $zv );
}
} elseif ( $zv [ 'dun' ] == 1 ){
2023-01-10 18:29:32 +02:00
//Канализация
2022-06-07 00:30:34 +03:00
$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 ];
$l45 = 0 ;
if ( $row2 [ 'level' ] == 4 && $u -> info [ 'level' ] == 5 ) {
$l45 = 1 ;
} elseif ( $row2 [ 'level' ] == 5 && $u -> info [ 'level' ] == 4 ) {
$l45 = 1 ;
}
if ( $u -> info [ 'admin' ] > 0 ) {
$l45 = 1 ;
}
if ( $row2 [ 'level' ] != $u -> info [ 'level' ] && $l45 == 0 ) {
2023-01-10 18:29:32 +02:00
$error = 'Вы не подходите по уровню' ;
2022-06-07 00:30:34 +03:00
} elseif ( $row_max > $row ) {
$upd = mysql_query ( 'UPDATE `stats` SET `dn` = "' . $zv [ 'id' ] . '" WHERE `id` = "' . $u -> info [ 'id' ] . '" LIMIT 1' );
if ( ! $upd ){
2023-01-10 18:29:32 +02:00
$error = 'Не удалось вступить в эту группу' ;
2022-06-07 00:30:34 +03:00
unset ( $zv );
} else {
$u -> info [ 'dn' ] = $zv [ 'id' ];
}
} else {
2023-01-10 18:29:32 +02:00
$error = 'В группе нет места' ;
2022-06-07 00:30:34 +03:00
unset ( $zv );
}
} elseif ( ( $u -> info [ 'level' ] < 4 && $zv [ 'dun' ] == 104 ) || $u -> info [ 'admin' ] > 0 ){
2023-01-10 18:29:32 +02:00
//Шахты
2022-06-07 00:30:34 +03:00
$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 && $u -> info [ 'admin' ] == 0 ) {
2023-01-10 18:29:32 +02:00
$error = 'Вы не подходите по уровню' ;
2022-06-07 00:30:34 +03:00
} elseif ( $row_max > $row ) {
$upd = mysql_query ( 'UPDATE `stats` SET `dn` = "' . $zv [ 'id' ] . '" WHERE `id` = "' . $u -> info [ 'id' ] . '" LIMIT 1' );
if ( ! $upd ){
2023-01-10 18:29:32 +02:00
$error = 'Не удалось вступить в эту группу' ;
2022-06-07 00:30:34 +03:00
unset ( $zv );
} else {
$u -> info [ 'dn' ] = $zv [ 'id' ];
}
} else {
2023-01-10 18:29:32 +02:00
$error = 'В группе для вас нет места' ;
2022-06-07 00:30:34 +03:00
unset ( $zv );
}
} else {
2023-01-10 18:29:32 +02:00
$error = 'Вы не подходите по уровню' ;
2022-06-07 00:30:34 +03:00
unset ( $zv );
}
} else {
2023-01-10 18:29:32 +02:00
$error = 'Заявка не найдена' ;
2022-06-07 00:30:34 +03:00
}
} else {
2023-01-10 18:29:32 +02:00
$error = 'Вы уже находитесь в группе' ;
2022-06-07 00:30:34 +03:00
}
} elseif ( isset ( $_POST [ 'leave' ] ) && isset ( $zv [ 'id' ] ) && $dungeonGo == 1 ) {
if ( $zv [ 'uid' ] == $u -> info [ 'id' ] ) {
2023-01-10 18:29:32 +02:00
//ставим в группу нового руководителя
2022-06-07 00:30:34 +03:00
$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 {
2023-01-10 18:29:32 +02:00
//удаляем группу целиком
2022-06-07 00:30:34 +03:00
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 {
2023-01-10 18:29:32 +02:00
//просто выходим с группы
2022-06-07 00:30:34 +03:00
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 ) {
$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' ] . '","' . $dungeon [ 'id' ] . '",
"' . 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' );
2023-01-10 18:29:32 +02:00
$error = 'Вы успешно создали группу' ;
2022-06-07 00:30:34 +03:00
} else {
2023-01-10 18:29:32 +02:00
$error = 'Не удалось создать группу' ;
2022-06-07 00:30:34 +03:00
}
} else {
2023-01-10 18:29:32 +02:00
$error = 'Вы уже находитесь в группе' ;
2022-06-07 00:30:34 +03:00
}
}
2023-01-10 18:29:32 +02:00
//Генерируем список групп
2022-06-07 00:30:34 +03:00
$sp = mysql_query ( 'SELECT * FROM `dungeon_zv` WHERE `city` = "' . $u -> info [ 'city' ] . '" AND `dun` = "' . $dungeon [ 'id' ] . '" AND `delete` = "0" AND `time` > "' . ( time () - 60 * 60 * 2 ) . '"' );
while ( $pl = mysql_fetch_array ( $sp ) ){
$dungeonGroupList .= '<div style="padding:2px;">' ;
if ( $u -> info [ 'dn' ] == 0 ) $dungeonGroupList .= '<input type="radio" name="goid" id="goid" value="' . $pl [ 'id' ] . '" />' ;
$dungeonGroupList .= '<span class="date">' . date ( 'H:i' , $pl [ 'time' ]) . '</span> ' ;
2023-01-10 18:29:32 +02:00
$pus = '' ; //группа
2022-06-07 00:30:34 +03:00
$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 ) ) {
2023-01-10 18:29:32 +02:00
$pus .= '<b>' . $pu [ 'login' ] . '</b> [' . $pu [ 'level' ] . ']<a href="info/' . $pu [ 'id' ] . '" target="_blank"><img src="https://img.new-combats.com/i/inf_' . $pu [ 'city' ] . '.gif" title="Инф. о ' . $pu [ 'login' ] . '"></a>' ;
2022-06-07 00:30:34 +03:00
$pus .= ', ' ;
}
$pus = trim ( $pus , ', ' );
$dungeonGroupList .= $pus ; unset ( $pus );
if ( $pl [ 'pass' ] != '' && $u -> info [ 'dn' ] == 0 ) $dungeonGroupList .= ' <small><input type="password" name="pass_com" value=""></small>' ;
if ( $pl [ 'com' ] != '' ) {
$dl = '' ;
2023-01-10 18:29:32 +02:00
// Если модератор, даем возможность удалять комментарий к походу.
2022-06-07 00:30:34 +03:00
$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 ){
2023-01-10 18:29:32 +02:00
$dl .= ' (<a href="?delcom=' . $pl [ 'id' ] . '&key=' . $u -> info [ 'nextAct' ] . '&rnd=' . $code . '">удалить комментарий</a>)' ;
2022-06-07 00:30:34 +03:00
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' ];
}
}
2023-01-10 19:26:14 +02:00
$pl [ 'com' ] = htmlspecialchars ( $pl [ 'com' ], NULL );
2022-06-07 00:30:34 +03:00
if ( $pl [ 'dcom' ] > 0 ) {
2023-01-10 18:29:32 +02:00
$dl = ' <font color="grey"><i>комментарий удален модератором</i></font>' ;
2022-06-07 00:30:34 +03:00
}
if ( $pl [ 'dcom' ] > 0 ) {
if ( $moder [ 'boi' ] == 1 || $u -> info [ 'admin' ] > 0 ) {
$pl [ 'com' ] = '<font color="red">' . $pl [ 'com' ] . '</font>' ;
} else {
$pl [ 'com' ] = '' ;
}
}
$dungeonGroupList .= '<small> | ' . $pl [ 'com' ] . '' . $dl . '</small>' ;
}
$dungeonGroupList .= '</div>' ;
}
?>
<style>
/*body {
background-color:#E2E2E2;
background-image: url(https://img.new-combats.com/i/misc/showitems/dungeon.jpg);
background-repeat:no-repeat;background-position:top right;
}*/
</style>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><div style="padding-left:0px;" align="center">
<h3><? echo $u->room['name']; ?></h3>
</div></td>
<td width="200"><div align="right">
<table cellspacing="0" cellpadding="0">
<tr>
<td width="100%"> </td>
<td>
<? if($roomSection==0) { ?>
<table border="0" cellpadding="0" cellspacing="0">
<tr align="right" valign="top">
<td><!-- -->
<? echo $goLis; ?>
<!-- -->
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td nowrap="nowrap"><table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#DEDEDE">
<tr>
<td bgcolor="#D3D3D3"><img src="https://img.new-combats.com/i/move/links.gif" width="9" height="7" /></td>
<td bgcolor="#D3D3D3" nowrap="nowrap"><a href="#" id="greyText" class="menutop" onclick="location='main.php?loc=<? if($u->info['city']=='abandonedplain') { echo '3.180.0.267'; } elseif($u->info['city']=='fallenearth') { echo '6.180.0.102'; } elseif($u->info['room']==188) { echo '1.180.0.4'; } elseif($u->info['room']==393) { echo '1.180.0.2'; } elseif($u->info['room']==372) { echo '1.180.0.323'; }elseif($u->info['room']==395) { echo '2.180.0.231'; }elseif($u->info['room']==397) { echo '2.180.0.229'; } elseif($u->info['room']==242) { echo '2.180.0.236'; } else { echo '1.180.0.321'; } ?>&rnd=<? echo $code; ?>';" title="<?
if($u->info['city']=='fallenearth'){
thisInfRm('6.180.0.102',1);
}elseif($u->info['city']=='abandonedplain'){
thisInfRm('3.180.0.267',1);
}elseif($u->info['room']==188){
thisInfRm('1.180.0.4',1);
}elseif($u->info['room']==393){
thisInfRm('1.180.0.2',1);
}elseif($u->info['room']==372){
thisInfRm('1.180.0.323',1);
}elseif($u->info['room']==395){
thisInfRm('2.180.0.231',1);
}elseif($u->info['room']==397){
thisInfRm('2.180.0.229',1);
}elseif($u->info['room']==242){
thisInfRm('2.180.0.236',1);
}else {
thisInfRm('1.180.0.321',1);
}
?>"><?
if($u->info['city']=='fallenearth'){
2023-01-10 18:29:32 +02:00
echo "Темный Портал";
2022-06-07 00:30:34 +03:00
} elseif($u->info['city']=='abandonedplain'){
2023-01-10 18:29:32 +02:00
echo "Центральная площадь";
2022-06-07 00:30:34 +03:00
} elseif($u->info['room']==188){
2023-01-10 18:29:32 +02:00
echo "Зал воинов";
2022-06-07 00:30:34 +03:00
} elseif($u->info['room']==393){
2023-01-10 18:29:32 +02:00
echo "Зал воинов 2";
2022-06-07 00:30:34 +03:00
} elseif($u->info['room']==372){
2023-01-10 18:29:32 +02:00
echo "Большая парковая улица";
2022-06-07 00:30:34 +03:00
} elseif($u->info['room']==395){
2023-01-10 18:29:32 +02:00
echo "Зал воинов";
2022-06-07 00:30:34 +03:00
} elseif($u->info['room']==397){
2023-01-10 18:29:32 +02:00
echo "Зал воинов 2";
2022-06-07 00:30:34 +03:00
} elseif($u->info['room']==242){
2023-01-10 18:29:32 +02:00
echo "Страшилкина улица";
2022-06-07 00:30:34 +03:00
} else {
2023-01-10 18:29:32 +02:00
echo "Магический Портал";
2022-06-07 00:30:34 +03:00
}
?></a></td>
</tr>
<? if( isset($dungeon['shop']) && $dungeon['shop'] > 0 ) {
$shop = mysql_fetch_array( mysql_query('SELECT `id` as shop_id, `code` FROM `room` WHERE `id` = "'.$dungeon['shop'].'" LIMIT 1') );
if( isset($shop['code']) ){?>
<tr>
<td bgcolor="#D3D3D3"><img src="https://img.new-combats.com/i/move/links.gif" width="9" height="7" /></td>
2023-01-10 18:29:32 +02:00
<td bgcolor="#D3D3D3" nowrap="nowrap"><a href="#" id="greyText" class="menutop" onclick="location='main.php?loc=<?=$shop['code']?>&rnd=<? echo $code; ?>';" title="<? thisInfRm($shop['code'],1); ?>">Рыцарский магазин</a></td>
2022-06-07 00:30:34 +03:00
</tr>
<? }
} ?>
</table>
</td>
</tr>
</table></td>
</tr>
</table>
<? } ?>
</td>
</tr>
</table>
</div></td>
</tr>
</table>
<? if( $roomSection == 1 ) { ?>
<div align="center" style="float:right;width:100px;">
<p>
2023-01-10 18:29:32 +02:00
<input type='button' onclick='location="main.php?rz=1"' value="Обновить" />
2022-06-07 00:30:34 +03:00
<br />
2023-01-10 18:29:32 +02:00
<input type='button' onclick='location="main.php"' value="Вернуться" />
2022-06-07 00:30:34 +03:00
</p>
</div>
<? } else { ?>
<div align="center" style="float:right;width:100px;">
<p>
2023-01-10 18:29:32 +02:00
<input type='button' onclick='location="main.php"' value="Обновить" />
2022-06-07 00:30:34 +03:00
<? if($dungeon['quest'] == 1){?>
<br />
2023-01-10 18:29:32 +02:00
<input type='button' onclick='location="main.php?rz=1"' value="Задания" />
2022-06-07 00:30:34 +03:00
<? } ?>
</p>
</div>
<? } ?>
<?
if($error!='')echo '<font color="red"><b>'.$error.'</b></font><br>';
2023-01-10 18:29:32 +02:00
//отображаем
2022-06-07 00:30:34 +03:00
if( $dungeonGroupList == '' ) {
$dungeonGroupList = '';
} else {
if( !isset( $zv['id'] ) || $u->info['dn'] == 0 ){
if($dungeonGo==1 || $u->info['dn'] == 0 ){
2023-01-10 18:29:32 +02:00
$pr = '<input name="go" type="submit" value="Вступить в группу">';
2022-06-07 00:30:34 +03:00
}
$dungeonGroupList = '<form autocomplete="off" action="main.php?rnd='.$code.'" method="post">'.$pr.'<br>'.$dungeonGroupList.''.$pr.'</form>';
}
$dungeonGroupList .= '<hr>';
}
if( $roomSection == 0 ) { echo $dungeonGroupList; }
if( $roomSection == 1 ) {
2023-01-10 18:29:32 +02:00
# endQuest завершаем задание по нажатию.
2022-06-07 00:30:34 +03:00
if( isset( $_GET['endQuest'] ) && $_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);
}
}
?>
<div>
<form autocomplete="off" action='/main.php' method="post" name="F1" id="F1">
<?
$qsee = '';
$hgo = $u->testAction('`uid` = "'.$u->info['id'].'" AND `room` = "'.$u->info['room'].'" AND `time` >= '.(time()-60*60*24).' AND `vars` = "psh_qt_'.$dungeon['city'].'" LIMIT 1',1);
$qc=0; // Quest Count
2023-01-10 18:29:32 +02:00
//Генерируем список текущих квестов
2022-06-07 00:30:34 +03:00
$sp = mysql_query('SELECT * FROM `actions` WHERE `vars` LIKE "%start_quest%" AND `vals` = "go" AND `uid` = "'.$u->info['id'].'" LIMIT 100');
while( $pl = mysql_fetch_array( $sp ) ) {
if($pl['room'] == $u->info['room']){
$pq = mysql_fetch_array(mysql_query('SELECT * FROM `quests` WHERE `id` = "'.str_replace('start_quest','',$pl['vars']).'" LIMIT 1'));
2023-01-10 18:29:32 +02:00
if( $q->questCheckEnd($pq)==1 ) $qsee2 = '<input style="margin-top:6px;" type="button" value="Завершить задание" onclick="location=\'main.php?rz=1&endQuest='.$pl['id'].'\'">'; else $qsee2 = '';
2022-06-07 00:30:34 +03:00
$qsee .= '
2023-01-10 18:29:32 +02:00
<a href="main.php?rz=1&end_qst_now='.$pq['id'].'"><img src="https://img.new-combats.com/i/clear.gif" title="Отказаться от задания"></a>
2022-06-07 00:30:34 +03:00
<b>'.$pq['name'].'</b>
<div style="padding-left:15px;padding-bottom:5px;border-bottom:1px solid grey"><small>'.$pq['info'].'<br>'.$q->info($pq).''.$qsee2.' </small></div>
<br>';
#
$qc++;
}
}
if( isset( $_GET['add_quest'] ) && $qc == 0 ) {
if( isset( $hgo['id'] ) ) {
2023-01-10 18:29:32 +02:00
echo '<font color="red"><b>Нельзя получать задания чаще одного раза в сутки</b></font><br>';
2022-06-07 00:30:34 +03:00
} else {
$sp = mysql_query('SELECT * FROM `quests` WHERE `line` = '.$dungeon['id'].'');
$dq_add = array();
while( $pl = mysql_fetch_array( $sp ) ) {
if( $u->rep['rep'.$dungeon['city']] == 9999 ) {
2023-01-10 18:29:32 +02:00
//квет, рыцарского задания
2022-06-07 00:30:34 +03:00
if( $pl['kin'] == 1 ) {
$dq_add = array( 0 => $pl );
}
} elseif( $u->rep['rep'.$dungeon['city']] == 24999 ) {
2023-01-10 18:29:32 +02:00
//квет, рыцарского задания
2022-06-07 00:30:34 +03:00
if( $pl['kin'] == 2 ) {
$dq_add = array( 0 => $pl );
}
} else {
if( $pl['kin'] == 0 ) {
$dq_add[count($dq_add)] = $pl;
}
}
}
$dq_add = $q->onlyOnceQuest($dq_add, $u->info['id']);
$dq_add = $dq_add[rand(0,count($dq_add)-1)];
if( $q->testGood($dq_add) == 1 && $dq_add > 0 ) {
$q->startq_dn($dq_add['id']);
2023-01-10 18:29:32 +02:00
echo '<font color="red"><b>Вы успешно получили новое задание "'.$dq_add['name'].'".</b></font><br>';
2022-06-07 00:30:34 +03:00
$u->addAction(time(),'psh_qt_'.$dungeon['city'],$dq_add['id']);
} else {
if ( $u->rep['rep'.$dungeon['city']] == 9999 ) {
2023-01-10 18:29:32 +02:00
//квест, рыцарского задания
echo '<font color="red"><b>Вы уже получили задание на достижение титула рыцаря!</b></font><br>';
2022-06-07 00:30:34 +03:00
} elseif( $u->rep['rep'.$dungeon['city']] >= 24999 ) {
2023-01-10 18:29:32 +02:00
//квест, рыцарского задания
echo '<font color="red"><b>Вы завершили квестовую линию, ожидайте новых заданий!</b></font><br>';
2022-06-07 00:30:34 +03:00
} else {
2023-01-10 18:29:32 +02:00
echo '<font color="red"><b>Не удалось получить задание "'.$dq_add['name'].'". Попробуйте еще...</b></font><br>';
2022-06-07 00:30:34 +03:00
}
}
unset( $dq_add );
}
} elseif( isset( $_GET['add_quest'] ) && $qc > 0 ) {
2023-01-10 18:29:32 +02:00
echo '<font color="red"><b>Что-то пошло не так... осторожнее.. <br/><br/></b></font><br>';
2022-06-07 00:30:34 +03:00
}
if( $qsee == '' ) {
2023-01-10 18:29:32 +02:00
$qsee = 'К сожалению у вас нет ни одного задания<br/><br/>';
2022-06-07 00:30:34 +03:00
}
?>
<Br />
<FIELDSET>
2023-01-10 18:29:32 +02:00
<LEGEND><B>Текущие задания: </B></LEGEND>
2022-06-07 00:30:34 +03:00
<?=$qsee?>
<span style="padding-left: 10">
<?
if( $qc > 0 ){
2023-01-10 18:29:32 +02:00
echo 'Вы еще не справились с текущим заданием.';
2022-06-07 00:30:34 +03:00
} elseif( !isset( $hgo['id'] ) && $qc == 0 ) {
?>
<br />
2023-01-10 18:29:32 +02:00
<input type='button' value='Получить задание' onclick='location="main.php?rz=1&add_quest=1"' />
2022-06-07 00:30:34 +03:00
<?
} else {
2023-01-10 18:29:32 +02:00
echo 'Получить новое задание можно <b>'.date('d.m.Y H:i',$hgo['time']+60*60*24).'</b> <font color="">( Через '.$u->timeOut($hgo['time']+60*60*24-time()).' )</font>';
2022-06-07 00:30:34 +03:00
}
?>
</span>
</FIELDSET>
</form>
<br />
<?
2023-01-10 18:29:32 +02:00
//Начисление бонуса награды
2022-06-07 00:30:34 +03:00
if( isset( $_GET['buy1'] ) ) {
$rt = 1;
if( $_GET['buy1'] == 1 ) {
2023-01-10 18:29:32 +02:00
//покупаем статы
2022-06-07 00:30:34 +03:00
$price = 2000+($u->rep['add_stats']*100);
$cur_price = array('price'=>0);
2023-01-10 18:29:32 +02:00
if( 25 - $u->rep['add_stats'] > 0 && $u->rep['allrep'] - $u->rep['allnurep'] >= $price ) { // Характеристики!
2022-06-07 00:30:34 +03:00
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['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');
2023-01-10 18:29:32 +02:00
echo '<font color="red"><b>Вы успешно приобрели 1 способность за '.$price.' ед. награды</b></font><br>';
2022-06-07 00:30:34 +03:00
} else {
2023-01-10 18:29:32 +02:00
echo '<font color="red"><b>Ничего не получилось...</b></font><br>';
2022-06-07 00:30:34 +03:00
}
2023-01-10 18:29:32 +02:00
} else echo 'Недостаточно репутации.';
2022-06-07 00:30:34 +03:00
} else {
2023-01-10 18:29:32 +02:00
echo '<font color="red"><b>Ничего не получилось...</b></font><br>';
2022-06-07 00:30:34 +03:00
}
2023-01-10 18:29:32 +02:00
} elseif( $_GET['buy1'] == 2 ) { // Умения!
2022-06-07 00:30:34 +03:00
$price = 10000;
$cur_price = array('price'=>0);
2023-01-10 18:29:32 +02:00
if(10-$u->rep['add_skills']>0 && $u->rep['allrep']-$u->rep['allnurep'] >= $price ) { // Умения!
2022-06-07 00:30:34 +03:00
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');
2023-01-10 18:29:32 +02:00
echo '<font color="red"><b>Вы успешно приобрели 1 умение за '.$price.' ед. награды</b></font><br>';
2022-06-07 00:30:34 +03:00
} else {
2023-01-10 18:29:32 +02:00
echo '<font color="red"><b>Ничего не получилось...</b></font><br>';
2022-06-07 00:30:34 +03:00
}
2023-01-10 18:29:32 +02:00
} else echo 'Недостаточно репутации.';
2022-06-07 00:30:34 +03:00
} else {
2023-01-10 18:29:32 +02:00
echo '<font color="red"><b>Ничего не получилось...</b></font><br>';
2022-06-07 00:30:34 +03:00
}
2023-01-10 18:29:32 +02:00
} elseif( $_GET['buy1'] == 3 ) { // Кредиты
2022-06-07 00:30:34 +03:00
$price = 100;
$cur_price = array('price'=>0);
2023-01-10 18:29:32 +02:00
if( $u->rep['allrep'] - $u->rep['allnurep'] >= $price) { // Покупаем кредиты
2022-06-07 00:30:34 +03:00
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');
2023-01-10 18:29:32 +02:00
echo '<font color="red"><b>Вы успешно приобрели 10 кр. за '.$price.' ед. награды</b></font><br>';
2022-06-07 00:30:34 +03:00
} else {
2023-01-10 18:29:32 +02:00
echo '<font color="red"><b>Ничего не получилось...</b></font><br>';
2022-06-07 00:30:34 +03:00
}
2023-01-10 18:29:32 +02:00
} else echo 'Недостаточно репутации.';
2022-06-07 00:30:34 +03:00
}else{
2023-01-10 18:29:32 +02:00
echo '<font color="red"><b>Ничего не получилось...</b></font><br>';
2022-06-07 00:30:34 +03:00
}
2023-01-10 18:29:32 +02:00
} elseif( $_GET['buy1'] == 4 ) { // Особенности
2022-06-07 00:30:34 +03:00
$price = 3000;
$cur_price = array('price'=>0);
2023-01-10 18:29:32 +02:00
if( 5 - $u->rep['add_skills2'] > 0 && $u->rep['allrep']-$u->rep['allnurep'] >= $price ) { // Особенности
2022-06-07 00:30:34 +03:00
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');
2023-01-10 18:29:32 +02:00
echo '<font color="red"><b>Вы успешно приобрели 1 особенность за '.$price.' ед. награды</b></font><br>';
2022-06-07 00:30:34 +03:00
} else {
2023-01-10 18:29:32 +02:00
echo '<font color="red"><b>Ничего не получилось...</b></font><br>';
2022-06-07 00:30:34 +03:00
}
2023-01-10 18:29:32 +02:00
} else echo 'Недостаточно репутации.';
2022-06-07 00:30:34 +03:00
} else {
2023-01-10 18:29:32 +02:00
echo '<font color="red"><b>Ничего не получилось...</b></font><br>';
2022-06-07 00:30:34 +03:00
}
}
}
?>
<fieldset>
2023-01-10 18:29:32 +02:00
<legend>Награда: <b> <? echo ( isset( $rt ) && $rt == 1 ? ($u->rep['allrep']-$u->rep['allnurep'])-$cur_price['price'] : ($u->rep['allrep']-$u->rep['allnurep']) );?>
ед.</b></legend>
2022-06-07 00:30:34 +03:00
<table>
<tr>
2023-01-10 18:29:32 +02:00
<td>Способность (еще <?=(25-$u->rep['add_stats'])?>)</td>
<td style='padding-left: 10px'>за <?=2000+($u->rep['add_stats']*100);?> ед.</td>
<td style='padding-left: 10px'><input type='button' value='Купить'
onclick="if (confirm('Купить: Способность?\n\nКупив способность, Вы сможете увеличить характеристики персонажа.\nНапример, можно увеличить силу.')) {location='main.php?rz=1&buy1=1'}" /></td>
2022-06-07 00:30:34 +03:00
</tr>
<tr>
2023-01-10 18:29:32 +02:00
<td>Умение (еще <?=(10-$u->rep['add_skills'])?>)</td>
<td style='padding-left: 10px'>за 10000 ед.</td>
<td style='padding-left: 10px'><input type='button' value='Купить'
onclick="if (confirm('Купить: Умение?\n\nУмение даёт возможность почуствовать себя мастером меча, топора, магии и т.п.')) {location='main.php?rz=1&buy1=2'}" /></td>
2022-06-07 00:30:34 +03:00
</tr>
<tr>
2023-01-10 18:29:32 +02:00
<td>Деньги (10 кр.)</td>
<td style='padding-left: 10px'>за 100 ед.</td>
<td style='padding-left: 10px'><input type='button' value='Купить'
onclick="if (confirm('Купить: Деньги (10 кр.)?\n\nНаграду можно получить полновесными кредитами.')) {location='main.php?rz=1&buy1=3'}" /></td>
2022-06-07 00:30:34 +03:00
</tr>
<tr>
2023-01-10 18:29:32 +02:00
<td>Особенность (еще <?=(5-$u->rep['add_skills2'])?>)</td>
<td style='padding-left: 10px'>за 3000 ед.</td>
<td style='padding-left: 10px'><input type='button' value='Купить'
onclick="if (confirm('Купить: Особенность?\n\nОсобенность - это дополнительные возможности персонажа, не дающие преимущества в боях.\nНапример, можно увеличить скорость восстановления HP')) {location='main.php?rz=1&buy1=4'}" /></td>
2022-06-07 00:30:34 +03:00
</tr>
</table>
</fieldset>
<?
$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) {
?>
<fieldset style='margin-top:15px;'>
<p><span style="padding-left: 10px">
<?
$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');
2023-01-10 18:29:32 +02:00
echo '<font color="red"><b>Вы успешно сдали чеки в количестве '.$x.' шт. на сумму '.$prc.' кр.</b></font><br>';
2022-06-07 00:30:34 +03:00
$chk[0] = 0;
?>
</span></p>
</fieldset><?
}
if($chk[0]>0) {
?>
2023-01-10 18:29:32 +02:00
<input type='button' value='Сдать чеки'
onclick="if (confirm('Сдать все чеки (<?=$chk[0]?> шт.) находящиеся у Вас в инвентаре за <?=$chk[1]?> кр. ?')) {location='main.php?rz=1&buy777=1'}" />
2022-06-07 00:30:34 +03:00
<? } ?>
<fieldset style='margin-top:15px;'>
<table>
<?
foreach($dungeon['list'] as $key=>$val){
//if( $u->rep['rep'.$val] > 0 ) {
echo '<tr>
2023-01-10 18:29:32 +02:00
<td width="200">Репутация в '.ucfirst(str_replace('city',' city',$val)).':</td>
<td>'.$u->rep['rep'.$val].' ед. </td>
2022-06-07 00:30:34 +03:00
</tr>';
//}
}
?>
</table>
2023-01-10 18:29:32 +02:00
<legend>Текущая репутация:</legend>
2022-06-07 00:30:34 +03:00
</fieldset>
</div>
<?
} else {
if($dungeonGo == 1){
if($u->info['dn']==0){
?>
<table width="350" border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="top">
<form id="from" autocomplete="off" name="from" action="main.php?pz1=<? echo $code; ?>" method="post">
<fieldset style='padding-left: 5; width=50%'>
2023-01-10 18:29:32 +02:00
<legend><b> Группа </b> </legend>
Комментарий
2022-06-07 00:30:34 +03:00
<input type="text" name="text" maxlength="40" size="40" />
<br />
2023-01-10 18:29:32 +02:00
Пароль
2022-06-07 00:30:34 +03:00
<input type="password" name="pass" maxlength="25" size="25" />
<br />
2023-01-10 18:29:32 +02:00
<input type="submit" name="add" value="Создать группу" />
2022-06-07 00:30:34 +03:00
<br />
</fieldset>
</form>
</td>
</tr>
</table>
<?
} else {
$psh_start = '';
if(isset($zv['id'])){
if($zv['uid']==$u->info['id']){
2023-01-10 18:29:32 +02:00
$psh_start = '<INPUT type=\'button\' name=\'start\' value=\'Начать\' onClick="top.frames[\'main\'].location = \'main.php?start=1&rnd='.$code.'\'"> ';
2022-06-07 00:30:34 +03:00
}
echo '<br><FORM autocomplete="off" id="REQUEST" method="post" style="width:210px;" action="main.php?rnd='.$code.'">
<FIELDSET style=\'padding-left: 5; width=50%\'>
2023-01-10 18:29:32 +02:00
<LEGEND><B> Группа </B> </LEGEND>
2022-06-07 00:30:34 +03:00
'.$psh_start.'
2023-01-10 18:29:32 +02:00
<INPUT type=\'submit\' name=\'leave\' value=\'Покинуть группу\'>
2022-06-07 00:30:34 +03:00
</FIELDSET>
</FORM>';
}
}
}else{
2023-01-10 18:29:32 +02:00
echo 'Поход в пещеры разрешен один раз в два часа. Осталось еще: '.$u->timeOut(60*60*2-time()+$dungeon_timeout['time']).'<br><small style="color:grey">Но Вы всегда можете приобрести ключ от прохода у любого "копателя пещер" в Торговом зале ;)</small>';
2022-06-07 00:30:34 +03:00
if( $dungeon['id'] == 104 ) {
2023-01-10 18:29:32 +02:00
echo '<hr>Вы можете посетить подземелье без ожидания: <button onClick="if(confirm(\'Вы уверены что хотите заплатить '.($u->info['level'] * 5).' зубов?\')){ location.href = \'/main.php?freego=1\'; }" class="btnnew">Снять задержку за '.$u->zuby(($u->info['level'] * 5),1).'</button>';
2022-06-07 00:30:34 +03:00
}
}
}
}
?>