• 產品
  • 特點
  • Mod Master
  • 下載
  • 遊戲
  • 博客
  • 定價

loaforcsSoundAPI

作者:loaforc最後更新:2025-07-07 03:23:377.1M79KB

模組介紹

在Unity遊戲中替換聲音的通用庫。

loaforcsSoundAPI

一個便攜式的聲音替換模塊,旨在給聲音包創建者更多的控制和更可維護的代碼庫。

對於聲音包創作者

A 簡單教程 github wiki中提供了製作聲音包的方法。 實例 也可用。

  • 自定義文件結構層次結構
  • 將多個聲音映射到相同的聲音
  • 聲音包可以像常規模塊一樣創建配置選項
  • 根據遊戲中發生的事情實時交換音頻剪輯。

對於開發人員

SoundAPI最終將包含多個實用程序來幫助加載自定義聲音。 所有常見的使用方法都在 SoundAPI 上課。

自定義條件

下面是一個示例條件。

[SoundAPICondition("LethalCompany:apparatus_state")]//SoundAPI.RegisterAll函數的屬性公共類ApparatusStateCondition:Condition{public enum StateType{PULLED,PLUGGED_IN}內部靜態bool CurrentApparatusPulled=false;public StateType?Value{get;internal set;}}//公共覆蓋bool Evaluate(IContext context){StateType state=CurrentApparatusPulled?StateType.PULLED:StateType.PLUGGED_IN;return state=(Value??StateType.PULLED); //或者手動(如果需要更複雜的邏輯)SoundAPI.RegisterCondition("LethalLevelLoader:dungeon:has_tag",()=>new LLLTagCondition<ExtendedDungeonFlow>(()=>{if(!RoundManager.Instance)return null;if(!RoundManager.Instance.dungeonGenerator)return null;if(!PatchedContent.TryGetExtendedContent(RoundManager.Instance.dungeonGenerator.Generator.DungeonFlow,out ExtendedDungeonFlow lllDungeon))return null;return lllDungeon))return null;}));

聲音包創作者將使用

{"condition":{"type":"LethalCompany:apparatus_state"}}

因為 價值 是可空的,則聲音包創建者不需要提供值,它將默認為true。 否則,他們可以手動將其設置為 插上電源 檢查儀器是否插上電源。 即使目前只有兩個向前兼容性選項,也建議使用枚舉。

映射

映射是mod開發者編寫一個或多個聲音匹配的快捷方式。 建議聲音包創建者盡可能使用映射以實現向前兼容性(因為mod開發人員可以通過mod更新來更新映射文件,而不需要更新聲音包。)

要使用映射,您需要包含一個 聲音包.json 在你的mod zip中(這是SoundAPI自動加載它,一個通過 SoundAPI 類可能稍後來)。 您不需要包括 替代品 or 聲音 文件夾。 A 然後文件放入同一個文件夾中。

示例 文件:

{"FacilityMeltdown:music":["MeltdownHandler:MeltdownMusic:MeltdownMusic"],"FacilityMeltdown:warning_voice":["MeltdownHandler:WarningVoice:warning1","MeltdownHandler:WarningVoice:warning2","MeltdownHandler:WarningVoice:warning3","MeltdownHandler:WarningVoice:warning4"]}

附注: soundapi_mappings.json 以後可能會更改文件名,但將保留兼容性。

然後,聲音包創建者將在他們的替代品中使用您的映射。 匹配中的映射前綴有 #.

{"replacements":[{"matches":"#FacilityMeltdown:music","sounds":[{"sound":"meltdown.ogg"}]}]}

命名約定

建議為您的條件和映射遵循命名約定。 不要有1個“零件”或超過3個。 每個部分都應該用冒號分隔。

  • 您的MOD名稱:NAME or
  • 您的MOD名稱:子類別:名稱
本工具由三方[bufftool]提供注意圖標

立即下载模组

安裝 LagoFast,啟動 PEAK 並暢玩你喜愛的模組。