AntiBK/main.php
Igor Barkov (iwork) d0b334a426 Upload code
2021-02-11 17:11:12 +02:00

239 lines
7.2 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?
session_start();
define('AntiBK', true);
include("engline/config.php");
include("engline/data.php");
include("engline/dbsimple/Generic.php");
include("engline/functions/functions.php");
include("engline/token/bootstrap.php");
$guid = getGuid();
$adb = DbSimple_Generic::connect($database['adb']);
$adb->query("SET NAMES ? ",$database['db_encoding']);
$adb->setErrorHandler("databaseErrorHandler");
$char = Char::initialization($guid, $adb);
$char->test->Guid();
$char->test->Block();
$char->test->Prison();
$char->test->Shut();
$char->test->Travm();
$char->test->Battle();
$char->test->Up();
$char->test->Items();
$char->test->Regen();
$char->test->Room();
$char->test->WakeUp();
$char->test->Effects();
create_token($guid);
$char_db = $char->getChar('char_db', '*');
$char_stats = $char->getChar('char_stats', '*');
$lang = $char->getLang();
$action = getVar('action', 'none');
$do = getVar('do');
$section = getVar('section', 1, 7);
$credit = getVar('credit');
$pass = getVar('pass');
$item_id = getVar('item_id', 0);
$item_slot = getVar('item_slot');
$room_go = getVar('room_go');
$stat = getVar('stat');
$error = getVar('error', 0);
$set_name = getVar('set_name');
$parameters = getVar('parameters');
$level_filter = getVar('level_filter', -1, 7);
$name_filter = getVar('name_filter', '', 7);
$level_filter = ($level_filter < 0) ?'' :$level_filter;
$login_mail = getVar('login_mail', '', 5);
if ($action == 'enter')
{
$login_mail = '';
setCookie('login_mail', '');
}
else if ($action == 'exit')
setCookie('PHPSESSID', '');
else if ($login_mail == $guid || lowercase($login_mail) == lowercase($char_db['login']))
$char->error->Map(218);
else if ($login_mail)
setCookie('login_mail', $login_mail, time() + 3600);
?>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Language" content="ru" />
<link rel="StyleSheet" href="styles/style.css" type="text/css" />
<script src="scripts/jquery.js" type="text/javascript"></script>
<script src="scripts/jquery.color.js" type="text/javascript"></script>
<script src="scripts/cookies.js" type="text/javascript"></script>
<script src="scripts/visual.js" type="text/javascript"></script>
<script src="scripts/main.js" type="text/javascript"></script>
<script src="scripts/show.js" type="text/javascript"></script>
<script src="scripts/dialog.js" type="text/javascript"></script>
<script type="text/javascript">
try{top.checkGame();} catch(e) {location.href = 'index.php';}
$.ajaxSetup({headers: {'X-Csrf-Token': '<?echo $_SESSION['token'];?>'}});
</script>
</head>
<body>
<div id="hint3"></div>
<?
$login = $char_db['login'];
$sex = $char_db['sex'];
$city = $char_db['city'];
$room = $char_db['room'];
$win = $char_db['win'];
$lose = $char_db['lose'];
$draw = $char_db['draw'];
$admin_level = $char_db['admin_level'];
$level = $char_db['level'];
$exp = $char_db['exp'];
$next_up = $char_db['next_up'];
$money = $char_db['money'];
$mass = $char_stats['mass'];
$maxmass = $char_stats['maxmass'];
$chin = $char_db['chin'];
$name_s = $char_db['clan_short'];
$clan = $char_db['clan'];
$orden = $char_db['orden'];
switch ($action)
{
case 'admin':
if ($admin_level > 1)
include("module/adminbar.php");
else
$char->error->Map();
break;
case 'orden':
include("module/orden.php");
break;
case 'inv':
case 'wear_item':
case 'wear_set':
case 'unwear_item':
case 'unwear_full':
include("module/inventory.php");
break;
case 'skills':
include("module/skills.php");
break;
case 'zayavka':
include("module/zayavka.php");
break;
case 'unwear_thing':
unwear_t($guid, $item_id);
break;
case 'wear_thing':
wear_t($guid, $item_id);
break;
case 'perevod':
include("module/give.php");
break;
case 'clan':
include("module/clan.php");
break;
case 'char':
include("module/char.php");
break;
case 'shape':
case 'security':
case 'info':
include("module/form.php");
break;
case 'report':
include("module/report.php");
break;
case 'magic':
include("module/magic.php");
break;
case 'map':
include("module/map.php");
break;
case 'gift':
$item_info = $adb->selectCell("SELECT `id` FROM `character_inventory` WHERE `guid` = ?d and `id` = ?d and `wear` = '0' and `mailed` = '0';", $guid ,$item_id) or $char->error->Inventory(213);
$res = $adb->selectRow("SELECT `object_type`,
`object_id`
FROM `character_inventory`
WHERE `id` = ?d", $item_id);
$obj_type = $res['object_type'];
$obj_id = $res['object_id'];
$name = $adb->selectCell("SELECT `name` FROM `$obj_type` WHERE `id` = ?d", $obj_id);
?>
<script>
if (confirm ('Вы уверены что хотите подарить "<?echo $name;?>" персонажу <?echo $to;?>?'))
location.href='main.php?action=gift_conf&item_id=<?echo $item_id;?>&to=<?echo $to;?>';
else
location.href='main.php?action=perevod&target=<?echo $to;?>';
</script>
<?
break;
case 'gift_conf':
gift($guid, $item_id, $to);
break;
case 'give':
$item_info = $adb->selectCell("SELECT `id` FROM `character_inventory` WHERE `guid` = ?d and `id` = ?d and `wear` = '0' and `mailed` = '0';", $guid ,$item_id) or $char->error->Inventory(213);
$res = $adb->selectRow("SELECT `object_type`,
`object_id`
FROM `character_inventory`
WHERE `id` = ?d", $item_id);
$obj_type = $res['object_type'];
$obj_id = $res['object_id'];
$name = $adb->selectCell("SELECT `name` FROM `$obj_type` WHERE `id` = ?d", $obj_id);
?>
<script>
if (confirm ('Вы уверены что хотите передать "<?echo $name;?>" персонажу <?echo $to;?>?'))
location.href = 'main.php?action=give_conf&item_id=<?echo $item_id;?>&to=<?echo $to;?>';}
else
location.href = 'main.php?action=perevod&target=<?echo $to;?>';
</script>
<?
break;
case 'give_conf':
give ($guid, $item_id, $to);
break;
case 'giveName':
if (empty($target)) include("module/giveName.php");
else
{
$adb->query("UPDATE `character_inventory`
SET `book_name` = ?s
WHERE `id` = ?d", $target ,$book);
echo "Заглавие успешно записано в книгу.";
}
break;
case 'enter':
if (!checks('last_t'))
{
$id = $adb->selectCell("SELECT `id` FROM `history_auth` WHERE `guid` = ?d ORDER BY `id` DESC", $guid) - 1;
$auth = $adb->selectRow("SELECT `ip`, `date` FROM `history_auth` WHERE `guid` = ?d and `id` = ?d", $guid, $id);
if ($id && $auth && $auth['ip'] != $_SERVER['REMOTE_ADDR'])
$char->chat->say($guid, date('d.m.y H:i', $auth['date'])." <font color='red'><b>ВНИМАНИЕ!</b></font> В предыдущий раз этим персонажем заходили с другого компьютера.");
}
include("module/room_detect.php");
break;
case 'exit':
$adb->query("DELETE FROM `online` WHERE `guid` = ?d", $guid);
$char->setChar('char_db', array('last_time' => time()));
toIndex('main');
break;
default:
case 'none':
case 'go':
case 'return':
include("module/room_detect.php");
break;
}
?>
</body>
</html>