summaryrefslogtreecommitdiff
path: root/common.lua
blob: bc09b8190340a6081a0965bb89881e42d950da11 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
local base64 = require("vendor.base64")
local json = require("vendor.JSON")

local table_unpack = table.unpack or unpack
local function rand_string(n)
    local b = {}
    for i = 1, n do
        table.insert(b, math.random(0, 255))
    end
    return string.char(table_unpack(b))
end

local function base64_dec(x)
    local succ, dec = pcall(base64.decode, x)
    if succ then return dec end
end

local function json_dec(x)
    local succ, dec = pcall(json.decode, json, x)
    if succ then return dec end
end

local function json_enc(x)
    return json:encode(x)
end

return {
    rand_string = rand_string,
    base64_dec = base64_dec,
    base64_enc = base64.encode,
    json_dec = json_dec,
    json_enc = json_enc,
    default_match_addr = "ivy.vlhl.dev:18252",
    gameid_len = 8,
    secret_len = 4,
}