
Tác giả:loaforcCập nhật lần cuối:2025-07-07 03:23:377.1M79KB
Một mod thay thế âm thanh di động, được xây dựng để cung cấp cho người tạo gói âm thanh nhiều khả năng kiểm soát hơn và cơ sở mã có thể bảo trì hơn.
A Hướng dẫn đơn giản để tạo ra một gói âm thanh có sẵn trong wiki github. Ví dụ Cũng có sẵn.
Soundapi cuối cùng sẽ chứa nhiều tiện ích để giúp tải âm thanh tùy chỉnh. Tất cả các phương pháp sử dụng phổ biến đều nằm dưới SoundAPI Lớp học.
đây là một điều kiện ví dụ.
[SoundAPICondition("LethalCompany:apparatusstate ")] //thuộc tính cho SoundAPI.RegisterAll chức năng lớp công cộng apparatusstatecondition:Condition{public enum StateType {pull,PLUGGED_IN} nội bộ tĩnh bool currentapparatuspull=false; public StateType? Value {get; internal set;} public override bool Evaluate (context icontext) {StateType state = currentapparatuspull?statetype.pull:StateType.PLUGGED_IN; return state ==(Value?? statetype.pull);}}// để đăng ký tất cả trong assembly của bạn (điều này sẽ tôn trọng các phụ thuộc mềm khác trong mod của bạn) SoundAPI.RegisterAll(Assembly.GetExecutingAssembly ()); //hoặc thủ công (nếu bạn cần logic phức tạp hơn) SoundAPI.RegisterCondition("LethalLevelLoader:dungeon:has_tag ", () = > new lltagcondition<ExtendedDungeonFlow>(() = > {if (! RoundManager.Instance) trả về null; if (! RoundManager.Instance.dungeonGenerator) trả về null; if (! PatchedContent.TryGetExtendedContent(RoundManager.Instance.dungeonGenerator.Generator.DungeonFlow, out extendedungeonflow lldungeon)) trả về null; trả về lldungeon;}));
Người sáng tạo gói âm thanh sẽ sử dụng
{"điều kiện ": {"type": "LethalCompany:apparat_state"}}
Vì vậy Giá trị Là nullable, người tạo gói âm thanh không cần cung cấp giá trị và nó sẽ mặc định là true. Nếu không, họ có thể đặt nó theo cách thủ công thành được cắm _ vào để kiểm tra xem thiết bị có được cắm vào không. Bạn nên sử dụng liệt kê ngay cả khi hiện tại chỉ có hai tùy chọn để tương thích chuyển tiếp.
ánh xạ là để nhà phát triển mod viết lối tắt đến một hoặc nhiều khớp âm thanh. Người tạo gói âm thanh được khuyến nghị sử dụng ánh xạ nếu có thể để tương thích chuyển tiếp (vì nhà phát triển mod có thể cập nhật tệp ánh xạ bằng bản cập nhật mod mà không cần cập nhật gói âm thanh.)
để sử dụng ánh xạ, bạn cần bao gồm một Gói âm thanh. json Trong mod zip của bạn (đây là soundapi tự động tải nó, một tùy chọn để tải chúng qua SoundAPI Lớp học có thể đến sau). Bạn không cần phải bao gồm một Người thay thế Hoặc Âm thanh Thư mục. A Sau đó tập tin sẽ được chuyển vào cùng một thư mục.
Ví dụ Tệp:
{"FacilityMeltdown:music":["MeltdownHandler:meltdownMusic:meltdownMusic"],"FacilityMeltdown:WarningVoice_voice":["MeltdownHandler:WarningVoice:warning1","MeltdownHandler:WarningVoice:warning2","MeltdownHandler:WarningVoice:warning3","MeltdownHandler:WarningVoice:warning4"]}
Lưu ý: các soundapi_mappings.json Có thể thay đổi tên tệp sau này, nhưng khả năng tương thích sẽ được giữ lại.
Người tạo gói âm thanh sau đó sẽ sử dụng ánh xạ của bạn trong trình thay thế của họ. ánh xạ trong trận đấu được bổ sung bằng một #.
{"thay thế ": [{"phù hợp": "
Bạn nên tuân theo quy ước đặt tên cho các điều kiện và ánh xạ của bạn. Không có 1'phần' hoặc nhiều hơn 3. Mỗi phần nên được tách biệt bằng một dấu trắc.
Tên của mod của bạn: tên HoặcTên của mod của bạn: danh mục phụ: tên
Tải xuống bản mod ngay
Cài đặt LagoFast, khởi động PEAK và chơi các bản mod bạn yêu thích.