<?php
# заголовок
define('TITLE', 'Магазин');
# определение данных
$post = array(); $count = array(); $buy = array(); $balance = array(); // массив с данными
$params = PARAMS; $refresh = $FUNC->random(8, true); // параметры, случайное число
####################
####################
# покупка семян, в магазине
if (isset($params['param']) && $params['param'] == 'buy' && isset($params['seed']) &&
isset($params['count']) && isset($params['token']) && $params['token'] == TOKEN) {
# фильтрация параметров
$seed = $FUNC->filter($params['seed'], 'int'); // семя
$amount = $FUNC->filter($params['count'], 'int'); // количество
# проверка семян и количества на валидность, в базе данных
if ($seed > 0 && $seed < 6 && $amount > 0 && $amount < 11) { $cost = PRICE['seed_'. $seed];
$total = $cost * $amount; $access = true; } else $access = false;
# проверка на возможность покупки, место на складе, подсчет суммы
if ($access && USER['money'] >= $total && (SETUP['storage'] + $amount) <= DATA['storage']) {
# обновление количества семян на складе, в базе данных
db_update($DB, 'settings', array('storage' => $amount .';+'), array ('id' => USER['id'])); // место на складе игрока
if (db_exist($DB, 'storage', 'id', array('object' => $seed, 'type' => 'seed', 'user' => USER['id'])))
db_update($DB, 'storage', array('count' => $amount. ';+'), array ('object' => $seed, 'type' => 'seed', 'user' => USER['id'])); // семена имеются
else db_create($DB, 'storage', array('count' => $amount, 'object' => $seed, 'type' => 'seed', 'user' => USER['id'])); // новые семена
# обновление монет игрока, в базе данных
db_update($DB, 'users', array('money' => $total .';-'), array('id' => USER['id'])); } }
####################
# покупка семян, отдельный раздел
if (isset($params['param']) && $params['param'] == 'seeds' && isset($params['act']) && $params['act'] == 'buy' &&
isset($params['seed']) && isset($params['count']) && isset($params['token']) && $params['token'] == TOKEN) {
# фильтрация параметров
$seed = $FUNC->filter($params['seed'], 'int'); // семя
$amount = $FUNC->filter($params['count'], 'int'); // количество
# проверка семян и количества на валидность, в базе данных
if ($seed > 0 && $seed < 6 && $amount > 0 && $amount < 11) { $cost = PRICE['seed_'. $seed];
$total = $cost * $amount; $access = true; } else $access = false;
# проверка на возможность покупки, место на складе, подсчет суммы
if ($access && USER['money'] >= $total && (SETUP['storage'] + $amount) <= DATA['storage']) {
# обновление количества семян на складе, в базе данных
db_update($DB, 'settings', array('storage' => $amount .';+'), array ('id' => USER['id'])); // место на складе игрока
if (db_exist($DB, 'storage', 'id', array('object' => $seed, 'type' => 'seed', 'user' => USER['id'])))
db_update($DB, 'storage', array('count' => $amount. ';+'), array ('object' => $seed, 'type' => 'seed', 'user' => USER['id'])); // семена имеются
else db_create($DB, 'storage', array('count' => $amount, 'object' => $seed, 'type' => 'seed', 'user' => USER['id'])); // новые семена
# обновление монет игрока, в базе данных
db_update($DB, 'users', array('money' => $total .';-'), array ('id' => USER['id'])); } }
####################
####################
# вывод данных игрока
$user = db_output($DB, 'users', 'money', array('id' => USER['id'])); // монеты
$setup = db_output($DB, 'settings', 'storage', array('id' => USER['id'])); // склад
# данные верхней ссылки
if (isset($params['param']) && $params['param'] == 'seeds') $top = array('icon' => 'back', 'link' => 'garden', 'text' => 'Вернуться к растениям'); // растения
elseif (isset($params['param']) && $params['param'] == 'animal') $top = array('icon' => 'back', 'link' => 'animal', 'text' => 'Вернуться к животным'); // животные
elseif (isset($params['param']) && $params['param'] == 'technic') $top = array('icon' => 'back', 'link' => 'technic', 'text' => 'Вернуться к технике'); // техника
else $top = array('icon' => 'refresh', 'link' => 'shop/refresh/'. $refresh, 'text' => 'Обновить'); // обновление страницы
# показ разделов магазина
$seeds = true; $animal = true; $technic = true; $line = ' class="line"'; // по умолчанию, все разделы
if (isset($params['param']) && $params['param'] == 'seeds') { $animal = false; $technic = false; $line = ''; } // только семена
if (isset($params['param']) && $params['param'] == 'animal') { $seeds = false; $technic = false; $line = ''; } // только животные
if (isset($params['param']) && $params['param'] == 'technic') { $seeds = false; $animal = false; $line = ''; } // только техника
$bonused = ($seeds && $animal && $technic) ? true : false; // раздел с бонусами
# покупка семян, отдельный раздел, определение ссылки
$link = (isset($params['param']) && $params['param'] == 'seeds') ? 'seeds/act/' : '';
####################
# вывод количества семян
if (!db_exist($DB, 'storage', 'id', array('object' => 1, 'type' => 'seed', 'user' => USER['id']))) $count['flower']['count'] = 0; else
$count['flower'] = db_output($DB, 'storage', 'count', array('object' => 1, 'type' => 'seed', 'user' => USER['id'])); // цветы
if (!db_exist($DB, 'storage', 'id', array('object' => 2, 'type' => 'seed', 'user' => USER['id']))) $count['wheat']['count'] = 0; else
$count['wheat'] = db_output($DB, 'storage', 'count', array('object' => 2, 'type' => 'seed', 'user' => USER['id'])); // пшеница
if (!db_exist($DB, 'storage', 'id', array('object' => 3, 'type' => 'seed', 'user' => USER['id']))) $count['corn']['count'] = 0; else
$count['corn'] = db_output($DB, 'storage', 'count', array('object' => 3, 'type' => 'seed', 'user' => USER['id'])); // кукуруза
if (!db_exist($DB, 'storage', 'id', array('object' => 4, 'type' => 'seed', 'user' => USER['id']))) $count['strawberry']['count'] = 0; else
$count['strawberry'] = db_output($DB, 'storage', 'count', array('object' => 4, 'type' => 'seed', 'user' => USER['id'])); // клубника
if (!db_exist($DB, 'storage', 'id', array('object' => 5, 'type' => 'seed', 'user' => USER['id']))) $count['watermelon']['count'] = 0; else
$count['watermelon'] = db_output($DB, 'storage', 'count', array('object' => 5, 'type' => 'seed', 'user' => USER['id'])); // арбуз
# определение стоимости семян, количество места на складе для покупки
$flower = PRICE['seed_1']; $wheat = PRICE['seed_2']; $corn = PRICE['seed_3']; $strawberry = PRICE['seed_4']; $watermelon = PRICE['seed_5']; // определение цен
$buy['flower_1'] = ($user['money'] >= $flower && ($setup['storage'] + 1) <= DATA['storage']) ? true : false; // цветы, 1 шт.
$buy['flower_3'] = ($user['money'] >= ($flower * 3) && ($setup['storage'] + 3) <= DATA['storage']) ? true : false; // цветы, 3 шт.
$buy['flower_5'] = ($user['money'] >= ($flower * 5) && ($setup['storage'] + 5) <= DATA['storage']) ? true : false; // цветы, 5 шт.
$buy['flower_10'] = ($user['money'] >= ($flower * 10) && ($setup['storage'] + 10) <= DATA['storage']) ? true : false; // цветы, 10 шт.
$buy['wheat_1'] = ($user['money'] >= $wheat && ($setup['storage'] + 1) <= DATA['storage']) ? true : false; // пшеница, 1 шт.
$buy['wheat_3'] = ($user['money'] >= ($wheat * 3) && ($setup['storage'] + 3) <= DATA['storage']) ? true : false; // пшеница, 3 шт.
$buy['wheat_5'] = ($user['money'] >= ($wheat * 5) && ($setup['storage'] + 5) <= DATA['storage']) ? true : false; // пшеница, 5 шт.
$buy['wheat_10'] = ($user['money'] >= ($wheat * 10) && ($setup['storage'] + 10) <= DATA['storage']) ? true : false; // пшеница, 10 шт.
$buy['corn_1'] = ($user['money'] >= $corn && ($setup['storage'] + 1) <= DATA['storage']) ? true : false; // кукуруза, 1 шт.
$buy['corn_3'] = ($user['money'] >= ($corn * 3) && ($setup['storage'] + 3) <= DATA['storage']) ? true : false; // кукуруза, 3 шт.
$buy['corn_5'] = ($user['money'] >= ($corn * 5) && ($setup['storage'] + 5) <= DATA['storage']) ? true : false; // кукуруза, 5 шт.
$buy['corn_10'] = ($user['money'] >= ($corn * 10) && ($setup['storage'] + 10) <= DATA['storage']) ? true : false; // кукуруза, 10 шт.
$buy['strawberry_1'] = ($user['money'] >= $strawberry && ($setup['storage'] + 1) <= DATA['storage']) ? true : false; // клубника, 1 шт.
$buy['strawberry_3'] = ($user['money'] >= ($strawberry * 3) && ($setup['storage'] + 3) <= DATA['storage']) ? true : false; // клубника, 3 шт.
$buy['strawberry_5'] = ($user['money'] >= ($strawberry * 5) && ($setup['storage'] + 5) <= DATA['storage']) ? true : false; // клубника, 5 шт.
$buy['strawberry_10'] = ($user['money'] >= ($strawberry * 10) && ($setup['storage'] + 10) <= DATA['storage']) ? true : false; // клубника, 10 шт.
$buy['watermelon_1'] = ($user['money'] >= $watermelon && ($setup['storage'] + 1) <= DATA['storage']) ? true : false; // арбуз, 1 шт.
$buy['watermelon_3'] = ($user['money'] >= ($watermelon * 3) && ($setup['storage'] + 3) <= DATA['storage']) ? true : false; // арбуз, 3 шт.
$buy['watermelon_5'] = ($user['money'] >= ($watermelon * 5) && ($setup['storage'] + 5) <= DATA['storage']) ? true : false; // арбуз, 5 шт.
$buy['watermelon_10'] = ($user['money'] >= ($watermelon * 10) && ($setup['storage'] + 10) <= DATA['storage']) ? true : false; // арбуз, 10 шт.
$storage = ($setup['storage'] < DATA['storage']) ? true : false; // определение места на складе
# минимальная цена на покупку
$balance['flower'] = ($user['money'] < $flower) ? $flower - $user['money'] : false; // цветы
$balance['wheat'] = ($user['money'] < $wheat) ? $wheat - $user['money'] : false; // пшеница
$balance['corn'] = ($user['money'] < $corn) ? $corn - $user['money'] : false; // кукуруза
$balance['strawberry'] = ($user['money'] < $strawberry) ? $strawberry - $user['money'] : false; // клубника
$balance['watermelon'] = ($user['money'] < $watermelon) ? $watermelon - $user['money'] : false; // арбуз
####################
# животное, данные о курице
if ($animal != false) { $post['chicken']['icon'] = ($user['money'] >= PRICE['anim_1']) ? 'money' : 'cross'; // иконка
$post['chicken']['link'] = ($user['money'] >= PRICE['anim_1']) ? true : false; $lacks = PRICE['anim_1'] - $user['money']; // активность, расчет монет
$post['chicken']['text'] = ($user['money'] >= PRICE['anim_1']) ? 'Купить за '. PRICE['anim_1'] : 'Не хватает '. $GAME->word($lacks, 'монеты', 'монет', 'монет'); // текст
$post['chicken']['url'] = (isset($params['num']) && $FUNC->filter($params['num'], 'int')) ? 'animal/buy/num/'. $params['num'] .'/pet/1' : 'animal/pet/num/1'; // ссылка
# животное, данные об овечке
$post['sheep']['icon'] = ($user['money'] >= PRICE['anim_2']) ? 'money' : 'cross'; // иконка
$post['sheep']['link'] = ($user['money'] >= PRICE['anim_2']) ? true : false; $lacks = PRICE['anim_2'] - $user['money']; // активность, расчет монет
$post['sheep']['text'] = ($user['money'] >= PRICE['anim_2']) ? 'Купить за '. PRICE['anim_2'] : 'Не хватает '. $GAME->word($lacks, 'монеты', 'монет', 'монет'); // текст
$post['sheep']['url'] = (isset($params['num']) && $FUNC->filter($params['num'], 'int')) ? 'animal/buy/num/'. $params['num'] .'/pet/2' : 'animal/pet/num/2'; // ссылка
# животное, данные о корове
$post['cow']['icon'] = ($user['money'] >= PRICE['anim_3']) ? 'money' : 'cross'; // иконка
$post['cow']['link'] = ($user['money'] >= PRICE['anim_3']) ? true : false; $lacks = PRICE['anim_3'] - $user['money']; // активность, расчет монет
$post['cow']['text'] = ($user['money'] >= PRICE['anim_3']) ? 'Купить за '. PRICE['anim_3'] : 'Не хватает '. $GAME->word($lacks, 'монеты', 'монет', 'монет'); // текст
$post['cow']['url'] = (isset($params['num']) && $FUNC->filter($params['num'], 'int')) ? 'animal/buy/num/'. $params['num'] .'/pet/3' : 'animal/pet/num/3'; } // ссылка
####################
# техника, данные о вязальнице
if ($technic != false) { $post['knitter']['icon'] = ($user['money'] >= PRICE['tech_1']) ? 'money' : 'cross'; // иконка
$post['knitter']['link'] = ($user['money'] >= PRICE['tech_1']) ? true : false; $lacks = PRICE['tech_1'] - $user['money']; // активность, расчет монет
$post['knitter']['text'] = ($user['money'] >= PRICE['tech_1']) ? 'Купить за '. PRICE['tech_1'] : 'Не хватает '. $GAME->word($lacks, 'монеты', 'монет', 'монет'); // текст
$post['knitter']['url'] = (isset($params['num']) && $FUNC->filter($params['num'], 'int')) ? 'technic/buy/num/'. $params['num'] .'/tech/1' : 'technic/tech/num/1'; // ссылка
# техника, данные о мороженице
$post['freezer']['icon'] = ($user['money'] >= PRICE['tech_2']) ? 'money' : 'cross'; // иконка
$post['freezer']['link'] = ($user['money'] >= PRICE['tech_2']) ? true : false; $lacks = PRICE['tech_2'] - $user['money']; // активность, расчет монет
$post['freezer']['text'] = ($user['money'] >= PRICE['tech_2']) ? 'Купить за '. PRICE['tech_2'] : 'Не хватает '. $GAME->word($lacks, 'монеты', 'монет', 'монет'); // текст
$post['freezer']['url'] = (isset($params['num']) && $FUNC->filter($params['num'], 'int')) ? 'technic/buy/num/'. $params['num'] .'/tech/2' : 'technic/tech/num/2'; // ссылка
# техника, данные о пекарне
$post['bakery']['icon'] = ($user['money'] >= PRICE['tech_3']) ? 'money' : 'cross'; // иконка
$post['bakery']['link'] = ($user['money'] >= PRICE['tech_3']) ? true : false; $lacks = PRICE['tech_3'] - $user['money']; // активность, расчет монет
$post['bakery']['text'] = ($user['money'] >= PRICE['tech_3']) ? 'Купить за '. PRICE['tech_3'] : 'Не хватает '. $GAME->word($lacks, 'монеты', 'монет', 'монет'); // текст
$post['bakery']['url'] = (isset($params['num']) && $FUNC->filter($params['num'], 'int')) ? 'technic/buy/num/'. $params['num'] .'/tech/3' : 'technic/tech/num/3'; } // ссылка
?>