<?php $amount = $_REQUEST['amount']; if (!is_numeric($amount)) { create_error('Numbers only please'); } // only whole numbers allowed $amount = floor($amount); $hardware_id = $var['hardware_id']; $hardware_name = Globals::getHardwareName($hardware_id); $cost = Globals::getHardwareCost($hardware_id); // no negative amounts are allowed if ($amount <= 0) { create_error('You must actually enter an amount greater than zero!'); } // do we have enough cash? if ($player->getCredits() < $cost * $amount) { create_error('You don\'t have enough credits to buy ' . $amount . ' items!'); } // chec for max. we can hold! if ($amount > $ship->getMaxHardware($hardware_id) - $ship->getHardware($hardware_id)) { create_error('You can\'t buy more ' . $hardware_name . ' than you can transport!'); } // take the money from the user $player->decreaseCredits($cost * $amount); $player->update(); // now adjust add to ship $ship->increaseHardware($hardware_id, $amount); $ship->updateHardware(); $ship->removeUnderAttack(); //HoF
} if ($sector->hasLocation()) { $locationsString = 'Locations='; $locations =& $sector->getLocations(); foreach ($locations as &$location) { $locationsString .= inify($location->getName()) . ','; } unset($location); unset($locations); $file .= substr($locationsString, 0, -1) . EOL; } if ($adminCreate === false && $sector->hasFriendlyForces($player)) { $forcesString = 'FriendlyForces='; $friendlyForces =& $sector->getFriendlyForces($player); foreach ($friendlyForces as &$forces) { $forcesString .= inify($forces->getOwner()->getPlayerName()) . '=' . inify(Globals::getHardwareName(HARDWARE_MINE)) . '=' . $forces->getMines() . ';' . inify(Globals::getHardwareName(HARDWARE_COMBAT)) . '=' . $forces->getCDs() . ';' . inify(Globals::getHardwareName(HARDWARE_SCOUT)) . '=' . $forces->getSDs() . ','; } unset($forces); unset($friendlyForces); $file .= substr($forcesString, 0, -1) . EOL; } } unset($sector); } unset($galaxy); $size = strlen($file); header('Pragma: public'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Cache-Control: private', false); header('Content-Type: application/force-download');
function doUNO($hardwareID, $amount) { debug('Buying ' . $amount . ' units of "' . Globals::getHardwareName($hardwareID) . '"'); $_REQUEST['amount'] = $amount; return create_container('shop_hardware_processing.php', '', array('hardware_id' => $hardwareID)); }