forked from halo-battle/game
Version 1.10c
This commit is contained in:
parent
4c9814a99c
commit
2a066a7498
148 changed files with 2174 additions and 134960 deletions
|
|
@ -10,6 +10,8 @@ $titre = 'Batiments';
|
|||
if (isset($_GET['c'])) {
|
||||
//Vérification que la planète ne soit pas pleine
|
||||
if ($planete->casesRest <= 0) erreur('Vous n\'avez plus de place sur votre planète.', "red", "?p=batiments", 3500);
|
||||
//On vérifie qu'il n'y ait pas de technologie en cours de recherche si l'on veut améliorer le centre de recherche
|
||||
if($_GET['c'] == 6 && !empty($planete->file_tech[1])) erreur('Une technologie est en cours de recherche dans votre laboratoire, vous ne pouvez pas faire de travaux !');
|
||||
|
||||
//Récupération des erreurs de la mise en file d'attente pour traitement
|
||||
$construction = $planete->file_addObjet("batiments", intval(gpc('c')));
|
||||
|
|
@ -23,6 +25,20 @@ $titre = 'Batiments';
|
|||
default: header('Location: ?p=batiments'); exit;
|
||||
}
|
||||
}
|
||||
//Lancement d'une déconstruction
|
||||
if (isset($_GET['d'])) {
|
||||
//Récupération des erreurs de la mise en file d'attente pour traitement
|
||||
$construction = $planete->file_addObjet("batiments", intval(gpc('d')), -1);
|
||||
|
||||
switch($construction){
|
||||
case 1: erreur('Vous n\'avez pas les bâtiments et/ou technologies nécessaires pour construire ce bâtiment.'); break;
|
||||
case 2: erreur('Ce bâtiment est déjà en file d\'attente !'); break;
|
||||
case 3: erreur('Vous n\'avez pas les ressources nécessaire pour construire ce bâtiment !'); break;
|
||||
case 4: erreur('File d\'attente pleine !'); break;
|
||||
case 5: erreur('Le nombre d\'objets est négatif !'); break;
|
||||
default: header('Location: ?p=batiments'); exit;
|
||||
}
|
||||
}
|
||||
//Annulation d'une nouvelle construction
|
||||
if (isset($_GET['a']) && isset($batiment[$_GET['a']])) {
|
||||
$i = intval(gpc('a'));
|
||||
|
|
@ -46,7 +62,8 @@ $titre = 'Batiments';
|
|||
foreach($planete->batiments as $i => $PLbatiment) {
|
||||
$tr = 0; $a = 0; $b = 0; $c = 0; $sec = 0; $enFile = false;
|
||||
if ($PLbatiment > 0) $niveau = $PLbatiment; else $niveau = 0;
|
||||
$n = $PLbatiment + 1; eval($batimentCALC[$i][0]); eval($batimentCALC[$i][1]); eval($batimentCALC[$i][2]); eval($batimentCALC[$i][3]);
|
||||
$n = $PLbatiment + 1;
|
||||
eval($batimentCALC[$i][0]); eval($batimentCALC[$i][1]); eval($batimentCALC[$i][2]); eval($batimentCALC[$i][3]);
|
||||
if ($planete->file_exist($i, 'file_bat')) $enFile = true; else $enFile = false;
|
||||
|
||||
//On applique les bonus de test
|
||||
|
|
@ -88,6 +105,7 @@ $titre = 'Batiments';
|
|||
|
||||
$n = $planete->batiments[$bout[0]] + 1;
|
||||
eval($batimentCALC[$bout[0]][3]);
|
||||
if ($bout[1] < 0) $sec *= 0.6;
|
||||
if ($key == 1) $file[] = array($bout[0], $bout[1], ceil($sec/VITESSE - (time() - $planete->file_bat[0])), $batiment[$bout[0]]);
|
||||
else $file[] = array($bout[0], $bout[1], ceil($sec/VITESSE), $batiment[$bout[0]]);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,6 +5,8 @@ include_once(_FCORE."../game/Class/class.bourse.php");
|
|||
|
||||
define('MAX_ACTION_PAR_JOUR', 5);
|
||||
|
||||
erreur('Arrêtez de tester la bourse, on attend le nouveau script !');
|
||||
|
||||
/*if (date('G') < 7 && date('G') >= 0 && date('w') != 0 && date('w') != 6 && $queryUser['auth_level'] < 3)
|
||||
erreur('La bourse est actuellement fermée !<br />Réouverture à 7h00', "orange");
|
||||
else*/if ($queryPlanetes[0]['id'] != $planete->id)
|
||||
|
|
|
|||
|
|
@ -65,14 +65,10 @@ for ($i = 1; $i <= MAX_PLANETE; $i++) {
|
|||
$bdd->escape($s);
|
||||
$resultat = $bdd->query("SELECT id FROM $table_planete WHERE galaxie = $g AND ss = $s AND position = $i;");
|
||||
if($resultat) {
|
||||
$d = $bdd->unique_query("SELECT P.nom_planete, P.debris_met, P.debris_cri, U.pseudo, U.race, U.id_alliance, A.tag FROM $table_planete P INNER JOIN $table_user U ON U.id = P.id_user LEFT OUTER JOIN $table_alliances A ON A.id = U.id_alliance WHERE P.galaxie = $g AND P.ss = $s AND P.position = $i;");
|
||||
|
||||
if ($d['race'] == 'covenant') $ra = '(c)';
|
||||
elseif ($auth_level >= 6 && md5($d['race']) == '34c19b21bd4a3dda389e767d32fe9779') $ra = '(f)';
|
||||
else $ra = '(h)';
|
||||
$d = $bdd->unique_query("SELECT P.nom_planete, P.image, P.debris_met, P.debris_cri, U.pseudo, U.race, U.politique, U.id_alliance, A.tag FROM $table_planete P INNER JOIN $table_user U ON U.id = P.id_user LEFT OUTER JOIN $table_alliances A ON A.id = U.id_alliance WHERE P.galaxie = $g AND P.ss = $s AND P.position = $i;");
|
||||
$bdd->deconnexion();
|
||||
|
||||
$TEMP_carte[] = array($i, $d['nom_planete'], $d['debris_met'], $d['debris_cri'], $ra, $d['pseudo'], '<a href="?p=envoyer&d='.$d['pseudo'].'" class="msg"><span>Message</span></a>', $d['tag']);//, $eA['tag']);
|
||||
$TEMP_carte[] = array($i, $d['nom_planete'], $d['debris_met'], $d['debris_cri'], $d['race'], $d['pseudo'], $d['tag'], $d['image'], $d['politique']);
|
||||
}
|
||||
else {
|
||||
$bdd->deconnexion();
|
||||
|
|
|
|||
|
|
@ -95,7 +95,7 @@ foreach ($planete->file_vais as $key => $bout){
|
|||
$n = $planete->vaisseaux[$bout[0]] + 1;
|
||||
eval($nomvaisnCALC[$bout[0]][3]);
|
||||
if ($key == 1) $file[] = array($bout[0], $bout[1], ceil($sec/VITESSE - (time() - $planete->file_vais[0])) + ceil($sec/VITESSE) * ($bout[1]-1), $nomvaisn[$bout[0]], ceil($sec/VITESSE - (time() - $planete->file_vais[0])));
|
||||
else $file[] = array($bout[0], $bout[1], ceil($sec/VITESSE), $nomvaisn[$bout[0]]);
|
||||
else $file[] = array($bout[0], $bout[1], ceil($sec/VITESSE) * $bout[1], $nomvaisn[$bout[0]]);
|
||||
}
|
||||
$template->assign('file', $file);
|
||||
?>
|
||||
|
|
@ -94,7 +94,7 @@ foreach ($planete->file_ter as $key => $bout){
|
|||
$n = $planete->terrestres[$bout[0]] + 1;
|
||||
eval($nomterrnCALC[$bout[0]][3]);
|
||||
if ($key == 1) $file[] = array($bout[0], $bout[1], ceil($sec/VITESSE - (time() - $planete->file_ter[0])) + ceil($sec/VITESSE) * ($bout[1]-1), $nomterrn[$bout[0]], ceil($sec/VITESSE - (time() - $planete->file_ter[0])));
|
||||
else $file[] = array($bout[0], $bout[1], ceil($sec/VITESSE), $nomterrn[$bout[0]]);
|
||||
else $file[] = array($bout[0], $bout[1], ceil($sec/VITESSE) * $bout[1], $nomterrn[$bout[0]]);
|
||||
}
|
||||
$template->assign('file', $file);
|
||||
?>
|
||||
|
|
@ -64,10 +64,13 @@ if ($TypeSearch) {
|
|||
$j = ($pageClassement-1)*$nbppage;
|
||||
|
||||
$TEMP_classement = array();
|
||||
foreach($data as $lign){
|
||||
$j++;
|
||||
$TEMP_classement[] = array($j, $lign['tag'], $lign['nbr_membres'], separerNombres($lign[$export]),0);
|
||||
if ($data) {
|
||||
foreach($data as $lign){
|
||||
$j++;
|
||||
$TEMP_classement[] = array($j, $lign['tag'], $lign['nbr_membres'], separerNombres($lign[$export]),0);
|
||||
}
|
||||
}
|
||||
else erreur('Classement non disponible.');
|
||||
|
||||
$template->assign('places', $TEMP_classement);
|
||||
}
|
||||
|
|
@ -80,10 +83,13 @@ else {
|
|||
$j = ($pageClassement-1)*$nbppage;
|
||||
|
||||
$TEMP_classement = array();
|
||||
foreach($data as $lign){
|
||||
$j++;
|
||||
$TEMP_classement[] = array($j, $lign['pseudo'], $lign['race'], $lign['tag'], $lign['nom'], separerNombres($lign[$export]));
|
||||
if ($data) {
|
||||
foreach($data as $lign){
|
||||
$j++;
|
||||
$TEMP_classement[] = array($j, $lign['pseudo'], $lign['race'], $lign['tag'], $lign['nom'], separerNombres($lign[$export]));
|
||||
}
|
||||
}
|
||||
else erreur('Classement non disponible.');
|
||||
|
||||
$template->assign('places', $TEMP_classement);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -93,8 +93,8 @@ foreach ($planete->file_ter as $key => $bout){
|
|||
if ($key == 0) continue;
|
||||
$n = $planete->terrestres[$bout[0]] + 1;
|
||||
eval($nomterrnCALC[$bout[0]][3]);
|
||||
if ($i == 1) $file[] = array($bout[0], $bout[1], ceil($sec/VITESSE - (time() - $planete->file_ter[0])) + ceil($sec/VITESSE) * ($bout[1]-1), $nomterrn[$bout[0]], ceil($sec/VITESSE - (time() - $planete->file_ter[0])));
|
||||
else $file[] = array($bout[0], $bout[1], ceil($sec/VITESSE), $nomterrn[$bout[0]]);
|
||||
if ($key == 1) $file[] = array($bout[0], $bout[1], ceil($sec/VITESSE - (time() - $planete->file_ter[0])) + ceil($sec/VITESSE) * ($bout[1]-1), $nomterrn[$bout[0]], ceil($sec/VITESSE - (time() - $planete->file_ter[0])));
|
||||
else $file[] = array($bout[0], $bout[1], ceil($sec/VITESSE) * $bout[1], $nomterrn[$bout[0]]);
|
||||
}
|
||||
$template->assign('file', $file);
|
||||
?>
|
||||
|
|
@ -6,5 +6,5 @@ $bdd->connexion();
|
|||
$message = $bdd->unique_query("SELECT * FROM $table_messages_demarrage ORDER BY time DESC LIMIT 1;");
|
||||
$bdd->deconnexion();
|
||||
$titre = $message['titre'];
|
||||
$template->assign('contenu', bbcode(nl2br($message['contenu']), 1).'<br /><br /><a class="submit" href="?p=accueil">Continuer</a>');
|
||||
$template->assign('contenu', '<p style="margin: 0 5px;">'.bbcode(nl2br($message['contenu']), 1).'<br /><br /><a class="submit" href="?p=accueil">Continuer</a></p>');
|
||||
?>
|
||||
|
|
@ -17,21 +17,20 @@ if (!empty($_POST['objet']) && !empty($_POST['nom']) && !empty($_POST['message']
|
|||
$bdd->escape($objet);
|
||||
$bdd->escape($pseudo);
|
||||
|
||||
$introuv = array();
|
||||
for($i = 0; $i < $nbutil; $i++){
|
||||
$util = trim($utils[$i]);
|
||||
if (empty($util)) continue;
|
||||
$bdd->escape($util);
|
||||
if ($env = $bdd->unique_query("SELECT id, pseudo, mail, envoyerMail FROM $table_user WHERE pseudo = '$util';")) {
|
||||
if ($util != $planete->pseudo && $env = $bdd->unique_query("SELECT id, pseudo, mail, envoyerMail FROM $table_user WHERE pseudo = '$util';")) {
|
||||
$bdd->query("INSERT INTO $table_mail (destinataire, expediteur, sujet, contenu, temps) VALUES(".$env['id'].", '$id_user', '$objet', '$message', '$time');");
|
||||
if ($env["envoyerMail"] >= 1 && !empty($env["mail"])) send_mail($env["mail"], 'Nouveau message privé', 'Bonjour '.$env["pseudo"].',<br /><br />Un nouveau message privé vous a été envoyé dans la galaxie '.$config['serveur_name']);
|
||||
}
|
||||
else {
|
||||
$bdd->deconnexion();
|
||||
erreur('Impossible de trouver l\'un des destinataire du message : '.htmlentities($util), "red", '?p=envoyer');
|
||||
}
|
||||
else $introuv[] = htmlentities($util);
|
||||
}
|
||||
$bdd->deconnexion();
|
||||
erreur('Votre message a été envoyé avec succès.', "green", '?p=messagerie');
|
||||
if (!empty($introuv[0])) erreur('Impossible de trouver le/les destinataire(s) suivant(s) : '.implode(', ', $introuv).'.<br />Les autres ont bien reçu votre message.', "red", '?p=envoyer');
|
||||
else erreur('Votre message a été envoyé avec succès.', "green", '?p=messagerie');
|
||||
}
|
||||
|
||||
$amis = array();
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
<?php
|
||||
if(!defined('INDEX')) { header('Location: ../'); exit; }
|
||||
$titre = 'Flottes';
|
||||
include_once(_FCORE."../game/Class/class.flotte.php");
|
||||
|
||||
if (!empty($_POST['cds']) && !empty($_POST['nomflotte']) && isset($_POST['amas']) && !empty($_POST['ss']) && !empty($_POST['pos']) && !empty($_POST['vitesse']) && isset($_POST['mission']) && isset($_POST['metal']) && isset($_POST['cristal']) && isset($_POST['hydrogene'])) {
|
||||
$end_galaxie = floor(gpc('amas', 'post'));
|
||||
|
|
@ -47,7 +48,7 @@ if (!empty($_POST['cds']) && !empty($_POST['nomflotte']) && isset($_POST['amas']
|
|||
//On vérifie la mission, si elle est de recycler, il faut qu'il y ait des reclycleurs
|
||||
elseif ($mission == 4 && $sess->values['vais'][3] <= 0) erreur('Vous ne pouvez pas recycler sans recycleur !', "red", '?p=flotte');
|
||||
//On vérifie que l'on possède assez de ressources
|
||||
elseif ((!empty($EBmetal) && !$EBmetal > $queryPlanete['metal']) || (!empty($EBcristal) && !$EBcristal > $queryPlanete['cristal']) || (!empty($EBhydrogene) && !$EBhydrogene > $queryPlanete['hydrogene'])) erreur('Vous ne pouvez pas envoyer plus de ressources que vous n\'en posséder.', "red", '?p=flotte');
|
||||
elseif ((!empty($EBmetal) && !$EBmetal > $planete->metal) || (!empty($EBcristal) && !$EBcristal > $planete->cristal) || (!empty($EBhydrogene) && !$EBhydrogene > $planete->hydrogene)) erreur('Vous ne pouvez pas envoyer plus de ressources que vous n\'en posséder.', "red", '?p=flotte');
|
||||
//On vérifie que l'on n'envoie pas des ressources négatives
|
||||
elseif ((!empty($EBmetal) && $EBmetal < 0) || (!empty($EBcristal) && $EBcristal < 0) || (!empty($EBhydrogene) && $EBhydrogene < 0)) erreur('Vous avez spécifié des valeurs de ressources à embarquer incorrectes !', "red", '?p=flotte', 4000);
|
||||
//On vérifie la vitesse du vaisseau
|
||||
|
|
@ -86,33 +87,33 @@ if (!empty($_POST['cds']) && !empty($_POST['nomflotte']) && isset($_POST['amas']
|
|||
erreur('Il n\'y a rien à recycler sur la planète ['.$end_galaxie.':'.$end_ss.':'.$end_pos.'].<br />Vous pouvez forcer le lancement de la flotte en rechargeant cette page.', "orange");
|
||||
}
|
||||
|
||||
//Création de la flotte
|
||||
$req = array();
|
||||
$reqPlan = array();
|
||||
$nbVais = 0;
|
||||
foreach ($sess->values['vais'] as $key => $vaisseau){
|
||||
if ($vaisseau > 0) {
|
||||
if ($vaisseau > $planete->vaisseaux[$key]) erreur('Vous avez envoyé plus de vaisseaux que vous n\'en posséder sur cette planète.', "red", '?p=flotte');
|
||||
else {
|
||||
$req[] = $nomvaisnVAR[$key].' = '.$vaisseau;
|
||||
$reqPlan[] = $nomvaisnVAR[$key].' = '.$nomvaisnVAR[$key].' - '.$vaisseau;
|
||||
$nbVais += $vaisseau;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ($nbVais <= 0) erreur('Vous devez envoyer au moins un vaisseau pour former une flotte !', "red", '?p=flotte');
|
||||
elseif ($sess->values['flnbvais'] != $nbVais) erreur('Une erreur est survenue lors de la création de la flotte :<br /><br /><i>Calcul du nombre de vaisseaux incorrect !</i><br /><br />Si le problème perciste, <a href="mailto:'.$config['mailadmin'].'">contactez un administrateur</a>.', "red", '?p=flotte', 4500);
|
||||
if (!isset($sess->values['vais']) || !is_array($sess->values['vais'])) erreur('Erreur lors de la création de la flotte, absence de données des vaisseaux', "red", '?p=flotte');
|
||||
else {
|
||||
//Envoie de la flotte
|
||||
$flotte = new flotte();
|
||||
|
||||
$sauv = $planete->vaisseaux; //Sauvegarde du contenu de la flotte avant lancement
|
||||
$nbVais = 0;
|
||||
foreach ($sess->values['vais'] as $key => $vaisseau){
|
||||
if ($vaisseau > 0) {
|
||||
if ($vaisseau > $planete->vaisseaux[$key]) erreur('Vous avez envoyé plus de vaisseaux que vous n\'en posséder sur cette planète.', "red", '?p=flotte');
|
||||
else $nbVais += $vaisseau;
|
||||
}
|
||||
elseif ($vaisseau < 0) $vaisseau = 0;
|
||||
|
||||
$flotte->vaisseaux[$key] = $vaisseau;
|
||||
$sauv[$key] -= $vaisseau;
|
||||
}
|
||||
|
||||
if ($nbVais <= 0) erreur('Vous devez envoyer au moins un vaisseau pour former une flotte !', "red", '?p=flotte');
|
||||
elseif (!isset($sess->values['flnbvais']) || $sess->values['flnbvais'] != $nbVais) erreur('Une erreur est survenue lors de la création de la flotte :<br /><br /><i>Calcul du nombre de vaisseaux incorrect !</i><br /><br />Si le problème perciste, <a href="mailto:'.$config['mailadmin'].'">contactez un administrateur</a>.', "red", '?p=flotte', 4500);
|
||||
|
||||
$flotte->nom = gpc('nomflotte', 'post');
|
||||
$flotte->mission = $mission;
|
||||
$flotte->start_planete = $planete;
|
||||
$flotte->start_time = time();
|
||||
$flotte->end_planete = $resultat['id'];
|
||||
$calc = $flotte->calc_deplacement($planete->galaxie, $planete->ss, $planete->position, $end_galaxie, $end_ss, $end_pos, $vitesse);
|
||||
$calc = $flotte->calc_deplacement($planete->galaxie, $planete->ss, $planete->position, $end_galaxie, $end_ss, $end_pos, $vitesse, false, true);
|
||||
$flotte->end_time = $calc[0];
|
||||
$conso = $calc[1];
|
||||
|
||||
|
|
@ -121,11 +122,19 @@ if (!empty($_POST['cds']) && !empty($_POST['nomflotte']) && isset($_POST['amas']
|
|||
|
||||
//On vérifie qu'il y a assez de place dans les cales des vaisseaux avant l'envoie ainsi que de ressources sur la planète
|
||||
$flotte->calculer();
|
||||
if ($flotte->contenuMax < ceil(gpc('metal', 'post')) + ceil(gpc('cristal', 'post')) + ceil(gpc('hydrogene', 'post')) + $conso) erreur('Vous ne pouvez pas embarquer autant de ressources, les cales débordent.', "red", '?p=flotte', 3500);
|
||||
if ($flotte->contenuMax < ceil(gpc('metal', 'post')) + ceil(gpc('cristal', 'post')) + ceil(gpc('hydrogene', 'post')) + $conso) erreur('Vous ne pouvez pas embarquer autant de ressources, les cales débordent. '.$flotte->contenuMax, "red", '?p=flotte', 3500);
|
||||
elseif ($planete->metal < ceil(gpc('metal', 'post')) || $planete->cristal < ceil(gpc('cristal', 'post')) || $planete->hydrogene < ceil(gpc('hydrogene', 'post')) + $conso) erreur('Vous n\'avez pas assez de ressources sur cette planète pour envoyer cette flotte.', "red", '?p=flotte', 3500);
|
||||
else {
|
||||
if ($mission == 1) $flotte->tactique = gpc('tactique', 'post');
|
||||
$flotte->contenu = array(ceil(gpc('metal', 'post')), ceil(gpc('cristal', 'post')), ceil(gpc('hydrogene', 'post')));
|
||||
$flotte->contenu = array(floor(gpc('metal', 'post')), floor(gpc('cristal', 'post')), floor(gpc('hydrogene', 'post')));
|
||||
$flotte->modifFlotte = "INSERT";
|
||||
|
||||
//On actualise la planète
|
||||
$planete->metal -= floor(gpc('metal', 'post'));
|
||||
$planete->cristal -= floor(gpc('cristal', 'post'));
|
||||
$planete->hydrogene -= floor(gpc('hydrogene', 'post') + $conso);
|
||||
$planete->vaisseaux = $sauv;
|
||||
if (!in_array('vaisseaux', $planete->modif)) $planete->modif[] = 'vaisseaux';
|
||||
|
||||
unset($sess->values['vais']);
|
||||
$sess->put();
|
||||
|
|
@ -143,6 +152,7 @@ elseif (!empty($_POST['v0']) || !empty($_POST['v1']) || !empty($_POST['v2']) ||
|
|||
else $v = (int)abs($v);
|
||||
|
||||
if ($vaisseau < $v) {
|
||||
$planete->vaisseaux = $sauv;
|
||||
erreur('Il ne vous reste plus assez de vaisseaux !', "red", '?p=flotte');
|
||||
}
|
||||
|
||||
|
|
@ -175,6 +185,37 @@ elseif (!empty($_POST['v0']) || !empty($_POST['v1']) || !empty($_POST['v2']) ||
|
|||
|
||||
//TODO Ajouter les destinations favorites + Colonies
|
||||
}
|
||||
//Affichage du détail d'une flotte
|
||||
elseif (!empty($_GET['n'])) {
|
||||
$idN = ceil(gpc('n'));
|
||||
|
||||
$flotteN = new Flotte($idN);
|
||||
$flotteN->load_planete();
|
||||
|
||||
if ($flotteN->id_flotte == 0 || $flotteN->start_planete->id_user != $planete->id_user) erreur('Impossible de trouver cette flotte !', "red", '?p=flotte', 1500);
|
||||
else {
|
||||
//Annulation de la mission
|
||||
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() - $flotteN->start_time;
|
||||
if ($flotteN->mission == '6') erreur('Votre flotte est déjà en train de revenir !', 'red', '?p=flotte&n='.$idN, 1500);
|
||||
elseif ($flotteN->end_time > $tpsDD) {
|
||||
$bdd->query("UPDATE $table_flottes SET mission = '6', effectue = '1', 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 erreur('Impossible d\'annuler la mission, elle a déjà commencée.', "red", '?p=flotte&n='.$idN, 1500);
|
||||
}
|
||||
|
||||
$sess->values['ret_fleet'] = sha1('HB.fleet_'.rand().'☺ß☻');
|
||||
$sess->put();
|
||||
|
||||
$template->assign('ret_fleet', $sess->values['ret_fleet']);
|
||||
$template->assign('flotte', $flotteN);
|
||||
$template->assign('nomvais', $nomvaisa);
|
||||
$page = 'flotten';
|
||||
}
|
||||
}
|
||||
//Affichage de la page générale
|
||||
else {
|
||||
//Mise à jour des tactiques par défaut
|
||||
|
|
@ -218,7 +259,10 @@ else {
|
|||
$retour = '-';
|
||||
$Hretour = '-';
|
||||
}
|
||||
$TEMP_flottesEC[] = array($flotte['id'], $flotte['nom'], txtmission($flotte['mission']), $flotte['nb_vais'], $flotte['end_galaxie'].':'.$flotte['end_ss'].':'.$flotte['end_position'], date('d/m H:i:s',$flotte['start_time']+$flotte['end_time']), $retour, $Hretour);
|
||||
|
||||
$end_planete = new Planete($flotte['end_planete']);
|
||||
|
||||
$TEMP_flottesEC[] = array($flotte['id'], $flotte['nom'], txtmission($flotte['mission']), $flotte['nb_vais'], $end_planete->nom_planete.' ['.$end_planete->galaxie.':'.$end_planete->ss.':'.$end_planete->position.']', date('d/m H:i:s',$flotte['start_time']+$flotte['end_time']), $retour, $Hretour);
|
||||
}
|
||||
}
|
||||
$template->assign('flottesEC', $TEMP_flottesEC);
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ $politique = gpc('politique', 'post');
|
|||
if (is_numeric($politique)) {
|
||||
//On annule le changement politique si le dernier a eu lieu dans la semaine.
|
||||
if ($planete->politique_lastchange > time() - 604800) erreur("La population de votre empire planètaire vient d'entrer dans une phase de révolution contre le changement de régime.<br />Pour ne pas perdre votre place au sommet de l'empire, le système politique n'a pas été changé.");
|
||||
if ((($planete->technologies[3] & 2048 && $politique == 3) || ($planete->technologies[3] & 1024 && $politique == 2) || ($planete->technologies[3] & 512 && $politique == 1) || $politique == 0) && $planete->politique != $politique) {
|
||||
if (($planete->technologies[3] & 2048 && ($politique == 3 || $politique == 2 || $politique == 1) || $politique == 0) && $planete->politique != $politique) {
|
||||
$planete->politique = $politique;
|
||||
$planete->politique_lastchange = time();
|
||||
$planete->modifUser[] = "politique";
|
||||
|
|
@ -29,8 +29,10 @@ if (is_numeric($politique)) {
|
|||
}
|
||||
|
||||
$politiques = array('Anarchie');
|
||||
if ($planete->technologies[3] & 512) $politiques[] = 'Fascisme (Mouvement Frieden)';
|
||||
if ($planete->technologies[3] & 1024) $politiques[] = 'Communisme (Mouvement Koslovic)';
|
||||
if ($planete->technologies[3] & 2048) $politiques[] = 'Démocratie (Administration coloniale)';
|
||||
if ($planete->technologies[3] & 2048) {
|
||||
$politiques[] = 'Fascisme (Mouvement Frieden)';
|
||||
$politiques[] = 'Communisme (Mouvement Koslovic)';
|
||||
$politiques[] = 'Démocratie (Administration coloniale)';
|
||||
}
|
||||
$template->assign('politiques', $politiques);
|
||||
?>
|
||||
|
|
@ -8,6 +8,9 @@ if ($planete->batiments[6] == 0) erreur('Vous devez d\'abord construire un '.str
|
|||
|
||||
//Lancement d'une nouvelle recherche
|
||||
if (isset($_GET['t']) && isset($_GET['f']) ) {
|
||||
//On annule la recherche si le labo est en construction
|
||||
if ($planete->file_exist(6, 'file_bat')) erreur('Votre laboratoire est en travaux, vous ne pouvez pas faire de recherches pour le moment !');
|
||||
|
||||
//Récupération des erreurs de la mise en file d'attente pour traitement
|
||||
$construction = $planete->file_addObjet("technologies", intval(gpc('t')), intval(gpc('f')));
|
||||
|
||||
|
|
@ -43,13 +46,14 @@ foreach ($planete->technologies as $key => $technologie){
|
|||
|
||||
//On applique les bonus de test
|
||||
$calc[3] /= VITESSE;
|
||||
$calc[3] /= (1 + $planete->batiments[6] * 0.005);
|
||||
|
||||
$TEMP_technologies[] =
|
||||
array(
|
||||
'image' => $planete->race=='humain'?'../humain_na.jpg':'../covenant_na.jpg',
|
||||
'nom' => $technolo[$key][$i],
|
||||
'niveau' => '0',
|
||||
'description' => 'Technologie de '.$technologiesVAR[$key].' ; numéro : '.$calc[0].'<br />Résultat : '.((int)($technologie & $calc[1]).' | '.$calc[1]),
|
||||
'description' => 'Technologie de '.$technologiesVAR[$key].' ; numéro : '.$calc[0].'<br />Résultat : '.((int)($technologie & $calc[1]).' | '.$calc[1].' | '.$technologie),
|
||||
'nec_metal' => 0,
|
||||
'nec_cristal' => 0,
|
||||
'nec_hydrogene' => 0,
|
||||
|
|
@ -80,7 +84,7 @@ $file = array();
|
|||
foreach ($planete->file_tech as $key => $tech_infile){
|
||||
if ($key == 0) continue;
|
||||
|
||||
$sec = $technologiesCALC[$tech_infile[1]][$tech_infile[0]][3];
|
||||
$sec = $technologiesCALC[$tech_infile[1]][$tech_infile[0]][3] / (1 + $planete->batiments[6] * 0.01);
|
||||
if ($key == 1) $file[] = array($tech_infile[0], 1, ceil($sec/VITESSE - (time() - $planete->file_tech[0])), $technolo[$tech_infile[1]][$tech_infile[0]]);
|
||||
else $file[] = array($tech_infile[0], 1, ceil($sec/VITESSE), $technolo[$tech_infile[1]][$tech_infile[0]]);
|
||||
}
|
||||
|
|
|
|||
5
game/jeu/marche.php
Normal file
5
game/jeu/marche.php
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
<?php
|
||||
if(!defined('INDEX')) { header('Location: ../'); exit; }
|
||||
$titre = 'Marché';
|
||||
|
||||
?>
|
||||
|
|
@ -33,6 +33,16 @@ if (isset($_POST['IR'])) {
|
|||
if ($stop) { header('Location: ?p=messagerie'); exit; }
|
||||
}
|
||||
|
||||
if (gpc('avertir')) {
|
||||
$id = gpc('avertir');
|
||||
$bdd->connexion();
|
||||
$bdd->escape($id);
|
||||
$bdd->query("UPDATE $table_mail SET statut = 1 WHERE destinataire = $id_user AND id = $id;");
|
||||
if ($bdd->affected()) erreur('La demande de vérification de contenu par les opérateurs a été transmise avec succès.', 'green', '?p=messagerie');
|
||||
else erreur('Une demande est déjà en cours ou vous n\'êtes pas autorisé à avertir ce message.', 'red', '?p=messagerie');
|
||||
$bdd->deconnexion();
|
||||
}
|
||||
|
||||
$bdd->connexion();
|
||||
$messcomp = $bdd->query("SELECT M.*, U.pseudo AS expediteur FROM $table_mail M INNER JOIN $table_user U ON U.id = M.expediteur WHERE M.destinataire = $id_user AND M.expediteur != false ORDER BY M.id DESC;");
|
||||
$nbmax = $bdd->num_rows;
|
||||
|
|
|
|||
|
|
@ -14,39 +14,16 @@ $mdp = $queryUser['mdp'];
|
|||
$mdp_var = $queryUser['mdp_var'];
|
||||
|
||||
if (isset($_GET['a']) && $_GET['a'] == 'mv' && isset($_GET['n']) && $_GET['n'] == $sess->values['idvac']) {
|
||||
$impossible = false;
|
||||
include_once(_FCORE."../game/Class/class.gerefile.php");
|
||||
$nbPlan = count($queryPlanetes);
|
||||
for ($i=0 ; $i<$nbPlan ; $i++) {
|
||||
$file = unserialize($queryPlanetes[$i]['file_bat']);
|
||||
if (!empty($queryPlanetes[$i]['file_bat']) && count($file->file)) $impossible = true;
|
||||
$bdd->connexion();
|
||||
$bdd->query("SELECT * FROM flottes WHERE id_user = '$id_user'");
|
||||
if ($bdd->num_rows) erreur('Des flottes sont actuellement en mission, veuillez toutes les faire revenir à quai avant d\'activer le mode vacances.', "red", '?p=options', 4000);
|
||||
|
||||
$file = unserialize($queryPlanetes[$i]['file_tech']);
|
||||
if (!empty($queryPlanetes[$i]['file_tech']) && count($file->file)) $impossible = true;
|
||||
$bdd->query("UPDATE user SET mv = 1 WHERE id = '$id_user'");
|
||||
$bdd->deconnexion();
|
||||
$sess->values['connected'] = FALSE;
|
||||
$sess->put();
|
||||
|
||||
$file = unserialize($queryPlanetes[$i]['file_cas']);
|
||||
if (!empty($queryPlanetes[$i]['file_cas']) && count($file->file)) $impossible = true;
|
||||
|
||||
$file = unserialize($queryPlanetes[$i]['file_vais']);
|
||||
if (!empty($queryPlanetes[$i]['file_vais']) && count($file->file)) $impossible = true;
|
||||
|
||||
$file = unserialize($queryPlanetes[$i]['file_ter']);
|
||||
if (!empty($queryPlanetes[$i]['file_ter']) && count($file->file)) $impossible = true;
|
||||
}
|
||||
|
||||
if ($impossible) erreur('Impossible d\'activer le mode vacances.<br />Toutes les files d\'attentes sur vos différentes planètes ne sont pas vides.', "red", '?p=options', 4000);
|
||||
else {
|
||||
$bdd->connexion();
|
||||
$bdd->query("SELECT * FROM flottes WHERE id_user = '$id_user'");
|
||||
if ($bdd->num_rows) erreur('Des flottes sont actuellement en mission, veuillez toutes les faire revenir à quai avant d\'activer le mode vacances.', "red", '?p=options', 4000);
|
||||
|
||||
$bdd->query("UPDATE user SET mv = '1' WHERE id = '$id_user'");
|
||||
$bdd->deconnexion();
|
||||
$sess->values['connected'] = FALSE;
|
||||
$sess->put();
|
||||
|
||||
erreur('Le mode vacances est maintenant actif sur votre compte.<br /><br />Vous pourez vous reconnecter sur votre compte à partir de<br />'.strftime("%A %d %B à %H:%M", $planete->last_visite+259200).'<br /><br />Bonnes vacances !', "green", '?index', 10000);
|
||||
}
|
||||
erreur('Le mode vacances est maintenant actif sur votre compte.<br /><br />Vous pourez vous reconnecter sur votre compte à partir de<br />'.strftime("%A %d %B à %H:%M", $planete->last_visite+259200).'<br /><br />Bonnes vacances !', "green", '?index', 10000);
|
||||
}
|
||||
elseif (isset($_GET['a']) && $_GET['a'] == 'dl' && isset($_GET['n']) && $_GET['n'] == $sess->values['idvac']) {
|
||||
$bdd->connexion();
|
||||
|
|
|
|||
|
|
@ -11,8 +11,9 @@ if (!empty($_GET['i']) && isset($_GET['n'])) {
|
|||
$bdd->connexion();
|
||||
$bdd->escape($Un);
|
||||
$bdd->escape($Ui);
|
||||
$user = $bdd->unique_query("SELECT * FROM user WHERE pseudo = '$Un' AND mdpNOUV = '$Ui';");
|
||||
if ($user && $bdd->unique_query("UPDATE user SET mdp = mdpNOUV, mdpNOUV = '' WHERE pseudo = '$Un'")) {
|
||||
$user = $bdd->unique_query("SELECT * FROM $table_user WHERE pseudo = '$Un' AND mdpNOUV = '$Ui';");
|
||||
if ($user) {
|
||||
$bdd->query("UPDATE user SET mdp = mdpNOUV, mdpNOUV = '' WHERE pseudo = '$Un'");
|
||||
$bdd->deconnexion();
|
||||
$template->assign('message','Votre mot de passe a été réinitialisé avec succès.');
|
||||
$template->assign('script','<script type="text/javascript">setTimeout(\'document.location.href="?index";\', 3500);</script>');
|
||||
|
|
@ -29,19 +30,29 @@ if (!empty($_GET['i']) && isset($_GET['n'])) {
|
|||
}
|
||||
}
|
||||
|
||||
if (isset($_POST['HB_pseudo']) && isset($_POST['HB_mail']) && isset($_POST['HB_captcha'])) {
|
||||
if ((isset($_POST['HB_pseudo']) && isset($_POST['HB_mail']) && isset($_POST['HB_captcha'])) || (isset($_GET['ps']) && isset($_GET['m']) && isset($_GET['a']))) {
|
||||
$ok = true;
|
||||
if (empty($_POST['HB_pseudo']) || empty($_POST['HB_mail'])) {
|
||||
if ((empty($_POST['HB_pseudo']) || empty($_POST['HB_mail'])) && (empty($_GET['ps']) || empty($_GET['m']))) {
|
||||
$ok = false;
|
||||
$erreur .= '<p style="color: #FF0000"><b>Pseudo ou adresse électronique vide :</b><br />Veuillez compléter tous les champs de ce formulaire avant de le valider.</p><br />';
|
||||
}
|
||||
if (strtolower($_POST['HB_captcha']) != strtolower($_SESSION['aleat_nbr'])) {
|
||||
|
||||
if (isset($_GET['m']) && is_numeric('0x'.$_GET['m'])) $_GET['m'] = cxor(hexstr($_GET['m']), date('WYDj'));
|
||||
if (!isset($_POST['HB_captcha'])) $_POST['HB_captcha'] = '';
|
||||
if (strtolower($_POST['HB_captcha']) != strtolower($_SESSION['aleat_nbr']) && gpc('a') != hash_var($_GET['ps'].'☻♫☼'.date('W!Y¨D@j').'Ņ♂↨'.$_GET['m'], "sha512")) {
|
||||
$ok = false;
|
||||
$erreur .= '<p style="color: #FF0000"><b>Code de vérification incorrect :</b><br />Le texte que vous avez recopier ne correspondait pas au texte de l\'image, veuillez recommencer.</p><br />';
|
||||
}
|
||||
if ($ok) {
|
||||
$HB_pseudo = $_POST['HB_pseudo'];
|
||||
$HB_mail = $_POST['HB_mail'];
|
||||
if (strtolower($_POST['HB_captcha']) == strtolower($_SESSION['aleat_nbr'])) {
|
||||
$HB_pseudo = gpc('HB_pseudo', 'post');
|
||||
$HB_mail = gpc('HB_mail', 'post');
|
||||
}
|
||||
else {
|
||||
$HB_pseudo = gpc('ps');
|
||||
$HB_mail = gpc('m');
|
||||
}
|
||||
|
||||
$bdd->connexion();
|
||||
$bdd->escape($HB_pseudo);
|
||||
$bdd->escape($HB_mail);
|
||||
|
|
@ -49,7 +60,7 @@ if (isset($_POST['HB_pseudo']) && isset($_POST['HB_mail']) && isset($_POST['HB_c
|
|||
if ($user) {
|
||||
$liste = "abcdefghijklmnopqrstuvwxyz123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
|
||||
$code = '';
|
||||
while(strlen($code) != 8) {
|
||||
while(strlen($code) <= 8) {
|
||||
$code .= $liste[rand(0,60)];
|
||||
}
|
||||
$passNOUV = mdp($HB_pseudo, $code, $user['mdp_var']);
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<?php
|
||||
if(!defined('INDEX')) { header('Location: ../'); exit; }
|
||||
$page = 'rename';
|
||||
$titre = $planete->nom_planete;
|
||||
$titre = htmlentities($planete->nom_planete);
|
||||
|
||||
if (isset($_POST['planete'])) {
|
||||
$nouvNom = trim(str_replace(' ', ' ', $_POST['planete']));
|
||||
|
|
|
|||
|
|
@ -6,17 +6,12 @@ $titre = 'Détails utilisateur';
|
|||
$u = floor(gpc('i'));
|
||||
|
||||
$bdd->connexion();
|
||||
$detailsUser = $bdd->query("SELECT * FROM $table_user WHERE id = $u;");
|
||||
$bdd->escape($u);
|
||||
$detailsUser = $bdd->unique_query("SELECT * FROM $table_user WHERE id = $u;");
|
||||
$bdd->deconnexion();
|
||||
var_dump($detailsUser);
|
||||
|
||||
if (!empty($detailsUser)) {
|
||||
$amis = explode(';', $detailsUser['amis']);
|
||||
if (in_array($id_user, $amis)) $template->assign('amis', true);
|
||||
$template->assign('userD', $detailsUser);
|
||||
if (!empty($detailsUser['id_alliance'])) {
|
||||
$bdd->connexion();
|
||||
$template->assign('alliance', $bdd->unique_query("SELECT * FROM $table_alliances WHERE id = ".$detailsUser['id_alliance'].";"));
|
||||
$bdd->deconnexion();
|
||||
}
|
||||
}
|
||||
else erreur('Joueur introuvable !');
|
||||
?>
|
||||
Loading…
Add table
Add a link
Reference in a new issue