
저자:loaforc마지막 업데이트:2025-07-07 03:23:377.1M79KB
사운드 팩 제작자에게 더 많은 제어와 보다 유지 보수 가능한 코드 베이스를 제공하기 위해 만든 휴대용 사운드 대체 모드
A 간단한 자습서 사운드 팩을 만드는 것은 github wiki에서 사용할 수 있습니다. 예제 또한 사용할 수 있습니다.
soundapi는 결국 사용자 정의 사운드를 로드하는 데 도움이 되는 여러 유틸리티를 포함할 것이다. 모든 일반적인 사용 방법은 SoundAPI 수업.
여기 예제 조건이 있습니다.
[soundapcondition("LethalCompany:apparatusstate")]//attribute for SoundAPI.RegisterAll function public class ApparatusStateCondition:Condition {public enum StateType {pull,PLUGGED_IN} 내부 정적 bool currentapparatuspull=false; public StateType? Value {get; internal set;} public override bool Evaluate(IContext context) {StateType state=currentapparatuspull?statetype.pull:StateType.PLUGGED_IN; return state ==(Value?? statetype.pull);}}//어셈블리에 모든 것을 등록하려면 (mod의 다른 소프트 종속성을 존중합니다) SoundAPI.RegisterAll(Assembly.GetExecutingAssembly ()); //또는 수동으로 (더 복잡한 논리가 필요한 경우) 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 extendedungeonflow lldungeon)) return null; return lldungeon;}));
사운드 팩 제작자들은
{"condition ": {"type": "LethalCompany:apparate_state"}}
왜냐하면 값 nullable, 사운드 팩 생성자는 값을 제공할 필요가 없으며 기본값은 true 입니다. 그렇지 않으면, 그들은 수동으로 플러그인(plugged) 장치가 연결되어 있는지 확인합니다. 현재 앞으로 호환되는 옵션이 두 가지만이 있더라도 열거를 사용하는 것이 좋습니다.
매핑은 모드 개발자가 하나 이상의 사운드 일치에 대한 바로 가기를 작성하기 위한 것입니다. 사운드 팩 생성자는 가능한 경우 전방 호환성을 위해 매핑을 사용하는 것이 좋습니다. Mod 개발자는 사운드 팩을 업데이트할 필요가 없는 모드 업데이트로 매핑 파일을 업데이트할 수 있기 때문입니다.
매핑을 사용하려면 사운드 패키지.json 당신의 mod zip에서, 이것은 soundapi가 자동으로 로드합니다. SoundAPI 수업은 나중에 올 수 있다). 하나를 포함할 필요가 없습니다. 교체기 또는 소리 폴더. A 그런 다음 파일은 같은 폴더로 이동합니다.
예제 파일:
{"FacilityMeltdown:music ": [" MeltdownHandler: meltdownMusic: meltdownMusic "]," FacilityMeltdown:warning_voice ": [" MeltdownHandler: WarningVoice: warning1 "," MeltdownHandler: WarningVoice: warning2 "," MeltdownHandler: WarningVoice: warning3 "," MeltdownHandler: WarningVoice: warning4 "]}
주의: The soundapi_mappings.json 나중에 파일 이름을 변경할 수 있지만 호환성은 유지됩니다.
그런 다음 sound-pack 작성자는 대체기에서 매핑을 사용합니다. 일치의 매핑에 a #.
{"replacements ": [{"matchs": "#FacilityMeltdown:music", "sounds": [{"sound ":" meltdown.ogg "}]}]}
조건과 매핑에 대한 이름 지정 규칙을 따르는 것이 좋습니다. 1개의 '부분'이 없거나 3개를 넘지 않습니다. 각 부품은 콜론으로 분리되어야 한다.
Mod 이름: 이름 또는Mod 이름: 하위 카테고리: 이름
지금 모드를 다운로드하세요
LagoFast를 설치하고 PEAK을(를) 시작한 후 좋아하는 모드로 플레이해 보세요.