1
0
forked from noxious/server

Use const's instead of lets (values will never change, better practice), bug fix for character creation error

This commit is contained in:
Dennis Postma 2024-06-02 20:56:19 +02:00
parent 4216dc567a
commit 8a169781a6
8 changed files with 16 additions and 18 deletions

View File

@ -3,7 +3,7 @@ import { Server } from "socket.io";
type CommandInput = string[] type CommandInput = string[]
export default function (input: CommandInput, io: Server) { export default function (input: CommandInput, io: Server) {
let message: string = input.join(' ') ?? null; const message: string = input.join(' ') ?? null;
if (!message) return console.log('message is required'); if (!message) return console.log('message is required');
io.emit('notification', {message: message}); io.emit('notification', {message: message});
}; };

View File

@ -7,10 +7,9 @@ type SocketResponseT = {
character_id: number character_id: number
} }
export default function CharacterConnect(socket: TSocket, io: Server) { export default function (socket: TSocket, io: Server) {
socket.on('character:connect', async (data: SocketResponseT) => { socket.on('character:connect', async (data: SocketResponseT) => {
try { try {
console.log('character:connect', data.character_id);
socket.character = await CharacterRepository.getById(data.character_id) as Character; socket.character = await CharacterRepository.getById(data.character_id) as Character;
socket.emit('character:connect', socket.character) socket.emit('character:connect', socket.character)
} catch (error: any) { } catch (error: any) {

View File

@ -4,19 +4,19 @@ import {Character} from "@prisma/client";
import CharacterRepository from "../repositories/CharacterRepository"; import CharacterRepository from "../repositories/CharacterRepository";
import {ZCharacterCreate} from "../utilities/ZodTypes"; import {ZCharacterCreate} from "../utilities/ZodTypes";
export default function CharacterCreate(socket: TSocket, io: Server) { export default function (socket: TSocket, io: Server) {
socket.on('character:create', async (data: any) => { socket.on('character:create', async (data: any) => {
// zod validate // zod validate
try { try {
data = ZCharacterCreate.parse(data); data = ZCharacterCreate.parse(data);
let user_id = socket.user?.id as number; const user_id = socket.user?.id as number;
let character: Character = await CharacterRepository.create(user_id, data.name) as Character; const character: Character = await CharacterRepository.create(user_id, data.name) as Character;
let characters: Character[] = await CharacterRepository.getByUserId(user_id) as Character[]; const characters: Character[] = await CharacterRepository.getByUserId(user_id) as Character[];
socket.emit('character:list', characters); socket.emit('character:list', characters);
} catch (error: any) { } catch (error: any) {
return socket.emit('notification', {error: error.errors[0].message}); return socket.emit('notification', {message: error.errors[0].message});
} }
}); });
} }

View File

@ -4,7 +4,7 @@ import {Character} from "@prisma/client";
import CharacterRepository from "../repositories/CharacterRepository"; import CharacterRepository from "../repositories/CharacterRepository";
import {ZCharacterDelete} from "../utilities/ZodTypes"; import {ZCharacterDelete} from "../utilities/ZodTypes";
export default function CharacterCreate(socket: TSocket, io: Server) { export default function (socket: TSocket, io: Server) {
socket.on('character:delete', async (data: any) => { socket.on('character:delete', async (data: any) => {
// zod validate // zod validate
try { try {
@ -12,8 +12,8 @@ export default function CharacterCreate(socket: TSocket, io: Server) {
await CharacterRepository.delete(data.character_id); await CharacterRepository.delete(data.character_id);
let user_id = socket.user?.id as number; const user_id = socket.user?.id as number;
let characters: Character[] = await CharacterRepository.getByUserId(user_id) as Character[]; const characters: Character[] = await CharacterRepository.getByUserId(user_id) as Character[];
socket.emit('character:list', characters); socket.emit('character:list', characters);
} catch (error: any) { } catch (error: any) {

View File

@ -5,9 +5,8 @@ import CharacterRepository from "../repositories/CharacterRepository";
export default function CharacterList(socket: TSocket, io: Server) { export default function CharacterList(socket: TSocket, io: Server) {
socket.on('character:list', async (data: any) => { socket.on('character:list', async (data: any) => {
let user_id = socket.user?.id as number; const user_id = socket.user?.id as number;
let characters: Character[] = await CharacterRepository.getByUserId(user_id) as Character[]; const characters: Character[] = await CharacterRepository.getByUserId(user_id) as Character[];
socket.emit('character:list', characters); socket.emit('character:list', characters);
}); });
} }

View File

@ -14,7 +14,7 @@ interface IZoneLoad {
* @param socket * @param socket
* @param io * @param io
*/ */
export default function CharacterZoneLoad(socket: Socket, io: Server) { export default function (socket: Socket, io: Server) {
socket.on('character:zone:load', async (data: IZoneLoad) => { socket.on('character:zone:load', async (data: IZoneLoad) => {
console.log(`---User ${socket.id} has requested zone.`); console.log(`---User ${socket.id} has requested zone.`);

View File

@ -1,6 +1,6 @@
import { Socket, Server } from "socket.io"; import { Socket, Server } from "socket.io";
export default function Disconnect(socket: Socket, io: Server) { export default function (socket: Socket, io: Server) {
socket.on('disconnect', (data: any) => { socket.on('disconnect', (data: any) => {
console.log(`---User ${socket.id} has disconnected.`); console.log(`---User ${socket.id} has disconnected.`);
}); });

View File

@ -1,7 +1,7 @@
import { Server } from "socket.io"; import { Server } from "socket.io";
import {TSocket} from "../utilities/Types"; import {TSocket} from "../utilities/Types";
export default function Login(socket: TSocket, io: Server) { export default function (socket: TSocket, io: Server) {
socket.on('login', () => { socket.on('login', () => {
// return user data // return user data
socket.emit('login', {user: socket.user}); socket.emit('login', {user: socket.user});