2007-11-05 11:00:00 +00:00
< ? php
$id = $_SESSION [ 'id' ];
$g = $_SESSION [ 'galaxy' ];
$s = $_SESSION [ 'ss' ];
$p = $_SESSION [ 'pos' ];
$race = $_SESSION [ 'race' ];
2007-11-20 11:00:00 +00:00
require_once ( '../fonctions.php' );
2007-11-05 11:00:00 +00:00
require ( '../connectBDD.php' );
require_once 'noms.php' ;
$appel = mysql_query ( " SELECT * FROM planete WHERE id_user=' $id ' AND galaxie=' $g ' AND ss=' $s 'AND position=' $p ' " );
$ressource = mysql_fetch_array ( $appel );
$mine_m = $ressource [ 'mine_m' ];
$mine_c = $ressource [ 'mine_c' ];
$mine_h = $ressource [ 'mine_h' ];
$centrale_s = $ressource [ 'centrale_s' ];
$centrale_f = $ressource [ 'centrale_f' ];
$temps_actuel = time ();
$temps_ancien = $ressource [ 'timestamp' ];
$temps_ecoule = $temps_actuel - $temps_ancien ;
$cap = ( pow ( 2 , $ressource [ 'silo' ]) * 100000 );
$metal = $ressource [ 'metal' ];
$cristal = $ressource [ 'cristal' ];
$hydrogene = $ressource [ 'hydrogene' ];
//---------------Productions--------
if ( $mine_m > 0 ) $energie_m = ceil (( exp ( $mine_m * 0.28 ) * 10 )); else $energie_m = 0 ;
if ( $mine_c > 0 ) $energie_c = ceil (( exp ( $mine_c * 0.28 ) * 10 )); else $energie_c = 0 ;
if ( $mine_h > 0 ) $energie_h = ceil (( exp ( $mine_h * 0.31 ) * 10 )); else $energie_h = 0 ;
if ( $centrale_f > 0 ) $energie_f = ceil ((( $centrale_f * 80 + ( exp ( $centrale_f * 0.38 ) * 11 )))); else $energie_f = 1 ; // pour pas avoir div by 0
if ( $centrale_s > 0 ) $energie_s = ceil ((( $centrale_s * 20 + ( exp ( $centrale_s * 0.3 ) * 10 )))); else $energie_s = 0 ;
2007-11-20 11:00:00 +00:00
//Calcul de la consomation d'<27> nergie
$nrj = $energie_m + $energie_c + $energie_h ;
2007-11-05 11:00:00 +00:00
2007-11-20 11:00:00 +00:00
//Calcul de la production d'<27> nergie
2007-11-05 11:00:00 +00:00
$t = $energie_f + $energie_s ;
$coeff = ( $energie_s + $energie_f + $energie_m + $energie_c + $energie_h ) / ( $energie_s + $energie_f );
2007-11-20 11:00:00 +00:00
if ( $coeff < 0 ) $coeff = 0 ;
if ( $coeff > 1 ) $coeff = 1 ;
2007-11-05 11:00:00 +00:00
if ( $metal >= $cap ) $prod_met = 0 ;
else {
if ( $mine_m < 0 ) $prod_met = 0.011 * $temps_ecoule ;
else $prod_met = ( ceil (((( $mine_m * 32 ) + ( pow ( 1.41 , $mine_m ) * exp ( 0.066 * $mine_m )) * $coeff ) / 0.36 ) * $temps_ecoule ) / 10000 ) * 3.7 + 0.011 * $temps_ecoule ;
}
if ( $cristal >= $cap ) $prod_cri = 0 ;
else {
if ( $mine_c < 0 ) $prod_cri = 0.0055 * $temps_ecoule ;
else $prod_cri = (( floor (((( $mine_c * 13 ) + ( pow ( 1.36 , $mine_c ) * exp ( 0.0675 * $mine_c )) * $coeff ) / 0.36 ) * $temps_ecoule ) / 10000 ) * 7 ) + 0.0055 * $temps_ecoule ;
}
if ( $hydrogene >= $cap ) $prod_hy = 0 ;
else {
if ( $centrale_f > 0 ) $conso_h = (( ceil ((( $centrale_f * 5 + ( exp ( $centrale_f * 0.3 ) * 10 )) * $coeff ) / 0.36 ) / 10000 ) * $temps_ecoule );
else $conso_h = 0 ;
if ( $mine_h < 0 ) $prod_hy = 0 ;
else $prod_hy = ((( floor (((( $mine_h * 12 ) + ( pow ( 1.394 , $mine_h ) * exp ( 0.072 * $mine_h )) * $coeff ) / 0.36 ) * $temps_ecoule ) / 10000 ) * 5 )) - $conso_h ;
if ( $mine_h == 0 ) $prod_hy = 0 ;
if ( $prod_hy < 0 ) $prod_hy = 0 ;
}
$a = $metal + $prod_met ;
$b = $cristal + $prod_cri ;
$c = $hydrogene + $prod_hy ;
//---------------M.A.J--------------
mysql_query ( " UPDATE planete SET timestamp=' $temps_actuel ', metal=' $a ', cristal=' $b ', hydrogene=' $c ', coeff=' $coeff ', energie=' $t ' WHERE id_user=' $id ' AND galaxie=' $g ' AND ss=' $s 'AND position=' $p ' " );
$pseudoz = $ressource [ 'pseudo' ];
$req = mysql_query ( " SELECT id, galaxie, ss, position, nom_planete FROM planete WHERE id_user=' $id ' " );
2007-11-20 11:00:00 +00:00
$reqIsol = mysql_query ( " SELECT id FROM planete WHERE id_user=' $id ' AND isolement != '0' " );
2007-11-05 11:00:00 +00:00
$RES_IMAGE = $image ;
$Aplan_ref = '' ; $Aplan_value = '' ; $Aplan_more = '' ;
2007-11-20 11:00:00 +00:00
for ( $i = 0 ; $i < mysql_num_rows ( $req ); $i ++ ) {
$x = mysql_query ( " SELECT * FROM planete WHERE id_user=' $id ' ORDER BY id DESC LIMIT $i ,1 " );
2007-11-05 11:00:00 +00:00
$d = mysql_fetch_array ( $x );
2007-11-20 11:00:00 +00:00
if ( $d [ 'isolement' ] != 0 && $d [ 'isolement' ] + ( mysql_num_rows ( $req ) - 10 ) * 7200 <= time ()) {
$Aplan_value .= $d [ 'id' ] . ' ' ;
if ( $d [ 'galaxie' ] == $_SESSION [ 'galaxy' ] && $d [ 'ss' ] == $_SESSION [ 'ss' ] && $d [ 'position' ] == $_SESSION [ 'pos' ]) $Aplan_more .= ' selected="selected";' ;
else $Aplan_more .= ';' ;
$Aplan_ref .= $d [ 'nom_planete' ] . ' [' . $d [ 'galaxie' ] . ':' . $d [ 'ss' ] . ':' . $d [ 'position' ] . '];' ;
$nextIsol = $d [ 'isolement' ] + ( mysql_num_rows ( $req ) - 10 ) * 7200 + rand ( 83000 , 170000 );
mysql_query ( " UPDATE planete SET isolement=' $nextIsol ' WHERE id_user=' $id ' AND galaxie=' " . $d [ 'galaxie' ] . " ' AND ss=' " . $d [ 'ss' ] . " 'AND position=' " . $d [ 'position' ] . " ' " );
}
elseif ( $d [ 'isolement' ] + ( mysql_num_rows ( $req ) - 10 ) * 7200 < time () || $d [ 'isolement' ] == 0 ) {
$Aplan_value .= $d [ 'id' ] . ' ' ;
if ( $d [ 'galaxie' ] == $_SESSION [ 'galaxy' ] && $d [ 'ss' ] == $_SESSION [ 'ss' ] && $d [ 'position' ] == $_SESSION [ 'pos' ]) $Aplan_more .= ' selected="selected";' ;
else $Aplan_more .= ';' ;
$Aplan_ref .= $d [ 'nom_planete' ] . ' [' . $d [ 'galaxie' ] . ':' . $d [ 'ss' ] . ':' . $d [ 'position' ] . '];' ;
}
elseif ( $d [ 'galaxie' ] == $_SESSION [ 'galaxy' ] && $d [ 'ss' ] == $_SESSION [ 'ss' ] && $d [ 'position' ] == $_SESSION [ 'pos' ]) {
$time = time ();
mysql_query ( " UPDATE planete SET isolement=' $time ' WHERE id_user=' $id ' AND galaxie=' " . $d [ 'galaxie' ] . " ' AND ss=' " . $d [ 'ss' ] . " 'AND position=' " . $d [ 'position' ] . " ' " );
}
2007-11-05 11:00:00 +00:00
}
$Aplan_value = split ( ' ' , trim ( $Aplan_value ));
2007-11-20 11:00:00 +00:00
$Aplan_more = split ( ';' , trim ( $Aplan_more ));
2007-11-05 11:00:00 +00:00
$Aplan_ref = split ( ';' , trim ( $Aplan_ref ));
$NOM_METAL = $ressourc [ 0 ];
$NOM_CRISTAL = $ressourc [ 1 ];
$NOM_HYDROGENE = $ressourc [ 2 ];
$NOM_ENERGIE = $ressourc [ 3 ];
2007-11-20 11:00:00 +00:00
$RES_METAL = separerNombres ( floor ( $a ));
$RES_CRISTAL = separerNombres ( floor ( $b ));
$RES_HYDROGENE = separerNombres ( floor ( $c ));
$RES_ENERGIE = separerNombres ( $nrj ) . '/' . separerNombres ( $t );
2007-11-05 11:00:00 +00:00
mysql_close ();
?>