diff --git a/src/components/gameMaster/assetManager/partials/characterHair/CharacterHairDetails.vue b/src/components/gameMaster/assetManager/partials/characterHair/CharacterHairDetails.vue index 5f959d0..f277d4d 100644 --- a/src/components/gameMaster/assetManager/partials/characterHair/CharacterHairDetails.vue +++ b/src/components/gameMaster/assetManager/partials/characterHair/CharacterHairDetails.vue @@ -64,21 +64,21 @@ if (selectedCharacterHair.value) { characterSpriteId.value = selectedCharacterHair.value.sprite?.id } -function removeCharacterHair() { +async function removeCharacterHair() { if (!selectedCharacterHair.value) return - socketManager.emit(SocketEvent.GM_CHARACTERHAIR_REMOVE, { id: selectedCharacterHair.value.id }, (response: boolean) => { + socketManager.emit(SocketEvent.GM_CHARACTERHAIR_REMOVE, { id: selectedCharacterHair.value.id }, async (response: boolean) => { if (!response) { console.error('Failed to remove character hair') return } - downloadCache('character_hair', new CharacterHairStorage()) - refreshCharacterHairList() + await downloadCache('character_hair', new CharacterHairStorage()) + await refreshCharacterHairList() }) } -function refreshCharacterHairList(unsetSelectedCharacterHair = true) { +async function refreshCharacterHairList(unsetSelectedCharacterHair = true) { socketManager.emit(SocketEvent.GM_CHARACTERHAIR_LIST, {}, (response: CharacterHair[]) => { assetManagerStore.setCharacterHairList(response) @@ -88,7 +88,7 @@ function refreshCharacterHairList(unsetSelectedCharacterHair = true) { }) } -function saveCharacterHair() { +async function saveCharacterHair() { const characterHairData = { id: selectedCharacterHair.value!.id, name: characterName.value, @@ -97,14 +97,14 @@ function saveCharacterHair() { spriteId: characterSpriteId.value } - socketManager.emit(SocketEvent.GM_CHARACTERHAIR_UPDATE, characterHairData, (response: boolean) => { + socketManager.emit(SocketEvent.GM_CHARACTERHAIR_UPDATE, characterHairData, async (response: boolean) => { if (!response) { console.error('Failed to save character type') return } - downloadCache('character_hair', new CharacterHairStorage()) - refreshCharacterHairList(false) + await downloadCache('character_hair', new CharacterHairStorage()) + await refreshCharacterHairList(false) }) } diff --git a/src/components/gameMaster/assetManager/partials/characterType/CharacterTypeDetails.vue b/src/components/gameMaster/assetManager/partials/characterType/CharacterTypeDetails.vue index 1948954..6907e42 100644 --- a/src/components/gameMaster/assetManager/partials/characterType/CharacterTypeDetails.vue +++ b/src/components/gameMaster/assetManager/partials/characterType/CharacterTypeDetails.vue @@ -73,21 +73,21 @@ if (selectedCharacterType.value) { characterSpriteId.value = selectedCharacterType.value.sprite?.id } -function removeCharacterType() { +async function removeCharacterType() { if (!selectedCharacterType.value) return - socketManager.emit(SocketEvent.GM_CHARACTERTYPE_REMOVE, { id: selectedCharacterType.value.id }, (response: boolean) => { + socketManager.emit(SocketEvent.GM_CHARACTERTYPE_REMOVE, { id: selectedCharacterType.value.id }, async (response: boolean) => { if (!response) { console.error('Failed to remove character type') return } - downloadCache('character_types', new CharacterTypeStorage()) - refreshCharacterTypeList() + await downloadCache('character_types', new CharacterTypeStorage()) + await refreshCharacterTypeList() }) } -function refreshCharacterTypeList(unsetSelectedCharacterType = true) { +async function refreshCharacterTypeList(unsetSelectedCharacterType = true) { socketManager.emit(SocketEvent.GM_CHARACTERTYPE_LIST, {}, (response: CharacterType[]) => { assetManagerStore.setCharacterTypeList(response) @@ -97,7 +97,7 @@ function refreshCharacterTypeList(unsetSelectedCharacterType = true) { }) } -function saveCharacterType() { +async function saveCharacterType() { const characterTypeData = { id: selectedCharacterType.value!.id, name: characterName.value, @@ -107,14 +107,14 @@ function saveCharacterType() { spriteId: characterSpriteId.value } - socketManager.emit(SocketEvent.GM_CHARACTERTYPE_UPDATE, characterTypeData, (response: boolean) => { + socketManager.emit(SocketEvent.GM_CHARACTERTYPE_UPDATE, characterTypeData, async (response: boolean) => { if (!response) { console.error('Failed to save character type') return } - downloadCache('character_types', new CharacterTypeStorage()) - refreshCharacterTypeList(false) + await downloadCache('character_types', new CharacterTypeStorage()) + await refreshCharacterTypeList(false) }) } diff --git a/src/components/gameMaster/assetManager/partials/mapObject/MapObjectDetails.vue b/src/components/gameMaster/assetManager/partials/mapObject/MapObjectDetails.vue index 4dab46d..795f77b 100644 --- a/src/components/gameMaster/assetManager/partials/mapObject/MapObjectDetails.vue +++ b/src/components/gameMaster/assetManager/partials/mapObject/MapObjectDetails.vue @@ -62,7 +62,7 @@ import type { MapObject } from '@/application/types' import { downloadCache } from '@/application/utilities' import ChipsInput from '@/components/forms/ChipsInput.vue' import { socketManager } from '@/managers/SocketManager' -import { CharacterTypeStorage, MapObjectStorage } from '@/storage/storages' +import { MapObjectStorage } from '@/storage/storages' import { useAssetManagerStore } from '@/stores/assetManagerStore' import { computed, onBeforeUnmount, onMounted, ref, watch } from 'vue' @@ -81,7 +81,6 @@ const mapObjectFrameHeight = ref(0) const imageRef = ref(null) const isDragging = ref(false) const draggedPointIndex = ref(-1) -const mapObjectStorage = new MapObjectStorage() if (!selectedMapObject.value) { console.error('No map mapObject selected') @@ -98,21 +97,20 @@ if (selectedMapObject.value) { mapObjectFrameHeight.value = selectedMapObject.value.frameHeight } -function removeObject() { +async function removeObject() { if (!selectedMapObject.value) return - - socketManager.emit(SocketEvent.GM_MAPOBJECT_REMOVE, { mapObject: selectedMapObject.value.id }, (response: boolean) => { + socketManager.emit(SocketEvent.GM_MAPOBJECT_REMOVE, { mapObjectId: selectedMapObject.value.id }, async (response: boolean) => { if (!response) { console.error('Failed to remove mapObject') return } - downloadCache('map_object', new MapObjectStorage()) - refreshObjectList() + await downloadCache('map_objects', new MapObjectStorage()) + await refreshObjectList() }) } -function refreshObjectList(unsetSelectedMapObject = true) { +async function refreshObjectList(unsetSelectedMapObject = true) { socketManager.emit(SocketEvent.GM_MAPOBJECT_LIST, {}, (response: MapObject[]) => { assetManagerStore.setMapObjectList(response) @@ -122,7 +120,7 @@ function refreshObjectList(unsetSelectedMapObject = true) { }) } -function saveObject() { +async function saveObject() { if (!selectedMapObject.value) { console.error('No mapObject selected') return @@ -141,14 +139,14 @@ function saveObject() { frameWidth: mapObjectFrameWidth.value, frameHeight: mapObjectFrameHeight.value }, - (response: boolean) => { + async (response: boolean) => { if (!response) { console.error('Failed to save mapObject') return } - downloadCache('map_object', new MapObjectStorage()) - refreshObjectList(false) + await downloadCache('map_objects', new MapObjectStorage()) + await refreshObjectList(false) } ) } diff --git a/src/components/gameMaster/assetManager/partials/sprite/SpriteDetails.vue b/src/components/gameMaster/assetManager/partials/sprite/SpriteDetails.vue index 386a9ee..9351fa6 100644 --- a/src/components/gameMaster/assetManager/partials/sprite/SpriteDetails.vue +++ b/src/components/gameMaster/assetManager/partials/sprite/SpriteDetails.vue @@ -97,31 +97,31 @@ if (selectedSprite.value) { spriteActions.value = sortSpriteActions(selectedSprite.value.spriteActions) } -function deleteSprite() { - socketManager.emit(SocketEvent.GM_SPRITE_DELETE, { id: selectedSprite.value?.id }, (response: boolean) => { +async function deleteSprite() { + socketManager.emit(SocketEvent.GM_SPRITE_DELETE, { id: selectedSprite.value?.id }, async (response: boolean) => { if (!response) { console.error('Failed to delete sprite') return } - downloadCache('sprite', new SpriteStorage()) - refreshSpriteList() + await downloadCache('sprite', new SpriteStorage()) + await refreshSpriteList() }) } -function copySprite() { - socketManager.emit(SocketEvent.GM_SPRITE_COPY, { id: selectedSprite.value?.id }, (response: boolean) => { +async function copySprite() { + socketManager.emit(SocketEvent.GM_SPRITE_COPY, { id: selectedSprite.value?.id }, async (response: boolean) => { if (!response) { console.error('Failed to copy sprite') return } - downloadCache('sprite', new SpriteStorage()) - refreshSpriteList(false) + await downloadCache('sprite', new SpriteStorage()) + await refreshSpriteList(false) }) } -function refreshSpriteList(unsetSelectedSprite = true) { +async function refreshSpriteList(unsetSelectedSprite = true) { socketManager.emit(SocketEvent.GM_SPRITE_LIST, {}, (response: Sprite[]) => { assetManagerStore.setSpriteList(response) @@ -131,7 +131,7 @@ function refreshSpriteList(unsetSelectedSprite = true) { }) } -function saveSprite() { +async function saveSprite() { if (!selectedSprite.value) { console.error('No sprite selected') return @@ -154,14 +154,14 @@ function saveSprite() { }) ?? [] } - socketManager.emit(SocketEvent.GM_SPRITE_UPDATE, updatedSprite, (response: boolean) => { + socketManager.emit(SocketEvent.GM_SPRITE_UPDATE, updatedSprite, async (response: boolean) => { if (!response) { console.error('Failed to save sprite') return } - downloadCache('sprite', new SpriteStorage()) - refreshSpriteList(false) + await downloadCache('sprite', new SpriteStorage()) + await refreshSpriteList(false) }) } diff --git a/src/components/gameMaster/assetManager/partials/tile/TileDetails.vue b/src/components/gameMaster/assetManager/partials/tile/TileDetails.vue index 585313d..6918d77 100644 --- a/src/components/gameMaster/assetManager/partials/tile/TileDetails.vue +++ b/src/components/gameMaster/assetManager/partials/tile/TileDetails.vue @@ -62,12 +62,12 @@ async function deleteTile() { return } - downloadCache('tile', new TileStorage()) - refreshTileList() + await downloadCache('tiles', new TileStorage()) + await refreshTileList() }) } -function refreshTileList(unsetSelectedTile = true) { +async function refreshTileList(unsetSelectedTile = true) { socketManager.emit(SocketEvent.GM_TILE_LIST, {}, (response: Tile[]) => { assetManagerStore.setTileList(response) @@ -77,7 +77,7 @@ function refreshTileList(unsetSelectedTile = true) { }) } -function saveTile() { +async function saveTile() { if (!selectedTile.value) { console.error('No tile selected') return @@ -90,14 +90,14 @@ function saveTile() { name: tileName.value, tags: tileTags.value }, - (response: boolean) => { + async (response: boolean) => { if (!response) { console.error('Failed to save tile') return } - downloadCache('tile', new TileStorage()) - refreshTileList(false) + await downloadCache('tiles', new TileStorage()) + await refreshTileList(false) } ) } diff --git a/src/components/screens/MapEditor.vue b/src/components/screens/MapEditor.vue index 7a4d36f..0b5e0f8 100644 --- a/src/components/screens/MapEditor.vue +++ b/src/components/screens/MapEditor.vue @@ -23,6 +23,7 @@ import { SocketEvent } from '@/application/enums' import { socketManager } from '@/managers/SocketManager' import 'phaser' import type { Map as MapT } from '@/application/types' +import { downloadCache } from '@/application/utilities' import Map from '@/components/gameMaster/mapEditor/Map.vue' import MapList from '@/components/gameMaster/mapEditor/partials/MapList.vue' import MapObjectList from '@/components/gameMaster/mapEditor/partials/MapObjectList.vue' @@ -32,10 +33,9 @@ import TileList from '@/components/gameMaster/mapEditor/partials/TileList.vue' import Toolbar from '@/components/gameMaster/mapEditor/partials/Toolbar.vue' import { useMapEditorComposable } from '@/composables/useMapEditorComposable' import { loadAllTileTextures } from '@/services/mapService' -import {CharacterHairStorage, MapStorage} from '@/storage/storages' +import { CharacterHairStorage, MapStorage } from '@/storage/storages' import { Game, Scene } from 'phavuer' import { ref, toRaw, useTemplateRef } from 'vue' -import {downloadCache} from "@/application/utilities"; const mapStorage = new MapStorage() const mapEditor = useMapEditorComposable()