23 lines
681 B
GDScript
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
|