From 7fd89ae14c187393ed1b19d34c18c81a56b699ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20P=C3=A9rez-Cerezo?= Date: Sat, 25 Dec 2021 10:49:33 +0100 Subject: made moderators afk by default --- init.lua | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/init.lua b/init.lua index b9a603a..2ab2e4a 100644 --- a/init.lua +++ b/init.lua @@ -228,21 +228,21 @@ function xban.get_record(player) return record, last_pos end -xban.afk = {} +xban.present = {} minetest.register_chatcommand("mod_afk", { description = "Set afk", params = "", privs = { kick=true }, func = function(name, params) - local afk = not xban.afk[name] + local present = not xban.present[name] if params == "on" then - afk = true + present = nil elseif params == "off" then - afk = nil + present = true end - xban.afk[name] = afk - if afk then + xban.present[name] = present + if not present then minetest.chat_send_player(name, "you are now afk") else minetest.chat_send_player(name, "you are no longer afk") @@ -257,9 +257,13 @@ minetest.register_chatcommand("is_afk", { privs = { kick=true }, func = function(name, params) local players = minetest:get_connected_players() + if params == "" then + minetest.chat_send_player(name, "You are"..(xban.present[name] and " not" or "").." afk") + return true + end for i=1,#players do if players[i]:get_player_name() == params then - minetest.chat_send_player(name, "Player "..params.." is"..(xban.afk[params] and "" or " not").." afk") + minetest.chat_send_player(name, "Player "..params.." is"..(xban.present[params] and " not" or "").." afk") return true end end @@ -282,7 +286,7 @@ minetest.register_on_prejoinplayer(function(name, ip) local players = minetest.get_connected_players() for i=1,#players do local pname = players[i]:get_player_name() - if minetest.check_player_privs(pname, {ban = true}) and not xban.afk[pname] then + if minetest.check_player_privs(pname, {ban = true}) and xban.present[pname] then return end end -- cgit v1.2.3