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"];