forked from noxious/client
e.e
This commit is contained in:
parent
a0b05d0a5e
commit
5125695b4f
@ -11,11 +11,10 @@ import { storeToRefs } from 'pinia'
|
||||
import { placeTile, setAllTiles } from '@/composables/zoneComposable'
|
||||
import Controls from '@/components/utilities/Controls.vue'
|
||||
|
||||
const emit = defineEmits(['tilemap:create', 'tilemap:destroy'])
|
||||
const emit = defineEmits(['tilemap:create'])
|
||||
|
||||
const zoneStore = useZoneStore()
|
||||
const scene = useScene()
|
||||
const camera = ref(scene.cameras.main)
|
||||
|
||||
const { zone } = storeToRefs(zoneStore)
|
||||
const zoneTilemap = createTilemap()
|
||||
@ -67,7 +66,6 @@ onBeforeMount(() => {
|
||||
})
|
||||
|
||||
onBeforeUnmount(() => {
|
||||
emit('tilemap:destroy')
|
||||
zoneTilemap.destroyLayer('tiles')
|
||||
zoneTilemap.removeAllLayers()
|
||||
zoneTilemap.destroy()
|
||||
|
@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<Tiles :key="zoneStore.zone?.id ?? 0" @tilemap:create="tileMap = $event" @tilemap:destroy="tileMap = null" />
|
||||
<Tiles :key="zoneStore.zone?.id ?? 0" @tilemap:create="tileMap = $event" />
|
||||
<Objects v-if="tileMap" :tilemap="tileMap as Phaser.Tilemaps.Tilemap" />
|
||||
<Characters v-if="tileMap" :tilemap="tileMap as Phaser.Tilemaps.Tilemap" />
|
||||
</template>
|
||||
@ -37,7 +37,10 @@ gameStore.connection!.emit('zone:character:join', { zoneId: gameStore.character!
|
||||
})
|
||||
|
||||
// Event listeners
|
||||
gameStore.connection!.on('zone:teleport', async (data: zoneLoadData) => {
|
||||
gameStore.connection!.on('zone:character:teleport', async (data: zoneLoadData) => {
|
||||
/**
|
||||
* This is the cause of the bug
|
||||
*/
|
||||
// Fetch assets for new zone
|
||||
await gameStore.fetchZoneAssets(data.zone.id)
|
||||
await loadAssets(scene)
|
||||
@ -68,7 +71,7 @@ gameStore.connection!.on('character:move', (data: ExtendedCharacterT) => {
|
||||
|
||||
onBeforeUnmount(() => {
|
||||
zoneStore.reset()
|
||||
gameStore.connection!.off('zone:teleport')
|
||||
gameStore.connection!.off('zone:character:teleport')
|
||||
gameStore.connection!.off('zone:character:join')
|
||||
gameStore.connection!.off('zone:character:leave')
|
||||
gameStore.connection!.off('character:move')
|
||||
|
Loading…
x
Reference in New Issue
Block a user