rename message.go -> ennoblement_msg, cleanup in ennoblement_msg.go

This commit is contained in:
Dawid Wysokiński 2021-07-18 12:08:46 +02:00
parent 1153829a70
commit 9da466d526
2 changed files with 29 additions and 38 deletions

View File

@ -22,6 +22,11 @@ import (
"github.com/tribalwarshelp/dcbot/util/twutil" "github.com/tribalwarshelp/dcbot/util/twutil"
) )
const (
colorLostVillage = 0xff0000
colorConqueredVillage = 0x00ff00
)
var log = logrus.WithField("package", "cron") var log = logrus.WithField("package", "cron")
type Config struct { type Config struct {
@ -224,14 +229,13 @@ func (c *Cron) checkEnnoblements() {
g.Observations.Contains(obs.Server, ennoblement.NewOwner.Tribe.ID) { g.Observations.Contains(obs.Server, ennoblement.NewOwner.Tribe.ID) {
continue continue
} }
newMsgDataConfig := newMessageConfig{ newMsgDataConfig := newEnnoblementMsgConfig{
host: version.Host, host: version.Host,
server: obs.Server, server: obs.Server,
ennoblement: ennoblement, ennoblement: ennoblement,
t: messageTypeLost,
localizer: localizer, localizer: localizer,
} }
lostVillagesBldr.Append(newMessage(newMsgDataConfig).String()) lostVillagesBldr.Append(newEnnoblementMsg(newMsgDataConfig).String())
} }
} }
@ -244,21 +248,20 @@ func (c *Cron) checkEnnoblements() {
continue continue
} }
newMsgDataConfig := newMessageConfig{ newMsgDataConfig := newEnnoblementMsgConfig{
host: version.Host, host: version.Host,
server: obs.Server, server: obs.Server,
ennoblement: ennoblement, ennoblement: ennoblement,
t: messageTypeConquer,
localizer: localizer, localizer: localizer,
} }
conqueredVillagesBldr.Append(newMessage(newMsgDataConfig).String()) conqueredVillagesBldr.Append(newEnnoblementMsg(newMsgDataConfig).String())
} }
} }
} }
} }
timestamp := time.Now().Format(time.RFC3339) timestamp := time.Now().Format(time.RFC3339)
if g.ConqueredVillagesChannelID != "" && !conqueredVillagesBldr.IsEmpty() { if !conqueredVillagesBldr.IsEmpty() {
title := localizer.MustLocalize(&i18n.LocalizeConfig{ title := localizer.MustLocalize(&i18n.LocalizeConfig{
MessageID: message.CronConqueredVillagesTitle, MessageID: message.CronConqueredVillagesTitle,
}) })
@ -267,12 +270,12 @@ func (c *Cron) checkEnnoblements() {
discord. discord.
NewEmbed(). NewEmbed().
SetTitle(title). SetTitle(title).
SetColor(colorConqueredVillages). SetColor(colorConqueredVillage).
SetFields(conqueredVillagesBldr.ToMessageEmbedFields()). SetFields(conqueredVillagesBldr.ToMessageEmbedFields()).
SetTimestamp(timestamp)) SetTimestamp(timestamp))
} }
if g.LostVillagesChannelID != "" && !lostVillagesBldr.IsEmpty() { if !lostVillagesBldr.IsEmpty() {
title := localizer.MustLocalize(&i18n.LocalizeConfig{ title := localizer.MustLocalize(&i18n.LocalizeConfig{
MessageID: message.CronLostVillagesTitle, MessageID: message.CronLostVillagesTitle,
}) })
@ -281,7 +284,7 @@ func (c *Cron) checkEnnoblements() {
discord. discord.
NewEmbed(). NewEmbed().
SetTitle(title). SetTitle(title).
SetColor(colorLostVillages). SetColor(colorLostVillage).
SetFields(lostVillagesBldr.ToMessageEmbedFields()). SetFields(lostVillagesBldr.ToMessageEmbedFields()).
SetTimestamp(timestamp)) SetTimestamp(timestamp))
} }

View File

@ -10,17 +10,7 @@ import (
"github.com/tribalwarshelp/dcbot/util/twutil" "github.com/tribalwarshelp/dcbot/util/twutil"
) )
type messageType string type ennoblementMsg struct {
const (
messageTypeConquer messageType = "conquer"
messageTypeLost messageType = "lost"
colorLostVillages = 0xff0000
colorConqueredVillages = 0x00ff00
)
type checkEnnoblementsMsg struct {
t messageType
server string server string
village string village string
villageURL string villageURL string
@ -35,17 +25,15 @@ type checkEnnoblementsMsg struct {
localizer *i18n.Localizer localizer *i18n.Localizer
} }
type newMessageConfig struct { type newEnnoblementMsgConfig struct {
t messageType
host string host string
server string server string
ennoblement *twmodel.Ennoblement ennoblement *twmodel.Ennoblement
localizer *i18n.Localizer localizer *i18n.Localizer
} }
func newMessage(cfg newMessageConfig) checkEnnoblementsMsg { func newEnnoblementMsg(cfg newEnnoblementMsgConfig) ennoblementMsg {
data := checkEnnoblementsMsg{ msg := ennoblementMsg{
t: cfg.t,
server: cfg.server, server: cfg.server,
village: "-", village: "-",
oldOwnerName: "-", oldOwnerName: "-",
@ -55,30 +43,30 @@ func newMessage(cfg newMessageConfig) checkEnnoblementsMsg {
localizer: cfg.localizer, localizer: cfg.localizer,
} }
if !twutil.IsVillageNil(cfg.ennoblement.Village) { if !twutil.IsVillageNil(cfg.ennoblement.Village) {
data.village = cfg.ennoblement.Village.FullName() msg.village = cfg.ennoblement.Village.FullName()
data.villageURL = twurlbuilder.BuildVillageURL(cfg.server, cfg.host, cfg.ennoblement.Village.ID) msg.villageURL = twurlbuilder.BuildVillageURL(cfg.server, cfg.host, cfg.ennoblement.Village.ID)
} }
if !twutil.IsPlayerNil(cfg.ennoblement.OldOwner) { if !twutil.IsPlayerNil(cfg.ennoblement.OldOwner) {
data.oldOwnerName = cfg.ennoblement.OldOwner.Name msg.oldOwnerName = cfg.ennoblement.OldOwner.Name
data.oldOwnerURL = twurlbuilder.BuildPlayerURL(cfg.server, cfg.host, cfg.ennoblement.OldOwner.ID) msg.oldOwnerURL = twurlbuilder.BuildPlayerURL(cfg.server, cfg.host, cfg.ennoblement.OldOwner.ID)
} }
if !twutil.IsPlayerTribeNil(cfg.ennoblement.OldOwner) { if !twutil.IsPlayerTribeNil(cfg.ennoblement.OldOwner) {
data.oldOwnerTribeTag = cfg.ennoblement.OldOwner.Tribe.Tag msg.oldOwnerTribeTag = cfg.ennoblement.OldOwner.Tribe.Tag
data.oldOwnerTribeURL = twurlbuilder.BuildTribeURL(cfg.server, cfg.host, cfg.ennoblement.OldOwner.Tribe.ID) msg.oldOwnerTribeURL = twurlbuilder.BuildTribeURL(cfg.server, cfg.host, cfg.ennoblement.OldOwner.Tribe.ID)
} }
if !twutil.IsPlayerNil(cfg.ennoblement.NewOwner) { if !twutil.IsPlayerNil(cfg.ennoblement.NewOwner) {
data.newOwnerName = cfg.ennoblement.NewOwner.Name msg.newOwnerName = cfg.ennoblement.NewOwner.Name
data.newOwnerURL = twurlbuilder.BuildPlayerURL(cfg.server, cfg.host, cfg.ennoblement.NewOwner.ID) msg.newOwnerURL = twurlbuilder.BuildPlayerURL(cfg.server, cfg.host, cfg.ennoblement.NewOwner.ID)
} }
if !twutil.IsPlayerTribeNil(cfg.ennoblement.NewOwner) { if !twutil.IsPlayerTribeNil(cfg.ennoblement.NewOwner) {
data.newOwnerTribeTag = cfg.ennoblement.NewOwner.Tribe.Tag msg.newOwnerTribeTag = cfg.ennoblement.NewOwner.Tribe.Tag
data.newOwnerTribeURL = twurlbuilder.BuildTribeURL(cfg.server, cfg.host, cfg.ennoblement.NewOwner.Tribe.ID) msg.newOwnerTribeURL = twurlbuilder.BuildTribeURL(cfg.server, cfg.host, cfg.ennoblement.NewOwner.Tribe.ID)
} }
return data return msg
} }
func (msg checkEnnoblementsMsg) String() string { func (msg ennoblementMsg) String() string {
return msg.localizer.MustLocalize(&i18n.LocalizeConfig{ return msg.localizer.MustLocalize(&i18n.LocalizeConfig{
MessageID: message.CronCheckEnnoblementsMsgLine, MessageID: message.CronCheckEnnoblementsMsgLine,
TemplateData: map[string]interface{}{ TemplateData: map[string]interface{}{