function adr_use_hp_amulet() { global $bat, $challeneger, $hp_regen, $battle_message; // Check if user a Amulet for HP regen this turn if ($bat['battle_challenger_hp'] != 0) { if ($challenger['character_hp'] < $challenger['character_hp_max']) { $hp_regen = intval(adr_hp_regen_check($user_id, $bat['battle_challenger_hp'])); $battle_message .= sprintf($lang['Adr_battle_regen_xp'], intval($hp_regen)) . '<br />'; } //$challenger['character_hp'] < $challenger['character_hp_max'] } //$bat['battle_challenger_hp'] != 0 }
function adr_pet_special() { global $monster, $bat, $adr_user, $opponent_element, $item, $db, $lang, $user_id, $power; global $challenger, $battle_message, $user_action, $monster_action, $attack_img, $attackwith_overlay; global $rabbit_user; if ($rabbit_user['creature_attack'] < 1 || $rabbit_user['creature_health'] < 1) { adr_previous('Adr_battle_pet_dead_or_limitattack', 'adr_battle', ''); } $poison = '0'; $pet_regen = '0'; $mp_consumned = '0'; $pet_damage = '0'; $health_give = '0'; $mana_give = '0'; if ($rabbit_user['creature_ability'] == '0') { adr_previous(Adr_battle_pet_noability, 'adr_battle', ''); } //$rabbit_user['creature_ability'] == '0' if ($rabbit_user['creature_ability'] == '1') { adr_previous(Adr_battle_pet_regeneration_mess, 'adr_battle', ''); } //$rabbit_user['creature_ability'] == '1' if ($rabbit_user['creature_ability'] == '2') { $health_give = $rabbit_user['creature_health'] * $rabbit_general['health_transfert_percent'] / 100; $battle_message .= sprintf($lang['Rabbitoshi_Adr_battle_pet_health_transfert'], intval($health_give)) . '<br />'; } //$rabbit_user['creature_ability'] == '2' if ($rabbit_user['creature_ability'] == '3') { $mana_give = $rabbit_user['creature_mp'] * $rabbit_general['mana_transfert_percent'] / 100; $battle_message .= sprintf($lang['Rabbitoshi_Adr_battle_pet_mana_transfert'], intval($mana_give)) . '<br />'; } //$rabbit_user['creature_ability'] == '3' if ($rabbit_user['creature_ability'] == '4') { $pet_damage = $rabbit_user['creature_power'] * $rabbit_user['creature_level'] + $rabbit_user['creature_health'] * rand(1, 3); $battle_message .= sprintf($lang['Rabbitoshi_Adr_battle_pet_sacrifice'], intval($pet_damage)) . '<br />'; } //$rabbit_user['creature_ability'] == '4' rabbit_pet_regen(); // Check if pet is poisonned if ($rabbit_user['creature_statut'] == '3') { if ($rabbit_user['creature_health'] > 0) { $poison = rand(1, 3); if ($rabbit_user['creature_health'] - $poison < 0) { $poison = $rabbit_user['creature_health_max'] - $rabbit_user['creature_health']; } //($rabbit_user['creature_health'] - $poison) < 0 $battle_message .= sprintf($lang['Adr_battle_pet_poison'], intval($poison)) . '<br />'; } //$rabbit_user['creature_health'] > 0 } //$rabbit_user['creature_statut'] == '3' // Check if user a Amulet for HP regen this turn if ($bat['battle_challenger_hp'] != 0) { if ($challenger['character_hp'] < $challenger['character_hp_max']) { $hp_regen = intval(adr_hp_regen_check($user_id, $bat['battle_challenger_hp'])); $battle_message .= sprintf($lang['Adr_battle_regen_xp'], intval($hp_regen)) . '<br />'; } //$challenger['character_hp'] < $challenger['character_hp_max'] } //$bat['battle_challenger_hp'] != 0 // Check if user a Ring for MP regen this turn if ($bat['battle_challenger_mp'] != 0) { if ($challenger['character_mp'] < $challenger['character_mp_max']) { $mp_regen = intval(adr_mp_regen_check($user_id, $bat['battle_challenger_mp'])); $battle_message .= sprintf($lang['Adr_battle_regen_mp'], intval($mp_regen)) . '<br />'; } //$challenger['character_mp'] < $challenger['character_mp_max'] } //$bat['battle_challenger_mp'] != 0 $hp_changes = $poison + $health_give - $pet_regen; $mp_changes = $mp_consumned + $mana_give; if ($hp_changes < 0) { $hp_changes = $rabbit_user['creature_health_max'] - $rabbit_user['creature_health']; } //$hp_changes < 0 if ($mp_changes < 0) { $mp_changes = $rabbit_user['creature_max_mp'] - $rabbit_user['creature_mp']; } //$mp_changes < 0 if ($rabbit_user['creature_ability'] == '4') { $hp_changes = $rabbit_user['creature_health_max'] - $rabbit_user['creature_health']; } //$rabbit_user['creature_ability'] == '4' $sql = "UPDATE " . RABBITOSHI_USERS_TABLE . "\n\t\tSET creature_health = creature_health - {$hp_changes},\n\t\t creature_mp = creature_mp - {$mp_changes}\n\t\tWHERE owner_id = {$user_id} "; if (!($result = $db->sql_query($sql))) { message_die(GENERAL_ERROR, 'Could not update pet info', '', __LINE__, __FILE__, $sql); } //!$result = $db->sql_query($sql) if ($challenger['character_hp'] + $health_give > $challenger['character_hp_max']) { $health_give = $challenger['character_hp_max'] - $challenger['character_hp']; } //($challenger['character_hp'] + $health_give) > $challenger['character_hp_max'] if ($challenger['character_mp'] + $mana_give > $challenger['character_mp_max']) { $mana_give = $challenger['character_mp_max'] - $challenger['character_mp']; } //($challenger['character_mp'] + $mana_give) > $challenger['character_mp_max'] $sql = " UPDATE " . ADR_CHARACTERS_TABLE . "\n \tSET character_hp = character_hp + {$health_give},\n \t character_mp = character_mp + {$mana_give}\n \tWHERE character_id = {$user_id} "; if (!($result = $db->sql_query($sql))) { message_die(GENERAL_ERROR, 'Could not update character', '', __LINE__, __FILE__, $sql); } //!($result = $db->sql_query($sql)) // Update the database $sql = "UPDATE " . ADR_BATTLE_LIST_TABLE . "\n\t\tSET battle_opponent_hp = battle_opponent_hp - '{$pet_damage}',\n\t\t battle_turn = 2 ,\n\t\t battle_challenger_dmg = '{$pet_damage}'\n\t\tWHERE battle_challenger_id = {$user_id}\n\t\tAND battle_result = 0\n\t\tAND battle_type = 1 "; if (!($result = $db->sql_query($sql))) { message_die(GENERAL_ERROR, 'Could not update battle', '', __LINE__, __FILE__, $sql); } //!($result = $db->sql_query($sql)) }
$battle_message .= sprintf($lang['Adr_battle_defend'], $challenger['character_name'], $monster['monster_name']) . '<br>'; // Update the database $sql = "UPDATE " . ADR_BATTLE_LIST_TABLE . "\n\t\t\tSET\tbattle_turn = 2,\n\t\t\t\tbattle_round = (battle_round + 1)\n\t\t\tWHERE battle_challenger_id = {$user_id}\n\t\t\tAND battle_result = 0\n\t\t\tAND battle_type = 1 "; if (!($result = $db->sql_query($sql))) { message_die(GENERAL_ERROR, 'Could not update battle', '', __LINE__, __FILE__, $sql); } } } } } } // Get the user infos $challenger = adr_get_user_infos($user_id); ##=== START: additional status checks on user ===## if ($bat['battle_turn'] == '1' && ($attack || $item_spell || $item_potion || $defend || $flee || $equip)) { $hp_regen = adr_hp_regen_check($user_id, $bat['battle_challenger_hp']); $challenger['character_hp'] += $hp_regen; $mp_regen = adr_mp_regen_check($user_id, $bat['battle_challenger_mp']); $battle_message .= '<span class="gensmall"><font color="#FF0000">'; // prefix new span class if ($hp_regen > '0' && $mp_regen == '0' || $mp_regen > '0' && $hp_regen == '0') { if ($hp_regen > '0') { $battle_message .= ' > ' . sprintf($lang['Adr_battle_regen_xp'], $challenger['character_name'], intval($hp_regen)) . '<br />'; } elseif ($mp_regen > '0') { $battle_message .= ' > ' . sprintf($lang['Adr_battle_regen_mp'], $challenger['character_name'], intval($mp_regen)) . '<br />'; } } elseif ($hp_regen > '0' && $mp_regen > '0') { $battle_message .= ' > ' . sprintf($lang['Adr_battle_regen_both'], $challenger['character_name'], intval($hp_regen), intval($mp_regen)) . '<br />'; } $battle_message .= '</font></span>'; // reset span class to default