2025-09-21 13:56:50 +08:00
|
|
|
@tool
|
|
|
|
|
extends Node
|
2025-09-21 12:53:15 +08:00
|
|
|
class_name ComponentManager
|
|
|
|
|
|
2025-09-21 13:05:20 +08:00
|
|
|
static var bullets = {}
|
|
|
|
|
static var characters = {}
|
|
|
|
|
static var effects = {}
|
2025-09-21 13:34:51 +08:00
|
|
|
static var feeds = []
|
|
|
|
|
static var uiComponents = {}
|
|
|
|
|
static var themes = {}
|
|
|
|
|
static var itemTextures = {}
|
2025-09-21 13:05:20 +08:00
|
|
|
|
2025-09-21 13:56:50 +08:00
|
|
|
func _ready():
|
|
|
|
|
init()
|
|
|
|
|
|
2025-09-21 13:05:20 +08:00
|
|
|
static func init():
|
|
|
|
|
for i in DirTool.listdir("res://components/Bullets"):
|
|
|
|
|
bullets[DirTool.getBasenameWithoutExtension(i)] = load(i)
|
|
|
|
|
for i in DirTool.listdir("res://components/Characters"):
|
|
|
|
|
characters[DirTool.getBasenameWithoutExtension(i)] = load(i)
|
|
|
|
|
for i in DirTool.listdir("res://components/Effects"):
|
|
|
|
|
effects[DirTool.getBasenameWithoutExtension(i)] = load(i)
|
2025-09-21 13:34:51 +08:00
|
|
|
for i in DirTool.listdir("res://components/Feeds"):
|
|
|
|
|
feeds.append(load(i))
|
|
|
|
|
for i in DirTool.listdir("res://components/UI"):
|
|
|
|
|
uiComponents[DirTool.getBasenameWithoutExtension(i)] = load(i)
|
|
|
|
|
for i in DirTool.listdir("res://themes"):
|
|
|
|
|
themes[DirTool.getBasenameWithoutExtension(i)] = load(i)
|
|
|
|
|
for i in DirTool.listdir("res://resources/items"):
|
2025-09-21 13:56:50 +08:00
|
|
|
itemTextures[DirTool.getBasenameWithoutExtension(i)] = load(i)
|
|
|
|
|
static func getBullet(t: String):
|
|
|
|
|
return bullets[t]
|
|
|
|
|
static func getCharacter(t: String):
|
|
|
|
|
return characters[t]
|
|
|
|
|
static func getEffect(t: String):
|
|
|
|
|
return effects[t]
|
|
|
|
|
static func getFeed(i: int):
|
|
|
|
|
return feeds[i]
|
|
|
|
|
static func getUIComponent(t: String):
|
|
|
|
|
return uiComponents[t]
|
|
|
|
|
static func getTheme(t: String):
|
|
|
|
|
return themes[t]
|
|
|
|
|
static func getItemTexture(t: String):
|
|
|
|
|
return itemTextures[t]
|