mirror of
https://github.com/Uberi/Minetest-WorldEdit.git
synced 2024-12-04 13:23:43 +01:00
Add nil checks around get_player_by_name()
in case someone uses the commands from ncurses
This commit is contained in:
parent
1d8d9a704f
commit
60b6b205ad
@ -136,7 +136,8 @@ end
|
||||
|
||||
-- Return the marker that is closest to the player
|
||||
worldedit.marker_get_closest_to_player = function(name)
|
||||
local playerpos = minetest.get_player_by_name(name):get_pos()
|
||||
local player = assert(minetest.get_player_by_name(name))
|
||||
local playerpos = player:get_pos()
|
||||
local dist1 = vector.distance(playerpos, worldedit.pos1[name])
|
||||
local dist2 = vector.distance(playerpos, worldedit.pos2[name])
|
||||
|
||||
|
@ -84,7 +84,9 @@ worldedit.register_command("brush", {
|
||||
return true, cmd, params
|
||||
end,
|
||||
func = function(name, cmd, params)
|
||||
local itemstack = minetest.get_player_by_name(name):get_wielded_item()
|
||||
local player = minetest.get_player_by_name(name)
|
||||
if not player then return end
|
||||
local itemstack = player:get_wielded_item()
|
||||
if itemstack == nil or itemstack:get_name() ~= "worldedit:brush" then
|
||||
return false, S("Not holding brush item.")
|
||||
end
|
||||
@ -115,6 +117,6 @@ worldedit.register_command("brush", {
|
||||
minetest.registered_tools["worldedit:brush"].description .. ": " .. fullcmd)
|
||||
worldedit.player_notify(name, S("Brush assigned to command: @1", fullcmd), "ok")
|
||||
end
|
||||
minetest.get_player_by_name(name):set_wielded_item(itemstack)
|
||||
player:set_wielded_item(itemstack)
|
||||
end,
|
||||
})
|
||||
|
@ -174,7 +174,12 @@ end
|
||||
|
||||
-- Determines the axis in which a player is facing, returning an axis ("x", "y", or "z") and the sign (1 or -1)
|
||||
function worldedit.player_axis(name)
|
||||
local dir = minetest.get_player_by_name(name):get_look_dir()
|
||||
local player = minetest.get_player_by_name(name)
|
||||
if not player then
|
||||
-- we promised to return something valid...
|
||||
return "y", -1
|
||||
end
|
||||
local dir = player:get_look_dir()
|
||||
local x, y, z = math.abs(dir.x), math.abs(dir.y), math.abs(dir.z)
|
||||
if x > y then
|
||||
if x > z then
|
||||
|
@ -113,9 +113,9 @@ worldedit.register_command("pos1", {
|
||||
category = S("Region operations"),
|
||||
privs = {worldedit=true},
|
||||
func = function(name)
|
||||
local pos = minetest.get_player_by_name(name):get_pos()
|
||||
pos.x, pos.y, pos.z = math.floor(pos.x + 0.5), math.floor(pos.y + 0.5), math.floor(pos.z + 0.5)
|
||||
set_pos1(name, pos)
|
||||
local player = minetest.get_player_by_name(name)
|
||||
if not player then return end
|
||||
set_pos1(name, vector.round(player:get_pos()))
|
||||
end,
|
||||
})
|
||||
|
||||
@ -125,9 +125,9 @@ worldedit.register_command("pos2", {
|
||||
category = S("Region operations"),
|
||||
privs = {worldedit=true},
|
||||
func = function(name)
|
||||
local pos = minetest.get_player_by_name(name):get_pos()
|
||||
pos.x, pos.y, pos.z = math.floor(pos.x + 0.5), math.floor(pos.y + 0.5), math.floor(pos.z + 0.5)
|
||||
set_pos2(name, pos)
|
||||
local player = minetest.get_player_by_name(name)
|
||||
if not player then return end
|
||||
set_pos2(name, vector.round(player:get_pos()))
|
||||
end,
|
||||
})
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user