thingies
This commit is contained in:
@ -1,6 +1,7 @@
|
||||
import { Socket, Server } from "socket.io";
|
||||
import ZoneRepository from "../repositories/zone.repository";
|
||||
import ZoneManager from "../ZoneManager";
|
||||
import {Zone} from "@prisma/client";
|
||||
|
||||
interface IZoneLoad {
|
||||
zoneId?: number;
|
||||
@ -19,11 +20,23 @@ export default function characterZoneLoad(socket: Socket, io: Server) {
|
||||
|
||||
const zone = await ZoneRepository.getById(1);
|
||||
|
||||
// zoneManager.addCharacterToZone(1, socket.user.id)
|
||||
if (!zone) {
|
||||
console.log(`---Zone not found.`);
|
||||
return;
|
||||
}
|
||||
|
||||
io.to(socket.id).emit('character:zone:load', {
|
||||
success: true,
|
||||
data: zone
|
||||
socket.join(zone.name);
|
||||
|
||||
const characters = await io.in(zone.name).fetchSockets();
|
||||
|
||||
// update to match with model Character
|
||||
|
||||
// send over zone and characters
|
||||
io.in(zone.name).to(socket.id).emit('character:zone:load', {
|
||||
zone: zone,
|
||||
characters: characters.map(socket => ({
|
||||
id: socket.id
|
||||
})),
|
||||
});
|
||||
});
|
||||
}
|
@ -1,25 +0,0 @@
|
||||
import { Socket, Server } from "socket.io";
|
||||
import ZoneRepository from "../repositories/zone.repository";
|
||||
import ZoneManager from "../ZoneManager";
|
||||
|
||||
interface IZoneLoadPlayers {
|
||||
zoneId: number;
|
||||
}
|
||||
|
||||
/**
|
||||
* @TODO: Implement zone loading, check if zone id is given or else load current character zone
|
||||
*
|
||||
* Handle character zone load event
|
||||
* @param socket
|
||||
* @param io
|
||||
*/
|
||||
export default function characterZoneLoad(socket: Socket, io: Server) {
|
||||
socket.on('character:zone:load:players', async (data: IZoneLoadPlayers) => {
|
||||
console.log(`---User ${socket.id} has requested zone players for zone.` + data.zoneId);
|
||||
|
||||
io.to(socket.id).emit('character:zone:load:players', {
|
||||
success: true,
|
||||
data: ZoneManager.getCharactersInZone(data.zoneId)
|
||||
});
|
||||
});
|
||||
}
|
0
src/app/interfaces/character.ts
Normal file
0
src/app/interfaces/character.ts
Normal file
@ -26,7 +26,7 @@ class UserService {
|
||||
const hashedPassword = await bcrypt.hash(password, 10);
|
||||
const newUser = await UserRepository.create(username, hashedPassword);
|
||||
|
||||
// @TODO: Create a new character for the user
|
||||
// @TODO: Remove this logic from here and move it to the character creation part wherever that'll be
|
||||
const newCharacter = await CharacterRepository.create(newUser.id, newUser.username);
|
||||
|
||||
return newUser
|
||||
|
Reference in New Issue
Block a user