diff --git a/sonic-radiance.love/assets/sfx/talk.wav b/sonic-radiance.love/assets/sfx/talk.wav new file mode 100644 index 0000000..d4d178f Binary files /dev/null and b/sonic-radiance.love/assets/sfx/talk.wav differ diff --git a/sonic-radiance.love/core/libs/talkies.lua b/sonic-radiance.love/core/libs/talkies.lua index e6d91ed..c888b2d 100644 --- a/sonic-radiance.love/core/libs/talkies.lua +++ b/sonic-radiance.love/core/libs/talkies.lua @@ -95,6 +95,7 @@ local Talkies = { padding = 4, talkSound = nil, optionSwitchSound = nil, + optionOnSelectSound = nil, inlineOptions = true, titleColor = {1, 1, 1}, @@ -151,6 +152,7 @@ function Talkies.say(title, messages, config) thickness = config.thickness or Talkies.thickness, talkSound = config.talkSound or Talkies.talkSound, optionSwitchSound = config.optionSwitchSound or Talkies.optionSwitchSound, + optionOnSelectSound = config.optionOnSelectSound or Talkies.optionOnSelectSound, inlineOptions = config.inlineOptions or Talkies.inlineOptions, font = font, fontHeight = font:getHeight(" "), @@ -377,7 +379,7 @@ function Talkies.onAction() else if currentDialog:showOptions() then currentDialog.options[currentDialog.optionIndex][2]() -- Execute the selected function - playSound(currentDialog.optionSwitchSound) + playSound(currentDialog.optionOnSelectSound) end Talkies.advanceMsg() end diff --git a/sonic-radiance.love/game/events/event/dialogbox.lua b/sonic-radiance.love/game/events/event/dialogbox.lua index 359dcc5..e3206fc 100644 --- a/sonic-radiance.love/game/events/event/dialogbox.lua +++ b/sonic-radiance.love/game/events/event/dialogbox.lua @@ -6,6 +6,9 @@ local Talkies = require('core.libs.talkies') function DialogBox:new(controller, args) DialogBox.super.new(self, controller, args) Talkies.font = love.graphics.newFont("assets/gui/fonts/PixelOperator.ttf", 16) + Talkies.talkSound = love.audio.newSource("assets/sfx/talk.wav", "static") + Talkies.optionOnSelectSound = love.audio.newSource("assets/sfx/menus/select.wav", "static") + Talkies.optionSwitchSound = love.audio.newSource("assets/sfx/menus/beep.wav", "static") end function DialogBox:start() @@ -52,9 +55,9 @@ function DialogBox:update(dt) self:finish() end local keys = self.events.scene.sources[1].keys - if (keys["up"].isPressed) then Talkies.prevOption() - elseif (keys["down"].isPressed) then Talkies.nextOption() - elseif (keys["A"].isPressed) then Talkies.onAction() + if (keys["up"].isPressed) then Talkies.prevOption(); + elseif (keys["down"].isPressed) then Talkies.nextOption(); + elseif (keys["A"].isPressed) then Talkies.onAction(); end end