summaryrefslogtreecommitdiff
path: root/matchsrv.lua
diff options
context:
space:
mode:
authorLizzy Fleckenstein <lizzy@vlhl.dev>2026-06-03 17:36:51 +0200
committerLizzy Fleckenstein <lizzy@vlhl.dev>2026-06-03 17:39:15 +0200
commita42c94e103ecf7cb365a8888c3f5afc785def284 (patch)
tree7522b24cf920dd2c62b733c1b65ab6a169977b36 /matchsrv.lua
parentd9996907bc5fb78449a3e3b6192fe57d76056071 (diff)
downloadr6p-a42c94e103ecf7cb365a8888c3f5afc785def284.tar.xz
util: better rand_string, add mkdir
Diffstat (limited to 'matchsrv.lua')
-rwxr-xr-xmatchsrv.lua15
1 files changed, 8 insertions, 7 deletions
diff --git a/matchsrv.lua b/matchsrv.lua
index ac394b5..0ffa2b4 100755
--- a/matchsrv.lua
+++ b/matchsrv.lua
@@ -1,5 +1,6 @@
#!/usr/bin/env lua5.1
local enet = require("enet")
+local util = require("util")
local common = require("common")
local host = enet.host_create("0.0.0.0:18252")
@@ -18,21 +19,21 @@ end
local function handle(peer, pkt)
if pkt.type == "match_register" then
remove_game(peer)
- local game_id = common.rand_string(common.gameid_len)
+ local game_id = util.rand_string(common.gameid_len)
peer_to_game[peer] = game_id
game_to_peer[game_id] = peer
- peer:send(common.json_enc({ type = "server_match", game_id = common.base64_enc(game_id) }))
+ peer:send(util.json_enc({ type = "server_match", game_id = util.base64_enc(game_id) }))
print(peer, "registered game")
elseif pkt.type == "match_join" then
- local game_id = type(pkt.game_id) == "string" and common.base64_dec(pkt.game_id)
+ local game_id = type(pkt.game_id) == "string" and util.base64_dec(pkt.game_id)
if game_id then
local server = game_id and game_to_peer[game_id]
if server then
- server:send(common.json_enc({ type = "server_join", peer_addr = tostring(peer) }))
- peer:send(common.json_enc({ type = "client_join", peer_addr = tostring(server) }))
+ server:send(util.json_enc({ type = "server_join", peer_addr = tostring(peer) }))
+ peer:send(util.json_enc({ type = "client_join", peer_addr = tostring(server) }))
print(peer, "joined game", server)
else
- peer:send(common.json_enc({ type = "client_join_fail" }))
+ peer:send(util.json_enc({ type = "client_join_fail" }))
print(peer, "failed to join game")
end
end
@@ -45,7 +46,7 @@ while true do
local event = host:service(100)
while event do
if event.type == "receive" then
- local pkt = common.json_dec(event.data)
+ local pkt = util.json_dec(event.data)
if pkt then
handle(event.peer, pkt)
end