2008-11-16 11:00:00 +00:00
|
|
|
|
<?php
|
2008-12-01 11:00:00 +00:00
|
|
|
|
if(!defined('INDEX')) { header('Location: ../'); exit; }
|
|
|
|
|
$page = 'simulateur_combat';
|
|
|
|
|
$titre = 'Simulateur de combat';
|
|
|
|
|
|
2008-11-16 11:00:00 +00:00
|
|
|
|
if (isset($_POST['ATvais_1']) && isset($_POST['ATvais_2']) && isset($_POST['ATvais_3']) && isset($_POST['ATvais_4']) && isset($_POST['ATvais_5']) && isset($_POST['ATvais_6']) && isset($_POST['ATvais_7']) && isset($_POST['ATvais_8']) && isset($_POST['ATvais_9']) && isset($_POST['ATvais_10']) && isset($_POST['ATvais_12']) && isset($_POST['ENvais_1']) && isset($_POST['ENvais_2']) && isset($_POST['ENvais_3']) && isset($_POST['ENvais_4']) && isset($_POST['ENvais_5']) && isset($_POST['ENvais_6']) && isset($_POST['ENvais_7']) && isset($_POST['ENvais_8']) && isset($_POST['ENvais_9']) && isset($_POST['ENvais_10']) && isset($_POST['ENvais_11']) && isset($_POST['ENvais_12']) && isset($_POST['ENdef_1']) && isset($_POST['ENdef_2']) && isset($_POST['ENdef_3']) && isset($_POST['ENdef_4']) && isset($_POST['ENdef_5']) && isset($_POST['ENmetal']) && isset($_POST['ENcristal']) && isset($_POST['ENhydrogene']) && isset($_POST['ATtactique']) && isset($_POST['ENtactique']) && isset($_POST['ATarme']) && isset($_POST['ENarme']) && isset($_POST['ATblind']) && isset($_POST['ENblind']) && isset($_POST['maxtour'])) {
|
2008-12-01 11:00:00 +00:00
|
|
|
|
$i = 0;
|
|
|
|
|
$queryFlottes[$i] = array(
|
|
|
|
|
"id" => 0,
|
|
|
|
|
"contenu_max" => 999999,
|
|
|
|
|
"contenu_metal" => 0,
|
|
|
|
|
"contenu_cristal" => 0,
|
|
|
|
|
"contenu_hydrogene" => 0,
|
|
|
|
|
"start_time" => 0,
|
|
|
|
|
"end_time" => 0,
|
|
|
|
|
"mission" => 1,
|
|
|
|
|
"id_user" => $id_user,
|
|
|
|
|
"effectue" => 0,
|
|
|
|
|
"vaisseau_1" => $_POST['ATvais_1'],
|
|
|
|
|
"vaisseau_2" => $_POST['ATvais_2'],
|
|
|
|
|
"vaisseau_3" => $_POST['ATvais_3'],
|
|
|
|
|
"vaisseau_4" => $_POST['ATvais_4'],
|
|
|
|
|
"vaisseau_5" => $_POST['ATvais_5'],
|
|
|
|
|
"vaisseau_6" => $_POST['ATvais_6'],
|
|
|
|
|
"vaisseau_7" => $_POST['ATvais_7'],
|
|
|
|
|
"vaisseau_8" => $_POST['ATvais_8'],
|
|
|
|
|
"vaisseau_9" => $_POST['ATvais_9'],
|
|
|
|
|
"vaisseau_10" => $_POST['ATvais_10'],
|
|
|
|
|
"vaisseau_11" => 0,
|
|
|
|
|
"vaisseau_12" => $_POST['ATvais_12']
|
|
|
|
|
);
|
|
|
|
|
$queryEN = array(
|
|
|
|
|
"debris_met" => 0,
|
|
|
|
|
"debris_cri" => 0,
|
|
|
|
|
"metal" => $_POST['ENmetal'],
|
|
|
|
|
"cristal" => $_POST['ENcristal'],
|
|
|
|
|
"hydrogene" => $_POST['ENhydrogene'],
|
|
|
|
|
"def_1" => $_POST['ENdef_1'],
|
|
|
|
|
"def_2" => $_POST['ENdef_2'],
|
|
|
|
|
"def_3" => $_POST['ENdef_3'],
|
|
|
|
|
"def_4" => $_POST['ENdef_4'],
|
|
|
|
|
"def_5" => $_POST['ENdef_5'],
|
|
|
|
|
"vaisseau_1" => $_POST['ENvais_1'],
|
|
|
|
|
"vaisseau_2" => $_POST['ENvais_2'],
|
|
|
|
|
"vaisseau_3" => $_POST['ENvais_3'],
|
|
|
|
|
"vaisseau_4" => $_POST['ENvais_4'],
|
|
|
|
|
"vaisseau_5" => $_POST['ENvais_5'],
|
|
|
|
|
"vaisseau_6" => $_POST['ENvais_6'],
|
|
|
|
|
"vaisseau_7" => $_POST['ENvais_7'],
|
|
|
|
|
"vaisseau_8" => $_POST['ENvais_8'],
|
|
|
|
|
"vaisseau_9" => $_POST['ENvais_9'],
|
|
|
|
|
"vaisseau_10" => $_POST['ENvais_10'],
|
|
|
|
|
"vaisseau_11" => $_POST['ENvais_11'],
|
|
|
|
|
"vaisseau_12" => $_POST['ENvais_12']
|
|
|
|
|
);
|
2008-11-04 11:00:00 +00:00
|
|
|
|
require_once(_FCORE."hb_game/Class/class.combat.php");
|
|
|
|
|
require_once(_FCORE."hb_game/Class/class.rapport.php");
|
2008-12-01 11:00:00 +00:00
|
|
|
|
|
|
|
|
|
//On génére un nouveau combat
|
2008-11-16 11:00:00 +00:00
|
|
|
|
$combat = new Combat($queryFlottes[$i], $queryEN, $queryEN, array($_POST['ATblind'], $_POST['ENblind']));
|
2008-12-01 11:00:00 +00:00
|
|
|
|
$combat->changerTactiqueAT($_POST['ATtactique']);
|
|
|
|
|
$combat->changerTactiqueEN($_POST['ENtactique']);
|
|
|
|
|
$rapport = new Rapport(1, $queryFlottes[$i]['id_user'], 0, time());
|
|
|
|
|
$rapport->addInfo($combat->ATvais, 0);
|
|
|
|
|
$rapport->addInfo($combat->ENvais, 1);
|
|
|
|
|
$rapport->addInfo($combat->ENdef, 2);
|
|
|
|
|
$rapport->addInfo($queryEN, 4);
|
|
|
|
|
$rapport->addInfo($queryFlottes[$i], 5);
|
|
|
|
|
$rapport->addInfo(array(false, false), 6);
|
|
|
|
|
|
|
|
|
|
while(!$rapport->var[6][0]) {
|
2008-11-16 11:00:00 +00:00
|
|
|
|
if (!empty($_POST['maxtour']) && $combat->Ntour >= $_POST['maxtour']) break;
|
2008-12-01 11:00:00 +00:00
|
|
|
|
$combat->Ntour++;
|
|
|
|
|
|
2008-11-16 11:00:00 +00:00
|
|
|
|
//Récupération des paramètres de la tactique de l'attaquant
|
|
|
|
|
$arraytactique = tactique($combat->ATtactique);
|
|
|
|
|
//On régénére les boucliers de l'attaquant et on calcul l'attaque de l'attaquant
|
|
|
|
|
$ATattaque = $combat->calcAttaque($arraytactique[2] + $combat->regenereBC($arraytactique[1], true, !$arraytactique[3], $_POST['ATblind']), true, $_POST['ATarme']);
|
2008-12-01 11:00:00 +00:00
|
|
|
|
|
2008-11-16 11:00:00 +00:00
|
|
|
|
//Récupération des paramètres de la tactique du défenseur
|
|
|
|
|
$arraytactique = tactique($combat->ENtactique);
|
|
|
|
|
//On régénére les boucliers de l'attaquant et on calcul l'attaque de l'attaquant
|
|
|
|
|
$ENattaque = $combat->calcAttaque($arraytactique[2] + $combat->regenereBC($arraytactique[1], false, !$arraytactique[3], $_POST['ENblind']), false, $_POST['ENarme']);
|
|
|
|
|
|
|
|
|
|
//On lance l'attaque
|
|
|
|
|
@$ATresult = $combat->attaquerVais($ATattaque, true);
|
|
|
|
|
@$ENresult = $combat->attaquerVais($ENattaque, false);
|
|
|
|
|
|
|
|
|
|
if (!$ATresult && $ENresult) { //Attaquant vainqueur
|
|
|
|
|
$combat->ENres['metal'] = $queryEN['metal'];
|
|
|
|
|
$combat->ENres['cristal'] = $queryEN['cristal'];
|
|
|
|
|
$combat->ENres['hydrogene'] = $queryEN['hydrogene'];
|
2008-12-01 11:00:00 +00:00
|
|
|
|
|
2008-11-16 11:00:00 +00:00
|
|
|
|
$exportAT = $combat->exportAT(true); $ret_time = $combat->timestamp;
|
|
|
|
|
$exportEN = $combat->exportEN(); $pillm = $combat->pillage[0]; $pillc = $combat->pillage[1]; $pillh = $combat->pillage[2];
|
|
|
|
|
$rapport->addInfo(array(true, true, false), 6);
|
|
|
|
|
}
|
|
|
|
|
elseif ($ATresult && !$ENresult) { //Défenseur vainqueur
|
|
|
|
|
$exportEN = $combat->exportEN();
|
|
|
|
|
$rapport->addInfo(array(true, false, false), 6);
|
|
|
|
|
}
|
|
|
|
|
elseif (!$ATresult && !$ENresult) { //Match nul
|
|
|
|
|
$exportEN = $combat->exportEN();
|
|
|
|
|
$rapport->addInfo(array(true, false, true), 6);
|
|
|
|
|
}
|
|
|
|
|
elseif ($combat->Ntour >= 250) { //Match nul
|
|
|
|
|
$exportEN = $combat->exportEN();
|
|
|
|
|
$rapport->addInfo(array(true, false, true), 6);
|
2008-12-01 11:00:00 +00:00
|
|
|
|
}
|
2008-11-16 11:00:00 +00:00
|
|
|
|
else $rapport->addInfo(array(false, false, false), 6);
|
2008-12-01 11:00:00 +00:00
|
|
|
|
|
|
|
|
|
$rapport->addInfo($combat->ATvais, 7);
|
|
|
|
|
$rapport->addInfo($combat->ENvais, 8);
|
|
|
|
|
$rapport->addInfo($combat->ENdef, 9);
|
|
|
|
|
|
|
|
|
|
//Prévision du prochain tour
|
|
|
|
|
$combat->timestamp += 300;
|
|
|
|
|
$rapport->addInfo($combat->timestamp, 10);
|
|
|
|
|
$rapport->addInfo($combat->pillage, 11);
|
2008-11-16 11:00:00 +00:00
|
|
|
|
$rapport->addInfo($ATattaque.' vs '.$ENattaque, 14);
|
2008-12-01 11:00:00 +00:00
|
|
|
|
}
|
|
|
|
|
$rapport->addInfo($combat->Ntour, 3);
|
|
|
|
|
$debriM = $combat->debriM;
|
|
|
|
|
$debriC = $combat->debriC;
|
|
|
|
|
|
|
|
|
|
$rapport->addInfo(array($debriM, $debriC), 12);
|
|
|
|
|
$rapport->addInfo(array($enligne, $infos, count($infos)-1, array('humains' => $nbhumain, 'covenants' => $nbcovie, 'serveurs' => 'cette'), VERSION, $min.' min'), 13);
|
|
|
|
|
|
|
|
|
|
$template = $rapport->show();
|
|
|
|
|
print $template;
|
2008-11-16 11:00:00 +00:00
|
|
|
|
echo("\n<!--Page générée en : ".round((array_sum(explode(' ', microtime()))) - (array_sum(explode(' ', $chrono_start))), 4)." secondes.-->");
|
2008-12-01 11:00:00 +00:00
|
|
|
|
exit;
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
$template->assign('nomvais', $nomvaisn);
|
2008-11-16 11:00:00 +00:00
|
|
|
|
$template->assign('technolo', $technolo);
|
2008-12-01 11:00:00 +00:00
|
|
|
|
array_splice($nomterra, 0, 8);
|
|
|
|
|
$template->assign('nomdef', $nomterra);
|
|
|
|
|
$template->assign('nomressourc', $ressourc);
|
|
|
|
|
}
|
|
|
|
|
?>
|