]> git.lizzy.rs Git - worldedit.git/commitdiff
Fix /shift command to conform to worldedit command standard
authorDaniel Sosa <sosa.daniel23@gmail.com>
Mon, 16 Feb 2015 02:28:50 +0000 (02:28 +0000)
committerDaniel Sosa <sosa.daniel23@gmail.com>
Mon, 4 Jul 2016 02:44:02 +0000 (21:44 -0500)
worldedit_commands/cuboid.lua
worldedit_commands/cuboidapi.lua

index 9bc2822ff04556993f61f5dc7c2c4e7c189cadd2..6ea1ffcdd2151aee76eae61354586db60302f0fa 100644 (file)
@@ -82,19 +82,23 @@ minetest.register_chatcommand("/inset", {
 
 
 minetest.register_chatcommand("/shift", {
-       params = "<amount> [up|down|left|right|front|back]",
+--     params = "<amount> [up|down|left|right|front|back]",
+       params = "[x|y|z|?|up|down|left|right|front|back] [+|-]<amount>",
        description = "Moves the selection region. Does not move contents.",
        privs = {worldedit=true},
        func = function(name, param)
                local pos1 = worldedit.pos1[name]
                local pos2 = worldedit.pos2[name]
-               local find, _, amount, direction = param:find("(%d+)%s*(%l*)")
+--             local find, _, amount, direction = param:find("(%d+)%s*(%l*)")
+               local find, _, direction, amount = param:find("([%?%l]+)%s*([+-]?%d+)")
                
                if find == nil then
                        worldedit.player_notify(name, "invalid usage: " .. param)
                        return
                end
                
+               worldedit.player_notify(name, "direction = " .. direction .. " amount = " .. amount)
+               
                if pos1 == nil or pos2 == nil then
                        worldedit.player_notify(name, 
                                "Undefined region. Region must be defined beforehand.")
@@ -102,14 +106,14 @@ minetest.register_chatcommand("/shift", {
                end
                
                local axis, dir
-               if direction ~= "" then
+               if direction ~= "?" then
                        axis, dir = worldedit.translate_direction(name, direction)
                else
                        axis, dir = worldedit.player_axis(name)
                end
                
                if axis == nil or dir == nil then
-                       return false, "Invalid if looking up or down"
+                       return false, "Invalid"
                end
                
                assert(worldedit.cuboid_shift(name, axis, amount * dir))
index 08b364ace3d2fcb054df90338e3e20528f45d4c1..d91b0714a3a281f1d6faf8596f415e3f38462bcb 100644 (file)
@@ -205,7 +205,7 @@ end
 worldedit.translate_direction = function(name, direction)
        local axis, dir = worldedit.player_axis(name)
        local resaxis, resdir
-
+       
        if direction == "up" then
                return 'y', 1
        end