【游戏】
一、规则机制
线上事故:一个总开关管所有声音,想关音乐留音效的玩家做不到,差评连片。声音设置拆成三路:音乐、音效、语音各自独立开关加音量滑条;设置写入本地档,进游戏即加载;每个声音播放前先过一遍开关判定,关掉的类型直接静默跳过;哪些界面播哪种音效,由 cfg_sound 配置表驱动,开关逻辑只管放行与否。
二、错误写法
-- 错误:单开关一刀切,音乐音效同生共死
function toggleSound()
allSoundOn = not allSoundOn
end
三、正确写法
local setting = {music = true, effect = true}
local function playSound(id, kind)
if kind == "music" and not setting.music then
return
end
if kind == "effect" and not setting.effect then
return
end
audioPlay(id, kind)
end
local function toggleMusic()
setting.music = not setting.music
saveSetting(setting)
end
四、边界处理
设置本地存档进游戏即恢复;音量滑条零到一百;关音乐不打断当前曲目以外的音效。
五、FAQ
问:设置存哪?
答:本地档,换设备不互相同步。
问:语音走哪一路?
答:独立第三路,与音乐音效互不干扰。
全站技术干货持续更新:996 引擎 / Lua 实战帖,语法、参数与示例一篇讲透。进入文章地图 · 查看全部 →
【游戏功能】 扎染的花样是捆出来的:布上的白花是捆扎时染不到色的留白——捆法决定花样,解开那一下才是惊喜。今天拆扎染的表现,…
【游戏功能】 造纸术的工序是浓缩的化学课:纸浆入池、纸帘入水挂浆、揭纸晾晒——捞一张纸就是从水里捞起一张固体。今天拆造纸的表…
【游戏功能】 包饺子是年夜饭的团圆仪式:擀皮放馅捏边三步一气呵成,一家人围着案板边包边聊。今天拆包饺子的表现,看"三步一套"…
【游戏功能】 九连环是古代的解谜天花板:环环相扣,解一环要看前一环的状态——规则简单到一句话,解法深到三百多步。今天拆九连环…
【游戏功能】 七巧板是老祖宗的极简主义:七块板拼天下万物。今天拆七巧板的表现,看"拼"这个动作怎么从散块变成一幅画。 一、散…
【游戏功能】 磨刀师傅的行话是"三分切七分磨":刀的锋利七成在磨功——贴石的角度、推拉的节奏,磨对了刀刃自然利。今天拆磨刀石…