Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local id = 0 -- number between 0 and 2^16-767
- local id, id2, l, r, l2, r2, id2, high
- function test()
- for i = 0, 2^16-1-766 do
- id = i
- -- code to chars
- high = math.floor(id / 254)
- l = high +1
- r = id - high * 254 +1
- -- insert to text
- local header = string.char(l)..string.char(r)
- -- extract from text
- l2 = string.byte(header:sub(1,1))
- r2 = string.byte(header:sub(2,2))
- -- decode from chars
- id2 = (l2-1)*254 + r2-1
- if id ~= id2 or l == 0 or r == 0 or l2 == 0 or r2 == 0 then
- error("values do not match")
- end
- end
- end
- local success, err = pcall(test)
- if not success then
- print(success, err)
- print("errored with", id, id2, l, r, l2, r2, id2, high)
- else
- print("success :)")
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement