Wizard Tower and special effects

This commit is contained in:
2025-04-15 20:32:00 +02:00
parent c4c01800dd
commit 08479e83c1
16 changed files with 302 additions and 20 deletions

View File

@ -8,7 +8,7 @@ var follower = false
var target = null
const ARROW = preload("res://Game/Bullets/arrow.tscn")
const MAGIC = preload("res://Game/Bullets/magic.tscn")
func _ready() -> void:
follower = true
@ -26,10 +26,13 @@ func _process(delta: float) -> void:
func set_properties() -> void:
if self.name.contains("ArcherTower"):
get_node("Timer").wait_time = 0.8
bulletSpeed = 400
hitpoint = 50
get_node("Timer").wait_time = 0.5
bulletSpeed = 600
hitpoint = 25
if self.name.contains("WizardTower"):
get_node("Timer").wait_time = 2.0
bulletSpeed = 450
hitpoint = 10
func get_if_moving_state():
return follower
@ -43,9 +46,14 @@ func choose_target(body : Node2D) -> void:
if not follower:
var surroinding_enemies = get_node("CharacterBody2D/Area2D").get_overlapping_bodies()
target = surroinding_enemies[0]
for i in surroinding_enemies:
if i.get_parent().get_progress() > target.get_parent().get_progress():
target = i
if self.name.contains("ArcherTower") or self.name.contains("BombTower"):
for i in surroinding_enemies:
if i.get_parent().get_progress() > target.get_parent().get_progress():
target = i
if self.name.contains("WizardTower"):
for i in surroinding_enemies:
if i.get_parent().get_progress() < target.get_parent().get_progress():
target = i
pass
func shoot() -> void:
@ -57,4 +65,12 @@ func shoot() -> void:
arrow.set_targe(target)
arrow.set_hitpoint(hitpoint)
get_parent().add_child(arrow)
if self.name.contains("WizardTower"):
var magic = MAGIC.instantiate()
magic.position = self.position
magic.set_speed(bulletSpeed)
magic.set_targe(target)
magic.set_hitpoint(hitpoint)
get_parent().add_child(magic)
pass