]> git.lizzy.rs Git - dragonfireclient.git/blob - clientmods/commands/init.lua
71328e9ed8ee4dc857e51d89fca74ec4fe5d5ea4
[dragonfireclient.git] / clientmods / commands / init.lua
1 minetest.register_chatcommand("say", {
2         description = "Send raw text",
3         func = function(text)
4                 minetest.send_chat_message(text)
5                 return true
6         end,
7 })
8
9 minetest.register_chatcommand("teleport", {
10         params = "<X>,<Y>,<Z>",
11         description = "Teleport to relative coordinates. " .. (core.anticheat_protection and "Only works for short distances." or ""),
12         func = function(param)
13                 local success, pos = minetest.parse_relative_pos(param)
14                 if success then
15                         minetest.localplayer:set_pos(pos)
16                         return true, "Teleporting to " .. minetest.pos_to_string(pos)
17                 end
18                 return false, pos
19         end,
20 })
21
22 minetest.register_chatcommand("wielded", {
23         description = "Print itemstring of wieleded item",
24         func = function()
25                 return true, minetest.get_wielded_item():get_name()
26         end
27 })
28
29 minetest.register_chatcommand("disconnect", {
30         description = "Exit to main menu",
31         func = function(param)
32                 minetest.disconnect()
33         end,
34 })
35
36 minetest.register_chatcommand("players", {
37         description = "List online players",
38         func = function(param)
39                 return true, "Online players: " .. table.concat(minetest.get_player_names(), ", ")
40         end
41 })
42
43 minetest.register_chatcommand("kill", {
44         description = "Kill yourself",
45         func = function()
46                 minetest.send_damage(minetest.localplayer:get_hp())
47         end,
48 })
49
50 minetest.register_chatcommand("set", {
51         params = "([-n] <name> <value>) | <name>",
52         description = "Set or read client configuration setting",
53         func = function(param)
54                 local arg, setname, setvalue = string.match(param, "(-[n]) ([^ ]+) (.+)")
55                 if arg and arg == "-n" and setname and setvalue then
56                         minetest.settings:set(setname, setvalue)
57                         return true, setname .. " = " .. setvalue
58                 end
59
60                 setname, setvalue = string.match(param, "([^ ]+) (.+)")
61                 if setname and setvalue then
62                         if not minetest.settings:get(setname) then
63                                 return false, "Failed. Use '.set -n <name> <value>' to create a new setting."
64                         end
65                         minetest.settings:set(setname, setvalue)
66                         return true, setname .. " = " .. setvalue
67                 end
68
69                 setname = string.match(param, "([^ ]+)")
70                 if setname then
71                         setvalue = minetest.settings:get(setname)
72                         if not setvalue then
73                                 setvalue = "<not set>"
74                         end
75                         return true, setname .. " = " .. setvalue
76                 end
77
78                 return false, "Invalid parameters (see .help set)."
79         end,
80 })
81