20 lines
457 B
GDScript
20 lines
457 B
GDScript
extends Area2D
|
|
|
|
func _physics_process(delta: float) -> void:
|
|
var monsters_in_range = get_overlapping_bodies()
|
|
|
|
if monsters_in_range.size() > 0:
|
|
var target = monsters_in_range.front()
|
|
look_at(target.global_position)
|
|
|
|
func shoot():
|
|
const BULLET = preload("res://bullet.tscn")
|
|
var new_bullet = BULLET.instantiate()
|
|
|
|
new_bullet.global_transform = %Barrel.global_transform
|
|
%Barrel.add_child(new_bullet)
|
|
|
|
|
|
func _on_timer_timeout() -> void:
|
|
shoot()
|