extends Area2D
class_name ProjectileBaseTwo

var lifetime_timer: Timer

var direction: Vector2
var target_position: Vector2
var ELEMENTS = Global.ELEMENTS

var has_collided: bool = false

var stats = {
	"speed": 500.0,
	"damage": 10.0,
	"element": ELEMENTS.NONE,
	"lifetime": 2,
	"pierce_count": 0
}

func set_stat(stat_name: String, value: Variant):
		stats[stat_name] = value

func get_stat(stat_name: String) -> Variant:
	return stats.get(stat_name, null)

func destroy():
	emit_signal("on_destroyed", self)
	queue_free()

func _on_lifetime_timeout():
	destroy()