capturetheflag/mods/ctf/ctf_classes/melee.lua

22 lines
714 B
Lua
Raw Normal View History

2020-10-16 21:51:07 +00:00
minetest.register_on_punchplayer(function(player, hitter, time_from_last_punch, tool_capabilities, dir, damage)
if tool_capabilities.damage_groups.nopunch then return end
2020-11-08 17:08:14 +00:00
if ctf_respawn_immunity.is_immune(player) then return true end
2020-10-16 21:51:07 +00:00
local class = ctf_classes.get(hitter)
2020-10-14 03:00:21 +00:00
2020-10-16 21:51:07 +00:00
if class.properties.melee_bonus and hitter:get_wielded_item():get_name():find("sword") then
if time_from_last_punch > 1 then
time_from_last_punch = 1
elseif time_from_last_punch < 0.5 then
time_from_last_punch = 0.5
2020-10-14 03:00:21 +00:00
end
if hitter:get_hp() > 0 then
2020-11-08 17:08:14 +00:00
player:set_hp(player:get_hp() - damage)
player:punch(hitter, 1, {damage_groups = {fleshy = time_from_last_punch*2, nopunch = 1}}, dir)
2020-11-08 17:08:14 +00:00
return true
end
end
2020-10-16 21:51:07 +00:00
end)