added protector_night_pvp setting
This commit is contained in:
parent
da742fd386
commit
1130f447a6
3 changed files with 26 additions and 32 deletions
25
pvp.lua
25
pvp.lua
|
|
@ -7,13 +7,16 @@ local statspawn = minetest.setting_get_pos("static_spawnpoint") or {x = 0, y = 2
|
|||
-- is pvp protection enabled
|
||||
protector.pvp = minetest.setting_getbool("protector_pvp")
|
||||
|
||||
-- is night-only pvp enabled
|
||||
protector.night_pvp = minetest.setting_getbool("protector_night_pvp")
|
||||
|
||||
-- disables PVP in your own protected areas
|
||||
if minetest.setting_getbool("enable_pvp") and protector.pvp then
|
||||
|
||||
if minetest.register_on_punchplayer then
|
||||
|
||||
minetest.register_on_punchplayer(
|
||||
function(player, hitter, time_from_last_punch, tool_capabilities, dir, damage)
|
||||
minetest.register_on_punchplayer(function(player, hitter,
|
||||
time_from_last_punch, tool_capabilities, dir, damage)
|
||||
|
||||
if not player
|
||||
or not hitter then
|
||||
|
|
@ -36,12 +39,26 @@ if minetest.setting_getbool("enable_pvp") and protector.pvp then
|
|||
return true
|
||||
end
|
||||
|
||||
-- do we enable pvp at night time only ?
|
||||
if protector.night_pvp then
|
||||
|
||||
-- get time of day
|
||||
local tod = minetest.get_timeofday() or 0
|
||||
|
||||
if tod > 0.2 and tod < 0.8 then
|
||||
--
|
||||
else
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
-- is player being punched inside a protected area ?
|
||||
if minetest.is_protected(pos, hitter:get_player_name()) then
|
||||
return true
|
||||
else
|
||||
return false
|
||||
end
|
||||
|
||||
return false
|
||||
|
||||
end)
|
||||
else
|
||||
print(S("[Protector] pvp_protect not active, update your version of Minetest"))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue