use brawl_rs::prelude::*;
use std::env::var;
#[tokio::main]
#[cfg(feature = "player")]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = BrawlClient::new(var("BRAWL_TOKEN")?);
match Player::get(&client, "20YY0G9L0").await {
Ok(mut player) => {
println!("=== Player Information ===");
println!("Name: {}", player.name);
println!("Trophies: {}", player.trophies);
println!("Highest Trophies: {}", player.highest_trophies);
println!("Level: {}", player.exp_level);
println!("Prestige: {}", player.total_prestige_level);
println!("Experience Points: {}", player.exp_points);
println!("\n=== Victories ===");
println!("3v3: {}", player.victories_3v3);
println!("Solo: {}", player.solo_victories);
println!("Duo: {}", player.duo_victories);
if let Some(club_name) = &player.club.name {
println!("\n=== Club ===");
println!("Name: {}", club_name);
println!("Tag: {}", player.club.tag.as_deref().unwrap_or("N/A"));
}
println!("\n=== Brawlers ({} total) ===", player.brawlers.len());
player
.brawlers
.sort_by(|x, x1| x1.trophies.cmp(&x.trophies));
for brawler in player.brawlers.iter().take(10) {
println!(
"{}: Power {}, Trophies {}, Rank {}",
brawler.name, brawler.power, brawler.trophies, brawler.rank
);
}
}
Err(e) => eprintln!("Error fetching player: {:?}", e),
}
Ok(())
}