From 9c50fc924c9d857870a2c1670cc53663ad9a449c Mon Sep 17 00:00:00 2001 From: oilboi <47129783+oilboi@users.noreply.github.com> Date: Tue, 30 Jun 2020 02:32:12 -0400 Subject: [PATCH] Fix spamming death messages --- mods/server_messages/init.lua | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/mods/server_messages/init.lua b/mods/server_messages/init.lua index f626d94..c26eca9 100644 --- a/mods/server_messages/init.lua +++ b/mods/server_messages/init.lua @@ -1,16 +1,17 @@ -if not minetest.is_singleplayer() then - minetest.register_on_joinplayer(function(player) - local meta = player:get_meta() - local welcomed = (meta:get_int("welcomed") == 1) - local name = player:get_player_name() - if not welcomed then - minetest.chat_send_all("Welcome "..name.." to the server!") - meta:set_int("welcomed", 1) - else - minetest.chat_send_all("Welcome back "..name.."!") - end - end) -end +local pool = {} + +minetest.register_on_joinplayer(function(player) + local meta = player:get_meta() + local welcomed = (meta:get_int("welcomed") == 1) + local name = player:get_player_name() + pool[name] = minetest.get_us_time()/1000000 + if not welcomed then + minetest.chat_send_all("Welcome "..name.." to the server!") + meta:set_int("welcomed", 1) + else + minetest.chat_send_all("Welcome back "..name.."!") + end +end) local death_messages = { " got smoked!", @@ -54,10 +55,14 @@ local leave_messages = { minetest.register_on_dieplayer(function(player) local name = player:get_player_name() - minetest.chat_send_all(name..death_messages[math.random(1,table.getn(death_messages))]) + if (minetest.get_us_time()/1000000)-pool[name] > 0.001 then + minetest.chat_send_all(name..death_messages[math.random(1,table.getn(death_messages))]) + pool[name] = minetest.get_us_time()/1000000 + end end) minetest.register_on_leaveplayer(function(player) local name = player:get_player_name() minetest.chat_send_all(name..leave_messages[math.random(1,table.getn(leave_messages))]) end) + -- 2.44.0