1.0.2 • Published 4 months ago
websocket-game-lobby-client
🔧 Simple API for building games using WebSockets.
Install
$ npm install websocket-game-lobby-client
Example
import { WebSocketGameLobbyClient } from 'websocket-game-lobby-client';
const gameLobby = new WebSocketGameLobbyClient();
gameLobby.addEventListener('message', ({ data }) => {
console.log(JSON.parse(data));
});
document
.querySelector('button')
.addEventListener('click', () => gameLobby.send('create'));
API
WebSocketGameLobbyClient
const gameLobby = new WebSocketGameLobbyClient({
port = 80,
options = {maxRetries: 10},
gameId = null,
gameCode = null,
playerId = null,
keepAliveMilliseconds = 3000
});
Options
WebSocketGameLobbyClient.addEventListener(type, callback)
Type
Name | Description | Parameters |
---|
open | When a WebSocket connection is established. | (event) |
message | When a message is received. | ({data, ...event}) |
close | When a WebSocket connection is lost. | (event) |
Examples
gameLobby.addEventListener('open', () => {
console.log('connected');
});
gameLobby.addEventListener('message', ({ data }) => {
console.log(JSON.parse(data));
});
gameLobby.addEventListener('close', () => {
console.log('disconnected');
});
WebSocketGameLobbyClient.send(type, data)
Type
Name | Description |
---|
create | Create a new game. |
join | Join existing game with game code. |
leave | Leave current game. |
start | Start current game. |
end | End current game. |
Examples
gameLobby.send('create');
gameLobby.send('join', { gameCode: 'ABCD' });
gameLobby.send('leave');
gameLobby.send('start');
gameLobby.send('end');