function update_ressources($connexion, $gameInfo) { // need fichier gameplay config in JSON $player = dbRequest($connexion, "SELECT `gameTime`, `hardCurrency`, `softCurrency`, `ressource_1`, `ressource_2`, `ressource_3`, `ressource_4`, `ressource_5`, `ressource_6`, `population`, `populationMax`, `faithPercent`, `lastTimeUpdated` FROM `players` WHERE `facebookID` = :id", array(":id" => $_SESSION["facebookID"]), true); if (!count($player)) { return "0=Wrong player id"; } $player = $player[0]; $_POST["churchClicks"] = isset($_POST["churchClicks"]) ? $_POST["churchClicks"] : 0; $_POST["museumClicks"] = isset($_POST["museumClicks"]) ? $_POST["museumClicks"] : 0; $delta_time = time() - strtotime($player["lastTimeUpdated"]); $player["lastTimeUpdated"] = time(); $chuches = dbRequest($connexion, "SELECT `ID` FROM `builded_buildings` WHERE isBuilded = 1 && playerFbID = :id && (buildingID = 258 || buildingID = 514 || buildingID = 770)", array(":id" => $_SESSION["facebookID"]), true); if (count($chuches)) { $player["faithPercent"] /= 100; $faithClicks = $delta_time * $gameInfo["maxClickPerSecond"] > $_POST["churchClicks"] ? $_POST["churchClicks"] : 0; $player["faithPercent"] = min(max($player["faithPercent"] - $gameInfo["faithLossSpeed"] * $delta_time + $gameInfo["prayerEffect"] * $faithClicks, 0), 1) * 100; } $museums = dbRequest($connexion, "SELECT `ID` FROM `builded_buildings` WHERE isBuilded = 1 && playerFbID = :id && (buildingID = 269 || buildingID = 525 || buildingID = 781)", array(":id" => $_SESSION["facebookID"]), true); if (count($museums)) { $museumClicks = $delta_time * $gameInfo["maxClickPerSecond"] > $_POST["museumClicks"] ? $_POST["museumClicks"] : 0; $player["softCurrency"] += $gameInfo["museeSoftSpeed"] * $delta_time + $museumClicks * $gameInfo['musseVisiteGain']; } $niches = dbRequest($connexion, "SELECT sum(case when buildingID = 266 then 1 else 0 end) nicheLv1,\n\t sum(case when buildingID = 525 then 1 else 0 end) nicheLv2,\n\t sum(case when buildingID = 778 then 1 else 0 end) nicheLv3 FROM `builded_buildings` WHERE `playerFbID` = :id", array(":id" => $_SESSION["facebookID"]), true); $niches = $niches[0]; $dogeSpeed = $niches["nicheLv1"] * $gameInfo['nicheLv1']['dogepersecond'] + $niches["nicheLv2"] * $gameInfo['nicheLv2']['dogepersecond'] + $niches["nicheLv3"] * $gameInfo['nicheLv3']['dogepersecond']; $player["population"] = min($player["population"] + $dogeSpeed * $delta_time, $player["populationMax"]); dbRequest($connexion, "UPDATE `players` SET `softCurrency`=:fric, `population`= :pop, `faithPercent`=:faith, `lastTimeUpdated`=:time WHERE facebookID = :id", array(":id" => $_SESSION["facebookID"], ":fric" => $player["softCurrency"], ":pop" => $player["population"], ":faith" => $player["faithPercent"], ":time" => date("Y-m-d H:i:s")), false); return json_encode($player); }
<?php // MAA Model // // Set Config for data query parameters: $selectors = array('SEARCH_INDEX_item' => array('db' => 'es', 'mode' => 'SELECT', 'route' => 'file-browser/content', 'condition' => array('match' => $model[$controller]['query']['condition']), 'order' => $model[$controller]['query']['order']), 'SEARCH_INDEX_all' => array('db' => 'es', 'mode' => 'SELECT COUNT', 'route' => 'file-browser/content', 'limit' => $model[$controller]['query']['limit'], 'filter' => array('term' => $model[$controller]['query']['filter']), 'condition' => $model[$controller]['query']['condition'], 'order' => $model[$controller]['query']['order']), 'CREATE_INDEX' => array('db' => 'es', 'mode' => 'CREATE', 'route' => 'file-browser/content', 'items' => $model[$controller]['query']['items']), 'DELETE_INDEX' => array('db' => 'es', 'mode' => 'DROP', 'route' => 'file-browser/content'), 'SEARCH_item' => array('db' => 'mysql', 'mode' => 'SELECT', 'condition' => $model[$controller]['query']['condition'], 'order' => $model[$controller]['query']['order']), 'SEARCH_all' => array('db' => 'mysql', 'mode' => 'SELECT COUNT', 'limit' => $model[$controller]['query']['limit'], 'condition' => $model[$controller]['query']['filter'], 'order' => $model[$controller]['query']['order']), 'CREATE_TABLE' => array('db' => 'mysql', 'mode' => 'CREATE_TABLE', 'fields' => $model[$controller]['query']['fields']), 'INSERT' => array('db' => 'mysql', 'mode' => 'INSERT', 'items' => $model[$controller]['query']['items']), 'DELETE_TABLE' => array('db' => 'mysql', 'mode' => 'DROP')); // ------------------------------------------------------ // Query DB and return to controller as an array: $model[$controller] = array_merge($model[$controller], dbRequest($selectors[$model[$controller]['selector']], $model[$controller]['query']['report']));