Archived
upd | callServer
This commit is contained in:
1 parent
ce5824db81
commit
faf4ca3c47
3 files changed
+76
-4
No files matched your search
@@ -0,0 +1,30 @@
|
||||
import { utils } from './utils.ts'
|
||||
import { state } from './index.ts'
|
||||
import type { RPCData } from './types.ts'
|
||||
|
||||
export class Server {
|
||||
public async listen(player: any, data: string) {
|
||||
const parsedData = utils.parseData(data)
|
||||
await this.executeLocal(player, parsedData)
|
||||
}
|
||||
|
||||
private async executeLocal(player: any, data: RPCData) {
|
||||
const fnResponse = await state[data.eventName](...data.data)
|
||||
|
||||
const response = {
|
||||
data: fnResponse,
|
||||
...data,
|
||||
}
|
||||
|
||||
this.sendResponseToClient(player, response)
|
||||
}
|
||||
|
||||
private sendResponseToClient(player: any, data: RPCData) {
|
||||
const eventName = utils.generateResponseEventName(data.uuid)
|
||||
const prepareForTransfer = utils.stringifyData(data)
|
||||
|
||||
player.call(eventName, prepareForTransfer)
|
||||
}
|
||||
}
|
||||
|
||||
export const server = new Server()
|
||||
Reference in new issue
Block a user