mirror of
https://github.com/Yuyi-Oak/BlueArchiveToolkit.git
synced 2026-07-22 04:15:14 +08:00
chore: establish development baseline
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
use bat_adapters::unity::{Unity2021_3Adapter, UnityAdapterRegistry};
|
||||
use bat_adapters::unity::RawAssetBundle;
|
||||
use std::sync::Arc;
|
||||
|
||||
fn main() {
|
||||
println!("🎮 BlueArchiveToolkit - Unity 适配器演示");
|
||||
println!("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━");
|
||||
|
||||
// 创建 Unity Adapter
|
||||
let adapter = Unity2021_3Adapter::new();
|
||||
println!("✅ Unity Adapter: {}", adapter.name());
|
||||
println!(" 支持版本: 2021.3.0 - 2021.3.99");
|
||||
|
||||
// 模拟 UnityFS 文件头
|
||||
println!("\n📦 测试 Unity 版本检测...");
|
||||
let mut bundle_data = Vec::new();
|
||||
bundle_data.extend_from_slice(b"UnityFS\0");
|
||||
bundle_data.extend_from_slice(&[0, 0, 0, 8]);
|
||||
bundle_data.extend_from_slice(b"5.x.x\02021.3.56f2\0");
|
||||
|
||||
let bundle = RawAssetBundle {
|
||||
data: bundle_data,
|
||||
path: Some("test.bundle".to_string()),
|
||||
};
|
||||
|
||||
if adapter.can_handle(&bundle) {
|
||||
println!(" ✅ 可以处理 Unity 2021.3.56f2");
|
||||
} else {
|
||||
println!(" ❌ 不支持此版本");
|
||||
}
|
||||
|
||||
// 测试 Registry
|
||||
println!("\n🔄 测试 Adapter Registry...");
|
||||
let mut registry = UnityAdapterRegistry::new();
|
||||
registry.register(Arc::new(Unity2021_3Adapter::new()));
|
||||
println!(" 注册的适配器数量: {}", registry.count());
|
||||
|
||||
match registry.select_adapter(&bundle) {
|
||||
Ok(selected) => {
|
||||
println!(" ✅ 自动选择的适配器: {}", selected.name());
|
||||
}
|
||||
Err(e) => {
|
||||
println!(" ❌ 选择失败: {}", e);
|
||||
}
|
||||
}
|
||||
|
||||
println!("\n✅ 演示完成!");
|
||||
println!("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━");
|
||||
}
|
||||
Reference in New Issue
Block a user