<?php
if(!defined('INDEX')) { header('Location: ../'); exit; }
$page = 'simulateur_combat';
$titre = 'Simulateur de combat';

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'])) {
$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']
);
	require_once(_FCORE."hb_game/Class/class.combat.php");
	require_once(_FCORE."hb_game/Class/class.rapport.php");

	//On génére un nouveau combat
	$combat = new Combat($queryFlottes[$i], $queryEN, $queryEN, array($_POST['ATblind'], $_POST['ENblind']));
	$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]) {
		if (!empty($_POST['maxtour']) && $combat->Ntour >= $_POST['maxtour']) break;
		$combat->Ntour++;

		//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']);

		//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'];

			$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);
		}
		else $rapport->addInfo(array(false, false, false), 6);

		$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);
		$rapport->addInfo($ATattaque.' vs '.$ENattaque, 14);
	}
	$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'), $config['version'], $min.' min'), 13);

	$template->assign('page', 'simulateur_combat');
	$template = $rapport->show();
	print $template;
	echo("\n<!--Page générée en : ".round((array_sum(explode(' ', microtime()))) - (array_sum(explode(' ', $chrono_start))), 4)." secondes.-->");
	exit;
}
else {
	$template->assign('nomvais', $nomvaisn);
	$template->assign('technolo', $technolo);
	array_splice($nomterra, 0, 8);
	$template->assign('nomdef', $nomterra);
	$template->assign('nomressourc', $ressourc);
}
?>