Version 1.7i

This commit is contained in:
nemunaire 2008-11-16 12:00:00 +01:00
commit ba5e741c99
136 changed files with 2561 additions and 2105 deletions

View file

@ -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.'\'';
}
}
?>

View file

@ -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'].']</b><br /><br />';
$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'].']</b><br /><br />';
$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();
}
}

View file

@ -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();
?>

View file

@ -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();
}

View file

@ -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);
}

View file

@ -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;
}

View file

@ -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);
}
?>

View file

@ -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)) {

View file

@ -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;
}

View file

@ -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);
}
?>

View file

@ -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;
}

View file

@ -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'].'.<br />Pensez à sélectionner sa planète !');
$template->assign('message', 'Vous contrôlez maintenant le joueur '.$_GET['id'].'.<br />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;
}

View file

@ -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;
}

View file

@ -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;
}

View file

@ -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;
}

View file

@ -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);
}
?>

View file

@ -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'].'] <i>'.trouvNom($id_user).'</i>';
$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.<br />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','<script type="text/javascript">setTimeout(\'document.location.href="?p=alliances&q=fonder";\', 3500);</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','<script type="text/javascript">setTimeout(\'document.location.href="?p=alliances&q=fonder";\', 3500);</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();
?>

View file

@ -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);

View file

@ -0,0 +1,30 @@
<?php
if(!defined('INDEX')) { header('Location: ../'); exit; }
$page = 'bourse';
$titre = 'Bourse';
$ressourceArgent = 'metal';
$bdd->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));
?>

View file

@ -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++) {

View file

@ -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)';

View file

@ -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','<script type="text/javascript">setTimeout(\'document.location.href="?p=chantierspatial";\', 3500);</script>');

View file

@ -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();

View file

@ -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','<script type="text/javascript">setTimeout(\'document.location.href="?p=defenses";\', 3500);</script>');

View file

@ -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']));
?>

View file

@ -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','<script type="text/javascript">setTimeout(\'document.location.href="?p=flotte";\', 2500);</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','<script type="text/javascript">setTimeout(\'document.location.href="?p=flotte";\', 3000);</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','<script type="text/javascript">setTimeout(\'document.location.href="?p=flotte";\', 4000);</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);

View file

@ -1,142 +0,0 @@
<?php
if(!defined('INDEX')) { header('Location: ../'); exit; }
require_once('Class/class.phpmailer.php');
session_start();
$page = 'inscription';
$erreurs = '';
$inscriptOk = true;
if (isset($_POST['HB_pseudo']) && isset($_POST['HB_mdp']) && isset($_POST['HB_conf']) && isset($_POST['HB_mail']) && isset($_POST['servers']) && isset($_POST['HB_captcha']) && isset($_POST['HB_placement'])) {
$base = new bdd();
$base->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 .= '<p style="color: #FF0000"><b>Le pseudo contient des caractères incorrects.</b><br />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 . _</p><br />';
}
else {
$result = mysql_query("SELECT `pseudo` FROM `user_inscriptions` WHERE pseudo = '$pseudo'");
if(mysql_num_rows($result) >= 1) {
$inscriptOk = false;
$erreurs .= '<p style="color: #FF0000"><b>Le pseudo est déjà utilisé par un joueur.</b><br />Vous devez choisir un autre pseudo.</p><br />';
}
}
//Vérification du mot de passe :
if ($mdp == '' || $mdp != $mdpconf) {
$inscriptOk = false;
$erreurs .= '<p style="color: #FF0000"><b>Mots de passe différents ou ne comportant pas assez de caractères</b><br />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.</p><br />';
}
//Vérification relative au mail : caractéres utilisés + disponibilité
if (!preg_match('#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#i', $mail) || empty($mail)) {
$inscriptOk = false;
$erreurs .= '<p style="color: #FF0000"><b>L\'adresse électronique n\'est pas valide.</b><br />L\'adresse électronique que vous avez tappé est invalide ou contient des caractères interdits, recommencez.</p><br />';
}
else {
$result = mysql_query("SELECT mail FROM `user_inscriptions` WHERE mail='$mail'");
if(mysql_num_rows($result) >= 1) {
$inscriptOk = false;
$erreurs .= '<p style="color: #FF0000"><b>L\'adresse électronique que vous avez indiqué est déjà associée à un compte.</b><br>Vous devez choisir une autre adresse électronique.</p><br />';
}
}
//Vérification de la race choisie
if ($race != 'covenant' && $race != 'humain') {
$inscriptOk = false;
$erreurs .= '<p style="color: #FF0000"><b>Aucune race choisie</b><br />Vous devez choisir la race que vous désirez incarner dans le jeu.</p><br />';
}
//Vérification du serveur
if (is_numeric($server) && $server > 1) {
$inscriptOk = false;
$erreurs .= '<p style="color: #FF0000"><b>Galaxie incorrecte</b><br />Vous devez choisir une galaxie (un serveur) dans la liste ci-dessous pour pouvoir jouer.</p><br />';
}
//Vérification du partenaire
if (!empty($placement)) {
$result = mysql_query("SELECT `pseudo` FROM `user_inscriptions` WHERE pseudo = '$placement'");
if(mysql_num_rows($result) == 0) {
$inscriptOk = false;
$erreurs .= '<p style="color: #FF0000"><b>Impossible de trouver le joueur ami.</b><br />Vous devez choisir un autre pseudo.</p><br />';
}
}
//Vérification du captcha
if (empty($sess->values['aleatnbr']) && isset($_SESSION['aleat_nbr'])) {
$sess->values['aleatnbr'] = $_SESSION['aleat_nbr'];
}
if (empty($sess->values['aleatnbr']) || empty($captcha) || $sess->values['aleatnbr'] != strtolower($captcha)) {
$inscriptOk = false;
$erreurs .= '<p style="color: #FF0000"><b>Code de vérification incorrect :</b><br />Le texte que vous avez recopier ne correspondait pas au texte de l\'image, veuillez recommencer.</p><br />';
}
//Vérification du captcha
if (empty($regles) || $regles != '1') {
$inscriptOk = false;
$erreurs .= '<p style="color: #FF0000"><b>Vous devez accepter les conditions générales</b><br />';
}
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='<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Halo-Battle :: Activation de votre compte</title></head><body><p>Bonjour '.$pseudo.',<br />Vous recevez ce mail suite à votre demande d\'inscription sur le jeu <a href="http://www.halo-battle.s-fr.com/">Halo-Battle</a>. Pour confirmer votre adresse mail et ainsi pouvoir acc&eacute;der au jeu, cliquez sur le lien ci-apr&egrave;s :<br /><a href="http://halo-battle.s-fr.com/?p=validation&i='.$id_activ.'">http://halo-battle.s-fr.com/?p=validation&i='.$id_activ.'</a><br /><br />A bient&ocirc;t dans Halo-Battle,<br />Le staff</p></body></html>';
//$mail->Body='<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Halo-Battle :: Pr&eacute;-Inscription</title></head><body><p>F&eacute;licitations '.$pseudo.' !<br />Votre compte vient d&#39;&ecirc;tre enregistr&eacute; sur notre serveur. Un mail de confirmation vous sera envoy&eacute; lors de la sortie du jeu en ligne Halo-Battle. Si vous ne recevez pas l\'email de confirmation, <a href="mailto:technique@halo-battle.s-fr.com">contactez un administrateur</a>.<br /><br />A tr&egrave;s bient&ocirc;t pour la sortie d&#39;Halo-Battle !</p></body></html>';
if(!$mail->Send()){
$template->assign('message','Erreur lors de l\'envoie du courriel de confirmation !<br /><br /><small><i>'.$mail->ErrorInfo.'</i></small><br /><br />Si le problème perciste, <a href="mailto:technique@halo-battle.s-fr.com">contactez un administrateur</a>.');
$template->assign('couleur','red');
$template->display('cms/erreur.tpl');
exit;
}
else{
mysql_query("INSERT INTO `user_inscriptions` (`id_activ`, `pseudo`, `race`, `mdp`, `mail`, `last_ip`, `placement`, `time_inscription`, `last_visite`) VALUES ('$id_activ', '$pseudo', '$race', '$mdp', '$Nmail', '$ip', '$placement', '$time', '$time')") or die ('MYSQLERREUR'.mysql_error());
$template->assign('message','F&eacute;licitations, votre compte vient d\'être cr&eacute;&eacute; sur le serveur '.$server.' de Halo-Battle.<br /><br />Un courriel de confirmation vient d\'être envoy&eacute; à votre adresse &eacute;lectronique afin de valider votre inscription au jeu en ligne Halo-Battle.<br /><br />N\'attendez-plus, commencez le combat dès à pr&eacute;sent !');
$template->assign('couleur','green');
$template->display('cms/erreur.tpl');
exit;
}
$mail->SmtpClose();
unset($mail);
}
$base->deconnexion();
}
$template->assign('erreurs',$erreurs);
?>

File diff suppressed because one or more lines are too long

View file

@ -8,8 +8,9 @@ if (isset($_POST['IM'])) {
for($i=1 ; $i<=$_POST['IM'] ; $i++) {
if (!empty($_POST['m'.$i])) {
$mes = $_POST['m'.$i];
$pseudo = $queryUser["pseudo"];
$bdd->connexion();
$bdd->query("DELETE FROM $table_mail WHERE destinataire = '".$queryUser["pseudo"]."' AND id = '$mes';");
$bdd->query("DELETE FROM $table_mail WHERE destinataire = '$pseudo' AND id = '$mes';");
$bdd->deconnexion();
$stop = true;
}
@ -21,8 +22,9 @@ if (isset($_POST['IR'])) {
for($i=1 ; $i<=$_POST['IR'] ; $i++) {
if (!empty($_POST['r'.$i])) {
$mes = $_POST['r'.$i];
$pseudo = $queryUser["pseudo"];
$bdd->connexion();
$bdd->query("UPDATE $table_mail SET vu='s' WHERE destinataire = '".$queryUser["pseudo"]."' AND id = '$mes';");
$bdd->query("UPDATE $table_mail SET vu='s' WHERE destinataire = '$pseudo' AND id = '$mes';");
$bdd->deconnexion();
$stop = true;
}
@ -30,11 +32,12 @@ if (isset($_POST['IR'])) {
if ($stop) { header('Location: ?p=messagerie'); exit; }
}
$pseudo = $queryUser["pseudo"];
$bdd->connexion();
$messcomp = $bdd->query("SELECT * FROM $table_mail WHERE destinataire = '".$queryUser["pseudo"]."' AND expediteur != '' ORDER BY id DESC;");
$messcomp = $bdd->query("SELECT * FROM $table_mail WHERE destinataire = '$pseudo' AND expediteur != '' ORDER BY id DESC;");
$nbmax = $bdd->num_rows;
$result = $bdd->query("SELECT * FROM $table_mail WHERE destinataire = '".$queryUser["pseudo"]."' AND expediteur != '' ORDER BY id DESC LIMIT 50;");
$result = $bdd->query("SELECT * FROM $table_mail WHERE destinataire = '$pseudo' AND expediteur != '' ORDER BY id DESC LIMIT 50;");
if ($queryUser['auth_level'] >= 3 && $nbmax > $i) $result = $messcomp;
elseif ($nbmax > $bdd->num_rows) $template->assign('avertissement', '<p style="color: red; "><b>Vous avez des messages en attente de réception. Libérez de la place dans votre messagerie pour les afficher.</b></p>');
@ -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', '<script>
for (j=1; document.getElementsByName(\'m\'+j)[0]; j++) hide(document.getElementsByName(\'m\'+j)[0].previousSibling);
for (j=1; document.getElementsByName(\'r\'+j)[0]; j++) hide(document.getElementsByName(\'r\'+j)[0].previousSibling);
for (j=2; document.getElementsByName(\'m\'+j)[0]; j++) hide(document.getElementsByName(\'m\'+j)[0].previousSibling);
for (j=2; document.getElementsByName(\'r\'+j)[0]; j++) hide(document.getElementsByName(\'r\'+j)[0].previousSibling);
</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();
?>

View file

@ -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();

View file

@ -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.<br />Une réponse vous sera donnée dans les plus brefs délais.');
$template->assign('couleur','green');
@ -24,7 +25,7 @@ elseif (!empty($_POST['O_titre']) && !empty($_POST['O_description']) && $sess->v
$bdd->connexion();
$bdd->escape($titre);
$bdd->escape($description);
$bdd->query("INSERT INTO $table_ope_faq VALUES(NULL, '$titre', '$description', 100);");
$bdd->query("INSERT INTO $table_ope_faq (titre, contenu, ordre) VALUES ('$titre', '$description', 100);");
$bdd->deconnexion();
header('Location: ?p=operateur');
exit;

View file

@ -9,6 +9,7 @@ $titre = 'Options';
$pseudo = $queryUser['pseudo'];
$mailUtil = $queryUser['mail'];
$mdp = $queryUser['mdp'];
$mdp_var = $queryUser['mdp_var'];
if (isset($_GET['a']) && $_GET['a'] == 'mv' && isset($_GET['n']) && $_GET['n'] == $sess->values['idvac']) {
$impossible = false;
@ -32,7 +33,7 @@ if (isset($_GET['a']) && $_GET['a'] == 'mv' && isset($_GET['n']) && $_GET['n'] =
}
if ($impossible) {
$template->assign('message','Impossible d\'activer le mode vacances.<br />Toutes les files d\'attentes sur vos différentes planètes ne sont pas vides.');
$template->assign('message','Impossible d\'activer le mode vacances.<br />Toutes les files d\'attentes sur vos diff&eacute;rentes plan&egrave;tes ne sont pas vides.');
$template->assign('script','<script type="text/javascript">setTimeout(\'document.location.href="?p=options";\', 4000);</script>');
$template->assign('couleur','red');
$template->display('game/erreur.tpl');
@ -63,12 +64,13 @@ if (isset($_GET['a']) && $_GET['a'] == 'mv' && isset($_GET['n']) && $_GET['n'] =
}
if (isset($_GET['chg']) && $_GET['chg'] == 'mdp') {
if (isset($_POST['mdp_anc']) && isset($_POST['mdp_nouv']) && isset($_POST['mdp_conf']) && !empty($_POST['mdp_anc']) && !empty($_POST['mdp_nouv']) && !empty($_POST['mdp_conf'])) {
if(sha1(strtoupper($pseudo).':'.$_POST['mdp_anc']) == $mdp) {
if(hash_var(strtoupper($pseudo).':'.$_POST['mdp_anc'].'♂♪'.$mdp_var) == $mdp) {
if ($_POST['mdp_nouv'] == $_POST['mdp_conf']) {
$password = htmlspecialchars(mysql_escape_string($_POST['mdp_nouv']));
$password = sha1(strtoupper($pseudo).':'.$password);
$password = sha1(strtoupper($pseudo).':'.$_POST['mdp_nouv']);
$auth = sha1($password);
$bdd->connexion();
$bdd->escape($password);
$bdd->query("UPDATE user SET mdpNOUV = '$password' WHERE id = '$id_user'");
$bdd->deconnexion();
@ -78,7 +80,8 @@ if (isset($_GET['chg']) && $_GET['chg'] == 'mdp') {
$mail->IsSMTP();
$mail->IsHTML(true);
$mail->Host='s-fr.com';
$mail->From='Halo-Battle <no-reply@halo-battle.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';
@ -86,16 +89,16 @@ if (isset($_GET['chg']) && $_GET['chg'] == 'mdp') {
$mail->AddAddress($mailUtil);
$mail->AddReplyTo('no-reply@halo-battle.s-fr.com');
$mail->Subject='Halo-Battle :: Activation de votre nouveau mot de passe';
$mail->Body='<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head><title>Halo-Battle :: Activation de votre nouveau mot de passe</title></head><body><p>Bonjour '.trouvNom($id_user).',<br />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 :<br /><a href="http://'.$_SERVER['HTTP_HOST'].'?p=changeopt&util='.$id_user.'&auth='.$auth.'">http://'.$_SERVER['HTTP_HOST'].'?p=changeopt&util='.$id_user.'&auth='.$auth.'</a><br />Notez que pour que le mot de passe soit chang&eacute;, il faut que vous soyer connect&eacute; sur votre compte.<br /><br />A bientôt dans Halo-Battle,<br />Le staff</p></body></html>';
$mail->Body='<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head><title>Halo-Battle :: Activation de votre nouveau mot de passe</title></head><body><p>Bonjour '.trouvNom($id_user).',<br />Vous recevez ce mail suite &agrave; 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 :<br /><a href="http://'.$_SERVER['HTTP_HOST'].'?p=changeopt&util='.$id_user.'&auth='.$auth.'">http://'.$_SERVER['HTTP_HOST'].'?p=changeopt&util='.$id_user.'&auth='.$auth.'</a><br />Notez que pour que le mot de passe soit chang&eacute;, il faut que vous soyer connect&eacute; sur votre compte.<br /><br />A bient&ocirc;t dans Halo-Battle,<br />Le staff</p></body></html>';
if(!$mail->Send()){ //Teste si le return code est ok.
$template->assign('message','Erreur lors de l\'envoie du courriel de confirmation !<br /><br /><small><i>'.$mail->ErrorInfo.'</i></small><br /><br />Si le problème perciste, <a href="mailto:technique@halo-battle.s-fr.com">contactez un administrateur</a>.');
$template->assign('message','Erreur lors de l\'envoie du courriel de confirmation !<br /><br /><small><i>'.$mail->ErrorInfo.'</i></small><br /><br />Si le probl&egrave;me perciste, <a href="mailto:technique@halo-battle.s-fr.com">contactez un administrateur</a>.');
$template->assign('couleur','red');
$template->display('game/erreur.tpl');
exit;
}
else{
$template->assign('message','Un courriel vient d\'être envoyé à '.$mailUtil.'. Le mot de passe ne sera modifié qu\'après avoir cliqué sur le lien d\'activation contenu dans ce courriel.');
$template->assign('message','Un courriel vient d\'être envoy&eacute; à '.$mailUtil.'. Le mot de passe ne sera modifi&eacute; qu\'apr&egrave;s avoir cliqu&eacute; sur le lien d\'activation contenu dans ce courriel.');
$template->assign('couleur','green');
$template->display('game/erreur.tpl');
exit;
@ -104,7 +107,7 @@ if (isset($_GET['chg']) && $_GET['chg'] == 'mdp') {
unset($mail);
}
else {
$template->assign('message','Le nouveau mot de passe que vous avez entré ne correspond pas à sa confirmation.');
$template->assign('message','Le nouveau mot de passe que vous avez entr&eacute; ne correspond pas à sa confirmation.');
$template->assign('script','<script type="text/javascript">setTimeout(\'document.location.href="?p=options";\', 3500);</script>');
$template->assign('couleur','red');
$template->display('game/erreur.tpl');
@ -112,7 +115,7 @@ if (isset($_GET['chg']) && $_GET['chg'] == 'mdp') {
}
}
else {
$template->assign('message','L\'ancien mot de passe que vous avez tapé n\'est pas correct.');
$template->assign('message','L\'ancien mot de passe que vous avez tap&eacute; n\'est pas correct.');
$template->assign('script','<script type="text/javascript">setTimeout(\'document.location.href="?p=options";\', 3000);</script>');
$template->assign('couleur','red');
$template->display('game/erreur.tpl');
@ -151,24 +154,25 @@ elseif (isset($_GET['chg']) && $_GET['chg'] == 'mail') {
$mail->IsSMTP();
$mail->IsHTML(true);
$mail->Host='s-fr.com';
$mail->From='Halo-Battle <no-reply@halo-battle.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 nouvelle adresse électronique';
$mail->Body='<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head><title>Halo-Battle :: Activation de votre nouvelle adresse &eacute;lectronique</title></head><body><p>Bonjour,<br />Vous recevez ce mail suite à votre demande de changement d\'adresse &eacute;lectronique. Cette dernière entrera en vigueur une fois que vous aurez valider ce changement en cliquant via ce lien :<br /><a href="http://'.$_SERVER['HTTP_HOST'].'?p=changeopt&util='.$id_user.'&auth='.$auth.'">http://'.$_SERVER['HTTP_HOST'].'?p=changeopt&util='.$id_user.'&auth='.$auth.'</a><br />Notez que pour que l\'adresse soit chang&eacute;e, il faut que vous soyer connect&eacute; sur votre compte.<br /><br />A bientôt dans Halo-Battle,<br />Le staff</p></body></html>';
$mail->Subject='Halo-Battle :: Activation de votre nouvelle adresse &eacute;lectronique';
$mail->Body='<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head><title>Halo-Battle :: Activation de votre nouvelle adresse &eacute;lectronique</title></head><body><p>Bonjour,<br />Vous recevez ce mail suite &agrave; votre demande de changement d\'adresse &eacute;lectronique. Cette derni&egrave;re entrera en vigueur une fois que vous aurez valider ce changement en cliquant via ce lien :<br /><a href="http://'.$_SERVER['HTTP_HOST'].'?p=changeopt&util='.$id_user.'&auth='.$auth.'">http://'.$_SERVER['HTTP_HOST'].'?p=changeopt&util='.$id_user.'&auth='.$auth.'</a><br />Notez que pour que l\'adresse soit chang&eacute;e, il faut que vous soyer connect&eacute; sur votre compte.<br /><br />A bient&ocirc;t dans Halo-Battle,<br />Le staff</p></body></html>';
if(!$mail->Send()){ //Teste si le return code est ok.
$template->assign('message','Erreur lors de l\'envoie du courriel de confirmation !<br /><br /><small><i>'.$mail->ErrorInfo.'</i></small><br /><br />Si le problème perciste, <a href="mailto:technique@halo-battle.s-fr.com">contactez un administrateur</a>.');
$template->assign('message','Erreur lors de l\'envoie du courriel de confirmation !<br /><br /><small><i>'.$mail->ErrorInfo.'</i></small><br /><br />Si le probl&egrave;me perciste, <a href="mailto:technique@halo-battle.s-fr.com">contactez un administrateur</a>.');
$template->assign('couleur','red');
$template->display('game/erreur.tpl');
exit;
}
else{
$template->assign('message','Un courriel vient d\'être envoyé à '.$Nmail.'. L\'adresse électronique ne sera modifié qu\'après avoir cliqué sur le lien d\'activation contenu dans ce courriel.');
$template->assign('message','Un courriel vient d\'être envoy&eacute; à '.$Nmail.'. L\'adresse &eacute;lectronique ne sera modifi&eacute; qu\'apr&egrave;s avoir cliqu&eacute; sur le lien d\'activation contenu dans ce courriel.');
$template->assign('couleur','green');
$template->display('game/erreur.tpl');
exit;
@ -178,7 +182,7 @@ elseif (isset($_GET['chg']) && $_GET['chg'] == 'mail') {
}
}
else {
$template->assign('message','L\'adresse électronique que vous avez tapée n\'est pas valide.');
$template->assign('message','L\'adresse &eacute;lectronique que vous avez tap&eacute;e n\'est pas valide.');
$template->assign('script','<script type="text/javascript">setTimeout(\'document.location.href="?p=options";\', 2500);</script>');
$template->assign('couleur','red');
$template->display('game/erreur.tpl');

View file

@ -5,7 +5,7 @@ $titre = 'Changement des options';
if (isset($_GET['auth'])) {
if (!empty($queryUser['mdpNOUV']) && !empty($queryUser['mdpNOUV']) && sha1($queryUser['mdpNOUV']) == $_GET['auth']) {
$bdd->connexion();
$bdd->query("UPDATE user SET mdp = mdpNOUV, mdpNOUV = '', mailNOUV = '' WHERE id = '$id_user';");
$bdd->query("UPDATE user SET mdp = mdpNOUV, mdpNOUV = '', mdp_var = 0, mailNOUV = '' WHERE id = '$id_user';");
$bdd->deconnexion();
$template->assign('message','Votre nouveau mot de passe est en place.');
$template->assign('couleur','green');

View file

@ -12,7 +12,7 @@ if (!empty($_GET['i']) && isset($_GET['n'])) {
$bdd->escape($Un);
$bdd->escape($Ui);
$user = $bdd->unique_query("SELECT * FROM user WHERE pseudo = '$Un' AND mdpNOUV = '$Ui';");
if ($user && $bdd->unique_query("UPDATE user SET mdp = mdpNOUV, mdpNOUV = '' WHERE pseudo = '$Un'")) {
if ($user && $bdd->unique_query("UPDATE user SET mdp = mdpNOUV, mdpNOUV = '', mdp_var = 0 WHERE pseudo = '$Un'")) {
$bdd->deconnexion();
$template->assign('message','Votre mot de passe a été réinitialisé avec succès.');
$template->assign('script','<script type="text/javascript">setTimeout(\'document.location.href="?index";\', 3500);</script>');

View file

@ -26,14 +26,16 @@ if (isset($_POST['planete'])) {
exit;
}
}
elseif(isset($_GET['a']) && $_GET['a'] == $sess->values['abandon']) {
elseif(isset($_GET['a']) && $_GET['a'] == $sess->values['abandon'] && !empty($id_plan)) {
$galaxie = $queryPlanete["galaxie"]; $ss = $queryPlanete["ss"]; $position = $queryPlanete["position"];
$bdd->connexion();
$bdd->query("DELETE FROM $table_planete WHERE id_user = '$id_user' AND id = '$id_plan' LIMIT 1;");
$bdd->query("DELETE FROM $table_planete WHERE id_user = '$id_user' AND id = '$id_plan' AND galaxie = '$galaxie' AND ss = '$ss' AND position = '$position' LIMIT 1;");
$bdd->query("DELETE FROM $table_flottes WHERE id_user = '$id_user' AND start_galaxie = '$galaxie' AND start_ss = '$ss' AND start_position = '$position';");
$req = $bdd->unique_query("SELECT * FROM $table_planete WHERE id_user = '$id_user' LIMIT 1;");
$bdd->deconnexion();
$sess->values['abandon'] = 0;
unset($sess->values['abandon']);
$sess->values['idPlan'] = $req['id'];
$sess->put();

View file

@ -20,7 +20,7 @@ if (isset($_POST['coeff_metal']) && isset($_POST['coeff_cs'])) {
$bdd->escape($coeff_hydrogene);
$bdd->escape($coeff_cs);
$bdd->escape($coeff_ce);
$bdd->query("UPDATE `planete` SET `coeff_mine_m` = '".($coeff_metal/100)."', `coeff_mine_c` = '".($coeff_cristal/100)."', `coeff_mine_h` = '".($coeff_hydrogene/100)."', `coeff_centrale_s` = '".($coeff_cs/100)."', `coeff_centrale_f` = '".($coeff_ce/100)."' WHERE `id` = '$idPlan'");
$bdd->query("UPDATE planete SET coeff_mine_m = '".($coeff_metal/100)."', coeff_mine_c = '".($coeff_cristal/100)."', coeff_mine_h = '".($coeff_hydrogene/100)."', coeff_centrale_s = '".($coeff_cs/100)."', coeff_centrale_f = '".($coeff_ce/100)."' WHERE id = '$idPlan'");
$bdd->deconnexion();
header('Location: ?p=ressources');
exit;

View file

@ -1,9 +1,9 @@
<?php
<?php
if(!defined('INDEX')) { header('Location: ../'); exit; }
$page = 'simulateur_combat';
$titre = 'Simulateur de combat';
if (isset($_POST['ATvais_1']) && isset($_POST['ATvais_2']) && isset($_POST['ATvais_3']) && isset($_POST['ATvais_4']) && isset($_POST['ATvais_5']) && isset($_POST['ATvais_6']) && isset($_POST['ATvais_7']) && isset($_POST['ATvais_8']) && isset($_POST['ATvais_9']) && isset($_POST['ATvais_10']) && isset($_POST['ATvais_12']) && isset($_POST['ENvais_1']) && isset($_POST['ENvais_2']) && isset($_POST['ENvais_3']) && isset($_POST['ENvais_4']) && isset($_POST['ENvais_5']) && isset($_POST['ENvais_6']) && isset($_POST['ENvais_7']) && isset($_POST['ENvais_8']) && isset($_POST['ENvais_9']) && isset($_POST['ENvais_10']) && isset($_POST['ENvais_11']) && isset($_POST['ENvais_12']) && isset($_POST['ENdef_1']) && isset($_POST['ENdef_2']) && isset($_POST['ENdef_3']) && isset($_POST['ENdef_4']) && isset($_POST['ENdef_5']) && isset($_POST['ENmetal']) && isset($_POST['ENcristal']) && isset($_POST['ENhydrogene']) && isset($_POST['ATtactique']) && isset($_POST['ENtactique']) && isset($_POST['maxtour'])) {
if (isset($_POST['ATvais_1']) && isset($_POST['ATvais_2']) && isset($_POST['ATvais_3']) && isset($_POST['ATvais_4']) && isset($_POST['ATvais_5']) && isset($_POST['ATvais_6']) && isset($_POST['ATvais_7']) && isset($_POST['ATvais_8']) && isset($_POST['ATvais_9']) && isset($_POST['ATvais_10']) && isset($_POST['ATvais_12']) && isset($_POST['ENvais_1']) && isset($_POST['ENvais_2']) && isset($_POST['ENvais_3']) && isset($_POST['ENvais_4']) && isset($_POST['ENvais_5']) && isset($_POST['ENvais_6']) && isset($_POST['ENvais_7']) && isset($_POST['ENvais_8']) && isset($_POST['ENvais_9']) && isset($_POST['ENvais_10']) && isset($_POST['ENvais_11']) && isset($_POST['ENvais_12']) && isset($_POST['ENdef_1']) && isset($_POST['ENdef_2']) && isset($_POST['ENdef_3']) && isset($_POST['ENdef_4']) && isset($_POST['ENdef_5']) && isset($_POST['ENmetal']) && isset($_POST['ENcristal']) && isset($_POST['ENhydrogene']) && isset($_POST['ATtactique']) && isset($_POST['ENtactique']) && isset($_POST['ATarme']) && isset($_POST['ENarme']) && isset($_POST['ATblind']) && isset($_POST['ENblind']) && isset($_POST['maxtour'])) {
$i = 0;
$queryFlottes[$i] = array(
"id" => 0,
@ -57,7 +57,7 @@ $queryEN = array(
require_once(_FCORE."hb_game/Class/class.rapport.php");
//On génére un nouveau combat
$combat = new Combat($queryFlottes[$i], $queryEN, $queryEN);
$combat = new Combat($queryFlottes[$i], $queryEN, $queryEN, array($_POST['ATblind'], $_POST['ENblind']));
$combat->changerTactiqueAT($_POST['ATtactique']);
$combat->changerTactiqueEN($_POST['ENtactique']);
$rapport = new Rapport(1, $queryFlottes[$i]['id_user'], 0, time());
@ -69,31 +69,45 @@ $queryEN = array(
$rapport->addInfo(array(false, false), 6);
while(!$rapport->var[6][0]) {
if ($combat->Ntour >= $_POST['maxtour']) break;
if (!empty($_POST['maxtour']) && $combat->Ntour >= $_POST['maxtour']) break;
$combat->Ntour++;
//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], $_POST['ATblind']), true, $_POST['ATarme']);
//Lancement du combat, si condition validée, attaquant vainceur
@$attaque = $combat->calcAttaque($arraytactique[2] + $combat->regenereBC($arraytactique[1], true, !$arraytactique[3]), true);
if (@!$combat->attaquerVais($attaque, true)) {
$combat->pillageSimul($queryEN['metal'], $queryEN['cristal'], $queryEN['hydrogene']);
$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], $_POST['ENblind']), false, $_POST['ENarme']);
//Lancement du combat, si condition validée, défenseur vainceur
@$attaque = $combat->calcAttaque($arraytactique[2] + $combat->regenereBC($arraytactique[1], false, !$arraytactique[3]), false);
if (@!$combat->attaquerVais($attaque, false)) $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];
$rapport->addInfo(array(true, true, false), 6);
}
elseif ($ATresult && !$ENresult) { //Défenseur vainqueur
$exportEN = $combat->exportEN();
$rapport->addInfo(array(true, false, false), 6);
}
elseif (!$ATresult && !$ENresult) { //Match nul
$exportEN = $combat->exportEN();
$rapport->addInfo(array(true, false, true), 6);
}
elseif ($combat->Ntour >= 250) { //Match nul
$exportEN = $combat->exportEN();
$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);
@ -103,7 +117,7 @@ $queryEN = array(
$combat->timestamp += 300;
$rapport->addInfo($combat->timestamp, 10);
$rapport->addInfo($combat->pillage, 11);
$rapport->addInfo($attaque, 14);
$rapport->addInfo($ATattaque.' vs '.$ENattaque, 14);
}
$rapport->addInfo($combat->Ntour, 3);
$debriM = $combat->debriM;
@ -114,10 +128,12 @@ $queryEN = array(
$template = $rapport->show();
print $template;
echo("\n<!--Page générée en : ".round((array_sum(explode(' ', microtime()))) - (array_sum(explode(' ', $chrono_start))), 4)." secondes.-->");
exit;
}
else {
$template->assign('nomvais', $nomvaisn);
$template->assign('technolo', $technolo);
array_splice($nomterra, 0, 8);
$template->assign('nomdef', $nomterra);
$template->assign('nomressourc', $ressourc);

View file

@ -1,41 +0,0 @@
<?php
if(!defined('INDEX')) { header('Location: ../'); exit; }
if (!empty($_GET['i'])) {
$base = new bdd();
$base->connexion();
$base->db();
$id = mysql_real_escape_string($_GET['i']);
$res = $base->unique_query("SELECT * FROM `user_inscriptions` WHERE `id_activ` = '$id'");
if ($res) {
switch($res['serveur']){
case 0:
$url = "http://127.0.0.1/hbn/";
break;
case 1:
//$url = "http://battle.halo.fr/";
$url = "http://hb.s-fr.com/";
break;
default:
$url = "http://battle.halo.fr/";
}
//On envoie la requête vers le serveur
$cds = sha1($res['pseudo'].'$'.$res['race'].'£'.$res['mdp'].'#'.$res['mail'].'ß'.$res['time_inscription'].'Ó'.$_SERVER['HTTP_USER_AGENT'].'♀☻'.$_SERVER['REMOTE_ADDR'].$res['placement']);
header('Location: '.$url.'?p=njoueur&nom='.$res['pseudo'].'&race='.$res['race'].'&mdp='.$res['mdp'].'&mail='.$res['mail'].'&ti='.$res['time_inscription'].'&placement='.$res['placement'].'&cds='.$cds);
exit;
}
else {
$template->assign('message','Le lien est expiré !');
$template->assign('script','<script type="text/javascript">setTimeout(\'document.location.href="?index";\', 2500);</script>');
$template->assign('couleur','red');
$template->display('cms/erreur.tpl');
exit;
}
$base->deconnexion();
}
else header('Location: ./');
?>

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

View file

@ -6,6 +6,7 @@ $table_alliances_attente = $config['db_prefix'].'alliances_attente';
$table_alliances_chat = $config['db_prefix'].'alliances_chat';
$table_alliances_creation = $config['db_prefix'].'alliances_creation';
$table_alliances_grade = $config['db_prefix'].'alliances_grade';
$table_bourse = $config['db_prefix'].'bourse';
$table_bug = $config['db_prefix'].'bug';
$table_classement = $config['db_prefix'].'classement';
$table_flottes = $config['db_prefix'].'flottes';

View file

@ -32,7 +32,7 @@ if (!isset($technolo)) {
$nomvais_rs = array(5000,25000,7500,10,20000,50,300,4000,3000,10000,0,30000);
//Coefficient vitesse courte distance : temps pour parcourir un syst&egrave;me
$nomvais_dc = array(108,108,108,25,108,108,108,108,108,108,108,108);
$nomvais_dc = array(50,50,50,100,50,50,50,50,50,50,50,50);
//Temps de pr&eacute;paration courte distance : temps de pr&eacute;paration &agrave; compter avant tout d&eacute;placement
$nomvais_pdc = array(900,900,900,35,900,900,900,900,900,900,900,900);
//Coefficient vitesse longue distance : temps pour parcourir un syst&egrave;me
@ -53,18 +53,19 @@ if (!isset($technolo)) {
//Débris de cristal
$nomvais_cd = array(300,300,300,300,300,300,300,300,300,300,300,24000);
//Rapide fire (nombre d'attaque par phase envers un vaisseau)
$nomvais_rf = array( array(1,1,1,1,1,1,1,1,1,1,1,1,1),
array(1,1,1,1,1,1,1,1,1,1,1,1,1),
array(1,1,1,1,1,1,1,1,1,1,1,1,1),
array(1,1,1,1,1,1,1,1,1,1,1,1,1),
array(1,1,1,1,1,1,1,1,1,1,1,1,1),
array(1,1,1,1,1,1,1,1,1,1,1,1,1),
array(40,40,40,40,40,40,1,1,2,1,1,1,1),
array(10,10,10,10,10,10,30,1,1,2,1,1,1),
array(30,30,30,30,30,30,1,1,10,2,1,1,1),
array(20,20,20,20,20,20,2,1,1,1,1,1,1),
array(80,80,80,80,80,80,25,12,8,4,1,2,1),
array(100,100,100,100,100,100,20,10,5,2,1,1,1));
$nomvais_rf = array( array(1,1,1,1,1,1,1,1,1,1,1,1,1), //Cargos petit
array(1,1,1,1,1,1,1,1,1,1,1,1,1), //Cargos grand
array(1,1,1,1,1,1,1,1,1,1,1,1,1), //Vaisseaux de colonisation
array(1,1,1,1,1,1,1,1,1,1,1,1,1), //Espionnage
array(1,1,1,1,1,1,1,1,1,1,1,1,1), //Recycleurs
array(1,1,1,1,1,1,1,1,1,1,1,1,1), //Longsword/Seraph
array(1,1,1,1,1,1,1,1,1,1,1,1,1), //Frégate
array(1,1,1,1,1,1,1,1,1,1,1,1,1), //Croiseurs de classe Halcyon
array(1,1,1,1,1,1,1,1,1,1,1,1,1), //Croiseurs de classe Marathon
array(1,1,1,1,1,1,1,1,1,1,1,1,1), //Porte vaisseaux
array(1,1,1,1,1,1,1,1,1,1,1,1,1), //Station orbitale
array(1,1,1,1,1,1,1,1,1,1,1,1,1) //Super porte-vaisseaux
);
$batimentVAR = array('mine_m','mine_c','mine_h','centrale_s','centrale_f','radar','labo','chantier_terrestre','chantier_spatial','caserne','silo','centre_info');
$batimentCALC = array(