summaryrefslogtreecommitdiff
path: root/common.lua
diff options
context:
space:
mode:
Diffstat (limited to 'common.lua')
-rw-r--r--common.lua21
1 files changed, 21 insertions, 0 deletions
diff --git a/common.lua b/common.lua
index adcc178..bc09b81 100644
--- a/common.lua
+++ b/common.lua
@@ -1,3 +1,6 @@
+local base64 = require("vendor.base64")
+local json = require("vendor.JSON")
+
local table_unpack = table.unpack or unpack
local function rand_string(n)
local b = {}
@@ -7,8 +10,26 @@ local function rand_string(n)
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,