echo "<div id='content'>\n"; echo "<center>\n"; echo "<table width=\"519\">\n"; if ($gid > 200 && $gid < 300) { echo "<!-- begin fleet or defense information -->\n"; echo "<tr><td class=\"c\" colspan=\"2\">Информация о флоте:</td></tr>\n"; echo "<tr><th>Название</th><th>" . loca("NAME_{$gid}") . "</th></tr>\n"; echo "<tr><th colspan=\"2\">\n"; echo "<table border=\"0\">\n"; echo "<tr><td valign=\"top\"><img border=\"0\" src=\"" . UserSkin() . "gebaeude/{$gid}.gif\" width=\"120\" height=\"120\"></td>\n"; echo "<td>" . loca("LONG_{$gid}") . "<br/>" . rapid($gid) . "</td>\n"; echo "</tr></table></th></tr>\n"; echo "<tr><th>Структура</th><th>" . nicenum($UnitParam[$gid][0]) . "</th></tr>\n"; echo "<tr><th>Мощность щита</th><th>" . nicenum($UnitParam[$gid][1]) . "</th></tr>\n"; echo "<tr><th>Оценка атаки</th><th>" . nicenum($UnitParam[$gid][2]) . "</th></tr>\n"; echo "<tr><th>Грузоподъёмность</th><th>" . nicenum(FleetCargo($gid)) . " ед.</th></tr>\n"; echo "<tr><th>Начальная скорость</th><th>" . nicenum(FleetSpeed($gid, $GlobalUser['r115'], $GlobalUser['r117'], $GlobalUser['r118'])) . "</th></tr>\n"; echo "<tr><th>Потребление топлива (дейтерий)</th><th>" . nicenum(FleetCons($gid, $GlobalUser['r115'], $GlobalUser['r117'], $GlobalUser['r118'])) . "</th></tr>\n"; echo "</table></th></tr></table>\n"; } else { if ($gid > 400 && $gid < 500) { echo "<!-- begin fleet or defense information -->\n"; echo "<tr><td class=\"c\" colspan=\"2\">Информация об оборонительных сооружениях:</td></tr>\n"; echo "<tr><th>Название</th><th>" . loca("NAME_{$gid}") . "</th></tr>\n"; echo "<tr><th colspan=\"2\">\n"; echo "<table border=\"0\">\n"; echo "<tr><td valign=\"top\"><img border=\"0\" src=\"" . UserSkin() . "gebaeude/{$gid}.gif\" width=\"120\" height=\"120\"></td>\n"; echo "<td>" . loca("LONG_{$gid}") . "<br/>" . rapid($gid) . "</td>\n"; echo "</tr></table></th></tr>\n"; echo "<tr><th>Структура</th><th>" . nicenum($UnitParam[$gid][0]) . "</th></tr>\n"; echo "<tr><th>Мощность щита</th><th>" . nicenum($UnitParam[$gid][1]) . "</th></tr>\n";
function RecycleArrive($queue, $fleet_obj, $fleet, $origin, $target) { if ($fleet[209] == 0) { Error("Попытка сбора ПО без переработчиков"); } if ($target['type'] != 10000) { Error("Перерабатывать можно только поля обломков!"); } $sum_cargo = FleetCargoSummary($fleet) - ($fleet_obj['m'] + $fleet_obj['k'] + $fleet_obj['d']); $recycler_cargo = FleetCargo(209) * $fleet[209]; $cargo = min($recycler_cargo, $sum_cargo); $harvest = HarvestDebris($target['planet_id'], $cargo, $queue['end']); $dm = $harvest['m']; $dk = $harvest['k']; $subj = "\n<span class=\"espionagereport\">Разведданные</span>\n"; $report = "Переработчики в количестве " . nicenum($fleet[209]) . " штук обладают общей грузоподъёмностью в " . nicenum($cargo) . ". " . "Поле обломков содержит " . nicenum($target['m']) . " металла и " . nicenum($target['k']) . " кристалла. " . "Добыто " . nicenum($dm) . " металла и " . nicenum($dk) . " кристалла."; // Вернуть флот. DispatchFleet($fleet, $origin, $target, 108, $fleet_obj['flight_time'], $fleet_obj['m'] + $dm, $fleet_obj['k'] + $dk, $fleet_obj['d'], $fleet_obj['fuel'] / 2, $queue['end']); SendMessage($fleet_obj['owner_id'], "Флот ", $subj, $report, 5, $queue['end']); }
} $hold_time *= 60 * 60; // перевести в секунды } } // Рассчитать расстояние, время полёта и затраты дейтерия. $dist = FlightDistance(intval($_POST['thisgalaxy']), intval($_POST['thissystem']), intval($_POST['thisplanet']), intval($_POST['galaxy']), intval($_POST['system']), intval($_POST['planet'])); $slowest_speed = FlightSpeed($fleet, $origin_user['r115'], $origin_user['r117'], $origin_user['r118']); $flighttime = FlightTime($dist, $slowest_speed, $fleetspeed / 10, $unispeed); $cons = FlightCons($fleet, $dist, $flighttime, $origin_user['r115'], $origin_user['r117'], $origin_user['r118'], $unispeed, $hold_time / 3600); $cargo = $spycargo = $numships = 0; foreach ($fleet as $id => $amount) { if ($id != 210) { $cargo += FleetCargo($id) * $amount; } else { $spycargo = FleetCargo($id) * $amount; } $numships += $amount; } $space = $cargo + $spycargo - ($cons['fleet'] + $cons['probes']) - ($spycargo - $cons['probes']); if ($origin['d'] < $cons['fleet'] + $cons['probes']) { FleetError("Недостаточно топлива!"); } else { if ($space < 0) { FleetError("Недостаточно места в грузовом отсеке!"); } } // Ограничить перевозимые ресурсы грузоподъемностью флота и затратами на полёт. $cargo_m = $cargo_k = $cargo_d = 0; if ($space > 0) { $cargo_m = min($space, $resource1);
</tr> <tr height="20"> <th>Тип корабля</th> <th>В наличии</th> <!-- <th>Gesch.</th> --> <th>-</th> <th>-</th> </tr> <?php foreach ($fleetmap as $i => $gid) { $amount = $aktplanet["f{$gid}"]; if ($amount > 0) { $speed = FleetSpeed($gid, $GlobalUser['r115'], $GlobalUser['r117'], $GlobalUser['r118']); $cargo = FleetCargo($gid); $cons = FleetCons($gid, $GlobalUser['r115'], $GlobalUser['r117'], $GlobalUser['r118']); echo " <tr height=\"20\">\n"; echo " <th><a title=\"Скорость: {$speed}\">" . loca("NAME_{$gid}") . "</a></th>\n"; echo " <th>{$amount}<input type=\"hidden\" name=\"maxship{$gid}\" value=\"{$amount}\"/></th>\n"; echo "<!-- <th>{$speed} -->\n"; echo " <input type=\"hidden\" name=\"consumption{$gid}\" value=\"{$cons}\"/>\n"; echo " <input type=\"hidden\" name=\"speed{$gid}\" value=\"{$speed}\" /></th>\n"; echo " <input type=\"hidden\" name=\"capacity{$gid}\" value=\"{$cargo}\" /></th>\n"; if ($speed) { echo " <th><a href=\"javascript:maxShip('ship{$gid}');\" >все</a> </th>\n"; echo " <th><input name=\"ship{$gid}\" size=\"10\" value=\"0\" alt=\"" . loca("NAME_{$gid}") . " {$amount}\"/></th>\n"; } else { echo " <th></th>\n"; echo " <th></th>\n"; }
if ($order == 8) { $amount = min($aktplanet["f209"], $shipcount); if ($amount == 0) { AjaxSendError(611); } // нет кораблей для отправки // Сформировать флот. $fleet = array(0, 0); foreach ($fleetmap as $i => $gid) { if ($gid == 209) { $fleet[$gid] = $amount; } else { $fleet[$gid] = 0; } } $cargo = FleetCargo(209) * $amount; $recyclers -= $amount; } // Рассчитать расстояние, время полёта и затраты дейтерия. $dist = FlightDistance($aktplanet['g'], $aktplanet['s'], $aktplanet['p'], $galaxy, $system, $planet); $slowest_speed = FlightSpeed($fleet, $GlobalUser['r115'], $GlobalUser['r117'], $GlobalUser['r118']); $flighttime = FlightTime($dist, $slowest_speed, $speed, $unispeed); $arr = FlightCons($fleet, $dist, $flighttime, $GlobalUser['r115'], $GlobalUser['r117'], $GlobalUser['r118'], $unispeed); $cons = $arr['fleet'] + $arr['probes']; if ($aktplanet['d'] < $cons) { AjaxSendError(613); } // не хватает дейта на полёт if ($cargo < $cons) { AjaxSendError(615); }