safeguard checks to avoid calling nil methods or operating on nil objects
parent
f035353b1b
commit
383106dbc3
18
notify.lua
18
notify.lua
|
@ -20,7 +20,9 @@ local function hud_remove(player, playername)
|
||||||
if os.time() < hud_timeout_seconds + hud.time then
|
if os.time() < hud_timeout_seconds + hud.time then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
player:hud_remove(hud.id)
|
if player and player.hud_remove then
|
||||||
|
player:hud_remove(hud.id)
|
||||||
|
end
|
||||||
huds[playername] = nil
|
huds[playername] = nil
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -36,11 +38,13 @@ local function hud_create(player, message, params)
|
||||||
def.text = message or def.text
|
def.text = message or def.text
|
||||||
def.hud_elem_type = def.hud_elem_type or "text"
|
def.hud_elem_type = def.hud_elem_type or "text"
|
||||||
def.name = mod_name .. "_feedback"
|
def.name = mod_name .. "_feedback"
|
||||||
local id = player:hud_add(def)
|
if player and player.hud_add then
|
||||||
huds[playername] = {
|
local id = player:hud_add(def)
|
||||||
id = id,
|
huds[playername] = {
|
||||||
time = os.time(),
|
id = id,
|
||||||
}
|
time = os.time(),
|
||||||
|
}
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
notify.warn = function(player, message)
|
notify.warn = function(player, message)
|
||||||
|
@ -67,7 +71,7 @@ notify.__call = function(self, player, message, params)
|
||||||
end
|
end
|
||||||
message = "[" .. mod_name .. "] " .. message
|
message = "[" .. mod_name .. "] " .. message
|
||||||
local hud = huds[playername]
|
local hud = huds[playername]
|
||||||
if hud then
|
if hud and player.hud_remove then
|
||||||
player:hud_remove(hud.id)
|
player:hud_remove(hud.id)
|
||||||
end
|
end
|
||||||
hud_create(player, message, params)
|
hud_create(player, message, params)
|
||||||
|
|
Loading…
Reference in New Issue