hdkv
/
i2_bot
Archived
1
Fork 0
This repository has been archived on 2022-11-04. You can view files and clone it, but cannot push or open issues/pull-requests.
i2_bot/lib/dbmapping/profiles.go

40 lines
1.1 KiB
Go
Raw Normal View History

// i2_bot Instinct PokememBro Bot
// Copyright (c) 2017 Vladimir "fat0troll" Hodakov
package dbmapping
import (
2018-02-05 12:37:46 +04:00
"math"
2017-10-18 07:03:34 +04:00
"time"
)
// Profile is a struct, which represents `profiles` table item in database.
type Profile struct {
ID int `db:"id"`
PlayerID int `db:"player_id"`
2017-10-18 07:03:34 +04:00
Nickname string `db:"nickname"`
TelegramNickname string `db:"telegram_nickname"`
LevelID int `db:"level_id"`
2017-10-18 07:03:34 +04:00
Pokeballs int `db:"pokeballs"`
Wealth int `db:"wealth"`
PokememesWealth int `db:"pokememes_wealth"`
2017-10-18 07:03:34 +04:00
Exp int `db:"exp"`
EggExp int `db:"egg_exp"`
2017-10-18 07:03:34 +04:00
Power int `db:"power"`
WeaponID int `db:"weapon_id"`
2017-10-18 07:03:34 +04:00
Crystalls int `db:"crystalls"`
CreatedAt time.Time `db:"created_at"`
}
2018-02-05 12:37:46 +04:00
// FullExp returns exp points in summary, gained after registration
func (p *Profile) FullExp() int {
fullExp := 0.00
for i := 1; i < p.LevelID+1; i++ {
fullExp = fullExp + (100 * math.Pow(2.0, float64(i)))
}
fullExp += float64(p.Exp)
return int(fullExp)
}