--[[ elected = { president = { name = "", --name of the elected candidate. when = 0, --when the candidate was elected. voters = { }, --names of voters who voted for this elected candidate. }, }, candidates = { president = { }, }, --]] modEUrn.getPropCommPresident = function() local now = os.time() --Em milisegundos return { --privs = {electoraljudge=true}, params = "[<".. modEUrn.translate("candidate_name")..">]", description = modEUrn.translate("Show or Select the presidente of the server."), func = function(playername, param) if type(param)=="string" and param~="" then if minetest.get_player_privs(playername).electoraljudge then if minetest.player_exists(param) then local who = param if modEUrn.handler.elected==nil then modEUrn.handler.elected = { } end if modEUrn.handler.elected.president==nil then modEUrn.handler.elected.president = { } end modEUrn.handler.elected.president.name = who modEUrn.handler.elected.president.when = now if modEUrn.handler.elected.president.voters==nil then modEUrn.handler.elected.president.voters = { } end modEUrn.handler.elected.president.voters[playername] = now if modEUrn.handler.candidates==nil then modEUrn.handler.candidates = { } end if modEUrn.handler.candidates.president==nil then modEUrn.handler.candidates.president = { } end modEUrn.handler.candidates.president[who] = now minetest.chat_send_player( playername, --os.date("%Y-%m-%d %Hh:%Mm:%Ss", now) .. core.colorize("#00FF00", "[E-URN]").." " ..modEUrn.translate("Player '%s' has been named the president of this server!"):format(who) ) else minetest.chat_send_player( playername, --os.date("%Y-%m-%d %Hh:%Mm:%Ss", now) .. core.colorize("#FF0000", "[E-URN]").." " ..modEUrn.translate("The name '%s' is not the player name registered on the server!"):format(param) ) end else minetest.chat_send_player( playername, --os.date("%Y-%m-%d %Hh:%Mm:%Ss", now) .. core.colorize("#FF0000", "[E-URN]").." " ..modEUrn.translate("You do not have the 'electoraljudge' privilege to define who will be the president of the server!") ) end else minetest.chat_send_player( playername, --os.date("%Y-%m-%d %Hh:%Mm:%Ss", now) .. core.colorize("#00FF00", "[E-URN]").." " ..modEUrn.translate("The president of this server is %s!"):format(dump(modEUrn.handler.elected.president.name)) ) end end, } end minetest.register_chatcommand( "president", modEUrn.getPropCommPresident() ) minetest.register_chatcommand( modEUrn.translate("president"), modEUrn.getPropCommPresident() )