mirror of
https://github.com/natsukagami/youmubot.git
synced 2025-04-18 00:08:54 +00:00
Aesthetics change to embeds
- Beatmap drain time now shown in shorten state - Play embed uses thumbnail instead of image - User top play now show full stats
This commit is contained in:
parent
e5a74d87e1
commit
68da7c3f4d
2 changed files with 18 additions and 20 deletions
|
@ -328,21 +328,12 @@ impl<'a> ScoreEmbedBuilder<'a> {
|
|||
world_record,
|
||||
))
|
||||
.description(format!(
|
||||
r#"**Beatmap**: {} - {} [{}]**{} **
|
||||
**Links**: [[Listing]]({}) [[Download]]({}) [[Bloodcat]]({})
|
||||
**Played**: {}
|
||||
r#"**Played**: {}
|
||||
{}"#,
|
||||
b.artist,
|
||||
b.title,
|
||||
b.difficulty_name,
|
||||
s.mods,
|
||||
b.link(),
|
||||
b.download_link(false),
|
||||
b.download_link(true),
|
||||
s.date.format("<t:%s:R>"),
|
||||
pp_gained.as_ref().map(|v| &v[..]).unwrap_or(""),
|
||||
))
|
||||
.image(b.cover_url())
|
||||
.thumbnail(b.thumbnail_url())
|
||||
.field(
|
||||
"Score stats",
|
||||
format!(
|
||||
|
@ -361,8 +352,7 @@ impl<'a> ScoreEmbedBuilder<'a> {
|
|||
),
|
||||
true,
|
||||
)
|
||||
.field("Map stats", diff.format_info(mode, s.mods, b), false)
|
||||
.timestamp(&s.date);
|
||||
.field("Map stats", diff.format_info(mode, s.mods, b), false);
|
||||
let mut footer = self.footer.take().unwrap_or_else(String::new);
|
||||
if mode.to_oppai_mode().is_none() && s.mods != Mods::NOMOD {
|
||||
footer += " Star difficulty does not reflect game mods.";
|
||||
|
@ -450,12 +440,14 @@ pub(crate) fn user_embed(
|
|||
MessageBuilder::new().push_bold_safe(&map.title).build(),
|
||||
map.difficulty_name,
|
||||
map.link(),
|
||||
v.mods
|
||||
v.mods,
|
||||
))
|
||||
.push(format!(
|
||||
"{:.1}⭐ | `{}`",
|
||||
info.map(|i| i.stars as f64).unwrap_or(map.difficulty.stars),
|
||||
map.short_link(Some(mode), Some(v.mods))
|
||||
"> {}",
|
||||
map.difficulty
|
||||
.apply_mods(v.mods, info.map(|i| i.stars as f64))
|
||||
.format_info(mode, v.mods, &map)
|
||||
.replace("\n", "\n> ")
|
||||
))
|
||||
.build(),
|
||||
false,
|
||||
|
|
|
@ -3,7 +3,6 @@ use regex::Regex;
|
|||
use serde::{Deserialize, Serialize};
|
||||
use std::fmt;
|
||||
use std::time::Duration;
|
||||
use youmubot_prelude::Duration as YoumuDuration;
|
||||
|
||||
pub mod mods;
|
||||
pub mod parse;
|
||||
|
@ -136,8 +135,10 @@ impl Difficulty {
|
|||
let bpm = (self.bpm * 100.0).round() / 100.0;
|
||||
MessageBuilder::new()
|
||||
.push(format!(
|
||||
"[[Link]]({}) (`{}`)",
|
||||
"[[Link]]({}) [[DL]]({}) [[Alt]]({}) (`{}`)",
|
||||
original_beatmap.link(),
|
||||
original_beatmap.download_link(false),
|
||||
original_beatmap.download_link(true),
|
||||
original_beatmap.short_link(Some(mode), Some(mods))
|
||||
))
|
||||
.push(if three_lines { "\n" } else { ", " })
|
||||
|
@ -166,7 +167,12 @@ impl Difficulty {
|
|||
.push_bold(format!("{:.1}", self.hp))
|
||||
.push(format!(", BPM**{}**", bpm))
|
||||
.push(", ⌛ ")
|
||||
.push_bold(format!("{}", YoumuDuration(self.drain_length)))
|
||||
.push({
|
||||
let length = self.drain_length;
|
||||
let minutes = length.as_secs() / 60;
|
||||
let seconds = length.as_secs() % 60;
|
||||
format!("**{}:{:02}** (drain)", minutes, seconds)
|
||||
})
|
||||
.build()
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue