From da376647affe8456c154501cbe7b27f2800b1458 Mon Sep 17 00:00:00 2001 From: Branden J Brown Date: Mon, 9 Mar 2026 13:48:28 -0400 Subject: [PATCH] horsebot: restore inherit indicators on skill names --- cmd/horsebot/skill.go | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/cmd/horsebot/skill.go b/cmd/horsebot/skill.go index d0e6e1a..959183f 100644 --- a/cmd/horsebot/skill.go +++ b/cmd/horsebot/skill.go @@ -29,13 +29,15 @@ func newSkillServer(skills []horse.Skill, groups []horse.SkillGroup) *skillServe for _, skill := range skills { s.skills[skill.ID] = skill s.byName[skill.Name] = skill.ID - s.autocom.Add(skill.Name, discord.AutocompleteChoiceString{Name: skill.Name, Value: skill.Name}) - if skill.UniqueOwner != "" { - if skill.Rarity >= 3 { - s.autocom.Add(skill.UniqueOwner, discord.AutocompleteChoiceString{Name: "Unique: " + skill.UniqueOwner, Value: skill.Name}) - } else { - s.autocom.Add(skill.UniqueOwner, discord.AutocompleteChoiceString{Name: "Inherited unique: " + skill.UniqueOwner, Value: skill.Name}) - } + switch { + case skill.UniqueOwner == "": + s.autocom.Add(skill.Name, discord.AutocompleteChoiceString{Name: skill.Name, Value: strconv.Itoa(int(skill.ID))}) + case skill.Rarity >= 3: + s.autocom.Add(skill.Name, discord.AutocompleteChoiceString{Name: skill.Name, Value: skill.Name}) + s.autocom.Add(skill.UniqueOwner, discord.AutocompleteChoiceString{Name: "Unique: " + skill.UniqueOwner, Value: strconv.Itoa(int(skill.ID))}) + default: + s.autocom.Add(skill.Name, discord.AutocompleteChoiceString{Name: skill.Name + " (Inherited)", Value: strconv.Itoa(int(skill.ID))}) + s.autocom.Add(skill.UniqueOwner, discord.AutocompleteChoiceString{Name: "Inherited unique: " + skill.UniqueOwner, Value: skill.Name}) } } for _, g := range groups { @@ -188,7 +190,11 @@ func (s *skillServer) render(id horse.SkillID) discord.ContainerComponent { if len(rel) > 1 { buttons := make([]discord.InteractiveComponent, 0, 4) for _, rs := range rel { - b := discord.NewSecondaryButton(rs.Name, fmt.Sprintf("/skill/swap/%d", rs.ID)) + name := rs.Name + if u := s.skills[rs.ID]; u.UniqueOwner != "" && u.Rarity == 1 { + name += " (Inherited)" + } + b := discord.NewSecondaryButton(name, fmt.Sprintf("/skill/swap/%d", rs.ID)) if rs.ID == id { b = b.AsDisabled() }