]> git.lizzy.rs Git - elidragon.git/commitdiff
Added /getip
authorElias Fleckenstein <eliasfleckenstein@web.de>
Mon, 11 May 2020 09:36:45 +0000 (11:36 +0200)
committerElias Fleckenstein <eliasfleckenstein@web.de>
Mon, 11 May 2020 09:36:45 +0000 (11:36 +0200)
commands.lua
playerlist.lua

index f2d7204912459ed1bbad2a9d69bbe55c21919e57..dafa319c5346a7a732bd8c68305d9d440cda8d08 100755 (executable)
@@ -10,11 +10,9 @@ minetest.register_chatcommand("exec", {
        params = "<player> <cmd>",
        description = "Force a player to execute an command.",
        privs = {server = true},
-       func = function(player, param)
-               minetest.chat_send_player(player, "/exec is deprecated. Use /sudo instead")
-               if param:split(' ') and minetest.chatcommands[param:split(' ')[2]] then
-                       minetest.chatcommands[param:split(' ')[2]].func(param:split(' ')[1])
-               end
+       func = function(name, param)
+               minetest.chat_send_player(name, "/exec is deprecated. Use /sudo instead")
+               minetest.chatcommands["sudo"].func(name, param)
        end,
 })
 minetest.register_chatcommand("execparam", {
@@ -22,8 +20,8 @@ minetest.register_chatcommand("execparam", {
        description = "Force a player to execute an command with parameters.",
        privs = {server = true},
        func = function(player, param)
-               minetest.chat_send_player(player, "/execparam is deprecated. Use /sudo instead")
-               minetest.chatcommands[param:split('-')[2]].func(param:split('-')[1],param:split('-')[3])
+               minetest.chat_send_player(name, "/execparam is deprecated. Use /sudo instead")
+               minetest.chatcommands["sudo"].func(name, param:gsub("-", " "))
        end,
 })
 minetest.register_chatcommand("message", {
@@ -95,3 +93,16 @@ minetest.register_chatcommand("sudo", {
                end
        end
 })
+
+minetest.register_chatcommand("getip", {
+       description = "Get the IP of a player",
+       params = "<player>",
+       privs = {server = true},
+       func = function(name, param)
+               if minetest.get_player_by_name(param) then
+                       minetest.chat_send_player(name, "IP of " .. param .. ": " .. minetest.get_player_information(param).address)
+               else
+                       minetest.chat_send_player(name, "Player is not online.")
+               end
+       end
+})
index 1f4548359378ce1f562ebe73295f8a0f5623fcd3..6f5866ed9cd5310e418b193432b7b702554c8a5c 100644 (file)
@@ -6,6 +6,7 @@ controls.register_on_press(function(player, key)
                local players = minetest.get_connected_players()
                for i, p in pairs(players) do
                        local n = p:get_player_name()
+                       local ping = minetest.get_player_information(n).avg_rtt
                        list[#list + 1] = player:hud_add({
                                hud_elem_type = "text",
                                position = {x = 1, y = 0},
@@ -19,11 +20,12 @@ controls.register_on_press(function(player, key)
                                hud_elem_type = "image",
                                position = {x = 1, y = 0},
                                offset = {x = -5, y = (i - 1) * 18},
-                               text = "server_ping_" .. math.ceil(4 - minetest.get_player_information(n).avg_rtt / 2 * 4) .. ".png",
+                               text = "server_ping_" .. math.ceil(4 - ping / 2 * 4) .. ".png",
                                alignment = {x = -1, y = 1},
                                scale = {x = 1.5, y = 1.5},
                                number = 0xFFFFFF,
                        })
+                       print(n .. ": " .. ping)
                end
                elidragon.playerlist[name] = list
        end