diff --git a/index.js b/index.js index 40e50d3..b802bcd 100644 --- a/index.js +++ b/index.js @@ -2,8 +2,4 @@ 'use strict'; -const packageJson = require('./package.json'); - -console.log(`Wingbase version ${packageJson.version} running.`); - require('./server/')(); diff --git a/public/js/wingbase/world/physics.js b/public/js/wingbase/world/physics.js index 001f7ef..b6e98b8 100644 --- a/public/js/wingbase/world/physics.js +++ b/public/js/wingbase/world/physics.js @@ -76,7 +76,7 @@ class Physics { var r = 0.1; var body = game.world.bodies[i]; var pos = body.getPos(); - if (Math.abs(body.r - pos.r) > 0.3) pos.r = body.r; + if (Math.abs(body.r - pos.r) > 1) pos.r = body.r; var x = (body.x * r + pos.x) / (r + 1); var y = (body.y * r + pos.y) / (r + 1); var r = (body.r * r + pos.r) / (r + 1); diff --git a/server/game/net/index.js b/server/game/net/index.js index b5fab9d..709983c 100644 --- a/server/game/net/index.js +++ b/server/game/net/index.js @@ -6,7 +6,7 @@ const Connection = require('./connection.js'); class GameNet { constructor(server) { - this.io = socketio(starbugs.webServer.appServer); + this.io = socketio(wingbase.webServer.appServer); this.server = server; this.connections = new Map(); diff --git a/server/game/room/index.js b/server/game/room/index.js index 158810e..ee537f1 100644 --- a/server/game/room/index.js +++ b/server/game/room/index.js @@ -14,7 +14,7 @@ class Room { } add(player) { - console.log(`${player.name} joined ${this.name}.`); + wingbase.log(`${player.name} joined ${this.name}.`); player.room = this; player.connection.room = this.name; this.players.add(player); @@ -24,7 +24,7 @@ class Room { } remove(player) { - console.log(`${player.name} left ${this.name}.`); + wingbase.log(`${player.name} left ${this.name}.`); this.players.delete(player); this.teamA.delete(player); this.teamB.delete(player); @@ -32,7 +32,7 @@ class Room { if (this.players.size == 0) { this.stop(); - starbugs.gameServer.deleteRoom(this.name); + wingbase.gameServer.deleteRoom(this.name); } } diff --git a/server/index.js b/server/index.js index b8372c2..fb074de 100644 --- a/server/index.js +++ b/server/index.js @@ -1,11 +1,14 @@ 'use strict'; -const WebServer = require('./web/'); const GameServer = require('./game/'); +const WebServer = require('./web/'); +const ServerInterface = require('./interface.js'); -class StarbugsServer { +const packageJson = require('../package.json'); + +class WingbaseServer extends ServerInterface { constructor() { - + super(); } start() { @@ -14,12 +17,14 @@ class StarbugsServer { this.webServer.start(); this.gameServer.start(); + + this.log(`Wingbase version ${packageJson.version} running.`); } } function init() { - global.starbugs = new StarbugsServer(); - starbugs.start(); + global.wingbase = new WingbaseServer(); + wingbase.start(); } module.exports = init; diff --git a/server/interface.js b/server/interface.js new file mode 100644 index 0000000..04098a4 --- /dev/null +++ b/server/interface.js @@ -0,0 +1,28 @@ +'use strict'; + +require('colors'); + +class ServerInterface { + constructor() { + + } + + log(msg) { + let pad = (str, len, right) => { + str = '' + str; + return (right ? str : '') + + Array(len > str.length ? 1 + len - str.length : 0) + .join('0') + (right ? '' : str); + } + + let d = new Date(); + let timestamp = + `<${pad(d.getUTCHours(), 2)}:` + + `${pad(d.getUTCMinutes(), 2)}:` + + `${pad(d.getUTCSeconds(), 2)}.` + + `${pad(('' + d.getUTCMilliseconds()).slice(0, 2), 2, true)}> `; + console.log(timestamp.gray, msg); + } +} + +module.exports = ServerInterface;