1
0
mirror of https://github.com/sys4-fr/server-nalc.git synced 2025-06-28 14:16:06 +02:00

Update from Creative's repository

- For MinetestForFun/server-minetestforfun-creative#57
This commit is contained in:
LeMagnesium
2016-02-16 14:43:18 +01:00
parent c9a568f2ce
commit 8b02a31c12
107 changed files with 102 additions and 89 deletions

View File

@ -142,15 +142,16 @@ local function do_ws_func(depth, a, x)
return SIZE*y/math.pi
end
local chunksize = minetest.setting_get("chunksize") or 5
local ws_lists = {}
local function get_ws_list(a,x, sidelength)
local function get_ws_list(a,x)
ws_lists[a] = ws_lists[a] or {}
local v = ws_lists[a][x]
if v then
return v
end
v = {}
for x=x,x + (sidelength - 1) do
for x=x,x + (chunksize*16 - 1) do
local y = do_ws_func(ssize, a, x)
v[x] = y
end

View File

@ -178,7 +178,12 @@ minetest.register_chatcommand("from_hell", {
minetest.chat_send_player(pname, "You are free now")
player_from_nether(player)
local pos = player:getpos()
player:moveto({x=pos.x, y=100, z=pos.z})
local pos_togo = {x=pos.x, y=100, z=pos.z}
if minetest.setting_getbool("static_spawnpoint") ~= nil then
local stsp_conf = minetest.setting_get("static_spawnpoint")
pos_togo = {x = stsp_conf:split(",")[1]+0,y = stsp_conf:split(",")[2]+0,z = stsp_conf:split(",")[3]+0}
end
player:moveto(pos_togo)
return true, pname.." is now out of the nether."
end
})]]
@ -227,15 +232,11 @@ if nether_prisons then
end
-- fix wrong player positions
local timer = 0 --doesn't work if the server lags
minetest.register_globalstep(function(dtime)
timer = timer + dtime;
if timer >= 2 then
--minetest.after(1, update_players)
update_players()
timer = 0
end
end)
local function tick()
update_players()
minetest.after(2, tick)
end
tick()
-- set background when player joins
minetest.register_on_joinplayer(function(player)
@ -654,17 +655,21 @@ function nether_port(player, pos)
set_portal(known_portals_d, pos.z,pos.x, pos.y)
nether.player_from_nether(player)
local my = tonumber(meta:get_string("y"))
local y = get_portal(known_portals_u, pos.z,pos.x)
if y then
if y ~= my then
meta:set_string("y", y)
end
if minetest.setting_getbool("static_spawnpoint") then
local stsp_conf = minetest.setting_get("static_spawnpoint")
pos = minetest.string_to_pos(stsp_conf)
else
y = my or 100
local my = tonumber(meta:get_string("y"))
local y = get_portal(known_portals_u, pos.z,pos.x)
if y then
if y ~= my then
meta:set_string("y", y)
end
else
y = my or 100
end
pos.y = y
end
pos.y = y
player:moveto(pos)
else
set_portal(known_portals_u, pos.z,pos.x, pos.y)