diff --git a/sonic-radiance.love/game/modules/menus/fancy.lua b/sonic-radiance.love/game/modules/menus/fancy.lua index 0fe52f2..eae6269 100644 --- a/sonic-radiance.love/game/modules/menus/fancy.lua +++ b/sonic-radiance.love/game/modules/menus/fancy.lua @@ -70,6 +70,7 @@ function fancy.SubMenuWidget:new(scene, menu_name, newmenu, label) end function fancy.SubMenuWidget:action() + self.scene.assets:playSFX("mBeep") self.scene.menusystem:switchMenu(self.newmenu) self.scene.menusystem.menus[self.newmenu]:activationAction() end diff --git a/sonic-radiance.love/game/modules/menus/list.lua b/sonic-radiance.love/game/modules/menus/list.lua index 352e95e..98efb81 100644 --- a/sonic-radiance.love/game/modules/menus/list.lua +++ b/sonic-radiance.love/game/modules/menus/list.lua @@ -155,6 +155,7 @@ function list.SubMenuWidget:new(scene, menu_name, newmenu, label) end function list.SubMenuWidget:action() + self.scene.assets:playSFX("mBeep") self.scene.menusystem:switchMenu(self.newmenu) self.scene.menusystem.menus[self.newmenu]:activationAction() end diff --git a/sonic-radiance.love/scenes/debug/commons/menu.lua b/sonic-radiance.love/scenes/debug/commons/menu.lua index 7963486..9cea5e2 100644 --- a/sonic-radiance.love/scenes/debug/commons/menu.lua +++ b/sonic-radiance.love/scenes/debug/commons/menu.lua @@ -60,6 +60,7 @@ function menu.SceneWidget:new(scene, menuName, newScene, newSceneName, sceneArgu end function menu.SceneWidget:action() + self.scene.assets:playSFX("mSelect") self.scene:flushKeys() if (self.sceneArgument ~= nil) then core.screen:startTransition(defTransitions.default, defTransitions.default, diff --git a/sonic-radiance.love/scenes/debug/menu/init.lua b/sonic-radiance.love/scenes/debug/menu/init.lua index 215840d..96264c7 100644 --- a/sonic-radiance.love/scenes/debug/menu/init.lua +++ b/sonic-radiance.love/scenes/debug/menu/init.lua @@ -13,17 +13,19 @@ local TweenManager = require "game.modules.tweenmanager" function DebugMenu:new() DebugMenu.super.new(self) - self.assets:batchImport("scenes.debug.commons.assets") + self.assets:batchImport("scenes.menus.assets") menu.commons.MainMenu(self, "BaseMenu") menu.StartGameWidget(self, "BaseMenu") menu.commons.SceneWidget(self, "BaseMenu", scenes.options, "Options") self:buildDebugMenu() menu.TitleWidget(self, "BaseMenu") + self.menusystem.menus["BaseMenu"]:setCancelWidget() menu.ExitWidget(self, "BaseMenu") self.menusystem.menus["BaseMenu"]:finalize() self.menusystem:activate() self.menusystem:switchMenu("BaseMenu") + self.menusystem:setSoundFromSceneAssets("mBeep") self.panel = panels.Gamedata() diff --git a/sonic-radiance.love/scenes/debug/menu/menu.lua b/sonic-radiance.love/scenes/debug/menu/menu.lua index 1b27b15..afda496 100644 --- a/sonic-radiance.love/scenes/debug/menu/menu.lua +++ b/sonic-radiance.love/scenes/debug/menu/menu.lua @@ -27,6 +27,7 @@ function menu.StartGameWidget:new(scene, menuName) end function menu.StartGameWidget:action() + self.scene.assets:playSFX("mSelect") core.screen:startTransition(defTransitions.circle, defTransitions.default, function() scenes.overworld() end, 424/2, 240/2) self.scene.tweens:newTween(0, 0.5, {borderY = 0}, "inOutQuart") end @@ -37,6 +38,7 @@ function menu.TitleWidget:new(scene, menuName) end function menu.TitleWidget:action() + self.scene.assets:playSFX("mBack") core.screen:startTransition(defTransitions.circle, radTransitions.borders, function() scenes.title(true) end, 424/2, 240/2) end @@ -46,6 +48,7 @@ function menu.ExitWidget:new(scene, menuName) end function menu.ExitWidget:action() + self.scene.assets:playSFX("mSelect") love.event.quit("000") end diff --git a/sonic-radiance.love/scenes/menus/options/assets.lua b/sonic-radiance.love/scenes/menus/assets.lua similarity index 91% rename from sonic-radiance.love/scenes/menus/options/assets.lua rename to sonic-radiance.love/scenes/menus/assets.lua index 9558183..90e9914 100644 --- a/sonic-radiance.love/scenes/menus/options/assets.lua +++ b/sonic-radiance.love/scenes/menus/assets.lua @@ -10,7 +10,7 @@ return { {"small", "assets/gui/fonts/PixelOperator.ttf", 16} }, ["imagefonts"] = { - {"medium", "assets/gui/fonts/SA2font"}, + {"title", "assets/gui/fonts/SA2font"}, }, ["sfx"] = { {"mBack", "assets/sfx/menus/back.wav"}, diff --git a/sonic-radiance.love/scenes/menus/options/init.lua b/sonic-radiance.love/scenes/menus/options/init.lua index 733b99e..a92215d 100644 --- a/sonic-radiance.love/scenes/menus/options/init.lua +++ b/sonic-radiance.love/scenes/menus/options/init.lua @@ -10,7 +10,7 @@ local MenuBack = require "game.modules.gui.menuback" function OptionsMenu:new() OptionsMenu.super.new(self) - self.assets:batchImport("scenes.menus.options.assets") + self.assets:batchImport("scenes.menus.assets") self:addMenu("main", true) self:addSubMenu("video", "Video") self:addSubMenu("audio", "Audio") diff --git a/sonic-radiance.love/scenes/menus/titlescreen/init.lua b/sonic-radiance.love/scenes/menus/titlescreen/init.lua index 62b55b7..2a0d6a7 100644 --- a/sonic-radiance.love/scenes/menus/titlescreen/init.lua +++ b/sonic-radiance.love/scenes/menus/titlescreen/init.lua @@ -37,9 +37,8 @@ function TitleScreen:new(fromMenu) local fromMenu = (fromMenu == true) self.borders = gui.newBorder(424, 30, 8) + self.assets:batchImport("scenes.menus.assets") self.assets:addImage("logo", "assets/artworks/logo.png") - self.assets:addImageFont("menu", "assets/gui/fonts/SA2font") - self.assets:addFont("small", "assets/gui/fonts/PixelOperator.ttf", 16) self.assets:addTileset("charicons", "assets/sprites/characters/charicons") self.assets.fonts["small"]:setLineHeight(16/18) self.assets.fonts["small"]:setFilter("shadow") @@ -86,9 +85,11 @@ function TitleScreen:update(dt) end local keys = self:getKeys(1) - if (keys["start"].isPressed and (self.haveMenu == false)) then + if (keys["start"].isPressed and (self.haveMenu == false)) then + self.assets:playSFX("mSelect") Menu(self) self.haveMenu = true + self.menusystem:setSoundFromSceneAssets("mBeep") end end @@ -107,8 +108,8 @@ function TitleScreen:draw() self.assets:drawImage("logo", 240 - 32, 80 - self.logoX, 0, 1, 1, w/2, h/2) if (self.canShowPressStart) and (self.showPressStart) then - local w = self.assets.fonts["menu"]:getWidth("PRESS START") - self.assets.fonts["menu"]:print("PRESS START", 424/2, 240/1.33, "center", 0, 1, 1) + local w = self.assets.fonts["title"]:getWidth("PRESS START") + self.assets.fonts["title"]:print("PRESS START", 424/2, 240/1.33, "center", 0, 1, 1) end love.graphics.setColor(1, 1, 1, self.flashOpacity) diff --git a/sonic-radiance.love/scenes/menus/titlescreen/menu.lua b/sonic-radiance.love/scenes/menus/titlescreen/menu.lua index c25935b..e353028 100644 --- a/sonic-radiance.love/scenes/menus/titlescreen/menu.lua +++ b/sonic-radiance.love/scenes/menus/titlescreen/menu.lua @@ -24,6 +24,7 @@ function SaveMenu:new(scene) end function SaveMenu:cancelAction() + self.scene.assets:playSFX("mBack") self.scene.menusystem:reset() self.scene.haveMenu = false end @@ -61,6 +62,7 @@ function SaveWidget:drawCanvas() end function SaveWidget:action() + self.scene.assets:playSFX("mSelect") game:read(self.saveid) core.screen:startTransition(radTransitions.borders, defTransitions.circle, function() scenes.debug.menu() end, 424/2, 240/2) end diff --git a/sonic-radiance.love/scenes/overworld/screens/mainmenu/character/init.lua b/sonic-radiance.love/scenes/overworld/screens/mainmenu/character/init.lua index 546677c..570ac5e 100644 --- a/sonic-radiance.love/scenes/overworld/screens/mainmenu/character/init.lua +++ b/sonic-radiance.love/scenes/overworld/screens/mainmenu/character/init.lua @@ -86,6 +86,7 @@ function ReturnWidget:action() self.widgetSelected = i end end + self.scene.assets:playSFX("mBack") self.scene.screens.mainmenu["pause"](self.scene, "character", self.widgetSelected) end diff --git a/sonic-radiance.love/scenes/overworld/screens/mainmenu/items.lua b/sonic-radiance.love/scenes/overworld/screens/mainmenu/items.lua index d143184..1d86364 100644 --- a/sonic-radiance.love/scenes/overworld/screens/mainmenu/items.lua +++ b/sonic-radiance.love/scenes/overworld/screens/mainmenu/items.lua @@ -66,6 +66,7 @@ function ItemsScreen:setMenu(widgetId) self.scene.menusystem.menus["menu"].isLocked = true self.scene.menusystem.menus["menu"].widget.selected = math.max(1, self.widgetIndex) self.scene.menusystem.menus["menu"].cursorTransition = math.max(0, self.widgetIndex - 1) + self.scene.menusystem:setSoundFromSceneAssets("mBeep") end function ItemsScreen:setUseMenu(item, widgetId) @@ -150,7 +151,8 @@ function ItemWidget:selectAction() self.scene.currentScreen.effects = game.loot:getEffectStrings(self.pocket, self.item.name) end -function ItemWidget:action() +function ItemWidget:action() + self.scene.assets:playSFX("mSelect") self.scene.currentScreen:setUseMenu(self.item, self.widgetId) end @@ -164,6 +166,7 @@ function BackWidget:selectAction() end function BackWidget:action() + self.scene.assets:playSFX("mBack") self.scene.screens.mainmenu["pause"](self.scene, "main", 3) end @@ -183,6 +186,9 @@ end function UseWidget:action() if (self.itemData.usableOnMap) then self.scene.screens.mainmenu["useItems"](self.scene, self.pocket, self.item, self.widgetId) + self.scene.assets:playSFX("mSelect") + else + self.scene.assets:playSFX("mError") end end @@ -219,6 +225,7 @@ function DropWidget:updateSelected() end function DropWidget:action() + self.scene.assets:playSFX("mSelect") game.loot:removeItem(self.pocket, self.item.name, self.number) self.scene.currentScreen.widgetIndex = self.widgetId self.scene.currentScreen:removeUseMenu() @@ -230,6 +237,7 @@ function ResumeWidget:new(scene) end function ResumeWidget:action() + self.scene.assets:playSFX("mBack") self.scene.currentScreen:removeUseMenu() end diff --git a/sonic-radiance.love/scenes/overworld/screens/mainmenu/pause.lua b/sonic-radiance.love/scenes/overworld/screens/mainmenu/pause.lua index 0e68ab5..aa13fae 100644 --- a/sonic-radiance.love/scenes/overworld/screens/mainmenu/pause.lua +++ b/sonic-radiance.love/scenes/overworld/screens/mainmenu/pause.lua @@ -54,6 +54,7 @@ function PauseScreen:setMenu() self.scene.menusystem.menus[self.menuSelected].widget.selected = self.widgetSelected self.scene.menusystem.menus[self.menuSelected].cursorTransition = self.widgetSelected - 1 end + self.scene.menusystem:setSoundFromSceneAssets("mBeep") end function PauseScreen:draw() @@ -62,12 +63,14 @@ end -- Character menu function CharacterMenu:cancelAction() + self.scene.assets:playSFX("mBeep") self.scene.menusystem:switchMenu("main") end -- Hero custom widget -- function CharacterWidget:action() + self.scene.assets:playSFX("mSelect") self.scene.screens.mainmenu.character(self.scene, self.charName) end @@ -79,6 +82,7 @@ function TeamWidget:new(scene) end function TeamWidget:action() + self.scene.assets:playSFX("mBeep") self.scene.menusystem.menus["character"]:getFocus() end @@ -89,6 +93,7 @@ function ViewWidget:new(scene, name, view) end function ViewWidget:action() + self.scene.assets:playSFX("mSelect") self.scene.screens.mainmenu[self.nextView](self.scene) end @@ -100,12 +105,16 @@ function SaveExitWidget:new(scene, menu, name, save, exit) end function SaveExitWidget:action() + if (self.save or self.exit) then + self.scene.assets:playSFX("mSelect") + else + self.scene.assets:playSFX("mBack") + end if (self.save) then self.scene.world:savePosition() game:write() end if (self.exit) then - core.screen:startTransition(defTransitions.default, defTransitions.circle, function() scenes.debug.menu() end, 424/2, 240/2) self.scene.tweens:newTween(0, 0.3, {ringBorder=-16}, "inOutQuad") self.scene.tweens:newTween(0, 0.3, {timeBorder=-20}, "inOutQuad") diff --git a/sonic-radiance.love/scenes/overworld/screens/mainmenu/useitems.lua b/sonic-radiance.love/scenes/overworld/screens/mainmenu/useitems.lua index d467b01..5b79742 100644 --- a/sonic-radiance.love/scenes/overworld/screens/mainmenu/useitems.lua +++ b/sonic-radiance.love/scenes/overworld/screens/mainmenu/useitems.lua @@ -77,12 +77,14 @@ end -- Character menu function CharacterMenu:cancelAction() -- Switch à l'écran précédant + self.scene.assets:playSFX("mBack") self.scene.currentScreen:goBack() end -- Hero custom widget -- function CharacterWidget:action() + self.scene.assets:playSFX("mSelect") self.scene.currentScreen:useItem(self.charName) end