| | const colyseus = require("colyseus"); |
| | const http = require("http"); |
| | const express = require("express"); |
| | const monitor = require("@colyseus/monitor").monitor; |
| |
|
| | |
| | const app = express(); |
| |
|
| | |
| | const server = http.createServer(app); |
| | const gameServer = new colyseus.Server({ |
| | server: server, |
| | }); |
| |
|
| | |
| | class MyRoom extends colyseus.Room { |
| | onCreate(options) { |
| | console.log("Room created!", options); |
| | } |
| |
|
| | onJoin(client, options) { |
| | console.log(client.sessionId, "joined!"); |
| | } |
| |
|
| | onLeave(client, consented) { |
| | console.log(client.sessionId, "left!"); |
| | } |
| |
|
| | onMessage(client, message) { |
| | console.log(client.sessionId, "sent message", message); |
| | this.broadcast("messages", message); |
| | } |
| |
|
| | onDispose() { |
| | console.log("Room disposed!"); |
| | } |
| | } |
| |
|
| | |
| | gameServer.define("my_room", MyRoom); |
| |
|
| | |
| | app.use(express.static("public")); |
| | app.use("/colyseus", monitor()); |
| |
|
| | |
| | const port = process.env.PORT || 7860; |
| | server.listen(port, () => { |
| | console.log(`Listening on ws://localhost:${port}`); |
| | }); |
| |
|