local sampev = require 'samp.events'
function sampev.onCreateGangZone(zoneId, squareStart, squareEnd, color)
return { zoneId, squareStart, squareEnd, converColor(color) }
end
function sampev.onGangZoneFlash(zoneId, color)
return { zoneId, converColor(color) }
end
function converColor(color)
local colori = 'aa' .. bit.tohex(color, 6) -- вырезаем прозрачность и вставляем свою
local a, b, g, r = hex_to_argb(colori)
return join_argb(a, b, g, r)
end
function join_argb(a, r, g, b)
local argb = b -- b
argb = bit.bor(argb, bit.lshift(g, 8)) -- g
argb = bit.bor(argb, bit.lshift(r, 16)) -- r
argb = bit.bor(argb, bit.lshift(a, 24)) -- a
return argb
end
function hex_to_argb(hex)
local a, r, g, b = explode_argb(tonumber(hex, 16))
return a, r, g, b
end
function explode_argb(argb)
local a = bit.band(bit.rshift(argb, 24), 0xFF)
local r = bit.band(bit.rshift(argb, 16), 0xFF)
local g = bit.band(bit.rshift(argb, 8), 0xFF)
local b = bit.band(argb, 0xFF)
return a, r, g, b
end