Added ability to specify coordinates for /spawnentity

This commit is contained in:
Marcin 2015-06-25 18:14:01 +02:00 committed by beyondlimits
parent 3376d2e114
commit 81f2bfdcd4
1 changed files with 11 additions and 4 deletions

View File

@ -530,11 +530,11 @@ core.register_chatcommand("giveme", {
}) })
core.register_chatcommand("spawnentity", { core.register_chatcommand("spawnentity", {
params = "<EntityName>", params = "<EntityName> [<X>,<Y>,<Z>]",
description = "Spawn entity at your position", description = "Spawn entity at given (or your) position",
privs = {give=true, interact=true}, privs = {give=true, interact=true},
func = function(name, param) func = function(name, param)
local entityname = string.match(param, "(.+)$") local entityname, p = string.match(param, "^([^ ]+) *(.*)$")
if not entityname then if not entityname then
return false, "EntityName required" return false, "EntityName required"
end end
@ -545,7 +545,14 @@ core.register_chatcommand("spawnentity", {
core.log("error", "Unable to spawn entity, player is nil") core.log("error", "Unable to spawn entity, player is nil")
return false, "Unable to spawn entity, player is nil" return false, "Unable to spawn entity, player is nil"
end end
local p = player:getpos() if p == '' then
p = player:getpos()
else
p = core.string_to_pos(p)
if p == nil then
return false, "Invalid parameters ('" .. param .. "')"
end
end
p.y = p.y + 1 p.y = p.y + 1
core.add_entity(p, entityname) core.add_entity(p, entityname)
return true, ("%q spawned."):format(entityname) return true, ("%q spawned."):format(entityname)