2020-06-05 15:49:51 +00:00
|
|
|
package cron
|
|
|
|
|
2020-06-12 16:28:07 +00:00
|
|
|
import (
|
2020-08-09 15:20:23 +00:00
|
|
|
"github.com/tribalwarshelp/dcbot/utils"
|
2020-06-12 16:28:07 +00:00
|
|
|
shared_models "github.com/tribalwarshelp/shared/models"
|
|
|
|
)
|
2020-06-05 15:49:51 +00:00
|
|
|
|
2021-01-15 18:32:36 +00:00
|
|
|
type ennoblements []*shared_models.Ennoblement
|
2020-06-05 15:49:51 +00:00
|
|
|
|
2021-01-15 18:32:36 +00:00
|
|
|
func (e ennoblements) getLastEnnoblement() *shared_models.Ennoblement {
|
2020-06-12 16:28:07 +00:00
|
|
|
length := len(e)
|
|
|
|
if length <= 0 {
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
return e[length-1]
|
|
|
|
}
|
|
|
|
|
2020-06-18 12:51:31 +00:00
|
|
|
func (e ennoblements) getLostVillagesByTribe(tribeID int) ennoblements {
|
2020-06-05 15:49:51 +00:00
|
|
|
filtered := ennoblements{}
|
|
|
|
for _, ennoblement := range e {
|
2020-08-09 15:20:23 +00:00
|
|
|
if (!utils.IsPlayerTribeNil(ennoblement.NewOwner) && ennoblement.NewOwner.Tribe.ID == tribeID) ||
|
|
|
|
utils.IsPlayerTribeNil(ennoblement.OldOwner) ||
|
2020-06-05 15:49:51 +00:00
|
|
|
ennoblement.OldOwner.Tribe.ID != tribeID {
|
|
|
|
continue
|
|
|
|
}
|
|
|
|
filtered = append(filtered, ennoblement)
|
|
|
|
}
|
|
|
|
return filtered
|
|
|
|
}
|
|
|
|
|
2020-07-27 15:54:51 +00:00
|
|
|
func (e ennoblements) getConqueredVillagesByTribe(tribeID int, showInternals bool) ennoblements {
|
2020-06-05 15:49:51 +00:00
|
|
|
filtered := ennoblements{}
|
|
|
|
for _, ennoblement := range e {
|
2020-08-09 15:20:23 +00:00
|
|
|
if utils.IsPlayerTribeNil(ennoblement.NewOwner) ||
|
2020-06-05 15:49:51 +00:00
|
|
|
ennoblement.NewOwner.Tribe.ID != tribeID ||
|
2020-08-09 15:20:23 +00:00
|
|
|
(!showInternals && !utils.IsPlayerTribeNil(ennoblement.OldOwner) && ennoblement.OldOwner.Tribe.ID == tribeID) {
|
2020-06-05 15:49:51 +00:00
|
|
|
continue
|
|
|
|
}
|
|
|
|
filtered = append(filtered, ennoblement)
|
|
|
|
}
|
|
|
|
return filtered
|
|
|
|
}
|