2020-07-03 13:23:08 +00:00
|
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class User
|
|
|
|
|
{
|
|
|
|
|
public $id;
|
|
|
|
|
public $login;
|
|
|
|
|
public $email;
|
|
|
|
|
public $realname;
|
|
|
|
|
public $borndate;
|
|
|
|
|
public $info;
|
|
|
|
|
public $level;
|
|
|
|
|
public $align;
|
|
|
|
|
public $clan;
|
|
|
|
|
public $money;
|
|
|
|
|
public $strength;
|
|
|
|
|
public $dexterity;
|
|
|
|
|
public $intuition;
|
|
|
|
|
public $endurance;
|
|
|
|
|
public $intelligence;
|
|
|
|
|
public $wisdom;
|
|
|
|
|
public $ip;
|
|
|
|
|
public $session_id;
|
|
|
|
|
public $admin;
|
|
|
|
|
public $enter_game;
|
|
|
|
|
public $room;
|
|
|
|
|
public $block;
|
|
|
|
|
|
2020-07-03 13:49:39 +00:00
|
|
|
|
// Пока несуществующие, для совместимости.
|
|
|
|
|
public $married;
|
|
|
|
|
public $exp;
|
|
|
|
|
public $stats;
|
2020-07-04 20:37:47 +00:00
|
|
|
|
public $shadow;
|
2020-07-03 13:49:39 +00:00
|
|
|
|
|
2020-07-04 23:25:14 +00:00
|
|
|
|
const EMPTY_SLOT = <<<EMPTY_SLOT
|
|
|
|
|
<img src="/i/sh/noitem.png" class="item-wrap-normal" title="Пустой слот" alt="Пустой слот>
|
|
|
|
|
EMPTY_SLOT;
|
|
|
|
|
|
2020-07-04 10:49:43 +00:00
|
|
|
|
use Rooms;
|
|
|
|
|
|
2020-07-03 13:33:34 +00:00
|
|
|
|
public function __construct($user)
|
2020-07-03 13:23:08 +00:00
|
|
|
|
{
|
2020-07-03 16:21:57 +00:00
|
|
|
|
$user_query = db::c()->query('SELECT * FROM users WHERE id = "?s" OR login = "?s"', $user, $user)->fetch_assoc();
|
2020-07-03 13:23:08 +00:00
|
|
|
|
foreach ($this as $key => $value) {
|
|
|
|
|
if (isset($user_query[$key])) {
|
|
|
|
|
$this->$key = $user_query[$key];
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2020-07-03 16:37:24 +00:00
|
|
|
|
|
2020-07-04 22:14:14 +00:00
|
|
|
|
protected function showItem($item = 0)
|
2020-07-04 20:00:47 +00:00
|
|
|
|
{
|
2020-07-04 22:05:37 +00:00
|
|
|
|
$itemSlot = $item['dressed_slot'] ?? 0;
|
|
|
|
|
$itemName = $item['name'] ?? '';
|
|
|
|
|
$itemImage = $item['image'] ?? '';
|
|
|
|
|
if ($itemSlot) {
|
|
|
|
|
echo <<<SLOT
|
|
|
|
|
<img src="/i/sh/{$itemImage}" class="item-wrap-normal tip" alt="Слот [{$itemSlot}]">
|
|
|
|
|
<span class="tiptext"><strong>{$itemName}</strong></span>
|
|
|
|
|
SLOT;
|
2020-07-04 20:00:47 +00:00
|
|
|
|
} else {
|
2020-07-04 22:05:37 +00:00
|
|
|
|
echo <<<EMPTY_SLOT
|
2020-07-04 23:29:32 +00:00
|
|
|
|
<img src="/i/sh/noitem.png" class="item-wrap-normal" title="Пустой слот [{$item}]" alt="Пустой слот [{$item}]">
|
2020-07-04 22:05:37 +00:00
|
|
|
|
EMPTY_SLOT;
|
2020-07-04 20:00:47 +00:00
|
|
|
|
}
|
2020-07-04 18:37:01 +00:00
|
|
|
|
}
|
|
|
|
|
|
2020-07-04 22:05:37 +00:00
|
|
|
|
public function showUserInfo()
|
|
|
|
|
{
|
2020-07-04 17:23:02 +00:00
|
|
|
|
$dressed_item = [];
|
|
|
|
|
$dressed_items = db::c()->query('SELECT * FROM inventory WHERE owner_id = ?i AND dressed_slot > 0', $this->id);
|
2020-07-05 07:12:48 +00:00
|
|
|
|
while ($row = $dressed_items->fetch_assoc()) {
|
|
|
|
|
$dressed_item[$row['dressed_slot']] = $row;
|
|
|
|
|
}
|
|
|
|
|
echo <<<USERINFO
|
|
|
|
|
<table width=100%>
|
|
|
|
|
<tr>
|
|
|
|
|
<td style="width: 250px; vertical-align: top;">
|
|
|
|
|
<div style="text-align: center">
|
|
|
|
|
USERINFO;
|
2020-07-04 22:48:48 +00:00
|
|
|
|
if ($this->align) {
|
|
|
|
|
echo sprintf('<img src="/i/align_%s.png" alt="Склонность">', $this->align);
|
|
|
|
|
}
|
|
|
|
|
if ($this->block) {
|
|
|
|
|
echo sprintf('<span class="private"><s>%s</s></span>', $this->login);
|
|
|
|
|
} else {
|
|
|
|
|
echo sprintf('<strong>%s</strong>', $this->login);
|
|
|
|
|
}
|
|
|
|
|
if ($this->clan) {
|
|
|
|
|
echo sprintf('<img src="/i/clan/%s.png" alt="%s">', $this->clan, $this->clan);
|
|
|
|
|
}
|
2020-07-05 07:12:48 +00:00
|
|
|
|
echo <<<USERINFO
|
|
|
|
|
</div>
|
2020-07-04 22:05:37 +00:00
|
|
|
|
<div style="width: 100%; height: 16px; background: #ffaaff; overflow: hidden; border-radius: 3px; font-size: 14px; text-align: center;">
|
2020-07-04 22:48:48 +00:00
|
|
|
|
добавить здоровье
|
2020-07-04 22:05:37 +00:00
|
|
|
|
</div>
|
|
|
|
|
<table style="width: 100%; text-align: center;">
|
|
|
|
|
<tr>
|
|
|
|
|
<td width=62 valign=top>
|
|
|
|
|
<table width=100%>
|
|
|
|
|
<tr>
|
2020-07-05 07:12:48 +00:00
|
|
|
|
<td>
|
|
|
|
|
USERINFO;
|
2020-07-04 23:25:14 +00:00
|
|
|
|
if (isset($dressed_item[1])) {
|
|
|
|
|
$this->showItem($dressed_item[1]);
|
|
|
|
|
} else {
|
|
|
|
|
$this->showItem(1);
|
|
|
|
|
}
|
|
|
|
|
echo '</td></tr><tr><td>';
|
|
|
|
|
if (isset($dressed_item[2])) {
|
|
|
|
|
$this->showItem($dressed_item[2]);
|
|
|
|
|
} else {
|
|
|
|
|
$this->showItem(2);
|
|
|
|
|
}
|
|
|
|
|
echo '</td></tr><tr><td>';
|
|
|
|
|
if (isset($dressed_item[3])) {
|
|
|
|
|
$this->showItem($dressed_item[3]);
|
|
|
|
|
} else {
|
|
|
|
|
$this->showItem(3);
|
|
|
|
|
}
|
|
|
|
|
echo '</td></tr><tr><td>';
|
|
|
|
|
if (isset($dressed_item[4])) {
|
|
|
|
|
$this->showItem($dressed_item[4]);
|
|
|
|
|
} else {
|
|
|
|
|
$this->showItem(4);
|
|
|
|
|
}
|
|
|
|
|
echo '</td></tr>';
|
2020-07-04 22:48:48 +00:00
|
|
|
|
echo <<<USERINFO
|
2020-07-04 22:05:37 +00:00
|
|
|
|
</table>
|
|
|
|
|
</td>
|
|
|
|
|
<td valign=top>
|
|
|
|
|
<img src="/i/shadow/{$this->shadow}" onerror=" this.src = '/i/shadow/0.gif';">
|
|
|
|
|
</td>
|
|
|
|
|
<td width="62" valign=top>
|
|
|
|
|
<table width=100%>
|
|
|
|
|
<tr>
|
|
|
|
|
<td>
|
2020-07-04 23:25:14 +00:00
|
|
|
|
USERINFO;
|
|
|
|
|
if (isset($dressed_item[5])) {
|
|
|
|
|
$this->showItem($dressed_item[5]);
|
|
|
|
|
} else {
|
|
|
|
|
$this->showItem(5);
|
|
|
|
|
}
|
|
|
|
|
echo '</td></tr><tr><td>';
|
|
|
|
|
if (isset($dressed_item[6])) {
|
|
|
|
|
$this->showItem($dressed_item[6]);
|
|
|
|
|
} else {
|
|
|
|
|
$this->showItem(6);
|
|
|
|
|
}
|
|
|
|
|
echo '</td></tr><tr><td>';
|
|
|
|
|
if (isset($dressed_item[7])) {
|
|
|
|
|
$this->showItem($dressed_item[7]);
|
|
|
|
|
} else {
|
|
|
|
|
$this->showItem(7);
|
|
|
|
|
}
|
|
|
|
|
echo '</td></tr><tr><td>';
|
|
|
|
|
if (isset($dressed_item[8])) {
|
|
|
|
|
$this->showItem($dressed_item[8]);
|
|
|
|
|
} else {
|
|
|
|
|
$this->showItem(8);
|
|
|
|
|
}
|
|
|
|
|
echo '</td></tr>
|
2020-07-04 22:05:37 +00:00
|
|
|
|
</table>
|
|
|
|
|
</td>
|
|
|
|
|
</tr>
|
|
|
|
|
</table>
|
2020-07-04 23:25:14 +00:00
|
|
|
|
<div style="text-align: center">';
|
|
|
|
|
if (isset($dressed_item[9])) {
|
|
|
|
|
$this->showItem($dressed_item[9]);
|
|
|
|
|
} else {
|
|
|
|
|
$this->showItem(9);
|
|
|
|
|
}
|
|
|
|
|
if (isset($dressed_item[10])) {
|
|
|
|
|
$this->showItem($dressed_item[10]);
|
|
|
|
|
} else {
|
|
|
|
|
$this->showItem(10);
|
|
|
|
|
}
|
|
|
|
|
if (isset($dressed_item[11])) {
|
|
|
|
|
$this->showItem($dressed_item[11]);
|
|
|
|
|
} else {
|
|
|
|
|
$this->showItem(11);
|
|
|
|
|
}
|
2020-07-05 07:12:48 +00:00
|
|
|
|
echo <<<USERINFO
|
2020-07-04 22:05:37 +00:00
|
|
|
|
</div>
|
2020-07-05 07:12:48 +00:00
|
|
|
|
</td>
|
|
|
|
|
<td width="100%">
|
2020-07-04 11:18:28 +00:00
|
|
|
|
Имя {$this->login} <br>
|
|
|
|
|
Сила {$this->strength} <br>
|
|
|
|
|
Ловкость {$this->dexterity} <br>
|
|
|
|
|
Интуиция {$this->intuition} <br>
|
|
|
|
|
Выносливость {$this->endurance} <br>
|
|
|
|
|
Интеллект {$this->intelligence} <br>
|
|
|
|
|
Мудрость {$this->wisdom} <br>
|
2020-07-04 11:37:36 +00:00
|
|
|
|
Находится в {$this->getRoomName($this->room)}<br>
|
2020-07-05 07:12:48 +00:00
|
|
|
|
</td>
|
|
|
|
|
<td style="vertical-align: top; width: 100px; text-align: center;">
|
|
|
|
|
<img src="i/zodiac/<?= star_sign($this->borndate); ?>.png" alt="Родовой знак">
|
|
|
|
|
</td>
|
|
|
|
|
</tr>
|
|
|
|
|
</table>
|
|
|
|
|
|
2020-07-04 11:18:28 +00:00
|
|
|
|
USERINFO;
|
2020-07-05 07:12:48 +00:00
|
|
|
|
if ($this->married) {
|
|
|
|
|
echo sprintf('<a href = "inf.php?%s" target = _blank ><img alt = "В браке с %s" src = "i/married.gif" title = "В браке с %s"></a >', $this->married, $this->married, $this->married);
|
|
|
|
|
}
|
|
|
|
|
|
2020-07-04 20:47:46 +00:00
|
|
|
|
|
2020-07-04 23:25:14 +00:00
|
|
|
|
// if (isset($dressed_item[1])) {
|
|
|
|
|
// $this->showItem($dressed_item[1]);
|
|
|
|
|
// }
|
2020-07-04 20:00:47 +00:00
|
|
|
|
// if (isset($dressed_item[2])) {
|
|
|
|
|
// $this->showItem($dressed_item[2]);
|
|
|
|
|
// }
|
|
|
|
|
// if (isset($dressed_item[4])) {
|
|
|
|
|
// $this->showItem($dressed_item[4]);
|
|
|
|
|
// }
|
2020-07-04 10:49:43 +00:00
|
|
|
|
}
|
|
|
|
|
|
2020-07-03 13:23:08 +00:00
|
|
|
|
}
|