diff options
author | alexichi <alexbankai96@gmail.com> | 2016-04-25 10:43:56 +0200 |
---|---|---|
committer | alexichi <alexbankai96@gmail.com> | 2016-04-25 10:43:56 +0200 |
commit | 1ffba62faae83e18597270b68580a90ac3032a31 (patch) | |
tree | 603d33ed48a9dd3690aeef379eeb7fd8ce3a257f /inc/shop.inc | |
parent | 3ece645cc83e36aaa36c0258afa0f1b36eb13ca2 (diff) | |
parent | dc28807625b9f53e621ec0d7063d99c2527cfa02 (diff) | |
download | candybox-1ffba62faae83e18597270b68580a90ac3032a31.tar.gz candybox-1ffba62faae83e18597270b68580a90ac3032a31.tar.bz2 candybox-1ffba62faae83e18597270b68580a90ac3032a31.tar.xz candybox-1ffba62faae83e18597270b68580a90ac3032a31.zip |
Merge remote-tracking branch 'origin/piernov' into alexichi
Conflicts:
craftmine.php
index.xhtml
Diffstat (limited to 'inc/shop.inc')
-rw-r--r-- | inc/shop.inc | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/inc/shop.inc b/inc/shop.inc new file mode 100644 index 0000000..11cf97b --- /dev/null +++ b/inc/shop.inc @@ -0,0 +1,59 @@ +<?php + +require_once("messages.inc"); +require_once("account.inc"); +require_once("Item.inc"); +require_once("Inventory.inc"); + +$shop = array( + "cost" => 3, + "items" => array( + new Item("cat", 6, "🐈", "Nyan!"), + new Item("torch", 3, "🔦", "Electric torch"), + ), +); + +function getItem($name) { + global $shop; + foreach($shop["items"] as $item) { + if($name == $item->name) { + return $item; + } + } + sendError("shop_missing_item"); + return false; +} + +function initShop() { + $_SESSION["shop"] = true; +} + +function sendShop() { + global $shop; + if(!empty($_SESSION["shop"])) + return $shop; + else return false; +} + +function buildShop() { + global $shop; + if(!empty($_SESSION["shop"])) { + sendError("shop_already_built"); + } + elseif(debitAccount($shop["cost"])) { + initShop(); + $_SESSION["mine"]["gold"] -= $shop["cost"]; + echo json_encode(sendShop()); + } +} + +function buyItem() { + $item = getItem($_POST["item"]); + if($item && debitAccount($item->cost)) { + Inventory::addItem($item); + echo json_encode($item); + } +} + + +?> |