master
Tai 2017-06-26 17:23:42 +01:00
commit f7d2d024c0
2 changed files with 49 additions and 0 deletions

48
init.lua Normal file
View File

@ -0,0 +1,48 @@
nonew = {}
nonew.players = {}
nonew.data = minetest.get_worldpath().."/blocked_nonew.txt"
nonew.action = function(playername)
if nonew.players[playername] == 1 then
minetest.kick_player(playername, "No new players are being accepted at the moment.")
end
end
local function write_blocked_players()
local sdata = minetest.serialize(nonew.players)
if not sdata then
minetest.log("error", "No player object data")
return
end
local file, err = io.open(nonew.data, "w")
if err then return err end
file:write(sdata)
file:close()
end
local function read_blocked_players()
local file, err = io.open(nonew.data, "r")
if err then return err end
local sdata = file:read("*a")
file:close()
nonew.players = minetest.deserialize(sdata)
end
local function register_newcomer(playername)
nonew.players[playername] = 1
write_blocked_players()
end
minetest.register_on_newplayer(function(player)
local playername = player:get_player_name()
register_newcomer(playername)
nonew.action(playername)
end)
read_blocked_players()

1
mod.conf Normal file
View File

@ -0,0 +1 @@
name = nonew