69 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
-- optimizations
 | 
						|
local ipairs = ipairs
 | 
						|
local upper = string.upper
 | 
						|
local format = string.format
 | 
						|
-- end optimizations
 | 
						|
 | 
						|
---
 | 
						|
--- [[ Nearest Postal Commands ]] ---
 | 
						|
---
 | 
						|
 | 
						|
TriggerEvent('chat:addSuggestion', '/postal', 'Set the GPS to a specific postal',
 | 
						|
             { { name = 'Postal Code', help = 'The postal code you would like to go to' } })
 | 
						|
 | 
						|
RegisterCommand('postal', function(_, args)
 | 
						|
    if #args < 1 then
 | 
						|
        if pBlip then
 | 
						|
            RemoveBlip(pBlip.hndl)
 | 
						|
            pBlip = nil
 | 
						|
            TriggerEvent('chat:addMessage', {
 | 
						|
                color = { 255, 0, 0 },
 | 
						|
                args = {
 | 
						|
                    'Postals',
 | 
						|
                    config.blip.deleteText
 | 
						|
                }
 | 
						|
            })
 | 
						|
        end
 | 
						|
        return
 | 
						|
    end
 | 
						|
 | 
						|
    local userPostal = upper(args[1])
 | 
						|
    local foundPostal
 | 
						|
 | 
						|
    for _, p in ipairs(postals) do
 | 
						|
        if upper(p.code) == userPostal then
 | 
						|
            foundPostal = p
 | 
						|
            break
 | 
						|
        end
 | 
						|
    end
 | 
						|
 | 
						|
    if foundPostal then
 | 
						|
        if pBlip then RemoveBlip(pBlip.hndl) end
 | 
						|
        local blip = AddBlipForCoord(foundPostal[1][1], foundPostal[1][2], 0.0)
 | 
						|
        pBlip = { hndl = blip, p = foundPostal }
 | 
						|
        SetBlipRoute(blip, true)
 | 
						|
        SetBlipSprite(blip, config.blip.sprite)
 | 
						|
        SetBlipColour(blip, config.blip.color)
 | 
						|
        SetBlipRouteColour(blip, config.blip.color)
 | 
						|
        BeginTextCommandSetBlipName('STRING')
 | 
						|
        AddTextComponentSubstringPlayerName(format(config.blip.blipText, pBlip.p.code))
 | 
						|
        EndTextCommandSetBlipName(blip)
 | 
						|
 | 
						|
        TriggerEvent('chat:addMessage', {
 | 
						|
            color = { 255, 0, 0 },
 | 
						|
            args = {
 | 
						|
                'Postals',
 | 
						|
                format(config.blip.drawRouteText, foundPostal.code)
 | 
						|
            }
 | 
						|
        })
 | 
						|
    else
 | 
						|
        TriggerEvent('chat:addMessage', {
 | 
						|
            color = { 255, 0, 0 },
 | 
						|
            args = {
 | 
						|
                'Postals',
 | 
						|
                config.blip.notExistText
 | 
						|
            }
 | 
						|
        })
 | 
						|
    end
 | 
						|
end)
 | 
						|
 |