Version 1.5

This commit is contained in:
nemunaire 2008-11-30 12:00:00 +01:00
commit a66ed9797b
157 changed files with 29787 additions and 3531 deletions

View file

@ -3,8 +3,7 @@ if(!defined('INDEX')) { header('Location: ../'); exit; }
$titre = 'Flottes';
if (!empty($_POST['cds']) && !empty($_POST['nomflotte']) && !empty($_POST['amas']) && !empty($_POST['ss']) && !empty($_POST['pos']) && !empty($_POST['vitesse']) && !empty($_POST['mission']) && isset($_POST['metal']) && isset($_POST['cristal']) && isset($_POST['hydrogene'])) {
$table = $config['db_prefix'].'flottes';
$resultat = $chapeau->query("SELECT * FROM `$table` WHERE `id_user` = '$id_user'");
$resultat = $chapeau->query("SELECT * FROM `$table_flottes` WHERE `id_user` = '$id_user'");
$nbr = $chapeau->num_rows;
$end_galaxie = floor($_POST['amas']);
@ -23,7 +22,7 @@ if (!empty($_POST['cds']) && !empty($_POST['nomflotte']) && !empty($_POST['amas'
$chapeau->escape($EBcristal);
$EBhydrogene = floor($_POST['hydrogene']);
$chapeau->escape($EBhydrogene);
$vitesse = floor($_POST['vitesse']);
$vitesse = floor($_POST['vitesse'])/100;
$chapeau->escape($vitesse);
@ -52,7 +51,7 @@ if (!empty($_POST['cds']) && !empty($_POST['nomflotte']) && !empty($_POST['amas'
exit;
}
//Vérification que le nombre de slots ne soit pas dépassé
elseif ($nbr + 1 > $queryUser['informatique']) {
elseif ($nbr > $queryUser['informatique']) {
$template->assign('message','Vous n\'avez pas assez de slots disponibles.');
$template->assign('script','<script type="text/javascript">setTimeout(\'document.location.href="?p=flotte";\', 2500);</script>');
$template->assign('couleur','red');
@ -116,14 +115,12 @@ if (!empty($_POST['cds']) && !empty($_POST['nomflotte']) && !empty($_POST['amas'
exit;
}
else {
$table = $config['db_prefix'].'planete';
$resultat = $chapeau->unique_query("SELECT * FROM `$table` WHERE `galaxie` = '$end_galaxie' AND `ss` = '$end_ss' AND `position` = '$end_pos';");
$resultat = $chapeau->unique_query("SELECT * FROM `$table_planete` WHERE `galaxie` = '$end_galaxie' AND `ss` = '$end_ss' AND `position` = '$end_pos';");
//Si la mission est d'attaquer, on vérifie que le joueur cible ne soit pas ne mode vacances
if ($mission == 1) {
//Récupération de l'ID du joueur cible
$rech_user = $resultat['id_user'];
$table = $config['db_prefix'].'user';
$resultatu = $chapeau->unique_query("SELECT * FROM `$table` WHERE `id` = '$rech_user';");
$resultatu = $chapeau->unique_query("SELECT * FROM `$table_user` WHERE `id` = '$rech_user';");
if ($resultatu['mv'] != 0) {
$template->assign('message','Le joueur que vous tentez d\'attaquer est actuellement en mode vacances, vous ne pouvez donc pas l\'attaquer avant son retour de vacances.');
$template->assign('script','<script type="text/javascript">setTimeout(\'document.location.href="?p=flotte";\', 3000);</script>');
@ -224,16 +221,13 @@ if (!empty($_POST['cds']) && !empty($_POST['nomflotte']) && !empty($_POST['amas'
$start_ss = $queryPlanete['ss'];
$start_pos = $queryPlanete['position'];
$vitesse = floor($_POST['vitesse'])/100;
$chapeau->escape($vitesse);
$end_time = vais_tempsDeplacement($start_galaxie, $start_ss, $start_pos, $end_galaxie, $end_ss, $end_pos, $sess->values['flvitesse'], $vitesse, $sess->values['flpreparation'], $sess->values['flchauffe']);
if ($end_time <= 0) {
$end_time = 454;
}
//On vérifie qu'il y a assez de place dans les cales des vaisseaux avant l'envoie
$conso = vais_conso($end_time, $sess->values['flnbvais'])*$vitesse*10;
$conso = vais_conso($end_time, $nbVais)*$vitesse/45*2;
$contenu_metal = $_POST['metal']; $chapeau->escape($contenu_metal); $plan_metal = $queryPlanete['metal'] - $contenu_metal;
$contenu_cristal = $_POST['cristal']; $chapeau->escape($contenu_cristal); $plan_cristal = $queryPlanete['cristal'] - $contenu_cristal;
$contenu_hydrogene = $_POST['hydrogene']; $chapeau->escape($contenu_hydrogene); $plan_hydrogene = $queryPlanete['hydrogene'] - $contenu_hydrogene - $conso;
@ -245,6 +239,13 @@ if (!empty($_POST['cds']) && !empty($_POST['nomflotte']) && !empty($_POST['amas'
$template->display('game/erreur.tpl');
exit;
}
elseif ($plan_metal < 0 || $plan_cristal < 0 || $plan_hydrogene < 0) {
$template->assign('message','Vous n\'avez pas assez de ressources sur cette planète pour envoyer cette flotte.');
$template->assign('script','<script type="text/javascript">setTimeout(\'document.location.href="?p=flotte";\', 3500);</script>');
$template->assign('couleur','red');
$template->display('game/erreur.tpl');
exit;
}
else {
if ($mission == 1) {
$tactiqueAT = $_POST['tactique'];
@ -257,14 +258,14 @@ if (!empty($_POST['cds']) && !empty($_POST['nomflotte']) && !empty($_POST['amas'
$tactiqueEN = 0;
}
$table = $config['db_prefix'].'flottes';
$chapeau->query("INSERT INTO `$table` (`id_user`, `mission`, `start_time`, `start_galaxie`, `start_ss`, `start_position`, `end_time`, `end_galaxie`, `end_ss`, `end_position`, `vitesse`, `contenu_metal`, `contenu_cristal`, `contenu_hydrogene`, `contenu_max`, `nb_vais`, $reqb`tactiqueAT`, `tactiqueEN`, `nom`) VALUES ('$id_user', '$mission', '$start_time', '$start_galaxie', '$start_ss', '$start_pos', '$end_time', '$end_galaxie', '$end_ss', '$end_pos', '$vitesse', '$contenu_metal', '$contenu_cristal', '$contenu_hydrogene', '$contenu_max', '$nbVais', $req'$tactiqueAT', '$tactiqueEN', '$nom');");
$table = $config['db_prefix'].'planete';
$chapeau->query("UPDATE `$table` SET $reqPlan, `metal` = '$plan_metal', `cristal` = '$plan_cristal', `hydrogene` = '$plan_hydrogene' WHERE `id` = '$idPlan' LIMIT 1 ;");
$chapeau->query("INSERT INTO `$table_flottes` (`id_user`, `mission`, `start_time`, `start_galaxie`, `start_ss`, `start_position`, `end_time`, `end_galaxie`, `end_ss`, `end_position`, `vitesse`, `contenu_metal`, `contenu_cristal`, `contenu_hydrogene`, `contenu_max`, `nb_vais`, $reqb`tactiqueAT`, `tactiqueEN`, `nom`) VALUES ('$id_user', '$mission', '$start_time', '$start_galaxie', '$start_ss', '$start_pos', '$end_time', '$end_galaxie', '$end_ss', '$end_pos', '$vitesse', '$contenu_metal', '$contenu_cristal', '$contenu_hydrogene', '$contenu_max', '$nbVais', $req'$tactiqueAT', '$tactiqueEN', '$nom');");
$chapeau->query("UPDATE `$table_planete` SET $reqPlan, `metal` = '$plan_metal', `cristal` = '$plan_cristal', `hydrogene` = '$plan_hydrogene' WHERE `id` = '$idPlan' LIMIT 1 ;");
unset($sess->values['vais']);
$sess->put();
file_log('Envoie d\'une flotte');
$template->assign('message','Votre flotte a été envoyée avec succès.');
$template->assign('couleur','green');
$template->assign('script','<script type="text/javascript">setTimeout(\'document.location.href="?p=flotte";\', 4000);</script>');
@ -346,10 +347,34 @@ elseif (!empty($_POST['v1']) || !empty($_POST['v2']) || !empty($_POST['v3']) ||
}
elseif (!empty($_GET['n'])) {
$idN = mysql_real_escape_string(ceil($_GET['n']));
$idN = ceil($_GET['n']);
$chapeau->escape($idN);
$resultat = $chapeau->unique_query("SELECT * FROM `$table_flottes` WHERE `id_user` = '$id_user' AND `id` = '$idN'");
if (isset($_GET['a']) && isset($sess->values['ret_fleet']) && $_GET['a'] == $sess->values['ret_fleet']) {
//Calcul du temps passé depuis le lancement de la flotte
$tpsDD = time() - $resultat['start_time'];
if ($resultat['mission'] == '6') {
$template->assign('message','Votre flotte est déjà en train de revenir !');
$template->assign('script','<script type="text/javascript">setTimeout(\'document.location.href="?p=flotte&n='.$idN.'";\', 1500);</script>');
$template->assign('couleur','red');
$template->display('game/erreur.tpl');
exit;
}
elseif ($resultat['end_time'] > $tpsDD) {
$chapeau->query("UPDATE `$table_flottes` SET `mission` = '6', `end_time` = '$tpsDD', `end_galaxie` = `start_galaxie`, `end_ss` = `start_ss`, `end_position` = `start_position` WHERE `id_user` = '$id_user' AND `id` = '$idN';");
header('Location: ?p=flotte&n='.$idN);
exit;
}
else {
$template->assign('message','Impossible d\'annuler la mission, elle a déjà commencée.');
$template->assign('script','<script type="text/javascript">setTimeout(\'document.location.href="?p=flotte&n='.$idN.'";\', 1500);</script>');
$template->assign('couleur','red');
$template->display('game/erreur.tpl');
exit;
}
}
$page = 'flotten';
$table = $config['db_prefix'].'flottes';
$resultat = $chapeau->unique_query("SELECT * FROM `$table` WHERE `id_user` = '$id_user' AND `id` = '$idN'");
if ($chapeau->num_rows <= 0) {
$template->assign('message','Impossible de trouver cette flotte !');
$template->assign('script','<script type="text/javascript">setTimeout(\'document.location.href="?p=flotte";\', 1500);</script>');
@ -359,10 +384,24 @@ elseif (!empty($_GET['n'])) {
}
else {
if (!empty($_POST['nomflotte'])) {
$nom = mysql_real_escape_string(htmlentities($_POST['nomflotte']));
$chapeau->unique_query("UPDATE `$table` SET `nom` = '$nom' WHERE `id` = '$idN' LIMIT 1 ;");
$nom = $_POST['nomflotte'];
$chapeau->escape($nom);
$chapeau->unique_query("UPDATE `$table_flottes` SET `nom` = '$nom' WHERE `id` = '$idN' LIMIT 1;");
$resultat['nom'] = $nom;
}
$resultat['contenu_metalF'] = separerNombres($resultat['contenu_metal']);
$resultat['contenu_cristalF'] = separerNombres($resultat['contenu_cristal']);
$resultat['contenu_hydrogeneF'] = separerNombres($resultat['contenu_hydrogene']);
$resultat['contenu_maxF'] = separerNombres($resultat['contenu_max']);
$resultat['missionF'] = txtmission($resultat['mission']);
$resultat['tactiqueAtDef'] = txtTactique($queryUser['combatAT_tactique']);
$resultat['tactiqueF'] = txtTactique($resultat['tactiqueAT']);
$resultat['end_timeT'] = $resultat['start_time'] + $resultat['end_time'];
$sess->values['ret_fleet'] = sha1('HB.fleet_'.rand().'☺ß☻');
$sess->put();
$template->assign('ret_fleet', $sess->values['ret_fleet']);
$template->assign('flotte', $resultat);
$template->assign('nomvais', $nomvaisa);
$template->assign('n', $idN);
@ -370,8 +409,7 @@ elseif (!empty($_GET['n'])) {
}
else {
$page = 'flotte1';
$table = $config['db_prefix'].'flottes';
$resultat = $chapeau->query("SELECT * FROM `$table` WHERE `id_user` = '$id_user'");
$resultat = $chapeau->query("SELECT * FROM `$table_flottes` WHERE `id_user` = '$id_user'");
$nbr = $chapeau->num_rows;
$TEMP_flottesEC = array();
for ($i=0 ; $i<$nbr ; $i++) {
@ -409,4 +447,4 @@ else {
$template->assign('nbflotte', $nbr);
$template->assign('nbflottemax', $trez);
}
?>
?>