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 |