This commit is contained in:
parent
5af16cc48b
commit
38ed92abdf
|
|
@ -7,8 +7,9 @@ app.use("/game/stop", require("./routes/game/stop.js"))
|
||||||
app.use("/game/execute", require("./routes/game/execute.js"))
|
app.use("/game/execute", require("./routes/game/execute.js"))
|
||||||
|
|
||||||
app.use("/render/asset", require("./routes/render/asset.js"))
|
app.use("/render/asset", require("./routes/render/asset.js"))
|
||||||
app.use("/render/avatar", require("./routes/render/avatar.js"))
|
|
||||||
app.use("/render/game", require("./routes/render/game.js"))
|
app.use("/render/game", require("./routes/render/game.js"))
|
||||||
|
app.use("/render/headshot", require("./routes/render/headshot.js"))
|
||||||
|
app.use("/render/bodyshot", require("./routes/render/bodyshot.js"))
|
||||||
|
|
||||||
app.use("*", require("./routes/index.js"))
|
app.use("*", require("./routes/index.js"))
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
const net = require("net")
|
||||||
|
|
||||||
|
module.exports = () => {
|
||||||
|
return new Promise((resolve) => {
|
||||||
|
const server = net.createServer()
|
||||||
|
server.listen(0, () => {
|
||||||
|
const port = server.address().port
|
||||||
|
server.close((err) => resolve(port))
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
@ -1,14 +1,14 @@
|
||||||
const { readFileSync } = require("fs")
|
const { readFileSync } = require("fs")
|
||||||
const { randomUUID } = require("crypto")
|
const { randomUUID } = require("crypto")
|
||||||
const logger = require("../../lib/logger.js")
|
const logger = require("../../lib/logger.js")
|
||||||
|
const randport = require("../../lib/randport.js")
|
||||||
const Job = require("../../lib/classes/Job.js")
|
const Job = require("../../lib/classes/Job.js")
|
||||||
|
|
||||||
const express = require("express")
|
const express = require("express")
|
||||||
const app = express.Router()
|
const app = express.Router()
|
||||||
|
|
||||||
app.get("/:id", async (request, response) => {
|
app.get("/:id", async (request, response) => {
|
||||||
let tempPort = 64990
|
const job = new Job(randomUUID(), await randport())
|
||||||
const job = new Job(randomUUID(), tempPort)
|
|
||||||
const started = await job.Start()
|
const started = await job.Start()
|
||||||
if (!started) return response.status(500).json({ error: "RCCService failed to start" })
|
if (!started) return response.status(500).json({ error: "RCCService failed to start" })
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,14 +1,14 @@
|
||||||
const { readFileSync } = require("fs")
|
const { readFileSync } = require("fs")
|
||||||
const { randomUUID } = require("crypto")
|
const { randomUUID } = require("crypto")
|
||||||
const logger = require("../../lib/logger.js")
|
const logger = require("../../lib/logger.js")
|
||||||
|
const randport = require("../../lib/randport.js")
|
||||||
const Job = require("../../lib/classes/Job.js")
|
const Job = require("../../lib/classes/Job.js")
|
||||||
|
|
||||||
const express = require("express")
|
const express = require("express")
|
||||||
const app = express.Router()
|
const app = express.Router()
|
||||||
|
|
||||||
app.get("/:id", async (request, response) => {
|
app.get("/:id", async (request, response) => {
|
||||||
let tempPort = 64990
|
const job = new Job(randomUUID(), await randport())
|
||||||
const job = new Job(randomUUID(), tempPort)
|
|
||||||
const started = await job.Start()
|
const started = await job.Start()
|
||||||
if (!started) return response.status(500).json({ error: "RCCService failed to start" })
|
if (!started) return response.status(500).json({ error: "RCCService failed to start" })
|
||||||
|
|
||||||
|
|
@ -0,0 +1,45 @@
|
||||||
|
const { readFileSync } = require("fs")
|
||||||
|
const { randomUUID } = require("crypto")
|
||||||
|
const logger = require("../../lib/logger.js")
|
||||||
|
const randport = require("../../lib/randport.js")
|
||||||
|
const Job = require("../../lib/classes/Job.js")
|
||||||
|
|
||||||
|
const express = require("express")
|
||||||
|
const app = express.Router()
|
||||||
|
|
||||||
|
app.get("/:id", async (request, response) => {
|
||||||
|
const job = new Job(randomUUID(), await randport())
|
||||||
|
const started = await job.Start()
|
||||||
|
if (!started) return response.status(500).json({ error: "RCCService failed to start" })
|
||||||
|
|
||||||
|
logger.info(`[${job.id}] Job opened`)
|
||||||
|
await job.CreateClient()
|
||||||
|
const result = await job
|
||||||
|
.Open({
|
||||||
|
name: job.id,
|
||||||
|
script: readFileSync(__dirname + "/../../lua/headshot.lua", { encoding: "utf-8" }),
|
||||||
|
arguments: {
|
||||||
|
LuaValue: [
|
||||||
|
{ type: "LUA_TSTRING", value: job.id },
|
||||||
|
{ type: "LUA_TSTRING", value: "Headshot" },
|
||||||
|
{ type: "LUA_TSTRING", value: "PNG" },
|
||||||
|
|
||||||
|
// change this to 1920x when we finish the arbiter
|
||||||
|
{ type: "LUA_TNUMBER", value: "420" },
|
||||||
|
{ type: "LUA_TNUMBER", value: "420" },
|
||||||
|
|
||||||
|
{ type: "LUA_TSTRING", value: "https://economy.ittblox.gay" },
|
||||||
|
{ type: "LUA_TNUMBER", value: request.params.id },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
})
|
||||||
|
.catch((e) => false)
|
||||||
|
|
||||||
|
logger.info(`[${job.id}] Job closed`)
|
||||||
|
await job.Stop()
|
||||||
|
|
||||||
|
if (result) return response.end(Buffer.from(result[0]?.OpenJobExResult?.LuaValue[0]?.value, "base64"))
|
||||||
|
else return response.status(500).end()
|
||||||
|
})
|
||||||
|
|
||||||
|
module.exports = app
|
||||||
Loading…
Reference in New Issue