From 90d72527842f25dfc47a97460942f62f522df605 Mon Sep 17 00:00:00 2001 From: Andrei Date: Sun, 2 Feb 2025 14:39:21 -0600 Subject: [PATCH] Map object depth calculation adjustment --- src/components/game/map/partials/PlacedMapObject.vue | 2 +- src/composables/mapComposable.ts | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/components/game/map/partials/PlacedMapObject.vue b/src/components/game/map/partials/PlacedMapObject.vue index 48d21f4..ee2d1bd 100644 --- a/src/components/game/map/partials/PlacedMapObject.vue +++ b/src/components/game/map/partials/PlacedMapObject.vue @@ -24,7 +24,7 @@ const imageProps = computed(() => ({ alpha: mapEditor.movingPlacedObject.value?.id == props.placedMapObject.id ? 0.5 : 1, tint: mapEditor.selectedPlacedObject.value?.id == props.placedMapObject.id ? 0x00ff00 : 0xffffff, depth: calculateIsometricDepth(props.placedMapObject.positionX, props.placedMapObject.positionY, props.placedMapObject.mapObject.frameWidth, props.placedMapObject.mapObject.frameHeight), - ...calculateObjectPlacement(props.placedMapObject,false), + ...calculateObjectPlacement(props.placedMapObject), flipX: props.placedMapObject.isRotated, texture: props.placedMapObject.mapObject.id, originX: props.placedMapObject.mapObject.originX, diff --git a/src/composables/mapComposable.ts b/src/composables/mapComposable.ts index b16f57c..f42dbe0 100644 --- a/src/composables/mapComposable.ts +++ b/src/composables/mapComposable.ts @@ -68,11 +68,11 @@ export function createTileArray(width: number, height: number, tile: string = 'b } export const calculateIsometricDepth = (positionX: number, positionY: number, width: number = 0, height: number = 0, isCharacter: boolean = false) => { - const baseDepth = positionX + positionY + const baseDepth = Math.max(positionX, positionY) if (isCharacter) { return baseDepth // @TODO: Fix collision, this is a hack } - return baseDepth + (width + height) / (2 * config.tile_size.width) + return (baseDepth + height) / (config.tile_size.width * 2) } async function getTiles(tiles: TileT[], scene: Phaser.Scene) {