From c18a9e67cf44dd432efa9f29212589e58f88312d Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Sun, 15 Mar 2020 18:32:33 +0000 Subject: [PATCH] Tweak rocket damage --- mods/ctf/ctf_events/init.lua | 9 +-- .../textures/ctf_events_kill_rocket.png | Bin 0 -> 679 bytes mods/pvp/shooter_tweaks/init.lua | 57 ++++++++++++++++-- mods/pvp/shooter_tweaks/mod.conf | 2 +- 4 files changed, 57 insertions(+), 11 deletions(-) create mode 100644 mods/ctf/ctf_events/textures/ctf_events_kill_rocket.png diff --git a/mods/ctf/ctf_events/init.lua b/mods/ctf/ctf_events/init.lua index 591d439..6e3723b 100644 --- a/mods/ctf/ctf_events/init.lua +++ b/mods/ctf/ctf_events/init.lua @@ -123,10 +123,11 @@ end ctf.register_on_killedplayer(function(victim, killer, stack, tool_caps) local sname = stack:get_name() local type = "sword" - if sname == "" then - if tool_caps.damage_groups.grenade then - type = "grenade" - end + + if tool_caps.damage_groups.grenade then + type = "grenade" + elseif tool_caps.damage_groups.rocket then + type = "rocket" elseif sname:sub(1, 8) == "shooter:" then type = "bullet" end diff --git a/mods/ctf/ctf_events/textures/ctf_events_kill_rocket.png b/mods/ctf/ctf_events/textures/ctf_events_kill_rocket.png new file mode 100644 index 0000000000000000000000000000000000000000..3b2dc4d1cc0e433a2c15bc2a09ea3b165f257324 GIT binary patch literal 679 zcmV;Y0$BZtP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2i^x1 z4jMIOyV%tL00JjTL_t(I%bk-yXcJ)=#(!U^shASb1KUeW@gJ5$keXD`f>4UYC|nu{ z3PC7zIXYx)JQ|6Lj!TBgd@WV%{9DlAHVj51Uj2q zt%jy)7>*-yxg4fxQYw{XC!{C9Fbq7;L(?=`qK>7i(zb1UNNues-E5YP(GU-k@sm05 z>-%<<^)KI~ZQJO&&K<`QFP}e^Q{xJ?wW7S6oIA|OQf~{FMy~>(>pC+xPYHnQ+bywN zahbYtj@nvLw%ctonGC9`9tWw@hN36{ykC6H?U^{A-!3sesZ&|C<=p)dUMw~ND3wYg zolYMEIw1f%Etdf$z{ZD90E|!StgNiag@py`^*WYiowQ(C7CSAMoz_8UeDTCsm~c1@ zKr|X 0.2 then + local pos = self.object:get_pos() + local above = {x=pos.x, y=pos.y + 1, z=pos.z} + if minetest.get_node(pos).name ~= "air" then + if self.user then + local player = minetest.get_player_by_name(self.user) + if player then + shooter.blast(above, 4, 25, 8, player, { "fleshy", "rocket" }) + end + end + self.object:remove() + end + self.timer = 0 + end +end + +minetest.registered_entities["shooter_grenade:grenade_entity"].on_step = function(self, dtime) + self.timer = self.timer + dtime + if self.timer > 0.2 then + local pos = self.object:get_pos() + local above = {x=pos.x, y=pos.y + 1, z=pos.z} + if minetest.get_node(pos).name ~= "air" then + if self.user then + local player = minetest.get_player_by_name(self.user) + if player then + shooter.blast(above, 2, 30, 5, player, { "fleshy", "grenade" }) + end + end + self.object:remove() + end + self.timer = 0 + end +end diff --git a/mods/pvp/shooter_tweaks/mod.conf b/mods/pvp/shooter_tweaks/mod.conf index 9baa1ba..79c9b48 100644 --- a/mods/pvp/shooter_tweaks/mod.conf +++ b/mods/pvp/shooter_tweaks/mod.conf @@ -1,2 +1,2 @@ name = shooter_tweaks -depends = shooter_grenade, shooter_hook, shooter_guns, shooter_crossbow +depends = shooter_grenade, shooter_hook, shooter_guns, shooter_crossbow, shooter_rocket