Almost finalised refactoring

This commit is contained in:
2025-01-03 14:35:08 +01:00
parent 145143cdc5
commit 700bd57e67
29 changed files with 264 additions and 273 deletions

View File

@ -10,7 +10,7 @@
<script lang="ts" setup>
import config from '@/application/config'
import { type Sprite as SpriteT, type MapCharacter } from '@/application/types'
import { type MapCharacter, type Sprite as SpriteT } from '@/application/types'
import CharacterHair from '@/components/game/character/partials/CharacterHair.vue'
import ChatBubble from '@/components/game/character/partials/ChatBubble.vue'
import Healthbar from '@/components/game/character/partials/Healthbar.vue'

View File

@ -3,7 +3,7 @@
</template>
<script lang="ts" setup>
import type { Sprite as SpriteT, MapCharacter } from '@/application/types'
import type { MapCharacter, Sprite as SpriteT } from '@/application/types'
import { loadSpriteTextures } from '@/composables/gameComposable'
import { useGameStore } from '@/stores/gameStore'
import { Image, useScene } from 'phavuer'

View File

@ -3,7 +3,7 @@
</template>
<script lang="ts" setup>
import type { Sprite as SpriteT, MapCharacter } from '@/application/types'
import type { MapCharacter, Sprite as SpriteT } from '@/application/types'
import { loadSpriteTextures } from '@/composables/gameComposable'
import { useGameStore } from '@/stores/gameStore'
import { Image, useScene } from 'phavuer'

View File

@ -23,28 +23,28 @@ const tileMap = ref(null as Phaser.Tilemaps.Tilemap | null)
onUnmounted(() => {
mapStore.reset()
gameStore.connection!.off('map:character:teleport')
gameStore.connection!.off('map:character:join')
gameStore.connection!.off('map:character:leave')
gameStore.connection!.off('map:character:move')
gameStore.connection?.off('map:character:teleport')
gameStore.connection?.off('map:character:join')
gameStore.connection?.off('map:character:leave')
gameStore.connection?.off('map:character:move')
})
// Event listeners
gameStore.connection!.on('map:character:teleport', async (data: mapLoadData) => {
gameStore.connection?.on('map:character:teleport', async (data: mapLoadData) => {
await loadMapTilesIntoScene(data.map.id, scene)
mapStore.setMap(data.map)
mapStore.setCharacters(data.characters)
})
gameStore.connection!.on('map:character:join', async (data: MapCharacter) => {
gameStore.connection?.on('map:character:join', async (data: MapCharacter) => {
mapStore.addCharacter(data)
})
gameStore.connection!.on('map:character:leave', (characterId: number) => {
gameStore.connection?.on('map:character:leave', (characterId: number) => {
mapStore.removeCharacter(characterId)
})
gameStore.connection!.on('map:character:move', (data: { characterId: number; positionX: number; positionY: number; rotation: number; isMoving: boolean }) => {
gameStore.connection?.on('map:character:move', (data: { characterId: number; positionX: number; positionY: number; rotation: number; isMoving: boolean }) => {
mapStore.updateCharacterPosition(data)
})
</script>