64 lines
1.2 KiB
JavaScript
64 lines
1.2 KiB
JavaScript
|
import * as env from "/scripts/env.js"
|
||
|
import * as status from "/scripts/net/status.js"
|
||
|
import {game} from "/scripts/game/game.js"
|
||
|
import {render} from "/scripts/display/draw.js"
|
||
|
export var socket = io.connect(env.IP_ADDRESS);
|
||
|
|
||
|
export function joinGame(data){
|
||
|
socket.emit('joinGame', data);
|
||
|
}
|
||
|
|
||
|
export function clickCanvas(data) {
|
||
|
socket.emit('clickCanvas', data);
|
||
|
}
|
||
|
|
||
|
function leaveGame(socket){
|
||
|
socket.emit('leaveGame', {});
|
||
|
}
|
||
|
|
||
|
socket.on('connect', function(data){
|
||
|
status.connected()
|
||
|
})
|
||
|
socket.on('disconnect', function(data){
|
||
|
status.disconnected()
|
||
|
})
|
||
|
|
||
|
socket.on('illegalAction', function(data){
|
||
|
let action
|
||
|
switch (data) {
|
||
|
case 1:
|
||
|
action = "You must be in game to do this."
|
||
|
break;
|
||
|
case 20:
|
||
|
action = "That name is already taken."
|
||
|
break;
|
||
|
case 23:
|
||
|
action = "Invalid Placement location."
|
||
|
break;
|
||
|
default:
|
||
|
action = "Unknown action."
|
||
|
|
||
|
}
|
||
|
console.log(`Illegal Action. ${action}`)
|
||
|
alert(`Illegal Action, ${action}`)
|
||
|
})
|
||
|
|
||
|
socket.on('playerList', function(data){
|
||
|
console.log(data)
|
||
|
});
|
||
|
|
||
|
socket.on('inGame', function(data){
|
||
|
if (!game.status) {changeScene()}
|
||
|
game.status = true;
|
||
|
})
|
||
|
|
||
|
socket.on('sync', function (sync){
|
||
|
game.world = sync.world;
|
||
|
render()
|
||
|
})
|
||
|
|
||
|
window.onbeforeunload = function(){
|
||
|
socket.disconnect();
|
||
|
game.world = []
|
||
|
}
|