diff --git a/package-lock.json b/package-lock.json
index ea53fa8..0a508eb 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1436,9 +1436,9 @@
}
},
"node_modules/@rollup/rollup-android-arm-eabi": {
- "version": "4.22.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.22.1.tgz",
- "integrity": "sha512-GrXxNVBes13Q3wSBjdZlmu4VulFhfNs1eP2/pX5dmx6cE1XgfV2/BfqdGt4d2Z7Zqp+qnYSf7zvIB4buc+2DwA==",
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.22.2.tgz",
+ "integrity": "sha512-8Ao+EDmTPjZ1ZBABc1ohN7Ylx7UIYcjReZinigedTOnGFhIctyGPxY2II+hJ6gD2/vkDKZTyQ0e7++kwv6wDrw==",
"cpu": [
"arm"
],
@@ -1450,9 +1450,9 @@
]
},
"node_modules/@rollup/rollup-android-arm64": {
- "version": "4.22.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.22.1.tgz",
- "integrity": "sha512-Cr/dpKRc4tjK13SCZJrSDXSaKjL/fekn04BWMCJ+Pj4vPCp8rixvtArrnWUYycOdRNi7kx3MSClcvEP7C2nvCw==",
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.22.2.tgz",
+ "integrity": "sha512-I+B1v0a4iqdS9DvYt1RJZ3W+Oh9EVWjbY6gp79aAYipIbxSLEoQtFQlZEnUuwhDXCqMxJ3hluxKAdPD+GiluFQ==",
"cpu": [
"arm64"
],
@@ -1464,9 +1464,9 @@
]
},
"node_modules/@rollup/rollup-darwin-arm64": {
- "version": "4.22.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.22.1.tgz",
- "integrity": "sha512-IwEyoeCZoO1lpY5Er5t3UK/Aq5q2W/ubLmu3pYW4as0htn4NbJagBaVNr1aVhRTXUxrYvcPhxQCqodShnocLdA==",
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.22.2.tgz",
+ "integrity": "sha512-BTHO7rR+LC67OP7I8N8GvdvnQqzFujJYWo7qCQ8fGdQcb8Gn6EQY+K1P+daQLnDCuWKbZ+gHAQZuKiQkXkqIYg==",
"cpu": [
"arm64"
],
@@ -1478,9 +1478,9 @@
]
},
"node_modules/@rollup/rollup-darwin-x64": {
- "version": "4.22.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.22.1.tgz",
- "integrity": "sha512-LSbJhEOTz557VBcJOWspdGyiFbMTNgLxbWnup7bDj1elpNTK04E3M1qLlvGzPKPmk+uG6XlbT8xAUSKkyn0g8w==",
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.22.2.tgz",
+ "integrity": "sha512-1esGwDNFe2lov4I6GsEeYaAMHwkqk0IbuGH7gXGdBmd/EP9QddJJvTtTF/jv+7R8ZTYPqwcdLpMTxK8ytP6k6Q==",
"cpu": [
"x64"
],
@@ -1492,9 +1492,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm-gnueabihf": {
- "version": "4.22.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.22.1.tgz",
- "integrity": "sha512-F4DgRk//u604Np1eFoGUzE9TgGE6LMvjnX2tM24ePB34JlED9utc4T3iK5x8CWC/agH+zuN7q/hJF5AtWR+JOA==",
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.22.2.tgz",
+ "integrity": "sha512-GBHuY07x96OTEM3OQLNaUSUwrOhdMea/LDmlFHi/HMonrgF6jcFrrFFwJhhe84XtA1oK/Qh4yFS+VMREf6dobg==",
"cpu": [
"arm"
],
@@ -1506,9 +1506,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm-musleabihf": {
- "version": "4.22.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.22.1.tgz",
- "integrity": "sha512-Gl5pbijcb6QOJRvHkmU/O1G65ZnKxwSHhPQRuGdmcxmX/mBM+wNHoai7wvpCoPVsdhkc+KUqgu/MydP8wovGAA==",
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.22.2.tgz",
+ "integrity": "sha512-Dbfa9Sc1G1lWxop0gNguXOfGhaXQWAGhZUcqA0Vs6CnJq8JW/YOw/KvyGtQFmz4yDr0H4v9X248SM7bizYj4yQ==",
"cpu": [
"arm"
],
@@ -1520,9 +1520,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm64-gnu": {
- "version": "4.22.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.22.1.tgz",
- "integrity": "sha512-GsvZqPloVOrh3G2nmZmwNSNGqWLf3L3a0nFDO1zecwucAYxEFgZkrvqQrVMT+zUjChaHPBp0eoTOQMWSKFcV8w==",
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.22.2.tgz",
+ "integrity": "sha512-Z1YpgBvFYhZIyBW5BoopwSg+t7yqEhs5HCei4JbsaXnhz/eZehT18DaXl957aaE9QK7TRGFryCAtStZywcQe1A==",
"cpu": [
"arm64"
],
@@ -1534,9 +1534,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm64-musl": {
- "version": "4.22.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.22.1.tgz",
- "integrity": "sha512-+vZ1jrJeEEYLbMqeKDfgcl8v7zjymdAGTr7xUdQL6c4nC+S+BZHo3Mrp/9ij2qpAveC0Iaz9DIiFplcO0joapQ==",
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.22.2.tgz",
+ "integrity": "sha512-66Zszr7i/JaQ0u/lefcfaAw16wh3oT72vSqubIMQqWzOg85bGCPhoeykG/cC5uvMzH80DQa2L539IqKht6twVA==",
"cpu": [
"arm64"
],
@@ -1548,9 +1548,9 @@
]
},
"node_modules/@rollup/rollup-linux-powerpc64le-gnu": {
- "version": "4.22.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.22.1.tgz",
- "integrity": "sha512-6psD9nKw+wLj9bMhArTkzKt5etA6kb+cBJQws4MovI9gQSRkdX4nyYZofBfgTtaZtymQl7uRfe1I75guePal5A==",
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.22.2.tgz",
+ "integrity": "sha512-HpJCMnlMTfEhwo19bajvdraQMcAq3FX08QDx3OfQgb+414xZhKNf3jNvLFYKbbDSGBBrQh5yNwWZrdK0g0pokg==",
"cpu": [
"ppc64"
],
@@ -1562,9 +1562,9 @@
]
},
"node_modules/@rollup/rollup-linux-riscv64-gnu": {
- "version": "4.22.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.22.1.tgz",
- "integrity": "sha512-xzbqImk1h5abj0bPU5XQVrqBhLHl2zTygG6+vES2TrgmNSiaPzn39aqI8QtdqmGYz507ZVI2qocTTfVwW23SmQ==",
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.22.2.tgz",
+ "integrity": "sha512-/egzQzbOSRef2vYCINKITGrlwkzP7uXRnL+xU2j75kDVp3iPdcF0TIlfwTRF8woBZllhk3QaxNOEj2Ogh3t9hg==",
"cpu": [
"riscv64"
],
@@ -1576,9 +1576,9 @@
]
},
"node_modules/@rollup/rollup-linux-s390x-gnu": {
- "version": "4.22.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.22.1.tgz",
- "integrity": "sha512-Hz5iwqYv08PpEC75z0GAgLlOY+cLAb0PVx578mLW0naugNfG0WQqoDzQoJWiivmtTdgmwoH5YXDnjZJb7MDlhA==",
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.22.2.tgz",
+ "integrity": "sha512-qgYbOEbrPfEkH/OnUJd1/q4s89FvNJQIUldx8X2F/UM5sEbtkqZpf2s0yly2jSCKr1zUUOY1hnTP2J1WOzMAdA==",
"cpu": [
"s390x"
],
@@ -1590,9 +1590,9 @@
]
},
"node_modules/@rollup/rollup-linux-x64-gnu": {
- "version": "4.22.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.22.1.tgz",
- "integrity": "sha512-ot1DPlQZGGiZYNyE/PF3jbT6juuG0W5oiguHQEvjoZZ3+FSxMfdJnBz1P71QeqICSOlSFG9Z31oA/uXyuxDEVw==",
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.22.2.tgz",
+ "integrity": "sha512-a0lkvNhFLhf+w7A95XeBqGQaG0KfS3hPFJnz1uraSdUe/XImkp/Psq0Ca0/UdD5IEAGoENVmnYrzSC9Y2a2uKQ==",
"cpu": [
"x64"
],
@@ -1604,9 +1604,9 @@
]
},
"node_modules/@rollup/rollup-linux-x64-musl": {
- "version": "4.22.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.22.1.tgz",
- "integrity": "sha512-euksHNkKlXS9RKKHSBBPtloSEUGPg1eRVGfOkXSSIj5W9LdkMfOefsTlVf2g8kuayZW/98nIJ83Fnou9OaZNXA==",
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.22.2.tgz",
+ "integrity": "sha512-sSWBVZgzwtsuG9Dxi9kjYOUu/wKW+jrbzj4Cclabqnfkot8Z3VEHcIgyenA3lLn/Fu11uDviWjhctulkhEO60g==",
"cpu": [
"x64"
],
@@ -1618,9 +1618,9 @@
]
},
"node_modules/@rollup/rollup-win32-arm64-msvc": {
- "version": "4.22.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.22.1.tgz",
- "integrity": "sha512-jDS/ShZxlA3HKtgm25CcbApOVsr/0Zkdu/E+3xK4UO0PT912yqyh7jNpTmZZJAiPDQoSDI9FOqrjSbnlpW6IFg==",
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.22.2.tgz",
+ "integrity": "sha512-t/YgCbZ638R/r7IKb9yCM6nAek1RUvyNdfU0SHMDLOf6GFe/VG1wdiUAsxTWHKqjyzkRGg897ZfCpdo1bsCSsA==",
"cpu": [
"arm64"
],
@@ -1632,9 +1632,9 @@
]
},
"node_modules/@rollup/rollup-win32-ia32-msvc": {
- "version": "4.22.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.22.1.tgz",
- "integrity": "sha512-yNEeuvH2b+susSgUCfpRelIRjB1CmErHyqA7KsQ/NCjY401rpChVqw5df/H5AUPCKNDqgBMbtrtl9F6z7N9LTg==",
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.22.2.tgz",
+ "integrity": "sha512-kTmX5uGs3WYOA+gYDgI6ITkZng9SP71FEMoHNkn+cnmb9Zuyyay8pf0oO5twtTwSjNGy1jlaWooTIr+Dw4tIbw==",
"cpu": [
"ia32"
],
@@ -1646,9 +1646,9 @@
]
},
"node_modules/@rollup/rollup-win32-x64-msvc": {
- "version": "4.22.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.22.1.tgz",
- "integrity": "sha512-UgdylcqjcgJSNMhrjMJpJ4T3zriTmiUd2COh1mJHwDShrhhMkpZ/j4M5e4GsvBFviaxtrJtufr0FnKfm2UfOSw==",
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.22.2.tgz",
+ "integrity": "sha512-Yy8So+SoRz8I3NS4Bjh91BICPOSVgdompTIPYTByUqU66AXSIOgmW3Lv1ke3NORPqxdF+RdrZET+8vYai6f4aA==",
"cpu": [
"x64"
],
@@ -6028,9 +6028,9 @@
}
},
"node_modules/rollup": {
- "version": "4.22.1",
- "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.22.1.tgz",
- "integrity": "sha512-rit4zY5uPX0jrzTidez3rFr0MD30Rpu3S8VxwXFDfBVAzkk9U28s5MF3/R6u5bIHN6CQnf7zbiwVQbqBkyrU/A==",
+ "version": "4.22.2",
+ "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.22.2.tgz",
+ "integrity": "sha512-JWWpTrZmqQGQWt16xvNn6KVIUz16VtZwl984TKw0dfqqRpFwtLJYYk1/4BTgplndMQKWUk/yB4uOShYmMzA2Vg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -6044,22 +6044,22 @@
"npm": ">=8.0.0"
},
"optionalDependencies": {
- "@rollup/rollup-android-arm-eabi": "4.22.1",
- "@rollup/rollup-android-arm64": "4.22.1",
- "@rollup/rollup-darwin-arm64": "4.22.1",
- "@rollup/rollup-darwin-x64": "4.22.1",
- "@rollup/rollup-linux-arm-gnueabihf": "4.22.1",
- "@rollup/rollup-linux-arm-musleabihf": "4.22.1",
- "@rollup/rollup-linux-arm64-gnu": "4.22.1",
- "@rollup/rollup-linux-arm64-musl": "4.22.1",
- "@rollup/rollup-linux-powerpc64le-gnu": "4.22.1",
- "@rollup/rollup-linux-riscv64-gnu": "4.22.1",
- "@rollup/rollup-linux-s390x-gnu": "4.22.1",
- "@rollup/rollup-linux-x64-gnu": "4.22.1",
- "@rollup/rollup-linux-x64-musl": "4.22.1",
- "@rollup/rollup-win32-arm64-msvc": "4.22.1",
- "@rollup/rollup-win32-ia32-msvc": "4.22.1",
- "@rollup/rollup-win32-x64-msvc": "4.22.1",
+ "@rollup/rollup-android-arm-eabi": "4.22.2",
+ "@rollup/rollup-android-arm64": "4.22.2",
+ "@rollup/rollup-darwin-arm64": "4.22.2",
+ "@rollup/rollup-darwin-x64": "4.22.2",
+ "@rollup/rollup-linux-arm-gnueabihf": "4.22.2",
+ "@rollup/rollup-linux-arm-musleabihf": "4.22.2",
+ "@rollup/rollup-linux-arm64-gnu": "4.22.2",
+ "@rollup/rollup-linux-arm64-musl": "4.22.2",
+ "@rollup/rollup-linux-powerpc64le-gnu": "4.22.2",
+ "@rollup/rollup-linux-riscv64-gnu": "4.22.2",
+ "@rollup/rollup-linux-s390x-gnu": "4.22.2",
+ "@rollup/rollup-linux-x64-gnu": "4.22.2",
+ "@rollup/rollup-linux-x64-musl": "4.22.2",
+ "@rollup/rollup-win32-arm64-msvc": "4.22.2",
+ "@rollup/rollup-win32-ia32-msvc": "4.22.2",
+ "@rollup/rollup-win32-x64-msvc": "4.22.2",
"fsevents": "~2.3.2"
}
},
@@ -6900,9 +6900,9 @@
"license": "MIT"
},
"node_modules/vite": {
- "version": "5.4.6",
- "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.6.tgz",
- "integrity": "sha512-IeL5f8OO5nylsgzd9tq4qD2QqI0k2CQLGrWD0rCN0EQJZpBK5vJAx0I+GDkMOXxQX/OfFHMuLIx6ddAxGX/k+Q==",
+ "version": "5.4.7",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.7.tgz",
+ "integrity": "sha512-5l2zxqMEPVENgvzTuBpHer2awaetimj2BGkhBPdnwKbPNOlHsODU+oiazEZzLK7KhAnOrO+XGYJYn4ZlUhDtDQ==",
"dev": true,
"license": "MIT",
"dependencies": {
diff --git a/src/components/gameMaster/zoneEditor/ZoneEditor.vue b/src/components/gameMaster/zoneEditor/ZoneEditor.vue
index 7baa5de..83eb019 100644
--- a/src/components/gameMaster/zoneEditor/ZoneEditor.vue
+++ b/src/components/gameMaster/zoneEditor/ZoneEditor.vue
@@ -315,9 +315,7 @@ watch(
)
const setSelectedZoneObject = (zoneObject: ZoneObject | null) => {
- console.log('setSelectedZoneObject', zoneObject)
if (!zoneObject) return
- // Check if tool is move or return
if (zoneEditorStore.tool !== 'move') return
zoneEditorStore.setSelectedZoneObject(zoneObject)
}
diff --git a/src/components/zone/Tiles.vue b/src/components/zone/Tiles.vue
index 697398d..b498449 100644
--- a/src/components/zone/Tiles.vue
+++ b/src/components/zone/Tiles.vue
@@ -11,7 +11,7 @@ import { storeToRefs } from 'pinia'
import { placeTile, setAllTiles } from '@/composables/zoneComposable'
import Controls from '@/components/utilities/Controls.vue'
-const emit = defineEmits(['tilemap:create'])
+const emit = defineEmits(['tilemap:create', 'tilemap:destroy'])
const zoneStore = useZoneStore()
const scene = useScene()
@@ -67,7 +67,8 @@ onBeforeMount(() => {
})
onBeforeUnmount(() => {
- tiles?.destroy()
+ emit('tilemap:destroy')
+ zoneTilemap.destroyLayer('tiles')
zoneTilemap.removeAllLayers()
zoneTilemap.destroy()
})
diff --git a/src/components/zone/Zone.vue b/src/components/zone/Zone.vue
index f8ca30b..29e6486 100644
--- a/src/components/zone/Zone.vue
+++ b/src/components/zone/Zone.vue
@@ -1,5 +1,5 @@
-
+
@@ -38,8 +38,6 @@ gameStore.connection!.emit('zone:character:join', { zoneId: gameStore.character!
// Event listeners
gameStore.connection!.on('zone:teleport', async (data: zoneLoadData) => {
- if (zoneStore.zone?.id === data.zone.id) return
-
// Fetch assets for new zone
await gameStore.fetchZoneAssets(data.zone.id)
await loadAssets(scene)
diff --git a/src/composables/zoneComposable.ts b/src/composables/zoneComposable.ts
index 9ece015..3ee7b74 100644
--- a/src/composables/zoneComposable.ts
+++ b/src/composables/zoneComposable.ts
@@ -63,6 +63,7 @@ export const loadAssets = (scene: Phaser.Scene): Promise => {
const gameStore = useGameStore()
gameStore.assets.forEach((asset) => {
+ if (scene.load.textureManager.exists(asset.key)) return
if (asset.group === 'sprite_animations') {
scene.load.spritesheet(asset.key, config.server_endpoint + asset.url, { frameWidth: asset.frameWidth ?? 0, frameHeight: asset.frameHeight ?? 0 })
} else {
diff --git a/src/screens/Characters.vue b/src/screens/Characters.vue
index c46e34b..8f78b3c 100644
--- a/src/screens/Characters.vue
+++ b/src/screens/Characters.vue
@@ -97,10 +97,9 @@