feat: add help inform messages for bot commands and improve error handling in player data fetching

This commit is contained in:
lixiangwuxian
2024-12-28 22:32:05 +08:00
parent ff8d077f1c
commit a1fcfe4366
3 changed files with 61 additions and 52 deletions

View File

@@ -141,18 +141,18 @@ type ModifierValues struct {
}
type Player struct {
ID string `json:"id"`
Name string `json:"name"`
Platform string `json:"platform"`
Avatar string `json:"avatar"`
Country string `json:"country"`
Alias *string `json:"alias"`
Bot bool `json:"bot"`
Pp float64 `json:"pp"`
Rank int `json:"rank"`
CountryRank int `json:"countryRank"`
Role string `json:"role"`
Socials *string `json:"socials"`
ID string `json:"id"`
Name string `json:"name"`
Platform string `json:"platform"`
Avatar string `json:"avatar"`
Country string `json:"country"`
Alias *string `json:"alias"`
Bot bool `json:"bot"`
Pp float64 `json:"pp"`
Rank int `json:"rank"`
CountryRank int `json:"countryRank"`
Role string `json:"role"`
// Socials *string `json:"socials"`
ContextExtensions *string `json:"contextExtensions"`
}
@@ -238,43 +238,43 @@ func timeConvert(duration time.Duration) string {
// ScoreStats 存储分数统计信息
type PlayerData struct {
MapperID int `json:"mapperId"`
Banned bool `json:"banned"`
Inactive bool `json:"inactive"`
BanDescription *string `json:"banDescription"`
ExternalProfileURL string `json:"externalProfileUrl"`
RichBioTimeset int64 `json:"richBioTimeset"`
SpeedrunStart int64 `json:"speedrunStart"`
LinkedIDs LinkedIDs `json:"linkedIds"`
History *string `json:"history"`
Badges []string `json:"badges"`
PinnedScores *string `json:"pinnedScores"`
Changes []Change `json:"changes"`
AccPp float64 `json:"accPp"`
PassPp float64 `json:"passPp"`
TechPp float64 `json:"techPp"`
ScoreStats ScoreStats `json:"scoreStats"`
LastWeekPp float64 `json:"lastWeekPp"`
LastWeekRank int `json:"lastWeekRank"`
LastWeekCountryRank int `json:"lastWeekCountryRank"`
ExtensionID int `json:"extensionId"`
ID string `json:"id"`
Name string `json:"name"`
Platform string `json:"platform"`
Avatar string `json:"avatar"`
Country string `json:"country"`
Alias *string `json:"alias"`
Bot bool `json:"bot"`
Pp float64 `json:"pp"`
Rank int `json:"rank"`
CountryRank int `json:"countryRank"`
Role string `json:"role"`
Socials []string `json:"socials"`
ContextExtensions *string `json:"contextExtensions"`
PatreonFeatures *string `json:"patreonFeatures"`
ProfileSettings ProfileSettings `json:"profileSettings"`
ClanOrder string `json:"clanOrder"`
Clans []string `json:"clans"`
MapperID int `json:"mapperId"`
Banned bool `json:"banned"`
Inactive bool `json:"inactive"`
BanDescription *string `json:"banDescription"`
ExternalProfileURL string `json:"externalProfileUrl"`
RichBioTimeset int64 `json:"richBioTimeset"`
SpeedrunStart int64 `json:"speedrunStart"`
LinkedIDs LinkedIDs `json:"linkedIds"`
History *string `json:"history"`
Badges []string `json:"badges"`
PinnedScores *string `json:"pinnedScores"`
Changes []Change `json:"changes"`
AccPp float64 `json:"accPp"`
PassPp float64 `json:"passPp"`
TechPp float64 `json:"techPp"`
ScoreStats ScoreStats `json:"scoreStats"`
LastWeekPp float64 `json:"lastWeekPp"`
LastWeekRank int `json:"lastWeekRank"`
LastWeekCountryRank int `json:"lastWeekCountryRank"`
ExtensionID int `json:"extensionId"`
ID string `json:"id"`
Name string `json:"name"`
Platform string `json:"platform"`
Avatar string `json:"avatar"`
Country string `json:"country"`
Alias *string `json:"alias"`
Bot bool `json:"bot"`
Pp float64 `json:"pp"`
Rank int `json:"rank"`
CountryRank int `json:"countryRank"`
Role string `json:"role"`
// Socials []string `json:"socials"`
ContextExtensions *string `json:"contextExtensions"`
PatreonFeatures *string `json:"patreonFeatures"`
ProfileSettings ProfileSettings `json:"profileSettings"`
ClanOrder string `json:"clanOrder"`
Clans []string `json:"clans"`
}
type LinkedIDs struct {