extends Node enum Level{ title, s01 } enum SEs{ ok, cancel, invalid, select } var music = { "title":(load("res://Assets/th08bgm/永夜抄 ~ Eastern Night.wav") as AudioStreamWAV) } var SE = { "ok": (load("res://Assets/th0809/se_ok00.wav") as AudioStreamWAV ), "cancel": (load("res://Assets/th0809/se_cancel00.wav") as AudioStreamWAV ), "invalid": (load("res://Assets/th0809/se_invalid.wav") as AudioStreamWAV ), "select": (load("res://Assets/th0809/se_select00.wav") as AudioStreamWAV ), } @onready var bgm = self.get_node("BGM") as AudioStreamPlayer @onready var se = self.get_node("SE") as AudioStreamPlayer # Called when the node enters the scene tree for the first time. func _ready() -> void: pass # Replace with function body. func playMusic(level:Level): match level: Level.title: music["title"].loop_mode = AudioStreamWAV.LoopMode.LOOP_FORWARD music["title"].loop_begin = 246700; music["title"].loop_end = 3178816; bgm.stream = music["title"] bgm.play() pass func playSE(ses:SEs): match ses: SEs.ok: se.stream = SE["ok"] se.play() SEs.cancel: se.stream = SE["cancel"] se.play() SEs.invalid: se.stream = SE["invalid"] se.play() SEs.select: se.stream = SE["select"] se.play() # Called every frame. 'delta' is the elapsed time since the previous frame. func _process(_delta: float) -> void: pass