Vladimir Hodakov
c9855116da
As result of profile format change, introduced in game update yesterday we need to change profile regexp. As result of some refactoring, rarely changed data removed from database and added to sources of bot.
58 lines
1.5 KiB
Go
58 lines
1.5 KiB
Go
// i2_bot – Instinct PokememBro Bot
|
||
// Copyright (c) 2018 Vladimir "fat0troll" Hodakov
|
||
|
||
package datacache
|
||
|
||
import (
|
||
"errors"
|
||
"source.wtfteam.pro/i2_bot/i2_bot/lib/datamapping"
|
||
"strconv"
|
||
)
|
||
|
||
func (dc *DataCache) initLeagues() {
|
||
c.Log.Info("Initializing Leagues storage...")
|
||
dc.leagues = make(map[int]*datamapping.League)
|
||
}
|
||
|
||
func (dc *DataCache) loadLeagues() {
|
||
c.Log.Info("Load current Leagues data to DataCache...")
|
||
leagues := dc.getLeagues()
|
||
|
||
for i := range leagues {
|
||
dc.leagues[leagues[i].ID] = &leagues[i]
|
||
}
|
||
c.Log.Info("Loaded leagues in DataCache: " + strconv.Itoa(len(dc.leagues)))
|
||
}
|
||
|
||
func (dc *DataCache) getLeagues() []datamapping.League {
|
||
leagues := []datamapping.League{}
|
||
|
||
leagues = append(leagues, datamapping.League{1, "🈸", "ИНСТИНКТ"})
|
||
leagues = append(leagues, datamapping.League{2, "🈳 ", "МИСТИКА"})
|
||
leagues = append(leagues, datamapping.League{3, "🈵", "ОТВАГА"})
|
||
|
||
return leagues
|
||
}
|
||
|
||
// External functions
|
||
|
||
// GetLeagueByID returns league from datacache by ID
|
||
func (dc *DataCache) GetLeagueByID(leagueID int) (*datamapping.League, error) {
|
||
if dc.leagues[leagueID] != nil {
|
||
return dc.leagues[leagueID], nil
|
||
}
|
||
|
||
return nil, errors.New("There is no league with ID = " + strconv.Itoa(leagueID))
|
||
}
|
||
|
||
// GetLeagueBySymbol returns league from datacache by emoji
|
||
func (dc *DataCache) GetLeagueBySymbol(symbol string) (*datamapping.League, error) {
|
||
for i := range dc.leagues {
|
||
if dc.leagues[i].Symbol == symbol {
|
||
return dc.leagues[i], nil
|
||
}
|
||
}
|
||
|
||
return nil, errors.New("There is no league with symbol = " + symbol)
|
||
}
|