diff --git a/src/components/utilities/assetManager/partials/ObjectDetails.vue b/src/components/utilities/assetManager/partials/ObjectDetails.vue index 6b3469c..4bfa368 100644 --- a/src/components/utilities/assetManager/partials/ObjectDetails.vue +++ b/src/components/utilities/assetManager/partials/ObjectDetails.vue @@ -71,10 +71,13 @@ function removeObject() { }) } -function refreshObjectList() { +function refreshObjectList(unsetSelectedObject = true) { gameStore.connection?.emit('gm:object:list', {}, (response: Object[]) => { assetManagerStore.setObjectList(response) - assetManagerStore.setSelectedObject(null) + + if (unsetSelectedObject) { + assetManagerStore.setSelectedObject(null) + } if (zoneEditorStore.active) { console.log('Refreshing object list for zone store') @@ -104,7 +107,7 @@ function saveObject() { console.error('Failed to save object') return } - refreshObjectList() + refreshObjectList(false) } ) } diff --git a/src/components/utilities/assetManager/partials/TileDetails.vue b/src/components/utilities/assetManager/partials/TileDetails.vue index 7e4d244..3921cce 100644 --- a/src/components/utilities/assetManager/partials/TileDetails.vue +++ b/src/components/utilities/assetManager/partials/TileDetails.vue @@ -56,7 +56,7 @@ watch(selectedTile, (tile: Tile | null) => { }) function removeTile() { - gameStore.connection.emit('gm:tile:remove', { tile: selectedTile.value?.id }, (response: boolean) => { + gameStore.connection?.emit('gm:tile:remove', { tile: selectedTile.value?.id }, (response: boolean) => { if (!response) { console.error('Failed to remove tile') return @@ -65,10 +65,13 @@ function removeTile() { }) } -function refreshTileList() { - gameStore.connection.emit('gm:tile:list', {}, (response: Tile[]) => { +function refreshTileList(unsetSelectedTile = true) { + gameStore.connection?.emit('gm:tile:list', {}, (response: Tile[]) => { assetManagerStore.setTileList(response) - assetManagerStore.setSelectedTile(null) + + if (unsetSelectedTile) { + assetManagerStore.setSelectedTile(null) + } if (zoneEditorStore.active) { console.log('Refreshing tile list for zone store') @@ -83,7 +86,7 @@ function saveTile() { return } - gameStore.connection.emit( + gameStore.connection?.emit( 'gm:tile:update', { id: selectedTile.value.id, @@ -95,7 +98,7 @@ function saveTile() { console.error('Failed to save tile') return } - refreshTileList() + refreshTileList(false) } ) }