rename feature from "invites" to "guestlists", adjust readme

master
Tai Kedzierski 2019-01-24 00:20:47 +00:00
parent 7370847ebf
commit aed3c6bf1e
4 changed files with 22 additions and 24 deletions

View File

@ -17,19 +17,17 @@ Causes players to receive a spawn point anywhere on the map. Players will likely
KNOWN ISSUE - Any player not yet registered with a spawn point will be given a spawn point anywhere in the world. If applying retroactively to a server, this will cause existing players to be re-spawned once.
### Spawn invites
### Spawn guests
Randomized spawning typically causes players to spawn far from eachother. If players wish to share a single spawn point, a player can invite another to join their spawn position.
Randomized spawning typically causes players to spawn far from eachother. If players wish to share a single spawn point, a player can add another to join their spawn position.
The player issuing the invite (host) must typically pay a levvy when the other player (guest) accepts.
The player issuing the invite (host) must typically pay a levvy when adding another player.
When the guest accepts:
* The host will pay the levvy from their inventory
* The guest's spawn will be set to the host's spawn position
* The guest will be transported to their new spawn immediately
The guest can return to their original spawn by running `/spawn original` ; they will themselves be charged the same levvy.
* `/spawn add <player>` - allow another player to visit your spawn directly, or lift their exile
* `/spawn kick <player>` - revoke rights to visit you, and if they are in your space, returns them to their own spawn
* `/spawn visit <player>` - visit a player's spawn
* `/spawn guests` - see who you have added to your spawn
* `/spawn hosts` - see who has added you to their spawn
## Settings

View File

@ -37,7 +37,7 @@ rspawn.min_z = tonumber(minetest.settings:get("rspawn.min_z") or -31000)
rspawn.max_z = tonumber(minetest.settings:get("rspawn.max_z") or 31000)
dofile(mpath.."/lua/data.lua")
dofile(mpath.."/lua/invites.lua")
dofile(mpath.."/lua/guestlists.lua")
dofile(mpath.."/lua/commands.lua")
dofile(mpath.."/lua/forceload.lua")
dofile(mpath.."/lua/debugging.lua")

View File

@ -52,11 +52,11 @@ minetest.register_chatcommand("spawn", {
end
elseif #args < 3 then
for command,action in pairs({
["guests"] = function() rspawn.invites:listguests(playername) end,
["hosts"] = function() rspawn.invites:listhosts(playername) end,
["add"] = function(commandername,targetname) rspawn.invites:addplayer(commandername,targetname) end,
["visit"] = function(commandername,targetname) rspawn.invites:visitplayer(targetname, commandername) end,
["kick"] = function(commandername,targetname) rspawn.invites:exileplayer(commandername, targetname) end,
["guests"] = function() rspawn.guestlists:listguests(playername) end,
["hosts"] = function() rspawn.guestlists:listhosts(playername) end,
["add"] = function(commandername,targetname) rspawn.guestlists:addplayer(commandername,targetname) end,
["visit"] = function(commandername,targetname) rspawn.guestlists:visitplayer(targetname, commandername) end,
["kick"] = function(commandername,targetname) rspawn.guestlists:exileplayer(commandername, targetname) end,
}) do
if args[1] == command then

View File

@ -1,4 +1,4 @@
rspawn.invites = {}
rspawn.guestlists = {}
-- invitations[guest] = host
rspawn.invitations = {}
@ -103,7 +103,7 @@ function rspawn:consume_levvy(player)
return false
end
function rspawn.invites:addplayer(hostname, guestname)
function rspawn.guestlists:addplayer(hostname, guestname)
local guestlist = rspawn.playerspawns["guest lists"][hostname] or {}
if guestlist[guestname] ~= nil then
@ -124,7 +124,7 @@ function rspawn.invites:addplayer(hostname, guestname)
rspawn:spawnsave()
end
function rspawn.invites:exileplayer(hostname, guestname)
function rspawn.guestlists:exileplayer(hostname, guestname)
local guestlist = rspawn.playerspawns["guest lists"][hostname] or {}
if guestlist[guestname] == 1 then
@ -137,11 +137,11 @@ function rspawn.invites:exileplayer(hostname, guestname)
end
minetest.chat_send_player(guestname, hostname.." banishes you!")
rspawn.invites:kick(hostname, guestname)
rspawn.guestlists:kick(hostname, guestname)
rspawn:spawnsave()
end
function rspawn.invites:kick(hostname, guestname)
function rspawn.guestlists:kick(hostname, guestname)
local guest = minetest.get_player_by_name(guestname)
local guestpos = guest:getpos()
local hostspawnpos = rspawn.playerspawns[hostname]
@ -152,7 +152,7 @@ function rspawn.invites:kick(hostname, guestname)
end
end
function rspawn.invites:listguests(hostname)
function rspawn.guestlists:listguests(hostname)
local guests = ""
local guestlist = rspawn.playerspawns["guest lists"][hostname] or {}
@ -165,7 +165,7 @@ function rspawn.invites:listguests(hostname)
minetest.chat_send_player(hostname, guests:sub(3))
end
function rspawn.invites:listhosts(guestname)
function rspawn.guestlists:listhosts(guestname)
local hosts = ""
for hostname,hostguestlist in pairs(rspawn.playerspawns["guest lists"]) do
@ -181,7 +181,7 @@ function rspawn.invites:listhosts(guestname)
minetest.chat_send_player(guestname, hosts:sub(3))
end
function rspawn.invites:visitplayer(hostname, guestname)
function rspawn.guestlists:visitplayer(hostname, guestname)
local guest = minetest.get_player_by_name(guestname)
local hostpos = rspawn.playerspawns[hostname]