classroom/actions.lua

82 lines
2.0 KiB
Lua

classroom.register_action("bring", {
title = "Bring",
description = "Teleport players to your location",
online_required = true,
func = function(runner, players)
local pos = runner:get_pos()
for _, name in pairs(players) do
local player = minetest.get_player_by_name(name)
player:set_pos(pos)
end
end,
})
classroom.register_action("look", {
title = "Look",
description = "Make players look at you",
online_required = true,
func = function(runner, players)
local pos = runner:get_pos()
for _, name in pairs(players) do
local player = minetest.get_player_by_name(name)
local pos2 = player:get_pos()
player:set_look_horizontal(vector.angle(pos, pos2))
end
end,
})
classroom.register_action("mute", {
title = "Mute",
description = "Revoke shout from players",
online_required = false,
func = function(runner, players)
for _, name in pairs(players) do
print("Muting " .. name)
local privs = minetest.get_player_privs(name)
privs.shout = nil
minetest.set_player_privs(name, privs)
end
end,
})
classroom.register_action("unmute", {
title = "Unmute",
description = "Grant shout to players",
online_required = false,
func = function(runner, players)
for _, name in pairs(players) do
local privs = minetest.get_player_privs(name)
privs.shout = true
minetest.set_player_privs(name, privs)
end
end,
})
classroom.register_action("fly", {
title = "Fly",
description = "Grant fly to players",
online_required = false,
func = function(runner, players)
for _, name in pairs(players) do
local privs = minetest.get_player_privs(name)
privs.fly = true
minetest.set_player_privs(name, privs)
end
end,
})
classroom.register_action("nofly", {
title = "NoFly",
description = "Revoke fly from players",
online_required = false,
func = function(runner, players)
for _, name in pairs(players) do
local privs = minetest.get_player_privs(name)
privs.fly = nil
minetest.set_player_privs(name, privs)
end
end,
})