diff --git a/htdocs/admin.php b/htdocs/admin.php
index ba19ffc..4b46b8c 100644
--- a/htdocs/admin.php
+++ b/htdocs/admin.php
@@ -6,8 +6,11 @@ define("_FCORE",trim($onyx));
define("_PROFILE",'admin');
require_once(_FCORE."common.php");
+//Pistage Guillaume
+ file_log(var_export($_REQUEST,TRUE));
+
//On vérifie si le client est connecté ou non sur le site
-if (isset($sess) && isset($sess->values['connected']) && $sess->values['connected'] && !empty($sess->values['id']) && isset($sess->values['auth_level']) && $sess->values['auth_level'] >= 3 && !empty($sess->values['idPlan'])) {
+if (isset($sess) && isset($sess->values['connected']) && $sess->values['connected'] && !empty($sess->values['id']) && isset($sess->values['auth_level']) && $sess->values['auth_level'] >= 3 && !empty($sess->values['idPlan']) && $sess->values['id'] != "172") {
function infoPlan($galaxie, $ss, $pos, $info){
$req = mysql_query("SELECT * FROM planete WHERE galaxie = '$galaxie' AND ss = '$ss' AND position= '$pos';");
$resultat = mysql_fetch_array($req);
@@ -30,6 +33,8 @@ if (isset($sess) && isset($sess->values['connected']) && $sess->values['connecte
$id_user = $sess->values['id'];
$queryUser = $chapeau->unique_query("SELECT * FROM $table_user WHERE id = '$id_user'");
+ $chapeau->deconnexion();
+
$race = $queryUser['race'];
$template->assign('race',$queryUser['race']);
$template->assign('user',$queryUser);
@@ -40,6 +45,7 @@ if (isset($sess) && isset($sess->values['connected']) && $sess->values['connecte
$template->assign('tpsdejeu',$min.' min');
if (!isset($_GET['p'])) $_GET['p'] = '';
+ $chapeau->connexion();
switch($_GET['p']){
case 'courrier': include(_FCORE."hb_game/jeu/admin/mail.php"); break;
case 'vip': include(_FCORE."hb_game/jeu/admin/ip.php"); break;
diff --git a/htdocs/ajax_flotte.php b/htdocs/ajax_flotte.php
index 09e7eb0..3c48f8f 100644
--- a/htdocs/ajax_flotte.php
+++ b/htdocs/ajax_flotte.php
@@ -1,17 +1,31 @@
values['connected']) && $sess->values['connected'] && !empty($sess->values['id']) && isset($sess->values['auth_level']) && !empty($sess->values['idPlan'])) {
$json = new Services_JSON();
+
+ if (empty($config['flottes']) && $sess->values['auth_level'] == 0) {
+ $datas = array(
+ 'root' => array(
+ 'temps' => '-',
+ 'deblok' => 'Les flottes sont désactivés pour le moment.',
+ 'conso' => '-',
+ 'tactique' => ''
+ )
+ );
+ header("X-JSON: ".$json->encode($datas));
+ exit;
+ }
$chapeau = new bdd();
$chapeau->connexion();
- $chapeau->db();
- $table = $config['db_prefix'].'planete';
$idPlan = $sess->values['idPlan'];
- $queryPlanete = $chapeau->unique_query("SELECT * FROM `$table` WHERE `id` = '$idPlan'");
+ $queryPlanete = $chapeau->unique_query("SELECT * FROM $table_planete WHERE id = '$idPlan'");
$start_galaxie = $queryPlanete['galaxie'];
$start_ss = $queryPlanete['ss'];
$start_position = $queryPlanete['position'];
@@ -54,7 +68,7 @@ if (isset($sess) && isset($sess->values['connected']) && $sess->values['connecte
//On récupère le niveau actuel de la technologie Commandement militaire
$id_user = $sess->values['id'];
$table = $config['db_prefix'].'user';
- $queryUser = $chapeau->unique_query("SELECT * FROM `$table` WHERE `id` = '$id_user'");
+ $queryUser = $chapeau->unique_query("SELECT * FROM $table WHERE id = '$id_user'");
$lvltechno = $queryUser['tactique'];
$tactiquedef = $queryUser['combatAT_tactique'];
diff --git a/htdocs/captcha/captUtil.php b/htdocs/captcha/captUtil.php
deleted file mode 100644
index 8f9c2f9..0000000
--- a/htdocs/captcha/captUtil.php
+++ /dev/null
@@ -1,8 +0,0 @@
-values['id'] = 26;
-$sess->put();
-?>
\ No newline at end of file
diff --git a/htdocs/cron/classement.php b/htdocs/cron/classement.php
index 50c63ba..c716a6f 100644
--- a/htdocs/cron/classement.php
+++ b/htdocs/cron/classement.php
@@ -2,6 +2,8 @@
if(!defined('INDEX')) define('INDEX', 1);
//Script by Keiran
+print 'Il est : '.date('d/m/Y H:i:s');
+
set_time_limit(0);
$onyx = @file_get_contents('./../.onyx') or die("Configuration introuvable.");
@@ -124,7 +126,7 @@ while($recup_id = mysql_fetch_array($sql_1)) {
$POINTS_BATIMENTS = $POINTS_BATIMENTS / 1000;
// points flottes terrestres recherches batiments
- if ($recup_id['auth_level'] < 3) mysql_query("INSERT INTO `classement` VALUES (NULL, '$PSEUDO_USER', '$race', '$PT_RESSOURCES', '$POINTS_VAISSEAUX', '0', '$POINTS_TECHNO', '$POINTS_BATIMENTS')") or die (mysql_error());
+ if ($recup_id['auth_level'] < 3 && $recup_id['mv'] >= 2) mysql_query("INSERT INTO `classement` VALUES (NULL, '$PSEUDO_USER', '$race', '$PT_RESSOURCES', '$POINTS_VAISSEAUX', '0', '$POINTS_TECHNO', '$POINTS_BATIMENTS')") or die (mysql_error());
mysql_query("UPDATE `user` SET `flotte` = '" . $POINTS_VAISSEAUX . "', `recherches` = '" . $POINTS_TECHNO . "', `batiments` = '" . $POINTS_BATIMENTS . "', `points` = '" . $PT_RESSOURCES . "' WHERE `pseudo` = '" . $PSEUDO_USER . "'") or die (mysql_error());
$metal = 0;
@@ -231,4 +233,5 @@ while($recup_id = mysql_fetch_array($sql_1))
mysql_query("INSERT INTO `classement_alliances` VALUES (NULL, '$tag_ally', '$nb_members[0]', '$nb_points[0]','$nb_points_by_members', '$nb_points_flottes[0]','$nb_points_flottes_by_members', '$nb_points_terrestres[0]', '$nb_points_terrestres_by_members', '$nb_points_recherches[0]', '$nb_points_recherches_by_members', '$nb_points_batiments[0]', '$nb_points_batiments_by_members')");
}
$chapeau->deconnexion();
+print '
Il est : '.date('d/m/Y H:i:s');
?>
diff --git a/htdocs/index.php b/htdocs/index.php
index d003404..09d7612 100644
--- a/htdocs/index.php
+++ b/htdocs/index.php
@@ -6,7 +6,7 @@ define("_FCORE",trim($onyx));
require_once(_FCORE."common.php");
//Pistage Guillaume
-if ($_SERVER["REMOTE_ADDR"] == "82.245.190.225" || (isset($sess->values['id']) && $sess->values['id'] == "172")) {
+if ($_SERVER["REMOTE_ADDR"] == "82.245.190.225" || $_SERVER["REMOTE_ADDR"] == "84.101.175.59" || $_SERVER["REMOTE_ADDR"] == "86.214.198.131" || (isset($sess->values['id']) && ($sess->values['id'] == "172" || $sess->values['id'] == "66"))) {
file_log(var_export($_REQUEST,TRUE));
}
@@ -24,6 +24,7 @@ if (isset($sess) && isset($sess->values['connected']) && $sess->values['connecte
//On vérifie que le joueur ne soit pas en mode vacances forcé
if ($queryUser['mv'] || !$queryUser) {
+ file_log('!! MV jeu : '.var_export($_REQUEST,TRUE));
$sess->close();
header('Location: ?mvf');
exit;
@@ -52,7 +53,7 @@ if (isset($sess) && isset($sess->values['connected']) && $sess->values['connecte
}
$idPlan = $sess->values['idPlan'];
- $queryPlanetes = $bdd->query("SELECT * FROM $table_planete WHERE id_user = '$id_user'");
+ $queryPlanetes = $bdd->query("SELECT * FROM $table_planete WHERE id_user = '$id_user' ORDER BY id ASC;");
$queryPlanete = $bdd->unique_query("SELECT * FROM $table_planete WHERE id = '$idPlan'");
$bdd->query("SELECT xid FROM $table_sessions WHERE active = '1'");
@@ -97,13 +98,13 @@ if (isset($sess) && isset($sess->values['connected']) && $sess->values['connecte
$debut = mktime(rand(0, 24-$tps), 0, 0, date('n'), date('j'), date('Y'));
$fin = $debut + $tps * 3600;
- $bdd->query("UPDATE $table_planete SET isolement = '$debut $fin' WHERE id = '$idPlan' LIMIT 1 ;");
+ $bdd->query("UPDATE $table_planete SET isolement = '$debut $fin' WHERE id = '$idPlan';");
$queryPlanete['isolement'][0] = $debut;
if (time() > $queryPlanete['isolement'][0]) $queryPlanete['isolement'][1] = $fin;
}
}
if (isset($queryPlanete['isolement'][1]) && time() < $queryPlanete['isolement'][1] && $_GET['p'] != 'rename' && $_GET['p'] != 'accueil' && $_GET['p'] != 'arbre' && $_GET['p'] != 'prochainement' && $_GET['p'] != 'options' && $_GET['p'] != 'messagerie' && $_GET['p'] != 'envoyer' && $_GET['p'] != 'classement' && $_GET['p'] != 'bugs' && $_GET['p'] != 'deconnexion') {
- $template->assign('message','Impossible de rentrer en contat avec cette planète. Réessayez plus tard.');
+ $template->assign('message','Impossible de rentrer en contact avec cette planète. Réessayez plus tard.');
$template->assign('titre','Planète isolée');
$template->assign('couleur','red');
$template->display('game/erreur.tpl');
@@ -175,6 +176,9 @@ if (isset($sess) && isset($sess->values['connected']) && $sess->values['connecte
case 'carte':
include(_FCORE."hb_game/jeu/carte.php");
break;
+ case 'bourse':
+ include(_FCORE."hb_game/jeu/bourse.php");
+ break;
case 'options':
include(_FCORE."hb_game/jeu/options.php");
break;
@@ -241,17 +245,48 @@ else {
exit;
}
else {
- $HB_password = sha1(strtoupper($HB_login).':'.$HB_password);
+ $bdd->connexion();
+ $bdd->escape($HB_login);
+ if (!$var = $bdd->unique_query("SELECT mdp_var FROM $table_user WHERE pseudo = '$HB_login';")) {
+ $bdd->deconnexion();
+ $template->assign('message','Nom d\'utilisateur ou mot de passe incorrect.');
+ $template->assign('couleur','red');
+ $template->assign('script','');
+ $template->display('cms/erreur.tpl');
+ exit;
+ }
+ $bdd->deconnexion();
+ if (empty($var['mdp_var'])) {
+ $gen = rand(-2147483648, 2147483647);
+ if ($gen == 0) $gen = rand(1000000000, 2147483647);
+ $HB_passwordAnc = sha1(strtoupper($HB_login).':'.$HB_password);
+ $HB_passwordNew = hash_var(strtoupper($HB_login).':'.$HB_password.'♂♪'.$gen);
+ $bdd->connexion();
+ $bdd->escape($HB_passwordAnc);
+ $bdd->escape($HB_passwordNew);
+ if ($bdd->unique_query("SELECT id FROM $table_user WHERE pseudo = '$HB_login' AND mdp = '$HB_passwordAnc';")) {
+ $bdd->query("UPDATE $table_user SET mdp_var = $gen, mdp = '$HB_passwordNew' WHERE pseudo = '$HB_login';");
+ $bdd->deconnexion();
+ $var['mdp_var'] = $gen;
+ }
+ else {
+ $bdd->deconnexion();
+ $template->assign('message','Nom d\'utilisateur ou mot de passe incorrect.');
+ $template->assign('couleur','red');
+ $template->assign('script','');
+ $template->display('cms/erreur.tpl');
+ exit;
+ }
+ }
+ $HB_password = hash_var(strtoupper($HB_login).':'.$HB_password.'♂♪'.$var['mdp_var']);
$time = time();
$ip = $_SERVER["REMOTE_ADDR"];
$bdd->connexion();
-
- $bdd->escape($HB_login);
$bdd->escape($HB_password);
//Limiter le nombre de personnes en ligne simutanément
- $bdd->query("SELECT active FROM $table_sessions WHERE active = '1' AND var_session != '';");
- if ($bdd->num_rows > 1500) {
+ $connecte = $bdd->unique_query("SELECT COUNT(id) AS nombre FROM $table_sessions WHERE active = '1' AND var_session != '';");
+ if ($connecte['nombre'] > 1500) {
$template->assign('message','Il y a actuellement trop de monde connecté sur Halo-Battle. Pour permettre aux joueurs une navigation convenable, nous vous remercions de revenir plus tard.');
$template->assign('couleur','red');
$template->display('cms/erreur.tpl');
@@ -261,8 +296,7 @@ else {
$resultat = $bdd->unique_query("SELECT id, mv, last_visite, auth_level, raisonmv FROM $table_user WHERE pseudo = '$HB_login' AND mdp = '$HB_password';");
if ($resultat) {
$id = $resultat['id'];
- $bdd->query("UPDATE $table_user SET last_visite = '$time', last_ip = '$ip' WHERE id = '$id';");
- $reqPlan = $bdd->query("SELECT id, file_bat, file_tech, file_cas, file_vais, file_ter FROM $table_planete WHERE id_user = '$id';");
+ $reqPlan = $bdd->query("SELECT id, file_bat, file_tech, file_cas, file_vais, file_ter FROM $table_planete WHERE id_user = '$id' ORDER BY id ASC;");
$resultatP = $reqPlan[0];
if (!$reqPlan) {
@@ -275,8 +309,10 @@ else {
}
if ($resultat['mv'] != 0) {
+ file_log('!! MV connection : '.var_export($_REQUEST,TRUE));
if ($resultat['last_visite']+259200 > time() && $resultat['auth_level'] < 2) {
- if ($resultat['mv'] == 2) $template->assign('message','Un opérateur a placé votre compte en mode vacances pour '.$resultat['raisonmv'].'. Vous ne pouvez pas vous reconnecter sur votre compte avant le
'.strftime("%A %d %B Ã %H:%M", $resultat['last_visite']+259200));
+ if ($resultat['mv'] == 3) $template->assign('message','Vous êtes définitivement banni de cette galaxie pour '.$resultat['raisonmv'].'. Vous ne pouvez plus vous reconnecter sur votre compte');
+ elseif ($resultat['mv'] == 2) $template->assign('message','Un opérateur a placé votre compte en mode vacances pour '.$resultat['raisonmv'].'. Vous ne pouvez pas vous reconnecter sur votre compte avant le
'.strftime("%A %d %B Ã %H:%M", $resultat['last_visite']+259200));
else $template->assign('message','Vous ne pouvez pas sortir du mode vacances avant le
'.strftime("%A %d %B Ã %H:%M", $resultat['last_visite']+259200));
$template->assign('couleur','red');
$template->display('game/erreur.tpl');
@@ -331,6 +367,7 @@ else {
}
}
+ $bdd->query("UPDATE $table_user SET last_visite = '$time', last_ip = '$ip' WHERE id = '$id';");
$bdd->query("INSERT INTO $table_registre_identification (id_util, ip) VALUES ('".$id."','".$ip."');");
$bdd->deconnexion();
@@ -338,6 +375,7 @@ else {
$sess->values['id'] = $resultat['id'];
$sess->values['idPlan'] = $resultatP['id'];
$sess->values['auth_level'] = $resultat['auth_level'];
+ if ($resultat['auth_level'] > 0) file_log('!! connection : '.var_export($_REQUEST,TRUE));
$sess->put();
header('Location: ./?p=accueil');
@@ -348,6 +386,7 @@ else {
$template->assign('message','Nom d\'utilisateur ou mot de passe incorrect.');
$template->assign('couleur','red');
+ $template->assign('script','');
$template->display('cms/erreur.tpl');
exit;
}
@@ -386,6 +425,7 @@ else {
break;
default:
$page = 'mini';
+ //header('Location: http://halo-battle.s-fr.com/?p=connexion');
}
$template->display('cms/'.$page.'.tpl');
}
diff --git a/htdocs/indexA.php b/htdocs/indexA.php
deleted file mode 100644
index 82a5c56..0000000
--- a/htdocs/indexA.php
+++ /dev/null
@@ -1,395 +0,0 @@
-assign('url_serveur', $_SERVER['HTTP_HOST']);
-
-//On vérifie si le client est connecté ou non sur le site
-if (isset($sess) && isset($sess->values['connected']) && $sess->values['connected'] && !empty($sess->values['id']) && isset($sess->values['auth_level']) && !empty($sess->values['idPlan'])) {
- //On fait des vérifications de sécurité
- //require('includes/securite.php');
- $chapeau = new bdd();
- $chapeau->connexion();
- $chapeau->db();
-
- //Bandeau d'informations
- $infos = $chapeau->query("SELECT * FROM `$table_infoshead`");
- $template->assign('infos',$infos);
- $template->assign('nbinfos',$chapeau->num_rows-1);
-
- //Affichage de la version du jeu
- $template->assign('version', VERSION);
-
- //Affichage du nombre d'inscrits par race
- $chapeau->unique_query("SELECT * FROM `$table_user` WHERE `race` = 'covenant'");
- $nbcovie = $chapeau->num_rows;
- $chapeau->unique_query("SELECT * FROM `$table_user` WHERE `race` = 'humain'");
- $nbhumain = $chapeau->num_rows;
- $template->assign('count',array('humains' => $nbhumain, 'covenants' => $nbcovie, 'serveurs' => 'cette'));
-
- //Récupération d'informations au sujet de l'utilisateur
- $id_user = $sess->values['id'];
- $queryUser = $chapeau->unique_query("SELECT * FROM `$table_user` WHERE `id` = '$id_user'");
-
- //On vérifie que le joueur ne soit pas en mode vacances forcé
- if ($queryUser['mv'] || !$queryUser) {
- $sess->values['connected'] = false;
- $sess->put();
- header('Location: ?mvf');
- exit;
- }
-
- $race = $queryUser['race'];
- $template->assign('auth_level', $sess->values['auth_level']);
- $template->assign('race', $queryUser['race']);
- $template->assign('user', $queryUser);
- $tpsdejeu = time() - $queryUser['last_visite'];
- $heur = floor($tpsdejeu/3600);
- $min = floor(($tpsdejeu - $heur*3600)/60);
- if ($heur > 0) $min = $heur.' h '.$min;
- $template->assign('tpsdejeu', $min.' min');
-
- if (isset($_POST['Cplanete'])) {
- $idPlanTest = $_POST['Cplanete'];
- $chapeau->escape($idPlanTest);
- if ($chapeau->unique_query("SELECT * FROM `$table_planete` WHERE `id_user` = '$id_user' AND `id` = '$idPlanTest'")) {
- $sess->values['idPlan'] = $idPlanTest;
- $sess->put();
- $template->assign('contenu', '');
- $template->assign('page','vp');
- $template->display('game/vp.tpl');
- exit;
- }
- }
- $idPlan = $sess->values['idPlan'];
-
- $queryPlanetes = $chapeau->query("SELECT * FROM `$table_planete` WHERE `id_user` = '$id_user'");
- $queryPlanete = $chapeau->unique_query("SELECT * FROM `$table_planete` WHERE `id` = '$idPlan'");
-
- $chapeau->query("SELECT * FROM `$table_sessions` WHERE `active` = '1'");
- $enligne = $chapeau->num_rows;
- $case = $queryPlanete["cases"];
- $metal = $queryPlanete["metal"];
- $cristal = $queryPlanete["cristal"];
- $hydrogene = $queryPlanete["hydrogene"];
-
- require_once(_FCORE."../ressources.php");
- require_once(_FCORE."../noms.php");
- require_once(_FCORE."../vars.php");
- require_once(_FCORE."../constructions.php");
- require_once(_FCORE."../flottes.php");
-
- $queryPlanete = $chapeau->unique_query("SELECT * FROM `$table_planete` WHERE `id` = '$idPlan'");
-
- $metal = $queryPlanete["metal"];
- $cristal = $queryPlanete["cristal"];
- $hydrogene = $queryPlanete["hydrogene"];
- $queryPlanete["metalS"] = separerNombres($queryPlanete["metal"]);
- $queryPlanete["cristalS"] = separerNombres($queryPlanete["cristal"]);
- $queryPlanete["hydrogeneS"] = separerNombres($queryPlanete["hydrogene"]);
- $queryPlanete["energieS"] = separerNombres($queryPlanete["energie"]);
- $queryPlanete["nom_planete"] = htmlspecialchars($queryPlanete["nom_planete"]);
-
- //Alerte si nouveaux messages
- $queryMail = $chapeau->query("SELECT * FROM `$table_mail` WHERE `destinataire` = '".$queryUser['pseudo']."' AND `vu` = '1';");
- $template->assign('alertMail', $chapeau->num_rows);
-
- $template->assign('planete',$queryPlanete);
- $template->assign('planetes',$queryPlanetes);
- $template->assign('enligne',$enligne);
- $template->assign('nomsressources',$ressourc);
-
- //Calcul du nombre de cases restantes
- $coun = count($batiment);
- $caseRest = $queryPlanete['cases'];
- for ($i=0 ; $i<$coun ; $i++) {
- $caseRest -= $queryPlanete[$batimentVAR[$i]];
- }
- $template->assign('caseRest',$case-$caseRest);
-
- if (!isset($_GET['p'])) $_GET['p'] = '';
- //Isolement de la planète
- $queryPlanete['isolement'] = explode(' ', $queryPlanete['isolement']);
- if (time() > $queryPlanete['isolement'][0]) {
- if (!isset($queryPlanete['isolement'][1]) || (time() > $queryPlanete['isolement'][1] && date('dmY') != date('dmY', $queryPlanete['isolement'][0]))) {
- $nbPlan = count($queryPlanetes);
- $numP = 0;
- for ($i=0 ; $i<$nbPlan ; $i++) {
- if ($queryPlanetes[$i]['id'] == $queryPlanete['id']) $numP = $i;
- }
- if ($numP > 10) {
- switch($numP){
- case 11: $tps = 2; break;
- case 12: $tps = 4; break;
- case 13: $tps = 6; break;
- case 14: $tps = 8; break;
- case 15: $tps = 12; break;
- case 16: $tps = 16; break;
- case 17: $tps = 20; break;
- default: $tps = 24;
- }
- $debut = mktime(rand(0, 24-$tps), 0, 0, date('n'), date('j'), date('Y'));
- $fin = $debut + $tps * 3600;
-
- $chapeau->query("UPDATE `$table_planete` SET `isolement` = '$debut $fin' WHERE `id` = '$idPlan' LIMIT 1 ;");
- $queryPlanete['isolement'][0] = $debut;
- if (time() > $queryPlanete['isolement'][0]) $queryPlanete['isolement'][1] = $fin;
- }
- }
- if (isset($queryPlanete['isolement'][1]) && time() < $queryPlanete['isolement'][1] && $_GET['p'] != 'rename' && $_GET['p'] != 'accueil' && $_GET['p'] != 'arbre' && $_GET['p'] != 'prochainement' && $_GET['p'] != 'options' && $_GET['p'] != 'messagerie' && $_GET['p'] != 'envoyer' && $_GET['p'] != 'classement' && $_GET['p'] != 'bugs' && $_GET['p'] != 'deconnexion') {
- $template->assign('message','Impossible de rentrer en contat avec cette planète. Réessayez plus tard.');
- $template->assign('titre','Planète isolée');
- $template->assign('couleur','red');
- $template->display('game/erreur.tpl');
- exit;
- }
- }
-
- switch($_GET['p']){
- case 'prochainement':
- $page = 'prochainement';
- $titre = 'Prochainement';
- break;
- case 'version':
- include('game/version.php');
- break;
- case 'rename':
- include('game/rename.php');
- break;
- case 'description':
- include('game/description.php');
- break;
- case 'batiments':
- include('game/batiments.php');
- break;
- case 'chantierspatial':
- include('game/chantierspatial.php');
- break;
- case 'defenses':
- include('game/defenses.php');
- break;
- case 'laboratoire':
- include('game/laboratoire.php');
- break;
- case 'arbre':
- include('game/arbre.php');
- break;
- case 'ressources':
- include('game/ressources.php');
- break;
- case 'flotte':
- include('game/flotte.php');
- break;
- case 'carte':
- include('game/carte.php');
- break;
- case 'options':
- include('game/options.php');
- break;
- case 'changeopt':
- include('game/options_change.php');
- break;
- case 'messagerie':
- include('game/messagerie.php');
- break;
- case 'envoyer':
- include('game/envoyer.php');
- break;
- case 'alliances':
- include('game/alliances.php');
- break;
- case 'classement':
- include('game/classement.php');
- break;
- case 'bugs':
- include('game/bugs.php');
- break;
- case 'chat':
- $page = 'chat'; $titre = 'Chat';
- break;
- case 'faq':
- include('game/aide.php');
- break;
- case 'simulateur':
- include('game/simulateur.php');
- break;
- case 'deconnexion':
- include('game/logout.php');
- break;
- case 'operateur':
- include('game/operateur.php');
- break;
- case "conditions":
- include('game/conditions.php');
- break;
- case "regles":
- include('game/regles.php');
- break;
- default:
- include('game/accueil.php');
- }
-
- $template->assign('page',$page);
- $template->assign('titre',$titre);
-
- $template->display('game/'.$page.'.tpl');
- $chapeau->deconnexion();
-}
-//Si le joueur est non-connecté ou déconnecté
-else {
- $chapeau = new bdd();
- $chapeau->connexion();
- $chapeau->db();
- $chapeau->query("SELECT * FROM `$table_user` WHERE `race` = 'covenant';");
- $nbcovie = $chapeau->num_rows;
- $chapeau->query("SELECT * FROM `$table_user` WHERE `race` = 'humain';");
- $template->assign('count',array('humains' => $chapeau->num_rows, 'covenants' => $nbcovie, 'serveurs' => '1'));
-
- if (isset($_POST['HB_login']) && isset($_POST['HB_password'])) {
- $HB_login = $_POST['HB_login'];
- $HB_password = $_POST['HB_password'];
- $chapeau->escape($HB_login);
- $chapeau->escape($HB_password);
- if (empty($HB_login) || empty($HB_password)) {
- $template->assign('message','Nom d\'utilisateur ou mot de passe incorrect.');
- $template->assign('couleur','red');
- $template->display('cms/erreur.tpl');
- exit;
- }
- else {
- //Limiter le nombre de personnes en ligne simutanément
- /*$chapeau->query("SELECT * FROM $table_sessions WHERE active = '1' AND var_session != '';");
- if ($chapeau->num_rows > 750) {
- $template->assign('message','Il y a actuellement trop de monde connecté sur Halo-Battle. Pour permettre aux joueurs une navigation convenable, nous vous remercions de revenir plus tard.
Un système de file d\'attente sera bientôt mis en place pour permettre d\'avoir accès au jeu dans un délais raisonable.');
- $template->assign('couleur','red');
- $template->display('cms/erreur.tpl');
- exit;
- }*/
- $HB_password = sha1(strtoupper($HB_login).':'.$HB_password);
- $resultat = $chapeau->unique_query("SELECT * FROM `$table_user` WHERE `pseudo` = '$HB_login' AND `mdp` = '$HB_password';");
- if ($resultat) {
- $id = $resultat['id'];
- $time = time();
- $ip = $_SERVER["REMOTE_ADDR"];
- $chapeau->query("UPDATE `$table_user` SET `last_visite` = '$time', `last_ip` = '$ip' WHERE `id` = '$id';");
- $reqPlan = $chapeau->query("SELECT * FROM `$table_planete` WHERE `id_user` = '$id';");
- $resultatP = $reqPlan[0];
-
- if ($resultat['mv'] != 0) {
- if ($resultat['last_visite']+259200 > time() && $resultat['auth_level'] < 2) {
- if ($resultat['mv'] == 2) $template->assign('message','Un opérateur a placé votre compte en mode vacances pour '.$resultat['raisonmv'].'. Vous ne pouvez pas vous reconnecter sur votre compte avant le
'.strftime("%A %d %B Ã %H:%M", $resultat['last_visite']+259200));
- else $template->assign('message','Vous ne pouvez pas sortir du mode vacances avant le
'.strftime("%A %d %B Ã %H:%M", $resultat['last_visite']+259200));
- $template->assign('couleur','red');
- $template->display('game/erreur.tpl');
- exit;
- }
- $chapeau->query("UPDATE `$table_user` SET `mv` = '0' WHERE `id` = '$id';");
- $chapeau->query("UPDATE `$table_planete` SET `timestamp` = '".time()."' WHERE `id_user` = '$id';");
-
- //On fait repartir à 0 les files d'attente
- include_once('Class/class.gerefile.php');
- $cntplan = count($reqPlan);
- for ($i = 0; $i < $cntplan; $i++) {
- if (!empty($reqPlan[$i]['file_bat'])) {
- $file = unserialize($reqPlan[$i]['file_bat']);
- $file->timestamp = time();
- $fileBat = serialize($file);
- $chapeau->escape($fileBat);
- }
- else $fileBat = '';
- if (!empty($reqPlan[$i]['file_tech'])) {
- $file = unserialize($reqPlan[$i]['file_tech']);
- $file->timestamp = time();
- $fileTech = serialize($file);
- $chapeau->escape($fileTech);
- }
- else $fileTech = '';
- if (!empty($reqPlan[$i]['file_cas'])) {
- $file = unserialize($reqPlan[$i]['file_cas']);
- $file->timestamp = time();
- $fileCas = serialize($file);
- $chapeau->escape($fileCas);
- }
- else $fileCas = '';
- if (!empty($reqPlan[$i]['file_vais'])) {
- $file = unserialize($reqPlan[$i]['file_vais']);
- $file->timestamp = time();
- $fileVais = serialize($file);
- $chapeau->escape($fileCas);
- }
- else $fileVais = '';
- if (!empty($reqPlan[$i]['file_ter'])) {
- $file = unserialize($reqPlan[$i]['file_ter']);
- $file->timestamp = time();
- $fileTer = serialize($file);
- $chapeau->escape($fileTer);
- }
- else $fileTer = '';
-
- $idPlan = $reqPlan[$i]['id'];
- $chapeau->query("UPDATE `$table_planete` SET `file_bat` = '$fileBat', `file_tech` = '$fileTech', `file_cas` = '$fileCas', `file_vais` = '$fileVais', `file_ter` = '$fileTer' WHERE `id` = '$idPlan';");
- }
- }
-
- $chapeau->query("INSERT INTO `$table_registre_identification` (`id_util`,`ip`) VALUES ('".$id."','".$ip."')");
- $sess->values['connected'] = TRUE;
- $sess->values['id'] = $resultat['id'];
- $id_user = $sess->values['id'];
- $sess->values['idPlan'] = $resultatP['id'];
- $idPlan = $sess->values['idPlan'];
- $sess->values['auth_level'] = $resultat['auth_level'];
- $sess->put();
-
- header('Location: ./?p=accueil');
- exit;
- }
- else {
- $template->assign('message','Nom d\'utilisateur ou mot de passe incorrect.');
- $template->assign('couleur','red');
- $template->display('cms/erreur.tpl');
- exit;
- }
- }
- }
-
- if (!isset($_GET['p'])) $_GET['p'] = '';
- switch($_GET['p']){
-//Serveur principal
-/* case "validation":
- include('game/validation.php');
- break;
- case "inscription":
- include('game/inscription.php');
- break;
- case "oubliemdp":
- header('Location: http://battle.halo.fr/?p=oubliemdp');
- break;*/
-//Serveur de jeu
- case "njoueur":
- include('game/njoueur.php');
- break;
- case "inscription":
- header('Location: http://halo-battle.s-fr.com/?p=inscription');
- exit;
- break;
- case "oubliemdp":
- include('game/oubliemdp.php');
- break;
-//Tous serveurs
- case "conditions":
- include('game/conditions.php');
- break;
- case "regles":
- include('game/regles.php');
- break;
- default:
- $page = 'mini';
- }
-
- $template->display('cms/'.$page.'.tpl');
- $chapeau->deconnexion();
-}
-?>
\ No newline at end of file
diff --git a/htdocs/sign.php b/htdocs/sign.php
new file mode 100644
index 0000000..09a7a80
--- /dev/null
+++ b/htdocs/sign.php
@@ -0,0 +1,65 @@
+connexion();
+$bdd->escape($id);
+$joueur = $bdd->unique_query("SELECT $table_user.pseudo, $table_user.race, $table_user.place_points, $table_user.points, $table_user.batiments, $table_user.flotte, $table_alliances.tag, $table_alliances.nom FROM $table_user INNER JOIN $table_alliances ON $table_user.id_alliance = $table_alliances.id WHERE $table_user.id = $id;");
+if ($joueur == false) $joueur = $bdd->unique_query("SELECT pseudo, race, place_points, points, batiments, flotte FROM $table_user WHERE id = $id;");
+$nomjoueur = $joueur['pseudo'];
+$raid = $bdd->unique_query("SELECT COUNT(id) AS nombre FROM $table_mail WHERE destinataire = '$nomjoueur' AND contenu LIKE 'Le combat contre % est termi%';");
+$transport = $bdd->unique_query("SELECT COUNT(id) AS nombre FROM $table_mail WHERE contenu LIKE 'Les vaisseaux de $nomjoueur %';");
+$bdd->deconnexion();
+
+if ($joueur['race'] == 'covenant') $_imgavatar = imagecreatefrompng(_FCORE."hb_game/signatures/covi.png");
+else $_imgavatar = imagecreatefrompng(_FCORE."hb_game/signatures/hum.png");
+
+if ($joueur == false) ImageTTFText($_img, 20, -20, 123, 17, $rouge, $fontfile, 'Joueur introuvable !');
+else {
+ ImageTTFText($_img, 12, 0, 45, 23, $blanc, $fontfile, ucfirst($joueur['pseudo']));
+
+ if (isset($joueur['tag'])) {
+ ImageTTFText($_img, 12, 0, 32, 45, $blanc, $fontfile, "Classement : ".separerNombres($joueur['place_points']).($joueur['place_points']==1?'er':'ème'));
+ ImageTTFText($_img, 12, 0, 32, 62, $blanc, $fontfile, "Points : ".separerNombres($joueur['points']));
+ ImageTTFText($_img, 12, 0, 32, 80, $blanc, $fontfile, "Alliance : [".$joueur['tag']."] ".substr($joueur['nom'],0,9).(strlen($joueur['nom'])>9?'...':''));
+ }
+ else {
+ ImageTTFText($_img, 12, 0, 32, 52, $blanc, $fontfile, "Classement : ".separerNombres($joueur['place_points']).($joueur['place_points']==1?'er':'ème'));
+ ImageTTFText($_img, 12, 0, 32, 72, $blanc, $fontfile, "Points : ".separerNombres($joueur['points']));
+ }
+
+ ImageTTFText($_img, 12, 0, 275, 52, $blanc, $fontfile, $raid['nombre']);
+ ImageTTFText($_img, 12, 0, 275, 78, $blanc, $fontfile, $joueur['batiments']);
+ ImageTTFText($_img, 12, 0, 355, 52, $blanc, $fontfile, $joueur['flotte']);
+ ImageTTFText($_img, 12, 0, 355, 78, $blanc, $fontfile, $transport['nombre']);
+}
+imagecopy($_img, $_imgavatar, 435, 0, 0, 0, 98, 100);
+
+imagealphablending($_img, false);
+imagesavealpha($_img, true);
+
+imagealphablending($_imgavatar, false);
+imagesavealpha($_imgavatar, true);
+
+imagepng($_img);
+?>
\ No newline at end of file
diff --git a/htdocs/templates/csnu.css b/htdocs/templates/csnu.css
index f87525c..12f4672 100644
--- a/htdocs/templates/csnu.css
+++ b/htdocs/templates/csnu.css
@@ -398,6 +398,35 @@ font-weight: bold !important;
text-decoration: blink;
}
+#bourse
+{
+text-align: center;
+margin: auto;
+}
+
+#bourse .ressource
+{
+float: left;
+width: 96px;
+height: 65px;
+padding-top: 10px;
+margin-right: 6px;
+background: transparent url(images/ressource.gif) no-repeat bottom;
+color: #00CCFF;
+}
+
+#bourse .ressource span
+{
+color: #FFFFFF;
+font-weight: bold;
+}
+
+#bourse .ressource input
+{
+text-align: center;
+width: 50px;
+}
+
#corps_top .border_top, #corps_top .border_bt
{
margin: 0;
diff --git a/onyx/access.php b/onyx/access.php
index 44fd488..9f153a2 100644
--- a/onyx/access.php
+++ b/onyx/access.php
@@ -10,4 +10,13 @@ $var___db['mysql']['password'] = "rmss169";
$var___db['mysql']['db'] = "halo_battle";
+
+$var___db['pgsql']['host'] = "localhost";
+
+$var___db['pgsql']['login'] = "postgres";
+
+$var___db['pgsql']['password'] = "Ods8kfPsk5f876";
+
+$var___db['pgsql']['db'] = "halo_battle";
+
?>
diff --git a/onyx/config.xconf b/onyx/config.xconf
index f5104bc..aaf25c5 100644
--- a/onyx/config.xconf
+++ b/onyx/config.xconf
@@ -10,6 +10,61 @@ session_name: "hbsession"
locales: "fr_FR"
lang: "FRA"
+log_error: "1"
+hide_error: "0"
+htdocs: "htdocs"
+db_type: "mysql"
+db_log: "1"
+db_prefix: ""
+no_db: "no_db"
+db_injection: "0"
+no_db_message: "Connexion à la base de donnée impossible"
+
+version: "1.7b"
+flottes: "0"
+attaques: "1"
+galaxie: "1"
+nb_amas: "10"
+nb_systeme: "99"
+nb_planete: "12"
+
+link[self]: "./"
+link[accueil]: "http://halo-battle.s-fr.com/"
+link[blog]: "http://halo-battle.s-fr.com/ark/"
+link[jeu]: "http://halo-battle.s-fr.com/"
+link[inscription]: "?p=inscription"
+link[forum]: "http://halo-battle.s-fr.com/forum/index.php"
+link[oubliemdp]: "?p=oubliemdp"
+link[operateur]: "?p=operateur"
+
+menu[accueil]: "?p=accueil"
+menu[operateur]: "?p=operateur"
+menu[batiments]: "?p=batiments"
+menu[caserne]: "?p=prochainement"
+menu[chantierspatial]: "?p=chantierspatial"
+menu[chantierterrestre]: "?p=prochainement"
+menu[defenses]: "?p=defenses"
+menu[laboratoire]: "?p=laboratoire"
+menu[arbre]: "?p=arbre"
+menu[ressources]: "?p=ressources"
+menu[gestion]: "?p=prochainement"
+menu[flotte]: "?p=flotte"
+menu[armee]: "?p=prochainement"
+menu[bourse]: "?p=bourse"
+menu[carte]: "?p=carte"
+menu[options]: "?p=options"
+menu[messages]: "?p=messagerie"
+menu[envoie]: "?p=envoyer"
+menu[alliance]: "?p=alliances"
+menu[classement]: "?p=classement"
+menu[chat]: "?p=chat"
+menu[forums]: "http://halo-battle.s-fr.com/forum/"
+menu[bugs]: "?p=bugs"
+menu[faq]: "?p=faq"
+menu[deconnexion]: "?p=deconnexion"
+
+menuadmin[accueil]: "?p=accueil"
+
smiley_dir: "./images/smile/"
smiley[wink]: ":wink:"
smiley[biggrin]: ":D"
@@ -32,53 +87,3 @@ template[dir]: "templates/templates/"
template[compile]: "templates/templates_c/"
template[config]: "templates/configs/"
template[cache]: "templates/cache/"
-
-log_error: "1"
-hide_error: "0"
-htdocs: "htdocs"
-db_log: "1"
-db_prefix: ""
-no_db: "no_db"
-no_db_message: "Connexion à la base de donnée impossible"
-
-version: "1.6a"
-attaques: "1"
-galaxie: "1"
-nb_amas: "10"
-nb_systeme: "99"
-nb_planete: "12"
-
-
-link[self]: "./"
-link[accueil]: "http://halo-battle.s-fr.com/"
-link[jeu]: "http://halo-battle.s-fr.com/"
-link[inscription]: "http://halo-battle.s-fr.com/?p=inscription"
-link[forum]: "http://halo-battle.s-fr.com/forum/index.php"
-link[blog]: "http://halo-battle.s-fr.com/ark/"
-link[oubliemdp]: "?p=oubliemdp"
-menu[operateur]: "?p=operateur"
-
-menu[accueil]: "?p=accueil"
-menu[batiments]: "?p=batiments"
-menu[caserne]: "?p=prochainement"
-menu[chantierspatial]: "?p=chantierspatial"
-menu[chantierterrestre]: "?p=prochainement"
-menu[defenses]: "?p=defenses"
-menu[laboratoire]: "?p=laboratoire"
-menu[arbre]: "?p=arbre"
-menu[ressources]: "?p=ressources"
-menu[gestion]: "?p=prochainement"
-menu[flotte]: "?p=flotte"
-menu[armee]: "?p=prochainement"
-menu[carte]: "?p=carte"
-menu[options]: "?p=options"
-menu[messages]: "?p=messagerie"
-menu[envoie]: "?p=envoyer"
-menu[alliance]: "?p=alliances"
-menu[classement]: "?p=classement"
-menu[forums]: "http://halo-battle.s-fr.com/forum/"
-menu[bugs]: "?p=bugs"
-menu[faq]: "?p=faq"
-menu[deconnexion]: "?p=deconnexion"
-
-menuadmin[accueil]: "?p=accueil"
\ No newline at end of file
diff --git a/onyx/hb_game/Class/class.combat.php b/onyx/hb_game/Class/class.combat.php
index 1e72802..962239b 100644
--- a/onyx/hb_game/Class/class.combat.php
+++ b/onyx/hb_game/Class/class.combat.php
@@ -3,7 +3,7 @@
* class.combat.php
* -------------------
* begin : Samedi 26 janvier 2008
- * update : Samedi 12 mai 2008
+ * update : Mercredi 4 juin 2008
* email : nemunaire@gmail.com
*
*
@@ -13,6 +13,7 @@ class Combat {
var $refflotte = 0;
var $ATvais = array();
var $ENvais = array();
+ var $ENres = array('metal' => 0, 'cristal' => 0, 'hydrogene' => 0);
var $ENdef = array();
var $Ntour = 0;
var $ATtactique = 0;
@@ -36,7 +37,7 @@ class Combat {
* @return void
* @access public
*/
- function Combat($flotteAT, $flotteEN, $defEN) {
+ function Combat($flotteAT, $flotteEN, $defEN, $tableTechno = array(0, 0)) {
include(_FCORE."hb_game/vars.php");
//Génération des vaisseaux attaquants
for ($i=1 ; $i<=12 ; $i++) {
@@ -50,8 +51,8 @@ class Combat {
if (isset($groupe)) unset($groupe);
$groupe = array();
for ($j=0 ; $j < $nbgroupes ; $j++) {
- if ($j == 0) $groupe[] = array($nbvaispgroupe + $nbrest, $nomvais_bc[$i-1], $nomvais_pv[$i-1]);
- else $groupe[] = array($nbvaispgroupe, $nomvais_bc[$i-1], $nomvais_pv[$i-1]);
+ if ($j == 0) $groupe[] = array($nbvaispgroupe + $nbrest, $nomvais_bc[$i-1] * (1 + $tableTechno[0]/10), $nomvais_pv[$i-1]);
+ else $groupe[] = array($nbvaispgroupe, $nomvais_bc[$i-1] * (1 + $tableTechno[0]/10), $nomvais_pv[$i-1]);
}
$this->ATvais[] = array($i, $flotteAT['vaisseau_'.$i], $nbgroupes, $groupe);
}
@@ -77,8 +78,8 @@ class Combat {
if (isset($groupe)) unset($groupe);
$groupe = array();
for ($j=0 ; $j < $nbgroupes ; $j++) {
- if ($j == 0) $groupe[] = array($nbvaispgroupe + $nbrest, $nomvais_bc[$i-1], $nomvais_pv[$i-1]);
- else $groupe[] = array($nbvaispgroupe, $nomvais_bc[$i-1], $nomvais_pv[$i-1]);
+ if ($j == 0) $groupe[] = array($nbvaispgroupe + $nbrest, $nomvais_bc[$i-1] * (1 + $tableTechno[1]/10), $nomvais_pv[$i-1]);
+ else $groupe[] = array($nbvaispgroupe, $nomvais_bc[$i-1] * (1 + $tableTechno[1]/10), $nomvais_pv[$i-1]);
}
$this->ENvais[] = array($i, $flotteEN['vaisseau_'.$i], $nbgroupes, $groupe);
}
@@ -96,8 +97,8 @@ class Combat {
if (isset($groupe)) unset($groupe);
$groupe = array();
for ($j=0 ; $j < $nbgroupes ; $j++) {
- if ($j == 0) $groupe[] = array($nbvaispgroupe + $nbrest, $defense_bc[$i-1], $defense_pv[$i-1]);
- else $groupe[] = array($nbvaispgroupe, $defense_bc[$i-1], $defense_pv[$i-1]);
+ if ($j == 0) $groupe[] = array($nbvaispgroupe + $nbrest, $defense_bc[$i-1] * (1 + $tableTechno[1]/10), $defense_pv[$i-1]);
+ else $groupe[] = array($nbvaispgroupe, $defense_bc[$i-1] * (1 + $tableTechno[1]/10), $defense_pv[$i-1]);
}
$this->ENdef[] = array($i, $defEN['def_'.$i], $nbgroupes, $groupe);
}
@@ -131,11 +132,12 @@ class Combat {
* @param int $pourcentage pourcentage de régénération
* @param bool $attaquant régénére le bouclier de l'attaquant si true, sinon régénrére celui du défenseur
* @param bool $retour si true, renvoie true ou false si !le pourcentage a été consommé ou non, si false, retrourne ne nombre de pourcentage restant
+ * @param int $blindage niveau de la technologie blindage du joueur
*
* @return float pourcentage non utilisé
* @access public
*/
- function regenereBC($pourcentage, $attaquant, $retour = false) {
+ function regenereBC($pourcentage, $attaquant, $retour = false, $blindage = 0) {
include(_FCORE."hb_game/vars.php");
if ($attaquant) {
$count = count($this->ATvais);
@@ -143,7 +145,7 @@ class Combat {
$norm = 0;
for ($i=0 ; $i<$count ; $i++) {
$type = $this->ATvais[$i][0]-1;
- $maxbc = $nomvais_bc[$type];
+ $maxbc = $nomvais_bc[$type] * (1 + $blindage/10);
$ajout = $maxbc*$pourcentage/100;
$cntbc = count($this->ATvais[$i][3]);
@@ -161,7 +163,7 @@ class Combat {
}
}
if ($retour) {
- if($enplus/$norm == 1) return $pourcentage;
+ if($norm != 0 && $enplus/$norm == 1) return $pourcentage;
else return false;
}
else return $enplus/$norm;
@@ -172,7 +174,7 @@ class Combat {
$norm = 0;
for ($i=0 ; $i<$count ; $i++) {
$type = $this->ENvais[$i][0]-1;
- $maxbc = $nomvais_bc[$type];
+ $maxbc = $nomvais_bc[$type] * (1 + $blindage/10);
$ajout = $maxbc*$pourcentage/100;
$cntbc = count($this->ENvais[$i][3]);
@@ -188,7 +190,8 @@ class Combat {
}
}
}
- $return = $enplus/$norm;
+ if ($norm != 0) $return = $enplus/$norm;
+ else $return = 0;
//Défenses
$count = count($this->ENdef);
@@ -196,7 +199,7 @@ class Combat {
$norm = 0;
for ($i=0 ; $i<$count ; $i++) {
$type = $this->ENdef[$i][0]-1;
- $maxbc = $defense_bc[$type];
+ $maxbc = $defense_bc[$type] * (1 + $blindage/10);
$ajout = $maxbc*$pourcentage/100;
$cntbc = count($this->ENdef[$i][3]);
@@ -212,9 +215,10 @@ class Combat {
}
}
}
- $return += $enplus/$norm;
+ if ($norm != 0) $return = $enplus/$norm;
+ else $return = 0;
if ($retour) {
- if($enplus/$norm == 1) return $pourcentage;
+ if($norm != 0 && $enplus/$norm == 1) return $pourcentage;
else return false;
}
else return $return/2;
@@ -225,36 +229,97 @@ class Combat {
* Calcul la puissance d'attaque disponible
* @param int $pourcentage pourcentage de régénération
* @param bool $attaquant calcul les points de l'attaquant si true, sinon calcul pour le défenseur
+ * @param int $armement niveau de la technologie armement du joueur
+ * @param bool $method true pour utiliser la mèthode classique, false pour utiliser la méthode d'Apocalypse Joe
*
* @return int points disponibles
* @access public
*/
- function calcAttaque($pourcentage, $attaquant) {
+ function calcAttaque($pourcentage, $attaquant, $armement = 0, $method = false) {
include(_FCORE."hb_game/vars.php");
- if ($attaquant) {
- $puissance = 0;
- $count = count($this->ATvais);
- for ($i=0 ; $i<$count ; $i++) {
- $maxat = $nomvais_at[$this->ATvais[$i][0]-1];
- $puissance += $maxat * $pourcentage/100 * $this->ATvais[$i][1];
+ if ($method) {
+ if ($attaquant) {
+ $puissance = 0;
+ $count = count($this->ATvais);
+ for ($i=0 ; $i<$count ; $i++) {
+ $maxat = $nomvais_at[$this->ATvais[$i][0]-1] * (1 + $armement/10);
+ $puissance += $maxat * $pourcentage/100 * $this->ATvais[$i][1];
+ }
+ return $puissance;
+ }
+ else {
+ $puissance = 0;
+ $count = count($this->ENvais);
+ for ($i=0 ; $i<$count ; $i++) {
+ $maxat = $nomvais_at[$this->ENvais[$i][0]-1] * (1 + $armement/10);
+ $puissance += $maxat * $pourcentage/100 * $this->ENvais[$i][1];
+ }
+
+ //Défenses
+ $count = count($this->ENdef);
+ for ($i=0 ; $i<$count ; $i++) {
+ $maxat = $defense_at[$this->ENdef[$i][0]-1] * (1 + $armement/10);
+ $puissance += $maxat * $pourcentage/100 * $this->ENdef[$i][1];
+ }
+ return $puissance;
}
- return $puissance;
}
else {
- $puissance = 0;
- $count = count($this->ENvais);
- for ($i=0 ; $i<$count ; $i++) {
- $maxat = $nomvais_at[$this->ENvais[$i][0]-1];
- $puissance += $maxat * $pourcentage/100 * $this->ENvais[$i][1];
- }
+ if ($attaquant) {
+ //Calcul du pourcentage de chaque vaisseau adverse
+ $vaisEff = array();
+ $nbvais = 0;
+ $countj = count($this->ENvais);
+ for ($i=0 ; $i<$countj ; $i++) {
+ $nbvais += $this->ENvais[$i][1];
+ }
+ for ($i=0 ; $i<$countj ; $i++) {
+ $vaisEff[$this->ENvais[$i][0]] = $this->ENvais[$i][1]/$nbvais;
+ }
- //Défenses
- $count = count($this->ENdef);
- for ($i=0 ; $i<$count ; $i++) {
- $maxat = $defense_at[$this->ENdef[$i][0]-1];
- $puissance += $maxat * $pourcentage/100 * $this->ENdef[$i][1];
+ $puissance = 0;
+ $count = count($this->ATvais);
+ for ($i=0 ; $i<$count ; $i++) {
+ $bonus = 0;
+ for ($j=0 ; $j<$countj ; $j++) {
+ $bonus += $nomvais_rf[$this->ATvais[$i][0]-1][$this->ENvais[$i][0]-1] * $vaisEff[$this->ENvais[$i][0]];
+ }
+ $maxat = $nomvais_at[$this->ATvais[$i][0]-1] * (1 + $armement/10);
+ $puissance += $maxat * $pourcentage/100 * $this->ATvais[$i][1] * $bonus;
+ }
+ return $puissance;
+ }
+ else {
+ //Calcul du pourcentage de chaque vaisseau adverse
+ $vaisEff = array();
+ $nbvais = 0;
+ $countj = count($this->ATvais);
+ for ($i=0 ; $i<$countj ; $i++) {
+ $nbvais += $this->ATvais[$i][1];
+ }
+ for ($i=0 ; $i<$countj ; $i++) {
+ $vaisEff[$this->ATvais[$i][0]] = $this->ATvais[$i][1]/$nbvais;
+ }
+
+ $puissance = 0;
+ $count = count($this->ENvais);
+ for ($i=0 ; $i<$count ; $i++) {
+ $bonus = 0;
+ for ($j=0 ; $j<$countj ; $j++) {
+ $bonus += $nomvais_rf[$this->ENvais[$i][0]-1][$this->ATvais[$i][0]-1] * $vaisEff[$this->ATvais[$i][0]];
+ }
+ $maxat = $nomvais_at[$this->ENvais[$i][0]-1] * (1 + $armement/10);
+ $puissance += $maxat * $pourcentage/100 * $this->ENvais[$i][1] * $bonus;
+ }
+
+ //Défenses
+ $count = count($this->ENdef);
+ for ($i=0 ; $i<$count ; $i++) {
+ $maxat = $defense_at[$this->ENdef[$i][0]-1] * (1 + $armement/10);
+ $puissance += $maxat * $pourcentage/100 * $this->ENdef[$i][1];
+ }
+ return $puissance;
}
- return $puissance;
}
}
@@ -398,14 +463,14 @@ class Combat {
$this->vaisContenuH = floor($this->vaisContenuH/$retirer);
}
if ($pillage) {
- $ressplus = pillage($this->ENvais['metal'], $this->ENvais['cristal'], $this->ENvais['hydrogene'], $this->vaisContenu - $this->vaisContenuM - $this->vaisContenuC - $this->vaisContenuH);
+ $ressplus = pillage($this->ENres['metal'], $this->ENres['cristal'], $this->ENres['hydrogene'], $this->vaisContenu - $this->vaisContenuM - $this->vaisContenuC - $this->vaisContenuH);
$this->vaisContenuM += $ressplus[0];
$this->vaisContenuC += $ressplus[1];
$this->vaisContenuH += $ressplus[2];
$this->pillage = array($ressplus[0], $ressplus[1], $ressplus[2]);
}
- return '`nb_vais` = \''.$nbvais.'\', `contenu_max` = \''.$this->vaisContenu.'\', `contenu_metal` = \''.$this->vaisContenuM.'\', `contenu_cristal` = \''.$this->vaisContenuC.'\', `contenu_hydrogene` = \''.$this->vaisContenuH.'\', `vaisseau_1` = \''.$vaisseau_1.'\', `vaisseau_2` = \''.$vaisseau_2.'\', `vaisseau_3` = \''.$vaisseau_3.'\', `vaisseau_4` = \''.$vaisseau_4.'\', `vaisseau_5` = \''.$vaisseau_5.'\', `vaisseau_6` = \''.$vaisseau_6.'\', `vaisseau_7` = \''.$vaisseau_7.'\', `vaisseau_8` = \''.$vaisseau_8.'\', `vaisseau_9` = \''.$vaisseau_9.'\', `vaisseau_10` = \''.$vaisseau_10.'\', `vaisseau_11` = \''.$vaisseau_11.'\', `vaisseau_12` = \''.$vaisseau_12.'\'';
+ return 'nb_vais = \''.$nbvais.'\', contenu_max = \''.$this->vaisContenu.'\', contenu_metal = \''.$this->vaisContenuM.'\', contenu_cristal = \''.$this->vaisContenuC.'\', contenu_hydrogene = \''.$this->vaisContenuH.'\', vaisseau_1 = \''.$vaisseau_1.'\', vaisseau_2 = \''.$vaisseau_2.'\', vaisseau_3 = \''.$vaisseau_3.'\', vaisseau_4 = \''.$vaisseau_4.'\', vaisseau_5 = \''.$vaisseau_5.'\', vaisseau_6 = \''.$vaisseau_6.'\', vaisseau_7 = \''.$vaisseau_7.'\', vaisseau_8 = \''.$vaisseau_8.'\', vaisseau_9 = \''.$vaisseau_9.'\', vaisseau_10 = \''.$vaisseau_10.'\', vaisseau_11 = \''.$vaisseau_11.'\', vaisseau_12 = \''.$vaisseau_12.'\'';
}
function pillageSimul($metal, $cristal, $hydrogene){
@@ -424,7 +489,7 @@ class Combat {
for($i=0 ; $i<$nb ; $i++) {
${'def_'.$this->ENdef[$i][0]} += $this->ENdef[$i][1];
}
- return '`vaisseau_1` = \''.$vaisseau_1.'\', `vaisseau_2` = \''.$vaisseau_2.'\', `vaisseau_3` = \''.$vaisseau_3.'\', `vaisseau_4` = \''.$vaisseau_4.'\', `vaisseau_5` = \''.$vaisseau_5.'\', `vaisseau_6` = \''.$vaisseau_6.'\', `vaisseau_7` = \''.$vaisseau_7.'\', `vaisseau_8` = \''.$vaisseau_8.'\', `vaisseau_9` = \''.$vaisseau_9.'\', `vaisseau_10` = \''.$vaisseau_10.'\', `vaisseau_11` = \''.$vaisseau_11.'\', `vaisseau_12` = \''.$vaisseau_12.'\', `def_1` = \''.$def_1.'\', `def_2` = \''.$def_2.'\', `def_3` = \''.$def_3.'\', `def_4` = \''.$def_4.'\', `def_5` = \''.$def_5.'\'';
+ return 'vaisseau_1 = \''.$vaisseau_1.'\', vaisseau_2 = \''.$vaisseau_2.'\', vaisseau_3 = \''.$vaisseau_3.'\', vaisseau_4 = \''.$vaisseau_4.'\', vaisseau_5 = \''.$vaisseau_5.'\', vaisseau_6 = \''.$vaisseau_6.'\', vaisseau_7 = \''.$vaisseau_7.'\', vaisseau_8 = \''.$vaisseau_8.'\', vaisseau_9 = \''.$vaisseau_9.'\', vaisseau_10 = \''.$vaisseau_10.'\', vaisseau_11 = \''.$vaisseau_11.'\', vaisseau_12 = \''.$vaisseau_12.'\', def_1 = \''.$def_1.'\', def_2 = \''.$def_2.'\', def_3 = \''.$def_3.'\', def_4 = \''.$def_4.'\', def_5 = \''.$def_5.'\'';
}
}
?>
\ No newline at end of file
diff --git a/onyx/hb_game/Class/class.rapport.php b/onyx/hb_game/Class/class.rapport.php
index 9231bed..161b21e 100644
--- a/onyx/hb_game/Class/class.rapport.php
+++ b/onyx/hb_game/Class/class.rapport.php
@@ -6,6 +6,7 @@
*
*/
class Rapport{
+ var $table = 'mail';
var $type = 0;
var $var = array();
var $utilA = 0;
@@ -18,6 +19,9 @@ class Rapport{
* @access protected
*/
function Rapport($type, $utilA, $utilB, $time){
+ global $table_mail;
+ $this->table = $table_mail;
+
$this->type = $type;
$this->utilA = $utilA;
$this->utilB = $utilB;
@@ -91,9 +95,11 @@ class Rapport{
}
$titreB = 'Rapport de contre-espionnage';
- $rapportB = 'Nous vennons d\'apprendre que notre planète : '.$this->var[0]['nom_planete'].'['.$this->var[0]['galaxie'].':'.$this->var[0]['ss'].':'.$this->var[0]['position'].'] a été la cible d\'un espionnage de la part de '.trouvNom($this->utilA);
+ $rapportB = 'Nous venons d\'apprendre que notre planète : '.$this->var[0]['nom_planete'].'['.$this->var[0]['galaxie'].':'.$this->var[0]['ss'].':'.$this->var[0]['position'].'] a été la cible d\'un espionnage de la part de '.trouvNom($this->utilA);
$temps = $this->timestamp;
+ $utilA = trouvNom($this->utilA);
+ $utilB = trouvNom($this->utilB);
$db = new bdd();
$db->connexion();
@@ -101,8 +107,10 @@ class Rapport{
$db->escape($titreB);
$db->escape($rapportA);
$db->escape($rapportB);
- $db->query("INSERT INTO mail VALUES('', '1', '".trouvNom($this->utilA)."', '', '$titreA', '$rapportA', '$temps')");
- $db->query("INSERT INTO mail VALUES('', '1', '".trouvNom($this->utilB)."', '', '$titreB', '$rapportB', '$temps')");
+ $db->escape($utilA);
+ $db->escape($utilB);
+ $db->query("INSERT INTO ".$this->table." VALUES('', '1', '$utilA', '', '$titreA', '$rapportA', '$temps')");
+ $db->query("INSERT INTO ".$this->table." VALUES('', '1', '$utilB', '', '$titreB', '$rapportB', '$temps')");
$db->deconnexion();
}
@@ -120,14 +128,19 @@ class Rapport{
$rapportB = 'Les vaisseaux de '.trouvNom($this->utilA).' ont déposé '.$this->var[1][0].' de '.$ressourc[0].', '.$this->var[1][1].' de '.$ressourc[1].' et '.$this->var[1][2].' d\''.$ressourc[2].' sur '.$this->var[0]['nom_planete'].'['.$this->var[0]['galaxie'].':'.$this->var[0]['ss'].':'.$this->var[0]['position'].']
';
$temps = $this->timestamp;
+ $utilA = trouvNom($this->utilA);
+ $utilB = trouvNom($this->utilB);
$db = new bdd();
$db->connexion();
$db->escape($titre);
$db->escape($rapportA);
$db->escape($rapportB);
- $db->query("INSERT INTO mail VALUES('', '1', '".trouvNom($this->utilA)."', '', '$titre', '$rapportA', '$temps')");
- $db->query("INSERT INTO mail VALUES('', '1', '".trouvNom($this->utilB)."', '', '$titre', '$rapportB', '$temps')");
+ $db->escape($utilA);
+ $db->escape($utilB);
+
+ $db->query("INSERT INTO ".$this->table." VALUES('', '1', '$utilA', '', '$titre', '$rapportA', '$temps')");
+ if ($utilA != $utilB) $db->query("INSERT INTO ".$this->table." VALUES('', '1', '$utilB', '', '$titre', '$rapportB', '$temps')");
$db->deconnexion();
}
@@ -138,12 +151,14 @@ class Rapport{
else $rapport = 'Nous n\'avons pas pu coloniser la planète ['.$this->var[0][0].':'.$this->var[0][1].':'.$this->var[0][2].'] car lorsque nous sommes arrivé sur place, elle était déjà colonisée.';
$temps = $this->timestamp;
+ $utilA = trouvNom($this->utilA);
$db = new bdd();
$db->connexion();
$db->escape($titre);
$db->escape($rapport);
- $db->query("INSERT INTO mail VALUES('', '1', '".trouvNom($this->utilA)."', '', '$titre', '$rapport', '$temps')");
+ $db->escape($utilA);
+ $db->query("INSERT INTO ".$this->table." VALUES('', '1', '$utilA', '', '$titre', '$rapport', '$temps')");
$db->deconnexion();
}
@@ -153,12 +168,14 @@ class Rapport{
$rapport = 'Vos vaisseaux récoltent '.$this->var[1][0].' de '.$ressourc[0].' et '.$this->var[1][1].' de '.$ressourc[1].' sur '.$this->var[0]['nom_planete'].'['.$this->var[0]['galaxie'].':'.$this->var[0]['ss'].':'.$this->var[0]['position'].']
';
$temps = $this->timestamp;
+ $utilA = trouvNom($this->utilA);
$db = new bdd();
$db->connexion();
$db->escape($titre);
$db->escape($rapport);
- $db->query("INSERT INTO mail VALUES('', '1', '".trouvNom($this->utilA)."', '', '$titre', '$rapport', '$temps')");
+ $db->escape($utilA);
+ $db->query("INSERT INTO ".$this->table." VALUES('', '1', '$utilA', '', '$titre', '$rapport', '$temps')");
$db->deconnexion();
}
@@ -229,6 +246,7 @@ class Rapport{
$rapportB->assign('termine', $this->var[6][0]);
$rapportB->assign('attaquantG', $this->var[6][1]);
+ $rapportB->assign('matchnul', $this->var[6][2]);
$rapportB->assign('pillage', $this->var[11]);
$rapportB->assign('vaisBC', $nomvais_bc);
@@ -254,6 +272,8 @@ class Rapport{
$titreA = 'Combat contre '.$this->var[4]['pseudo'];
$titreB = 'Combat contre '.$this->var[5]['pseudo'];
$temps = $this->timestamp;
+ $utilA = trouvNom($this->utilA);
+ $utilB = trouvNom($this->utilB);
$db = new bdd();
$db->connexion();
@@ -261,8 +281,10 @@ class Rapport{
$db->escape($titreB);
$db->escape($rapportA);
$db->escape($rapportB);
- $db->query("INSERT INTO mail VALUES('', '1', '".trouvNom($this->utilA)."', '', '$titreA', '$rapportA', '$temps')");
- $db->query("INSERT INTO mail VALUES('', '1', '".trouvNom($this->utilB)."', '', '$titreB', '$rapportB', '$temps')");
+ $db->escape($utilA);
+ $db->escape($utilB);
+ $db->query("INSERT INTO ".$this->table." VALUES('', '1', '$utilA', '', '$titreA', '$rapportA', '$temps')");
+ $db->query("INSERT INTO ".$this->table." VALUES('', '1', '$utilB', '', '$titreB', '$rapportB', '$temps')");
$db->deconnexion();
}
@@ -293,7 +315,7 @@ class Rapport{
$rapportA->assign('pillage', $this->var[11]);
$rapportA->assign('debris', $this->var[12]);
$rapportA->assign('infoPLUS', $this->var[14]);
- $rapportA->assign('infoPLUS2', $this->var[15]);
+ //$rapportA->assign('infoPLUS2', $this->var[15]);
$rapportA->assign('page', 'simulation');
$rapportA->assign('enligne', $this->var[13][0]);
@@ -333,7 +355,9 @@ class Rapport{
$db->connexion();
$db->escape($titreA);
$db->escape($rapportA);
- $db->query("INSERT INTO mail VALUES('', '1', '".trouvNom($this->utilA)."', '', '$titreA', '$rapportA', '$temps')");
+ $utilA = trouvNom($this->utilA);
+ $db->escape($utilA);
+ $db->query("INSERT INTO ".$this->table." VALUES('', '1', '$utilA', '', '$titreA', '$rapportA', '$temps')");
$db->deconnexion();
}
@@ -348,7 +372,9 @@ class Rapport{
$db->connexion();
$db->escape($titreA);
$db->escape($rapportA);
- $db->query("INSERT INTO mail VALUES('', '1', '".trouvNom($this->utilA)."', '', '$titreA', '$rapportA', '$temps')");
+ $utilA = trouvNom($this->utilA);
+ $db->escape($utilA);
+ $db->query("INSERT INTO ".$this->table." VALUES('', '1', '$utilA', '', '$titreA', '$rapportA', '$temps')");
$db->deconnexion();
}
}
diff --git a/onyx/hb_game/constructions.php b/onyx/hb_game/constructions.php
index 61ab623..e3dce9b 100644
--- a/onyx/hb_game/constructions.php
+++ b/onyx/hb_game/constructions.php
@@ -77,6 +77,6 @@ include_once(_FCORE."hb_game/Class/class.gerefile.php");
$bdd->query("UPDATE $table_planete SET file_tech = '$exportT' WHERE id = '$idPlan';");
}
if (!empty($outV)) $bdd->query("UPDATE $table_planete SET $outV, file_vais = '$exportV' WHERE id = '$idPlan';");
- if (!empty($out)) $bdd->query("UPDATE $table_planete SET $outD, file_ter = '$exportD' WHERE id = '$idPlan';");
+ if (!empty($outD)) $bdd->query("UPDATE $table_planete SET $outD, file_ter = '$exportD' WHERE id = '$idPlan';");
$bdd->deconnexion();
?>
\ No newline at end of file
diff --git a/onyx/hb_game/flottes.php b/onyx/hb_game/flottes.php
index 9d6b5b5..52deb34 100644
--- a/onyx/hb_game/flottes.php
+++ b/onyx/hb_game/flottes.php
@@ -35,9 +35,19 @@ for ($i = 0; $i < $nbFlottes; $i++) {
//On vérifie que la planète cible existe
$bdd->connexion();
- if ($mission != 3 && !$queryEN = $bdd->unique_query("SELECT id FROM $table_planete WHERE galaxie = '$end_galaxie' AND ss = '$end_ss' AND position = '$end_position';")) {
- $bdd->query("UPDATE $table_flottes SET effectue = '1' WHERE id = '$id_flotte';");
-//TODO La planète cible n'existe plus/pas, envoyer un mail au joueur et retourner la flotte
+ $queryEN = $bdd->unique_query("SELECT * FROM $table_planete WHERE galaxie = '$end_galaxie' AND ss = '$end_ss' AND position = '$end_position';");
+ if (!$queryEN && $mission != 3 && $mission != 6 && time() > $end_time) {
+ $bdd->query("UPDATE $table_flottes SET effectue = '1', mission = '6', ret_time = '".($end_time + $queryFlottes[$i]['end_time'])."' WHERE id = $id_flotte;");
+ $titreA = 'Impossible d\'effectuer la mission';
+ $bdd->escape($titreA);
+ $rapportA = 'La flotte '.$queryFlottes[$i]['nom_flotte'].' n\'a pas pu effectuer sa mission correctement car lorsqu\'elle est arrivée sur place, la planète était déserte.';
+ $bdd->escape($rapportA);
+ $db->query("INSERT INTO $table_mail VALUES('', '1', '".$queryFlottes[$i]['id_user']."', '', '$titreA', '$rapportA', '".$end_time."')");
+ $bdd->deconnexion();
+ continue;
+ }
+ elseif (!$queryEN && $mission != 3 && $queryFlottes[$i]['effectue'] != 1) {
+ $bdd->deconnexion();
continue;
}
$bdd->deconnexion();
@@ -47,16 +57,17 @@ for ($i = 0; $i < $nbFlottes; $i++) {
if ($queryFlottes[$i]['effectue'] != 1 && time() >= $queryFlottes[$i]['start_time'] + $queryFlottes[$i]['end_time'] && !empty($queryFlottes[$i]['end_time'])) {
//Mission Attaquer
if ($mission == 1) {
- $bdd->connexion();
require_once(_FCORE."hb_game/Class/class.combat.php");
+ $bdd->connexion();
//On regarde si le combat a déjà commencé
if ($queryFlottes[$i]['effectue'] == 2) {
- //On modifie le timestamp pour ne pas que le combat se déroule deux fois
- //$bdd->query("UPDATE $table_flottes_combats SET timestamp = '".(time()+10)."' WHERE refflotte = '$id_flotte';");
-
if ($queryCombat = $bdd->unique_query("SELECT * FROM $table_flottes_combats WHERE refflotte = '$id_flotte';")) {
//On vérifie si on lance le tour suivant ou non
if (time() >= $queryCombat['timestamp']) {
+ //On modifie le timestamp pour ne pas que le combat se déroule deux fois
+ $timebloque = time() + 5;
+ $bdd->query("UPDATE $table_flottes_combats SET timestamp = '$timebloque' WHERE refflotte = '$id_flotte';");
+
//Récupération du combat
$combat = unserialize($queryCombat['serialize']);
//Mise à jour des tactiques
@@ -69,13 +80,16 @@ for ($i = 0; $i < $nbFlottes; $i++) {
$time = time();
$bdd->query("UPDATE $table_flottes SET effectue = '1', ret_time = end_time + $time WHERE id = '$id_flotte';");
file_log("Erreur dans le script de combat, la flotte de ".trouvNom($queryFlottes[$i]['id_user'])."(".$queryFlottes[$i]['id_user'].") a été renvoyé au point de départ.", 1);
+ header('Location: ./?erreurcombat');
+ exit;
}
}
else {
//On génére un nouveau combat
- $combat = new Combat($queryFlottes[$i], $queryEN, $queryEN);
+ $combat = new Combat($queryFlottes[$i], $queryEN, $queryEN, array(trouvInfo($queryFlottes[$i]['id_user'], 'blindage'), trouvInfo($queryEN['id_user'], 'blindage')));
$bdd->query("UPDATE $table_flottes SET effectue = '2' WHERE id = '$id_flotte';");
}
+ $bdd->deconnexion();
while($combat->timestamp <= time()) {
//Préparation du rapport
@@ -89,33 +103,63 @@ for ($i = 0; $i < $nbFlottes; $i++) {
$rapport->addInfo($queryEN, 4);
$rapport->addInfo($queryFlottes[$i], 5);
- //Détermine à qui est le tour : attaquant ou défenseur
- if ($combat->Ntour%2) { //Tour impaire : tour attaquant
- //Récupération des paramètres de la tactique
- $arraytactique = tactique($combat->ATtactique);
+ //Récupération des paramètres de la tactique de l'attaquant
+ $arraytactique = tactique($combat->ATtactique);
+ //On régénére les boucliers de l'attaquant et on calcul l'attaque de l'attaquant
+ $ATattaque = $combat->calcAttaque($arraytactique[2] + $combat->regenereBC($arraytactique[1], true, !$arraytactique[3], trouvInfo($queryFlottes[$i]['id_user'], 'blindage')), true, trouvInfo($queryFlottes[$i]['id_user'], 'armement'));
- //Lancement du combat, si condition validée, attaquant vainceur
- if (@!$combat->attaquerVais($combat->calcAttaque($arraytactique[2] + $combat->regenereBC($arraytactique[1], true, !$arraytactique[3]), true), true)) {
- $bdd->query("DELETE FROM $table_flottes_combats WHERE refflotte = '$id_flotte';");
- $bdd->query("UPDATE $table_flottes SET ".$combat->exportAT(true).", effectue = '1', ret_time = '".$combat->timestamp."' + end_time WHERE id = '$id_flotte';");
- $bdd->query("UPDATE $table_planete SET ".$combat->exportEN().", metal = metal - '".$combat->pillage[0]."', cristal = cristal - '".$combat->pillage[1]."', hydrogene = hydrogene - '".$combat->pillage[2]."' WHERE id = '$ENidPlan';");
- $rapport->addInfo(array(true, true), 6);
- }
- else $rapport->addInfo(array(false, false), 6);
- }
- else { //Tour impaire : tour défenseur
- //Récupération des paramètres de la tactique
- $arraytactique = tactique($combat->ENtactique);
+ //Récupération des paramètres de la tactique du défenseur
+ $arraytactique = tactique($combat->ENtactique);
+ //On régénére les boucliers de l'attaquant et on calcul l'attaque de l'attaquant
+ $ENattaque = $combat->calcAttaque($arraytactique[2] + $combat->regenereBC($arraytactique[1], false, !$arraytactique[3], trouvInfo($queryEN['id_user'], 'blindage')), false, trouvInfo($queryEN['id_user'], 'armement'));
- //Lancement du combat, si condition validée, défenseur vainceur
- if (@!$combat->attaquerVais($combat->calcAttaque($arraytactique[2] + $combat->regenereBC($arraytactique[1], false, !$arraytactique[3]), false), false)) {
- $bdd->query("DELETE FROM $table_flottes_combats WHERE refflotte = '$id_flotte';");
- $bdd->query("DELETE FROM $table_flottes WHERE id = '$id_flotte';");
- $bdd->query("UPDATE $table_planete SET ".$combat->exportEN()." WHERE id = '$ENidPlan';");
- $rapport->addInfo(array(true, false), 6);
- }
- else $rapport->addInfo(array(false, false), 6);
+ //On lance l'attaque
+ @$ATresult = $combat->attaquerVais($ATattaque, true);
+ @$ENresult = $combat->attaquerVais($ENattaque, false);
+
+ if (!$ATresult && $ENresult) { //Attaquant vainqueur
+ $combat->ENres['metal'] = $queryEN['metal'];
+ $combat->ENres['cristal'] = $queryEN['cristal'];
+ $combat->ENres['hydrogene'] = $queryEN['hydrogene'];
+
+ $exportAT = $combat->exportAT(true); $ret_time = $combat->timestamp;
+ $exportEN = $combat->exportEN(); $pillm = $combat->pillage[0]; $pillc = $combat->pillage[1]; $pillh = $combat->pillage[2];
+ $bdd->connexion();
+ $bdd->query("UPDATE $table_flottes SET $exportAT, effectue = '1', ret_time = '$ret_time' + end_time WHERE id = '$id_flotte';");
+ $bdd->query("UPDATE $table_planete SET $exportEN, metal = metal - '$pillm', cristal = cristal - '$pillc', hydrogene = hydrogene - '$pillh' WHERE id = '$ENidPlan';");
+ $bdd->query("DELETE FROM $table_flottes_combats WHERE refflotte = '$id_flotte';");
+ $bdd->deconnexion();
+ $rapport->addInfo(array(true, true, false), 6);
}
+ elseif ($ATresult && !$ENresult) { //Défenseur vainqueur
+ $exportEN = $combat->exportEN();
+ $bdd->connexion();
+ $bdd->query("DELETE FROM $table_flottes_combats WHERE refflotte = '$id_flotte';");
+ $bdd->query("DELETE FROM $table_flottes WHERE id = '$id_flotte';");
+ $bdd->query("UPDATE $table_planete SET $exportEN WHERE id = '$ENidPlan';");
+ $bdd->deconnexion();
+ $rapport->addInfo(array(true, false, false), 6);
+ }
+ elseif (!$ATresult && !$ENresult) { //Match nul
+ $exportEN = $combat->exportEN();
+ $bdd->connexion();
+ $bdd->query("DELETE FROM $table_flottes_combats WHERE refflotte = '$id_flotte';");
+ $bdd->query("DELETE FROM $table_flottes WHERE id = '$id_flotte';");
+ $bdd->query("UPDATE $table_planete SET $exportEN WHERE id = '$ENidPlan';");
+ $bdd->deconnexion();
+ $rapport->addInfo(array(true, false, true), 6);
+ }
+ elseif ($combat->Ntour >= 250) { //Match nul
+ $exportAT = $combat->exportAT(false); $ret_time = $combat->timestamp;
+ $exportEN = $combat->exportEN(); $pillm = $combat->pillage[0]; $pillc = $combat->pillage[1]; $pillh = $combat->pillage[2];
+ $bdd->connexion();
+ $bdd->query("UPDATE $table_flottes SET $exportAT, effectue = '1', ret_time = '$ret_time' + end_time WHERE id = '$id_flotte';");
+ $bdd->query("UPDATE $table_planete SET $exportEN, metal = metal - '$pillm', cristal = cristal - '$pillc', hydrogene = hydrogene - '$pillh' WHERE id = '$ENidPlan';");
+ $bdd->query("DELETE FROM $table_flottes_combats WHERE refflotte = '$id_flotte';");
+ $bdd->deconnexion();
+ $rapport->addInfo(array(true, false, true), 6);
+ }
+ else $rapport->addInfo(array(false, false, false), 6);
$rapport->addInfo($combat->ATvais, 7);
$rapport->addInfo($combat->ENvais, 8);
@@ -135,24 +179,34 @@ for ($i = 0; $i < $nbFlottes; $i++) {
$debriM = $combat->debriM + $queryEN['debris_met'];
$debriC = $combat->debriC + $queryEN['debris_cri'];
+ $bdd->connexion();
+ $bdd->escape($debriM);
+ $bdd->escape($debriC);
+
+ $bdd->query("UPDATE $table_planete SET debris_met = $debriM, debris_cri = $debriC WHERE galaxie = '$end_galaxie' AND ss = '$end_ss' AND position = '$end_position';");
+
$combat->debriM = 0;
$combat->debriC = 0;
- $bdd->query("UPDATE $table_planete SET debris_met = '$debriM', debris_cri = '$debriC' WHERE galaxie = '$end_galaxie' AND ss = '$end_ss' AND position = '$end_position';");
-
if (!$rapport->var[6][0]) { //Si le combat n'est pas terminé
//On sérialise la classe pour l'exporter
$serialise = serialize($combat);
+ $bdd->escape($serialise);
//On enregistre le combat dans la base de données
- if ($queryFlottes[$i]['effectue']) $bdd->query("UPDATE $table_flottes_combats SET serialize = '$serialise', tactiqueAT = '0', tactiqueEN = '0', timestamp = '".$combat->timestamp."' WHERE refflotte = '$id_flotte';");
- else $bdd->query("INSERT INTO $table_flottes_combats VALUES(NULL, '".$queryFlottes[$i]['id']."', '".$combat->timestamp."', '$serialise', '0', '0');");
+ $timesuite = $combat->timestamp;
+ $idFleet = $queryFlottes[$i]['id'];
+ if ($queryFlottes[$i]['effectue']) $bdd->query("UPDATE $table_flottes_combats SET serialize = '$serialise', tactiqueAT = '0', tactiqueEN = '0', timestamp = '$timesuite' WHERE refflotte = '$id_flotte';");
+ else $bdd->query("INSERT INTO $table_flottes_combats VALUES(NULL, '$idFleet', '$timesuite', '$serialise', '0', '0');");
}
$bdd->deconnexion();
}
//Mission Transporter
elseif ($mission == 2) {
+ $Cmetal = $queryFlottes[$i]['contenu_metal'];
+ $Ccristal = $queryFlottes[$i]['contenu_cristal'];
+ $Chydrogene = $queryFlottes[$i]['contenu_hydrogene'];
$bdd->connexion();
- $bdd->query("UPDATE $table_planete SET metal = metal + '".$queryFlottes[$i]['contenu_metal']."', cristal = cristal + '".$queryFlottes[$i]['contenu_cristal']."', hydrogene = hydrogene + '".$queryFlottes[$i]['contenu_hydrogene']."' WHERE galaxie = '$end_galaxie' AND ss = '$end_ss' AND position = '$end_position';");
+ $bdd->query("UPDATE $table_planete SET metal = metal + '$Cmetal', cristal = cristal + '$Ccristal', hydrogene = hydrogene + '$Chydrogene' WHERE galaxie = '$end_galaxie' AND ss = '$end_ss' AND position = '$end_position';");
$bdd->query("UPDATE $table_flottes SET effectue = '1', contenu_metal = '0', contenu_cristal = '0', contenu_hydrogene = '0' WHERE id = '$id_flotte';");
$bdd->deconnexion();
@@ -166,42 +220,45 @@ for ($i = 0; $i < $nbFlottes; $i++) {
$rapport = new Rapport($mission, $queryFlottes[$i]['id_user'], 0, $end_time);
$rapport->addInfo(array($end_galaxie, $end_ss, $end_position), 0);
- if ($queryEN) $rapport->addInfo(false, 1);
- else {
- $rapport->addInfo(true, 1);
- $time = time();
- $cases = mt_rand(125,222);
- $image = mt_rand(1,15);
- $Cmetal = $queryFlottes[$i]['contenu_metal'] + 1000;
- $Ccristal = $queryFlottes[$i]['contenu_cristal'] + 700;
- $Chydrogene = $queryFlottes[$i]['contenu_hydrogene'];
+ $rapport->addInfo(true, 1);
+ $time = time();
+ $cases = mt_rand(125,222);
+ $image = mt_rand(1,15);
+ $Cmetal = $queryFlottes[$i]['contenu_metal'] + 1000;
+ $Ccristal = $queryFlottes[$i]['contenu_cristal'] + 700;
+ $Chydrogene = $queryFlottes[$i]['contenu_hydrogene'];
- //Calcul de l'isolement
- $nbPlan = count($queryPlanetes);
- if ($nbPlan >= 11) {
- switch($nbPlan){
- case 11: $tps = 2; break;
- case 12: $tps = 4; break;
- case 13: $tps = 6; break;
- case 14: $tps = 8; break;
- case 15: $tps = 12; break;
- case 16: $tps = 16; break;
- case 17: $tps = 20; break;
- default: $tps = 24;
- }
+ //Calcul de l'isolement
+ $nbPlan = count($queryPlanetes);
+ if ($nbPlan >= 11) {
+ switch($nbPlan){
+ case 11: $tps = 2; break;
+ case 12: $tps = 4; break;
+ case 13: $tps = 6; break;
+ case 14: $tps = 8; break;
+ case 15: $tps = 12; break;
+ case 16: $tps = 16; break;
+ case 17: $tps = 20; break;
+ default: $tps = 24;
}
- else $tps = 0;
- $debut = mktime(rand(0, 24-$tps), 0, 0, date('n'), date('j'), date('Y'));
- $fin = $debut + $tps * 3600;
-
- $bdd->connexion();
- $bdd->query("INSERT INTO $table_planete (id_user, isolement, nom_planete, galaxie, ss, position, image, cases, timestamp, metal, cristal, hydrogene) VALUES ('".$queryFlottes[$i]['id_user']."', '$debut $fin', 'Planète colonisée', '$end_galaxie', '$end_ss', '$end_position', '$image', '$cases', '$time', '$Cmetal', '$Ccristal', '$Chydrogene');");
+ }
+ else $tps = 0;
+ $debut = mktime(rand(0, 24-$tps), 0, 0, date('n'), date('j'), date('Y'));
+ $fin = $debut + $tps * 3600;
+ $idFlo = $queryFlottes[$i]['id_user'];
+ $bdd->connexion();
+ if ($bdd->query("INSERT INTO $table_planete (id_user, isolement, nom_planete, galaxie, ss, position, image, cases, timestamp, metal, cristal, hydrogene, hash_planete) VALUES ('$idFlo', '$debut $fin', 'Planète colonisée', '$end_galaxie', '$end_ss', '$end_position', '$image', '$cases', '$time', '$Cmetal', '$Ccristal', '$Chydrogene', SHA1(CONCAT('g',planete.galaxie,'s',planete.ss,'p',planete.position)));") === false) {
+ $rapport->addInfo(false, 1);
+ $bdd->query("UPDATE $table_flottes SET effectue = 1 WHERE id = $id_flotte;");
+ $bdd->deconnexion();
+ }
+ else {
if ($queryFlottes[$i]['nb_vais'] == 1) {
$queryFlottes[$i]['nb_vais'] = -1;
- $bdd->query("DELETE FROM $table_flottes WHERE id = '$id_flotte'");
+ $bdd->query("DELETE FROM $table_flottes WHERE id = $id_flotte");
}
- else $bdd->query("UPDATE $table_flottes SET effectue = '1', vaisseau_3 = vaisseau_3 - 1, nb_vais = nb_vais - 1, contenu_metal = '0', contenu_cristal = '0', contenu_hydrogene = '0' WHERE id = '$id_flotte';");
+ else $bdd->query("UPDATE $table_flottes SET effectue = 1, vaisseau_3 = vaisseau_3 - 1, nb_vais = nb_vais - 1, contenu_metal = 0, contenu_cristal = 0, contenu_hydrogene = 0 WHERE id = $id_flotte;");
$bdd->deconnexion();
}
$rapport->send();
@@ -255,9 +312,9 @@ for ($i = 0; $i < $nbFlottes; $i++) {
$id_att = $queryFlottes[$i]['id_user'];
$bdd->connexion();
- $bdd->query("UPDATE $table_flottes SET effectue = '1' WHERE id = '$id_flotte';");
- $resultatUD = $bdd->unique_query("SELECT * FROM $table_user WHERE id = '$id_userT';");
- $resultatUA = $bdd->unique_query("SELECT * FROM $table_user WHERE id = '$id_att';");
+ $bdd->query("UPDATE $table_flottes SET effectue = 1 WHERE id = $id_flotte;");
+ $resultatUD = $bdd->unique_query("SELECT * FROM $table_user WHERE id = $id_userT;");
+ $resultatUA = $bdd->unique_query("SELECT * FROM $table_user WHERE id = $id_att;");
$bdd->deconnexion();
$diffNiveau = $resultatUA['detection'] - $resultatUD['detection'] + floor($nbsondes/2);
@@ -297,15 +354,19 @@ for ($i = 0; $i < $nbFlottes; $i++) {
}
$bdd->connexion();
- if ($bdd->unique_query("SELECT * FROM $table_planete galaxie = '$fin_galaxie' AND ss = '$fin_systeme' AND position = '$fin_potision';")) {
+ if ($bdd->unique_query("SELECT * FROM $table_planete WHERE galaxie = '$fin_galaxie' AND ss = '$fin_systeme' AND position = '$fin_potision';")) {
$export = '';
$nbvais = 12;
for($j = 1; $j <= $nbvais; $j++) {
$export .= ', vaisseau_'.$j.' = vaisseau_'.$j.' + '.$queryFlottes[$i]['vaisseau_'.$j];
}
- $bdd->query("UPDATE $table_planete SET metal = metal + '".$queryFlottes[$i]['contenu_metal']."', cristal = cristal + '".$queryFlottes[$i]['contenu_cristal']."', hydrogene = hydrogene + '".$queryFlottes[$i]['contenu_hydrogene']."'$export WHERE galaxie = '$fin_galaxie' AND ss = '$fin_systeme' AND position = '$fin_potision';");
+ $Cmetal = $queryFlottes[$i]['contenu_metal'];
+ $Ccristal = $queryFlottes[$i]['contenu_cristal'];
+ $Chydrogene = $queryFlottes[$i]['contenu_hydrogene'];
+ $bdd->query("UPDATE $table_planete SET metal = metal + '$Cmetal', cristal = cristal + '$Ccristal', hydrogene = hydrogene + '$Chydrogene'$export WHERE galaxie = '$fin_galaxie' AND ss = '$fin_systeme' AND position = '$fin_potision';");
}
- $bdd->query("DELETE FROM $table_flottes WHERE id_user = '".$queryFlottes[$i]['id_user']."' AND id = '$id_flotte';");
+ $idUserFlotte = $queryFlottes[$i]['id_user'];
+ $bdd->query("DELETE FROM $table_flottes WHERE id_user = '$idUserFlotte' AND id = '$id_flotte';");
$bdd->query("DELETE FROM $table_flottes_combats WHERE refflotte = '$id_flotte';");
$bdd->deconnexion();
}
diff --git a/onyx/hb_game/function.php b/onyx/hb_game/function.php
index 3100f89..0a30da7 100644
--- a/onyx/hb_game/function.php
+++ b/onyx/hb_game/function.php
@@ -119,7 +119,7 @@ function txtTactique($tactique){
function tactique($tactique){
switch($tactique){
- case 1: return array(1,0,100,false); break;
+ case 1: return array(1,0,12,false); break;
case 2: return array(2,88,12,false); break;
case 3: return array(3,75,25,false); break;
case 4: return array(4,63,37,false); break;
@@ -140,7 +140,7 @@ function tactique($tactique){
case 19: return array(19,75,30,true); break;
case 20: return array(20,75,31,true); break;
case 21: return array(21,75,32,true); break;
- default: return array(1,0,100,false); break;
+ default: return array(1,0,10,false); break;
}
}
@@ -179,6 +179,14 @@ function vais_tempsDeplacement($start_galaxie,$start_ss,$start_position,$end_gal
return $temps/$coefvitesse;
}
+function vaisTempsdeplacement($start_amas, $start_ss, $start_pos, $end_amas,$end_ss, $end_pos, $vitessevaisseaux, $vitesseflotte=100) {
+ if($end_amas - $start_amas != 0) return (10+(35000/$vitesseFlotte*sqrt(abs($end_amas-$start_amas)*20000000/$vitesseVaisseaux)));
+ elseif($end_ss-$start_ss != 0) return (10+(35000/$vitesseFlotte*sqrt(2700000+abs($end_ss-$start_ss)*95000/$vitessevais)));
+ elseif($end_pos-$start_pos != 0) return (10+(35000/$vitesseFlotte*sqrt((abs($end_pos-$start_pos)*5000/$vitessevais))));
+ else return (10+(35000/$vitesseFlotte-sqrt(5000/$vitesseVais)));
+}
+
+
function vais_conso($tempsDeplacement,$nbvais = 1){
return intval($tempsDeplacement*$nbvais/20);
}
diff --git a/onyx/hb_game/jeu/admin/alliance.php b/onyx/hb_game/jeu/admin/alliance.php
index 07d3891..f7feaae 100644
--- a/onyx/hb_game/jeu/admin/alliance.php
+++ b/onyx/hb_game/jeu/admin/alliance.php
@@ -8,9 +8,14 @@ $titre = 'Vérification planète';
if (!empty($_GET['id']) && !empty($_GET['key']) && $_GET['key'] != 'id') {
$pagea = 'print_key';
$id_plan = $_GET['id'];
- $req = $chapeau->unique_query("SELECT * FROM `alliances` WHERE `id` = '$id_plan';");
- $template->assign('tableau', $req);
- $req = $chapeau->unique_query("DESCRIBE `alliances` `".$_GET['key']."`;");
+ $key = $_GET['key'];
+ $chapeau->connexion();
+ $chapeau->escape($id_plan);
+ $chapeau->escape($key);
+ $reqA = $chapeau->unique_query("SELECT * FROM $table_alliances WHERE id = '$id_plan';");
+ $req = $chapeau->unique_query("DESCRIBE $table_alliances $key;");
+ $chapeau->deconnexion();
+ $template->assign('tableau', $reqA);
$template->assign('type', explode('(', $req['Type']));
$template->assign('idPlan', $id_plan);
$template->assign('key', $_GET['key']);
@@ -20,15 +25,24 @@ elseif (!empty($_GET['id'])) {
if (isset($_POST['key']) && isset($_POST['mod'])) {
$key = $_POST['key'];
$mod = $_POST['mod'];
+ $chapeau->connexion();
$chapeau->escape($mod);
- $chapeau->query("UPDATE `alliances` SET `$key` = '$mod' WHERE `id` = '$id_plan';");
+ $chapeau->escape($id_plan);
+ $chapeau->query("UPDATE $table_alliances SET $key = '$mod' WHERE id = '$id_plan';");
+ $chapeau->deconnexion();
}
- $req = $chapeau->unique_query("SELECT * FROM `alliances` WHERE `id` = '$id_plan';");
+ $chapeau->connexion();
+ $req = $chapeau->unique_query("SELECT * FROM $table_alliances WHERE id = '$id_plan';");
+ $chapeau->deconnexion();
$template->assign('tableau', $req);
$template->assign('idPlan', $id_plan);
}
elseif (!empty($_GET['name'])) {
- $req = $chapeau->unique_query("SELECT * FROM `alliances` WHERE `nom` = '".mysql_real_escape_string($_GET['name'])."';");
+ $name = $_GET['name'];
+ $chapeau->connexion();
+ $chapeau->escape($name);
+ $req = $chapeau->unique_query("SELECT * FROM $table_alliances WHERE nom = '$name';");
+ $chapeau->deconnexion();
header('Location: admin.php?p=valliances&id='.$req['id']);
exit;
}
diff --git a/onyx/hb_game/jeu/admin/bandeau.php b/onyx/hb_game/jeu/admin/bandeau.php
index 24fe1f0..d9a6f41 100644
--- a/onyx/hb_game/jeu/admin/bandeau.php
+++ b/onyx/hb_game/jeu/admin/bandeau.php
@@ -8,10 +8,12 @@ $titre = 'Bandeau d\'information';
if (!empty($_GET['i']) && $_GET['i'] == 'add') {
if (!empty($_POST['texte']) && isset($_POST['color'])) {
$texte = $_POST['texte'];
- $chapeau->escape($texte);
$color = $_POST['color'];
+ $chapeau->connexion();
+ $chapeau->escape($texte);
$chapeau->escape($color);
- $chapeau->query("INSERT INTO `infoshead` VALUES (NULL, '$texte', '$color');");
+ $chapeau->query("INSERT INTO $table_infoshead VALUES (NULL, '$texte', '$color');");
+ $chapeau->deconnexion();
header('Location: admin.php?p=bandeau');
exit;
@@ -23,28 +25,36 @@ elseif (!empty($_GET['i'])) {
$id = $_GET['i'];
if (!empty($_POST['texte']) && isset($_POST['color'])) {
$texte = $_POST['texte'];
- $chapeau->escape($texte);
$color = $_POST['color'];
+ $chapeau->connexion();
+ $chapeau->escape($texte);
$chapeau->escape($color);
- $chapeau->query("UPDATE `infoshead` SET `texte` = '$texte', `color` = '$color' WHERE `id` = '$id';");
+ $chapeau->query("UPDATE $table_infoshead SET texte = '$texte', color = '$color' WHERE id = '$id';");
+ $chapeau->deconnexion();
header('Location: admin.php?p=bandeau');
exit;
}
- $req = $chapeau->unique_query("SELECT * FROM `infoshead` WHERE `id` = '$id';");
+ $chapeau->connexion();
+ $req = $chapeau->unique_query("SELECT * FROM $table_infoshead WHERE id = '$id';");
+ $chapeau->deconnexion();
$template->assign('mod', $req);
$template->assign('id', $id);
$pagea = 'bandeau_add';
}
elseif (!empty($_GET['d'])) {
$id = $_GET['d'];
- $chapeau->query("DELETE FROM `infoshead` WHERE `id` = '$id';");
+ $chapeau->connexion();
+ $chapeau->query("DELETE FROM $table_infoshead WHERE id = '$id';");
+ $chapeau->deconnexion();
header('Location: admin.php?p=bandeau');
exit;
}
else {
- $req = $chapeau->query("SELECT * FROM `infoshead`;");
+ $chapeau->connexion();
+ $req = $chapeau->query("SELECT * FROM $table_infoshead;");
+ $chapeau->deconnexion();
$template->assign('tableau', $req);
}
?>
\ No newline at end of file
diff --git a/onyx/hb_game/jeu/admin/ip.php b/onyx/hb_game/jeu/admin/ip.php
index a3a7b7c..f4ccaa6 100644
--- a/onyx/hb_game/jeu/admin/ip.php
+++ b/onyx/hb_game/jeu/admin/ip.php
@@ -3,10 +3,13 @@ if(!defined('INDEX')) { header('Location: ../'); exit; }
$pagea = 'vip';
$titre = 'Vérification IP';
-if (isset($_GET['ip'])) $req = mysql_query("SELECT * FROM `registre_identification` WHERE `ip` = '".$_GET['ip']."' ORDER BY `ip` ASC;");
-elseif (isset($_GET['util'])) $req = mysql_query("SELECT * FROM `registre_identification` WHERE `id_util` = '".$_GET['util']."' ORDER BY `ip` ASC;");
-elseif (isset($_GET['tri'])) $req = mysql_query("SELECT * FROM `registre_identification` ORDER BY `".$_GET['tri']."` ASC;");
-else $req = mysql_query("SELECT * FROM `registre_identification` ORDER BY `ip` ASC;");
+$chapeau->connexion();
+if (isset($_GET['ip'])) $req = mysql_query("SELECT * FROM $table_registre_identification WHERE ip = '".$_GET['ip']."' ORDER BY ip ASC;");
+elseif (isset($_GET['util'])) $req = mysql_query("SELECT * FROM $table_registre_identification WHERE id_util = '".$_GET['util']."' ORDER BY ip ASC;");
+elseif (isset($_GET['tri'])) $req = mysql_query("SELECT * FROM $table_registre_identification ORDER BY ".$_GET['tri']." ASC;");
+else $req = mysql_query("SELECT * FROM $table_registre_identification ORDER BY ip ASC;");
+$chapeau->deconnexion();
+
$anc = array('ip' => 0, 'id_util' => 0);
$tableau = array();
while($resultat = mysql_fetch_array($req)) {
diff --git a/onyx/hb_game/jeu/admin/joueur.php b/onyx/hb_game/jeu/admin/joueur.php
index 3cb5f68..28f55a2 100644
--- a/onyx/hb_game/jeu/admin/joueur.php
+++ b/onyx/hb_game/jeu/admin/joueur.php
@@ -8,9 +8,14 @@ $titre = 'Vérification planète';
if (!empty($_GET['id']) && !empty($_GET['key']) && $_GET['key'] != 'id') {
$pagea = 'print_key';
$id_plan = $_GET['id'];
- $req = $chapeau->unique_query("SELECT * FROM `user` WHERE `id` = '$id_plan';");
- $template->assign('tableau', $req);
- $req = $chapeau->unique_query("DESCRIBE `user` `".$_GET['key']."`;");
+ $key = $_GET['key'];
+ $chapeau->connexion();
+ $chapeau->escape($id_plan);
+ $chapeau->escape($key);
+ $reqJ = $chapeau->unique_query("SELECT * FROM $table_user WHERE id = '$id_plan';");
+ $req = $chapeau->unique_query("DESCRIBE $table_user $key;");
+ $chapeau->deconnexion();
+ $template->assign('tableau', $reqJ);
$template->assign('type', explode('(', $req['Type']));
$template->assign('idPlan', $id_plan);
$template->assign('key', $_GET['key']);
@@ -20,15 +25,24 @@ elseif (!empty($_GET['id'])) {
if (isset($_POST['key']) && isset($_POST['mod'])) {
$key = $_POST['key'];
$mod = $_POST['mod'];
+ $chapeau->connexion();
$chapeau->escape($mod);
- $chapeau->query("UPDATE `user` SET `$key` = '$mod' WHERE `id` = '$id_plan';");
+ $chapeau->escape($id_plan);
+ $chapeau->query("UPDATE $table_user SET $key = '$mod' WHERE id = '$id_plan';");
+ $chapeau->deconnexion();
}
- $req = $chapeau->unique_query("SELECT * FROM `user` WHERE `id` = '$id_plan';");
+ $chapeau->connexion();
+ $req = $chapeau->unique_query("SELECT * FROM $table_user WHERE id = '$id_plan';");
+ $chapeau->deconnexion();
$template->assign('tableau', $req);
$template->assign('idPlan', $id_plan);
}
elseif (!empty($_GET['name'])) {
- $req = $chapeau->unique_query("SELECT * FROM `user` WHERE `pseudo` = '".mysql_real_escape_string($_GET['name'])."';");
+ $name = $_GET['name'];
+ $chapeau->connexion();
+ $chapeau->escape($name);
+ $req = $chapeau->unique_query("SELECT * FROM $table_user WHERE pseudo = '$name';");
+ $chapeau->deconnexion();
header('Location: admin.php?p=vjoueurs&id='.$req['id']);
exit;
}
diff --git a/onyx/hb_game/jeu/admin/mail.php b/onyx/hb_game/jeu/admin/mail.php
index 31ccc97..c52cc85 100644
--- a/onyx/hb_game/jeu/admin/mail.php
+++ b/onyx/hb_game/jeu/admin/mail.php
@@ -8,9 +8,12 @@ $titre = 'Demandes et problèmes de la galaxie';
if (!empty($_GET['w']) || !empty($_GET['x'])) {
if (!empty($_GET['w'])) $id = $_GET['w'];
else $id = $_GET['x'];
- $req = $chapeau->unique_query("SELECT * FROM `$table_ope_mail` WHERE `id` = '$id';");
- if ($req['statut'] >= 6) $chapeau->query("UPDATE `$table_ope_mail` SET `statut` = '0' WHERE `id` = '$id';");
- else $chapeau->query("UPDATE `$table_ope_mail` SET `statut` = `statut` + 1 WHERE `id` = '$id';");
+ $chapeau->connexion();
+ $chapeau->escape($id);
+ $req = $chapeau->unique_query("SELECT $table_user.pseudo, $table_ope_mail.statut, $table_ope_mail.time, $table_ope_mail.titre, $table_ope_mail.contenu, $table_ope_mail.id FROM $table_ope_mail INNER JOIN $table_user ON $table_user.id = $table_ope_mail.id_user WHERE $table_ope_mail.id = '$id';");
+ if ($req['statut'] >= 6) $chapeau->query("UPDATE $table_ope_mail SET statut = '0' WHERE id = '$id';");
+ else $chapeau->query("UPDATE $table_ope_mail SET statut = statut + 1 WHERE id = '$id';");
+ $chapeau->deconnexion();
if (isset($_GET['x'])) header('Location: admin.php?p=courrier&v='.$id);
else header('Location: admin.php?p=courrier');
@@ -18,7 +21,10 @@ if (!empty($_GET['w']) || !empty($_GET['x'])) {
}
elseif (!empty($_GET['v'])) {
$id = $_GET['v'];
- $req = $chapeau->unique_query("SELECT * FROM `$table_ope_mail` WHERE `id` = '$id';");
+ $chapeau->connexion();
+ $chapeau->escape($id);
+ $req = $chapeau->unique_query("SELECT $table_user.pseudo, $table_ope_mail.statut, $table_ope_mail.time, $table_ope_mail.titre, $table_ope_mail.contenu, $table_ope_mail.id FROM $table_ope_mail INNER JOIN $table_user ON $table_user.id = $table_ope_mail.id_user WHERE $table_ope_mail.id = '$id';");
+ $chapeau->deconnexion();
$template->assign('req', $req);
$template->assign('id', $id);
@@ -26,14 +32,18 @@ elseif (!empty($_GET['v'])) {
}
elseif (!empty($_GET['d']) && $sess->values['auth_level'] >= 5) {
$id = $_GET['d'];
- $chapeau->query("DELETE FROM `$table_ope_mail` WHERE `id` = '$id';");
+ $chapeau->connexion();
+ $chapeau->escape($id);
+ $chapeau->query("DELETE FROM $table_ope_mail WHERE id = '$id';");
+ $chapeau->deconnexion();
header('Location: admin.php?p=courrier');
exit;
}
else {
- $req = $chapeau->query("SELECT * FROM `$table_ope_mail` ORDER BY `time` DESC;");
-//TODO JOIN dans la requete SQL pour avoir le nom du joueur qui a encoyé le message
+ $chapeau->connexion();
+ $req = $chapeau->query("SELECT $table_user.pseudo, $table_ope_mail.statut, $table_ope_mail.time, $table_ope_mail.titre, $table_ope_mail.contenu, $table_ope_mail.id FROM $table_ope_mail INNER JOIN $table_user ON $table_user.id = $table_ope_mail.id_user ORDER BY $table_ope_mail.time DESC;");
+ $chapeau->connexion();
$template->assign('mails', $req);
}
?>
\ No newline at end of file
diff --git a/onyx/hb_game/jeu/admin/planete.php b/onyx/hb_game/jeu/admin/planete.php
index fc8d737..49ce36b 100644
--- a/onyx/hb_game/jeu/admin/planete.php
+++ b/onyx/hb_game/jeu/admin/planete.php
@@ -8,9 +8,14 @@ $titre = 'Vérification planète';
if (!empty($_GET['id']) && !empty($_GET['key']) && $_GET['key'] != 'id') {
$pagea = 'print_key';
$id_plan = $_GET['id'];
- $req = $chapeau->unique_query("SELECT * FROM `planete` WHERE `id` = '$id_plan';");
- $template->assign('tableau', $req);
- $req = $chapeau->unique_query("DESCRIBE `planete` `".$_GET['key']."`;");
+ $key = $_GET['key'];
+ $chapeau->connexion();
+ $chapeau->escape($id_plan);
+ $chapeau->escape($key);
+ $reqp = $chapeau->unique_query("SELECT * FROM $table_planete WHERE id = '$id_plan';");
+ $req = $chapeau->unique_query("DESCRIBE $table_planete $key;");
+ $chapeau->deconnexion();
+ $template->assign('tableau', $reqp);
$template->assign('type', explode('(', $req['Type']));
$template->assign('idPlan', $id_plan);
$template->assign('key', $_GET['key']);
@@ -20,15 +25,27 @@ elseif (!empty($_GET['id'])) {
if (isset($_POST['key']) && isset($_POST['mod'])) {
$key = $_POST['key'];
$mod = $_POST['mod'];
+ $chapeau->connexion();
$chapeau->escape($mod);
- $chapeau->query("UPDATE `planete` SET `$key` = '$mod' WHERE `id` = '$id_plan';");
+ $chapeau->query("UPDATE $table_planete SET $key = '$mod' WHERE id = '$id_plan';");
+ $chapeau->deconnexion();
}
- $req = $chapeau->unique_query("SELECT * FROM `planete` WHERE `id` = '$id_plan';");
+ $chapeau->connexion();
+ $req = $chapeau->unique_query("SELECT * FROM $table_planete WHERE id = '$id_plan';");
+ $chapeau->deconnexion();
$template->assign('tableau', $req);
$template->assign('idPlan', $id_plan);
}
elseif (isset($_GET['amas']) && isset($_GET['ss']) && !empty($_GET['pos'])) {
- $req = $chapeau->unique_query("SELECT * FROM `planete` WHERE `galaxie` = '".$_GET['amas']."' AND `ss` = '".$_GET['ss']."' AND `position` = '".$_GET['pos']."';");
+ $amas = $_GET['amas'];
+ $ss = $_GET['ss'];
+ $pos = $_GET['pos'];
+ $chapeau->connexion();
+ $chapeau->escape($amas);
+ $chapeau->escape($ss);
+ $chapeau->escape($pos);
+ $req = $chapeau->unique_query("SELECT * FROM $table_planete WHERE galaxie = '$amas' AND ss = '$ss' AND position = '$pos';");
+ $chapeau->deconnexion();
header('Location: admin.php?p=vplanetes&id='.$req['id']);
exit;
}
diff --git a/onyx/hb_game/jeu/admin/prendre_controle.php b/onyx/hb_game/jeu/admin/prendre_controle.php
index 106c871..cb614ef 100644
--- a/onyx/hb_game/jeu/admin/prendre_controle.php
+++ b/onyx/hb_game/jeu/admin/prendre_controle.php
@@ -6,13 +6,27 @@ $pagea = 'erreur';
$template->assign('linkpage', 'cjoueurs');
if ($sess->values['auth_level'] >= 5 && !empty($_GET['id'])) {
- $sess->values['id'] = $_GET['id'];
- $sess->put();
+ $name = $_GET['id'];
+ $chapeau->connexion();
+ $chapeau->escape($name);
+ $req = $chapeau->unique_query("SELECT auth_level FROM $table_user WHERE id = '$name';");
+ $chapeau->deconnexion();
+ if ($req['auth_level'] >= 3) {
+ $template->assign('message', 'Vous ne pouvez pas prendre le contrôle de cet utilisateur !');
+ }
+ else {
+ $sess->values['id'] = $_GET['id'];
+ $sess->put();
- $template->assign('message', 'Vous contrôlez maintenant le joueur '.$_GET['id'].'.
Pensez à sélectionner sa planète !');
+ $template->assign('message', 'Vous contrôlez maintenant le joueur '.$_GET['id'].'.
Pensez à sélectionner sa planète !');
+ }
}
elseif (!empty($_GET['name'])) {
- $req = $chapeau->unique_query("SELECT * FROM `$table_user` WHERE `pseudo` = '".mysql_real_escape_string($_GET['name'])."';");
+ $name = $_GET['name'];
+ $chapeau->connexion();
+ $chapeau->escape($name);
+ $req = $chapeau->unique_query("SELECT id FROM $table_user WHERE pseudo = '$name';");
+ $chapeau->deconnexion();
header('Location: admin.php?p=cjoueurs&id='.$req['id']);
exit;
}
diff --git a/onyx/hb_game/jeu/admin/rapport.php b/onyx/hb_game/jeu/admin/rapport.php
index 61414ca..663ae70 100644
--- a/onyx/hb_game/jeu/admin/rapport.php
+++ b/onyx/hb_game/jeu/admin/rapport.php
@@ -7,12 +7,16 @@ $titre = 'Vérification planète';
if (!empty($_GET['name'])) {
$id_user = $_GET['name'];
- $req = $chapeau->query("SELECT * FROM `mail` WHERE `destinataire` = '$id_user' AND `expediteur` = '' ORDER BY `temps` DESC;");
+ $chapeau->connexion();
+ $req = $chapeau->query("SELECT * FROM $table_mail WHERE destinataire = '$id_user' AND expediteur = '' ORDER BY temps DESC;");
+ $chapeau->deconnexion();
$template->assign('tableau', $req);
$template->assign('idPlan', $id_user);
}
elseif (!empty($_GET['id'])) {
- $req = $chapeau->unique_query("SELECT * FROM `user` WHERE `id` = '".mysql_real_escape_string($_GET['id'])."';");
+ $chapeau->connexion();
+ $req = $chapeau->unique_query("SELECT * FROM $table_user WHERE id = '".mysql_real_escape_string($_GET['id'])."';");
+ $chapeau->deconnexion();
header('Location: admin.php?p=vrapports&name='.$req['pseudo']);
exit;
}
diff --git a/onyx/hb_game/jeu/admin/sanction_joueur.php b/onyx/hb_game/jeu/admin/sanction_joueur.php
index ae42daa..05559ca 100644
--- a/onyx/hb_game/jeu/admin/sanction_joueur.php
+++ b/onyx/hb_game/jeu/admin/sanction_joueur.php
@@ -6,17 +6,31 @@ $pagea = 'erreur';
$template->assign('linkpage', 'sjoueurs');
if (!empty($_GET['id']) && !empty($_GET['sanc']) && !empty($_GET['raisonmv'])) {
- $id_plan = $_GET['id'];
- $sanc = $_GET['sanc'];
$raisonmv = $_GET['raisonmv'];
+ $id_plan = $_GET['id'];
+ $chapeau->connexion();
$chapeau->escape($raisonmv);
- $time = time() + $_GET['sanc'] * 86400 - 259200;
- $chapeau->query("UPDATE `user` SET `mv` = '2', `last_visite` = '$time', `raisonmv` = '$raisonmv' WHERE `id` = '$id_plan';");
+ $chapeau->escape($id_plan);
- $template->assign('message', 'Le joueur a été placé en mode vacances !');
+ if ($_GET['sanc'] == 'definitif' || $_GET['sanc'] == 'définitif') {
+ $chapeau->query("UPDATE $table_user SET mv = '3', raisonmv = '$raisonmv' WHERE id = '$id_plan';");
+ $chapeau->deconnexion();
+ }
+ else {
+ $sanc = $_GET['sanc'];
+ $time = time() + $_GET['sanc'] * 86400 - 259200;
+ $chapeau->query("UPDATE $table_user SET mv = '2', last_visite = '$time', raisonmv = '$raisonmv' WHERE id = '$id_plan';");
+ $chapeau->deconnexion();
+
+ $template->assign('message', 'Le joueur a été placé en mode vacances !');
+ }
}
elseif (!empty($_GET['name']) && !empty($_GET['sanc']) && isset($_GET['raisonmv'])) {
- $req = $chapeau->unique_query("SELECT * FROM `$table_user` WHERE `pseudo` = '".mysql_real_escape_string($_GET['name'])."';");
+ $name = $_GET['name'];
+ $chapeau->connexion();
+ $chapeau->escape($name);
+ $req = $chapeau->unique_query("SELECT * FROM $table_user WHERE pseudo = '$name';");
+ $chapeau->deconnexion();
header('Location: admin.php?p=sjoueurs&sanc='.$_GET['sanc'].'&raisonmv='.$_GET['raisonmv'].'&id='.$req['id']);
exit;
}
diff --git a/onyx/hb_game/jeu/admin/supprimer_joueur.php b/onyx/hb_game/jeu/admin/supprimer_joueur.php
index 978c5ba..3a58143 100644
--- a/onyx/hb_game/jeu/admin/supprimer_joueur.php
+++ b/onyx/hb_game/jeu/admin/supprimer_joueur.php
@@ -7,19 +7,28 @@ $pagea = 'erreur';
if ($sess->values['auth_level'] >= 5 && !empty($_GET['id'])) {
$id = $_GET['id'];
+ $chapeau->connexion();
$chapeau->escape($id);
- $req = $chapeau->unique_query("SELECT * FROM `$table_user` WHERE `id` = '$id';");
+ $req = $chapeau->unique_query("SELECT * FROM $table_user WHERE id = '$id';");
if ($req) {
- $chapeau->unique_query("DELETE FROM `$table_mail` WHERE `destinataire` = '".trouvNom($id)."';");
- $chapeau->unique_query("DELETE FROM `$table_flottes` WHERE `id_user` = '$id';");
- $chapeau->unique_query("DELETE FROM `$table_planete` WHERE `id_user` = '$id';");
- $chapeau->unique_query("DELETE FROM `$table_user` WHERE `id` = '$id';");
+ $chapeau->query("DELETE FROM $table_mail WHERE destinataire = '".trouvNom($id)."';");
+ $chapeau->query("DELETE FROM $table_flottes WHERE id_user = '$id';");
+ $chapeau->query("DELETE FROM $table_planete WHERE id_user = '$id';");
+ $chapeau->query("DELETE FROM $table_user WHERE id = '$id';");
+ $chapeau->deconnexion();
$template->assign('message', 'Le joueur a été supprimé du jeu ainsi que toutes les données le concernant !');
}
- else $template->assign('message', 'Le joueur n\'a pas été trouvé !');
+ else {
+ $chapeau->deconnexion();
+ $template->assign('message', 'Le joueur n\'a pas été trouvé !');
+ }
}
elseif (!empty($_GET['name'])) {
- $req = $chapeau->unique_query("SELECT * FROM `$table_user` WHERE `pseudo` = '".mysql_real_escape_string($_GET['name'])."';");
+ $name = $_GET['name'];
+ $chapeau->connexion();
+ $chapeau->escape($name);
+ $req = $chapeau->unique_query("SELECT * FROM $table_user WHERE pseudo = '$name';");
+ $chapeau->deconnexion();
header('Location: admin.php?p=djoueurs&id='.$req['id']);
exit;
}
diff --git a/onyx/hb_game/jeu/admin/version.php b/onyx/hb_game/jeu/admin/version.php
index 7ead522..0f3a664 100644
--- a/onyx/hb_game/jeu/admin/version.php
+++ b/onyx/hb_game/jeu/admin/version.php
@@ -8,11 +8,14 @@ $titre = 'Versions';
if (!empty($_GET['i']) && $_GET['i'] == 'add' && $sess->values['auth_level'] >= 7) {
if (!empty($_POST['version']) && !empty($_POST['contenu'])) {
$version = $_POST['version'];
- $chapeau->escape($version);
$contenu = $_POST['contenu'];
- $chapeau->escape($contenu);
$temps = time();
- $chapeau->query("INSERT INTO `version` VALUES (NULL, '$version', '$contenu', '$temps', '".trouvNom($id_user)."');");
+ $nom_user = trouvNom($id_user);
+ $chapeau->connexion();
+ $chapeau->escape($version);
+ $chapeau->escape($contenu);
+ $chapeau->query("INSERT INTO $table_version (version, contenu, temps, pseudo) VALUES ('$version', '$contenu', '$temps', '$nom_user');");
+ $chapeau->deconnexion();
header('Location: admin.php?p=version');
exit;
@@ -24,28 +27,35 @@ elseif (!empty($_GET['i'])) {
$id = $_GET['i'];
if (!empty($_POST['version']) && !empty($_POST['contenu'])) {
$version = $_POST['version'];
- $chapeau->escape($version);
$contenu = $_POST['contenu'];
+ $chapeau->connexion();
+ $chapeau->escape($version);
$chapeau->escape($contenu);
- $chapeau->query("UPDATE `version` SET `version` = '$version', `contenu` = '$contenu' WHERE `id` = '$id';");
+ $chapeau->query("UPDATE $table_version SET version = '$version', contenu = '$contenu' WHERE id = '$id';");
+ $chapeau->deconnexion();
header('Location: admin.php?p=version');
exit;
}
- $req = $chapeau->unique_query("SELECT * FROM `version` WHERE `id` = '$id';");
+ $req = $chapeau->unique_query("SELECT * FROM $table_version WHERE id = '$id';");
$template->assign('mod', $req);
$template->assign('id', $id);
$pagea = 'version_add';
}
elseif (!empty($_GET['d']) && $sess->values['auth_level'] >= 7) {
$id = $_GET['d'];
- $chapeau->query("DELETE FROM `version` WHERE `id` = '$id';");
+ $chapeau->connexion();
+ $chapeau->escape($id);
+ $chapeau->query("DELETE FROM $table_version WHERE id = '$id';");
+ $chapeau->deconnexion();
header('Location: admin.php?p=version');
exit;
}
else {
- $req = $chapeau->query("SELECT * FROM `version` ORDER BY `temps` DESC;");
+ $chapeau->connexion();
+ $req = $chapeau->query("SELECT * FROM $table_version ORDER BY temps DESC;");
+ $chapeau->deconnexion();
$template->assign('tableau', $req);
}
?>
\ No newline at end of file
diff --git a/onyx/hb_game/jeu/alliances.php b/onyx/hb_game/jeu/alliances.php
index 87e2803..02b1ca4 100644
--- a/onyx/hb_game/jeu/alliances.php
+++ b/onyx/hb_game/jeu/alliances.php
@@ -3,8 +3,8 @@ if(!defined('INDEX')) { header('Location: ../'); exit; }
$titre = 'Alliance';
include_once(_FCORE."hb_game/Class/class.rapport.php");
-$bdd->connexion();
//Si le joueur est membre de l'alliance
+$bdd->connexion();
if (!empty($queryUser['id_alliance']) && $queryUser['id_grade_alliance'] != -1 && $alliance = $bdd->unique_query("SELECT * FROM $table_alliances WHERE id = '".$queryUser['id_alliance']."';")) {
//On détermine les accès du joueur
if ($alliance['fondateur'] == $queryUser['id'])
@@ -17,7 +17,10 @@ if (!empty($queryUser['id_alliance']) && $queryUser['id_grade_alliance'] != -1 &
'alliance' => 1
);
elseif ($queryUser['id_grade_alliance'] != 0) {
- $grade = $bdd->unique_query("SELECT * FROM $table_alliances_grade WHERE id = '".$queryUser['id_grade_alliance']."';");
+ $id_grade_alliance = $queryUser['id_grade_alliance'];
+ $bdd->connexion();
+ $grade = $bdd->unique_query("SELECT * FROM $table_alliances_grade WHERE id = '$id_grade_alliance';");
+ $bdd->deconnexion();
$access = array(
'fondateur' => 0,
'chat' => $grade['gest_chat'],
@@ -44,12 +47,18 @@ if (!empty($queryUser['id_alliance']) && $queryUser['id_grade_alliance'] != -1 &
if ($_GET['q'] == 'adm_chat' && $access['chat']) {
if (!empty($_GET['i'])) {
$i = floor($_GET['i']);
- $bdd->query("DELETE FROM $table_alliances_chat WHERE id = '$i' AND id_alliance = '".$alliance['id']."';");
+ $alliId = $alliance['id'];
+ $bdd->connexion();
+ $bdd->query("DELETE FROM $table_alliances_chat WHERE id = '$i' AND id_alliance = '$alliId';");
+ $bdd->deconnexion();
header('Location: ?p=alliances&q=adm_chat#chat');
exit;
}
$page = 'alliance_adm_chat';
- $chat = $bdd->query("SELECT * FROM $table_alliances_chat WHERE id_alliance = '".$alliance['id']."' ORDER BY id DESC LIMIT 50;");
+ $alliId = $alliance['id'];
+ $bdd->connexion();
+ $chat = $bdd->query("SELECT * FROM $table_alliances_chat WHERE id_alliance = '$alliId' ORDER BY id DESC LIMIT 50;");
+ $bdd->deconnexion();
for($i = 0; $i < $bdd->num_rows ; $i++){
$chat[$i]['emetteur'] = trouvNom($chat[$i]['emetteur']);
}
@@ -64,10 +73,16 @@ if (!empty($queryUser['id_alliance']) && $queryUser['id_grade_alliance'] != -1 &
if (!empty($_POST['id'])) {
$id = $_POST['id'];
+ $bdd->connexion();
$bdd->escape($id);
@$bdd->query("UPDATE $table_alliances_grade SET nom = '$nom', description = '$description', gest_chat = '".ceil($_POST['gest_chat'])."', gest_rang = '".ceil($_POST['gest_rang'])."', gest_membre = '".ceil($_POST['gest_membre'])."', gest_ecriture = '".ceil($_POST['gest_ecriture'])."', gest_admin = '".ceil($_POST['gest_alliance'])."' WHERE id = '$id' AND id_alliance = '".$alliance['id']."';");
+ $bdd->deconnexion();
+ }
+ else {
+ $bdd->connexion();
+ @$bdd->query("INSERT INTO $table_alliances_grade VALUES (NULL, '".$alliance['id']."', '$nom', '$description', '".ceil($_POST['gest_chat'])."', '".ceil($_POST['gest_rang'])."', '".ceil($_POST['gest_membre'])."', '".ceil($_POST['gest_ecriture'])."', '".ceil($_POST['gest_alliance'])."');");
+ $bdd->deconnexion();
}
- else @$bdd->query("INSERT INTO $table_alliances_grade VALUES (NULL, '".$alliance['id']."', '$nom', '$description', '".ceil($_POST['gest_chat'])."', '".ceil($_POST['gest_rang'])."', '".ceil($_POST['gest_membre'])."', '".ceil($_POST['gest_ecriture'])."', '".ceil($_POST['gest_alliance'])."');");
header('Location: ?p=alliances&q=adm_grades');
exit;
}
@@ -76,13 +91,16 @@ if (!empty($queryUser['id_alliance']) && $queryUser['id_grade_alliance'] != -1 &
elseif (!empty($_GET['i'])) {
$page = 'alliance_adm_grades_add';
$i = $_GET['i'];
+ $bdd->connexion();
$bdd->escape($i);
$mod = $bdd->unique_query("SELECT * FROM $table_alliances_grade WHERE id = '$i' AND id_alliance = '".$alliance['id']."';");
+ $bdd->deconnexion();
$template->assign('mod', $mod);
}
else {
$page = 'alliance_adm_grades';
- $grades = $bdd->query("SELECT * FROM $table_alliances_grade WHERE id_alliance = '".$alliance['id']."' ORDER BY nom ASC;");
+ $alliId = $alliance['id'];
+ $grades = $bdd->query("SELECT * FROM $table_alliances_grade WHERE id_alliance = '$alliId' ORDER BY nom ASC;");
$template->assign('grades', $grades);
}
}
@@ -91,7 +109,12 @@ if (!empty($queryUser['id_alliance']) && $queryUser['id_grade_alliance'] != -1 &
else $mod = 'interne';
if (!empty($_POST['type']) && isset($_POST['textarea'])) {
$mod = mysql_real_escape_string($_POST['type']);
- $bdd->query("UPDATE $table_alliances SET $mod = '".mysql_real_escape_string($_POST['textarea'])."' WHERE id = '".$alliance['id']."'");
+ $text = $_POST['textarea'];
+ $alliId = $alliance['id'];
+ $bdd->connexion();
+ $bdd->escape($text);
+ $bdd->query("UPDATE $table_alliances SET $mod = '$text' WHERE id = '$alliId';");
+ $bdd->deconnexion();
header('Location: ?p=alliances&q=adm_ecrits&t='.$mod);
exit;
}
@@ -102,17 +125,24 @@ if (!empty($queryUser['id_alliance']) && $queryUser['id_grade_alliance'] != -1 &
elseif ($_GET['q'] == 'adm_mp' && $access['membre']) {
if (!empty($_POST['textarea'])) {
$titre = $_POST['titre'];
- $bdd->escape($titre);
$texte = $_POST['textarea'];
- $bdd->escape($texte);
$expediteur = '['.$alliance['tag'].'] '.trouvNom($id_user).'';
+ $alliId = $alliance['id'];
+ $bdd->connexion();
+ $bdd->escape($titre);
+ $bdd->escape($texte);
$bdd->escape($expediteur);
- $membres = $bdd->query("SELECT * FROM $table_user WHERE id_alliance = '".$alliance['id']."';");
+ $membres = $bdd->query("SELECT * FROM $table_user WHERE id_alliance = '$alliId';");
+ $bdd->deconnexion();
$nbmembre = $bdd->num_rows;
$temps = time();
+ $bdd->connexion();
for($i = 0; $i < $nbmembre; $i++){
- $bdd->query("INSERT INTO $table_mail VALUES(NULL, 1, '".$membres[$i]['pseudo']."', '$expediteur', '$titre', '$texte', '$temps');");
+ $pseudos = $membres[$i]['pseudo'];
+ $bdd->escape($pseudos);
+ $bdd->query("INSERT INTO $table_mail VALUES(NULL, 1, '$pseudos', '$expediteur', '$titre', '$texte', '$temps');");
}
+ $bdd->deconnexion();
$template->assign('message','Le message privé a été communiqué à tous les joueurs de l\'alliance.');
$template->assign('couleur','green');
$template->display('game/erreur.tpl');
@@ -123,7 +153,20 @@ if (!empty($queryUser['id_alliance']) && $queryUser['id_grade_alliance'] != -1 &
elseif ($_GET['q'] == 'adm_alliance' && $access['alliance']) {
$recharg = false;
if (isset($_POST['defcon']) && isset($_POST['defcon_txt']) && isset($_POST['etat_inscription']) && isset($_POST['image']) && isset($_POST['url'])) {
- $bdd->query("UPDATE $table_alliances SET defcon = '".mysql_real_escape_string($_POST['defcon'])."', defcon_txt = '".mysql_real_escape_string($_POST['defcon_txt'])."', etat_inscription = '".mysql_real_escape_string($_POST['etat_inscription'])."', image = '".mysql_real_escape_string($_POST['image'])."', url = '".mysql_real_escape_string($_POST['url'])."' WHERE id = '".$alliance['id']."'");
+ $defcon = $_POST['defcon'];
+ $defcon_txt = $_POST['defcon_txt'];
+ $etat_inscription = $_POST['etat_inscription'];
+ $image = $_POST['image'];
+ $url = $_POST['url'];
+ $alliId = $alliance['id'];
+ $bdd->connexion();
+ $bdd->escape($defcon);
+ $bdd->escape($defcon_txt);
+ $bdd->escape($etat_inscription);
+ $bdd->escape($image);
+ $bdd->escape($url);
+ $bdd->query("UPDATE $table_alliances SET defcon = '$defcon', defcon_txt = '$defcon_txt', etat_inscription = '$etat_inscription', image = '$image', url = '$url' WHERE id = '$alliId';");
+ $bdd->deconnexion();
$recharg = true;
}
if (isset($_POST['fondateur']) && $alliance['fondateur'] == $id_user && isset($_POST['pswd_admin'])) {
@@ -136,11 +179,15 @@ if (!empty($queryUser['id_alliance']) && $queryUser['id_grade_alliance'] != -1 &
exit;
}
elseif (!empty($_POST['pswd_admin']) && $queryUser['mdp'] == sha1(strtoupper($queryUser['pseudo']).':'.$_POST['pswd_admin']) && isset($sess->values['forcealli']) && $sess->values['forcealli']) {
- $bdd->query("DELETE FROM $table_alliances WHERE id = '".$alliance['id']."';");
- $membres = $bdd->query("SELECT * FROM $table_user WHERE id_alliance = '".$alliance['id']."';");
- for($i = 0; $i < $bdd->num_rows; $i++){
- $bdd->query("UPDATE $table_user SET id_alliance = '0', id_grade_alliance = '0' WHERE id = '".$membres[$i]['id']."' AND id_alliance = '".$alliance['id']."';");
+ $alliId = $alliance['id'];
+ $bdd->connexion();
+ $bdd->query("DELETE FROM $table_alliances WHERE id = '$alliId';");
+ $membres = $bdd->query("SELECT * FROM $table_user WHERE id_alliance = '$alliId';");
+ $nbeff = $bdd->num_rows;
+ for($i = 0; $i < $nbeff; $i++){
+ $bdd->query("UPDATE $table_user SET id_alliance = '0', id_grade_alliance = '0' WHERE id = '".$membres[$i]['id']."' AND id_alliance = '$alliId';");
}
+ $bdd->deconnexion();
$template->assign('message','L\'alliance a été dissoute avec succès.');
$template->assign('couleur','green');
$template->display('game/erreur.tpl');
@@ -153,7 +200,9 @@ if (!empty($queryUser['id_alliance']) && $queryUser['id_grade_alliance'] != -1 &
$template->display('game/erreur.tpl');
exit;
}
+ $bdd->connexion();
$bdd->query("UPDATE $table_alliances SET fondateur = '".mysql_real_escape_string($_POST['fondateur'])."' WHERE id = '".$alliance['id']."'");
+ $bdd->deconnexion();
$recharg = true;
}
if ($recharg) {
@@ -169,7 +218,9 @@ if (!empty($queryUser['id_alliance']) && $queryUser['id_grade_alliance'] != -1 &
$etatinscripti = array('1', '0');
$template->assign('etatinscript', $etatinscript);
$template->assign('etatinscripti', $etatinscripti);
+ $bdd->connexion();
$membres = $bdd->query("SELECT * FROM $table_user WHERE id_alliance = '".$alliance['id']."';");
+ $bdd->deconnexion();
$membre = array();
$membrei = array();
for($i = 0; $i < $bdd->num_rows; $i++){
@@ -184,29 +235,39 @@ if (!empty($queryUser['id_alliance']) && $queryUser['id_grade_alliance'] != -1 &
if (!empty($_POST['user']) && isset($_POST['grade'])) {
$user = floor($_POST['user']);
$grade = floor($_POST['grade']);
+ $bdd->connexion();
$bdd->query("UPDATE $table_user SET id_grade_alliance = '".$grade."' WHERE id = '".$user."' AND id_alliance = '".$alliance['id']."';");
+ $bdd->deconnexion();
}
elseif (!empty($_GET['u'])) {
$user = floor($_GET['u']);
+ $bdd->connexion();
$bdd->query("UPDATE $table_user SET id_grade_alliance = '0', id_alliance = '0' WHERE id = '".$user."' AND id_alliance = '".$alliance['id']."';");
+ $bdd->deconnexion();
//TODO Envoyer un message au joueur renvoyé
}
elseif (!empty($_GET['accept'])) {
$user = floor($_GET['accept']);
+ $bdd->connexion();
$verif = $bdd->unique_query("SELECT * FROM $table_alliances_attente WHERE id_alliance = '".$alliance['id']."' AND id_membre = '$user';");
if ($verif) {
$bdd->query("UPDATE $table_user SET id_grade_alliance = '0', id_alliance = '".$alliance['id']."' WHERE id = '".$user."' AND id_alliance = '0';");
$bdd->query("DELETE FROM $table_alliances_attente WHERE id_membre = '$user';");
//TODO Envoyer un message au joueur renvoyé
}
+ $bdd->deconnexion();
}
elseif (!empty($_GET['refus'])) {
$user = floor($_GET['refus']);
+ $bdd->connexion();
$bdd->query("DELETE FROM $table_alliances_attente WHERE id_membre = '$user' AND id_alliance = '".$alliance['id']."';");
+ $bdd->deconnexion();
//TODO Envoyer un message au joueur renvoyé
}
$page = 'alliance_adm_membres';
+ $bdd->connexion();
$grades = $bdd->query("SELECT * FROM $table_alliances_grade WHERE id_alliance = '".$alliance['id']."' ORDER BY nom ASC;");
+ $bdd->deconnexion();
$grade = array(); $gradei = array();
for($i = 0; $i < $bdd->num_rows ; $i++){
$grade[] = $grades[$i]['nom'];
@@ -214,34 +275,42 @@ if (!empty($queryUser['id_alliance']) && $queryUser['id_grade_alliance'] != -1 &
}
$template->assign('grades', $grade);
$template->assign('gradei', $gradei);
+ $bdd->connexion();
$membres = $bdd->query("SELECT * FROM $table_user WHERE id_alliance = '".$alliance['id']."';");
- $template->assign('membres', $membres);
$candidats = $bdd->query("SELECT * FROM $table_alliances_attente WHERE id_alliance = '".$alliance['id']."' ORDER BY timestamp ASC;");
+ $bdd->deconnexion();
+ $template->assign('membres', $membres);
$template->assign('candidats', $candidats);
$template->assign('alliance', $alliance);
}
elseif ($_GET['q'] == 'liste') {
$page = 'alliance_liste';
- if (isset($_GET['t']) && $_GET['t'] == 'classement') $membres = $bdd->query("SELECT * FROM $table_user WHERE id_alliance = '".$alliance['id']."' ORDER BY place_points DESC;");
+ $bdd->connexion();
+ if (isset($_GET['t']) && $_GET['t'] == 'classement') $membres = $bdd->query("SELECT * FROM $table_user WHERE id_alliance = '".$alliance['id']."' ORDER BY place_points ASC;");
else $membres = $bdd->query("SELECT * FROM $table_user WHERE id_alliance = '".$alliance['id']."';");
$nb = $bdd->num_rows;
for ($i = 0; $i < $nb; $i++) {
$grade = $bdd->unique_query("SELECT * FROM $table_alliances_grade WHERE id = '".$membres[$i]['id_grade_alliance']."';");
$membres[$i]['grade_alliance'] = $grade['nom'];
}
+ $bdd->deconnexion();
$template->assign('membres', $membres);
}
elseif ($_GET['q'] == 'chat') {
if (isset($_POST['msg'])) {
$message = $_POST['msg'];
+ $bdd->connexion();
$bdd->escape($message);
if (!empty($message)) $bdd->query("INSERT INTO $table_alliances_chat VALUES (NULL, '".$alliance['id']."', '$id_user', '".time()."', '$message')");
+ $bdd->deconnexion();
header('Location: ?p=alliances&q=chat#chat');
exit;
}
$page = 'alliance_chat';
//Chat
+ $bdd->connexion();
$chat = $bdd->query("SELECT * FROM $table_alliances_chat WHERE id_alliance = '".$alliance['id']."' ORDER BY id DESC LIMIT 30");
+ $bdd->deconnexion();
for($i = 0; $i < $bdd->num_rows ; $i++){
$chat[$i]['emetteur'] = trouvNom($chat[$i]['emetteur']);
$chat[$i]['message'] = bbcode(htmlspecialchars($chat[$i]['message']));
@@ -250,16 +319,20 @@ if (!empty($queryUser['id_alliance']) && $queryUser['id_grade_alliance'] != -1 &
}
else {
$page = 'alliance_accueil';
- $alliance['presentation'] = bbcode(htmlspecialchars($alliance['presentation']));
- $alliance['texte_interne'] = bbcode(htmlspecialchars($alliance['texte_interne']));
+ $alliance['presentation'] = bbcode(htmlspecialchars($alliance['presentation']),1);
+ $alliance['texte_interne'] = bbcode(htmlspecialchars($alliance['texte_interne']),1);
$template->assign('alliance', $alliance);
+ $bdd->connexion();
$membres = $bdd->query("SELECT * FROM $table_user WHERE id_alliance = '".$alliance['id']."';");
+ $bdd->deconnexion();
$template->assign('nbmembre', $bdd->num_rows);
if (!isset($grade)) $template->assign('grade', 0);
else $template->assign('grade', $grade);
//Chat
+ $bdd->connexion();
$chat = $bdd->query("SELECT * FROM $table_alliances_chat WHERE id_alliance = '".$alliance['id']."' ORDER BY id DESC LIMIT 30;");
+ $bdd->deconnexion();
for($i = 0; $i < $bdd->num_rows ; $i++){
$chat[$i]['emetteur'] = trouvNom($chat[$i]['emetteur']);
$chat[$i]['message'] = htmlspecialchars($chat[$i]['message']);
@@ -267,7 +340,7 @@ if (!empty($queryUser['id_alliance']) && $queryUser['id_grade_alliance'] != -1 &
$template->assign('chat', $chat);
}
}
-elseif (!empty($queryUser['id_alliance']) && !$bdd->unique_query("SELECT * FROM $table_alliances WHERE id = '".$queryUser['id_alliance']."';")) {
+elseif (!empty($queryUser['id_alliance']) && $bdd->connexion() && !$bdd->unique_query("SELECT * FROM $table_alliances WHERE id = '".$queryUser['id_alliance']."';")) {
$bdd->query("UPDATE $table_user SET id_alliance = '0', id_grade_alliance = '0' WHERE id = '$id_user';");
header('Location: ?p=alliances');
exit;
@@ -281,32 +354,42 @@ else {
$by = mysql_real_escape_string($_POST['by']);
$search = mysql_real_escape_string($_POST['search']);
+ $bdd->connexion();
$recherche = $bdd->query("SELECT * FROM $table_alliances WHERE $by LIKE '%$search%' ORDER BY nom ASC;");
+ $bdd->deconnexion();
$template->assign('recherches', $recherche);
}
elseif ($_GET['q'] == 'liste' && !empty($_GET['i'])) {
$page = 'alliance_liste';
- if (isset($_GET['t']) && $_GET['t'] == 'classement') $membres = $bdd->query("SELECT * FROM $table_user WHERE id_alliance = '".$_GET['i']."' ORDER BY place_points DESC;");
- else $membres = $bdd->query("SELECT * FROM $table_user WHERE id_alliance = '".$_GET['i']."';");
+ $id = $_GET['i'];
+ $bdd->connexion();
+ $bdd->escape($id);
+ if (isset($_GET['t']) && $_GET['t'] == 'classement') $membres = $bdd->query("SELECT * FROM $table_user WHERE id_alliance = '$id' ORDER BY place_points DESC;");
+ else $membres = $bdd->query("SELECT * FROM $table_user WHERE id_alliance = '$id';");
$nb = $bdd->num_rows;
for ($i = 0; $i < $nb; $i++) {
$grade = $bdd->unique_query("SELECT * FROM $table_alliances_grade WHERE id = '".$membres[$i]['id_grade_alliance']."';");
$membres[$i]['grade_alliance'] = $grade['nom'];
}
+ $bdd->connexion();
$template->assign('membres', $membres);
$template->assign('i', $_GET['i']);
}
elseif ($_GET['q'] == 'view' && !empty($_GET['i'])) {
- $id = mysql_real_escape_string($_GET['i']);
+ $id = $_GET['i'];
+ $bdd->connexion();
+ $bdd->escape($id);
$alliance = $bdd->unique_query("SELECT * FROM $table_alliances WHERE id = '$id';");
if ($alliance) {
$page = 'alliance_nm_view';
- $alliance['presentation'] = bbcode(htmlspecialchars($alliance['presentation']));
+ $alliance['presentation'] = bbcode(htmlspecialchars($alliance['presentation']),1);
$template->assign('alliance', $alliance);
$membres = $bdd->query("SELECT * FROM $table_user WHERE id_alliance = '".$alliance['id']."';");
+ $bdd->deconnexion();
$template->assign('nbmembre', $bdd->num_rows);
}
else {
+ $bdd->deconnexion();
$template->assign('message','Impossible de trouver cette alliance !');
$template->assign('couleur','red');
$template->display('game/erreur.tpl');
@@ -314,22 +397,29 @@ else {
}
}
elseif ($_GET['q'] == 'postuler' && !empty($_GET['i'])) {
- $id = mysql_real_escape_string($_GET['i']);
+ $id = $_GET['i'];
+ $bdd->connexion();
+ $bdd->escape($id);
$alliance = $bdd->unique_query("SELECT * FROM $table_alliances WHERE id = '$id';");
if (!empty($_POST['message'])) {
$bdd->query("INSERT INTO $table_alliances_attente VALUES (NULL, '".$alliance['id']."', '".$id_user."', '".$queryUser['pseudo']."', '".time()."', '".mysql_real_escape_string($_POST['message'])."');");
+ $bdd->deconnexion();
$template->assign('message','Votre candidature a été envoyée avec succès à l\'alliance : '.$alliance['nom']);
$template->assign('couleur','green');
$template->display('game/erreur.tpl');
exit;
}
+ $bdd->deconnexion();
$template->assign('alliance', $alliance);
$template->assign('alliancei', $id);
$page = 'alliance_nm_postuler';
}
elseif ($_GET['q'] == 'signer' && !empty($_GET['i'])) {
- $lien = mysql_real_escape_string($_GET['i']);
+ $lien = $_GET['i'];
+ $bdd->connexion();
+ $bdd->escape($lien);
$alliance = $bdd->unique_query("SELECT * FROM $table_alliances_creation WHERE lien = '$lien';");
+ $bdd->deconnexion();
if ($alliance) {
if (empty($alliance['signatures'])) $signataires = array();
else $signataires = explode(';', $alliance['signatures']);
@@ -343,10 +433,16 @@ else {
else {
//Si c'est la 4ème signature, on crée l'alliance
if (count($signataires) >= 3) {
- $bdd->query("INSERT INTO $table_alliances VALUES (NULL, '".$alliance['tag']."', '".$alliance['nom']."', '".$alliance['fondateur']."', 'A faire', 'A faire', '', '', 1, 1, '');");
+ $tag = $alliance['tag'];
+ $nom = $alliance['nom'];
+ $bdd->connexion();
+ $bdd->escape($tag);
+ $bdd->escape($nom);
+ $bdd->query("INSERT INTO $table_alliances VALUES (NULL, '$tag', '$nom', '".$alliance['fondateur']."', 'A faire', 'A faire', '', '', 1, 1, '');");
$bdd->query("DELETE FROM $table_alliances_creation WHERE lien = '$lien';");
$alliance = $bdd->unique_query("SELECT * FROM $table_alliances WHERE nom = '".$alliance['nom']."' AND fondateur = '".$alliance['fondateur']."';");
+ $bdd->deconnexion();
file_log("Création de l'alliance : ".$alliance['nom']." par ".$id_user." (fondateur : ".$alliance['fondateur'].") après validation de 4 signatures : ".implode(', ', $signataires).$id_user);
@@ -355,11 +451,16 @@ else {
$rapport->send();
$nbsign = count($signataires);
+ $id_alli = $alliance['id'];
+ $fondateur = $alliance['fondateur'];
+ $bdd->connexion();
for ($i=0 ; $i<$nbsign ; $i++) {
- $bdd->query("UPDATE $table_user SET id_alliance = '".$alliance['id']."' WHERE id = '".$signataires[$i]."';");
+ $sign = $signataires[$i];
+ $bdd->query("UPDATE $table_user SET id_alliance = '$id_alli' WHERE id = '$sign';");
}
- $bdd->query("UPDATE $table_user SET id_alliance = '".$alliance['id']."' WHERE id = '$id_user';");
- $bdd->query("UPDATE $table_user SET id_alliance = '".$alliance['id']."' WHERE id = '".$alliance['fondateur']."';");
+ $bdd->query("UPDATE $table_user SET id_alliance = '$id_alli' WHERE id = '$id_user';");
+ $bdd->query("UPDATE $table_user SET id_alliance = '$id_alli' WHERE id = '$fondateur';");
+ $bdd->deconnexion();
$template->assign('message','Votre signature a bien été ajoutée à la déclaration de l\'alliance.
L\'alliance a désormais suffisament de signature pour être créée !');
$template->assign('couleur','green');
@@ -369,8 +470,10 @@ else {
else {
$signataires[] = $id_user;
$signataires = implode(';', $signataires);
+ $bdd->connexion();
$bdd->query("UPDATE $table_alliances_creation SET signatures = '$signataires' WHERE lien = '$lien';");
$bdd->query("UPDATE $table_user SET id_alliance = 'c".$alliance['id']."' WHERE id = '$id_user';");
+ $bdd->deconnexion();
$template->assign('message','Votre signature a bien été ajoutée à la déclaration de l\'alliance.');
$template->assign('couleur','green');
$template->display('game/erreur.tpl');
@@ -388,8 +491,6 @@ else {
}
elseif ($_GET['q'] == 'fonder') {
if (!empty($_POST['nom']) && !empty($_POST['tag'])) {
- $nom = mysql_real_escape_string(htmlentities($_POST['nom']));
- $tag = mysql_real_escape_string(htmlentities($_POST['tag']));
if (strlen($nom) < 5) {
$template->assign('message','Le nom d\'alliance que vous avez choisit est trop court.');
@@ -419,9 +520,24 @@ else {
$template->display('game/erreur.tpl');
exit;
}
+ elseif (ereg('\'', $tag) || ereg('\'', $nom)) {
+ $template->assign('message','Le nom d\'alliance ou le tag que vous avez choisit contient des caractères non autorisé.');
+ $template->assign('script','');
+ $template->assign('couleur','red');
+ $template->display('game/erreur.tpl');
+ exit;
+ }
+
+ $bdd->connexion();
+ $nom = htmlentities($_POST['nom']);
+ $tag = htmlentities($_POST['tag']);
+
+ $bdd->escape($nom);
+ $bdd->escape($tag);
$test = $bdd->query("SELECT * FROM alliances WHERE nom = '$nom' AND tag = '$tag';");
$test2 = $bdd->query("SELECT * FROM alliances_creation WHERE nom = '$nom' AND tag = '$tag';");
+ $bdd->deconnexion();
if ($test || $test2) {
$template->assign('message','Le nom ou le tag que vous avez choisit est déjà utilisé par une alliance.');
$template->assign('script','');
@@ -431,7 +547,9 @@ else {
}
else {
$lien = sha1($tag.'Hb$'.$nom.'☺Ø'.$id_user.rand());
+ $bdd->connexion();
$bdd->query("INSERT INTO alliances_creation VALUES(NULL, '$lien' ,'$tag', '$nom', '$id_user', '');");
+ $bdd->deconnexion();
$rapport = new Rapport(7, $id_user, 0, time());
$rapport->addInfo($lien, 0);
@@ -449,5 +567,4 @@ else {
$page = 'alliance_nm_accueil';
}
}
-$bdd->deconnexion();
?>
\ No newline at end of file
diff --git a/onyx/hb_game/jeu/arbre.php b/onyx/hb_game/jeu/arbre.php
index 1c2856d..786826a 100644
--- a/onyx/hb_game/jeu/arbre.php
+++ b/onyx/hb_game/jeu/arbre.php
@@ -5,6 +5,11 @@ $titre = 'Arbre des technologies';
if (empty($_GET['q'])) $_GET['q'] = '';
$template->assign('defaut',$_GET['q']);
+if (empty($_GET['r']) || ($_GET['r'] != 'humain' && $_GET['r'] != 'covenant')) $_GET['r'] = $queryUser['race'];
+
+$race = $_GET['r'];
+if ($race != $queryUser['race']) include(_FCORE."hb_game/noms.php");
+$template->assign('raceAff', $race);
$TEMP_batiments = array();
$nb=count($batiment);
diff --git a/onyx/hb_game/jeu/bourse.php b/onyx/hb_game/jeu/bourse.php
new file mode 100644
index 0000000..b90bb4a
--- /dev/null
+++ b/onyx/hb_game/jeu/bourse.php
@@ -0,0 +1,30 @@
+connexion();
+$queryBourseMetal = $bdd->unique_query("SELECT SUM(nombre) AS nombre, SUM(prix)/COUNT(prix) AS prix FROM $table_bourse WHERE type = 0;");
+$queryBourseCristal = $bdd->unique_query("SELECT SUM(nombre) AS nombre, SUM(prix)/COUNT(prix) AS prix FROM $table_bourse WHERE type = 1;");
+$queryBourseHydrogene = $bdd->unique_query("SELECT SUM(nombre) AS nombre, SUM(prix)/COUNT(prix) AS prix FROM $table_bourse WHERE type = 2;");
+$bdd->deconnexion();
+
+if (isset($_POST['metal']) is_numeric($_POST['metal'])) {
+ $demand = floor($_POST['metal'])
+ if ($queryPlanete[$ressourceArgent] >= $queryBourseMetal['prix']*$demand && ) {
+ $queryBMetal = $bdd->query("SELECT id, nombre FROM $table_bourse WHERE type = 0 ORDER BY prix ASC;");
+
+ $dispo =
+ for($i = 0; ($i < $bdd->num_rows || ); $i++){
+ $queryBMetal[$i]
+ }
+
+ $argent = $queryPlanete[$ressourceArgent] - $queryBourseMetal['prix']*$demand;
+ $bdd->query("UPDATE $table_planete SET $ressourceArgent = $argent WHERE id = '$idPlan';");
+ }
+}
+
+$template->assign('bourse', array($queryBourseMetal, $queryBourseCristal, $queryBourseHydrogene));
+?>
\ No newline at end of file
diff --git a/onyx/hb_game/jeu/bugs.php b/onyx/hb_game/jeu/bugs.php
index dcb4a44..a08f81f 100644
--- a/onyx/hb_game/jeu/bugs.php
+++ b/onyx/hb_game/jeu/bugs.php
@@ -6,11 +6,13 @@ $titre = 'Rapports de bugs';
if (!empty($_POST['page']) && !empty($_POST['description'])) {
$pages = $_POST['page'];
$description = $_POST['description'];
+ $pseudo = $queryUser['pseudo'];
+ $time = time();
$bdd->connexion();
$bdd->escape($pages);
$bdd->escape($description);
- $bdd->query("INSERT INTO `$table_bug` VALUES(NULL, '".$queryUser['pseudo']."', '".time()."', '$pages', '$description');");
+ $bdd->query("INSERT INTO $table_bug VALUES(NULL, '$pseudo', '$time', '$pages', '$description');");
$bdd->deconnexion();
header('Location: ?p=bugs');
exit;
@@ -19,14 +21,14 @@ elseif (isset($_GET['a']) && $_GET['a'] == 'del' && isset($_GET['i']) && $sess->
$i = $_GET['i'];
$bdd->connexion();
$bdd->escape($i);
- $bdd->query("DELETE FROM `$table_bug` WHERE `id` = '$i' LIMIT 1");
+ $bdd->query("DELETE FROM $table_bug WHERE id = '$i' LIMIT 1;");
$bdd->deconnexion();
header('Location: ?p=bugs');
exit;
}
$bdd->connexion();
-$bugs = $bdd->query("SELECT id, pseudo, temps, page, description FROM `$table_bug` ORDER BY `id` DESC");
+$bugs = $bdd->query("SELECT id, pseudo, temps, page, description FROM $table_bug ORDER BY id DESC");
$bdd->deconnexion();
$TEMP_bugs = array();
for ($i = 0; $i < $bdd->num_rows; $i++) {
diff --git a/onyx/hb_game/jeu/carte.php b/onyx/hb_game/jeu/carte.php
index b205401..0e1286a 100644
--- a/onyx/hb_game/jeu/carte.php
+++ b/onyx/hb_game/jeu/carte.php
@@ -44,10 +44,13 @@ 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 id_user, nom_planete, debris_met, debris_cri FROM $table_planete WHERE galaxie = '$g' AND ss = '$s'AND position = '$i';");
+ $d = $bdd->unique_query("SELECT id_user, nom_planete, debris_met, debris_cri FROM $table_planete WHERE galaxie = '$g' AND ss = '$s' AND position = '$i';");
$id_user = $d['id_user'];
$e = $bdd->unique_query("SELECT pseudo, race, id_alliance FROM $table_user WHERE id = '$id_user'");
- if ($e['id_alliance']) $eA = $bdd->unique_query("SELECT tag FROM $table_alliances WHERE id = '".$e['id_alliance']."';");
+ if ($e['id_alliance']) {
+ $alliId = $e['id_alliance'];
+ $eA = $bdd->unique_query("SELECT tag FROM $table_alliances WHERE id = '$alliId';");
+ }
else $eA = false;
$bdd->deconnexion();
if ($e['race'] == 'covenant') $ra = '(c)';
diff --git a/onyx/hb_game/jeu/chantierspatial.php b/onyx/hb_game/jeu/chantierspatial.php
index 912b372..d0cbfef 100644
--- a/onyx/hb_game/jeu/chantierspatial.php
+++ b/onyx/hb_game/jeu/chantierspatial.php
@@ -21,14 +21,28 @@ $titre = 'Chantier spatial';
}
//Lancement d'une nouvelle construction
- if (isset($_GET['v']) && !empty($nomvaisn[$_GET['v']]) && !empty($_POST['nombre'])) {
+ if (isset($_GET['v']) && is_numeric($_GET['v']) && !empty($nomvaisn[$_GET['v']]) && !empty($_POST['nombre'])) {
$i = $_GET['v'];
$nbv = floor($_POST['nombre']);
+
+ $a = $nomvaisnCALC[$i][0];
+ $b = $nomvaisnCALC[$i][1];
+ $c = $nomvaisnCALC[$i][2];
+ if ($a * $nbv > $metal || $b * $nbv > $cristal || $c * $nbv > $hydrogene) {
+ if ($a != 0) $nbvm = $metal/$a;
+ if ($b == 0) $nbvc = $nbvm;
+ else $nbvc = $cristal/$b;
+ if ($c == 0) $nbvh = $nbvc;
+ else $nbvh = $hydrogene/$c;
+ if ($a == 0) $nbvm = $nbvh;
+ $nbv = floor(min($nbvm, $nbvc, $nbvh));
+ }
+
if(requestDeblok($nomvaisnTECH[$i], $queryPlanete, $queryUser) && $nbv > 0) {
$n=($queryPlanete[$nomvaisnVAR[$i]]+1);
- $a = $nomvaisnCALC[$i][0]; $metal -= $a * $nbv;
- $b = $nomvaisnCALC[$i][1]; $cristal -= $b * $nbv;
- $c = $nomvaisnCALC[$i][2]; $hydrogene -= $c * $nbv;
+ $metal -= $a * $nbv;
+ $cristal -= $b * $nbv;
+ $hydrogene -= $c * $nbv;
if ($metal < 0 || $cristal < 0 || $hydrogene < 0) {
$template->assign('message','Vous n\'avez pas assez de ressources pour démarrer cette construction.');
$template->assign('script','');
diff --git a/onyx/hb_game/jeu/classement.php b/onyx/hb_game/jeu/classement.php
index 11dca67..d890495 100644
--- a/onyx/hb_game/jeu/classement.php
+++ b/onyx/hb_game/jeu/classement.php
@@ -43,7 +43,7 @@ $plage_fin = $nbppage * ($pageClassementN + 1) + 1;
if (isset($_GET['t']) && $_GET['t'] == '1')
{
$bdd->connexion();
- $result = $bdd->query("SELECT tag, nbr_membres, ".$export.", points_".$export."_by_members FROM classement_alliances ORDER BY ".$export." DESC LIMIT $pageClassementN, $nbppage;");
+ $result = $bdd->query("SELECT tag, nbr_membres, ".$export.", points_".$export."_by_members FROM classement_alliances ORDER BY $export DESC LIMIT $pageClassementN, $nbppage;");
$bdd->deconnexion();
$nbres = $bdd->num_rows;
@@ -62,7 +62,7 @@ if (isset($_GET['t']) && $_GET['t'] == '1')
else
{
$bdd->connexion();
- $data = $bdd->query("SELECT t1.pseudo, t1.".$export." FROM classement AS t1 ORDER BY t1.".$export." DESC LIMIT $pageClassementN, $nbppage;");
+ $data = $bdd->query("SELECT t1.pseudo, t1.$export FROM classement AS t1 ORDER BY t1.$export DESC LIMIT $pageClassementN, $nbppage;");
$nbres = $bdd->num_rows;
$TEMP_classement = array();
diff --git a/onyx/hb_game/jeu/defenses.php b/onyx/hb_game/jeu/defenses.php
index 88023ac..2db6fdc 100644
--- a/onyx/hb_game/jeu/defenses.php
+++ b/onyx/hb_game/jeu/defenses.php
@@ -24,11 +24,25 @@ $titre = 'Défenses';
if (isset($_GET['v']) && !empty($nomterrn[$_GET['v']]) && !empty($_POST['nombre'])) {
$i = $_GET['v'];
$nbv = floor($_POST['nombre']);
+
+ $a = $nomterrnCALC[$i][0];
+ $b = $nomterrnCALC[$i][1];
+ $c = $nomterrnCALC[$i][2];
+ if ($a * $nbv > $metal || $b * $nbv > $cristal || $c * $nbv > $hydrogene) {
+ if ($a != 0) $nbvm = $metal/$a;
+ if ($b == 0) $nbvc = $nbvm;
+ else $nbvc = $cristal/$b;
+ if ($c == 0) $nbvh = $nbvc;
+ else $nbvh = $hydrogene/$c;
+ if ($a == 0) $nbvm = $nbvh;
+ $nbv = floor(min($nbvm, $nbvc, $nbvh));
+ }
+
if(requestDeblok($nomterrnTECH[$i], $queryPlanete, $queryUser) && $nbv > 0) {
$n=($queryPlanete[$nomterrnVAR[$i]]+1);
- $a = $nomterrnCALC[$i][0]; $metal -= $a * $nbv;
- $b = $nomterrnCALC[$i][1]; $cristal -= $b * $nbv;
- $c = $nomterrnCALC[$i][2]; $hydrogene -= $c * $nbv;
+ $metal -= $a * $nbv;
+ $cristal -= $b * $nbv;
+ $hydrogene -= $c * $nbv;
if ($metal < 0 || $cristal < 0 || $hydrogene < 0) {
$template->assign('message','Vous n\'avez pas assez de ressources pour démarrer cette construction.');
$template->assign('script','');
diff --git a/onyx/hb_game/jeu/envoyer.php b/onyx/hb_game/jeu/envoyer.php
index 756e48a..e09cec2 100644
--- a/onyx/hb_game/jeu/envoyer.php
+++ b/onyx/hb_game/jeu/envoyer.php
@@ -4,15 +4,18 @@ $page = 'envoyer';
$titre = 'Envoyer un message';
if (!empty($_POST['objet']) && !empty($_POST['nom']) && !empty($_POST['message'])) {
- $util = $_POST['nom'];
+ $util = htmlentities($_POST['nom']);
$bdd->connexion();
$bdd->escape($util);
if ($bdd->unique_query("SELECT pseudo FROM $table_user WHERE pseudo = '$util';")) {
$message = htmlspecialchars($_POST['message']);
$objet = htmlspecialchars($_POST['objet']);
+ $pseudo = $queryUser["pseudo"];
+ $time = time();
$bdd->escape($message);
$bdd->escape($objet);
- $bdd->query("INSERT INTO $table_mail VALUES(NULL, '1', '$util', '".$queryUser["pseudo"]."', '$objet', '$message', '".time()."');");
+ $bdd->escape($pseudo);
+ $bdd->query("INSERT INTO $table_mail VALUES(NULL, '1', '$util', '$pseudo', '$objet', '$message', '$time');");
$bdd->deconnexion();
$template->assign('message','Votre message a été envoyé avec succès.');
@@ -31,6 +34,6 @@ if (!empty($_POST['objet']) && !empty($_POST['nom']) && !empty($_POST['message']
}
}
-if (isset($_GET['d'])) $template->assign('destinataire', $_GET['d']);
-if (isset($_GET['o'])) $template->assign('objet', $_GET['o']);
+if (isset($_GET['d'])) $template->assign('destinataire', htmlentities($_GET['d']));
+if (isset($_GET['o'])) $template->assign('objet', htmlentities($_GET['o']));
?>
\ No newline at end of file
diff --git a/onyx/hb_game/jeu/flotte.php b/onyx/hb_game/jeu/flotte.php
index 11f3d52..2b4fcbb 100644
--- a/onyx/hb_game/jeu/flotte.php
+++ b/onyx/hb_game/jeu/flotte.php
@@ -2,12 +2,13 @@
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'])) {
+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($_POST['amas']);
$end_ss = floor($_POST['ss']);
$end_pos = floor($_POST['pos']);
$mission = floor($_POST['mission']);
- $tactique = floor($_POST['tactique']);
+ if (isset($_POST['tactique'])) $tactique = floor($_POST['tactique']);
+ else $tactique = 0;
$EBmetal = floor($_POST['metal']);
$EBcristal = floor($_POST['cristal']);
$EBhydrogene = floor($_POST['hydrogene']);
@@ -59,7 +60,7 @@ if (!empty($_POST['cds']) && !empty($_POST['nomflotte']) && !empty($_POST['amas'
exit;
}
//On vérifie la mission
- elseif ($mission < 1 || $mission > 5) {
+ elseif ($mission < 0 || $mission > 5) {
$template->assign('message','Mission incorrecte !');
$template->assign('script','');
$template->assign('couleur','red');
@@ -172,6 +173,13 @@ if (!empty($_POST['cds']) && !empty($_POST['nomflotte']) && !empty($_POST['amas'
$template->display('game/erreur.tpl');
exit;
}
+ elseif ($mission == 0 && $resultat['id_user'] != $id_user) {
+ $template->assign('message','La planète sur laquelle vous désirez stationner ne vous appartient pas.'.$resultat['id_user'].' : '.$id_user);
+ $template->assign('script','');
+ $template->assign('couleur','red');
+ $template->display('game/erreur.tpl');
+ exit;
+ }
elseif ($mission == 4 && ($resultat['debris_met'] <= 0 || $resultat['debris_cri'] <= 0) && empty($sess->values['forceFlotte'])) {
$sess->values['forceFlotte'] = true;
$sess->put();
@@ -266,15 +274,13 @@ if (!empty($_POST['cds']) && !empty($_POST['nomflotte']) && !empty($_POST['amas'
$tactiqueEN = 0;
}
- $bdd->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, $reqbtactiqueAT, 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');");
+ $bdd->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');");
$bdd->query("UPDATE $table_planete SET $reqPlan, metal = '$plan_metal', cristal = '$plan_cristal', hydrogene = '$plan_hydrogene' WHERE id = '$idPlan' LIMIT 1 ;");
$bdd->deconnexion();
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','');
@@ -371,7 +377,7 @@ elseif (!empty($_GET['n'])) {
exit;
}
elseif ($resultat['end_time'] > $tpsDD) {
- $bdd->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';");
+ $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;
}
@@ -448,7 +454,7 @@ else {
for ($i=1 ; $i<=12 ; $i++) {
if ($queryPlanete['vaisseau_'.$i] > 0 && $i != 11) {
$j++;
- $TEMP_vaisseaux[] = array($nomvaisa[$i-1], separerNombres($queryPlanete['vaisseau_'.$i]), $queryPlanete['vaisseau_'.$i], $i);
+ $TEMP_vaisseaux[] = array($nomvaisn[$i-1], separerNombres($queryPlanete['vaisseau_'.$i]), $queryPlanete['vaisseau_'.$i], $i);
}
}
$template->assign('vaisseaux', $TEMP_vaisseaux);
diff --git a/onyx/hb_game/jeu/inscription.php b/onyx/hb_game/jeu/inscription.php
deleted file mode 100644
index 82b1216..0000000
--- a/onyx/hb_game/jeu/inscription.php
+++ /dev/null
@@ -1,142 +0,0 @@
-connexion();
- $base->db();
-
- $pseudo = mysql_real_escape_string(htmlentities($_POST['HB_pseudo']));
- $mdp = $_POST['HB_mdp'];
- $mdpconf = $_POST['HB_conf'];
- $mail = mysql_real_escape_string(htmlentities($_POST['HB_mail']));
- if (!isset($_POST['race'])) $_POST['race'] = '';
- $race = mysql_real_escape_string(htmlentities($_POST['race']));
- $server = mysql_real_escape_string(htmlentities($_POST['servers']));
- $captcha = mysql_real_escape_string(htmlentities($_POST['HB_captcha']));
- $placement = mysql_real_escape_string(htmlentities($_POST['HB_placement']));
- if (!isset($_POST['regles'])) $_POST['regles'] = '';
- $regles = htmlentities($_POST['regles']);
-
- //Vérification relative au pseudo : caractéres utilisés + disponibilité
- if (addslashes(preg_replace('@[^a-zA-Z0-9_]@i', '', $pseudo)) != $pseudo || $pseudo == '') {
- $inscriptOk = false;
- $erreurs .= '
Le pseudo contient des caractères incorrects.
Les caractères autorisés sont les lettres minuscules ou majuscules de A à Z sans les accents, ainsi que les chiffres et les caractères . _
Le pseudo est déjà utilisé par un joueur.
Vous devez choisir un autre pseudo.
Mots de passe différents ou ne comportant pas assez de caractères
Vous devez impérativement choisir un mot de passe pour sécuriser votre compte. Si vous avez spécifié un mot de passe, il se peut que vous n\'ayez pas indiqué le même mot de passe dans la case de confirmation.
L\'adresse électronique n\'est pas valide.
L\'adresse électronique que vous avez tappé est invalide ou contient des caractères interdits, recommencez.
L\'adresse électronique que vous avez indiqué est déjà associée à un compte.
Vous devez choisir une autre adresse électronique.
Aucune race choisie
Vous devez choisir la race que vous désirez incarner dans le jeu.
Galaxie incorrecte
Vous devez choisir une galaxie (un serveur) dans la liste ci-dessous pour pouvoir jouer.
Impossible de trouver le joueur ami.
Vous devez choisir un autre pseudo.
Code de vérification incorrect :
Le texte que vous avez recopier ne correspondait pas au texte de l\'image, veuillez recommencer.
Vous devez accepter les conditions générales
';
- }
-
- if ($inscriptOk) {
- $time = time();
- $ip = $_SERVER["REMOTE_ADDR"];
-
- // Activer la ligne suivante pour crypter les mots de passe dans la base de données
- $mdp = sha1(strtoupper($pseudo).':'.$mdp); // Cryptage du mot de passe pour éviter le piratage de compte
-
- $id_activ = sha1('H'.rand().'/|\\'.rand().'B£');
- $Nmail = $mail;
-
- //On envoie le mail de confirmation
- $mail = new PHPmailer();
- $mail->SetLanguage('fr', 'Class/');
- $mail->IsSMTP();
- $mail->IsHTML(true);
- $mail->Host='s-fr.com';
- $mail->From='no-reply@halo-battle.s-fr.com';
- $mail->FromName='Halo-Battle';
- $mail->SMTPAuth=true;
- $mail->Username='no-reply@halo-battle.s-fr.com';
- $mail->Password='hD3e2nXu';
-
- $mail->AddAddress($Nmail);
- $mail->AddReplyTo('no-reply@halo-battle.s-fr.com');
- $mail->Subject='Halo-Battle :: Activation de votre compte';
- //$mail->Subject='Halo-Battle :: Pre-Inscription';
- $mail->Body='
Bonjour '.$pseudo.',
Vous recevez ce mail suite à votre demande d\'inscription sur le jeu Halo-Battle. Pour confirmer votre adresse mail et ainsi pouvoir accéder au jeu, cliquez sur le lien ci-après :
http://halo-battle.s-fr.com/?p=validation&i='.$id_activ.'
A bientôt dans Halo-Battle,
Le staff
Félicitations '.$pseudo.' !
Votre compte vient d'être enregistré sur notre serveur. Un mail de confirmation vous sera envoyé lors de la sortie du jeu en ligne Halo-Battle. Si vous ne recevez pas l\'email de confirmation, contactez un administrateur.
A très bientôt pour la sortie d'Halo-Battle !
Vous avez des messages en attente de réception. Libérez de la place dans votre messagerie pour les afficher.
'); @@ -49,21 +52,19 @@ $template->assign('messages', $TEMP_messages); $template->assign('IM', $i); -$data = $bdd->query("SELECT * FROM $table_mail WHERE destinataire = '".$queryUser["pseudo"]."' AND expediteur = '' AND vu != 's' ORDER BY id DESC;"); +$data = $bdd->query("SELECT * FROM $table_mail WHERE destinataire = '$pseudo' AND expediteur = '' AND vu != 's' ORDER BY id DESC;"); $nbres = $bdd->num_rows; $TEMP_rapport = array(); -$i=0; for($i = 0; $i < $nbres; $i++){ - $i++; - $TEMP_rapport[] = array($data[$i]['sujet'], date("d/m/y H:i:s", $data[$i]['temps']), 0, bbcode($data[$i]['contenu']), $i, $data[$i]['id']); + $TEMP_rapport[] = array($data[$i]['sujet'], date("d/m/y H:i:s", $data[$i]['temps']), 0, bbcode($data[$i]['contenu']), $i+1, $data[$i]['id']); } $template->assign('rapports', $TEMP_rapport); $template->assign('IR', $i); $template->assign('script', ''); -$bdd->query("UPDATE $table_mail SET vu = '0' WHERE destinataire = '".$queryUser["pseudo"]."' AND vu != 's'"); +$bdd->query("UPDATE $table_mail SET vu = '0' WHERE destinataire = '$pseudo' AND vu != 's'"); $bdd->deconnexion(); ?> \ No newline at end of file diff --git a/onyx/hb_game/jeu/njoueur.php b/onyx/hb_game/jeu/njoueur.php index 6454c8f..3789945 100644 --- a/onyx/hb_game/jeu/njoueur.php +++ b/onyx/hb_game/jeu/njoueur.php @@ -15,7 +15,7 @@ if (!empty($_GET['cds'])) { $mail = mysql_real_escape_string($_GET['mail']); $ti = mysql_real_escape_string($_GET['ti']); - $base->query("SELECT * FROM `user` WHERE `pseudo` = '$pseudo' ORDER BY `id` DESC;"); + $base->query("SELECT * FROM user WHERE pseudo = '$pseudo' ORDER BY id DESC;"); if ($base->num_rows) { $template->assign('message','Votre compte est déjà créé sur ce serveur !'); $template->assign('couleur','red'); @@ -24,12 +24,12 @@ if (!empty($_GET['cds'])) { } //Création de l'utilisateur - $base->query("INSERT INTO `user` (`pseudo`, `mdp`, `race`, `mail`, `last_ip`, `time_inscription`) VALUES ('$pseudo', '$mdp', '$race', '$mail', '".$_SERVER['REMOTE_ADDR']."', '".time()."');"); + $base->query("INSERT INTO user (pseudo, mdp, race, mail, last_ip, time_inscription) VALUES ('$pseudo', '$mdp', '$race', '$mail', '".$_SERVER['REMOTE_ADDR']."', '".time()."');"); //Création des bases de la planète $image = mt_rand(1,15); $cases = 225; - $queryUser = $base->query("SELECT * FROM `user` WHERE `pseudo` = '$pseudo' ORDER BY `id` DESC;"); + $queryUser = $base->query("SELECT * FROM user WHERE pseudo = '$pseudo' ORDER BY id DESC;"); $id_user = $queryUser[0]['id']; $time = time(); @@ -42,15 +42,15 @@ if (!empty($_GET['cds'])) { $pos = mt_rand(1, MAX_PLANETE); //Test pour savoir si la planète est déjà habitée - $base->query("SELECT id FROM `planete` WHERE galaxie='$galaxie' AND ss='$ss' AND position='$pos'"); + $base->query("SELECT id FROM planete WHERE galaxie='$galaxie' AND ss='$ss' AND position='$pos'"); if($base->num_rows) $planete_trouvee = false; else $planete_trouvee = true; } - $base->query("INSERT INTO `planete` (`id_user`, `nom_planete`, `galaxie`, `ss`, `position`, `image`, `cases`, `timestamp`, `metal`, `cristal`) VALUES ('$id_user', 'Planète mère', '$galaxie', '$ss', '$pos', '$image', '$cases', '$time', '1000', '700')"); + $base->query("INSERT INTO planete (id_user, nom_planete, galaxie, ss, position, image, cases, timestamp, metal, cristal, hash_planete) VALUES ('$id_user', 'Planète mère', '$galaxie', '$ss', '$pos', '$image', '$cases', '$time', '1000', '700', SHA1(CONCAT('g',planete.galaxie,'s',planete.ss,'p',planete.position)))"); } else { - $placement_joueur = $base->unique_query("SELECT * FROM `user` WHERE `pseudo` = '".mysql_real_escape_string($_GET["placement"])."'"); + $placement_joueur = $base->unique_query("SELECT * FROM user WHERE pseudo = '".mysql_real_escape_string($_GET["placement"])."'"); if (!$placement_joueur && !isset($sess->values['forceInscript'])) { $sess->values['forceInscript'] = true; $sess->put(); @@ -60,7 +60,7 @@ if (!empty($_GET['cds'])) { exit; } if (!isset($sess->values['forceInscript'])) { - $placement_planetes = $base->query("SELECT * FROM `planete` WHERE `id_user` = '".$placement_joueur["id"]."'"); + $placement_planetes = $base->query("SELECT * FROM planete WHERE id_user = '".$placement_joueur["id"]."'"); $planete_trouvee = false; $decale = 0; while (!$planete_trouvee) { @@ -69,7 +69,7 @@ if (!empty($_GET['cds'])) { $ss = $placement_planetes[$i]['ss'] + $decale; if ($ss >= MAX_SYSTEME) break; for ($j = 1; $j <= MAX_PLANETE ; $j++) { - $base->query("SELECT * FROM `planete` WHERE galaxie='$galaxie' AND ss='$ss' AND position='$j'"); + $base->query("SELECT * FROM planete WHERE galaxie='$galaxie' AND ss='$ss' AND position='$j'"); if(!$base->num_rows) { $planete_trouvee = true; $blk_galaxie = $galaxie; @@ -94,12 +94,12 @@ if (!empty($_GET['cds'])) { $blk_pos = mt_rand(1, MAX_PLANETE); //Test pour savoir si la planète est déjà habitée - $base->query("SELECT id FROM `planete` WHERE galaxie='$blk_galaxie' AND ss='$blk_ss' AND position='$blk_pos'"); + $base->query("SELECT id FROM planete WHERE galaxie='$blk_galaxie' AND ss='$blk_ss' AND position='$blk_pos'"); if($base->num_rows) $planete_trouvee = false; else $planete_trouvee = true; } } - $base->query("INSERT INTO `planete` (`id_user`, `nom_planete`, `galaxie`, `ss`, `position`, `image`, `cases`, `timestamp`, `metal`, `cristal`) VALUES ('$id_user', 'Planète mère', '$blk_galaxie', '$blk_ss', '$blk_pos', '$image', '$cases', '$time', '1000', '700')"); + $base->query("INSERT INTO planete (id_user, nom_planete, galaxie, ss, position, image, cases, timestamp, metal, cristal, hash_planete) VALUES ('$id_user', 'Planète mère', '$blk_galaxie', '$blk_ss', '$blk_pos', '$image', '$cases', '$time', '1000', '700', SHA1(CONCAT('g',planete.galaxie,'s',planete.ss,'p',planete.position)))"); } $base->deconnexion(); diff --git a/onyx/hb_game/jeu/operateur.php b/onyx/hb_game/jeu/operateur.php index 40b77bb..69707a2 100644 --- a/onyx/hb_game/jeu/operateur.php +++ b/onyx/hb_game/jeu/operateur.php @@ -6,11 +6,12 @@ $titre = 'Contact opérateur'; if (!empty($_POST['titre']) && !empty($_POST['description'])) { $titre = $_POST['titre']; $description = $_POST['description']; + $time = time(); $bdd->connexion(); $bdd->escape($titre); $bdd->escape($description); - $bdd->query("INSERT INTO $table_ope_mail VALUES(NULL, '$id_user', '$titre', '$description', '".time()."');"); + $bdd->query("INSERT INTO $table_ope_mail (id_user, titre, contenu, time) VALUES ('$id_user', '$titre', '$description', '$time');"); $bdd->deconnexion(); $template->assign('message','Votre demande à bien été transmise aux opérateurs de la galaxie.Bonjour '.trouvNom($id_user).',
Vous recevez ce mail suite à votre demande de changement de mot de passe. Ce dernier entrera en vigueur une fois que vous aurez valider ce changement en cliquant via ce lien :
http://'.$_SERVER['HTTP_HOST'].'?p=changeopt&util='.$id_user.'&auth='.$auth.'
Notez que pour que le mot de passe soit changé, il faut que vous soyer connecté sur votre compte.
A bientôt dans Halo-Battle,
Le staff
Bonjour '.trouvNom($id_user).',
Vous recevez ce mail suite à votre demande de changement de mot de passe. Ce dernier entrera en vigueur une fois que vous aurez valider ce changement en cliquant via ce lien :
http://'.$_SERVER['HTTP_HOST'].'?p=changeopt&util='.$id_user.'&auth='.$auth.'
Notez que pour que le mot de passe soit changé, il faut que vous soyer connecté sur votre compte.
A bientôt dans Halo-Battle,
Le staff
Bonjour,
Vous recevez ce mail suite à votre demande de changement d\'adresse électronique. Cette dernière entrera en vigueur une fois que vous aurez valider ce changement en cliquant via ce lien :
http://'.$_SERVER['HTTP_HOST'].'?p=changeopt&util='.$id_user.'&auth='.$auth.'
Notez que pour que l\'adresse soit changée, il faut que vous soyer connecté sur votre compte.
A bientôt dans Halo-Battle,
Le staff
Bonjour,
Vous recevez ce mail suite à votre demande de changement d\'adresse électronique. Cette dernière entrera en vigueur une fois que vous aurez valider ce changement en cliquant via ce lien :
http://'.$_SERVER['HTTP_HOST'].'?p=changeopt&util='.$id_user.'&auth='.$auth.'
Notez que pour que l\'adresse soit changée, il faut que vous soyer connecté sur votre compte.
A bientôt dans Halo-Battle,
Le staff
|
- Temps de vacances forcées : jours + Temps de vacances forcées : jours ("definitif" pour définitif, -3 pour réactiver le compte tout de suite) Raison : |