From e7c6d28e265ba084d53448833510fbbc5be40889 Mon Sep 17 00:00:00 2001 From: _Zaizen_ Date: Sun, 13 Dec 2020 21:26:32 +0000 Subject: [PATCH] Weapons: option to decrease damage with distance --- bl_weapons/weapons.lua | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/bl_weapons/weapons.lua b/bl_weapons/weapons.lua index d466066..0729fb9 100644 --- a/bl_weapons/weapons.lua +++ b/bl_weapons/weapons.lua @@ -254,6 +254,8 @@ function block_league.apply_damage(user, targets, weapon, decrease_damage_with_d targets = {targets} end + local remaining_HP + -- per ogni giocatore colpito for _, target in pairs(targets) do @@ -271,7 +273,13 @@ function block_league.apply_damage(user, targets, weapon, decrease_damage_with_d target:add_player_velocity(knk) end - local remaining_HP = target:get_hp() - damage + if weapon.weapon_type == 1 and decrease_damage_with_distance then + local dist = get_dist(user:get_pos(), target:get_pos()) + local damage = damage - (damage * dist / weapon.weapon_range) + remaining_HP = target:get_hp() - damage + else + remaining_HP = target:get_hp() - damage + end -- applico il danno target:set_hp(remaining_HP, {type = "set_hp", player_name = p_name})