Files
2025-04-18 20:46:02 -03:00

23 lines
681 B
GDScript

extends Map2d
class_name WorldMap
func playerCanMoveTo(newPosition:Vector2) -> bool:
var cast_cell_1
var cast_cell_2
player.updateRaycasts(newPosition)
cast_cell_1 = local_to_map(newPosition + player.collisionRay_1.position)
cast_cell_2 = local_to_map(newPosition + player.collisionRay_2.position)
if (getTerrainDataForTile(0, TerrainDataTypes.TerrainType, cast_cell_1.x, cast_cell_1.y) != "Water" and
getTerrainDataForTile(0, TerrainDataTypes.TerrainType, cast_cell_2.x, cast_cell_2.y) != "Water"):
if (player.wouldCollideAt(newPosition)):
return false
return true
else:
CommandDispatcher.DISPLAY_MESSAGE.emit("Your path is blocked.")
return false