HB/pages/ressources.php

122 lines
7.6 KiB
PHP

<?php
session_start();
$id=$_SESSION['id'];
$galaxy=$_SESSION['galaxy'];
$ss=$_SESSION['ss'];
$pos=$_SESSION['pos'];
$_SESSION['dernPage'] = 'ressources.php';
require_once 'bdd.php';
require_once('../securite.php');
require_once 'ressourcetem.php';
require_once 'noms.php';
require('../template.php');
$template = new Template('../templates/'.$templates);
$template->set_filenames(array('ressourcestpl' => 'ressources.tpl'));
$template->assign_vars( array('RES_IMAGE' => $RES_IMAGE, 'NOM_METAL' => $NOM_METAL, 'NOM_CRISTAL' => $NOM_CRISTAL, 'NOM_HYDROGENE' => $NOM_HYDROGENE, 'NOM_ENERGIE' => $NOM_ENERGIE, 'RES_METAL' => $RES_METAL, 'RES_CRISTAL' => $RES_CRISTAL, 'RES_HYDROGENE' => $RES_HYDROGENE, 'RES_ENERGIE' => $RES_ENERGIE, 'ERREUR' => $ERREUR, 'HEADER' => $HEADER, 'PUB' => $PUB));
for ($i=0 ; $i<count($Aplan_value) ; $i++) {
$template->assign_block_vars('planetes',array('RES_VALUE' => $Aplan_value[$i], 'RES_MORE' => $Aplan_more[$i], 'RES_REF' => $Aplan_ref[$i]));
}
$template->set_filenames(array('Tabressources' => 'Tabressources.tpl'));
$template->assign_var_from_handle('RESSOURCES', 'ressourcestpl');
$template->assign_vars(array('PUB' => $PUB));
$cap = (pow(2,$silo)*100000);
$temps_ecoule = 3600;
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 = 0;
if ($centrale_s > 0) $energie_s = ceil((($centrale_s*20+(exp($centrale_s*0.3)*10)))); else $energie_s = 0;
//Calcul de la consomation d'énergie
$nrj = $energie_m + $energie_c + $energie_h;
//Calcul de la production d'énergie
$t = $energie_s * $coeff_centrale_s + $energie_f * $coeff_centrale_f;
$coeff = $t / $nrj;
if ($coeff < 0) $coeff = 0;
elseif ($coeff == 0) $coeff = 0;
elseif ($coeff > 1) $coeff = 1;
//Calcul des proportions
$point = $coeff * 3;
if ($coeff_mine_m + $coeff_mine_c + $coeff_mine_h != 0) {
$p_mine_m = $coeff_mine_m / ($coeff_mine_m + $coeff_mine_c + $coeff_mine_h);
$p_mine_c = $coeff_mine_c / ($coeff_mine_m + $coeff_mine_c + $coeff_mine_h);
$p_mine_h = $coeff_mine_h / ($coeff_mine_m + $coeff_mine_c + $coeff_mine_h);
}
else {
$p_mine_m = 0.33333333;
$p_mine_c = 0.33333333;
$p_mine_h = 0.33333333;
}
if ($metal >= $cap) {
$prod_met=0;
$metal = $cap;
}
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)))/0.36)*$temps_ecoule)/10000)*3.7 + 0.011*$temps_ecoule)*$coeff_mine_m;
}
if ($cristal >= $cap) {
$prod_cri=0;
$cristal = $cap;
}
else {
if ($mine_c < 0) $prod_cri = 0.0055*$temps_ecoule;
else $prod_cri = (((ceil(((($mine_c*13)+(pow(1.36,$mine_c)*exp(0.0675*$mine_c)))/0.36)*$temps_ecoule)/10000)*7) + 0.0055*$temps_ecoule)*$coeff_mine_c;
}
if ($hydrogene >= $cap) {
$prod_hy=0;
$hydrogene = $cap;
}
else {
if ($mine_h < 0) $prod_hy = 0;
else $prod_hy = ((((floor(((($mine_h*12)+(pow(1.394,$mine_h)*exp(0.072*$mine_h)))/0.36)*$temps_ecoule)/10000)*5)))*$coeff_mine_h;
if ($mine_h == 0) $prod_hy=0;
if ($prod_hy < 0) $prod_hy = 0;
}
if ($centrale_f > 0) $conso_h = ((ceil((($centrale_f*5+(exp($centrale_f*0.3)*10)))/0.36)/10000)*$temps_ecoule)*$coeff_energie_f;
else $conso_h = 0;
$prod_mineh = $prod_hy;
$prod_hysv = $prod_hy;
$prod_hy -= $conso_h;
if ($hydrogene+$prod_hy < 0) {
$prod_hy = $prod_hysv;
$conso_h = 0;
$coeff_energie_f = 0;
}
$a=$metal+$prod_met;
$b=$cristal+$prod_cri;
$w = $prod_hy;
$c = $hydrogene+$prod_hy;
$u = ($energie_s*$coeff_energie_s+$energie_f*$coeff_energie_f) - ($energie_m+$energie_c+$energie_h);
$energie_f = $energie_f*$coeff_energie_f;
$template->assign_block_vars('batiment', array('NOM' => $batiment[0], 'NIVEAU' => $mine_m, 'COEFF' => (floor($coeff_mine_m*1000)/10).'%', 'CMETAL' => '#00FF00', 'CCRISTAL' => '#00FF00', 'CHYDROGENE' => '#00FF00', 'CENERGIE' => '#FF0000', 'PMETAL' => separerNombres(floor($prod_met)), 'PCRISTAL' => '', 'PHYDROGENE' => '', 'PENERGIE' => '-'.separerNombres(floor(abs($energie_m)))));
$template->assign_block_vars('batiment', array('NOM' => $batiment[1], 'NIVEAU' => $mine_c, 'COEFF' => (floor($coeff_mine_c*1000)/10).'%', 'CMETAL' => '#00FF00', 'CCRISTAL' => '#00FF00', 'CHYDROGENE' => '#00FF00', 'CENERGIE' => '#FF0000', 'PMETAL' => '', 'PCRISTAL' => separerNombres(floor($prod_cri)), 'PHYDROGENE' => '', 'PENERGIE' => '-'.separerNombres(floor(abs($energie_c)))));
if ($mine_h > 0) $template->assign_block_vars('batiment', array('NOM' => $batiment[2], 'NIVEAU' => $mine_h, 'COEFF' => (floor($coeff_mine_h*1000)/10).'%', 'CMETAL' => '#00FF00', 'CCRISTAL' => '#00FF00', 'CHYDROGENE' => '#00FF00', 'CENERGIE' => '#FF0000', 'PMETAL' => '', 'PCRISTAL' => '', 'PHYDROGENE' => separerNombres(floor($prod_mineh)), 'PENERGIE' => '-'.separerNombres(floor(abs($energie_h)))));
if ($centrale_s > 0) $template->assign_block_vars('batiment', array('NOM' => $batiment[3], 'NIVEAU' => $centrale_s, 'COEFF' => ($coeff_energie_s*100).'%', 'CMETAL' => '#FF0000', 'CCRISTAL' => '#FF0000', 'CHYDROGENE' => '#FF0000', 'CENERGIE' => '#00FF00', 'PMETAL' => '', 'PCRISTAL' => '', 'PHYDROGENE' => '', 'PENERGIE' => separerNombres(floor(abs($energie_s)))));
if ($centrale_f > 0) $template->assign_block_vars('batiment', array('NOM' => $batiment[4], 'NIVEAU' => $centrale_f, 'COEFF' => ($coeff_energie_f*100).'%', 'CMETAL' => '#FF0000', 'CCRISTAL' => '#FF0000', 'CHYDROGENE' => '#FF0000', 'CENERGIE' => '#00FF00', 'PMETAL' => '', 'PCRISTAL' => '', 'PHYDROGENE' => separerNombres(floor($conso_h*-1)), 'PENERGIE' => floor(abs($energie_f))));
$template->assign_block_vars('batiment', array('NOM' => 'Capacité des dépôts', 'NIVEAU' => $silo, 'COEFF' => '', 'CMETAL' => '#00FF00', 'CCRISTAL' => '#00FF00', 'CHYDROGENE' => '#00FF00', 'CENERGIE' => '#FF0000', 'PMETAL' => separerNombres($cap), 'PCRISTAL' => separerNombres($cap), 'PHYDROGENE' => separerNombres($cap), 'PENERGIE' => ''));
if ($u < 0 && $prod_hy < 0) $template->assign_block_vars('batiment', array('NOM' => '<b>Total</b>', 'NIVEAU' => '', 'COEFF' => '', 'CMETAL' => '#00FF00', 'CCRISTAL' => '#00FF00', 'CHYDROGENE' => '#FF0000', 'CENERGIE' => '#FF0000', 'PMETAL' => separerNombres(floor($prod_met)), 'PCRISTAL' => separerNombres(floor($prod_cri)), 'PHYDROGENE' => separerNombres(floor($w)), 'PENERGIE' => floor($u)));
elseif ($prod_hy < 0) $template->assign_block_vars('batiment', array('NOM' => '<b>Total</b>', 'NIVEAU' => '', 'COEFF' => '', 'CMETAL' => '#00FF00', 'CCRISTAL' => '#00FF00', 'CHYDROGENE' => '#FF0000', 'CENERGIE' => '#00FF00', 'PMETAL' => separerNombres(floor($prod_met)), 'PCRISTAL' => separerNombres(floor($prod_cri)), 'PHYDROGENE' => separerNombres(floor($w)), 'PENERGIE' => floor($u)));
elseif ($u < 0) $template->assign_block_vars('batiment', array('NOM' => '<b>Total</b>', 'NIVEAU' => '', 'COEFF' => '', 'CMETAL' => '#00FF00', 'CCRISTAL' => '#00FF00', 'CHYDROGENE' => '#00FF00', 'CENERGIE' => '#FF0000', 'PMETAL' => separerNombres(floor($prod_met)), 'PCRISTAL' => separerNombres(floor($prod_cri)), 'PHYDROGENE' => separerNombres(floor($w)), 'PENERGIE' => separerNombres(floor($u))));
else $template->assign_block_vars('batiment', array('NOM' => '<b>Total</b>', 'NIVEAU' => '', 'COEFF' => '', 'CMETAL' => '#00FF00', 'CCRISTAL' => '#00FF00', 'CHYDROGENE' => '#00FF00', 'CENERGIE' => '#00FF00', 'PMETAL' => '<b>'.separerNombres(floor($prod_met)).'</b>', 'PCRISTAL' => '<b>'.separerNombres(floor($prod_cri)).'</b>', 'PHYDROGENE' => '<b>'.separerNombres(floor($w)).'</b>', 'PENERGIE' => '<b>'.separerNombres(floor($u)).'</b>'));
$template->pparse('Tabressources');
?>