9 个版本

0.1.8 2022年1月1日
0.1.7 2022年1月1日
0.1.6 2021年12月31日

#827 in 游戏

每月41次 下载

MIT 许可证

26KB
584

这个包旨在提供与英雄联盟游戏客户端API的Rust接口。官方文档可以在这里找到。

游戏客户端API是本地英雄联盟客户端暴露的API,不应与LoL API混淆,后者已经有一个优秀的包。该API允许您获取有关正在进行的游戏的一些信息。

包内容

目前有三个模块

  • api 包含了 GameClient 以及调用API的所有方法。
  • model 包含了API将返回的所有数据结构。
  • event_listener 包含了创建可以传递给 start_listener 的结构的特质的定义,这些结构可以运行一个周期性检查新 Events 并相应触发回调的任务。(你可以在 examples/basic_listener 中看到一个示例)

如何使用

use lol_game_client_api::api::{GameClient, get_riot_root_certificate};
use tokio;

#[tokio::main]
async fn main() {
    let client = GameClient::new();
    let active_player = client.active_player().await.unwrap();
    
    println!("Stats Runes: {:?}", active_player.full_runes.stat_runes)
}

更完整的示例可以在LoLCongratz仓库中找到。这是一个小型二进制程序,每当一名队友击杀敌人时,它就会在虚拟音频电缆中播放声音。

待办事项

目前,枚举中缺少一些变体(例如,请参阅 model::DragonType)。
此外,一些端点根本不工作(例如,所有需要将 summonerName 作为 GET 参数的端点)。
但是,已经存在所有可以反序列化响应的结构体,因此这不应是太多工作。

免责声明

我为了一个个人项目在早上创建了此包,因此可能缺少一些功能,或者它可能没有与最新的LoL客户端保持最新。在这种情况下,我很乐意看到贡献(无论是问题还是PR)!

依赖关系

~5–21MB
~275K SLoC