Give sniper rifles the ability to break nodes again
This commit is contained in:
parent
8c33103e4c
commit
355a171949
3 changed files with 23 additions and 3 deletions
|
@ -153,4 +153,22 @@ function sniper_rifles.register_rifle(name, def)
|
||||||
rifles[name] = table.copy(def)
|
rifles[name] = table.copy(def)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local old_is_protected = minetest.is_protected
|
||||||
|
local r = ctf.setting("flag.nobuild_radius") + 5
|
||||||
|
local rs = r * r
|
||||||
|
function minetest.is_protected(pos, name, info, ...)
|
||||||
|
if r <= 0 or rs == 0 or not info or not info.is_gun then
|
||||||
|
return old_is_protected(pos, name, info, ...)
|
||||||
|
end
|
||||||
|
|
||||||
|
local flag, distSQ = ctf_flag.get_nearest(pos)
|
||||||
|
if flag and pos.y >= flag.y - 1 and distSQ < rs then
|
||||||
|
minetest.chat_send_player(name,
|
||||||
|
"You can't shoot blocks within "..r.." nodes of a flag!")
|
||||||
|
return true
|
||||||
|
else
|
||||||
|
return old_is_protected(pos, name, info, ...)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
dofile(minetest.get_modpath(minetest.get_current_modname()) .. "/rifles.lua")
|
dofile(minetest.get_modpath(minetest.get_current_modname()) .. "/rifles.lua")
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
name = sniper_rifles
|
name = sniper_rifles
|
||||||
depends = shooter, physics
|
depends = shooter, physics, ctf, ctf_flag
|
||||||
description = Sniper rifle API (depends on shooter) along with couple of sniper rifles.
|
description = Sniper rifle API (depends on shooter) along with couple of sniper rifles.
|
||||||
|
|
|
@ -11,7 +11,8 @@ sniper_rifles.register_rifle("sniper_rifles:rifle_762", {
|
||||||
sounds = { shot = "sniper_rifles_shot" },
|
sounds = { shot = "sniper_rifles_shot" },
|
||||||
particle = "shooter_bullet.png",
|
particle = "shooter_bullet.png",
|
||||||
groups = {
|
groups = {
|
||||||
snappy = 2, fleshy = 1, oddly_breakable_by_hand = 1
|
cracky = 3, snappy = 2, crumbly = 2, choppy = 2,
|
||||||
|
fleshy = 1, oddly_breakable_by_hand = 1,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
@ -29,7 +30,8 @@ sniper_rifles.register_rifle("sniper_rifles:rifle_magnum", {
|
||||||
sounds = { shot = "sniper_rifles_shot" },
|
sounds = { shot = "sniper_rifles_shot" },
|
||||||
particle = "shooter_bullet.png",
|
particle = "shooter_bullet.png",
|
||||||
groups = {
|
groups = {
|
||||||
snappy = 1, fleshy = 1, oddly_breakable_by_hand = 1
|
cracky = 2, snappy = 1, crumbly = 1, choppy = 1,
|
||||||
|
fleshy = 1, oddly_breakable_by_hand = 1,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
Loading…
Reference in a new issue