31 lines
625 B
GDScript
31 lines
625 B
GDScript
extends Area2D
|
|
|
|
const Explosion = preload("res://Scenes/ExplosionEffect.tscn")
|
|
|
|
export (int) var speed = 50
|
|
export (int) var armor = 3
|
|
|
|
func _process(delta):
|
|
position.x -= speed * delta
|
|
|
|
func _on_Enemy_body_entered(body):
|
|
body.create_hit_effect()
|
|
body.queue_free()
|
|
armor -= 1
|
|
|
|
if armor <= 0:
|
|
var root = get_tree().current_scene
|
|
if root.is_in_group("World"):
|
|
root.score += 10
|
|
explode()
|
|
queue_free()
|
|
|
|
func _on_VisibilityNotifier2D_screen_exited():
|
|
queue_free()
|
|
|
|
|
|
func explode():
|
|
var explosion = Explosion.instance()
|
|
explosion.global_position = global_position
|
|
get_tree().current_scene.add_child(explosion)
|