Add scenes, static scene-finding mechanism, and scene pool for visual hold/tap notes.

This commit is contained in:
2026-01-30 00:35:01 +08:00
parent 81c8374058
commit dfac4bbfa5
15 changed files with 195 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
## Static class that stores references to note scenes.
class_name NoteScenes extends Object
static func get_tap(skin: StringName = "default") -> PackedScene:
if _tap_scenes.has(skin):
return _tap_scenes[skin]
else:
push_warning("Tap note skin [", skin, "] does not exist.")
return _tap_scenes["default"]
static func get_hold(skin: StringName = "default") -> PackedScene:
if _hold_scenes.has(skin):
return _hold_scenes[skin]
else:
push_warning("Hold note skin [", skin, "] does not exist.")
return _hold_scenes["default"]
# ======== IMPLEMENTATION ======== #
static var _tap_scenes: Dictionary[StringName, PackedScene] = {
"default": load("uid://dq5ocf0272tet")
}
static var _hold_scenes: Dictionary[StringName, PackedScene] = {
"default": load("uid://jbgxbhfpj806")
}