Ломаем всё, отсоединяя класс UserInfo от User.
This commit is contained in:
parent
555a32ce55
commit
7717d01f8f
185
classes/User.php
185
classes/User.php
@ -67,104 +67,6 @@ class User
|
|||||||
$this->maxMana = round(($this->wisdom * 3) + ($this->wisdom / 2) * ($this->level - 1) + ($this->wisdom / 5) * (($this->level - 1) * ($this->level - 2) / 2));
|
$this->maxMana = round(($this->wisdom * 3) + ($this->wisdom / 2) * ($this->level - 1) + ($this->wisdom / 5) * (($this->level - 1) * ($this->level - 2) / 2));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Отображает куклу персонажа (образ и слоты).
|
|
||||||
*
|
|
||||||
* @param int $isBattle - установить 1, если куклу нужно отобразить в поединке (показывает параметры при наведении
|
|
||||||
* на образ).
|
|
||||||
* @param int $isMain - установить 1, если куклу надо показать на странице игрока (по клику на предмет снимает
|
|
||||||
* его).
|
|
||||||
*
|
|
||||||
* @throws \Krugozor\Database\Mysql\Exception
|
|
||||||
*/
|
|
||||||
private function UserInfoDoll($isBattle = 0, $isMain = 0)
|
|
||||||
{
|
|
||||||
//https://jsfiddle.net/ngx0yvhc
|
|
||||||
//TODO переверстать grid, чтобы он касался только куклы.
|
|
||||||
$di = new DressedItems($this->id);
|
|
||||||
$dressedItems = $di->getItemsInSlots();
|
|
||||||
for ($i = 1; $i <= 12; $i++) {
|
|
||||||
echo sprintf('<div class="slot-%s">', $i);
|
|
||||||
if (!empty($dressedItems[$i])) {
|
|
||||||
if (!$isBattle && $isMain) {
|
|
||||||
$itemString = '<a href="?edit=1&drop=%s"><img src="/i/sh/%s" class="item-wrap-normal" alt="%s" title="%s"></a>';
|
|
||||||
echo sprintf($itemString, $i, $dressedItems[$i]['image'], $dressedItems[$i]['name'], $dressedItems[$i]['name']);
|
|
||||||
} else {
|
|
||||||
$itemString = '<img src="/i/sh/%s" class="item-wrap-normal tip" alt="%s"><span class="tiptext"><strong>%s</strong></span>';
|
|
||||||
echo sprintf($itemString, $dressedItems[$i]['image'], $dressedItems[$i]['name'], $dressedItems[$i]['name']);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
echo sprintf('<img src="/i/sh/noitem.png" class="item-wrap-normal" title="Пустой слот [%s]" alt="Пустой слот [%s]">', $i, $i);
|
|
||||||
}
|
|
||||||
echo sprintf('</div><!-- slot-%s -->', $i);
|
|
||||||
}
|
|
||||||
echo '<div class="slot-image">';
|
|
||||||
if ($isBattle) {
|
|
||||||
$sh = '<img src="/i/shadow/%s" alt="%s" class="tip"><span class="tiptext"><b>%s</b>Уровень: %s<br>Сила: %s<br>Ловкость: %s<br>Интуиция: %s<br>Выносливость: %s<br>Интеллект: %s<br>Мудрость: %s</span>';
|
|
||||||
echo sprintf($sh, $this->shadow, $this->login, $this->login, $this->level, $this->strength, $this->dexterity, $this->intuition, $this->endurance, $this->intelligence, $this->wisdom);
|
|
||||||
unset($sh);
|
|
||||||
} else {
|
|
||||||
echo '<img src="/i/shadow/' . $this->shadow . '" alt="' . $this->login . '">';
|
|
||||||
}
|
|
||||||
echo '</div><!-- slot-image -->';
|
|
||||||
}
|
|
||||||
|
|
||||||
private function UserInfoStats($isMainWindow = 0)
|
|
||||||
{
|
|
||||||
$captions = 'Уровень:<br>Сила:<br>Ловкость:<br>Интуиция:<br>Выносливость:<br>Интеллект:<br>Мудрость:<br>Местонахождение:';
|
|
||||||
$variables =
|
|
||||||
$this->level . '<br>' .
|
|
||||||
$this->getStat('strength') . '<br>' .
|
|
||||||
$this->getStat('dexterity') . '<br>' .
|
|
||||||
$this->getStat('intuition') . '<br>' .
|
|
||||||
$this->getStat('endurance') . '<br>' .
|
|
||||||
$this->getStat('intelligence') . '<br>' .
|
|
||||||
$this->getStat('wisdom') . '<br>' .
|
|
||||||
$this->getRoomName($this->room);
|
|
||||||
if ($isMainWindow) {
|
|
||||||
$this->Bank = new Bank($this->id);
|
|
||||||
$captions = 'Уровень:<br>Здоровье:<br>Сила:<br>Ловкость:<br>Интуиция:<br>Выносливость:<br>Интеллект:<br>Мудрость:<br>Опыт:<br>Очки характеристик:<br>Деньги:<br>Деньги в банке:';
|
|
||||||
$variables =
|
|
||||||
$this->level . '<br>' .
|
|
||||||
$this->health . '<br>' .
|
|
||||||
$this->getStat('strength', 1) . '<br>' .
|
|
||||||
$this->getStat('dexterity', 1) . '<br>' .
|
|
||||||
$this->getStat('intuition', 1) . '<br>' .
|
|
||||||
$this->getStat('endurance', 1) . '<br>' .
|
|
||||||
$this->getStat('intelligence', 1) . '<br>' .
|
|
||||||
$this->getStat('wisdom', 1) . '<br>' .
|
|
||||||
$this->experience . '<br>' .
|
|
||||||
$this->free_stat_points . '<br>' .
|
|
||||||
$this->money . '<br>' .
|
|
||||||
$this->Bank->money;
|
|
||||||
}
|
|
||||||
if ($this->align) {
|
|
||||||
$nameString = sprintf('<img src="/i/align_%s.png" alt="Склонность">', $this->align);
|
|
||||||
}
|
|
||||||
if ($this->block) {
|
|
||||||
$nameString .= '<span class="private"><s>' . $this->login . '</s></span>';
|
|
||||||
} else {
|
|
||||||
$nameString .= ' <b>' . $this->login . '</b> ';
|
|
||||||
}
|
|
||||||
if ($this->clan) {
|
|
||||||
$nameString .= sprintf('<img src="/i/clan/%s.png" alt="Клан">', $this->clan);
|
|
||||||
}
|
|
||||||
echo '<div class="user-info">';
|
|
||||||
echo '<div class="info">';
|
|
||||||
echo '<b>' . $nameString . '</b>';
|
|
||||||
echo '</div><!-- info -->';
|
|
||||||
echo '<div class="stats-container">';
|
|
||||||
echo '<div class="column">';
|
|
||||||
echo $captions;
|
|
||||||
echo '</div><!-- column -->';
|
|
||||||
echo '<div class="column">';
|
|
||||||
echo $variables;
|
|
||||||
echo '</div><!-- column -->';
|
|
||||||
echo '</div><!-- stats-container -->';
|
|
||||||
echo '<div class="debug">TODO: Сделать рассчёт модификаторов. Вывести полоску здоровья когда будет от чего отталкиваться.</div>';
|
|
||||||
echo '</div><!-- user-info -->';
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Отдаёт информацию о базовом(!) стате.
|
* Отдаёт информацию о базовом(!) стате.
|
||||||
* @param $stat_name - имя стата. Может принимать значения 'strength', 'dexterity', 'intuition', 'endurance', 'intelligence', 'wisdom'.
|
* @param $stat_name - имя стата. Может принимать значения 'strength', 'dexterity', 'intuition', 'endurance', 'intelligence', 'wisdom'.
|
||||||
@ -207,51 +109,7 @@ class User
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private function UserInfo()
|
protected function WatcherStatus()
|
||||||
{
|
|
||||||
echo '<div class="user-info-container">';
|
|
||||||
$this->UserInfoDoll();
|
|
||||||
$this->UserInfoStats();
|
|
||||||
echo '<div class="slot-lower">';
|
|
||||||
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);
|
|
||||||
}
|
|
||||||
echo '</div><!-- slot-lower -->';
|
|
||||||
echo '<div class="user-signs">';
|
|
||||||
echo sprintf('<img src="i/zodiac/%s.png" alt="Родовой знак">', $this->showStarSign());
|
|
||||||
echo '</div><!-- user-signs -->';
|
|
||||||
echo '</div><!-- user-info-container -->';
|
|
||||||
echo '<hr><!-- Нижняя часть -->';
|
|
||||||
echo '<div class="user-info-container-lower">';
|
|
||||||
echo '<h2>Об игроке</h2>';
|
|
||||||
if ($this->realname) {
|
|
||||||
echo sprintf('Имя: %s<br>', $this->realname);
|
|
||||||
}
|
|
||||||
if ($this->info) {
|
|
||||||
echo nl2br($this->info);
|
|
||||||
}
|
|
||||||
echo '</div><!-- user-info-container-lower -->';
|
|
||||||
|
|
||||||
if ($this->watcherIsAdmin || $this->watcherIsModerator) {
|
|
||||||
echo '<div class="secret-info">';
|
|
||||||
$infoString = 'E-Mail: %s<br> ДР Игрока: %s<br> IP Регистрации: %s';
|
|
||||||
echo sprintf($infoString, $this->email, date('d.m.Y', strtotime($this->borndate)), $this->ip);
|
|
||||||
if ($this->watcherIsAdmin) {
|
|
||||||
$this->Bank = new Bank($this->id);
|
|
||||||
$infoString = '<br><span>ИД Игрока: %s<br> ИД Комнаты: %s<br> Деньги: %s<br> Деньги в банке: %s<br> Опыт: %s<br> Нераспределённые очки: %s<br> Текущая сессия: %s</span>';
|
|
||||||
echo sprintf($infoString, $this->id, $this->room, $this->money, $this->Bank->money, $this->experience, $this->free_stat_points, $this->session_id);
|
|
||||||
}
|
|
||||||
$this->UserLogs = new UserLogModel($this->id);
|
|
||||||
echo '<div class="secret-info-user-log"><b>Личное дело</b><br>';
|
|
||||||
while ($userLogRow = $this->UserLogs->getUserLog()->fetch_object()) {
|
|
||||||
echo sprintf('<code>%s</code><br>', date("d.m.Y H:i ", strtotime($userLogRow->date)) . $userLogRow->text);
|
|
||||||
}
|
|
||||||
echo '</div><!-- secret-info-user-log -->';
|
|
||||||
echo '</div><!-- secret-info -->';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private function WatcherStatus()
|
|
||||||
{
|
{
|
||||||
$query = db::c()->query('SELECT `align`,`admin` FROM `users` WHERE `id` = ?i', $this->watcher_id)->fetch_assoc();
|
$query = db::c()->query('SELECT `align`,`admin` FROM `users` WHERE `id` = ?i', $this->watcher_id)->fetch_assoc();
|
||||||
if ($query['admin']) {
|
if ($query['admin']) {
|
||||||
@ -262,41 +120,7 @@ class User
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function showUserInfo()
|
protected function showStarSign()
|
||||||
{
|
|
||||||
$this->effects = new EffectsModel($this->id);
|
|
||||||
$this->WatcherStatus();
|
|
||||||
|
|
||||||
if ($this->block && (!$this->watcherIsAdmin || !$this->watcherIsModerator)) {
|
|
||||||
throw new Exception('<span class="error">Персонаж ' . $this->login . ' заблокирован!</span>');
|
|
||||||
} elseif ($this->effects->getHideUserInfoStatus() && (!$this->watcherIsAdmin || !$this->watcherIsModerator)) {
|
|
||||||
if ($this->effects->getHideUserInfoStatus() == -1) {
|
|
||||||
$date = 'навсегда';
|
|
||||||
} else {
|
|
||||||
$date = 'до' . date('d.m.Y', strtotime($this->effects->getHideUserInfoStatus()));
|
|
||||||
}
|
|
||||||
throw new Exception('<span class="error">Персонаж ' . $this->login . ' обезличен ' . $date . '.</span>');
|
|
||||||
} else {
|
|
||||||
$this->UserInfo();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function showUserDoll($isBattle = 0, $isMain = 0)
|
|
||||||
{
|
|
||||||
echo '<div class="user-info-container">';
|
|
||||||
$this->UserInfoDoll($isBattle, $isMain);
|
|
||||||
echo '</div><!-- user-info-container -->';
|
|
||||||
}
|
|
||||||
|
|
||||||
public function showUserInfoMain()
|
|
||||||
{
|
|
||||||
echo '<div class="user-info-container">';
|
|
||||||
$this->UserInfoDoll();
|
|
||||||
$this->userInfoStats(1);
|
|
||||||
echo '</div><!-- user-info-container -->';
|
|
||||||
}
|
|
||||||
|
|
||||||
public function showStarSign()
|
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
* 1 aries
|
* 1 aries
|
||||||
@ -347,9 +171,4 @@ class User
|
|||||||
{
|
{
|
||||||
return $this->mana . '/' . $this->maxMana;
|
return $this->mana . '/' . $this->maxMana;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function setRoom()
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
187
classes/UserInfo.php
Normal file
187
classes/UserInfo.php
Normal file
@ -0,0 +1,187 @@
|
|||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* Author: lopiu
|
||||||
|
* Date: 30.08.2020
|
||||||
|
* Time: 13:07
|
||||||
|
*/
|
||||||
|
|
||||||
|
class UserInfo extends User
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Отображает куклу персонажа (образ и слоты).
|
||||||
|
*
|
||||||
|
* @param int $isBattle - установить 1, если куклу нужно отобразить в поединке (показывает параметры при наведении
|
||||||
|
* на образ).
|
||||||
|
* @param int $isMain - установить 1, если куклу надо показать на странице игрока (по клику на предмет снимает
|
||||||
|
* его).
|
||||||
|
*
|
||||||
|
* @throws \Krugozor\Database\Mysql\Exception
|
||||||
|
*/
|
||||||
|
private function UserInfoDoll($isBattle = 0, $isMain = 0)
|
||||||
|
{
|
||||||
|
//https://jsfiddle.net/ngx0yvhc
|
||||||
|
//TODO переверстать grid, чтобы он касался только куклы.
|
||||||
|
$di = new DressedItems($this->id);
|
||||||
|
$dressedItems = $di->getItemsInSlots();
|
||||||
|
for ($i = 1; $i <= 12; $i++) {
|
||||||
|
echo sprintf('<div class="slot-%s">', $i);
|
||||||
|
if (!empty($dressedItems[$i])) {
|
||||||
|
if (!$isBattle && $isMain) {
|
||||||
|
$itemString = '<a href="?edit=%s&drop=%s"><img src="/i/sh/%s" class="item-wrap-normal" alt="%s" title="%s"></a>';
|
||||||
|
echo sprintf($itemString, mt_rand(), $i, $dressedItems[$i]['image'], $dressedItems[$i]['name'], $dressedItems[$i]['name']);
|
||||||
|
} else {
|
||||||
|
$itemString = '<img src="/i/sh/%s" class="item-wrap-normal tip" alt="%s"><span class="tiptext"><strong>%s</strong></span>';
|
||||||
|
echo sprintf($itemString, $dressedItems[$i]['image'], $dressedItems[$i]['name'], $dressedItems[$i]['name']);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
echo sprintf('<img src="/i/sh/noitem.png" class="item-wrap-normal" title="Пустой слот [%s]" alt="Пустой слот [%s]">', $i, $i);
|
||||||
|
}
|
||||||
|
echo sprintf('</div><!-- slot-%s -->', $i);
|
||||||
|
}
|
||||||
|
echo '<div class="slot-image">';
|
||||||
|
if ($isBattle) {
|
||||||
|
$sh = '<img src="/i/shadow/%s" alt="%s" class="tip"><span class="tiptext"><b>%s</b>Уровень: %s<br>Сила: %s<br>Ловкость: %s<br>Интуиция: %s<br>Выносливость: %s<br>Интеллект: %s<br>Мудрость: %s</span>';
|
||||||
|
echo sprintf($sh, $this->shadow, $this->login, $this->login, $this->level, $this->strength, $this->dexterity, $this->intuition, $this->endurance, $this->intelligence, $this->wisdom);
|
||||||
|
unset($sh);
|
||||||
|
} else {
|
||||||
|
echo '<img src="/i/shadow/' . $this->shadow . '" alt="' . $this->login . '">';
|
||||||
|
}
|
||||||
|
echo '</div><!-- slot-image -->';
|
||||||
|
}
|
||||||
|
|
||||||
|
private function UserInfoStats($isMainWindow = 0)
|
||||||
|
{
|
||||||
|
$captions = 'Уровень:<br>Сила:<br>Ловкость:<br>Интуиция:<br>Выносливость:<br>Интеллект:<br>Мудрость:<br>Местонахождение:';
|
||||||
|
$variables =
|
||||||
|
$this->level . '<br>' .
|
||||||
|
parent::getStat('strength') . '<br>' .
|
||||||
|
parent::getStat('dexterity') . '<br>' .
|
||||||
|
parent::getStat('intuition') . '<br>' .
|
||||||
|
parent::getStat('endurance') . '<br>' .
|
||||||
|
parent::getStat('intelligence') . '<br>' .
|
||||||
|
parent::getStat('wisdom') . '<br>' .
|
||||||
|
parent::getRoomName($this->room);
|
||||||
|
if ($isMainWindow) {
|
||||||
|
$this->Bank = new Bank($this->id);
|
||||||
|
$captions = 'Уровень:<br>Здоровье:<br>Сила:<br>Ловкость:<br>Интуиция:<br>Выносливость:<br>Интеллект:<br>Мудрость:<br>Опыт:<br>Очки характеристик:<br>Деньги:<br>Деньги в банке:';
|
||||||
|
$variables =
|
||||||
|
$this->level . '<br>' .
|
||||||
|
$this->health . '<br>' .
|
||||||
|
parent::getStat('strength', 1) . '<br>' .
|
||||||
|
parent::getStat('dexterity', 1) . '<br>' .
|
||||||
|
parent::getStat('intuition', 1) . '<br>' .
|
||||||
|
parent::getStat('endurance', 1) . '<br>' .
|
||||||
|
parent::getStat('intelligence', 1) . '<br>' .
|
||||||
|
parent::getStat('wisdom', 1) . '<br>' .
|
||||||
|
$this->experience . '<br>' .
|
||||||
|
$this->free_stat_points . '<br>' .
|
||||||
|
$this->money . '<br>' .
|
||||||
|
$this->Bank->money;
|
||||||
|
}
|
||||||
|
$nameString = '';
|
||||||
|
if ($this->align) {
|
||||||
|
$nameString = sprintf('<img src="/i/align_%s.png" alt="Склонность">', $this->align);
|
||||||
|
}
|
||||||
|
if ($this->block) {
|
||||||
|
$nameString .= '<span class="private"><s>' . $this->login . '</s></span>';
|
||||||
|
} else {
|
||||||
|
$nameString .= ' <b>' . $this->login . '</b> ';
|
||||||
|
}
|
||||||
|
if ($this->clan) {
|
||||||
|
$nameString .= sprintf('<img src="/i/clan/%s.png" alt="Клан">', $this->clan);
|
||||||
|
}
|
||||||
|
echo '<div class="user-info">';
|
||||||
|
echo '<div class="info">';
|
||||||
|
echo '<b>' . $nameString . '</b>';
|
||||||
|
echo '</div><!-- info -->';
|
||||||
|
echo '<div class="stats-container">';
|
||||||
|
echo '<div class="column">';
|
||||||
|
echo $captions;
|
||||||
|
echo '</div><!-- column -->';
|
||||||
|
echo '<div class="column">';
|
||||||
|
echo $variables;
|
||||||
|
echo '</div><!-- column -->';
|
||||||
|
echo '</div><!-- stats-container -->';
|
||||||
|
echo '<div class="debug">TODO: Сделать рассчёт модификаторов. Вывести полоску здоровья когда будет от чего отталкиваться.</div>';
|
||||||
|
echo '</div><!-- user-info -->';
|
||||||
|
}
|
||||||
|
|
||||||
|
private function Info()
|
||||||
|
{
|
||||||
|
echo '<div class="user-info-container">';
|
||||||
|
$this->UserInfoDoll();
|
||||||
|
$this->UserInfoStats();
|
||||||
|
echo '<div class="slot-lower">';
|
||||||
|
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);
|
||||||
|
}
|
||||||
|
echo '</div><!-- slot-lower -->';
|
||||||
|
echo '<div class="user-signs">';
|
||||||
|
echo sprintf('<img src="i/zodiac/%s.png" alt="Родовой знак">', $this->showStarSign());
|
||||||
|
echo '</div><!-- user-signs -->';
|
||||||
|
echo '</div><!-- user-info-container -->';
|
||||||
|
echo '<hr><!-- Нижняя часть -->';
|
||||||
|
echo '<div class="user-info-container-lower">';
|
||||||
|
echo '<h2>Об игроке</h2>';
|
||||||
|
if ($this->realname) {
|
||||||
|
echo sprintf('Имя: %s<br>', $this->realname);
|
||||||
|
}
|
||||||
|
if ($this->info) {
|
||||||
|
echo nl2br($this->info);
|
||||||
|
}
|
||||||
|
echo '</div><!-- user-info-container-lower -->';
|
||||||
|
|
||||||
|
if ($this->watcherIsAdmin || $this->watcherIsModerator) {
|
||||||
|
echo '<div class="secret-info">';
|
||||||
|
$infoString = 'E-Mail: %s<br> ДР Игрока: %s<br> IP Регистрации: %s';
|
||||||
|
echo sprintf($infoString, $this->email, date('d.m.Y', strtotime($this->borndate)), $this->ip);
|
||||||
|
if ($this->watcherIsAdmin) {
|
||||||
|
$this->Bank = new Bank($this->id);
|
||||||
|
$infoString = '<br><span>ИД Игрока: %s<br> ИД Комнаты: %s<br> Деньги: %s<br> Деньги в банке: %s<br> Опыт: %s<br> Нераспределённые очки: %s<br> Текущая сессия: %s</span>';
|
||||||
|
echo sprintf($infoString, $this->id, $this->room, $this->money, $this->Bank->money, $this->experience, $this->free_stat_points, $this->session_id);
|
||||||
|
}
|
||||||
|
$this->UserLogs = new UserLogModel($this->id);
|
||||||
|
echo '<div class="secret-info-user-log"><b>Личное дело</b><br>';
|
||||||
|
while ($userLogRow = $this->UserLogs->getUserLog()->fetch_object()) {
|
||||||
|
echo sprintf('<code>%s</code><br>', date("d.m.Y H:i ", strtotime($userLogRow->date)) . $userLogRow->text);
|
||||||
|
}
|
||||||
|
echo '</div><!-- secret-info-user-log -->';
|
||||||
|
echo '</div><!-- secret-info -->';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function showUserInfo()
|
||||||
|
{
|
||||||
|
$this->effects = new EffectsModel($this->id);
|
||||||
|
$this->WatcherStatus();
|
||||||
|
|
||||||
|
if ($this->block && (!$this->watcherIsAdmin || !$this->watcherIsModerator)) {
|
||||||
|
throw new Exception('<span class="error">Персонаж ' . $this->login . ' заблокирован!</span>');
|
||||||
|
} elseif ($this->effects->getHideUserInfoStatus() && (!$this->watcherIsAdmin || !$this->watcherIsModerator)) {
|
||||||
|
if ($this->effects->getHideUserInfoStatus() == -1) {
|
||||||
|
$date = 'навсегда';
|
||||||
|
} else {
|
||||||
|
$date = 'до' . date('d.m.Y', strtotime($this->effects->getHideUserInfoStatus()));
|
||||||
|
}
|
||||||
|
throw new Exception('<span class="error">Персонаж ' . $this->login . ' обезличен ' . $date . '.</span>');
|
||||||
|
} else {
|
||||||
|
$this->Info();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function showUserDoll($isBattle = 0, $isMain = 0)
|
||||||
|
{
|
||||||
|
echo '<div class="user-info-container">';
|
||||||
|
$this->UserInfoDoll($isBattle, $isMain);
|
||||||
|
echo '</div><!-- user-info-container -->';
|
||||||
|
}
|
||||||
|
|
||||||
|
public function showUserInfoMain()
|
||||||
|
{
|
||||||
|
echo '<div class="user-info-container">';
|
||||||
|
$this->UserInfoDoll();
|
||||||
|
$this->userInfoStats(1);
|
||||||
|
echo '</div><!-- user-info-container -->';
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -6,17 +6,11 @@
|
|||||||
* Project name: Battles-Game
|
* Project name: Battles-Game
|
||||||
*/
|
*/
|
||||||
require_once 'config.php';
|
require_once 'config.php';
|
||||||
/**
|
|
||||||
* Класс-заглушка для работы глобальных переменных в функциях.
|
|
||||||
* Возвращает массив данных таблицы users.
|
|
||||||
*/
|
|
||||||
if (isset($_SESSION['uid'])) {
|
if (isset($_SESSION['uid'])) {
|
||||||
//$user = (new users_row($_SESSION['uid']))->result();
|
|
||||||
$user = new User($_SESSION['uid']);
|
$user = new User($_SESSION['uid']);
|
||||||
} else {
|
} else {
|
||||||
echo "Не могу проинициализировать игрока!";
|
echo "Не могу проинициализировать игрока!";
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($user->id && $user->block) {
|
if ($user->id && $user->block) {
|
||||||
exit('user blocked!');
|
exit('user blocked!');
|
||||||
}
|
}
|
||||||
|
9
inf.php
9
inf.php
@ -3,10 +3,10 @@ session_start();
|
|||||||
include_once 'config.php';
|
include_once 'config.php';
|
||||||
|
|
||||||
$login = urldecode($_SERVER['QUERY_STRING']) ?? '';
|
$login = urldecode($_SERVER['QUERY_STRING']) ?? '';
|
||||||
$user = new User($login);
|
$userInfo = new UserInfo($login);
|
||||||
$presentsModel = new PresentsModel($user->id);
|
$presentsModel = new PresentsModel($userInfo->id);
|
||||||
$presentsList = $presentsModel->getAllPresents();
|
$presentsList = $presentsModel->getAllPresents();
|
||||||
$user->watcher_id = $_SESSION['uid'] ?? null;
|
$userInfo->watcher_id = $userInfo->id ?? null;
|
||||||
if (empty($user->id)): ?>
|
if (empty($user->id)): ?>
|
||||||
<!doctype html>
|
<!doctype html>
|
||||||
<html lang="ru">
|
<html lang="ru">
|
||||||
@ -31,7 +31,8 @@ if (empty($user->id)): ?>
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
try {
|
try {
|
||||||
$user->showUserInfo();
|
$userInfo->showUserInfo();
|
||||||
|
|
||||||
} catch (Exception $e_showUserInfo) {
|
} catch (Exception $e_showUserInfo) {
|
||||||
echo "<div class='debug'>Ошибка генератора showUserInfo() в User.php: {$e_showUserInfo}</div>";
|
echo "<div class='debug'>Ошибка генератора showUserInfo() в User.php: {$e_showUserInfo}</div>";
|
||||||
}
|
}
|
||||||
|
2
main.php
2
main.php
@ -39,6 +39,7 @@ $ids = $_GET['ids'] ?? null;
|
|||||||
$setShadow = $_POST['setshadow'] ?? null;
|
$setShadow = $_POST['setshadow'] ?? null;
|
||||||
$edit = $_GET['edit'] ?? null;
|
$edit = $_GET['edit'] ?? null;
|
||||||
// Подготавливаем отображение инфы и предметов.
|
// Подготавливаем отображение инфы и предметов.
|
||||||
|
$userInfo = new UserInfo($user->id);
|
||||||
$getItemsBonuses = new DressedItems($_SESSION['uid']);
|
$getItemsBonuses = new DressedItems($_SESSION['uid']);
|
||||||
$data_query = 'SELECT * FROM inventory WHERE owner_id = ?i AND dressed_slot = 0 AND on_sale = 0';
|
$data_query = 'SELECT * FROM inventory WHERE owner_id = ?i AND dressed_slot = 0 AND on_sale = 0';
|
||||||
$data = db::c()->query($data_query, $_SESSION['uid']);
|
$data = db::c()->query($data_query, $_SESSION['uid']);
|
||||||
@ -47,6 +48,7 @@ while ($row = $data->fetch_assoc()) {
|
|||||||
$iteminfo[] = new InventoryItem($row);
|
$iteminfo[] = new InventoryItem($row);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* === проверяем соответствие комнаты и скрипта === */
|
/* === проверяем соответствие комнаты и скрипта === */
|
||||||
if (in_array($user->room, [20, 21, 26, 48, 51, 52, 651, 2655, 2601, 2701, 2702, 2111], 1)) {
|
if (in_array($user->room, [20, 21, 26, 48, 51, 52, 651, 2655, 2601, 2701, 2702, 2111], 1)) {
|
||||||
header('Location: city.php');
|
header('Location: city.php');
|
||||||
|
Loading…
Reference in New Issue
Block a user