From 28b0384285cbd67ea6bb43c68c7c79988214908b Mon Sep 17 00:00:00 2001 From: neckrat Date: Tue, 11 Nov 2025 16:26:20 +0300 Subject: [PATCH] init audio and hurt sound --- assets/audio/sounds/hurt.mp3 | Bin 0 -> 3404 bytes lib/audio.lua | 0 lib/spellbook.lua | 1 + lib/utils/asset_bundle.lua | 4 ++++ 4 files changed, 5 insertions(+) create mode 100644 assets/audio/sounds/hurt.mp3 create mode 100644 lib/audio.lua diff --git a/assets/audio/sounds/hurt.mp3 b/assets/audio/sounds/hurt.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..8c6e1bc598c9c9c1fdc5f7f257c00b94ceb75deb GIT binary patch literal 3404 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 L{LiZYqlte3Q*}0_ literal 0 HcmV?d00001 diff --git a/lib/audio.lua b/lib/audio.lua new file mode 100644 index 0000000..e69de29 diff --git a/lib/spellbook.lua b/lib/spellbook.lua index 3c831ad..2702b71 100644 --- a/lib/spellbook.lua +++ b/lib/spellbook.lua @@ -144,6 +144,7 @@ function attack:cast(caster, target) AnimationNode { function(node) targetSprite:animate("hurt", node) + Tree.assets.files.audio.sounds.hurt:play() end } } diff --git a/lib/utils/asset_bundle.lua b/lib/utils/asset_bundle.lua index da4692a..f831325 100644 --- a/lib/utils/asset_bundle.lua +++ b/lib/utils/asset_bundle.lua @@ -50,6 +50,10 @@ function AssetBundle.loadFile(path) return love.graphics.newShader(path); elseif (ext == "lua") then return require(string.gsub(path, ".lua", "")) + elseif (ext == "mp3") and string.find(path, "sounds") then + return love.audio.newSource(path, 'static') + elseif (ext == "mp3") and string.find(path, "music") then + return love.audio.newSource(path, 'stream') end return nil end