Files
pomchronicles/scripts/enemy.gd
2025-11-19 14:42:59 -05:00

30 lines
851 B
GDScript

class_name Enemy extends QuestSprite
static var list : Dictionary[String, PackedScene] = {}
static func load_enemy_list() -> void:
var folder_path = "res://templates/enemies"
var dir = DirAccess.open(folder_path)
if dir:
dir.list_dir_begin()
var filename = dir.get_next()
while filename != "":
if not dir.current_is_dir():
var template : PackedScene = ResourceLoader.load(folder_path.path_join(filename))
if template:
list[template.name] = template
filename = dir.get_next()
dir.list_dir_end()
func attack(target : QuestSprite) -> void:
print("Attack by %s to %s" % [name, target.name])
hitting.connect(hit.bind(target), CONNECT_ONE_SHOT)
anim_player.play("attack")
func set_animation(anim_name : String) -> void:
anim_player.play(anim_name)
func hit(target : QuestSprite) -> void:
target.take_damage(self, 2)