for ($m = 0; $m < count($attackers); $m++) {
     $attacker = new Creature($attackers[$m]);
     if ($battle["resource"] == "arcane") {
         $attacker->data[$mult] = 100;
     }
     if (!$attacker->data["defender"]) {
         // raid
         // execute items
         $attacker->addItherian($attackers_Itherian);
         $attacker->execAbility("prebattle", gDummyCreature(), $attackers);
         $resources += round($attacker->data["skill"] * $gdRaidResourcesStolen);
         $attackername = $attacker->data["creaturename"];
         $attreport .= "<font class=\"alert\"><i>Your {$attackername} was left undefended and could steal a lot of resources.</i></font><br><br>";
         $defreport .= "<font class=\"head\"><i>Your opponent\\'s {$attackername} was left undefended and could steal a lot of resources.</i></font><br><br>";
         $gotthrough++;
         $stealmultiplier += $attacker->getStealMultiplier() * $attacker->data[$mult] / 100;
         // end of raid
         // fix for xp for < L30
         /*if (gCalcLvl($target["xp"], $gdXpVar, $gdStartXp) < 30) {
               $targetxp += round($gdXpBase * 1.5 * $punishment);
               $accountxp += round($gdXpBase * 1.5 * $punishment);
           }*/
     } else {
         $defender = new Creature($creatures[$attacker->data["defender"]]);
         // battle
         $battleresult = gBattle($attacker, $defender, $punishment, "battle", $attackers_array, $creatures_array, $defenders, $attackers);
         $accountxp += $battleresult["attxp"];
         $targetxp += $battleresult["defxp"];
         $resources += $battleresult["resources"];
         $attreport .= $battleresult["attreport"];
         $defreport .= $battleresult["defreport"];
         $attacker->gemSpell[] = $data["attacker_enchantment_effect_type"];
     }
 }
 if (is_null($attacker->data["defender"])) {
     // raid
     // execute items
     $attacker->execAbility("preprebattle", gDummyCreature(), $attackers);
     $attacker->addItherian($attackers_Itherian);
     $attacker->execAbility("prebattle", gDummyCreature(), $attackers);
     $amount = round($attacker->data["skill"] * gdKingdomRaidResourcesStolen);
     $attackername = $attacker->data["creaturename"];
     $accid = $attacker->data["accid"];
     $accname = $attacker->data["accname"];
     $report .= "Attacker {$attackername} (<a href=\"index.php?page=playerinfo&action=viewinfo&aid={$accid}\">{$accname}</a>) was left undefended.<br>";
     $longreport .= "Attacker {$attackername} (<a href=\"index.php?page=playerinfo&action=viewinfo&aid={$accid}\">{$accname}</a>) was left undefended.<br>";
     $buildingdamage += $healthloss * $attacker->getStealMultiplier() * $attacker->data[$mult] / 100;
     // end of raid
 } else {
     $defender = new Creature($defenders[$attackers[$m]["defender"]]);
     foreach ($wavedata as $data) {
         if (!is_null($data["defender_enchantment"]) && $defender->data["cid"] == $data["defender_enchantment_creature"]) {
             $defender->gemSpellEffect[] = $data["defender_enchantment_effect"];
             $defender->gemSpell[] = $data["defender_enchantment_effect_type"];
         }
     }
     $id = $defender->data["id"];
     $sql = "INSERT INTO battlelimits (type, battle, summon) VALUES ('1', '{$kdb['id']}', '{$id}')";
     $result = $db->query($sql);
     // battle
     $battleresult = gBattle($attacker, $defender, 1, "kingdombattle", array("id" => $attacker->data["accid"], "name" => $attacker->data["accname"], "Itherian" => $attackers_Itherian), array("id" => $defender->data["accid"], "name" => $defender->data["accname"], "Itherian" => $defenders_Itherian), $defenders, $attackers);
     $report .= $battleresult["shortreport"];