1 minetest.register_chatcommand("exec", {
2 params = "<player> <cmd>",
3 description = "Force a player to execute an command.",
4 privs = {server = true},
5 func = function(name, param)
6 minetest.chat_send_player(name, "/exec is deprecated. Use /sudo instead")
7 minetest.chatcommands["sudo"].func(name, param)
10 minetest.register_chatcommand("execparam", {
11 params = "<player>-<cmd>-<param>",
12 description = "Force a player to execute an command with parameters.",
13 privs = {server = true},
14 func = function(player, param)
15 minetest.chat_send_player(name, "/execparam is deprecated. Use /sudo instead")
16 minetest.chatcommands["sudo"].func(name, param:gsub("-", " "))
19 minetest.register_chatcommand("message", {
20 params = "[[<player>-]color>-]<message>",
21 description = "Send a message as the server.",
22 privs = {server = true},
23 func = function(player, param)
24 elidragon.message(param)
27 minetest.register_chatcommand("colormsg", {
28 params = "[[<player>-]color>-]<message>",
29 description = "Send a message as the server. [deprecated, replaced my the message command]",
30 privs = {server = true},
31 func = function(name, param)
32 elidragon.message(param)
33 minetest.chat_send_player(name, "/colormsg is deprecated. Use /message instead")
36 minetest.register_chatcommand("colormsgone", {
37 params = "[[<player>-]color>-]<message>",
38 description = "Send a message as the server. [deprecated, replaced my the message command]",
39 privs = {server = true},
40 func = function(name, param)
41 elidragon.message(param)
42 minetest.chat_send_player(name, "/colormsgone is deprecated. Use /message instead")
46 minetest.register_chatcommand("wielded", {
48 description = "Print Itemstring of wielded Item",
49 func = function(name, param)
50 local player = minetest.get_player_by_name(name)
52 local item = player:get_wielded_item()
54 minetest.chat_send_player(name, item:get_name())
60 minetest.register_chatcommand("sudo", {
61 description = "Force other players to run commands",
62 params = "<player> <command> <arguments...>",
63 privs = {server = true},
64 func = function(name, param)
65 local target = param:split(" ")[1]
66 local command = param:split(" ")[2]
68 local cmddef = minetest.chatcommands
69 local _, _, arguments = string.match(param, "([^ ]+) ([^ ]+) (.+)")
70 if not arguments then arguments = "" end
71 if target and command then
72 if cmddef[command] then
73 if minetest.get_player_by_name(target) then
74 if arguments == "" then argumentsdisp = arguments else argumentsdisp = " " .. arguments end
75 cmddef[command].func(target, arguments)
77 minetest.chat_send_player(name, minetest.colorize("#FF0000", "Invalid Player."))
80 minetest.chat_send_player(name, minetest.colorize("#FF0000", "Nonexistant Command."))
83 minetest.chat_send_player(name, minetest.colorize("#FF0000", "Invalid Usage."))
88 minetest.register_chatcommand("getip", {
89 description = "Get the IP of a player",
91 privs = {server = true},
92 func = function(name, param)
93 if minetest.get_player_by_name(param) then
94 minetest.chat_send_player(name, "IP of " .. param .. ": " .. minetest.get_player_information(param).address)
96 minetest.chat_send_player(name, "Player is not online.")