extends TileMapLayer var moving_up :bool = true var speed :float = 50.0 var distance_moved :float = 0.0 var moving = false var movement = speed var moving_down :bool = false # Called every frame. 'delta' is the elapsed time since the previous frame. func _process(delta: float) -> void: if moving: var delta_movement = movement * delta if moving_up: position.y -= delta_movement distance_moved += delta_movement if distance_moved >= 479.7: moving_up = false else: position.y += delta_movement distance_moved -= delta_movement if distance_moved <= 0: moving_up = true func _on_platform_body_entered(body: Node2D) -> void: if body.name == "player": moving = true