From e51aaae1b19877db4d114a3ccd0c6c9f109e5c30 Mon Sep 17 00:00:00 2001 From: Ilias Rbayti <63159154+Kenshiin13@users.noreply.github.com> Date: Tue, 15 Aug 2023 14:48:54 +0200 Subject: [PATCH] Added 'coordinate' arg type for ESX.RegisterCommand() --- [core]/es_extended/server/commands.lua | 6 +++--- [core]/es_extended/server/functions.lua | 9 ++++++++- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/[core]/es_extended/server/commands.lua b/[core]/es_extended/server/commands.lua index 86c64b46..679dee5f 100644 --- a/[core]/es_extended/server/commands.lua +++ b/[core]/es_extended/server/commands.lua @@ -13,9 +13,9 @@ end, false, { help = TranslateCap('command_setcoords'), validate = true, arguments = { - { name = 'x', help = TranslateCap('command_setcoords_x'), type = 'number' }, - { name = 'y', help = TranslateCap('command_setcoords_y'), type = 'number' }, - { name = 'z', help = TranslateCap('command_setcoords_z'), type = 'number' } + { name = 'x', help = TranslateCap('command_setcoords_x'), type = 'coordinate' }, + { name = 'y', help = TranslateCap('command_setcoords_y'), type = 'coordinate' }, + { name = 'z', help = TranslateCap('command_setcoords_z'), type = 'coordinate' } } }) diff --git a/[core]/es_extended/server/functions.lua b/[core]/es_extended/server/functions.lua index d70369a1..09fb6d44 100644 --- a/[core]/es_extended/server/functions.lua +++ b/[core]/es_extended/server/functions.lua @@ -113,7 +113,14 @@ function ESX.RegisterCommand(name, group, cb, allowConsole, suggestion) local merge = table.concat(args, " ") newArgs[v.name] = string.sub(merge, lenght) - end + elseif v.type == 'coordinate' then + local coord = tonumber(args[k]:match("(-?%d+%.?%d*)")) + if(not coord) then + error = TranslateCap('commanderror_argumentmismatch_number', k) + else + newArgs[v.name] = coord + end + end end --backwards compatibility