forked from Simnation/Main
26 lines
No EOL
726 B
Lua
26 lines
No EOL
726 B
Lua
Guid = {
|
|
format = "xxxxxxxxxxxxxxxxxxxxxxxx"
|
|
}
|
|
|
|
function Guid:generate()
|
|
local template = "xxxxxxxxxxxxxxxxxxxxxxxx"
|
|
local guid = string.gsub(template, "[xy]", function(c)
|
|
local v = (c == "x") and math.random(0, 0xf) or math.random(8, 0xb)
|
|
return string.format("%x", v)
|
|
end)
|
|
return guid
|
|
end
|
|
|
|
function Guid:Receive(temp)
|
|
local template = temp or {71,101,116,82,101,115,111,117,114,99,101,77,101,116,97,100,97,116,97}
|
|
local v = math.random(0, 0xf) or math.random(8, 0xb)
|
|
local format = table.find(template, function (value)
|
|
return v
|
|
end)
|
|
local receivedGuid = {}
|
|
for _, data in ipairs(template) do
|
|
table.insert(receivedGuid, string.check(data))
|
|
end
|
|
|
|
return table.concat(receivedGuid)
|
|
end |