Version 1.9g

This commit is contained in:
nemunaire 2008-11-08 12:00:00 +01:00
commit 4c9814a99c
800 changed files with 237325 additions and 1949 deletions

View file

@ -3,15 +3,18 @@ define("INDEX", 1);
$chrono_start = microtime();
$onyx = @file_get_contents('./.onyx') or die("Configuration introuvable.");
define("_FCORE",trim($onyx));
if (empty($sess->values['connected'])) define("xCSRF", true);
require_once(_FCORE."common.php");
//Pistage Guillaume
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));
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'] == "21" || $sess->values['id'] == "23"))) {
file_log(var_export($_REQUEST,TRUE),0 , _FCORE."logs/users");
}
//On vérifie si le client est connecté 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'])) {
if (isset($sess) && isset($sess->values['connected']) && $sess->values['connected'] && !empty($sess->values['id']) && !empty($sess->values['race']) && !empty($sess->level) && !empty($sess->values['idPlan'])) {
//Si un nouveau joueur cherche à se connecter du même endroit, on déconnecte le joueur en cours avant
$HB_login = gpc('l');
if (!empty($HB_login) && strtolower($HB_login) != strtolower(trouvNom($sess->values['id']))) {
include(_FCORE."../game/jeu/logout.php");
@ -21,43 +24,27 @@ if (isset($sess) && isset($sess->values['connected']) && $sess->values['connecte
exit;
}
$race = $sess->values['race'];
//Inclusion des formules
require_once(_FCORE."../game/vars.php");
//On inclus les différentes classes
include_once(_FCORE."../game/Class/class.file.php");
include_once(_FCORE."../game/Class/class.user.php");
include_once(_FCORE."../game/Class/class.planete.php");
//Récupération d'informations au sujet de l'utilisateur
$id_user = $sess->values['id'];
$template->assign('auth_level', $sess->values['auth_level']);
$template->assign('auth_level', $sess->level);
$ip = $_SERVER["REMOTE_ADDR"];
$bdd->connexion();
$multi = $bdd->query("SELECT U.pseudo, R.id_util FROM $table_registre_identification R INNER JOIN $table_user U ON U.id = R.id_util WHERE R.ip = '$ip' GROUP BY R.ip, R.id_util HAVING R.id_util != $id_user;");
$queryUser = $bdd->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'] > 0 || !$queryUser) {
$sess->close();
header('Location: '.$config['first_page'].'?mvf');
exit;
}
$race = $queryUser['race'];
$template->assign('race', $queryUser['race']);
$template->assign('multi', $multi);
$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'];
$bdd->escape($idPlanTest);
if ($bdd->unique_query("SELECT * FROM $table_planete WHERE id_user = '$id_user' AND id = '$idPlanTest';")) {
$idPlanTest = intval($_POST['Cplanete']);
if ($bdd->unique_query("SELECT * FROM $table_planete WHERE id_user = $id_user AND id = $idPlanTest;")) {
$sess->values['idPlan'] = $idPlanTest;
$sess->put();
$template->assign('contenu', '<meta http-equiv="refresh" content="0"/>');
@ -72,7 +59,20 @@ if (isset($sess) && isset($sess->values['connected']) && $sess->values['connecte
$queryPlanetes = $bdd->query("SELECT * FROM $table_planete WHERE id_user = '$id_user' ORDER BY id ASC;");
$bdd->deconnexion();
$planete = new Planete($idPlan);
///$queryPlanete = $bdd->unique_query("SELECT * FROM $table_planete WHERE id = '$idPlan'");
//On vérifie que le joueur ne soit pas en mode vacances forcé
if ($planete->mv > 0) {
$sess->close();
header('Location: '.$config['first_page'].'?mvf');
exit;
}
//Chargement asteroide
if ($planete->id_alliance) {
$bdd->connexion();
$template->assign('asteroide', $bdd->unique_query("SELECT * FROM $table_alliances WHERE id = ".$planete->id_alliance.";"));
$bdd->deconnexion();
}
///require_once(_FCORE."../game/ressources.php");
///require_once(_FCORE."../game/constructions.php");
@ -93,6 +93,15 @@ if (isset($sess) && isset($sess->values['connected']) && $sess->values['connecte
erreur('Impossible de rentrer en contact avec cette planète.<br /> Réessayez vers '.date('H:i', $isolement[1]));
}
//Calcul du temps de jeu
$tpsdejeu = time() - $planete->last_visite;
$heur = floor($tpsdejeu/3600);
$min = floor(($tpsdejeu - $heur*3600)/60);
if ($heur > 0) $min = $heur.' h '.$min;
$template->assign('tpsdejeu', $min.' min');
$template->assign('race', $planete->race);
switch($p){
case 'prochainement':
$page = 'prochainement';
@ -170,6 +179,9 @@ if (isset($sess) && isset($sess->values['connected']) && $sess->values['connecte
case 'bugs':
include(_FCORE."../game/jeu/bugs.php");
break;
case 'util':
include(_FCORE."../game/jeu/util.php");
break;
case 'chat':
$page = 'chat'; $titre = 'Chat';
break;
@ -221,12 +233,12 @@ else {
}
else {
$HB_login = gpc('l');
$HB_password = gpc('p');
$HB_password = cxor(hexstr(gpc('p')), date('WYDj'));
$HB_auth = gpc('a');
}
if (empty($HB_login) || empty($HB_password)) {
$template->assign('message','Nom d\'utilisateur ou mot de passe incorrect.<br /><br />');
$template->assign('message','Nom d\'utilisateur ou mot de passe incorrect. L\'un des deux est vide<br /><br />');
$template->assign('couleur','red');
$template->display('cms/erreur.tpl');
exit;
@ -295,7 +307,7 @@ else {
exit;
}
$resultat = $bdd->unique_query("SELECT id, mv, last_visite, auth_level, raisonmv FROM $table_user WHERE pseudo = '$HB_login' AND mdp = '$HB_password';");
$resultat = $bdd->unique_query("SELECT id, race, mv, last_visite, auth_level, raisonmv FROM $table_user WHERE pseudo = '$HB_login' AND mdp = '$HB_password';");
if ($resultat) {
$id = $resultat['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;");
@ -376,11 +388,12 @@ else {
$sess->values['connected'] = TRUE;
$sess->values['id'] = $resultat['id'];
$sess->values['race'] = $resultat['race'];
$sess->values['idPlan'] = $resultatP['id'];
//Si on détecte le multi-compte, on interdit l'accès au panneau d'admin
if (empty($multi)) $sess->values['auth_level'] = 0;
else $sess->values['auth_level'] = $resultat['auth_level'];
$sess->put();
if (empty($multi)) $sess->level = 1;
else $sess->level = $resultat['auth_level'] + 1;
$sess->put($resultat['id']);
if ($message['time'] > $resultat['last_visite']) header('Location: ./'.$config['first_page'].'?p=demarrage');
elseif (empty($multi)) header('Location: ./'.$config['first_page'].'?p=avertmulti');
@ -412,6 +425,9 @@ else {
header('Location: http://halo-battle.fr/');
break;*/
//Serveur de jeu
case "connexion":
$page = 'mini';
break;
case "njoueur":
include(_FCORE."../game/jeu/njoueur.php");
break;
@ -430,9 +446,9 @@ else {
include(_FCORE."../game/jeu/regles.php");
break;
default:
$page = 'mini';
//header('Location: http://halo-battle.s-fr.com/?p=connexion');
//exit;
//$page = 'mini';
header('Location: http://www.halo-battle.fr/');
exit;
}
$template->display('cms/'.$page.'.tpl');
}