// Include class definitions before calling session_start() require_once '../../server/classes/class.dbutil.php'; require_once '../../server/classes/class.users.php'; require_once '../../server/classes/class.buildings.php'; require_once '../../server/classes/class.operations.php'; require_once '../../server/classes/class.user.php'; require_once '../../server/config.php'; session_start(); if (count($_GET) != 0 && isset($_SESSION['userSession'])) { // Check that all parameters have valid values if (!is_numeric($_GET['x']) || !is_numeric($_GET['y']) || intval($_GET['x']) < 0 || intval($_GET['y']) < 0 || intval($_GET['x']) > GRID_X || intval($_GET['y']) > GRID_Y) { die('ERROR'); } $DB = new DBUtil(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); // DB name if ($DB) { $UserUtil = new UserUtil($DB); $OperUtil = new OperationsUtil($DB); $user = $UserUtil->getUserById($_SESSION['userSession']->getId()); // Is there anything in that coordinate? $inst = $OperUtil->findBuildingInstanceByXY($user->getId(), $_GET['x'], $_GET['y']); if ($inst) { $OperUtil->removeInstance($inst); die('OK'); } else { die('ERROR'); } } } else { die('ERROR'); }
require_once '../../server/classes/class.buildings.php'; require_once '../../server/classes/class.operations.php'; require_once '../../server/classes/class.user.php'; require_once '../../server/config.php'; session_start(); if (count($_GET) != 0 && isset($_SESSION['userSession'])) { // Check that all parameters have valid values if (!is_numeric($_GET['buildingId']) || !is_numeric($_GET['x']) || !is_numeric($_GET['y']) || intval($_GET['x']) < 0 || intval($_GET['y']) < 0 || intval($_GET['x']) > GRID_X || intval($_GET['y']) > GRID_Y) { die('ERROR'); } $DB = new DBUtil(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); // DB name if ($DB) { $UserUtil = new UserUtil($DB); $BuildingUtil = new BuildingUtil($DB); $OperUtil = new OperationsUtil($DB); // Check if it's a valid building $building = $BuildingUtil->getBuildingById((int) $_GET['buildingId']); if ($building) { $user = $UserUtil->getUserById($_SESSION['userSession']->getId()); // Does the user have enough money to purchase it? if ($user && $user->getBalance() >= $building->getCost()) { // Grab this user's building instances $inst = $OperUtil->findBuildingInstanceByXY($user->getId(), $_GET['x'], $_GET['y']); // Purchase if (!$inst) { // Create the building instance $bi = new BuildingInstance(null, $user->getId(), $building->getId(), (int) $_GET['x'], (int) $_GET['y']); $bi = $OperUtil->create($bi); // Take the money away $user->setBalance($user->getBalance() - $building->getCost());
require_once '../server/classes/class.users.php'; require_once '../server/classes/class.buildings.php'; require_once '../server/classes/class.operations.php'; require_once '../server/classes/class.user.php'; require_once '../server/config.php'; session_start(); if (!isset($_SESSION['userSession'])) { // If the user is not logged in, redirect him to the index. header("location: index.php"); } $DB = new DBUtil(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); // DB name if ($DB) { $UserUtil = new UserUtil($DB); $BuildingUtil = new BuildingUtil($DB); $OperUtil = new OperationsUtil($DB); $user = $UserUtil->getUserById($_SESSION['userSession']->getId()); $buildings = $BuildingUtil->listBuildings(); } if (!$DB || $user == null || $buildings == null) { die("An unrecoverable error ocurred while trying to load the user information. Try again later."); } else { // Grab this user's building instances $arrBldInst = $OperUtil->getBuildingInstances($user->getId()); } ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" />
require_once '../../server/classes/class.users.php'; require_once '../../server/classes/class.user.php'; require_once '../../server/classes/class.buildings.php'; require_once '../../server/classes/class.building.php'; require_once '../../server/classes/class.operations.php'; require_once '../../server/config.php'; session_start(); $error = false; if (isset($_SESSION['userSession'])) { $DB = new DBUtil(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); // DB name if ($DB) { $UserUtil = new UserUtil($DB); $user = $UserUtil->getUserById($_SESSION['userSession']->getId()); if ($user) { $OperUtil = new OperationsUtil($DB); $BuildingUtil = new BuildingUtil($DB); $balance = $UserUtil->getBalanceByUserId($user->getId()); $arrBuildings = $OperUtil->getProfitableBuildingsList($user->getId()); $t = time() - $user->getLastUpdate(); for ($i = 0; $i < count($arrBuildings); $i++) { $res = floor($t / (int) $arrBuildings[$i]['LAPSE']); $res = $res * (int) $arrBuildings[$i]['PROFIT']; $balance += $res * (int) $arrBuildings[$i]['QTY']; } $user->setBalance($balance); $UserUtil->update($user); die('OK:' . $balance); } else { die('ERROR'); }
require_once '../server/classes/class.buildingInstance.php'; require_once '../server/classes/class.user.php'; require_once '../server/config.php'; session_start(); if (isset($_SESSION['userSession'])) { // If the user is already logged in, redirect him to the game. header("location: game.php"); } $loginError = false; $registerError = false; if (count($_POST) != 0 && isset($_POST['type'])) { $DB = new DBUtil(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); // DB name if ($DB) { $UserUtil = new UserUtil($DB); $OperUtil = new OperationsUtil($DB); if ($_POST['type'] == 'login') { $user = $UserUtil->authenticate($_POST['email'], $_POST['password']); if ($user) { $_SESSION['userSession'] = $user; header("location: game.php"); } else { $loginError = true; } } else { if (strlen($_POST['name']) == 0 || strlen($_POST['password']) == 0) { $registerError = true; } else { $user = new User(null, $_POST['name'], $_POST['email']); $user->setPassword($_POST['password']); $user = $UserUtil->create($user);