added character stuff

This commit is contained in:
Dennis Postma 2024-05-11 18:58:43 +02:00
parent ebfbae864b
commit b3a2d8bfaa
13 changed files with 45 additions and 17 deletions

View File

@ -1,5 +1,5 @@
import {Character, Zone} from "@prisma/client";
import ZoneRepository from "./repositories/zone";
import ZoneRepository from "./repositories/zone.repository";
interface ILoadedZone {
zone: Zone;

View File

@ -0,0 +1 @@
In this folder will come commands that can be used in the server console

View File

@ -0,0 +1,7 @@
import { Socket, Server } from "socket.io";
export default function characterConnect(socket: Socket, io: Server) {
socket.on('character:connect', (data) => {
console.log(`---User ${socket.id} has joined.`);
});
}

View File

@ -0,0 +1,7 @@
import { Socket, Server } from "socket.io";
export default function characterZoneLoad(socket: Socket, io: Server) {
socket.on('character:map:load', (data) => {
console.log(`---User ${socket.id} has requested map.`);
});
}

View File

@ -1,7 +0,0 @@
import { Socket, Server } from "socket.io";
export default function player_connect(socket: Socket, io: Server) {
socket.on('player:connect', (data) => {
console.log(`---User ${socket.id} has joined.`);
});
}

View File

@ -1,7 +0,0 @@
import { Socket, Server } from "socket.io";
export default function player_zone_load(socket: Socket, io: Server) {
socket.on('player:map:load', (data) => {
console.log(`---User ${socket.id} has requested map.`);
});
}

View File

@ -0,0 +1,20 @@
import prisma from '../utilities/prisma'; // Import the global Prisma instance
import {Character} from '@prisma/client';
import CharacterService from "../services/character.service";
class CharacterRepository {
async getByUserId(userId: number): Promise<Character[] | null> {
try {
return await prisma.character.findMany({
where: {
userId,
},
});
} catch (error: any) {
// Handle error
throw new Error(`Failed to get character by user ID: ${error.message}`);
}
}
}
export default new CharacterService;

View File

@ -0,0 +1,7 @@
import {Character} from "@prisma/client";
class CharacterService {
}
export default CharacterService;

View File

@ -1,5 +1,5 @@
import bcrypt from "bcryptjs";
import UserRepository from "../repositories/user";
import UserRepository from "../repositories/user.repository";
class UserService {
async login(username: string, password: string): Promise<boolean | any> {

View File

@ -1,5 +1,5 @@
import { Request, Response } from 'express';
import UserService from '../services/user';
import UserService from '../services/user.service';
async function addAuthRoutes(app: any) {
app.post('/login', async (req: Request, res: Response) => {