import { game } from "../game"; import { userData } from "../Classes/userData"; import { users } from "./users"; export function registerAccountCallbacks(socket){ function emitLogin(result : userData, registered:boolean = false){ if(result != null){ socket.emit("account/login", JSON.stringify(userData.makeSafe(result, socket.id))); socket.user = result if(registered){ console.log(`User ${(result as userData).login} registerd and logged in`); } else{ console.log(`User ${(result as userData).login} logged in`); } } else{ socket.emit("account/login", ""); console.log("Login Failed"); } } socket.on('account/register', (data) => { let buff = Buffer.from(data, 'base64'); let json : userData = JSON.parse(buff.toString('utf-8')); if (!json.login || !json.password) return let result = users.createUser(json.login, json.password); emitLogin(result, true); }); socket.on('account/login', (data) => { let buff = Buffer.from(data, 'base64'); let json : userData = JSON.parse(buff.toString('utf-8')); if (!json.login || !json.password) return let result = users.readUser(json.login, json.password); emitLogin(result); }); }