2008-11-20 11:00:00 +00:00
< ? php
/***************************************************************************
* class . combat . php
* -------------------
* begin : Samedi 26 janvier 2008
2008-11-17 11:00:00 +00:00
* update : Samedi 12 mai 2008
2008-11-20 11:00:00 +00:00
* email : nemunaire @ gmail . com
*
*
***************************************************************************/
class Combat {
var $refflotte = 0 ;
var $ATvais = array ();
var $ENvais = array ();
var $ENdef = array ();
var $Ntour = 0 ;
var $ATtactique = 0 ;
var $ENtactique = 0 ;
2008-11-17 11:00:00 +00:00
var $timestamp = 0 ;
var $vaisContenu = 0 ;
var $vaisContenuM = 0 ;
var $vaisContenuC = 0 ;
var $vaisContenuH = 0 ;
var $debriM = 0 ;
var $debriC = 0 ;
2008-11-20 11:00:00 +00:00
/**
* Constructeur
2008-11-17 11:00:00 +00:00
* @ param array $flotteAT tableau SQL des vaisseaux envoyés par l ' attaquant
* @ param array $flotteEN tableau SQL de la planète du défenseur
* @ param array $defEN tableau SQL de la planète du défenseur
2008-11-20 11:00:00 +00:00
*
* @ return void
* @ access public
*/
function Combat ( $flotteAT , $flotteEN , $defEN ) {
include ( 'includes/vars.php' );
2008-11-17 11:00:00 +00:00
//Génération des vaisseaux attaquants
2008-11-20 11:00:00 +00:00
for ( $i = 1 ; $i <= 12 ; $i ++ ) {
2008-11-17 11:00:00 +00:00
if ( $flotteAT [ 'vaisseau_' . $i ] >= 1 ) {
//Création des groupes
$nbvais = $flotteAT [ 'vaisseau_' . $i ];
$nbgroupes = floor ( sqrt ( ceil ( $nbvais / 10 )));
$nbvaispgroupe = floor ( $nbvais / $nbgroupes );
$nbrest = $nbvais - $nbvaispgroupe * $nbgroupes ;
if ( isset ( $groupe )) unset ( $groupe );
$groupe = array ();
for ( $j = 0 ; $j < $nbgroupes ; $j ++ ) {
if ( $j == $nbgroupes ) $nbvaispgroupe += $nbrest ;
$groupe [] = array ( $nbvaispgroupe , $nomvais_bc [ $i - 1 ], $nomvais_pv [ $i - 1 ]);
}
$this -> ATvais [] = array ( $i , $flotteAT [ 'vaisseau_' . $i ], $nbgroupes , $groupe );
2008-11-20 11:00:00 +00:00
}
}
2008-11-17 11:00:00 +00:00
//Définition d'autres variables de la classe concernant la flotte
$this -> refflotte = $flotteAT [ 'id' ];
$this -> vaisContenu = $flotteAT [ 'contenu_max' ];
$this -> vaisContenuM = $flotteAT [ 'contenu_metal' ];
$this -> vaisContenuC = $flotteAT [ 'contenu_cristal' ];
$this -> vaisContenuH = $flotteAT [ 'contenu_hydrogene' ];
$this -> timestamp = $flotteAT [ 'start_time' ] + $flotteAT [ 'end_time' ];
//Génération des vaisseaux défenseurs
2008-11-20 11:00:00 +00:00
for ( $i = 1 ; $i <= 12 ; $i ++ ) {
if ( $flotteEN [ 'vaisseau_' . $i ] >= 1 ) {
2008-11-17 11:00:00 +00:00
//Création des groupes
$nbvais = $flotteEN [ 'vaisseau_' . $i ];
$nbgroupes = floor ( sqrt ( ceil ( $nbvais / 10 )));
$nbvaispgroupe = floor ( $nbvais / $nbgroupes );
$nbrest = $nbvais - $nbvaispgroupe * $nbgroupes ;
if ( isset ( $groupe )) unset ( $groupe );
$groupe = array ();
for ( $j = 0 ; $j < $nbgroupes ; $j ++ ) {
if ( $j == $nbgroupes ) $nbvaispgroupe += $nbrest ;
$groupe [] = array ( $nbvaispgroupe , $nomvais_bc [ $i - 1 ], $nomvais_pv [ $i - 1 ]);
}
$this -> ENvais [] = array ( $i , $flotteEN [ 'vaisseau_' . $i ], $nbgroupes , $groupe );
2008-11-20 11:00:00 +00:00
}
}
2008-11-17 11:00:00 +00:00
//Génération des défenses défenseurs
2008-11-20 11:00:00 +00:00
for ( $i = 1 ; $i <= 5 ; $i ++ ) {
if ( $defEN [ 'def_' . $i ] >= 1 ) {
2008-11-17 11:00:00 +00:00
//Création des groupes
$nbvais = $defEN [ 'def_' . $i ];
$nbgroupes = floor ( sqrt ( ceil ( $nbvais / 10 )));
$nbvaispgroupe = floor ( $nbvais / $nbgroupes );
$nbrest = $nbvais - $nbvaispgroupe * $nbgroupes ;
if ( isset ( $groupe )) unset ( $groupe );
$groupe = array ();
for ( $j = 0 ; $j < $nbgroupes ; $j ++ ) {
if ( $j == $nbgroupes ) $nbvaispgroupe += $nbrest ;
$groupe [] = array ( $nbvaispgroupe , $defense_bc [ $i - 1 ], $defense_pv [ $i - 1 ]);
}
$this -> ENdef [] = array ( $i , $defEN [ 'def_' . $i ], $nbgroupes , $groupe );
2008-11-20 11:00:00 +00:00
}
}
}
/**
* Change la tactique de l ' attaquant
2008-11-17 11:00:00 +00:00
* @ param int $tactique numéro de la tactique choisie
2008-11-20 11:00:00 +00:00
*
* @ return void
* @ access public
*/
function changerTactiqueAT ( $tactique ) {
$this -> ATtactique = ceil ( $tactique );
}
/**
2008-11-17 11:00:00 +00:00
* Change la tactique du défenseur
* @ param int $tactique numéro de la tactique choisie
2008-11-20 11:00:00 +00:00
*
* @ return void
* @ access public
*/
function changerTactiqueEN ( $tactique ) {
$this -> ENtactique = ceil ( $tactique );
}
/**
2008-11-17 11:00:00 +00:00
* Régénére les boucliers
* @ 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
2008-11-20 11:00:00 +00:00
*
2008-11-17 11:00:00 +00:00
* @ return float pourcentage non utilisé
2008-11-20 11:00:00 +00:00
* @ access public
*/
function regenereBC ( $pourcentage , $attaquant , $retour = false ) {
include ( 'includes/vars.php' );
if ( $attaquant ) {
$count = count ( $this -> ATvais );
$enplus = 0 ;
$norm = 0 ;
for ( $i = 0 ; $i < $count ; $i ++ ) {
$type = $this -> ATvais [ $i ][ 0 ] - 1 ;
$maxbc = $nomvais_bc [ $type ];
$ajout = $maxbc * $pourcentage / 100 ;
$cntbc = count ( $this -> ATvais [ $i ][ 3 ]);
for ( $j = 0 ; $j < $cntbc ; $j ++ ) {
2008-11-17 11:00:00 +00:00
$norm += $maxbc * $this -> ATvais [ $i ][ 3 ][ $j ][ 0 ];
if ( $this -> ATvais [ $i ][ 3 ][ $j ][ 1 ] < $maxbc ) {
$this -> ATvais [ $i ][ 3 ][ $j ][ 1 ] += $ajout ;
2008-11-20 11:00:00 +00:00
}
2008-11-17 11:00:00 +00:00
else $enplus += $ajout * $this -> ATvais [ $i ][ 3 ][ $j ][ 0 ];
if ( $this -> ATvais [ $i ][ 3 ][ $j ][ 1 ] > $maxbc ) {
$enplus += ( $this -> ATvais [ $i ][ 3 ][ $j ][ 1 ] - $maxbc ) * $this -> ATvais [ $i ][ 3 ][ $j ][ 0 ];
$this -> ATvais [ $i ][ 3 ][ $j ][ 1 ] = $maxbc ;
2008-11-20 11:00:00 +00:00
}
}
}
if ( $retour ) {
2008-11-17 11:00:00 +00:00
if ( $enplus / $norm == 1 ) return $pourcentage ;
2008-11-20 11:00:00 +00:00
else return false ;
}
else return $enplus / $norm ;
}
else {
$count = count ( $this -> ENvais );
$enplus = 0 ;
$norm = 0 ;
for ( $i = 0 ; $i < $count ; $i ++ ) {
$type = $this -> ENvais [ $i ][ 0 ] - 1 ;
$maxbc = $nomvais_bc [ $type ];
$ajout = $maxbc * $pourcentage / 100 ;
$cntbc = count ( $this -> ENvais [ $i ][ 3 ]);
for ( $j = 0 ; $j < $cntbc ; $j ++ ) {
2008-11-17 11:00:00 +00:00
$norm += $maxbc * $this -> ENvais [ $i ][ 3 ][ $j ][ 0 ];
if ( $this -> ENvais [ $i ][ 3 ][ $j ][ 1 ] < $maxbc ) {
$this -> ENvais [ $i ][ 3 ][ $j ][ 1 ] += $ajout ;
2008-11-20 11:00:00 +00:00
}
2008-11-17 11:00:00 +00:00
else $enplus += $ajout * $this -> ENvais [ $i ][ 3 ][ $j ][ 0 ];
if ( $this -> ENvais [ $i ][ 3 ][ $j ][ 1 ] > $maxbc ) {
$enplus += ( $this -> ENvais [ $i ][ 3 ][ $j ][ 1 ] - $maxbc ) * $this -> ENvais [ $i ][ 3 ][ $j ][ 0 ];
$this -> ENvais [ $i ][ 3 ][ $j ][ 1 ] = $maxbc ;
2008-11-20 11:00:00 +00:00
}
}
}
$return = $enplus / $norm ;
2008-11-17 11:00:00 +00:00
//Défenses
2008-11-20 11:00:00 +00:00
$count = count ( $this -> ENdef );
$enplus = 0 ;
$norm = 0 ;
for ( $i = 0 ; $i < $count ; $i ++ ) {
$type = $this -> ENdef [ $i ][ 0 ] - 1 ;
$maxbc = $defense_bc [ $type ];
$ajout = $maxbc * $pourcentage / 100 ;
$cntbc = count ( $this -> ENdef [ $i ][ 3 ]);
for ( $j = 0 ; $j < $cntbc ; $j ++ ) {
2008-11-17 11:00:00 +00:00
$norm += $maxbc * $this -> ENdef [ $i ][ 3 ][ $j ][ 0 ];
if ( $this -> ENdef [ $i ][ 3 ][ $j ][ 1 ] < $maxbc ) {
$this -> ENdef [ $i ][ 3 ][ $j ][ 1 ] += $ajout ;
2008-11-20 11:00:00 +00:00
}
2008-11-17 11:00:00 +00:00
else $enplus += $ajout * $this -> ENdef [ $i ][ 3 ][ $j ][ 0 ];
if ( $this -> ENdef [ $i ][ 3 ][ $j ][ 1 ] > $maxbc ) {
$enplus += ( $this -> ENdef [ $i ][ 3 ][ $j ][ 1 ] - $maxbc ) * $this -> ENdef [ $i ][ 3 ][ $j ][ 0 ];
$this -> ENdef [ $i ][ 3 ][ $j ][ 1 ] = $maxbc ;
2008-11-20 11:00:00 +00:00
}
}
}
$return += $enplus / $norm ;
2008-11-17 11:00:00 +00:00
if ( $retour ) {
if ( $enplus / $norm == 1 ) return $pourcentage ;
else return false ;
}
else return $return / 2 ;
2008-11-20 11:00:00 +00:00
}
}
/**
* Calcul la puissance d ' attaque disponible
2008-11-17 11:00:00 +00:00
* @ 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
2008-11-20 11:00:00 +00:00
*
* @ return int points disponibles
* @ access public
*/
function calcAttaque ( $pourcentage , $attaquant ) {
include ( 'includes/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 ];
}
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 ];
}
2008-11-17 11:00:00 +00:00
//Défenses
2008-11-20 11:00:00 +00:00
$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 ];
}
return $puissance ;
}
}
/**
* Attaque les vaisseaux adverses
* @ param int $points points d 'attaque disponible pour l' attaque
2008-11-17 11:00:00 +00:00
* @ param bool $attaquant attaque le défenseur si true , sinon attaque l ' attaquant
2008-11-20 11:00:00 +00:00
*
* @ return void
* @ access public
*/
function attaquerVais ( $points , $attaquant ) {
2008-11-17 11:00:00 +00:00
include ( 'includes/vars.php' );
2008-11-20 11:00:00 +00:00
if ( $attaquant ) {
while ( $points > 0 ) {
2008-11-17 11:00:00 +00:00
// Calcul du nombre de vaisseaux et défenses à attaquer
2008-11-20 11:00:00 +00:00
$nbvais = 0 ;
2008-11-17 11:00:00 +00:00
$nbgroupes = 0 ;
2008-11-20 11:00:00 +00:00
$nb = count ( $this -> ENvais );
for ( $i = 0 ; $i < $nb ; $i ++ ) {
$nbvais += $this -> ENvais [ $i ][ 1 ];
2008-11-17 11:00:00 +00:00
$nbgroupes += $this -> ENvais [ $i ][ 2 ];
2008-11-20 11:00:00 +00:00
}
$nb = count ( $this -> ENdef );
for ( $i = 0 ; $i < $nb ; $i ++ ) {
$nbvais += $this -> ENdef [ $i ][ 1 ];
2008-11-17 11:00:00 +00:00
$nbgroupes += $this -> ENdef [ $i ][ 2 ];
2008-11-20 11:00:00 +00:00
}
2008-11-17 11:00:00 +00:00
//S'il ne reste plus de vaisseaux et de défenses, on arrête la boucle
if ( $nbvais <= 0 || $nbgroupes <= 0 || $points <= 0 ) break ;
2008-11-20 11:00:00 +00:00
2008-11-17 11:00:00 +00:00
//Calcul du nombre de points qui sera enlevé par vaisseau ou défense
$ppv = $points / $nbgroupes ;
$points = 0 ;
2008-11-20 11:00:00 +00:00
2008-11-17 11:00:00 +00:00
//On lance l'attaque contre les vaisseaux
for ( $j = 0 ; $j < $nbgroupes ; $j ++ ){
$k = rand ( 0 , count ( $this -> ENvais ) - 1 );
$l = rand ( 0 , count ( $this -> ENvais [ $k ][ 3 ]) - 1 );
$this -> ENvais [ $k ][ 3 ][ $l ][ 1 ] -= $ppv ;
if ( $this -> ENvais [ $k ][ 3 ][ $l ][ 1 ] < 0 ) {
$this -> ENvais [ $k ][ 3 ][ $l ][ 2 ] -= abs ( $this -> ENvais [ $k ][ 3 ][ $l ][ 1 ]);
$this -> ENvais [ $k ][ 3 ][ $l ][ 1 ] = 0 ;
if ( $this -> ENvais [ $k ][ 3 ][ $l ][ 2 ] <= 0 ) {
$this -> ENvais [ $k ][ 1 ] -= $this -> ENvais [ $k ][ 3 ][ $l ][ 0 ];
$this -> ENvais [ $k ][ 2 ] -- ;
unset ( $this -> ENvais [ $k ][ 3 ][ $l ]);
$this -> ENvais [ $k ][ 3 ] = array_merge ( $this -> ENvais [ $k ][ 3 ]);
if ( ! count ( $this -> ENvais [ $k ][ 3 ])) {
unset ( $this -> ENvais [ $k ]);
$this -> ENvais [ $k ] = array_merge ( $this -> ENvais [ $k ]);
}
2008-11-20 11:00:00 +00:00
}
}
2008-11-17 11:00:00 +00:00
}
//On lance l'attaque contre les défenses
for ( $j = 0 ; $j < $nbgroupes ; $j ++ ){
$k = rand ( 0 , count ( $this -> ENdef ) - 1 );
$l = rand ( 0 , count ( $this -> ENdef [ $k ][ 3 ]) - 1 );
2008-11-20 11:00:00 +00:00
2008-11-17 11:00:00 +00:00
$this -> ENdef [ $k ][ 3 ][ $l ][ 1 ] -= $ppv ;
if ( $this -> ENdef [ $k ][ 3 ][ $l ][ 1 ] < 0 ) {
$this -> ENdef [ $k ][ 3 ][ $l ][ 2 ] -= abs ( $this -> ENdef [ $k ][ 3 ][ $l ][ 1 ]);
$this -> ENdef [ $k ][ 3 ][ $l ][ 1 ] = 0 ;
if ( $this -> ENdef [ $k ][ 3 ][ $l ][ 2 ] <= 0 ) {
$this -> ENdef [ $k ][ 1 ] -= $this -> ENdef [ $k ][ 3 ][ $l ][ 0 ];
$this -> ENdef [ $k ][ 2 ] -- ;
unset ( $this -> ENdef [ $k ][ 3 ][ $l ]);
$this -> ENdef [ $k ][ 3 ] = array_merge ( $this -> ENdef [ $k ][ 3 ]);
if ( ! count ( $this -> ENdef [ $k ][ 3 ])) {
unset ( $this -> ENdef [ $k ]);
$this -> ENdef [ $k ] = array_merge ( $this -> ENdef [ $k ]);
2008-11-20 11:00:00 +00:00
}
}
2008-11-17 11:00:00 +00:00
}
}
}
return count ( $this -> ENvais ) + count ( $this -> ENdef );
}
else {
while ( $points > 0 ) {
// Calcul du nombre de vaisseaux et défenses à attaquer
$nbvais = 0 ;
$nbgroupes = 0 ;
$nb = count ( $this -> ATvais );
for ( $i = 0 ; $i < $nb ; $i ++ ) {
$nbvais += $this -> ATvais [ $i ][ 1 ];
$nbgroupes += $this -> ATvais [ $i ][ 2 ];
}
2008-11-20 11:00:00 +00:00
2008-11-17 11:00:00 +00:00
//S'il ne reste plus de vaisseaux et de défenses, on arrête la boucle
if ( $nbvais <= 0 || $nbgroupes <= 0 || $points <= 0 ) break ;
//Calcul du nombre de points qui sera enlevé par vaisseau ou défense
$ppv = $points / $nbvais ;
$points = 0 ;
//On lance l'attaque
for ( $j = 0 ; $j < $nbgroupes ; $j ++ ){
$k = rand ( 0 , count ( $this -> ENdef ) - 1 );
$l = rand ( 0 , count ( $this -> ENdef [ $k ][ 3 ]) - 1 );
$this -> ENdef [ $k ][ 3 ][ $l ][ 1 ] -= $ppv ;
if ( $this -> ENdef [ $k ][ 3 ][ $l ][ 1 ] < 0 ) {
$this -> ENdef [ $k ][ 3 ][ $l ][ 2 ] -= abs ( $this -> ENdef [ $k ][ 3 ][ $l ][ 1 ]);
$this -> ENdef [ $k ][ 3 ][ $l ][ 1 ] = 0 ;
if ( $this -> ENdef [ $k ][ 3 ][ $l ][ 2 ] <= 0 ) {
$this -> ENdef [ $k ][ 1 ] -= $this -> ENdef [ $k ][ 3 ][ $l ][ 0 ];
$this -> ENdef [ $k ][ 2 ] -- ;
unset ( $this -> ENdef [ $k ][ 3 ][ $l ]);
$this -> ENdef [ $k ][ 3 ] = array_merge ( $this -> ENdef [ $k ][ 3 ]);
if ( ! count ( $this -> ENdef [ $k ][ 3 ])) {
unset ( $this -> ENdef [ $k ]);
$this -> ENdef [ $k ] = array_merge ( $this -> ENdef [ $k ]);
}
2008-11-20 11:00:00 +00:00
}
}
}
}
2008-11-17 11:00:00 +00:00
return count ( $this -> ATvais );
}
}
function exportAT ( $pillage = false ){
include ( 'includes/vars.php' );
$nb = count ( $this -> ATvais );
$nbvais = 0 ; $vaisContenu = 0 ; $vaisseau_1 = 0 ; $vaisseau_2 = 0 ; $vaisseau_3 = 0 ; $vaisseau_4 = 0 ; $vaisseau_5 = 0 ; $vaisseau_6 = 0 ; $vaisseau_7 = 0 ; $vaisseau_8 = 0 ; $vaisseau_9 = 0 ; $vaisseau_10 = 0 ; $vaisseau_11 = 0 ; $vaisseau_12 = 0 ;
for ( $i = 0 ; $i < $nb ; $i ++ ) {
$ { 'vaisseau_' . $this -> ATvais [ $i ][ 0 ]} += $this -> ATvais [ $i ][ 1 ];
$nbvais += $this -> ATvais [ $i ][ 1 ];
$this -> vaisContenu += $nomvais_rs [ $this -> ATvais [ $i ][ 0 ] - 1 ];
}
$sommeCont = $this -> vaisContenuM + $this -> vaisContenuC + $this -> vaisContenuH ;
if ( $sommeCont > $this -> vaisContenu ) {
$retirer = $sommeCont / $this -> vaisContenu ;
$this -> vaisContenuM = floor ( $this -> vaisContenuM / $retirer );
$this -> vaisContenuC = floor ( $this -> vaisContenuC / $retirer );
$this -> vaisContenuH = floor ( $this -> vaisContenuH / $retirer );
}
if ( $pillage ) {
$req = mysql_query ( " SELECT * FROM flottes WHERE `id` = ' " . $this -> refflotte . " ' " );
$resultat = mysql_fetch_array ( $req );
$reqDef = mysql_query ( " SELECT * FROM `planete` WHERE `galaxie` = ' " . $resultat [ 'end_galaxie' ] . " ' AND `ss` = ' " . $resultat [ 'end_ss' ] . " ' AND `position` = ' " . $resultat [ 'end_position' ] . " ' " ) or die ( " erreur sql " . mysql_error ());
$resultatDef = mysql_fetch_array ( $reqDef );
$ressplus = pillage ( $resultatDef [ 'metal' ], $resultatDef [ 'cristal' ], $resultatDef [ 'hydrogene' ], $this -> vaisContenu - $this -> vaisContenuM - $this -> vaisContenuC - $this -> vaisContenuH );
$this -> vaisContenuM += $ressplus [ 0 ];
$this -> vaisContenuC += $ressplus [ 1 ];
$this -> vaisContenuH += $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 . '\'' ;
}
function exportEN (){
$nb = count ( $this -> ENvais );
$vaisseau_1 = 0 ; $vaisseau_2 = 0 ; $vaisseau_3 = 0 ; $vaisseau_4 = 0 ; $vaisseau_5 = 0 ; $vaisseau_6 = 0 ; $vaisseau_7 = 0 ; $vaisseau_8 = 0 ; $vaisseau_9 = 0 ; $vaisseau_10 = 0 ; $vaisseau_11 = 0 ; $vaisseau_12 = 0 ;
for ( $i = 0 ; $i < $nb ; $i ++ ) {
$ { 'vaisseau_' . $this -> ENvais [ $i ][ 0 ]} += $this -> ENvais [ $i ][ 1 ];
}
$nb = count ( $this -> ENdef );
$def_1 = 0 ; $def_2 = 0 ; $def_3 = 0 ; $def_4 = 0 ; $def_5 = 0 ;
for ( $i = 0 ; $i < $nb ; $i ++ ) {
$ { 'def_' . $this -> ENdef [ $i ][ 0 ]} += $this -> ENdef [ $i ][ 1 ];
2008-11-20 11:00:00 +00:00
}
2008-11-17 11:00:00 +00:00
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 . '\'' ;
2008-11-20 11:00:00 +00:00
}
2008-11-17 11:00:00 +00:00
function genRapport ( $fin , $ATgagnant = false ){
$req = mysql_query ( " SELECT * FROM `flottes` WHERE `id` = ' " . $this -> refflotte . " ' " );
$resultat = mysql_fetch_array ( $req );
$reqDef = mysql_query ( " SELECT `id_user` FROM `planete` WHERE `galaxie` = ' " . $resultat [ 'end_galaxie' ] . " ' AND `ss` = ' " . $resultat [ 'end_ss' ] . " ' AND `position` = ' " . $resultat [ 'end_position' ] . " ' " ) or die ( " erreur sql " . mysql_error ());
$resultatDef = mysql_fetch_array ( $reqDef );
if ( $this -> Ntour == 0 ) {
$rapportAT = '[b]Le combat contre ' . trouvNom ( $resultatDef [ 'id_user' ]) . ' est engagé ! [ / b ]
' ;
$rapportEN = '[b]Un combat est engagé contre ' . trouvNom ( $resultatDef [ 'id_user' ]) . ' ! [ / b ]
' ;
}
elseif ( $fin ) {
$rapportAT = '[b]Le combat contre ' . trouvNom ( $resultatDef [ 'id_user' ]) . ' est terminé ! [ / b ]
' ;
$rapportEN = '[b]Le combat contre ' . trouvNom ( $resultatDef [ 'id_user' ]) . ' est terminé ! [ / b ]
' ;
}
else {
$rapportAT = '[b]Suite du combat contre ' . trouvNom ( $resultatDef [ 'id_user' ]) . ' ! [ / b ]
' ;
$rapportEN = '[b]Suite du combat contre ' . trouvNom ( $resultatDef [ 'id_user' ]) . ' ! [ / b ]
' ;
}
$rapportAT .= 'Tactique lors de ce tour : ' . txtTactique ( $this -> ATtactique ) . ' .
Lieux : [ '.$resultat[' end_galaxie '].' : '.$resultat[' end_ss '].' : '.$resultat[' end_position '].' ] METTRE UN LIEN
Vaisseaux au début de notre côté :
Array
Vaisseaux adverse au début :
Array
Défenses adverse au début :
Array
Etat de notre flotte à la fin de ce tour :
Grand Array ^^
2008-11-20 11:00:00 +00:00
2008-11-17 11:00:00 +00:00
Etat de la flotte adverse à la fin de ce tour :
Grand Array ^^
' ;
$rapportEN .= 'Tactique lors de ce tour : ' . txtTactique ( $this -> ENtactique ) . ' .
Lieux : [ '.$resultat[' end_galaxie '].' : '.$resultat[' end_ss '].' : '.$resultat[' end_position '].' ] METTRE UN LIEN
Vaisseaux au début de notre côté :
Array
Défenses au début de notre côté :
Array
Vaisseaux adverse au début :
Array
Etat de notre flotte à la fin de ce tour :
Grand Array ^^
Etat de la flotte adverse à la fin de ce tour :
Grand Array ^^
' ;
if ( floor ( $this -> Ntour / 2 ) == $this -> Ntour / 2 && ! $fin ) {
$rapportAT .= ' Vous pouvez profiter du temps de régénération des boucliers et des armes pour envoyer un nouvel ordre de tactique : Cliquez ici !
La prochaine attaque est prévue à '.date(' / dm / H : i : s ' , $this -> timestamp + 600 );
$rapportEN .= ' Vous pouvez profiter du temps de régénération des boucliers et des armes pour envoyer un nouvel ordre de tactique : Cliquez ici !
La prochaine attaque est prévue à '.date(' / dm / H : i : s ' , $this -> timestamp + 300 );
}
elseif ( ! $fin ) {
$rapportAT .= ' Vous pouvez profiter du temps de régénération des boucliers et des armes pour envoyer un nouvel ordre de tactique : Cliquez ici !
La prochaine attaque est prévue à '.date(' / dm / H : i : s ' , $this -> timestamp + 300 );
$rapportEN .= ' Vous pouvez profiter du temps de régénération des boucliers et des armes pour envoyer un nouvel ordre de tactique : Cliquez ici !
La prochaine attaque est prévue à '.date(' / dm / H : i : s ' , $this -> timestamp + 600 );
}
elseif ( $fin && $ATgagnant ) {
$rapportAT .= ' Nous avons gagné le combat !
Nous repartons avec plein de choses . ' ;
$rapportEN .= 'Nous n\'avons pas pu repousser l\'envahisseur qui repart avec plein de chose.' ;
}
elseif ( $fin && ! $ATgagnant ) {
$rapportAT .= 'Nous avons perdu le combat !' ;
$rapportEN .= 'Nous avons pu repousser l\'envahisseur qui repart sans rien.' ;
}
return array ( mysql_real_escape_string ( $rapportAT ), mysql_real_escape_string ( $rapportEN ), $resultat [ 'id_user' ], $resultatDef [ 'id_user' ]);
}
2008-11-20 11:00:00 +00:00
}
?>