$damage_multiplier = $_SESSION['opp_attack'] - $_SESSION['char_def']; if ($damage_multiplier < 0) { // Missed $_SESSION['disp_msg'][] = $attackingcharacter->name . " misses you!"; } //Check hit to Character if (!$damage_multiplier) { // Deadlock $_SESSION['disp_msg'][] = $lang_comb["def_en"] . " " . $attackingcharacter->name . ""; } if (DEBUG >= 1) { $_SESSION['disp_msg'][] = "**DEBUG: damage multiplier = " . $damage_multiplier; } if ($damage_multiplier > 0) { // Do and show damage to Character DEBUG and $_SESSION['disp_msg'][] = "**DEBUG: char defense_min = " . $character->defense_min(); $_SESSION['dmg_to_char'] = roll_damage(root_damage($attackingcharacter->attack_min() * $damage_multiplier) - $character->defense_min() / 2, root_damage($attackingcharacter->attack_max() * $damage_multiplier) - $character->defense_min()); DEBUG and $_SESSION['disp_msg'][] = "**DEBUG: dmg_to_char = " . $_SESSION['dmg_to_char']; if ($_SESSION['dmg_to_char'] <= 0) { $_SESSION['dmg_to_char'] = 1; } $character->hit_points = $character->hit_points - $_SESSION['dmg_to_char']; $_SESSION['disp_msg'][] = $attackingcharacter->name . " " . $lang_comb["hit_for_u"] . " " . $_SESSION['dmg_to_char']; if ($character->hit_points <= 0) { $character->hit_points = 0; $_SESSION['disp_msg'][] = $attackingcharacter->name . " " . $lang_comb["kill_u_man"]; //Let NPC Receive Gold $attackingcharacter->gold += (int) ($character->gold * 0.15); $character->gold = (int) ($character->gold * 0.85); // FIXME: player should really lose ALL gold carrying... this is temp (should set to 0) $attackingcharacter->xp += ((int) ($character->max_hp / 1) + $attackingcharacter->wisdom) * $_SESSION['fightbonus'];