Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var DefaultCivConfig = CivConfig{ NumBans: 1, NumPicks: 3, NumRepicks: 3, UseFilthyTiers: false, }
DefaultCivConfig holds the default values for a CivConfig. This value is used when a new CivSession is created.
Functions ¶
Types ¶
type CivBotTestData ¶
type CivBotTestData struct { Players []*discordgo.User CS *CivSession CSWithPlayers *CivSession CSWithPlayersAndBans *CivSession CSWithPlayersBansAndPicks *CivSession }
CivBotTestData contains data to use in automated tests.
func NewTestData ¶
func NewTestData() *CivBotTestData
NewTestData returns a fresh instance of CivBotTestData to use in tests.
type CivSession ¶
type CivSession struct { Config *CivConfig Clock clock.Clock Players []*discordgo.User PlayerMap map[string]*discordgo.User Civs []*civ.Civ CivMap map[constants.CivKey]*civ.Civ Bans map[string][]*civ.Civ Picks map[string][]*civ.Civ PickTime time.Time RePickVotes int RePicksRemaining int }
CivSession holds data for a single civ-bot session.
func NewCivSession ¶
func NewCivSession() *CivSession
NewCivSession returns a new CivSession, note map fields are initialized to empty zero lengtrh maps.
func (*CivSession) CommandsHandler ¶
func (cs *CivSession) CommandsHandler(s *discordgo.Session, m *discordgo.MessageCreate)
CommandsHandler handles all civ-bot commands.
func (*CivSession) FormatBans ¶
func (cs *CivSession) FormatBans() string
FormatBans returns a string for the CivSession's Bans in a readable format.
func (*CivSession) ReactionsHandler ¶
func (cs *CivSession) ReactionsHandler(s *discordgo.Session, r *discordgo.MessageReactionAdd)
ReactionsHandler handles all civ-bot related reactions.
func (*CivSession) Reset ¶
func (cs *CivSession) Reset()
Reset clears the CivSession referenced by the pointer receiver to the func, and maintains the CivConfig.