From 28275c7d8b841e66fd641dbd7f7ad45844ecf394 Mon Sep 17 00:00:00 2001 From: Eltrac Date: Fri, 14 Mar 2025 13:22:30 +0800 Subject: feat: dynamic punch damage punch damage varies with the number of hearts --- objects/Player.lua | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'objects') diff --git a/objects/Player.lua b/objects/Player.lua index 1ac6891..09f3a58 100644 --- a/objects/Player.lua +++ b/objects/Player.lua @@ -126,7 +126,9 @@ function Player:punch(target) -- check if enemy is in range if distance <= attack_radius + enemy.r + self.r and angle_diff <= math.rad(attack_angle / 2) then - enemy:takeDamage(config.player.punch.damage) + local damage = config.player.punch.damage + + config.player.punch.damageCoefficient / (1 - math.exp(-#self.hearts / 5)) + enemy:takeDamage(damage) enemy.punched = G.time + config.player.punch.cooldown -- knock back enemy local normEdx, normEdy = edx / distance, edy / distance -- cgit v1.2.3