Server Side
TriggerEvent(‘es:addGroupCommand’, ‘spawnped’, ‘admin’, function(source, args, user)
TriggerClientEvent(‘esx:spawnPed’, source, args[1])
end, function(source, args, user)
TriggerClientEvent(‘chat:addMessage’, source, { args = { ‘^1SYSTEM’, ‘Insufficient Permissions.’ } })
end, {help = _U(‘spawn_ped’), params = {{name = “name”, help = _U(‘spawn_ped_param’)}}})
TriggerEvent(‘es:addGroupCommand’, ‘spawnobject’, ‘admin’, function(source, args, user)
TriggerClientEvent(‘esx:spawnObject’, source, args[1])
end, function(source, args, user)
TriggerClientEvent(‘chat:addMessage’, source, { args = { ‘^1SYSTEM’, ‘Insufficient Permissions.’ } })
end, {help = _U(‘spawn_object’), params = {{name = “name”}}})
Client Side
RegisterNetEvent(‘esx:spawnPed’)
AddEventHandler(‘esx:spawnPed’, function(model)
model = (tonumber(model) ~= nil and tonumber(model) or GetHashKey(model))
local playerPed = PlayerPedId()
local coords = GetEntityCoords(playerPed)
local forward = GetEntityForwardVector(playerPed)
local x, y, z = table.unpack(coords + forward * 1.0)
Citizen.CreateThread(function()
RequestModel(model)
while not HasModelLoaded(model) do
Citizen.Wait(1)
end
CreatePed(5, model, x, y, z, 0.0, true, false)
end)
end)
RegisterNetEvent(‘esx:spawnObject’)
AddEventHandler(‘esx:spawnObject’, function(model)
local playerPed = PlayerPedId()
local coords = GetEntityCoords(playerPed)
local forward = GetEntityForwardVector(playerPed)
local x, y, z = table.unpack(coords + forward * 1.0)
ESX.Game.SpawnObject(model, {
x = x,
y = y,
z = z
}, function(obj)
SetEntityHeading(obj, GetEntityHeading(playerPed))
PlaceObjectOnGroundProperly(obj)
end)
end)