<?
# данные по умолчанию
if (defined('USER')) { $warning = array(); $color = array();
# вывод из базы данных, количество пользователей
$users = $GAME->number(db_count($DB, 'users', 'id')); $time = time() - DATA['online']; // количество игроков
$online = $GAME->number(db_count($DB, 'users', 'id', array('visit;>' => $time))); // сейчас в игре, онлайн
# вывод фермы из базы данных
$animal = db_output($DB, 'animal', array('feed', 'food', 'pet'), array('user' => USER['id']), true, 'num', DATA['animal']); // животные
$garden = db_output($DB, 'garden', array('harv', 'plant'), array('user' => USER['id']), true, 'num', DATA['garden']); // растения
$technic = db_output($DB, 'technic', array('crash', 'food', 'num', 'prod', 'tech'), array('user' => USER['id']), true, 'num', DATA['technic']); // техника
$tasks = db_output($DB, 'tasks', array('one', 'two', 'three'), array('user' => USER['id']), true, 'num', DATA['tasks']); // задания
# обработка данных, животные
foreach ($animal as $post) { $eat = ($post['pet'] != 0) ? explode(';', ANIMAL['eat_'. $post['pet']]) : false; if ($post['feed'] == 0 && // данные о кормлении
$post['food'] == 0 && $post['pet'] != 0 && db_exist($DB, 'storage', 'id', array('count;>' => 0, 'object' => $eat[1], 'type' => 'plant', 'user' => USER['id']))) // кормление
$warning['animal'] = true; if ($post['food'] < time() && $post['food'] != 0 && $post['pet'] != 0) $warning['animal'] = true; } // сбор продуктов
# обработка данных, сбор урожая, растения
foreach ($garden as $post) { if ($post['harv'] < time() && $post['harv'] != 0) $warning['garden'] = true; }
# обработка данных, техника
foreach ($technic as $post) { if ($post['tech'] != 0 && $post['prod'] == 0) { $food = explode('-', $post['food']); $loads[$post['num']] = 0; // продукты техники
for ($how = 0; $how < count($food); $how++) { $exp = explode(':', $food[$how]); if (db_exist($DB, 'storage', 'id', array('object' => $exp[1], // загрузка продуктов
'type' => $exp[0], 'user' => USER['id']))) $loads[$post['num']]++; } } if ($post['crash'] == 0 && $post['tech'] != 0) $warning['technic'] = true; // техника сломана
if ($post['tech'] != 0 && $post['prod'] == 0 && isset($loads[$post['num']]) && $loads[$post['num']] == count($food)) // загрузка продуктов
$warning['technic'] = true; if ($post['prod'] < time() && $post['prod'] != 0 && $post['tech'] != 0) $warning['technic'] = true; } // сбор продуктов
# обработка данных, задания
foreach ($tasks as $post) { $one = explode(':', $post['one']); // продукты, первое задание
$post['unit'] = (db_exist($DB, 'storage', 'id', array('count;>=' => $one[2], 'object' => $one[1], 'type' => $one[0], // наличие, первое задание
'user' => USER['id']))) ? true : false; if ($post['two'] != 'none') { $two = explode(':', $post['two']); // продукты, второе задание
$post['deuce'] = (db_exist($DB, 'storage', 'id', array('count;>=' => $two[2], 'object' => $two[1], // наличие, второе задание
'type' => $two[0], 'user' => USER['id']))) ? 'true' : 'false'; } if ($post['three'] != 'none') { $three = explode(':', $post['three']); // продукты, третье задание
$post['triple'] = (db_exist($DB, 'storage', 'id', array('count;>=' => $three[2], 'object' => $three[1], // наличие, третье задание
'type' => $three[0], 'user' => USER['id']))) ? 'true' : 'false'; } $post['units'] = ($post['unit'] == 'tick') ? true : false; // проверка выполнения, первая задача
$post['deuces'] = (isset($post['deuce']) && $post['deuce'] == 'true' || $post['two'] == 'none') ? true : false; // проверка выполнения, вторая задача
$post['triples'] = (isset($post['triple']) && $post['triple'] == 'true' || $post['three'] == 'none') ? true : false; // проверка выполнения, третья задача
if ($post['units'] && $post['deuces'] && $post['triples']) $warning['tasks'] = true; } // задание выполнено
# текущие данные пользователя
$update = db_output($DB, 'users', array('chat', 'news'), array('id' => USER['id']));
# обработка данных, новости
$news = db_output($DB, 'news', 'time', false, false, 'id', 1, 0, 'DESC'); // данные из базы
if ($news['time'] > $update['news']) $warning['news'] = true; // проверка, определение
# обработка данных, чат
$chat = db_output($DB, 'chat', 'time', false, false, 'id', 1, 0, 'DESC'); // данные из базы
if ($chat['time'] > $update['chat']) $warning['chat'] = true; // проверка, определение
# обработка данных, почта
if (db_exist($DB, 'dialogs', 'id', array('author' => USER['id'], 'open' => 'no'))) $warning['mail'] = true;
# обработка данных, подарки
if (db_exist($DB, 'gifts', 'id', array('whom' => USER['id'], 'open' => 'no'))) $warning['gifts'] = true;
# определение ссылок, цвет
$color['animal'] = (isset($warning['animal'])) ? ' color ' : ' '; // животные
$color['garden'] = (isset($warning['garden'])) ? ' color ' : ' '; // растения
$color['technic'] = (isset($warning['technic'])) ? ' color ' : ' '; // техника
$color['tasks'] = (isset($warning['tasks'])) ? ' color ' : ' '; // задания
$color['news'] = (isset($warning['news'])) ? ' color ' : ' '; // новости
$color['chat'] = (isset($warning['chat'])) ? ' color ' : ' '; // чат
$color['mail'] = (isset($warning['mail'])) ? ' color ' : ' '; // почта
$color['gifts'] = (isset($warning['gifts'])) ? ' color ' : ' '; } // подарки
?>