npm update, removed player store and merged it with socket store, worked on character creation & selection (partially works)
This commit is contained in:
@ -1,14 +0,0 @@
|
||||
import { defineStore } from 'pinia';
|
||||
import Player from '@/engine/Player/Player'
|
||||
|
||||
export const usePlayerStore = defineStore('player', {
|
||||
state: () => ({
|
||||
player: null as Player | null,
|
||||
}),
|
||||
|
||||
actions: {
|
||||
setPlayer(player: Player) {
|
||||
this.player = player;
|
||||
},
|
||||
}
|
||||
});
|
@ -2,15 +2,18 @@ import { defineStore, type StoreDefinition } from 'pinia'
|
||||
import { io, Socket } from 'socket.io-client';
|
||||
import {useCookies} from '@vueuse/integrations/useCookies'
|
||||
import config from '@/config';
|
||||
import type { Character, User } from '../../env'
|
||||
|
||||
export const useSocketStore: StoreDefinition<any> = defineStore('socket', {
|
||||
state: () => ({
|
||||
connection: null as Socket | null,
|
||||
character: null as any,
|
||||
user: null as User | null,
|
||||
character: null as Character | null,
|
||||
}),
|
||||
getters: {
|
||||
getConnection: (state: any) => state.connection as Socket,
|
||||
getCharacter: (state: any) => state.character,
|
||||
getUser: (state: any) => state.user as User,
|
||||
getCharacter: (state: any) => state.character as Character,
|
||||
},
|
||||
actions: {
|
||||
setupSocketConnection() {
|
||||
@ -23,6 +26,11 @@ export const useSocketStore: StoreDefinition<any> = defineStore('socket', {
|
||||
// Let the server know the user is logged in
|
||||
this.connection.emit('login');
|
||||
|
||||
// set user
|
||||
this.connection.on('login', (user: User) => {
|
||||
this.setUser(user);
|
||||
});
|
||||
|
||||
// When we can't reconnect, disconnect
|
||||
this.connection.on('reconnect_failed', () => {
|
||||
console.log("Reconnect failed")
|
||||
@ -40,10 +48,18 @@ export const useSocketStore: StoreDefinition<any> = defineStore('socket', {
|
||||
|
||||
this.connection.disconnect();
|
||||
this.connection = null;
|
||||
|
||||
this.user = null;
|
||||
this.character = null;
|
||||
|
||||
useCookies().remove('token');
|
||||
},
|
||||
setUser(user: User|null) {
|
||||
this.user = user;
|
||||
},
|
||||
setCharacter(character: Character|null) {
|
||||
this.character = character;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
Reference in New Issue
Block a user