442 lines
21 KiB
PHP
442 lines
21 KiB
PHP
<?php
|
||
session_start();
|
||
if(!isset($_SESSION['uid'])) { header('Location: index.php'); die(); }
|
||
include('config.php');
|
||
include('functions.php');
|
||
|
||
$d = mysql_fetch_array(mysql_query("SELECT SUM(`massa`) AS `mass` FROM `inventory` WHERE `owner` = '{$user['id']}' AND `dressed` = 0 AND `setsale` = 0"));
|
||
$in = mysql_fetch_array(mysql_query('SELECT COUNT(*) AS `cnt` FROM `inventory` WHERE `owner` = "-101'.$user['id'].'"'));
|
||
$hostel = mysql_fetch_array(mysql_query('SELECT * FROM `hostel` WHERE `uid` = "'.$user['id'].'" LIMIT 1'));
|
||
|
||
$base = array(1 => 15, 2 => 30, 3 => 50, 4 => 100);
|
||
$vips = array(1 => 0.15, 2 => 0.30, 3 => 0.45);
|
||
|
||
function show_item($row, $txt, $place)
|
||
{
|
||
if (($row['maxdur'] <= $row['duration']) || ($row['dategoden'] && $row['dategoden'] <= time())) destructitem($row['id']);
|
||
$r = '';
|
||
|
||
$ntxt = "В инвентаре";
|
||
if ($txt == "В сундук") $ntxt = "В сундуке";
|
||
|
||
$magic = db::c()->query('SELECT * FROM `magic` WHERE `id` = ?i', $$row['magic'])->fetch_assoc();
|
||
$incmagic = mysql_fetch_array(mysql_query('SELECT * FROM `magic` WHERE `id` = \'' . $row['includemagic'] . '\' LIMIT 1'));
|
||
$incmagic['name'] = $row['includemagicname'];
|
||
$incmagic['cur'] = $row['includemagicdex'];
|
||
$incmagic['max'] = $row['includemagicmax'];
|
||
if (!$magic) {
|
||
$magic['chanse'] = $incmagic['chanse'];
|
||
$magic['time'] = $incmagic['time'];
|
||
$magic['targeted'] = $incmagic['targeted'];
|
||
}
|
||
#href="?search=1&otdel='.$row['otdel'].'&place='.$place.'&itm='.$row['id'].'&set=1"
|
||
if (isset($row['id'])) {
|
||
$r .= '<div id="inv_' . $row['id'] . '"><table><tbody>';
|
||
$r .= '<tr valign="top" style="border: 2px groove threedface;">';
|
||
$r .= '<td class="even links original"><img src="/i/sh/' . $row['img'] . '">
|
||
<span class="pk-new">
|
||
<a href="javascript: void(0);" style="display: none;">' . $ntxt . '</a><a href="?search=1&otdel=' . $row['otdel'] . '&place=' . $place . '&itm=' . $row['id'] . '&set=1" name="imt" id="itm_' . $row['id'] . '">' . $txt . '</a>
|
||
</span></td>';
|
||
$r .= '<input type="hidden" name="itid" value="' . $row['id'] . '" />';
|
||
$r .= '<td class="even item">';
|
||
$r .= '<div class="thinginfo"><a href="javascript: void(0);">' . $row['name'] . '</a> <img src="/i/align_' . $row['nalign'] . '.gif" /> (масса: ' . $row['massa'] . ') ' . (($row['present']) ? ' <img src="i/podarok.gif" width="16" height="18" title="Этот предмет вам подарил ' . $row['present'] . '. Вы не сможете передать этот предмет кому-либо еще." />' : "") . '<br />';
|
||
|
||
if ($row['ecost'] > 0) {
|
||
$r .= '<b>Цена: ' . $row['ecost'] . ' екр.</b> <br />';
|
||
} elseif ($row['point'] > 0) {
|
||
$r .= '<b>Цена: <font color=blue>' . $row['point'] . ' реп.</font></b> <br />';
|
||
} else {
|
||
$r .= '<b>Цена: ' . $row['cost'] . ' кр.</b> <br />';
|
||
}
|
||
|
||
if ($row['zeton'] > 0) {
|
||
$r .= '<b>Жетон: ' . $row['zeton'] . '</b> <br />';
|
||
}
|
||
|
||
$r .= 'Долговечность: ' . $row['duration'] . '/' . $row['maxdur'] . '<br />';
|
||
if (!$row['needident']) {
|
||
|
||
if ($magic['chanse']) {
|
||
if ($magic['chanse'] >= 95) $magic['chanse'] = 95;
|
||
$r .= 'Вероятность срабатывания: ' . $magic['chanse'] . '%<br />';
|
||
}
|
||
if ($magic['time']) {
|
||
$r .= 'Продолжительность действия магии: ' . $magic['time'] . ' мин.<br />';
|
||
}
|
||
if ($row['goden']) {
|
||
$r .= 'Срок годности: ' . $row['goden'] . ' дн. (до ' . date("Y.m.d H:i", $row['dategoden']) . ')<br />';
|
||
}
|
||
|
||
$r .= '<div class="need">';
|
||
$user = array();
|
||
|
||
if ($row['nsila']) {
|
||
$r .= '• ';
|
||
if ($row['nsila'] > $user['sila']) {
|
||
$r .= '<span class="red">';
|
||
}
|
||
$r .= 'Требуется Сила: ' . $row['nsila'] . '</span><br />';
|
||
}
|
||
if ($row['nlovk']) {
|
||
$r .= '• ';
|
||
if ($row['nlovk'] > $user['lovk']) {
|
||
$r .= '<span class="red">';
|
||
}
|
||
$r .= 'Требуется Ловкость: ' . $row['nlovk'] . '</span><br />';
|
||
}
|
||
if ($row['ninta']) {
|
||
$r .= '• ';
|
||
if ($row['ninta'] > $user['inta']) {
|
||
$r .= '<span class="red">';
|
||
}
|
||
$r .= 'Требуется Интуиция: ' . $row['ninta'] . '</span><br />';
|
||
}
|
||
if ($row['nvinos']) {
|
||
$r .= '• ';
|
||
if ($row['nvinos'] > $user['vinos']) {
|
||
$r .= '<span class="red">';
|
||
}
|
||
$r .= 'Требуется Выносливость: ' . $row['nvinos'] . '</span><br />';
|
||
}
|
||
if ($row['nlevel']) {
|
||
$r .= '• ';
|
||
if ($row['nlevel'] > $user['level']) {
|
||
$r .= '<span class="red">';
|
||
}
|
||
$r .= 'Требуется Уровень: ' . $row['nlevel'] . '</span><br />';
|
||
}
|
||
if ($row['nintel']) {
|
||
$r .= '• ';
|
||
if ($row['nintel'] > $user['intel']) {
|
||
$r .= '<span class="red">';
|
||
}
|
||
$r .= 'Требуется Интеллект: ' . $row['nintel'] . '</span><br />';
|
||
}
|
||
if ($row['nnoj']) {
|
||
$r .= '• ';
|
||
if ($row['nnoj'] > $user['noj']) {
|
||
$r .= '<span class="red">';
|
||
}
|
||
$r .= 'Требуется Мастерство владения ножами и кастетами: ' . $row['nnoj'] . '</span><br />';
|
||
}
|
||
if ($row['ntopor']) {
|
||
$r .= '• ';
|
||
if ($row['ntopor'] > $user['topor']) {
|
||
$r .= '<span class="red">';
|
||
}
|
||
$r .= 'Требуется Мастерство владения топорами и секирами: ' . $row['ntopor'] . '</span><br />';
|
||
}
|
||
if ($row['ndubina']) {
|
||
$r .= '• ';
|
||
if ($row['ndubina'] > $user['dubina']) {
|
||
$r .= '<span class="red">';
|
||
}
|
||
$r .= 'Требуется Мастерство владения дубинами и булавами: ' . $row['ndubina'] . '</span><br />';
|
||
}
|
||
if ($row['nmech']) {
|
||
$r .= '• ';
|
||
if ($row['nmech'] > $user['mech']) {
|
||
$r .= '<span class="red">';
|
||
}
|
||
$r .= 'Требуется Мастерство владения мечами: ' . $row['nmech'] . '</span><br />';
|
||
}
|
||
if ($row['nfire']) {
|
||
$r .= '• ';
|
||
if ($row['nfire'] > $user['mfire']) {
|
||
$r .= '<span class="red">';
|
||
}
|
||
$r .= 'Требуется Магия Огня: ' . $row['nfire'] . '</span><br />';
|
||
}
|
||
if ($row['nwater']) {
|
||
$r .= '• ';
|
||
if ($row['nwater'] > $user['mwater']) {
|
||
$r .= '<span class="red">';
|
||
}
|
||
$r .= 'Требуется Магия Воды: ' . $row['nwater'] . '</span><br />';
|
||
}
|
||
if ($row['nair']) {
|
||
$r .= '• ';
|
||
if ($row['nair'] > $user['mair']) {
|
||
$r .= '<span class="red">';
|
||
}
|
||
$r .= 'Требуется Магия Воздуха:: ' . $row['nair'] . '</span><br />';
|
||
}
|
||
if ($row['nearth']) {
|
||
$r .= '• ';
|
||
if ($row['nearth'] > $user['mearth']) {
|
||
$r .= '<span class="red">';
|
||
}
|
||
$r .= 'Требуется Магия Земли: ' . $row['nearth'] . '</span><br />';
|
||
}
|
||
if ($row['nlight']) {
|
||
$r .= '• ';
|
||
if ($row['nlight'] > $user['mlight']) {
|
||
$r .= '<span class="red">';
|
||
}
|
||
$r .= 'Требуется Магия Света: ' . $row['nlight'] . '</span><br />';
|
||
}
|
||
if ($row['ngray']) {
|
||
$r .= '• ';
|
||
if ($row['ngray'] > $user['mgray']) {
|
||
$r .= '<span class="red">';
|
||
}
|
||
$r .= 'Требуется Магия Равновесия: ' . $row['ngray'] . '</span><br />';
|
||
}
|
||
if ($row['ndark']) {
|
||
$r .= '• ';
|
||
if ($row['ndark'] > $user['mdark']) {
|
||
$r .= '<span class="red">';
|
||
}
|
||
$r .= 'Требуется Магия Тьмы: ' . $row['ndark'] . '</span><br />';
|
||
}
|
||
|
||
$r .= '</div><br />';
|
||
$r .= '<div class="bonus">';
|
||
|
||
if ($row['minu']) $r .= '+' . $row['minu'] . ' Минимальное наносимое повреждение <br />';
|
||
if ($row['maxu']) $r .= '+' . $row['maxu'] . ' Максимальное наносимое повреждение <br />';
|
||
if ($row['gsila']) $r .= '+' . $row['gsila'] . ' Сила <br />';
|
||
if ($row['glovk']) $r .= '+' . $row['glovk'] . ' Ловкость <br />';
|
||
if ($row['ginta']) $r .= '+' . $row['ginta'] . ' Интуиция <br />';
|
||
if ($row['gintel']) $r .= '+' . $row['gintel'] . ' Интеллект <br />';
|
||
if ($row['ghp']) $r .= '+' . $row['ghp'] . ' Уровень жизни <br />';
|
||
if ($row['mfkrit']) $r .= '+' . $row['mfkrit'] . '% Мф. критических ударов <br />';
|
||
if ($row['mfakrit']) $r .= '+' . $row['mfakrit'] . '% Мф. против крит. ударов <br />';
|
||
if ($row['mfuvorot']) $r .= '+' . $row['mfuvorot'] . '% Мф. увертливости <br />';
|
||
if ($row['mfauvorot']) $r .= '+' . $row['mfauvorot'] . '% Мф. против увертливости <br />';
|
||
if ($row['gnoj']) $r .= '+' . $row['gnoj'] . ' Мастерство владения ножами и кастетами <br />';
|
||
if ($row['gtopor']) $r .= '+' . $row['gtopor'] . ' Мастерство владения топорами и секирами <br />';
|
||
if ($row['gdubina']) $r .= '+' . $row['gdubina'] . ' Мастерство владения дубинами и булавами <br />';
|
||
if ($row['gmech']) $r .= '+' . $row['gmech'] . ' Мастерство владения мечами <br />';
|
||
if ($row['gfire']) $r .= '+' . $row['gfire'] . ' Мастерство владения стихией Огня <br />';
|
||
if ($row['gwater']) $r .= '+' . $row['gwater'] . ' Мастерство владения стихией Воды <br />';
|
||
if ($row['gair']) $r .= '+' . $row['gair'] . ' Мастерство владения стихией Воздуха <br />';
|
||
if ($row['gearth']) $r .= '+' . $row['gearth'] . ' Мастерство владения стихией Земли <br />';
|
||
if ($row['glight']) $r .= '+' . $row['glight'] . ' Мастерство владения магией Светa <br />';
|
||
if ($row['ggray']) $r .= '+' . $row['ggray'] . ' Мастерство владения Cерой магией <br />';
|
||
if ($row['gdark']) $r .= '+' . $row['gdark'] . ' Мастерство владения магией Тьмы <br />';
|
||
if ($row['bron1']) $r .= '+' . $row['bron1'] . ' Броня головы <br />';
|
||
if ($row['bron2']) $r .= '+' . $row['bron2'] . ' Броня корпуса <br />';
|
||
if ($row['bron3']) $r .= '+' . $row['bron3'] . ' Броня пояса <br />';
|
||
if ($row['bron4']) $r .= '+' . $row['bron4'] . ' Броня ног <br />';
|
||
if ($row['gmeshok']) $r .= '+' . $row['gmeshok'] . ' Увеличивает рюкзак: <br />';
|
||
|
||
$r .= '</div">';
|
||
|
||
if ($row['letter']) $r .= 'На бумаге записан текст: <div style="background-color:#FAF0E6;"> ' . nl2br($row['letter']) . '</div><br />';
|
||
if ($magic['name'] && $row['type'] != 50) $r .= '<span style="color: maroon;">Наложены заклятия:</span> ' . $magic['name'] . '<br />';
|
||
if ($row['text']) $r .= 'На ручке выгравирована надпись: <center>' . $row['text'] . '</center><br />';
|
||
if ($incmagic['max']) $r .= 'Встроено заклятие <img src="i/magic/' . $incmagic['img'] . '" /> ' . $incmagic['cur'] . ' шт.<br />';
|
||
if ($row['podzem']) $r .= '<span style="font-size: 11px; color: #990000">Предмет из подземелья</span><br />';
|
||
if ($row['laba'] == 1) $r .= '<span style="font-size: 11px; color: #990000">Пропадёт если не найти выход</span><br />';
|
||
if ($row['laba'] == 2) $r .= '<span style="font-size: 11px; color: #990000">Предмет пропадёт после выхода</span><br />';
|
||
if ($row['isrep']) $r .= '<small><span style="color: maroon;">Предмет не подлежит ремонту</span></small><br />';
|
||
if ($row['free_bron']) $r .= '+' . $row['free_bron'] . ' Улучшений брони <br />';
|
||
if ($row['free_stat']) $r .= '+' . $row['free_stat'] . ' Улучшений параметров <br />';
|
||
if ($row['free_mf']) $r .= '+' . $row['free_mf'] . ' Улучшений модификаторов <br />';
|
||
$r .= '</div>';
|
||
} else {
|
||
$r .= '<span style="color: maroon;"><b>Свойства предмета не идентифицированы</b></span><br />';
|
||
}
|
||
|
||
$osob = array(22, 23);
|
||
if (in_array($row['type'], $osob)) {
|
||
$r .= 'Особенности:<br />';
|
||
if ($row['type'] == 22) {
|
||
$r .= '• может одеваться под броню';
|
||
} elseif ($row['type'] == 23) {
|
||
$r .= '• может одеваться на броню';
|
||
}
|
||
}
|
||
|
||
$r .= '</td>';
|
||
|
||
$r .= '</tr>';
|
||
|
||
$r .= '</tbody></table></div>';
|
||
}
|
||
return $r;
|
||
}
|
||
|
||
function show_itm_hostel($uid, $otdel, $type = 1)
|
||
{
|
||
$r = '';
|
||
if ($type != 1) {
|
||
$sql = $uid;
|
||
$txt = 'В сундук';
|
||
} else {
|
||
$sql = '-101' . $uid . '';
|
||
$txt = 'В инвентарь';
|
||
}
|
||
$data = mysql_query("SELECT * FROM `inventory` WHERE `otdel` = '{$otdel}' AND `owner` = " . $sql . " AND `dressed`='0' ORDER BY `id` ASC");
|
||
while ($pl = mysql_fetch_array($data)) {
|
||
$r .= show_item($pl, 10, $txt, $type);
|
||
}
|
||
if ($r == '') {
|
||
$r = '<tr><td width="100%" align="center" class="even"><center><b>Пусто. <br />Попробуйте другой вариант фильтрации.</center></b></td></tr>';
|
||
}
|
||
return $r;
|
||
}
|
||
|
||
if($user['vip'] > 0 && $user['vip_time'] > time()) {
|
||
$count = $base[$hostel['type']];
|
||
$count += floor($base[$hostel['type']]*$vips[$user['vip']]);
|
||
} else {
|
||
$count = $base[$hostel['type']];
|
||
}
|
||
|
||
if($_GET['search']) {
|
||
$r = show_itm_hostel($user['id'], (int)$_GET['otdel'], (int)$_GET['place']);
|
||
} else {
|
||
$r = '<tr><td width="100%" align="center" class="even" style="text-align: center;"><b><center>Поиск ...</center></b></td></tr>';
|
||
}
|
||
|
||
if($_GET['set'] && $_GET['set'] == 1) {
|
||
$it = mysql_fetch_array(mysql_query('SELECT `id`, `owner` FROM `inventory` WHERE `id` = "'.(int)$_GET['itm'].'" LIMIT 1'));
|
||
if(isset($it['id'])) {
|
||
if($it['owner'] == $user['id']) {
|
||
if($in['cnt'] < $count) {
|
||
mysql_query('UPDATE `inventory` SET `owner` = "-101'.$user['id'].'" WHERE `id` = "'.$it['id'].'" LIMIT 1');
|
||
$in['cnt']++;
|
||
} else {
|
||
$error = 'Не хватает места ...';
|
||
}
|
||
} elseif($it['owner'] == '-101'.$user['id']) {
|
||
mysql_query('UPDATE `inventory` SET `owner` = "'.$user['id'].'" WHERE `id` = "'.$it['id'].'" LIMIT 1');
|
||
$in['cnt']--;
|
||
}
|
||
}
|
||
unset($it);
|
||
header('Location: hostel_room.php?search=1&otdel='.$_GET['otdel'].'&place='.$_GET['place']);
|
||
}
|
||
|
||
if($_GET['search']) {
|
||
$r = show_itm_hostel($user['id'], (int)$_GET['otdel'], (int)$_GET['place']);
|
||
}
|
||
|
||
#######
|
||
$w = (270*$d['mass']/get_meshok()); $w_a = 270-$w;
|
||
$h = (270*$in['cnt']/$count); $h_a = 270-$h;
|
||
#######
|
||
|
||
if($_GET['go_back'] == 1) {
|
||
mysql_query('UPDATE `users`,`online` SET `users`.`room` = 660, `online`.`room` = 660 WHERE `users`.`id` = "'.$user['id'].'" AND `online`.`id` = "'.$user['id'].'"');
|
||
header('Location: hostel.php');
|
||
}
|
||
|
||
|
||
?>
|
||
<!doctype html>
|
||
<html>
|
||
<head>
|
||
<title>404</title>
|
||
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
||
<meta http-equiv="content-language" content="ru" />
|
||
<script src="js/jquery-1.7.2.min.js"></script>
|
||
<script src="js/ajaxLoad.js"></script>
|
||
<link rel="stylesheet" type="text/css" href="css/hostel.css" />
|
||
</head>
|
||
<body>
|
||
<div class="contentContainer" id="hostelContainer">
|
||
<div id="systemMsg" class="system-msg"></div><div class="buttonContainer">
|
||
<input type="button" class="btns" value="Обновить" onclick="location.href='hostel_room.php';" />
|
||
<input type="button" class="btns button-route" value="Спуститься" onclick="location.href='?go_back=1';" />
|
||
<h1>Комнатуха</h1>
|
||
</div>
|
||
<style type="text/css">
|
||
.hides {
|
||
display: none;
|
||
}
|
||
#hstInventory td.item {
|
||
width: 85%;
|
||
}
|
||
#hstInventory td.links {
|
||
text-align:center;
|
||
vertical-align:middle;
|
||
width:117px;
|
||
}
|
||
#hstInventory td.links span {
|
||
display: block;
|
||
}
|
||
#hstInventory td.original span.pk-current{
|
||
display:none;
|
||
}
|
||
#hstInventory td.moved {
|
||
font-weight: bold;
|
||
}
|
||
#hstInventory td.odd {
|
||
background-color: #c7c7c7;
|
||
}
|
||
#hstInventory td.even {
|
||
background-color: #d5d5d5;
|
||
}
|
||
|
||
label{
|
||
font-weight: bold;
|
||
margin-right:15px;
|
||
}
|
||
</style>
|
||
<script>
|
||
function hide_this(id) {
|
||
var node = document.getElementById(id);
|
||
if(node) {
|
||
node.style.display = 'none';
|
||
};
|
||
}
|
||
</script>
|
||
<div style="overflow: hidden;">
|
||
<fieldset id="hstInventoryA" style="width: 377px; float: left; text-align: center;">
|
||
<legend>Фильтр инвентаря</legend>
|
||
<div style="height: 53px">
|
||
<form method="GET">
|
||
<input type="radio" class="radio" id="hstF1" name="place" value="2" /><label for="hstF1">мешок</label>
|
||
<input type="radio" class="radio" id="hstF2" name="place" value="1" /><label for="hstF2">сундук</label>
|
||
|
||
<div style="height: 5px;overflow: hidden;"></div>
|
||
<select name="otdel">
|
||
<option value="-1"> </option>
|
||
<optgroup label="Оружие">
|
||
<option value="1">кастеты,ножи</option>
|
||
<option value="11">топоры</option>
|
||
<option value="12">дубины,булавы</option>
|
||
<option value="13">мечи</option>
|
||
</optgroup>
|
||
<optgroup label="Одежда">
|
||
<option value="2">сапоги</option>
|
||
<option value="21">перчатки</option>
|
||
<option value="22">легкая броня</option>
|
||
<option value="23">тяжелая броня</option>
|
||
<option value="24">шлемы</option>
|
||
</optgroup>
|
||
<optgroup label="Щиты">
|
||
<option value="3">щиты</option>
|
||
</optgroup>
|
||
<optgroup label="Ювелирные товары">
|
||
<option value="4">серьги</option>
|
||
<option value="41">ожерелья</option>
|
||
<option value="42">кольца</option>
|
||
</optgroup>
|
||
<optgroup label="Заклинания">
|
||
<option value="5">нейтральные</option>
|
||
<option value="51">боевые и защитные</option>
|
||
</optgroup>
|
||
<optgroup label="Амуниция">
|
||
<option value="6">амуниция</option>
|
||
</optgroup>
|
||
</select>
|
||
<input type="submit" class="button" style="margin-right: 20px;" value="Поиск" name="search" />
|
||
</form>
|
||
</div>
|
||
</fieldset>
|
||
<fieldset id="hstInventoryB"><legend>Состояние</legend>
|
||
<div style="height: 53px">
|
||
<div class="progressBar" style='height:14px'><img title="Мешок за спиной" src="/i/bag.gif" height="14px"><img title="Мешок за спиной" src="/i/660000.gif" style="width: <?=$w;?>px; height: 14px;"><img title="Мешок за спиной" src="/i/1silver.gif" style=" width: <?=$w_a;?>px; height:14px"><tt style="font-size:13px"> <?=$d['mass'];?>/<?=get_meshok()?></tt></div><div class="progressBar" style='height:14px'><img title="Заполнение сундука" src="/i/chest.gif" height="14px"><img title="Заполнение сундука" src="/i/1blue.gif" style=" width: <?=$h;?>px; height:14px"><img title="Заполнение сундука" src="/i/1silver.gif" style=" width: <?=$h_a;?>px; height:14px"><tt style="font-size:13px"> <?=$in['cnt'];?>/<?=$count;?></tt></div></div>
|
||
</fieldset>
|
||
</div>
|
||
|
||
<div id="hstInventory" style="width: 100%; background-color: #a5a5a5;">
|
||
<?=$r;?>
|
||
</div>
|
||
<center><? if($error != '') { echo '<br /><b style=\'color: Red;\'>'.$error.'</b>'; } ?></center>
|
||
</body>
|
||
</html>
|