From e468cf085e0b23b3c5b359a672fccc6b8b7d4fc2 Mon Sep 17 00:00:00 2001 From: nokoe Date: Sat, 22 Jun 2024 21:43:35 +0200 Subject: marker --- client/scripts/controllable_player.gd | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'client/scripts/controllable_player.gd') diff --git a/client/scripts/controllable_player.gd b/client/scripts/controllable_player.gd index 59f4c3de..d0852846 100644 --- a/client/scripts/controllable_player.gd +++ b/client/scripts/controllable_player.gd @@ -21,6 +21,9 @@ func _process(delta): var input = Vector2(Input.get_axis("left", "right"), Input.get_axis("forward", "backwards")).normalized() input = input.rotated(-game.camera.angle_target) update(delta, input) + position_anim = position_ + rotation_anim = rotation_ + mark_interact_target() super(delta) func update(dt: float, input: Vector2): @@ -64,3 +67,16 @@ func aabb_point_distance(min: Vector2, max: Vector2, p: Vector2) -> float: func update_position(_new_position: Vector2, _new_rotation: float): pass + +func mark_interact_target(): + var target = Vector2i( + int(floor(position.x + sin(rotation.y))), + int(floor(position.z + cos(rotation.y))) + ) + var tile_idx = str(target) + if game.map.tile_by_pos.has(tile_idx): + var t: Floor = game.map.tile_by_pos[tile_idx] + game.marker.visible = true + game.marker_target = t.item_base.global_position + else: + game.marker.visible = false -- cgit v1.2.3-70-g09d2