HB/onyx2/include/game/jeu/batiments.php

90 lines
No EOL
3.3 KiB
PHP

<?php
if(!defined('INDEX')) { header('Location: ../'); exit; }
$titre = 'Batiments';
//Si l'on est sur un astéroide, on vérifie que le joueur ait les permissions nécessaire
if (SURFACE == "asteroide" && !($planete->permissions_alliance &1))
erreur("Vous n'avez pas le grade requis pour vous occuper des bâtiments de l'astéroide.");
//Lancement d'une nouvelle construction
if (isset($_GET['c']))
{
//On vérifie qu'il n'y ait pas de technologie en cours de recherche si l'on veut améliorer le centre de recherche
if(gpc('c') == 6 && $planete->file_tech->hasObject())
erreur('Une technologie est en cours de recherche dans votre laboratoire, vous ne pouvez pas faire de travaux !');
$planete->file_bat->batiment_addObjet(intval(gpc('c')), $planete);
redirection($VAR['menu']['batiments']);
}
//Lancement d'une déconstruction
if (isset($_GET['d']))
{
//On vérifie qu'il n'y ait pas de technologie en cours de recherche si l'on veut améliorer le centre de recherche
if($_GET['d'] == 6 && $planete->file_tech->hasObject())
erreur('Une technologie est en cours de recherche dans votre laboratoire, vous ne pouvez pas faire de travaux !');
$planete->file_bat->batiment_addDemolition(intval(gpc('d')), $planete);
redirection($VAR['menu']['batiments']);
}
//Annulation d'une nouvelle construction
if (isset($_GET['a']))
{
$planete->file_bat->batiment_delObjet(intval(gpc('a')), $planete);
redirection($VAR['menu']['batiments']);
}
if (SURFACE == "planete")
{
$page = 'batiments';
$TEMP_liste = array();
foreach($planete->batiments as $i => $niveau)
{
//Si l'on est pas sur la planète mère, on désactive le laboratoire
if ($i == 6 && $queryPlanetes[0]['id'] != $planete->id)
continue;
if (!empty($LANG[$planete->race]['batiments']['noms_sing'][$i]) && Donnee::neededBatiments($i, $planete))
{
$TEMP_liste[] = array (
'id' => $i,
'image' => $batimeni[$i],
'niveau' => $niveau,
'nec_metal' => Donnee::metalBatiments($i, $niveau+1, $planete),
'nec_cristal' => Donnee::cristalBatiments($i, $niveau+1, $planete),
'nec_hydrogene' => Donnee::hydrogeneBatiments($i, $niveau+1, $planete),
'temps' => sec(Donnee::tempsBatiments($i, $niveau+1, $planete)),
'enfile' => $planete->file_bat->batiment_objectInFile($i)
);
}
}
}
else
{
$page = 'batiments_alli';
$TEMP_liste = array();
foreach($planete->batiments as $i => $niveau)
{
if (!empty($LANG[$planete->race]['alli_batiments']['noms_sing'][$i]) && Donnee::neededAlli_Batiments($i, $planete))
{
$TEMP_liste[] = array (
'id' => $i,
'image' => $alli_batimeni[$i],
'niveau' => $niveau,
'nec_metal' => Donnee::metalAlli_Batiments($i, $niveau+1, $planete),
'nec_cristal' => Donnee::cristalAlli_Batiments($i, $niveau+1, $planete),
'nec_hydrogene' => Donnee::hydrogeneAlli_Batiments($i, $niveau+1, $planete),
'nec_credits' => Donnee::creditsAlli_Batiments($i, $niveau+1, $planete),
'temps' => sec(Donnee::tempsAlli_Batiments($i, $niveau+1, $planete)),
'enfile' => $planete->file_bat->batiment_objectInFile($i)
);
}
}
}
$template->assign('batiments', $TEMP_liste);
$template->assign('file', $planete->file_bat->printFile($planete));
unset($TEMP_liste, $niveau, $i);
?>