aboutsummaryrefslogtreecommitdiffstats
path: root/inc
diff options
context:
space:
mode:
authorpiernov <piernov@piernov.org>2016-05-10 22:21:31 +0200
committerpiernov <piernov@piernov.org>2016-05-10 22:21:31 +0200
commit58b1893e6c820ce8810c33f09bfcc16c3e59f4eb (patch)
tree8e893d4981f3d869cbe79b985570d66cf3c42175 /inc
parent204e838a7794bbce0d44fc35efb367abb052d02f (diff)
downloadcandybox-58b1893e6c820ce8810c33f09bfcc16c3e59f4eb.tar.gz
candybox-58b1893e6c820ce8810c33f09bfcc16c3e59f4eb.tar.bz2
candybox-58b1893e6c820ce8810c33f09bfcc16c3e59f4eb.tar.xz
candybox-58b1893e6c820ce8810c33f09bfcc16c3e59f4eb.zip
Various fixes
Diffstat (limited to 'inc')
-rw-r--r--inc/guild.inc9
-rw-r--r--inc/messages.inc1
-rw-r--r--inc/mine.inc14
3 files changed, 21 insertions, 3 deletions
diff --git a/inc/guild.inc b/inc/guild.inc
index c0e8264..1666b15 100644
--- a/inc/guild.inc
+++ b/inc/guild.inc
@@ -3,6 +3,13 @@
define("GUILD_COST",10);
define("MINER_COST",5);
+function initMinersIfNeeded() {
+ if(empty($_SESSION["mine"]))
+ $_SESSION["mine"] = array("miners" => 0);
+ else if(!array_key_exists("miners", $_SESSION["mine"]))
+ $_SESSION["mine"]["miners"] = 0;
+}
+
function createGuild(){
if(!empty($_SESSION["guild"])) {
sendError("guild_already_built");
@@ -18,12 +25,14 @@ function hireMiner(){
sendError("guild_not_yet_created");
}
elseif(debitAccount(MINER_COST)){
+ initMinersIfNeeded();
$_SESSION["mine"]["miners"]++;
echo json_encode(array("cost" => MINER_COST , "miners" => $_SESSION["mine"]["miners"]));
}
}
function sendMiners(){
+ initMinersIfNeeded();
return $_SESSION["mine"]["miners"];
}
diff --git a/inc/messages.inc b/inc/messages.inc
index 3a7d9b1..97e1da2 100644
--- a/inc/messages.inc
+++ b/inc/messages.inc
@@ -6,6 +6,7 @@ $messages = array(
"shop_missing_item" => "This item does not exist.",
"guild_not_yet_created" => "You need to create a guild first.",
"guild_already_built" => "You have aready built a guild.",
+ "cant_withdraw_in_dungeon" => "You cannot withdraw gold from the mine while you are in the dungeon.",
"dungeon_already_available" => "You can already access the dungeon",
"gamesave_ok" => "Game saved.",
diff --git a/inc/mine.inc b/inc/mine.inc
index 752fc69..76dfb50 100644
--- a/inc/mine.inc
+++ b/inc/mine.inc
@@ -1,18 +1,26 @@
<?php
-function initCraftMine() {
- $_SESSION["mine"] = array("gold" => 0, "miners" => 0);
+function initMineIfNeeded() {
+ if(empty($_SESSION["mine"]))
+ $_SESSION["mine"] = array("gold" => 0);
+ else if(!array_key_exists("gold", $_SESSION["mine"]))
+ $_SESSION["mine"]["gold"] = 0;
}
function withdrawMine() {
$amount = intval($_POST["amount"]);
+ if(!empty($_SESSION["dungeon"])) {
+ sendError("cant_withdraw_in_dungeon");
+ return;
+ }
if($amount == 0) return;
+ initMineIfNeeded();
$_SESSION["mine"]["gold"] += $amount;
echo json_encode($_SESSION["mine"]["gold"]);
}
function sendMine() {
- if(empty($_SESSION["mine"])) initCraftMine();
+ initMineIfNeeded();
$mine = $_SESSION["mine"];
return $mine["gold"];
}