game/onyx/hb_game/jeu/defenses.php

136 lines
4.9 KiB
PHP
Raw Normal View History

2008-11-22 11:00:00 +00:00
<?php
if(!defined('INDEX')) { header('Location: ../'); exit; }
2008-11-04 11:00:00 +00:00
include_once(_FCORE."hb_game/Class/class.gerefile.php");
$page = 'defenses';
$titre = 'Défenses';
2008-11-22 11:00:00 +00:00
2008-11-04 11:00:00 +00:00
$TEMP_ = array();
2008-11-22 11:00:00 +00:00
$nbstop = count($nomterrn);
if (empty($queryPlanete['file_ter'])) $file = new gererFile($queryUser['prodfile']+2);
else {
$file = unserialize($queryPlanete['file_ter']);
2008-11-04 11:00:00 +00:00
$file->limite = $queryUser['prodfile'] + 2;
2008-11-22 11:00:00 +00:00
}
if ($queryPlanete['chantier_terrestre'] == 0) {
$template->assign('message','Vous devez d\'abord construire un '.strtolower($batiment[7]));
$template->assign('script','<script type="text/javascript">setTimeout(\'document.location.href="?p=batiments";\', 4000);</script>');
$template->assign('couleur','red');
$template->display('game/erreur.tpl');
exit;
}
2008-11-04 11:00:00 +00:00
2008-11-22 11:00:00 +00:00
//Lancement d'une nouvelle construction
2008-11-04 11:00:00 +00:00
if (isset($_GET['v']) && !empty($nomterrn[$_GET['v']]) && !empty($_POST['nombre'])) {
2008-11-22 11:00:00 +00:00
$i = $_GET['v'];
$nbv = floor($_POST['nombre']);
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;
if ($metal < 0 || $cristal < 0 || $hydrogene < 0) {
2008-11-04 11:00:00 +00:00
$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>');
2008-11-22 11:00:00 +00:00
$template->assign('couleur','red');
$template->display('game/erreur.tpl');
exit;
}
eval($nomterrnCALC[$i][3]);
if ($file->addObjet($i, $nbv, ceil($sec))) {
2008-11-04 11:00:00 +00:00
$export = serialize($file);
$bdd->connexion();
$bdd->escape($export);
$bdd->query("UPDATE $table_planete SET file_ter = '$export', metal = '$metal', cristal = '$cristal', hydrogene = '$hydrogene' WHERE id = '$idPlan';");
$bdd->deconnexion();
2008-11-22 11:00:00 +00:00
}
else {
2008-11-04 11:00:00 +00:00
$template->assign('message','Vous ne pouvez pas mettre plus de défenses en file d\'attente.');
$template->assign('script','<script type="text/javascript">setTimeout(\'document.location.href="?p=defenses";\', 2500);</script>');
2008-11-22 11:00:00 +00:00
$template->assign('couleur','red');
$template->display('game/erreur.tpl');
exit;
}
2008-11-04 11:00:00 +00:00
header('Location: ?p=defenses');
2008-11-22 11:00:00 +00:00
exit;
}
}
//Annulation d'une nouvelle construction
if (isset($_GET['a']) && isset($nomterrn[$_GET['a']])) {
$i = $_GET['a'];
if (!isset($_GET['n'])) $nbv = 1;
else $nbv = $_GET['n'];
if($file->existe($i)) {
$n=($queryPlanete[$nomterrnVAR[$i]]+1);
$a = $nomterrnCALC[$i][0];
$b = $nomterrnCALC[$i][1];
$c = $nomterrnCALC[$i][2];
$nbvr = $file->delobjet($i, $nbv);
$metal += $a*$nbvr;
$cristal += $b*$nbvr;
$hydrogene += $c*$nbvr;
2008-11-04 11:00:00 +00:00
$export = serialize($file);
$bdd->connexion();
$bdd->escape($export);
$bdd->query("UPDATE $table_planete SET file_ter = '$export', metal = '$metal', cristal = '$cristal', hydrogene = '$hydrogene' WHERE id = '$idPlan';");
$bdd->deconnexion();
header('Location: ?p=defenses');
2008-11-22 11:00:00 +00:00
exit;
}
}
2008-11-04 11:00:00 +00:00
//Règler la production à la châine
/* if (isset($_GET['r']) && ($_GET['r'] == 1 || $_GET['r'] == 0)) {
if($_GET['r']) $file->chaine = false;
else $file->chaine = true;
$export = mysql_real_escape_string(serialize($file));
mysql_query("UPDATE planete SET file_ter = '$export' WHERE id = '$idPlan';");
header('Location: ?p=defenses');
exit;
}*/
2008-11-22 11:00:00 +00:00
2008-11-04 11:00:00 +00:00
for ($i=8 ; $i<$nbstop ; $i++) {
2008-11-22 11:00:00 +00:00
$tr = 0; $a = 0; $b = 0; $c = 0; $sec = 0;
$nom_bdd = $nomterrnVAR[$i]; $a = $nomterrnCALC[$i][0]; $b = $nomterrnCALC[$i][1]; $c = $nomterrnCALC[$i][2]; eval($nomterrnCALC[$i][3]);
if ($queryPlanete[$nom_bdd] > 0) $nombre = $queryPlanete[$nom_bdd]; else $nombre = 0;
$n=($queryPlanete[$nom_bdd]+1);
2008-11-04 11:00:00 +00:00
if (!empty($nomterrn[$i]) && requestDeblok($nomterrnTECH[$i], $queryPlanete, $queryUser)) $TEMP_defenses[] =
2008-11-22 11:00:00 +00:00
array(
'image' => $nomterri[$i],
'nom' => $nomterrn[$i],
'nombre' => $nombre,
'description' => $nomterde[$i],
'descriptione' => addslashes($nomterde[$i]),
'nec_metal' => $a,
'nec_cristal' => $b,
'nec_hydrogene' => $c,
'nec_metalS' => separerNombres($a),
'nec_cristalS' => separerNombres($b),
'nec_hydrogeneS' => separerNombres($c),
'temps' => sec($sec),
'num' => $i
);
}
2008-11-04 11:00:00 +00:00
$template->assign('defenses',$TEMP_defenses);
2008-11-22 11:00:00 +00:00
$template->assign('chaine',$file->chaine);
2008-11-04 11:00:00 +00:00
$fileBat = array_merge($file->file);
2008-11-22 11:00:00 +00:00
$nbfile = count($fileBat);
if ($nbfile == 1) $template->assign('Pchaine',true);
else $template->assign('Pchaine',false);
if ($nbfile == 0) $template->assign('Vchaine',true);
else $template->assign('Vchaine',false);
for ($i=0 ; $i<$nbfile ; $i++) {
$fileBat[$i][3] = $nomterrn[$fileBat[$i][0]];
$fileBat[$i][4] = $fileBat[$i][2]*$fileBat[$i][1];
if ($i == 0) {
$fileBat[$i][2] -= time() - $file->timestamp;
$fileBat[$i][4] -= time() - $file->timestamp;
}
}
$template->assign('file',$fileBat);
2008-11-04 11:00:00 +00:00
?>