TowerDefense/Towers/Scripts/TowerListResource.gd

17 lines
514 B
GDScript

@tool
extends EnhancedResource
class_name TowerListResource
const TOWER_DIR : String = "res://Towers/"
const TOWER_DIR_PATTERN : String = "res://Towers/\\w+/$"
const TOWER_NAME_PATTERN : String = "([^/]*)\\.tscn$"
static var towers : Dictionary
static func _static_init() -> void:
var towerResources : Array[String] = getFileFromDir(TOWER_DIR, TOWER_NAME_PATTERN, TOWER_DIR_PATTERN)
for towerRes in towerResources:
towers.set(getPackedSceneProperty(load(towerRes), "tower_type"), towerRes)
towers.sort()