= $resultat['start_time'] + $resultat['end_time'] && !empty($resultat['end_time'])) { //Mission attaquer if ($mission == 1) { //Définition des variables $deb_met = 0; $deb_cri = 0; //Récupération d'informations sur le joueur cible : nombre de vaisseaux, défenses $reqd = mysql_query("SELECT * FROM planete WHERE `galaxie` = '$end_galaxie' AND `ss` = '$end_ss' AND `position` = '$end_position'"); $resultatd = mysql_fetch_array($reqd); //Génération des tableaux contenant les informations de chaque vaisseaux $ATvais = ''; $ENvais = ''; $ENdef = ''; $ATvais_pv = ''; $ENvais_pv = ''; $ENdef_pv = ''; $ATvais_bc = ''; $ENvais_bc = ''; $ENdef_bc = ''; for ($i = 1; $i <= 12; $i++) { //Données joueur attaquant for ($j = 1; $j <= $resultat['vaisseau_'.$i]; $j++) { $ATvais .= $i.' '; //Récupération du type du vaisseau $ATvais_pv .= $nomvais_pv[$i-1].' '; //Récupération des PV du vaisseau suivant son type $ATvais_bc .= $nomvais_bc[$i-1].' '; //Récupération des boucliers du vaisseau suivant son type } //Données joueur cible for ($j = 1; $j <= $resultatd['vaisseau_'.$i]; $j++) { $ENvais .= $i.' '; //Récupération du type du vaisseau $ENvais_pv .= $nomvais_pv[$i-1].' '; //Récupération des PV du vaisseau suivant son type $ENvais_bc .= $nomvais_bc[$i-1].' '; //Récupération des boucliers du vaisseau suivant son type } } //Génération des tableaux contenant les informations des défenses de la planète for ($i = 1; $i <= 5; $i++) { for ($j = 1; $j <= $resultatd['def_'.$i]; $j++) { $ENdef .= $i.' '; //Récupération du type de défense $ENdef_pv .= $defense_pv[$i-1].' '; //Récupération des PV de la défense suivant son type $ENdef_bc .= $defense_bc[$i-1].' '; //Récupération des boucliers de la défense suivant son type } } //Création des tableaux $ATvais = split(' ', trim($ATvais)); $ENvais = split(' ', trim($ENvais)); $ENdef = split(' ', trim($ENdef)); $ATvais_pv = split(' ', trim($ATvais_pv)); $ENvais_pv = split(' ', trim($ENvais_pv)); $ENdef_pv = split(' ', trim($ENdef_pv)); $ATvais_bc = split(' ', trim($ATvais_bc)); $ENvais_bc = split(' ', trim($ENvais_bc)); $ENdef_bc = split(' ', trim($ENdef_bc)); while(resteVaisseau($ATvais) && (resteVaisseau($ENvais) || resteVaisseau($ENdef))) { //Récupération du nombre de vaisseaux attaquant $nb_ATvais = count($ATvais); //Attaque des vaisseaux un par un for ($i = 0; $i<$nb_ATvais ; $i++) { //Définition des paramètres du vaisseau qui va attaquer $vaisAT_id = $i; //ID du vaisseau dans le tableau $vaisAT_type = $ATvais[$vaisAT_id] - 1; //type du vaisseau pour une utilisation inter-tableaux : départ à 0 et non à 1 $vaisAT_pv = $ATvais_pv[$vaisAT_id]; //récupération du nombre de PV du vaisseau $vaisAT_bc = $ATvais_bc[$vaisAT_id]; //Récupération du bouclier $vaisAT_at = $nomvais_at[$vaisAT_type]; //On ne fait quelque chose que si le vaisseau à encore des point de vie if ($vaisAT_pv > 0) { /* Formation défense majeur, attaque aléatoire * * Régénération des boucliers 100% * Attaque suivant les proportions vaisseaux/défenses du joueur cible */ //Si le bouclier est endommagé, on le régénére if ($vaisAT_bc < $nomvais_bc[$vaisAT_type]) { $vaisAT_bc = $ATvais_bc[$vaisAT_id] = $nomvais_bc[$vaisAT_type]; } //Le bouclier est intact, on attaque aléatoirement une défense ou un vaisseau else { //Le vaisseau attaque tant qu'il lui reste des points d'attaques disponibles ou tant qu'il reste des vaisseaux et des défenses à attaquer while($vaisAT_at > 0 && (resteVaisseau($ENvais) || resteVaisseau($ENdef))) { //Détermine le nombre de vaisseaux et de défenses $ENnbvais = count($ENvais); $ENnbdef = count($ENdef); //Choix du vaisseau ou de la défense qui va être attaquée $vaisEN_id = rand(1,$ENnbvais+$ENnbdef); //Si l'unité attaquée est un vaisseau if ($vaisEN_id <= $ENnbvais) { $vaisEN_id--; //Définition des paramètres du vaisseau attaqué $vaisEN_type = $ENvais[$vaisEN_id] - 1; $vaisEN_pv = $ENvais_pv[$vaisEN_id]; $vaisEN_bc = $ENvais_bc[$vaisEN_id]; //Si le vaisseau n'a plus de PV, on en attaque un autre if ($vaisEN_pv <= 0) continue; //Recherche du rapide fire pour le vaisseau attaqué $vaisAT_rf = $nomvais_rf[$vaisAT_type][$vaisEN_type]; //Si le vaisseau est détruit if ($vaisEN_pv + $vaisEN_bc <= $vaisAT_at * $vaisAT_rf) { //On efface la trace du vaisseau $ENvais[$vaisEN_id] = ''; $ENvais_pv[$vaisEN_id] = 0; //Recalcul de l'attaque restante du vaisseau $vaisAT_at -= floor(($vaisEN_pv + $vaisEN_bc) / $vaisAT_rf); //On ajoute les débris du vaisseau dans le champ de débris de la planète $deb_met += $nomvais_md[$vaisEN_type]; $deb_cri += $nomvais_cd[$vaisEN_type]; } //Si le vaisseau est endommagé else { //Calcul du nombre de points de vies perdu par le vaisseau $atarr = $vaisEN_bc - ($vaisAT_at * $vaisAT_rf); if ($atarr < 0) $ENvais_pv[$vaisEN_id] += $atarr; $vaisAT_at -= floor(($vaisEN_pv + $vaisEN_bc) / $vaisAT_rf); } } //Si l'unité attaquée est une défense else { //Recherche de l'ID de la défense $defEN_id = $vaisEN_id - $ENnbvais - 1; //Définitions des paramètres de la défense $defEN_type = $ENdef[$defEN_id] - 1; $defEN_pv = $ENdef_pv[$defEN_id]; //Si la défense n'a plus de point de vie, on attaque une autre unité if ($defEN_pv <= 0) continue; $defEN_bc = $defense_bc[$defEN_type]; //Recherche du rapide fire pour la défense attaquée $vaisAT_rf = 1; //$vaisAT_rf = $nomvais_rfD[$vaisAT_type][$defEN_type]; //Si la défense est détruite if ($defEN_pv + $defEN_bc <= $vaisAT_at * $vaisAT_rf) { //On efface la trace de la défense $ENdef[$defEN_id] = ''; $ENdef_pv[$defEN_id] = 0; //Recalcul de l'attaque restante du vaisseau $vaisAT_at -= floor(($defEN_pv + $defEN_bc) / $vaisAT_rf); } //Si la défense est endommagée else { //Calcul du nombre de points de vies perdu par le vaisseau $atarr = $defEN_bc - ($vaisAT_at * $vaisAT_rf); if ($atarr < 0) $ENdef_pv[$defEN_id] += $atarr; $vaisAT_at -= floor(($defEN_pv + $defEN_bc) / $vaisAT_rf); } } } } } } //Récupération du nombre de vaisseaux défenseurs $nb_ENvais = count($ENvais); //Attaque des vaisseaux un par un for ($i = 0; $i<$nb_ENvais ; $i++) { //Définition des paramètres du vaisseau qui va attaquer $vaisEN_id = $i; //ID du vaisseau dans le tableau $vaisEN_type = $ENvais[$vaisEN_id]; //type du vaisseau pour une utilisation inter-tableaux : départ à 0 et non à 1 //Si le vaisseau est détrui, on passe directement au suivant if (empty($vaisEN_type)) continue; $vaisEN_type--; $vaisEN_pv = $ENvais_pv[$vaisEN_id]; //récupération du nombre de PV du vaisseau $vaisEN_bc = $ENvais_bc[$vaisEN_id]; //Récupération du bouclier $vaisEN_at = $nomvais_at[$vaisEN_type]; //On ne fait quelque chose que si le vaisseau à encore des point de vie if ($vaisEN_pv > 0) { /* Formation défense majeur, attaque aléatoire * * Régénération des boucliers 100% * Attaque suivant les proportions vaisseaux/défenses du joueur cible */ //Si le bouclier est endommagé, on le régénére if ($vaisEN_bc < $nomvais_bc[$vaisEN_type]) { $vaisEN_bc = $ENvais_bc[$vaisEN_id] = $nomvais_bc[$vaisEN_type]; } //Le bouclier est intact, on attaque aléatoirement une défense ou un vaisseau else { //Le vaisseau attaque tant qu'il lui reste des points d'attaques disponibles ou tant qu'il reste des vaisseaux et des défenses à attaquer while($vaisEN_at > 0 && resteVaisseau($ATvais)) { //Détermine le nombre de vaisseaux $ATnbvais = count($ATvais); //Choix du vaisseau qui va être attaquée $vaisAT_id = rand(1,$ATnbvais); //Si l'unité attaquée est un vaisseau if ($vaisAT_id <= $ATnbvais) { $vaisAT_id--; //Définition des paramètres du vaisseau attaqué $vaisAT_type = $ATvais[$vaisAT_id] - 1; $vaisAT_pv = $ATvais_pv[$vaisAT_id]; $vaisAT_bc = $ATvais_bc[$vaisAT_id]; //Si le vaisseau n'a plus de PV, on en attaque un autre if ($vaisAT_pv <= 0) continue; //Recherche du rapide fire pour le vaisseau attaqué $vaisEN_rf = $nomvais_rf[$vaisEN_type][$vaisAT_type]; //Si le vaisseau est détruit if ($vaisAT_pv + $vaisAT_bc <= $vaisEN_at * $vaisEN_rf) { //On efface la trace du vaisseau $ATvais[$vaisAT_id] = ''; $ATvais_pv[$vaisAT_id] = 0; //Recalcul de l'attaque restante du vaisseau $vaisEN_at -= floor(($vaisAT_pv + $vaisAT_bc) / $vaisEN_rf); //On ajoute les débris du vaisseau dans le champ de débris de la planète $deb_met += $nomvais_md[$vaisAT_type]; $deb_cri += $nomvais_cd[$vaisAT_type]; } //Si le vaisseau est endommagé else { //Calcul du nombre de points de vies perdu par le vaisseau $atarr = $vaisAT_bc - ($vaisEN_at * $vaisEN_rf); if ($atarr < 0) $ATvais_pv[$vaisAT_id] += $atarr; $vaisEN_at -= floor(($vaisAT_pv + $vaisAT_bc) / $vaisEN_rf); } } } } } } //Récupération du nombre de défenses défenseurs $nb_ENdef = count($ENdef); //Attaque des vaisseaux un par un for ($i = 0; $i<$nb_ENdef ; $i++) { //Définition des paramètres du vaisseau qui va attaquer $defEN_id = $i; //ID du vaisseau dans le tableau $defEN_type = $ENdef[$defEN_id]; //type du vaisseau pour une utilisation inter-tableaux : départ à 0 et non à 1 //Si le vaisseau est détrui, on passe directement au suivant if (empty($defEN_type)) continue; $defEN_type--; $defEN_pv = $ENdef_pv[$defEN_id]; //récupération du nombre de PV du vaisseau $defEN_bc = $ENdef_bc[$defEN_id]; //Récupération du bouclier $defEN_at = $defense_at[$defEN_type]; //On ne fait quelque chose que si le vaisseau à encore des point de vie if ($defEN_pv > 0) { /* Formation défense majeur, attaque aléatoire * * Régénération des boucliers 100% * Attaque suivant les proportions vaisseaux/défenses du joueur cible */ //Si le bouclier est endommagé, on le régénére if ($defEN_bc < $defense_bc[$defEN_type]) { $defEN_bc = $ENdef_bc[$defEN_id] = $defense_bc[$defEN_type]; } //Le bouclier est intact, on attaque aléatoirement une défense ou un vaisseau else { //Le vaisseau attaque tant qu'il lui reste des points d'attaques disponibles ou tant qu'il reste des vaisseaux et des défenses à attaquer while($defEN_at > 0 && restevaisseau($ATvais)) { //Détermine le nombre de vaisseaux $ATnbvais = count($ATvais); //Choix du vaisseau qui va être attaquée $vaisAT_id = rand(1,$ATnbvais); //Si l'unité attaquée est un vaisseau if ($vaisAT_id <= $ATnbvais) { $vaisAT_id--; //Définition des paramètres du vaisseau attaqué $vaisAT_type = $ATvais[$vaisAT_id] - 1; $vaisAT_pv = $ATvais_pv[$vaisAT_id]; $vaisAT_bc = $ATvais_bc[$vaisAT_id]; //Si le vaisseau n'a plus de PV, on en attaque un autre if ($vaisAT_pv <= 0) continue; //Recherche du rapide fire pour le defseau attaqué $defEN_rf = $defense_rf[$defEN_type][$vaisAT_type]; //Si le vaisseau est détruit if ($vaisAT_pv + $vaisAT_bc <= $defEN_at * $defEN_rf) { //On efface la trace du vaisseau $ATvais[$vaisAT_id] = ''; $ATvais_pv[$vaisAT_id] = 0; //Recalcul de l'attaque restante du vaisseau $defEN_at -= floor(($vaisAT_pv + $vaisAT_bc) / $defEN_rf); //On ajoute les débris du vaisseau dans le champ de débris de la planète $deb_met += $nomvais_md[$vaisAT_type]; $deb_cri += $nomvais_cd[$vaisAT_type]; } //Si le vaisseau est endommagé else { //Calcul du nombre de points de vies perdu par le vaisseau $atarr = $vaisAT_bc - ($defEN_at * $defEN_rf); if ($atarr < 0) $ATvais_pv[$vaisAT_id] += $atarr; $defEN_at -= floor(($vaisAT_pv + $vaisAT_bc) / $defEN_rf); } } } } } } } //Récalcul des vaisseaux restants $ATvaisseaux = array_count_values($ATvais); $ATvaisseau_1 = $ATvaisseaux['1']; $ATvaisseau_2 = $ATvaisseaux['2']; $ATvaisseau_3 = $ATvaisseaux['3']; $ATvaisseau_4 = $ATvaisseaux['4']; $ATvaisseau_5 = $ATvaisseaux['5']; $ATvaisseau_6 = $ATvaisseaux['6']; $ATvaisseau_7 = $ATvaisseaux['7']; $ATvaisseau_8 = $ATvaisseaux['8']; $ATvaisseau_9 = $ATvaisseaux['9']; $ATvaisseau_10 = $ATvaisseaux['10']; $ATvaisseau_11 = $ATvaisseaux['11']; $ATvaisseau_12 = $ATvaisseaux['12']; $AT_nbvais = $ATvaisseau_1 + $ATvaisseau_2 + $ATvaisseau_3 + $ATvaisseau_4 + $ATvaisseau_5 + $ATvaisseau_6 + $ATvaisseau_7 + $ATvaisseau_8 + $ATvaisseau_9 + $ATvaisseau_10 + $ATvaisseau_11 + $ATvaisseau_12; $contenu_max = $nomvais_rs[0]*$ATvaisseau_1 + $nomvais_rs[1]*$ATvaisseau_2 + $nomvais_rs[2]*$ATvaisseau_3 + $nomvais_rs[3]*$ATvaisseau_4 + $nomvais_rs[4]*$ATvaisseau_5 + $nomvais_rs[5]*$ATvaisseau_6 + $nomvais_rs[6]*$ATvaisseau_7 + $nomvais_rs[7]*$ATvaisseau_8 + $nomvais_rs[8]*$ATvaisseau_9 + $nomvais_rs[9]*$ATvaisseau_10 + $nomvais_rs[10]*$ATvaisseau_11 + $nomvais_rs[11]*$ATvaisseau_12; $ENvaisseaux = array_count_values($ENvais); $ENvaisseau_1 = $ENvaisseaux['1']; $ENvaisseau_2 = $ENvaisseaux['2']; $ENvaisseau_3 = $ENvaisseaux['3']; $ENvaisseau_4 = $ENvaisseaux['4']; $ENvaisseau_5 = $ENvaisseaux['5']; $ENvaisseau_6 = $ENvaisseaux['6']; $ENvaisseau_7 = $ENvaisseaux['7']; $ENvaisseau_8 = $ENvaisseaux['8']; $ENvaisseau_9 = $ENvaisseaux['9']; $ENvaisseau_10 = $ENvaisseaux['10']; $ENvaisseau_11 = $ENvaisseaux['11']; $ENvaisseau_12 = $ENvaisseaux['12']; $ENdefenses = array_count_values($ENdef); $ENdefense_1 = $ENdefenses['1']; $ENdefense_2 = $ENdefenses['2']; $ENdefense_3 = $ENdefenses['3']; $ENdefense_4 = $ENdefenses['4']; $ENdefense_5 = $ENdefenses['5']; if (!resteVaisseau($ATvais)) { $win = false; mysql_query("DELETE FROM `flottes` WHERE `id` = '$id_flotte'") or die ("erreur sql ".mysql_error()); } else { $win = true; if ($contenu_max-$resultat['contenu_metal']-$resultat['contenu_cristal']-$resultat['contenu_hydrogene'] > 0) { $pillage = pillage($resultatd['metal'], $resultatd['cristal'], $resultatd['hydrogene'], $contenu_max-$resultat['contenu_metal']-$resultat['contenu_cristal']-$resultat['contenu_hydrogene']); $Cmetal = $resultat['contenu_metal'] + $pillage[0]; $Ccristal = $resultat['contenu_cristal'] + $pillage[1]; $Chydrogene = $resultat['contenu_hydrogene'] + $pillage[2]; } else { $Cmetal = 0; $Ccristal = 0; $Chydrogene = 0; } mysql_query("UPDATE `flottes` SET `effectue` = '1', `contenu_metal` = '$Cmetal', `contenu_cristal` = '$Ccristal', `contenu_hydrogene` = '$Chydrogene', `nb_vais` = '$AT_nbvais', `vaisseau_1` = '$ATvaisseau_1', `vaisseau_2` = '$ATvaisseau_2', `vaisseau_3` = '$ATvaisseau_3', `vaisseau_4` = '$ATvaisseau_4', `vaisseau_5` = '$ATvaisseau_5', `vaisseau_6` = '$ATvaisseau_6', `vaisseau_7` = '$ATvaisseau_7', `vaisseau_8` = '$ATvaisseau_8', `vaisseau_9` = '$ATvaisseau_9', `vaisseau_10` = '$ATvaisseau_10', `vaisseau_11` = '$ATvaisseau_11', `vaisseau_12` = '$ATvaisseau_12' WHERE `id` = '$id_flotte'") or die ("erreur sql ".mysql_error()); //Mise à jour de la quantité de ressources sur la planète pillée $planMetal = $resultatd['metal'] - $pillage[0]; $planCristal = $resultatd['cristal'] - $pillage[1]; $planHydrogene = $resultatd['hydrogene'] - $pillage[2]; mysql_query("UPDATE `planete` SET `metal` = '$planMetal', `cristal` = '$planCristal', `hydrogene` = '$planHydrogene' WHERE `galaxie` = '$end_galaxie' AND `ss` = '$end_ss' AND `position` = '$end_position'") or die ("erreur sql ".mysql_error()); } mysql_query("UPDATE `planete` SET `debris_met` = '$deb_met', `debris_cri` = '$deb_cri', `vaisseau_1` = '$ENvaisseau_1', `vaisseau_2` = '$ENvaisseau_2', `vaisseau_3` = '$ENvaisseau_3', `vaisseau_4` = '$ENvaisseau_4', `vaisseau_5` = '$ENvaisseau_5', `vaisseau_6` = '$ENvaisseau_6', `vaisseau_7` = '$ENvaisseau_7', `vaisseau_8` = '$ENvaisseau_8', `vaisseau_9` = '$ENvaisseau_9', `vaisseau_10` = '$ENvaisseau_10', `vaisseau_11` = '$ENvaisseau_11', `vaisseau_12` = '$ENvaisseau_12', `def_1` = '$ENdefense_1', `def_2` = '$ENdefense_2', `def_3` = '$ENdefense_3', `def_4` = '$ENdefense_4', `def_5` = '$ENdefense_5' WHERE `galaxie` = '$end_galaxie' AND `ss` = '$end_ss' AND `position` = '$end_position'") or die ("erreur sql ".mysql_error()); //Envoie d'un mail à l'attaquant if ($win) $message = 'L\'attaque que nous avons lancé contre la planète '.$end_galaxie.':'.$end_ss.':'.$end_position.' s\'est terminée avec succès puisque nous avons gagné.

Nous rapportons dans nos cales : '.$pillage[0].' de '.$ressourc[0].', '.$pillage[1].' de '.$ressourc[1].' et '.$pillage[2].' de '.$ressourc[2].'.'; else $message = 'L\'attaque que nous avons lancé contre la planète '.$end_galaxie.':'.$end_ss.':'.$end_position.' s\'est terminée par une défaite.

Un champ de débris composé de '.$deb_met.' de '.$ressourc[0].' et '.$deb_cri.' de '.$ressourc[1].' s\'est formé à la suite de cette bataille.'; $message = mysql_real_escape_string($message); $pseudo = trouvNom($resultat['id_user']); $temps = $resultat['start_time'] + $resultat['end_time']; mysql_query("INSERT INTO mail VALUES('', '1', '$pseudo', '', 'Attaque', '$message', '$temps')") or die ("erreur sql ".mysql_error()); //Envoie d'un mail au défenseur if ($win) $message = 'Nous venons de subir une attaque sur la planète '.$end_galaxie.':'.$end_ss.':'.$end_position.'. Nos défenses n\'ont pas suffi à arrêter l\'ennemi qui est reparti avec près de '.$pillage[0].' de '.$ressourc[0].', '.$pillage[1].' de '.$ressourc[1].' et '.$pillage[2].' de '.$ressourc[2].'.'; else $message = 'Nous venons de subir une attaque sur la planète '.$end_galaxie.':'.$end_ss.':'.$end_position.'. Nos défenses ont réussi à arrêter l\'ennemi avant qu\'il ne reparte avec nos ressources.'; $message = mysql_real_escape_string($message); $pseudo = trouvNom($resultatd['id_user']); mysql_query("INSERT INTO mail VALUES('', '1', '$pseudo', '', 'Attaque', '$message', '$temps')") or die ("erreur sql ".mysql_error()); } //Mission Transporter elseif ($mission == 2) { $reqT = mysql_query("SELECT metal,cristal,hydrogene FROM `planete` WHERE `galaxie` = '$end_galaxie' AND `ss` = '$end_ss' AND `position` = '$end_position'") or die ("erreur sql ".mysql_error()); $resultatT = mysql_fetch_array($reqT); $Cmetal = $resultat['contenu_metal'] + $resultatT['metal']; $Ccristal = $resultat['contenu_cristal'] + $resultatT['cristal']; $Chydrogene = $resultat['contenu_hydrogene'] + $resultatT['hydrogene']; mysql_query("UPDATE `planete` SET `metal` = '$Cmetal', `cristal` = '$Ccristal', `hydrogene` = '$Chydrogene' WHERE `galaxie` = '$end_galaxie' AND `ss` = '$end_ss' AND `position` = '$end_position'") or die ("erreur sql ".mysql_error()); mysql_query("UPDATE `flottes` SET `effectue` = '1', `contenu_metal` = '0', `contenu_cristal` = '0', `contenu_hydrogene` = '0' WHERE `id` = '$id_flotte'") or die ("erreur sql ".mysql_error()); $message = 'Vos vaisseaux ont déposés '.$resultat['contenu_metal'].' de métal, '.$resultat['contenu_cristal'].' de cristal et '.$resultat['contenu_hydrogene'].' d\'hydrogène aux coordonnées '.$end_galaxie.':'.$end_ss.':'.$end_position; mysql_query("INSERT INTO mail VALUES('', '1', '$pseudo', '', 'Transport', '$message', '$temps')"); } //Mission Coloniser elseif ($mission == 3) { $reqT = mysql_query("SELECT * FROM `planete` WHERE `galaxie` = '$end_galaxie' AND `ss` = '$end_ss' AND `position` = '$end_position'") or die ("erreur sql ".mysql_error()); if (!mysql_num_rows($reqT) > 0) { $time = time(); $temps = time(); $cases = mt_rand(125,222); $image = mt_rand(1,15); $reqIsol = mysql_query("SELECT * FROM planete WHERE id_user='$id'"); if (mysql_num_rows($reqIsol) >= 11) $isolement = time() + rand(9000,170000); else $isolement = 0; mysql_query("INSERT INTO planete (`id_user`, `isolement`, `nom_planete`, `galaxie`, `ss`, `position`, `image`, `cases`, `timestamp`, `metal`, `cristal`) VALUES ('$id', '$isolement', 'Planète colonisée', '$end_galaxie', '$end_ss', '$end_position', '$image', '$cases', '$time', '1000', '700')") or die ("erreur sql ".mysql_error()); mysql_query("UPDATE `flottes` SET `effectue` = '1', `vaisseau_3` = '0' WHERE `id` = '$id_flotte'") or die ("erreur sql ".mysql_error()); $message = 'Votre vaisseau a atteint la planète ['.$end_galaxie.':'.$end_ss.':'.$end_position.'] et commence la colonisation'; $pseudo = trouvNom($resultat['id_user']); mysql_query("INSERT INTO mail VALUES('', '1', '$pseudo', '', 'Colonisation', '$message', '$temps')") or die ("erreur sql ".mysql_error()); $reqP = mysql_query("SELECT * FROM `planete` WHERE `id_user` = '$id'") or die ("erreur sql ".mysql_error()); $reqPM = mysql_query("SELECT `planeteMere` FROM `user` WHERE `id` = '$id'") or die ("erreur sql ".mysql_error()); $resultatPM = mysql_fetch_array($reqPM); $c=0; for ($m=0 ; $m 0) { $resultatT = mysql_fetch_array($reqT); $resultat['contenu_max'] -= vais_conso($resultat['end_time'],count($resultat['nbvais'])) + $resultat['contenu_metal'] + $resultat['contenu_cristal'] + $resultat['contenu_hydrogene']; $debris_met = $resultatT['debris_met']; $debris_cri = $resultatT['debris_cri']; if ($debris_met+$debris_cri > $resultat['contenu_max']) { $a=pow($capacite/2); $b=pow($capacite/2); if ($a > $debris_met && $b > $debris_cri) { $a = $debris_met; $b = $debris_cri; } else if ($a > $debris_met) { $a = $debris_met; $b = ($capacite - $a); } else if ($b > $debris_cri) { $b = $debris_cri; $a = ($capacite - $b); } } else { $a = $debris_met; $b = $debris_cri; } $Cmetal += $a + $resultat['contenu_metal']; $Ccristal += $b + $resultat['contenu_cristal']; $debris_met -= $a; $debris_cri -= $b; mysql_query("UPDATE `flottes` SET `effectue` = '1', `contenu_metal` = '$Cmetal', `contenu_cristal` = '$Ccristal' WHERE `id` = '$id_flotte'") or die ("erreur sql ".mysql_error()); mysql_query("UPDATE `planete` SET `debris_met` = '$debris_met', `debris_cri` = '$debris_cri' WHERE `galaxie` = '$end_galaxie' AND `ss` = '$end_ss' AND `position` = '$end_position'") or die ("erreur sql ".mysql_error()); $message = 'Vos vaisseaux récoltent '.$a.' de métal et '.$b.' de cristal aux coordonnées '.$end_galaxie.':'.$end_ss.':'.$end_position; $pseudo = trouvNom($resultat['id_user']); mysql_query("INSERT INTO mail VALUES('', '1', '$pseudo', '', 'Transport', '$message', '$temps')") or die ("erreur sql ".mysql_error()); } } } if (time() >= $resultat['start_time'] + $resultat['end_time'] * 2 && !empty($resultat['end_time']) && $resultat['mission'] != 0) { $start_galaxie = $resultat['start_galaxie']; $start_ss = $resultat['start_ss']; $start_position = $resultat['start_position']; $id_flotte = $resultat['id']; $reqP = mysql_query("SELECT * FROM planete WHERE `id_user` = '$id' AND `galaxie` = '$start_galaxie' AND `ss` = '$start_ss' AND `position` = '$start_position'") or die ("erreur sql ".mysql_error()); $resultatP = mysql_fetch_array($reqP); $metal = $resultat['contenu_metal'] + $resultatP['metal']; $cristal = $resultat['contenu_cristal'] + $resultatP['cristal']; $hydrogene = $resultat['contenu_hydrogene'] + $resultatP['hydrogene']; for($i = 1; $i <= 12; $i++) { ${'Pvaisseaux_'.$i} = $resultatP['vaisseau_'.$i] + $resultat['vaisseau_'.$i]; mysql_query("UPDATE `planete` SET `vaisseau_$i` = '${'Pvaisseaux_'.$i}' WHERE `id_user` = '$id' AND `galaxie` = '$start_galaxie' AND `ss` = '$start_ss' AND `position` = '$start_position'"); } mysql_query("UPDATE `planete` SET `metal` = '$metal', `cristal` = '$cristal', `hydrogene` = '$hydrogene' WHERE `id_user` = '$id' AND `galaxie` = '$start_galaxie' AND `ss` = '$start_ss' AND `position` = '$start_position'"); mysql_query("DELETE FROM `flottes` WHERE `id_user` = '$id' AND `id` = '$id_flotte'"); } } mysql_close(); ?>