<?php ob_start(); session_start(); if ($_SESSION['uid'] == null) header("Location: index.php"); require_once 'functions.php'; if ($user['room'] != 22) { header("Location: main.php"); die(); } if ($user['battle'] != 0) { header('location: fbattle.php'); die(); } $saleItems = false; $shopCategoryType = empty($_POST['sale']) ?: $_POST['sale']; $shopCategoryTypeNumber = empty($_GET['otdel']) ?: $_GET['otdel']; switch ($shopCategoryTypeNumber) { default: $shopCategoryType = "Предметы в инвентаре"; $saleItems = true; break; case 1: $shopCategoryType = "Кинжалы"; break; case 11: $shopCategoryType = "Топоры"; break; case 12: $shopCategoryType = "Дубины"; break; case 13: $shopCategoryType = "Мечи"; break; case 2: $shopCategoryType = "Сапоги"; break; case 21: $shopCategoryType = "Перчатки"; break; case 22: $shopCategoryType = "Легкая броня"; break; case 23: $shopCategoryType = "Тяжелая броня"; break; case 24: $shopCategoryType = "Шлемы"; break; case 3: $shopCategoryType = "Щиты"; break; case 4: $shopCategoryType = "Серьги"; break; case 41: $shopCategoryType = "Ожерелья"; break; case 42: $shopCategoryType = "Кольца"; break; case 5: $shopCategoryType = "Заклинания: нейтральные"; break; case 51: $shopCategoryType = "Заклинания: боевые и защитные"; break; case 6: $shopCategoryType = "Амуниция"; break; } if (false == $saleItems) { $shopItems = db::c()->query('SELECT `shop`.*, `magic`.`name` AS `magic_name`, `magic`.`chanse` AS `magic_chanse`, `magic`.`time` AS `magic_time`, `magic`.`file` AS `magic_file`, `magic`.`targeted` AS `magic_targeted`, `magic`.`needcharge` AS `magic_needcharge`, `magic`.`img` AS `magic_img` FROM `shop` LEFT JOIN `magic` ON `magic` = `magic`.`id` WHERE `count` > 0 AND `cost` > 0 AND `razdel` = ?i ORDER by `nlevel` ASC, `id` ASC', $shopCategoryTypeNumber); $iteminfo = []; while ($row = $shopItems->fetch_assoc()) { $iteminfo[] = new ShopItem($row); } } else { $inventoryItems = db::c()->query('SELECT `inventory`.*, `magic`.`name` AS `magic_name`, `magic`.`chanse` AS `magic_chanse`, `magic`.`time` AS `magic_time`, `magic`.`file` AS `magic_file`, `magic`.`targeted` AS `magic_targeted`, `magic`.`needcharge` AS `magic_needcharge`, `magic`.`img` AS `magic_img`, 0 AS `maxdur` FROM `inventory` LEFT JOIN `magic` ON `magic` = `magic`.`id` WHERE `dressed` = 0 AND `setsale` = 0 AND `cost` > 0 AND `present` = "?s" AND `tradesale` = 0 AND `podzem` = 0 AND `goden` = 0 AND `artefact` = 0 AND `owner` = ?i ORDER BY `update` DESC', null, $_SESSION['uid']); $iteminfo = []; while ($row = $inventoryItems->fetch_assoc()) { $iteminfo[] = new ShopItem($row); } } $sellItemId = filter_input(INPUT_GET, 'sell'); if ($sellItemId) { $dress = db::c()->query('SELECT `id`, `name`, `cost`, `koll` FROM `inventory` WHERE `dressed` = 0 AND `artefact` = 0 AND `id` = ?i AND `owner` = ?i', $sellItemId, $user['id'])->fetch_assoc(); $kols = ''; if ($dress['koll']) { $dress['cost'] *= $dress['koll']; $kols = "(x{$dress['koll']}) "; } $allcost = mt_rand(0, $dress['cost'] / 2); db::c()->query('DELETE FROM `inventory` WHERE `id` = ?i', $dress['id']); db::c()->query('UPDATE `users` SET `money` = `money` + ?i WHERE `id` = ?i', $allcost, $_SESSION['uid']); if ($allcost == 0) $status = "После длительных и изнурительных торгов вы плюнули на всё и просто подарили ваш «{$dress['name']}» торговцу."; else $status = "Вы продали «{$dress['name']}» $kols за " . $allcost . " кр."; $deloText = "{$user['login']} продал товар «{$dress['name']}» {$kols}id:({$dress['id']}) в магазине за {$allcost} кр."; addToDelo($deloText); // Для обновления данных о деньгах на странице $user['money'] += $allcost; } if (!empty($_GET['buy'])) { $dress = db::c()->query('SELECT * FROM `shop` WHERE `id`=?i', $_GET['buy'])->fetch_assoc(); $itemWeight = db::c()->query('SELECT sum(`massa`) AS `m` FROM `inventory` WHERE `owner` = ?i AND `setsale` = 0', $_SESSION['uid'])->fetch_assoc(); if (($dress['massa'] + $itemWeight['m']) > (get_meshok())) $status = 'Недостаточно места в рюкзаке.'; elseif ($user['money'] >= $dress['cost'] AND ($dress['count'] > 0 OR $dress['count'] == -1)) { $newItem = [ 'prototype' => $dress['id'], 'owner' => $user['id'], 'name' => $dress['name'], //s 'type' => $dress['type'], 'massa' => $dress['massa'], 'cost' => $dress['cost'], 'img' => $dress['img'], //s 'maxdur' => $dress['maxdur'], 'isrep' => $dress['isrep'], 'gsila' => $dress['gsila'], 'glovk' => $dress['glovk'], 'ginta' => $dress['ginta'], 'gintel' => $dress['gintel'], 'ghp' => $dress['ghp'], 'gnoj' => $dress['gnoj'], 'gtopor' => $dress['gtopor'], 'gdubina' => $dress['gdubina'], 'gmech' => $dress['gmech'], 'gfire' => $dress['gfire'], 'gwater' => $dress['gwater'], 'gair' => $dress['gair'], 'gearth' => $dress['gearth'], 'glight' => $dress['glight'], 'ggray' => $dress['ggray'], 'gdark' => $dress['gdark'], 'needident' => $dress['needident'], 'nsila' => $dress['nsila'], 'nlovk' => $dress['nlovk'], 'ninta' => $dress['ninta'], 'nintel' => $dress['nintel'], 'nmudra' => $dress['nmudra'], 'nvinos' => $dress['nvinos'], 'nnoj' => $dress['nnoj'], 'ntopor' => $dress['ntopor'], 'ndubina' => $dress['ndubina'], 'nmech' => $dress['nmech'], 'nfire' => $dress['nfire'], 'nwater' => $dress['nwater'], 'nair' => $dress['nair'], 'nearth' => $dress['nearth'], 'nlight' => $dress['nlight'], 'ngray' => $dress['ngray'], 'ndark' => $dress['ndark'], 'mfkrit' => $dress['mfkrit'], 'mfakrit' => $dress['mfakrit'], 'mfuvorot' => $dress['mfuvorot'], 'mfauvorot' => $dress['mfauvorot'], 'bron1' => $dress['bron1'], 'bron2' => $dress['bron2'], 'bron3' => $dress['bron3'], 'bron4' => $dress['bron4'], 'minu' => $dress['minu'], 'maxu' => $dress['maxu'], 'magic' => $dress['magic'], 'nlevel' => $dress['nlevel'], 'nalign' => $dress['nalign'], 'dategoden' => $dress['dategoden'], 'goden' => $dress['goden'], 'gmp' => $dress['gmp'], 'artefact' => $dress['artefact'], 'koll' => $dress['koll'], ]; db::c()->query('INSERT INTO `inventory` SET ?A[?i,?i,"?s",?i,?i,?i,"?s",?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i,?i]', $newItem); $inventoryItemId = db::c()->getLastInsertId(); if ($dress['count'] != -1) db::c()->query('UPDATE `shop` SET `count` = `count` - 1 WHERE `id` = ?i', $_GET['buy']); $status = "Вы купили «{$dress['name']}» за {$dress['cost']} кр."; db::c()->query('UPDATE `users` set `money` = `money` - ?i WHERE `id` = ?i', $dress['cost'], $_SESSION['uid']); $deloText = "{$user['login']} купил товар «{$dress['name']}» id:({$inventoryItemId}) в магазине за {$dress['cost']} кр."; addToDelo($deloText); // Для обновления данных о деньгах на странице $user['money'] -= $dress['cost']; } else { $status = "Недостаточно денег или нет вещей в наличии."; } } ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <link href="css/main.css" rel="stylesheet"/> <script src="js/jquery-1.7.2.min.js"></script> <script src="js/jquery.simplemodal.js"></script> <script src="js/jquery.ui.js?100"></script> <script src="js/main.js"></script> </head> <body> <h1>Государственный магазин</h1> <a href=# onclick=hrefToFrame('city.php?cp')> ← выйти на Центральную площадь</a> <div><?php if (!empty($status)) err($status); ?></div> <TABLE width=100% cellspacing="0" cellpadding="4"> <TR> <TD valign=top align=left> <h3><?= $shopCategoryType ?></h3> <?php if ($saleItems): ?> <div style="text-align: center;">Вы можете продать ваши предметы за сущие копейки.</div> <?php endif; ?> <!--Магазин--> <TABLE class="zebra" WIDTH=100% CELLSPACING="1" CELLPADDING="2"> <?php if ($saleItems == true) { foreach ($iteminfo as $ii) { echo "<tr><td style='width: 150px; text-align: center;'>"; $ii->printImage(); $ii->printControls('sell'); echo "</td>"; echo "<td style='vertical-align: top;'>"; $ii->printInfo(); echo "</td></tr>"; } } else { foreach ($iteminfo as $ii) { echo "<tr><td style='width: 150px; text-align: center;'>"; $ii->printImage(); $ii->printControls(); echo "</td>"; echo "<td style='vertical-align: top;'>"; $ii->printInfo(); echo "</td></tr>"; } } ?> </TABLE> </TD> <TD valign=top width=280> <B>Масса всех ваших вещей: <?= getItemsMassaInfo() ?> <BR>У вас в наличии: <span style="color: darkgreen;"><?= $user['money'] ?></span> кр.</B> <hr> <div style="text-align: center; font-weight: bold;">Отделы магазина</div> <a href="shop.php?otdel=sale&rnd=<?= mt_rand() ?>">Продать вещи</a> <dl> <dt><b>Оружие:</b></dt> <dd><a href="?otdel=1&rnd=<?= mt_rand() ?>">кинжалы</a></dd> <dd><a href="?otdel=11&rnd=<?= mt_rand() ?>">топоры</a></dd> <dd><a href="?otdel=12&rnd=<?= mt_rand() ?>">дубины</a></dd> <dd><a href="?otdel=13&rnd=<?= mt_rand() ?>">мечи</a></dd> <dt><b>Одежда:</b></dt> <dd><a href="?otdel=24&rnd=<?= mt_rand() ?>">шлемы</a></dd> <dd><a href="?otdel=23&rnd=<?= mt_rand() ?>">тяжелая броня</a></dd> <dd><a href="?otdel=22&rnd=<?= mt_rand() ?>">легкая броня</a></dd> <dd><a href="?otdel=3&rnd=<?= mt_rand() ?>">щиты</a></dd> <dd><a href="?otdel=21&rnd=<?= mt_rand() ?>">перчатки</a></dd> <dd><a href="?otdel=2&rnd=<?= mt_rand() ?>">сапоги</a></dd> <dt><b>Ювелирные товары:</b></dt> <dd><a href="?otdel=4&rnd=<?= mt_rand() ?>">серьги</a></dd> <dd><a href="?otdel=41&rnd=<?= mt_rand() ?>">ожерелья</a></dd> <dd><a href="?otdel=42&rnd=<?= mt_rand() ?>">кольца</a></dd> <dt><b>Магия:</b></dt> <dd><a href="?otdel=51&rnd=<?= mt_rand() ?>">боевые</a></dd> <dd><a href="?otdel=5&rnd=<?= mt_rand() ?>">разные</a></dd> <dt><b>Разное:</b></dt> <dd><a href="?otdel=6&rnd=<?= mt_rand() ?>">амуниция</a></dd> </dl> <div id="hint3" class="ahint"></div> </TD> </TR> </TABLE> </BODY> </HTML>