2020-06-05 15:49:51 +00:00
|
|
|
package cron
|
|
|
|
|
2020-06-12 16:28:07 +00:00
|
|
|
import (
|
2021-05-06 12:42:37 +00:00
|
|
|
"github.com/tribalwarshelp/shared/tw/twmodel"
|
|
|
|
|
2021-07-17 15:22:36 +00:00
|
|
|
"github.com/tribalwarshelp/dcbot/util/twutil"
|
2020-06-12 16:28:07 +00:00
|
|
|
)
|
2020-06-05 15:49:51 +00:00
|
|
|
|
2021-05-06 12:42:37 +00:00
|
|
|
type ennoblements []*twmodel.Ennoblement
|
2020-06-05 15:49:51 +00:00
|
|
|
|
2021-05-06 12:42:37 +00:00
|
|
|
func (e ennoblements) getLastEnnoblement() *twmodel.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 {
|
2021-05-06 13:25:09 +00:00
|
|
|
if (!twutil.IsPlayerTribeNil(ennoblement.NewOwner) && ennoblement.NewOwner.Tribe.ID == tribeID) ||
|
|
|
|
twutil.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 {
|
2021-05-06 13:25:09 +00:00
|
|
|
if twutil.IsPlayerTribeNil(ennoblement.NewOwner) ||
|
2020-06-05 15:49:51 +00:00
|
|
|
ennoblement.NewOwner.Tribe.ID != tribeID ||
|
2021-05-06 13:25:09 +00:00
|
|
|
(!showInternals && !twutil.IsPlayerTribeNil(ennoblement.OldOwner) && ennoblement.OldOwner.Tribe.ID == tribeID) {
|
2020-06-05 15:49:51 +00:00
|
|
|
continue
|
|
|
|
}
|
|
|
|
filtered = append(filtered, ennoblement)
|
|
|
|
}
|
|
|
|
return filtered
|
|
|
|
}
|