From 78337bded91bea2ed6e6a88c82fd2b692c246dc9 Mon Sep 17 00:00:00 2001 From: Zefanja Jobse Date: Sat, 6 Jul 2024 09:47:11 +0200 Subject: [PATCH] add same timeout functionality for images as server image bots and shorten if loops --- info_image.jpg | Bin 21877 -> 29949 bytes map_mode.jpg | Bin 22490 -> 30513 bytes src/main.rs | 622 +++++++++++++++++++++++++++++++++---------------- 3 files changed, 419 insertions(+), 203 deletions(-) diff --git a/info_image.jpg b/info_image.jpg index e688408166af1e9eca72caff585dcdef22176ea5..5b2cb63c898a851167aed37227d9f967ad1b565f 100644 GIT binary patch delta 29571 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 KY;D}{*Z&8u, pub game: Option, pub set_banner_image: bool, + pub mins_between_avatar_change: i32, } /// `MyConfig` implements `Default` @@ -39,6 +40,7 @@ impl ::std::default::Default for Static { server_id: None, game: Some("bf1".into()), set_banner_image: true, + mins_between_avatar_change: 1, } } } @@ -139,9 +141,14 @@ impl EventHandler for Handler { // loop in seperate async tokio::spawn(async move { + // set update_avatar to 1 minute ago to allow changing on startup + let mut update_avatar = chrono::Utc::now() + - chrono::Duration::minutes(cfg.mins_between_avatar_change.into()); loop { - match status(&ctx, &cfg).await { - Ok(item) => item, + match status(&ctx, &cfg, update_avatar).await { + Ok(time) => { + update_avatar = time; + } Err(e) => { log::error!("cant get new stats: {}", e); } @@ -183,205 +190,13 @@ async fn get(game: &str) -> Result { } } -async fn status(ctx: &Context, statics: &Static) -> Result<()> { - match get(&statics.game.clone().unwrap_or("bf1".into())).await { - Ok(status) => { - let maps = HashMap::from([ - ("MP_Amiens", "Amiens"), - ("MP_Chateau", "Ballroom Blitz"), - ("MP_Desert", "Sinai Desert"), - ("MP_FaoFortress", "Fao Fortress"), - ("MP_Forest", "Argonne Forest"), - ("MP_ItalianCoast", "Empire's Edge"), - ("MP_MountainFort", "Monte Grappa"), - ("MP_Scar", "St Quentin Scar"), - ("MP_Suez", "Suez"), - ("MP_Giant", "Giant's Shadow"), - ("MP_Fields", "Soissons"), - ("MP_Graveyard", "Rupture"), - ("MP_Underworld", "Fort De Vaux"), - ("MP_Verdun", "Verdun Heights"), - ("MP_ShovelTown", "Prise de Tahure"), - ("MP_Trench", "Nivelle Nights"), - ("MP_Bridge", "Brusilov Keep"), - ("MP_Islands", "Albion"), - ("MP_Ravines", "Łupków Pass"), - ("MP_Tsaritsyn", "Tsaritsyn"), - ("MP_Valley", "Galicia"), - ("MP_Volga", "Volga River"), - ("MP_Beachhead", "Cape Helles"), - ("MP_Harbor", "Zeebrugge"), - ("MP_Naval", "Heligoland Bight"), - ("MP_Ridge", "Achi Baba"), - ("MP_Alps", "Razor's Edge"), - ("MP_Blitz", "London Calling"), - ("MP_Hell", "Passchendaele"), - ("MP_London", "London Calling: Scourge"), - ("MP_Offensive", "River Somme"), - ("MP_River", "Caporetto"), - // BFV - ("MP_ArcticFjell", "Fjell 652"), - ("MP_ArcticFjord", "Narvik"), - ("MP_Arras", "Arras"), - ("MP_Devastation", "Devastation"), - ("MP_Escaut", "twisted steel"), - ("MP_Foxhunt", "Aerodrome"), - ("MP_Halfaya", "Hamada"), - ("MP_Rotterdam", "Rotterdam"), - ("MP_Hannut", "Panzerstorm"), - ("MP_Crete", "Mercury"), - ("MP_Kalamas", "Marita"), - ("MP_Provence", "Provence"), - ("MP_SandAndSea", "Al sudan"), - ("MP_Bunker", "Operation Underground"), - ("MP_IwoJima", "Iwo jima"), - ("MP_TropicIslands", "Pacific storm"), - ("MP_WakeIsland", "Wake island"), - ("MP_Jungle", "Solomon islands"), - ("MP_Libya", "Al marj encampment"), - ("MP_Norway", "lofoten islands"), - // bfv special maps - ("DK_Norway", "Halvoy"), - ("MP_Escaut_US", "Twisted Steel US"), - ("MP_Hannut_US", "Panzerstorm US"), - ("MP_GOps_Chapter2_Arras", "Arras (Chapter 2)"), - ("MP_WE_Fortress_Devastation", "Devastation (Fortress)"), - ("MP_WE_Fortress_Halfaya", "Hamada (Fortress)"), - ("MP_WE_Grind_ArcticFjord", "Narvik (Grind)"), - ("MP_WE_Grind_Devastation", "Devastation (Grind)"), - ("MP_WE_Grind_Escaut", "Twisted Steel (Grind)"), - ("MP_WE_Grind_Rotterdam", "Rotterdam (Grind)"), - ]); - - let images = HashMap::from([ - ("MP_Amiens", "https://cdn.gametools.network/maps/bf1/MP_Amiens_LandscapeLarge-e195589d.jpg"), - ("MP_Chateau", "https://cdn.gametools.network/maps/bf1/MP_Chateau_LandscapeLarge-244d5987.jpg"), - ("MP_Desert", "https://cdn.gametools.network/maps/bf1/MP_Desert_LandscapeLarge-d8f749da.jpg"), - ("MP_FaoFortress", "https://cdn.gametools.network/maps/bf1/MP_FaoFortress_LandscapeLarge-cad1748e.jpg"), - ("MP_Forest", "https://cdn.gametools.network/maps/bf1/MP_Forest_LandscapeLarge-dfbbe910.jpg"), - ("MP_ItalianCoast", "https://cdn.gametools.network/maps/bf1/MP_ItalianCoast_LandscapeLarge-1503eec7.jpg"), - ("MP_MountainFort", "https://cdn.gametools.network/maps/bf1/MP_MountainFort_LandscapeLarge-8a517533.jpg"), - ("MP_Scar", "https://cdn.gametools.network/maps/bf1/MP_Scar_LandscapeLarge-ee25fbd6.jpg"), - ("MP_Suez", "https://cdn.gametools.network/maps/bf1/MP_Suez_LandscapeLarge-f630fc76.jpg"), - ("MP_Giant", "https://cdn.gametools.network/maps/bf1/MP_Giant_LandscapeLarge-dd0b93ef.jpg"), - ("MP_Fields", "https://cdn.gametools.network/maps/bf1/MP_Fields_LandscapeLarge-5f53ddc4.jpg"), - ("MP_Graveyard", "https://cdn.gametools.network/maps/bf1/MP_Graveyard_LandscapeLarge-bd1012e6.jpg"), - ("MP_Underworld", "https://cdn.gametools.network/maps/bf1/MP_Underworld_LandscapeLarge-b6c5c7e7.jpg"), - ("MP_Verdun", "https://cdn.gametools.network/maps/bf1/MP_Verdun_LandscapeLarge-1a364063.jpg"), - ("MP_ShovelTown", "https://cdn.gametools.network/maps/bf1/MP_Shoveltown_LandscapeLarge-d0aa5920.jpg"), - ("MP_Trench", "https://cdn.gametools.network/maps/bf1/MP_Trench_LandscapeLarge-dbd1248f.jpg"), - ("MP_Bridge", "https://cdn.gametools.network/maps/bf1/MP_Bridge_LandscapeLarge-5b7f1b62.jpg"), - ("MP_Islands", "https://cdn.gametools.network/maps/bf1/MP_Islands_LandscapeLarge-c9d8272b.jpg"), - ("MP_Ravines", "https://cdn.gametools.network/maps/bf1/MP_Ravines_LandscapeLarge-1fe0d3f6.jpg"), - ("MP_Tsaritsyn", "https://cdn.gametools.network/maps/bf1/MP_Tsaritsyn_LandscapeLarge-2dbd3bf5.jpg"), - ("MP_Valley", "https://cdn.gametools.network/maps/bf1/MP_Valley_LandscapeLarge-8dc1c7ca.jpg"), - ("MP_Volga", "https://cdn.gametools.network/maps/bf1/MP_Volga_LandscapeLarge-6ac49c25.jpg"), - ("MP_Beachhead", "https://cdn.gametools.network/maps/bf1/MP_Beachhead_LandscapeLarge-5a13c655.jpg"), - ("MP_Harbor", "https://cdn.gametools.network/maps/bf1/MP_Harbor_LandscapeLarge-d382c7ea.jpg"), - ("MP_Naval", "https://cdn.gametools.network/maps/bf1/MP_Naval_LandscapeLarge-dc2e8daf.jpg"), - ("MP_Ridge", "https://cdn.gametools.network/maps/bf1/MP_Ridge_LandscapeLarge-8c057a19.jpg"), - ("MP_Alps", "https://cdn.gametools.network/maps/bf1/MP_Alps_LandscapeLarge-7ab30e3e.jpg"), - ("MP_Blitz", "https://cdn.gametools.network/maps/bf1/MP_Blitz_LandscapeLarge-5e26212f.jpg"), - ("MP_Hell", "https://cdn.gametools.network/maps/bf1/MP_Hell_LandscapeLarge-7176911c.jpg"), - ("MP_London", "https://cdn.gametools.network/maps/bf1/MP_London_LandscapeLarge-0b51fe46.jpg"), - ("MP_Offensive", "https://cdn.gametools.network/maps/bf1/MP_Offensive_LandscapeLarge-6dabdea3.jpg"), - ("MP_River", "https://cdn.gametools.network/maps/bf1/MP_River_LandscapeLarge-21443ae9.jpg"), - // bfv - ("MP_ArcticFjell", "https://cdn.gametools.network/maps/bfv/1080p_MP_ArcticFjell-df3c1290.jpg"), - ("MP_ArcticFjord", "https://cdn.gametools.network/maps/bfv/1080p_MP_ArcticFjord-7ba29138.jpg"), - ("MP_Arras", "https://cdn.gametools.network/maps/bfv/1080p_MP_Arras-4b610505.jpg"), - ("MP_Devastation", "https://cdn.gametools.network/maps/bfv/1080p_MP_Devastation-623dea60.jpg"), - ("MP_Escaut", "https://cdn.gametools.network/maps/bfv/1080p_MP_Escaut-9764d1fb.jpg"), - ("MP_Foxhunt", "https://cdn.gametools.network/maps/bfv/1080p_MP_AfricanFox-8ad380a5.jpg"), - ("MP_Halfaya", "https://cdn.gametools.network/maps/bfv/1080p_MP_AfricanHalfaya-31165f9b.jpg"), - ("MP_Rotterdam", "https://cdn.gametools.network/maps/bfv/1080p_MP_Rotterdam-55632240.jpg"), - ("MP_Hannut", "https://cdn.gametools.network/maps/bfv/1080p_MP_Hannut-ebbe7197.jpg"), - ("MP_Crete", "https://cdn.gametools.network/maps/bfv/1080p_MP_Crete-304a202d.jpg"), - ("MP_Kalamas", "https://cdn.gametools.network/maps/bfv/1080p_MP_Kalamas-c64c8451.jpg"), - ("MP_Provence", "https://cdn.gametools.network/maps/bfv/1080p_MP_ProvenceXL-a950ad3e.jpg"), - ("MP_SandAndSea", "https://cdn.gametools.network/maps/bfv/1080p_MP_SandAndSea-f071e6f7.jpg"), - ("MP_Bunker", "https://cdn.gametools.network/maps/bfv/1080p_MP_Bunker-7b518876.jpg"), - ("MP_IwoJima", "https://cdn.gametools.network/maps/bfv/1080p_MP_IwoJima-760850fc.jpg"), - ("MP_TropicIslands", "https://cdn.gametools.network/maps/bfv/1080p_MP_TropicIslands-9e0a41c3.jpg"), - ("MP_WakeIsland", "https://cdn.gametools.network/maps/bfv/1080p_MP_WakeIsland-3238b455.jpg"), - ("MP_Jungle", "https://cdn.gametools.network/maps/bfv/1080p_MP_Jungle-714218ce.jpg"), - ("MP_Libya", "https://cdn.gametools.network/maps/bfv/1080p_MP_Libya-bd54b090.jpg"), - ("MP_Norway", "https://cdn.gametools.network/maps/bfv/1080p_MP_Norway-7d6d6300.jpg"), - // bfv special maps - ("DK_Norway", "https://cdn.gametools.network/maps/bfv/1080p_MP_Norway-7d6d6300.jpg"), - ("MP_Escaut_US", "https://cdn.gametools.network/maps/bfv/1080p_MP_Escaut-9764d1fb.jpg"), - ("MP_Hannut_US", "https://cdn.gametools.network/maps/bfv/1080p_MP_Hannut-ebbe7197.jpg"), - ("MP_GOps_Chapter2_Arras", "https://cdn.gametools.network/maps/bfv/1080p_MP_Arras-4b610505.jpg"), - ("MP_WE_Fortress_Devastation", "https://cdn.gametools.network/maps/bfv/1080p_MP_Devastation-623dea60.jpg"), - ("MP_WE_Fortress_Halfaya", "https://cdn.gametools.network/maps/bfv/1080p_MP_AfricanHalfaya-31165f9b.jpg"), - ("MP_WE_Grind_ArcticFjord", "https://cdn.gametools.network/maps/bfv/1080p_MP_ArcticFjord-7ba29138.jpg"), - ("MP_WE_Grind_Devastation", "https://cdn.gametools.network/maps/bfv/1080p_MP_Devastation-623dea60.jpg"), - ("MP_WE_Grind_Escaut", "https://cdn.gametools.network/maps/bfv/1080p_MP_Escaut-9764d1fb.jpg"), - ("MP_WE_Grind_Rotterdam", "https://cdn.gametools.network/maps/bfv/1080p_MP_Rotterdam-55632240.jpg"), - ]); - - let small_modes = HashMap::from([ - ("Conquest0", "CQ"), - ("Rush0", "RS"), - ("BreakThrough0", "SO"), - ("BreakthroughLarge0", "OP"), - ("Possession0", "WP"), - ("TugOfWar0", "FL"), - ("AirAssault0", "AA"), - ("Domination0", "DM"), - ("TeamDeathMatch0", "TM"), - ("ZoneControl0", "RS"), - ]); - - for server in status.servers { - let right_server = match &statics.server_name { - Some(server_name) => &server.name == server_name, - None => match &statics.server_id { - Some(server_id) => &server.id == server_id, - None => false, - }, - }; - - if right_server { - let internal_map = - match Regex::new(r"[^\/]+$").unwrap().find(&server.map_name[..]) { - Some(location) => location.as_str(), - None => &server.map_name[..], - }; - - let server_info = format!( - "{}/{} - {}", - server.current_players, - server.max_players, - maps.get(internal_map).unwrap_or(&internal_map) - ); - // change game activity - ctx.set_activity(Some(ActivityData::playing(server_info))); - - let image_loc = gen_img( - small_modes.get(&server.game_mode[..]).unwrap_or(&""), - images.get(internal_map).unwrap_or(&internal_map), - ) - .await?; - - // change avatar - let avatar = CreateAttachment::path(image_loc) - .await - .expect("Failed to read image"); - let mut user = ctx.cache.current_user().clone(); - let mut new_profile = EditProfile::new().avatar(&avatar); - if statics.set_banner_image { - let banner = CreateAttachment::path("./info_image.jpg") - .await - .expect("Failed to read banner image"); - new_profile = new_profile.banner(&banner); - } - let _ = user.edit(ctx, new_profile).await; - - return Ok(()); - } - } - } +async fn status( + ctx: &Context, + statics: &Static, + mut update_avatar: chrono::DateTime, +) -> Result> { + let status = match get(&statics.game.clone().unwrap_or("bf1".into())).await { + Ok(status) => status, Err(e) => { let server_info = "¯\\_(ツ)_/¯ server not found"; ctx.set_activity(Some(ActivityData::playing(server_info))); @@ -389,7 +204,408 @@ async fn status(ctx: &Context, statics: &Static) -> Result<()> { anyhow::bail!(format!("Failed to get new serverinfo: {}", e)) } }; - anyhow::bail!(format!("Couldn't find server in serverlist!")) + + let maps = HashMap::from([ + ("MP_Amiens", "Amiens"), + ("MP_Chateau", "Ballroom Blitz"), + ("MP_Desert", "Sinai Desert"), + ("MP_FaoFortress", "Fao Fortress"), + ("MP_Forest", "Argonne Forest"), + ("MP_ItalianCoast", "Empire's Edge"), + ("MP_MountainFort", "Monte Grappa"), + ("MP_Scar", "St Quentin Scar"), + ("MP_Suez", "Suez"), + ("MP_Giant", "Giant's Shadow"), + ("MP_Fields", "Soissons"), + ("MP_Graveyard", "Rupture"), + ("MP_Underworld", "Fort De Vaux"), + ("MP_Verdun", "Verdun Heights"), + ("MP_ShovelTown", "Prise de Tahure"), + ("MP_Trench", "Nivelle Nights"), + ("MP_Bridge", "Brusilov Keep"), + ("MP_Islands", "Albion"), + ("MP_Ravines", "Łupków Pass"), + ("MP_Tsaritsyn", "Tsaritsyn"), + ("MP_Valley", "Galicia"), + ("MP_Volga", "Volga River"), + ("MP_Beachhead", "Cape Helles"), + ("MP_Harbor", "Zeebrugge"), + ("MP_Naval", "Heligoland Bight"), + ("MP_Ridge", "Achi Baba"), + ("MP_Alps", "Razor's Edge"), + ("MP_Blitz", "London Calling"), + ("MP_Hell", "Passchendaele"), + ("MP_London", "London Calling: Scourge"), + ("MP_Offensive", "River Somme"), + ("MP_River", "Caporetto"), + // BFV + ("MP_ArcticFjell", "Fjell 652"), + ("MP_ArcticFjord", "Narvik"), + ("MP_Arras", "Arras"), + ("MP_Devastation", "Devastation"), + ("MP_Escaut", "twisted steel"), + ("MP_Foxhunt", "Aerodrome"), + ("MP_Halfaya", "Hamada"), + ("MP_Rotterdam", "Rotterdam"), + ("MP_Hannut", "Panzerstorm"), + ("MP_Crete", "Mercury"), + ("MP_Kalamas", "Marita"), + ("MP_Provence", "Provence"), + ("MP_SandAndSea", "Al sudan"), + ("MP_Bunker", "Operation Underground"), + ("MP_IwoJima", "Iwo jima"), + ("MP_TropicIslands", "Pacific storm"), + ("MP_WakeIsland", "Wake island"), + ("MP_Jungle", "Solomon islands"), + ("MP_Libya", "Al marj encampment"), + ("MP_Norway", "lofoten islands"), + // bfv special maps + ("DK_Norway", "Halvoy"), + ("MP_Escaut_US", "Twisted Steel US"), + ("MP_Hannut_US", "Panzerstorm US"), + ("MP_GOps_Chapter2_Arras", "Arras (Chapter 2)"), + ("MP_WE_Fortress_Devastation", "Devastation (Fortress)"), + ("MP_WE_Fortress_Halfaya", "Hamada (Fortress)"), + ("MP_WE_Grind_ArcticFjord", "Narvik (Grind)"), + ("MP_WE_Grind_Devastation", "Devastation (Grind)"), + ("MP_WE_Grind_Escaut", "Twisted Steel (Grind)"), + ("MP_WE_Grind_Rotterdam", "Rotterdam (Grind)"), + ]); + + let images = HashMap::from([ + ( + "MP_Amiens", + "https://cdn.gametools.network/maps/bf1/MP_Amiens_LandscapeLarge-e195589d.jpg", + ), + ( + "MP_Chateau", + "https://cdn.gametools.network/maps/bf1/MP_Chateau_LandscapeLarge-244d5987.jpg", + ), + ( + "MP_Desert", + "https://cdn.gametools.network/maps/bf1/MP_Desert_LandscapeLarge-d8f749da.jpg", + ), + ( + "MP_FaoFortress", + "https://cdn.gametools.network/maps/bf1/MP_FaoFortress_LandscapeLarge-cad1748e.jpg", + ), + ( + "MP_Forest", + "https://cdn.gametools.network/maps/bf1/MP_Forest_LandscapeLarge-dfbbe910.jpg", + ), + ( + "MP_ItalianCoast", + "https://cdn.gametools.network/maps/bf1/MP_ItalianCoast_LandscapeLarge-1503eec7.jpg", + ), + ( + "MP_MountainFort", + "https://cdn.gametools.network/maps/bf1/MP_MountainFort_LandscapeLarge-8a517533.jpg", + ), + ( + "MP_Scar", + "https://cdn.gametools.network/maps/bf1/MP_Scar_LandscapeLarge-ee25fbd6.jpg", + ), + ( + "MP_Suez", + "https://cdn.gametools.network/maps/bf1/MP_Suez_LandscapeLarge-f630fc76.jpg", + ), + ( + "MP_Giant", + "https://cdn.gametools.network/maps/bf1/MP_Giant_LandscapeLarge-dd0b93ef.jpg", + ), + ( + "MP_Fields", + "https://cdn.gametools.network/maps/bf1/MP_Fields_LandscapeLarge-5f53ddc4.jpg", + ), + ( + "MP_Graveyard", + "https://cdn.gametools.network/maps/bf1/MP_Graveyard_LandscapeLarge-bd1012e6.jpg", + ), + ( + "MP_Underworld", + "https://cdn.gametools.network/maps/bf1/MP_Underworld_LandscapeLarge-b6c5c7e7.jpg", + ), + ( + "MP_Verdun", + "https://cdn.gametools.network/maps/bf1/MP_Verdun_LandscapeLarge-1a364063.jpg", + ), + ( + "MP_ShovelTown", + "https://cdn.gametools.network/maps/bf1/MP_Shoveltown_LandscapeLarge-d0aa5920.jpg", + ), + ( + "MP_Trench", + "https://cdn.gametools.network/maps/bf1/MP_Trench_LandscapeLarge-dbd1248f.jpg", + ), + ( + "MP_Bridge", + "https://cdn.gametools.network/maps/bf1/MP_Bridge_LandscapeLarge-5b7f1b62.jpg", + ), + ( + "MP_Islands", + "https://cdn.gametools.network/maps/bf1/MP_Islands_LandscapeLarge-c9d8272b.jpg", + ), + ( + "MP_Ravines", + "https://cdn.gametools.network/maps/bf1/MP_Ravines_LandscapeLarge-1fe0d3f6.jpg", + ), + ( + "MP_Tsaritsyn", + "https://cdn.gametools.network/maps/bf1/MP_Tsaritsyn_LandscapeLarge-2dbd3bf5.jpg", + ), + ( + "MP_Valley", + "https://cdn.gametools.network/maps/bf1/MP_Valley_LandscapeLarge-8dc1c7ca.jpg", + ), + ( + "MP_Volga", + "https://cdn.gametools.network/maps/bf1/MP_Volga_LandscapeLarge-6ac49c25.jpg", + ), + ( + "MP_Beachhead", + "https://cdn.gametools.network/maps/bf1/MP_Beachhead_LandscapeLarge-5a13c655.jpg", + ), + ( + "MP_Harbor", + "https://cdn.gametools.network/maps/bf1/MP_Harbor_LandscapeLarge-d382c7ea.jpg", + ), + ( + "MP_Naval", + "https://cdn.gametools.network/maps/bf1/MP_Naval_LandscapeLarge-dc2e8daf.jpg", + ), + ( + "MP_Ridge", + "https://cdn.gametools.network/maps/bf1/MP_Ridge_LandscapeLarge-8c057a19.jpg", + ), + ( + "MP_Alps", + "https://cdn.gametools.network/maps/bf1/MP_Alps_LandscapeLarge-7ab30e3e.jpg", + ), + ( + "MP_Blitz", + "https://cdn.gametools.network/maps/bf1/MP_Blitz_LandscapeLarge-5e26212f.jpg", + ), + ( + "MP_Hell", + "https://cdn.gametools.network/maps/bf1/MP_Hell_LandscapeLarge-7176911c.jpg", + ), + ( + "MP_London", + "https://cdn.gametools.network/maps/bf1/MP_London_LandscapeLarge-0b51fe46.jpg", + ), + ( + "MP_Offensive", + "https://cdn.gametools.network/maps/bf1/MP_Offensive_LandscapeLarge-6dabdea3.jpg", + ), + ( + "MP_River", + "https://cdn.gametools.network/maps/bf1/MP_River_LandscapeLarge-21443ae9.jpg", + ), + // bfv + ( + "MP_ArcticFjell", + "https://cdn.gametools.network/maps/bfv/1080p_MP_ArcticFjell-df3c1290.jpg", + ), + ( + "MP_ArcticFjord", + "https://cdn.gametools.network/maps/bfv/1080p_MP_ArcticFjord-7ba29138.jpg", + ), + ( + "MP_Arras", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Arras-4b610505.jpg", + ), + ( + "MP_Devastation", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Devastation-623dea60.jpg", + ), + ( + "MP_Escaut", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Escaut-9764d1fb.jpg", + ), + ( + "MP_Foxhunt", + "https://cdn.gametools.network/maps/bfv/1080p_MP_AfricanFox-8ad380a5.jpg", + ), + ( + "MP_Halfaya", + "https://cdn.gametools.network/maps/bfv/1080p_MP_AfricanHalfaya-31165f9b.jpg", + ), + ( + "MP_Rotterdam", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Rotterdam-55632240.jpg", + ), + ( + "MP_Hannut", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Hannut-ebbe7197.jpg", + ), + ( + "MP_Crete", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Crete-304a202d.jpg", + ), + ( + "MP_Kalamas", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Kalamas-c64c8451.jpg", + ), + ( + "MP_Provence", + "https://cdn.gametools.network/maps/bfv/1080p_MP_ProvenceXL-a950ad3e.jpg", + ), + ( + "MP_SandAndSea", + "https://cdn.gametools.network/maps/bfv/1080p_MP_SandAndSea-f071e6f7.jpg", + ), + ( + "MP_Bunker", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Bunker-7b518876.jpg", + ), + ( + "MP_IwoJima", + "https://cdn.gametools.network/maps/bfv/1080p_MP_IwoJima-760850fc.jpg", + ), + ( + "MP_TropicIslands", + "https://cdn.gametools.network/maps/bfv/1080p_MP_TropicIslands-9e0a41c3.jpg", + ), + ( + "MP_WakeIsland", + "https://cdn.gametools.network/maps/bfv/1080p_MP_WakeIsland-3238b455.jpg", + ), + ( + "MP_Jungle", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Jungle-714218ce.jpg", + ), + ( + "MP_Libya", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Libya-bd54b090.jpg", + ), + ( + "MP_Norway", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Norway-7d6d6300.jpg", + ), + // bfv special maps + ( + "DK_Norway", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Norway-7d6d6300.jpg", + ), + ( + "MP_Escaut_US", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Escaut-9764d1fb.jpg", + ), + ( + "MP_Hannut_US", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Hannut-ebbe7197.jpg", + ), + ( + "MP_GOps_Chapter2_Arras", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Arras-4b610505.jpg", + ), + ( + "MP_WE_Fortress_Devastation", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Devastation-623dea60.jpg", + ), + ( + "MP_WE_Fortress_Halfaya", + "https://cdn.gametools.network/maps/bfv/1080p_MP_AfricanHalfaya-31165f9b.jpg", + ), + ( + "MP_WE_Grind_ArcticFjord", + "https://cdn.gametools.network/maps/bfv/1080p_MP_ArcticFjord-7ba29138.jpg", + ), + ( + "MP_WE_Grind_Devastation", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Devastation-623dea60.jpg", + ), + ( + "MP_WE_Grind_Escaut", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Escaut-9764d1fb.jpg", + ), + ( + "MP_WE_Grind_Rotterdam", + "https://cdn.gametools.network/maps/bfv/1080p_MP_Rotterdam-55632240.jpg", + ), + ]); + + let small_modes = HashMap::from([ + ("Conquest0", "CQ"), + ("Rush0", "RS"), + ("BreakThrough0", "SO"), + ("BreakthroughLarge0", "OP"), + ("Possession0", "WP"), + ("TugOfWar0", "FL"), + ("AirAssault0", "AA"), + ("Domination0", "DM"), + ("TeamDeathMatch0", "TM"), + ("ZoneControl0", "RS"), + ]); + + let mut current_server = None; + for server in status.servers { + let right_server = match &statics.server_name { + Some(server_name) => &server.name == server_name, + None => match &statics.server_id { + Some(server_id) => &server.id == server_id, + None => false, + }, + }; + + if right_server { + current_server = Some(server); + } + } + if current_server.is_none() { + anyhow::bail!(format!("Couldn't find server in serverlist!")) + } + let server = current_server.unwrap(); + + let internal_map = match Regex::new(r"[^\/]+$").unwrap().find(&server.map_name[..]) { + Some(location) => location.as_str(), + None => &server.map_name[..], + }; + + let server_info = format!( + "{}/{} - {}", + server.current_players, + server.max_players, + maps.get(internal_map).unwrap_or(&internal_map) + ); + // change game activity + ctx.set_activity(Some(ActivityData::playing(server_info))); + + let image_loc = gen_img( + small_modes.get(&server.game_mode[..]).unwrap_or(&""), + images.get(internal_map).unwrap_or(&internal_map), + ) + .await?; + + if update_avatar.add(chrono::Duration::minutes( + statics.mins_between_avatar_change.into(), + )) <= chrono::Utc::now() + { + // change avatar + let avatar = CreateAttachment::path(image_loc) + .await + .expect("Failed to read image"); + let mut user = ctx.cache.current_user().clone(); + let mut new_profile = EditProfile::new().avatar(&avatar); + if statics.set_banner_image { + let banner = CreateAttachment::path("./info_image.jpg") + .await + .expect("Failed to read banner image"); + new_profile = new_profile.banner(&banner); + } + if let Err(e) = user.edit(ctx.clone(), new_profile).await { + log::error!( + "Failed to set new avatar: {:?}\n adding timeout before retrying", + e + ); + // add official avatar timeout if discord avatar timeout is reached + update_avatar = chrono::Utc::now().add(chrono::Duration::minutes(5)); + } else { + update_avatar = chrono::Utc::now(); + }; + } + + Ok(update_avatar) } pub async fn gen_img(small_mode: &str, map_image: &str) -> Result {