Esempio n. 1
0
    $_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());
Esempio n. 2
0
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;