$_SESSION['notEnoughHealth'] = 1; header("Location: {$serverRoot}battle.php?error_reason=notEnoughHealth&attack_type=" . $attack_type); exit; } $otherUserHealth = $otherUser->getHealth(); if (!isset($_SESSION['bounty'])) { if ($otherUserHealth < $maxDamage + 1) { $_SESSION['otherNotEnoughHealth'] = 1; header("Location: {$serverRoot}battle.php?error_reason=otherNotEnoughHealth&attack_type=" . $attack_type); exit; } } $userUsedItems = User::getUsersTopItemsByStatIDsToQuantity($id, $user->getAgencySize(), "attack"); $otherUserUsedItems = User::getUsersTopItemsByStatIDsToQuantity($otherUserID, $otherUser->getAgencySize(), "defense"); $userAttack = computeStat($user->getAttack(), getItemStats($userUsedItems, "attack"), $user->getAgencySize()); $otherUserDefense = computeStat($otherUser->getDefense(), getItemStats($otherUserUsedItems, "defense"), $otherUser->getAgencySize()); $val1 = max($userAttack, $otherUserDefense); //echo '<br />'; $val2 = min($userAttack, $otherUserDefense); $randomVal = rand($maxDamage - 10, $maxDamage); $winnerDemage = $randomVal; if ($val1 != 0 || $val2 != 0) { $looserDemage = max(1, floor($val2 / $val1 * $randomVal)); } else { $looserDemage = 1; } $user->incrementNumAttacks(); switch ($user->getNumAttacks()) { case MONSTER_LEVEL_1: $_SESSION['monster_level'] = 1; User::updateAchievementRank('monster_level', $user->getID());
if ($userHealth < $maxDamage + 1) { $_SESSION['notEnoughHealth'] = 1; header("Location: {$serverRoot}/battle.php"); exit; } $otherUser = User::getUser($otherUserID); $otherUserHealth = $otherUser->getHealth(); if ($otherUserHealth < $maxDamage + 1) { $_SESSION['otherNotEnoughHealth'] = 1; header("Location: {$serverRoot}/battle.php"); exit; } $userUsedItems = User::getUsersTopItemsByStatIDsToQuantity($id, $user->getAgencySize(), "attack"); $otherUserUsedItems = User::getUsersTopItemsByStatIDsToQuantity($otherUserID, $otherUser->getAgencySize(), "defense"); $userAttack = computeStat($user->getAttack(), getItemStats($userUsedItems, "attack")); $otherUserDefense = computeStat($otherUser->getDefense(), getItemStats($otherUserUsedItems, "defense")); $healthLoss = -15; if ($userAttack > $otherUserDefense) { // user wins $_SESSION['won'] = 'true'; $winner = $id; $loser = $otherUserID; $expGained = rand(1, 5); $_SESSION['expGained'] = $expGained; $user->updateHealthStaminaFightsExperience($healthLoss, -1, 1, 0, $expGained); $otherUser->updateHealthStaminaFightsExperience($healthLoss, 0, 0, 1, 0); } else { // user loses $_SESSION['won'] = 'false'; $winner = $otherUserID; $loser = $id;