Harden a number of minetest.after player checks
This commit is contained in:
parent
2132cdacc5
commit
f022b747b0
8 changed files with 42 additions and 23 deletions
|
@ -72,8 +72,8 @@ local function now_playing(player, track_id)
|
|||
active_huds[playername] = id
|
||||
end
|
||||
minetest.after(5, function(tab)
|
||||
local player = tab[1]
|
||||
local playername = player:get_player_name()
|
||||
local playername = tab[1]
|
||||
local player = minetest.get_player_by_name(playername)
|
||||
local id = tab[2]
|
||||
local seq = tab[3]
|
||||
if not player or not player:is_player() or not active_huds[playername] or not hud_sequence_numbers[playername] or seq ~= hud_sequence_numbers[playername] then
|
||||
|
@ -83,7 +83,7 @@ local function now_playing(player, track_id)
|
|||
player:hud_remove(active_huds[playername])
|
||||
active_huds[playername] = nil
|
||||
end
|
||||
end, {player, id, hud_sequence_numbers[playername]})
|
||||
end, {playername, id, hud_sequence_numbers[playername]})
|
||||
|
||||
end
|
||||
|
||||
|
|
|
@ -404,6 +404,9 @@ minetest.register_abm({
|
|||
end
|
||||
-- teleport the object
|
||||
minetest.after(3, function(obj, pos, target)
|
||||
if not obj:get_luaentity() then
|
||||
return
|
||||
end
|
||||
-- Prevent quick back-and-forth teleportation
|
||||
if portal_cooloff[obj] then
|
||||
return
|
||||
|
|
|
@ -292,11 +292,15 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
|
|||
end
|
||||
for field, _ in pairs(fields) do
|
||||
if string.find(field, "skins_set") then
|
||||
minetest.after(0, function(player)
|
||||
minetest.after(0, function(name)
|
||||
local player = minetest.get_player_by_name(name)
|
||||
if not player then
|
||||
return
|
||||
end
|
||||
local skin = armor:get_player_skin(name)
|
||||
armor.textures[name].skin = skin..".png"
|
||||
armor:set_player_armor(player)
|
||||
end, player)
|
||||
end, player:get_player_name())
|
||||
end
|
||||
end
|
||||
end)
|
||||
|
@ -406,9 +410,13 @@ minetest.register_on_joinplayer(function(player)
|
|||
end
|
||||
end
|
||||
for i=1, ARMOR_INIT_TIMES do
|
||||
minetest.after(ARMOR_INIT_DELAY * i, function(player)
|
||||
minetest.after(ARMOR_INIT_DELAY * i, function(name)
|
||||
local player = minetest.get_player_by_name(name)
|
||||
if not player then
|
||||
return
|
||||
end
|
||||
armor:set_player_armor(player)
|
||||
end, player)
|
||||
end, player:get_player_name())
|
||||
end
|
||||
end)
|
||||
|
||||
|
@ -435,7 +443,7 @@ if ARMOR_DROP == true or ARMOR_DESTROY == true then
|
|||
end
|
||||
armor:set_player_armor(player)
|
||||
if ARMOR_DESTROY == false then
|
||||
minetest.after(ARMOR_BONES_DELAY, function()
|
||||
minetest.after(ARMOR_BONES_DELAY, function(pos, drop)
|
||||
local node = minetest.get_node(vector.round(pos))
|
||||
if node then
|
||||
if node.name ~= "bones:bones" then
|
||||
|
@ -461,7 +469,7 @@ if ARMOR_DROP == true or ARMOR_DESTROY == true then
|
|||
armor.drop_armor(pos, stack)
|
||||
end
|
||||
end
|
||||
end)
|
||||
end, pos, drop)
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue