diff options
author | bd <bdunahu@operationnull.com> | 2025-05-25 17:16:33 -0400 |
---|---|---|
committer | bd <bdunahu@operationnull.com> | 2025-05-25 17:16:33 -0400 |
commit | ab9d1c167e1fa62d576b209edc20c0e87f4e977e (patch) | |
tree | af6624c042da0d68bc5596d82bd33cc5486fa6c7 /scripts/wyvern.gd | |
parent | 39794265b361c2f259a58d677f9e2e10b64d00af (diff) |
Lots of Wyvern balance/effect changes, skittles upgrade
Diffstat (limited to 'scripts/wyvern.gd')
-rw-r--r-- | scripts/wyvern.gd | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/scripts/wyvern.gd b/scripts/wyvern.gd index a2822fe..c60aa02 100644 --- a/scripts/wyvern.gd +++ b/scripts/wyvern.gd @@ -10,7 +10,7 @@ func _ready(): reset_tower_range() reset_tower_sprite() -func _process(_delta): +func _process(delta): select_target() if firing: if target == null: @@ -18,21 +18,26 @@ func _process(_delta): firing = false else: $WyvernProjectile.target = target - $WyvernProjectile.move_projectile() + $WyvernProjectile.move_projectile(delta) func _on_tower_body_entered(_body: Node2D) -> void: var old_target : CharacterBody2D = target select_target() if old_target == null && old_target != target: - $FireTimer.start(tower_data["fire_rate"]) + $FireTimer.start(tower_data["fire_delay"]) func _on_fire_timer_timeout(): if (target != null): - var tmp_projectile = projectile.instantiate() - tmp_projectile.target = target - tmp_projectile.projectile_damage = tower_data["damage"] - tmp_projectile.damage_tick_rate = tower_data["damage_tick_rate"] - add_child(tmp_projectile) - tmp_projectile.global_position = $Aim.global_position + var stream : CharacterBody2D = _get_projectile() + add_child(stream) + stream.target = target + stream.global_position = $Aim.global_position firing = true $FireTimer.stop() + +func _get_projectile() -> CharacterBody2D: + var stream = projectile.instantiate() + stream.projectile_damage = tower_data["damage"] + stream.chaos_factor = tower_data["chaos_factor"] + stream.damage_tick_rate = tower_data["damage_tick_rate"] + return stream |