Diffstat (limited to 'dots/dot.gd')
| -rw-r--r-- | dots/dot.gd | 27 |
1 files changed, 12 insertions, 15 deletions
diff --git a/dots/dot.gd b/dots/dot.gd index 5a5066e..40c77be 100644 --- a/dots/dot.gd +++ b/dots/dot.gd @@ -1,33 +1,30 @@ -extends Area2D +extends Node2D class_name dot -onready var dotcollider : CollisionShape2D = $dotcollider -onready var ray : RayCast2D = $dotray +onready var dotcollider : CollisionShape2D = $dot_collisions/dotcollider +onready var dotcollisions : Area2D = $dot_collisions +onready var ray : RayCast2D = $dot_collisions/dotray +onready var dotsprite : Sprite = $dotsprite var tween = Tween.new() export(GlobalVars.type) var dot_type func _ready(): - Events.connect("level_initialized", self, "move") - Events.connect("turn_over", self, "move") add_child(tween) func move(): - var go_to = get_collision_point() - print(go_to) - tween.interpolate_property(self, "global_position", - global_position, go_to, 2, + ray.force_raycast_update() + var go_to = Vector2(global_position.x, ray.get_collision_point().y - 35) + dotcollisions.global_position = go_to + + tween.interpolate_property(dotsprite, "global_position", + dotsprite.global_position, go_to, .25, Tween.TRANS_LINEAR, Tween.EASE_IN_OUT) tween.start() + yield(tween, "tween_all_completed") Events.emit_signal("done_moving") -func get_collision_point() -> Vector2: - ray.enabled = true - ray.force_raycast_update() - ray.enabled = false - return ray.get_collision_point() - func turn_off_collision(): dotcollider.disabled = true |