public static function fight(Dolumar_Underworld_Models_Army $attacker, Dolumar_Underworld_Models_Army $target) { $dummy = new Dolumar_Players_DummyVillage(); $slots = $target->getSlots(); $attUnits = $attacker->getUnits($slots); $defUnits = $target->getUnits($slots); $logger = new Dolumar_Battle_Logger(); $fight = new Dolumar_Battle_Fight($dummy, $dummy, $attUnits, $defUnits, $slots, array(), $logger); $fight->getResult(); $report = Dolumar_Underworld_Models_Report::getFromLogger($logger); // No need to duplicate the report anymore //$report = Dolumar_Battle_Report::unserialize ($report->serialize ()); // Create battle $battle = new Dolumar_Underworld_Models_Battle(null); $battle->setReport($report); $battle->setAttacker($attacker); $battle->setDefender($target); $battle->setStartdate(NOW); $battle->setEnddate(NOW + $report->getDuration()); // Kill kill kill kill kill the units $fight->killUnits($fight); return $battle; }