Post Game jam commit

This commit is contained in:
Daniel Kauss Serna 2026-02-03 21:06:49 +01:00
commit 6db2131520
164 changed files with 172524 additions and 0 deletions

View file

@ -0,0 +1,72 @@
extends Node
const SFX_DEATH = preload("res://assets/sfx/death.mp3")
const SFX_HEART = preload("res://assets/sfx/heart.mp3")
const SFX_SWING = preload("res://assets/sfx/swing.mp3")
const SFX_CLICK = preload("res://assets/sfx/click.mp3")
const MUSIC_TITLE = preload("res://assets/music/title.wav")
# Configuration
var pool_size = 10
var sfx_dict = {}
var music_dict = {}
var sfx_pool = []
var current_pool_index = 0
@onready var music_player_1 := AudioStreamPlayer.new()
@onready var music_player_2 := AudioStreamPlayer.new()
func _ready():
process_mode = Node.PROCESS_MODE_ALWAYS
sfx_dict = {
"death": SFX_DEATH,
"heart": SFX_HEART,
"swing": SFX_SWING,
"click": SFX_CLICK
}
music_dict = {
"title": MUSIC_TITLE
}
for i in range(pool_size):
var asp = AudioStreamPlayer.new()
asp.bus = "SFX"
add_child(asp)
sfx_pool.append(asp)
add_child(music_player_1)
add_child(music_player_2)
music_player_1.bus = "Music"
music_player_2.bus = "Music"
func play_sfx(sound_name: String):
if sfx_dict.has(sound_name):
var asp : AudioStreamPlayer = sfx_pool[current_pool_index]
asp.stream = sfx_dict[sound_name]
asp.play()
current_pool_index = (current_pool_index + 1) % pool_size
func play_music(music_name: String, fade_duration: float = 1.0):
if not music_dict.has(music_name): return
var next_track = music_dict[music_name]
var active = music_player_1 if music_player_1.playing else music_player_2
var idle = music_player_2 if music_player_1.playing else music_player_1
if active.stream == next_track: return
idle.stream = next_track
idle.volume_db = -80
idle.play()
var tween = create_tween().set_parallel(true)
tween.tween_property(active, "volume_db", -80, fade_duration)
tween.tween_property(idle, "volume_db", 0, fade_duration)
await tween.finished
active.stop()