diff --git a/__resource.lua b/__resource.lua index c3748f1..6eca75e 100644 --- a/__resource.lua +++ b/__resource.lua @@ -1,5 +1,7 @@ resource_manifest_version "44febabe-d386-4d18-afbe-5e627f4af937" +dependency "yarn" + client_scripts{ "client/client.lua", "client/reverse_weapon_hashes.lua", @@ -17,8 +19,7 @@ exports { } server_scripts{ + "src/server.js", "server/update_check.lua", - "server/live_map.net.dll", - "server/wrapper.lua", - "server/blips_server.lua" + "server/wrapper.lua" } diff --git a/package.json b/package.json index 551a13e..eae5ca8 100644 --- a/package.json +++ b/package.json @@ -21,9 +21,9 @@ "koa": "^2.7.0", "koa-body": "^4.1.0", "koa-router": "^7.4.0", + "simple-console-logger": "^2.0.2", "socket.io": "^2.2.0", "webpack": "^4.33.0", - "winston": "^3.2.1", "ws": "^7.0.0" }, "devDependencies": { diff --git a/src/server.js b/src/server.js new file mode 100644 index 0000000..8164ad9 --- /dev/null +++ b/src/server.js @@ -0,0 +1,36 @@ +const Koa = require("koa"); +const koaBody = require("koa-body"); +const Router = require("koa-router"); +const http = require("http"); +const logger = require("simple-console-logger"); + +const app = new Koa(); +const server = http.createServer(app.callback()); +const router = new Router(); + +const debugLevel = GetConvar("livemap_debug_level", "warn"); +const access = GetConvar("livemap_access_control", "*"); + +logger.configure({ + level: debugLevel +}); +const log = logger.getLogger("LiveMap"); + + +router.use(async (ctx, next) => { + ctx.response.append("Access-Control-Allow-Origin", access); + next(); +}); + +app.use(koaBody({ + patchKoa: true, +})) + .use(router.routes()) + .use(router.allowedMethods()); + +// Start a server on the socket_port... +const port = GetConvarInt("socket_port", 30121); + +server.listen(port, function listening() { + log.info("Listening on %d", port); +});