* All rights reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*
* --> NOTICE <--
* This file is part of the core development branch, changing its contents will
* make you unable to use the automatic updates manager. Please refer to the
* documentation for further information about customizing XNova.
*
*/
/**
*
* @deprecated
* @param unknown_type $FleetRow
*/
function MissionCaseDestruction($FleetRow)
{
global $user, $pricelist, $lang, $resource, $CombatCaps, $gameConfig;
trigger_error(sprintf('%s is deprecated', __FUNCTION__), E_USER_DEPRECATED);
includeLang('system');
if ($FleetRow['fleet_start_time'] <= time()) {
if ($FleetRow['fleet_mess'] == 0) {
if (!isset($CombatCaps[202]['sd'])) {
message("". $lang['sys_no_vars'] ."", $lang['sys_error'], "fleet." . PHPEXT, 2);
return;
}
$QryTargetPlanet = "SELECT * FROM {{table}} ";
$QryTargetPlanet .= "WHERE ";
$QryTargetPlanet .= "`galaxy` = '". $FleetRow['fleet_end_galaxy'] ."' AND ";
$QryTargetPlanet .= "`system` = '". $FleetRow['fleet_end_system'] ."' AND ";
$QryTargetPlanet .= "`planet` = '". $FleetRow['fleet_end_planet'] ."' AND ";
$QryTargetPlanet .= "`planet_type` = '". $FleetRow['fleet_end_type'] ."';";
$TargetPlanet = doquery( $QryTargetPlanet, 'planets', true);
$TargetUserID = $TargetPlanet['id_owner'];
$QryDepPlanet = "SELECT * FROM {{table}} ";
$QryDepPlanet .= "WHERE ";
$QryDepPlanet .= "`galaxy` = '". $FleetRow['fleet_start_galaxy'] ."' AND ";
$QryDepPlanet .= "`system` = '". $FleetRow['fleet_start_system'] ."' AND ";
$QryDepPlanet .= "`planet` = '". $FleetRow['fleet_start_planet'] ."' AND ";
$QryDepPlanet .= "`planet_type` = '". $FleetRow['fleet_start_type'] ."';";
$DepPlanet = doquery( $QryDepPlanet, 'planets', true);
$DepName = $DepPlanet['name'];
$QryCurrentUser = "SELECT * FROM {{table}} ";
$QryCurrentUser .= "WHERE ";
$QryCurrentUser .= "`id` = '". $FleetRow['fleet_owner'] ."';";
$CurrentUser = doquery($QryCurrentUser , 'users', true);
$CurrentUserID = $CurrentUser['id'];
$QryTargetUser = "SELECT * FROM {{table}} ";
$QryTargetUser .= "WHERE ";
$QryTargetUser .= "`id` = '". $TargetUserID ."';";
$TargetUser = doquery($QryTargetUser, 'users', true);
$QryTargetTech = "SELECT ";
$QryTargetTech .= "`military_tech`, `defence_tech`, `shield_tech` ";
$QryTargetTech .= "FROM {{table}} ";
$QryTargetTech .= "WHERE ";
$QryTargetTech .= "`id` = '". $TargetUserID ."';";
$TargetTechno = doquery($QryTargetTech, 'users', true);
$QryCurrentTech = "SELECT ";
$QryCurrentTech .= "`military_tech`, `defence_tech`, `shield_tech` ";
$QryCurrentTech .= "FROM {{table}} ";
$QryCurrentTech .= "WHERE ";
$QryCurrentTech .= "`id` = '". $CurrentUserID ."';";
$CurrentTechno = doquery($QryCurrentTech, 'users', true);
for ($SetItem = 200; $SetItem < 500; $SetItem++) {
if ($TargetPlanet[$resource[$SetItem]] > 0) {
$TargetSet[$SetItem]['count'] = $TargetPlanet[$resource[$SetItem]];
}
}
$TheFleet = explode(";", $FleetRow['fleet_array']);
foreach($TheFleet as $a => $b) {
if ($b != '') {
$a = explode(",", $b);
$CurrentSet[$a[0]]['count'] = $a[1];
}
}
include_once($ugamela_root_path . 'includes/ataki.' . PHPEXT);
// Calcul de la duree de traitement (initialisation)
$starttime = microtime(true);
$walka = walka($CurrentSet, $TargetSet, $CurrentTechno, $TargetTechno);
$totaltime = (microtime(true) - $starttime);
// Ce qu'il reste de l'attaquant
$CurrentSet = $walka["atakujacy"];
// Ce qu'il reste de l'attaqu�
$TargetSet = $walka["wrog"];
// Le resultat de la bataille
$FleetResult = $walka["wygrana"];
// Rapport long (rapport de bataille detaill�)
$dane_do_rw = $walka["dane_do_rw"];
// Rapport court (cdr + unit�es perdues)
$zlom = $walka["zlom"];
$FleetArray = "";
$FleetAmount = 0;
$FleetStorage = 0;
foreach ($CurrentSet as $Ship => $Count) {
$FleetStorage += $pricelist[$Ship]["capacity"] * $Count['count'];
$FleetArray .= $Ship.",".$Count['count'].";";
$FleetAmount += $Count['count'];
}
$TargetPlanetUpd = "";
if (!is_null($TargetSet)) {
foreach($TargetSet as $Ship => $Count) {
$TargetPlanetUpd .= "`". $resource[$Ship] ."` = '". $Count['count'] ."', ";
}
}
if ($FleetResult == "a") {
$ripCount = 0.;
$supernovaCount = 0.;
$gravitonLevel = 0.;
if (isset($CurrentSet['214']) && isset($CurrentSet['214']['count'])) {
$ripCount = floatval($CurrentSet['214']['count']);
}
if (isset($CurrentSet['216']) && isset($CurrentSet['216']['count'])) {
$supernovaCount = floatval($CurrentSet['216']['count']);
}
if (isset($user[$resource[Legacies_Empire::ID_RESEARCH_GRAVITON_TECHNOLOGY]])) {
$gravitonLevel = floatval($user[$resource[Legacies_Empire::ID_RESEARCH_GRAVITON_TECHNOLOGY]]);
}
$destructionPower = $ripCount + ($supernovaCount * 4);
$gravitonPower = 1 + pow(1 - $gravitonLevel, 2);
$rawChances = pow(sqrt(1 / floatval($TargetPlanet['diameter'])) * $destructionPower * $gravitonPower, 2);
$chances = (1 - (1 / ((2500 / floatval($gameConfig['game_speed'])) * pow(1 + $rawChances, 2)))) * .5;
$tirage = mt_rand(0, 100000000);
$probalune = sprintf($lang['sys_destruc_lune'], (int) ($chances * 100));
if ($tirage <= ($chance * 1000000)) {
$resultat = '1';
$finmess = $lang['sys_destruc_reussi'];
//destruction de la lune dabord dans la liste des planetes puis dans la liste des lunes et enfin dans la galaxie
doquery("DELETE FROM {{table}} WHERE `id` = '". $TargetPlanet['id'] ."';", 'planets');
$Qrydestructionlune = "UPDATE {{table}} SET ";
$Qrydestructionlune .= "`destruyed` = '1' ";
$Qrydestructionlune .= "WHERE ";
$Qrydestructionlune .= "`galaxy` = '". $FleetRow['fleet_end_galaxy'] ."' AND ";
$Qrydestructionlune .= "`system` = '". $FleetRow['fleet_end_system'] ."' AND ";
$Qrydestructionlune .= "`lunapos` = '". $FleetRow['fleet_end_planet'] ."' ";
$Qrydestructionlune .= "LIMIT 1 ;";
doquery( $Qrydestructionlune , 'lunas');
$Qrydestructionlune2 = "UPDATE {{table}} SET ";
$Qrydestructionlune2 .= "`id_luna` = '0' ";
$Qrydestructionlune2 .= "WHERE ";
$Qrydestructionlune2 .= "`galaxy` = '". $FleetRow['fleet_end_galaxy'] ."' AND ";
$Qrydestructionlune2 .= "`system` = '". $FleetRow['fleet_end_system'] ."' AND ";
$Qrydestructionlune2 .= "`planet` = '". $FleetRow['fleet_end_planet'] ."' ";
$Qrydestructionlune2 .= "LIMIT 1 ;";
//$Qrydestructionlune2 .= ";";
doquery( $Qrydestructionlune2 , 'galaxy');
//la lune est detruite, alors on redirige les flottes sur la planete
$QryDetFleets1 = "UPDATE {{table}} SET ";
$QryDetFleets1 .= "`fleet_start_type` = '1' ";
$QryDetFleets1 .= "WHERE ";
$QryDetFleets1 .= "`fleet_start_galaxy` = '". $FleetRow['fleet_end_galaxy'] ."' AND ";
$QryDetFleets1 .= "`fleet_start_system` = '". $FleetRow['fleet_end_system'] ."' AND ";
$QryDetFleets1 .= "`fleet_start_planet` = '". $FleetRow['fleet_end_planet'] ."' ";
$QryDetFleets1 .= ";";
doquery( $QryDetFleets1 , 'fleets');
$QryDetFleets2 = "UPDATE {{table}} SET ";
$QryDetFleets2 .= "`fleet_end_type` = '1' ";
$QryDetFleets2 .= "WHERE ";
$QryDetFleets2 .= "`fleet_end_galaxy` = '". $FleetRow['fleet_end_galaxy'] ."' AND ";
$QryDetFleets2 .= "`fleet_end_system` = '". $FleetRow['fleet_end_system'] ."' AND ";
$QryDetFleets2 .= "`fleet_end_planet` = '". $FleetRow['fleet_end_planet'] ."' ";
$QryDetFleets2 .= ";";
doquery( $QryDetFleets2 , 'fleets');
//maintenant on va verifier si la vue du joueur n est pas calee sur la lune qui est detruite
if ($TargetUser['current_planet'] == $TargetPlanet['id']){
$QryPlanet = "SELECT * FROM {{table}} ";
$QryPlanet .= "WHERE ";
$QryPlanet .= "`galaxy` = '". $FleetRow['fleet_end_galaxy'] ."' AND ";
$QryPlanet .= "`system` = '". $FleetRow['fleet_end_system'] ."' AND ";
$QryPlanet .= "`planet` = '". $FleetRow['fleet_end_planet'] ."' AND ";
$QryPlanet .= "`planet_type` = '1';";
$Planet = doquery( $QryPlanet, 'planets', true);
$IDPlanet = $Planet['id'];
$Qryvue = "UPDATE {{table}} SET ";
$Qryvue .= "`current_planet` = '". $IDPlanet ."' ";
$Qryvue .= "WHERE ";
$Qryvue .= "`id` = '". $TargetUserID ."' ";
$Qryvue .= ";";
doquery( $Qryvue , 'users');
}
} else {
$resultat = '0';
}// la lune a resisté
// la lune a resiste, alors voyons les chances que les rip soient detruites
$destructionrip = (1 - (1 / pow($TargetPlanet['diameter'], 1 / 4))) * .5;
//maintenant qu on sait quelle chance tentons la destruction, allez roule croupier
$chance2 = round($destructionrip * 100); // En pourcentage
if ($resultat == 0) {
$tirage2 = mt_rand(0, 100);
$probarip = sprintf($lang['sys_destruc_rip'], $chance2);
if ($tirage2 <= $chance2) {
$resultat2 = ' detruite 1'; // RIP detruite
$finmess = $lang['sys_destruc_echec'];
doquery("DELETE FROM {{table}} WHERE `fleet_id` = '". $FleetRow["fleet_id"] ."';", 'fleets');
}
else {
$resultat2 = 'sauvees 0'; // les RIP sont saines et sauves
$finmess = $lang['sys_destruc_null'];
}}
//fin
}
$introdestruc = sprintf ($lang['sys_destruc_mess'], $DepName , $FleetRow['fleet_start_galaxy'], $FleetRow['fleet_start_system'], $FleetRow['fleet_start_planet'], $FleetRow['fleet_end_galaxy'], $FleetRow['fleet_end_system'], $FleetRow['fleet_end_planet']);
// Mise a jour de l'enregistrement de la planete attaqu�e
$QryUpdateTarget = "UPDATE {{table}} SET ";
$QryUpdateTarget .= $TargetPlanetUpd;
$QryUpdateTarget .= "`metal` = `metal` - '". $Mining['metal'] ."', ";
$QryUpdateTarget .= "`crystal` = `crystal` - '". $Mining['crystal'] ."', ";
$QryUpdateTarget .= "`deuterium` = `deuterium` - '". $Mining['deuter'] ."' ";
$QryUpdateTarget .= "WHERE ";
$QryUpdateTarget .= "`galaxy` = '". $FleetRow['fleet_end_galaxy'] ."' AND ";
$QryUpdateTarget .= "`system` = '". $FleetRow['fleet_end_system'] ."' AND ";
$QryUpdateTarget .= "`planet` = '". $FleetRow['fleet_end_planet'] ."' AND ";
$QryUpdateTarget .= "`planet_type` = '". $FleetRow['fleet_end_type'] ."' ";
$QryUpdateTarget .= "LIMIT 1;";
doquery( $QryUpdateTarget , 'planets');
// Mise a jour du champ de ruine devant la planete attaqu�e
$QryUpdateGalaxy = "UPDATE {{table}} SET ";
$QryUpdateGalaxy .= "`metal` = `metal` + '". $zlom['metal'] ."', ";
$QryUpdateGalaxy .= "`crystal` = `crystal` + '". $zlom['crystal'] ."' ";
$QryUpdateGalaxy .= "WHERE ";
$QryUpdateGalaxy .= "`galaxy` = '". $FleetRow['fleet_end_galaxy'] ."' AND ";
$QryUpdateGalaxy .= "`system` = '". $FleetRow['fleet_end_system'] ."' AND ";
$QryUpdateGalaxy .= "`planet` = '". $FleetRow['fleet_end_planet'] ."' ";
$QryUpdateGalaxy .= "LIMIT 1;";
doquery( $QryUpdateGalaxy , 'galaxy');
// L� on va discuter le bout de gras pour voir s'il y a moyen d'avoir une Lune !
$FleetDebris = $zlom['metal'] + $zlom['crystal'];
$StrAttackerUnits = sprintf ($lang['sys_attacker_lostunits'], $zlom["atakujacy"]);
$StrDefenderUnits = sprintf ($lang['sys_defender_lostunits'], $zlom["wrog"]);
$StrRuins = sprintf ($lang['sys_gcdrunits'], $zlom["metal"], $lang['Metal'], $zlom['crystal'], $lang['Crystal']);
$DebrisField = $StrAttackerUnits ."
". $StrDefenderUnits ."
". $StrRuins;
$MoonChance = $FleetDebris / 100000;
if ($FleetDebris > 2000000) {
$MoonChance = 20;
}
if ($FleetDebris < 100000) {
$UserChance = 0;
$ChanceMoon = "";
} elseif ($FleetDebris >= 100000) {
$UserChance = mt_rand(1, 100);
$ChanceMoon = sprintf ($lang['sys_moonproba'], $MoonChance);
}
if (($UserChance > 0) and ($UserChance <= $MoonChance) and $galenemyrow['id_luna'] == 0) {
$TargetPlanetName = CreateOneMoonRecord ( $FleetRow['fleet_end_galaxy'], $FleetRow['fleet_end_system'], $FleetRow['fleet_end_planet'], $TargetUserID, $FleetRow['fleet_start_time'], '', $MoonChance );
$GottenMoon = sprintf ($lang['sys_moonbuilt'], $TargetPlanetName, $FleetRow['fleet_end_galaxy'], $FleetRow['fleet_end_system'], $FleetRow['fleet_end_planet']);
} elseif ($UserChance = 0 or $UserChance > $MoonChance) {
$GottenMoon = "";
}
$AttackDate = date("r", $FleetRow["fleet_start_time"]);
$title = sprintf ($lang['sys_destruc_title'], $AttackDate);
$raport = "
". $title ." ";
$zniszczony = false;
$a_zestrzelona = 0;
$AttackTechon['A'] = $CurrentTechno["military_tech"] * 10;
$AttackTechon['B'] = $CurrentTechno["defence_tech"] * 10;
$AttackTechon['C'] = $CurrentTechno["shield_tech"] * 10;
$AttackerData = sprintf ($lang['sys_attack_attacker_pos'], $CurrentUser["username"], $FleetRow['fleet_start_galaxy'], $FleetRow['fleet_start_system'], $FleetRow['fleet_start_planet'] );
$AttackerTech = sprintf ($lang['sys_attack_techologies'], $AttackTechon['A'], $AttackTechon['B'], $AttackTechon['C']);
$DefendTechon['A'] = $TargetTechno["military_tech"] * 10;
$DefendTechon['B'] = $TargetTechno["defence_tech"] * 10;
$DefendTechon['C'] = $TargetTechno["shield_tech"] * 10;
$DefenderData = sprintf ($lang['sys_attack_defender_pos'], $TargetUser["username"], $FleetRow['fleet_end_galaxy'], $FleetRow['fleet_end_system'], $FleetRow['fleet_end_planet'] );
$DefenderTech = sprintf ($lang['sys_attack_techologies'], $DefendTechon['A'], $DefendTechon['B'], $DefendTechon['C']);
foreach ($dane_do_rw as $a => $b) {
$raport .= " ".$AttackerData." ".$AttackerTech."";
if ($b["atakujacy"]['count'] > 0) {
$raport1 = "| ".$lang['sys_ship_type']." | ";
$raport2 = "
|---|
| ".$lang['sys_ship_count']." | ";
$raport3 = "
|---|
| ".$lang['sys_ship_weapon']." | ";
$raport4 = "
|---|
| ".$lang['sys_ship_shield']." | ";
$raport5 = "
|---|
| ".$lang['sys_ship_armour']." | ";
foreach ($b["atakujacy"] as $Ship => $Data) {
if (is_numeric($Ship)) {
if ($Data['count'] > 0) {
$raport1 .= "". $lang["tech_rc"][$Ship] ." | ";
$raport2 .= "". $Data['count'] ." | ";
$raport3 .= "". round($Data["atak"] / $Data['count']) ." | ";
$raport4 .= "". round($Data["tarcza"] / $Data['count']) ." | ";
$raport5 .= "". round($Data["obrona"] / $Data['count']) ." | ";
}
}
}
$raport1 .= " ";
$raport2 .= "";
$raport3 .= "";
$raport4 .= "";
$raport5 .= "";
$raport .= $raport1 . $raport2 . $raport3 . $raport4 . $raport5;
} else {
if ($a == 2) {
$a_zestrzelona = 1;
}
$zniszczony = true;
$raport .= " ". $lang['sys_destroyed'];
}
$raport .= " |
|---|
";
$raport .= " ".$DefenderData." ".$DefenderTech."";
if ($b["wrog"]['count'] > 0) {
$raport1 = "| ".$lang['sys_ship_type']." | ";
$raport2 = "
|---|
| ".$lang['sys_ship_count']." | ";
$raport3 = "
|---|
| ".$lang['sys_ship_weapon']." | ";
$raport4 = "
|---|
| ".$lang['sys_ship_shield']." | ";
$raport5 = "
|---|
| ".$lang['sys_ship_armour']." | ";
foreach ($b["wrog"] as $Ship => $Data) {
if (is_numeric($Ship)) {
if ($Data['count'] > 0) {
$raport1 .= "". $lang["tech_rc"][$Ship] ." | ";
$raport2 .= "". $Data['count'] ." | ";
$raport3 .= "". round($Data["atak"] / $Data['count']) ." | ";
$raport4 .= "". round($Data["tarcza"] / $Data['count']) ." | ";
$raport5 .= "". round($Data["obrona"] / $Data['count']) ." | ";
}
}
}
$raport1 .= " ";
$raport2 .= "";
$raport3 .= "";
$raport4 .= "";
$raport5 .= "";
$raport .= $raport1 . $raport2 . $raport3 . $raport4 . $raport5;
} else {
$zniszczony = true;
$raport .= " ". $lang['sys_destroyed'];
}
$raport .= " |
|---|
";
if (($zniszczony == false) and !($a == 8)) {
$AttackWaveStat = sprintf ($lang['sys_attack_attack_wave'], floor($b["atakujacy"]["atak"]), floor($b["wrog"]["tarcza"]));
$DefendWavaStat = sprintf ($lang['sys_attack_defend_wave'], floor($b["wrog"]["atak"]), floor($b["atakujacy"]["tarcza"]));
$raport .= " ".$AttackWaveStat." ".$DefendWavaStat."";
}
}
switch ($FleetResult) {
case "a":
$raport .= $lang['sys_attacker_won'] ." ";
$raport .= $DebrisField ." ";
$raport .= $introdestruc ." ";
$raport .= $lang['sys_destruc_mess1'];
$raport .= $finmess ." ";
$raport .= $probalune ." ";
$raport .= $probarip ." ";
break;
case "r":
$raport .= $lang['sys_both_won'] ." ";
$raport .= $DebrisField ." ";
$raport .= $introdestruc ." ";
$raport .= $lang['sys_destruc_stop'] ." ";
break;
case "w":
$raport .= $lang['sys_defender_won'] ." ";
$raport .= $DebrisField ." ";
$raport .= $introdestruc ." ";
$raport .= $lang['sys_destruc_stop'] ." ";
doquery("DELETE FROM {{table}} WHERE `fleet_id` = '". $FleetRow["fleet_id"] ."';", 'fleets');
break;
default:
break;
}
$SimMessage = sprintf($lang['sys_rapport_build_time'], $totaltime);
$raport .= $SimMessage ." |
";
$dpath = (!$user["dpath"]) ? DEFAULT_SKINPATH : $user["dpath"];
$rid = md5($raport);
$QryInsertRapport = "INSERT INTO {{table}} SET ";
$QryInsertRapport .= "`time` = UNIX_TIMESTAMP(), ";
$QryInsertRapport .= "`id_owner1` = '". $FleetRow['fleet_owner'] ."', ";
$QryInsertRapport .= "`id_owner2` = '". $TargetUserID ."', ";
$QryInsertRapport .= "`rid` = '". $rid ."', ";
$QryInsertRapport .= "`a_zestrzelona` = '". $a_zestrzelona ."', ";
$QryInsertRapport .= "`raport` = '". addslashes ( $raport ) ."';";
doquery( $QryInsertRapport , 'rw');
// Colorisation du r�sum� de rapport pour l'attaquant
$raport = "";
$raport .= "";
if ($FleetResult == "a") {
$raport .= "";
} elseif ($FleetResult == "r") {
$raport .= "";
} elseif ($FleetResult == "w") {
$raport .= "";
}
$raport .= $lang['sys_mess_destruc_report'] ." [". $FleetRow['fleet_end_galaxy'] .":". $FleetRow['fleet_end_system'] .":". $FleetRow['fleet_end_planet'] ."]
";
$raport .= "". $lang['sys_perte_attaquant'] .": ". $zlom["atakujacy"] ."";
$raport .= " ". $lang['sys_perte_defenseur'] .":". $zlom["wrog"] ."
" ;
$raport .= $lang['sys_debris'] ." ". $lang['Metal'] .":". $zlom['metal'] ." ". $lang['Crystal'] .":". $zlom['crystal'] ."
";
$QryUpdateFleet = "UPDATE {{table}} SET ";
$QryUpdateFleet .= "`fleet_amount` = '". $FleetAmount ."', ";
$QryUpdateFleet .= "`fleet_array` = '". $FleetArray ."', ";
$QryUpdateFleet .= "`fleet_mess` = '1' ";
$QryUpdateFleet .= "WHERE fleet_id = '". $FleetRow['fleet_id'] ."' ";
$QryUpdateFleet .= "LIMIT 1 ;";
doquery( $QryUpdateFleet , 'fleets');
SendSimpleMessage ( $CurrentUserID, '', $FleetRow['fleet_start_time'], 3, $lang['sys_mess_tower'], $lang['sys_mess_destruc_report'], $raport );
// Colorisation du r�sum� de rapport pour le defenseur
$raport2 = "";
$raport2 .= "";
if ($FleetResult == "a") {
$raport2 .= "";
} elseif ($FleetResult == "r") {
$raport2 .= "";
} elseif ($FleetResult == "w") {
$raport2 .= "";
}
$raport2 .= $lang['sys_mess_destruc_report'] ." [". $FleetRow['fleet_end_galaxy'] .":". $FleetRow['fleet_end_system'] .":". $FleetRow['fleet_end_planet'] ."]
";
SendSimpleMessage ( $TargetUserID, '', $FleetRow['fleet_start_time'], 3, $lang['sys_mess_tower'], $lang['sys_mess_destruc_report'], $raport2 );
}
// Retour de flotte (s'il en reste)
$fquery = "";
if ($FleetRow['fleet_end_time'] <= time()) {
if (!is_null($CurrentSet)) {
foreach($CurrentSet as $Ship => $Count) {
$fquery .= "`". $resource[$Ship] ."` = `". $resource[$Ship] ."` + '". $Count['count'] ."', ";
}
} else {
$fleet = explode(";", $FleetRow['fleet_array']);
foreach($fleet as $a => $b) {
if ($b != '') {
$a = explode(",", $b);
$fquery .= "{$resource[$a[0]]}={$resource[$a[0]]} + {$a[1]}, \n";
}
}
}
doquery ("DELETE FROM {{table}} WHERE `fleet_id` = " . $FleetRow["fleet_id"], 'fleets');
if (!($FleetResult == "w")) {
$QryUpdatePlanet = "UPDATE {{table}} SET ";
$QryUpdatePlanet .= $fquery;
$QryUpdatePlanet .= "`metal` = `metal` + ". $FleetRow['fleet_resource_metal'] .", ";
$QryUpdatePlanet .= "`crystal` = `crystal` + ". $FleetRow['fleet_resource_crystal'] .", ";
$QryUpdatePlanet .= "`deuterium` = `deuterium` + ". $FleetRow['fleet_resource_deuterium'] ." ";
$QryUpdatePlanet .= "WHERE ";
$QryUpdatePlanet .= "`galaxy` = ".$FleetRow['fleet_start_galaxy']." AND ";
$QryUpdatePlanet .= "`system` = ".$FleetRow['fleet_start_system']." AND ";
$QryUpdatePlanet .= "`planet` = ".$FleetRow['fleet_start_planet']." AND ";
$QryUpdatePlanet .= "`planet_type` = ".$FleetRow['fleet_start_type']." LIMIT 1 ;";
doquery( $QryUpdatePlanet, 'planets' );
}
}
}
}