diff options
Diffstat (limited to 'inc/guild.inc')
-rw-r--r-- | inc/guild.inc | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/inc/guild.inc b/inc/guild.inc index c0e8264..537b87a 100644 --- a/inc/guild.inc +++ b/inc/guild.inc @@ -1,8 +1,34 @@ <?php +/** + * Manages miners guild. + * + * @package inc\guild.inc + * @author Alexandre Renoux + * @author Pierre-Emmanuel Novac + */ +/** + * Amount of gold required to build the miners guild. + */ define("GUILD_COST",10); +/** + * Amount of gold required to hire a miner. + */ 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; +} + +/** + * Create the miners guild in the session. + * Debits GUILD_COST from the player's gold. + * + * @return void + */ function createGuild(){ if(!empty($_SESSION["guild"])) { sendError("guild_already_built"); @@ -13,17 +39,30 @@ function createGuild(){ } } +/** + * Hire one miner. + * Debits MINER_COST from the player's gold. + * + * @return void + */ function hireMiner(){ if(!isset($_SESSION["guild"])){ sendError("guild_not_yet_created"); } elseif(debitAccount(MINER_COST)){ + initMinersIfNeeded(); $_SESSION["mine"]["miners"]++; echo json_encode(array("cost" => MINER_COST , "miners" => $_SESSION["mine"]["miners"])); } } +/** + * Returns the number of miners currently in the guild. + * + * @return int number of miners in the guild + */ function sendMiners(){ + initMinersIfNeeded(); return $_SESSION["mine"]["miners"]; } |