]> git.lizzy.rs Git - elidragon.git/blobdiff - skyblock.lua
Revert "Revert "Change rank while player is offline""
[elidragon.git] / skyblock.lua
index ec22a784a36c521e33edba3ec8ef271ea6b3984e..effeb8112b6327ca7cdd7a47236ce4a528d5a09f 100755 (executable)
@@ -123,12 +123,14 @@ end)
 
 -- remove legacy cloud layer
 
-minetest.register_lbm({
+minetest.register_abm({
        nodenames = {"default:cloud"},
-       name = "elidragon:remove_cloud_layer",
+       label = "elidragon:remove_cloud_layer",
+       interval = 1,
+       chance = 1,
        action = function(pos)
                if pos.y == -10 then
-                       minetest.set_node(pos, { name = "air"})
+                       minetest.remove_node(pos)
                end
        end
 })
@@ -306,6 +308,8 @@ minetest.register_craft({
        }
 })
 
+-- commands
+
 minetest.register_chatcommand("island", {
        params = "",
        description = "Teleport to your Island",
@@ -315,3 +319,20 @@ minetest.register_chatcommand("island", {
                elidragon.skyblock.spawn_player(player)
        end,
 })
+
+minetest.register_chatcommand("set_skyblock_spawn", {
+       params = "<name> <x> <y> <z>",
+       description = "Set new skyblock spawn for <name>",
+       privs = {server = true},
+       func = function(sender, param)
+               local name = param:split(" ")[1]
+               local x = tonumber(param:split(" ")[2])
+               local y = tonumber(param:split(" ")[3])
+               local z = tonumber(param:split(" ")[4])
+               if name and x and y and z and minetest.get_player_by_name(name) then
+                       elidragon.skyblock.set_spawn(minetest.get_player_by_name(name), {x = x, y = y, z = z})
+               else
+                       minetest.chat_send_player(sender, "Invalid usage or player not online")
+               end
+       end,
+})