Archived
1

Best pokememes for user listing

This commit is contained in:
Vladimir Hodakov
2017-10-13 03:52:04 +04:00
parent 25991e0839
commit d897d2c3f9
11 changed files with 129 additions and 13 deletions

View File

@@ -15,6 +15,7 @@ func (t *Talkers) HelpMessage(update tgbotapi.Update) {
help_message += "Текущая версия: *" + config.VERSION + "*\n\n"
help_message += "Список команд:\n\n"
help_message += "+ /me посмотреть свой сохраненный профиль в боте\n"
help_message += "+ /best посмотреть лучших покемонов для поимки\n"
help_message += "+ /pokedeks получить список известных боту покемемов\n"
help_message += "+ /help выводит данное сообщение\n"
help_message += "\n\n"

View File

@@ -95,7 +95,8 @@ func (t *Talkers) ProfileMessage(update tgbotapi.Update, player_raw dbmapping.Pl
}
message += "\n\n💳" + strconv.Itoa(player_raw.Telegram_id)
message += "\n⏰Последнее обновление профиля: " + profile_raw.Created_at.Format("02.01.2006 15:04:05")
message += "\n\nНе забывай обновляться, это важно для получения актуальной информации."
message += "\n\nНе забывай обновляться, это важно для получения актуальной информации.\n\n"
message += "/best посмотреть лучших покемемов для поимки"
msg := tgbotapi.NewMessage(update.Message.Chat.ID, message)
msg.ParseMode = "Markdown"

View File

@@ -12,7 +12,7 @@ func (t *Talkers) ProfileAddSuccessMessage(update tgbotapi.Update) {
message := "*Профиль успешно обновлен.*\n\n"
message += "Функциональность бота держится на актуальности профилей. Обновляйся почаще, и да пребудет с тобой Рандом!\n"
message += "Сохраненный профиль ты можешь просмотреть командой /me.\n\n"
message += " почаще как можно чаще, но не более 48 раз в сутки."
message += "/best посмотреть лучших покемемов для поимки"
msg := tgbotapi.NewMessage(update.Message.Chat.ID, message)
msg.ParseMode = "Markdown"

View File

@@ -0,0 +1,58 @@
// i2_bot Instinct PokememBro Bot
// Copyright (c) 2017 Vladimir "fat0troll" Hodakov
package talkers
import (
// stdlib
"log"
"strconv"
// 3rd party
"github.com/go-telegram-bot-api/telegram-bot-api"
// local
"../dbmapping"
)
func (t *Talkers) BestPokememesList(update tgbotapi.Update, player_raw dbmapping.Player) string {
pokememes, ok := c.Getters.GetBestPokememes(player_raw.Id)
if !ok {
log.Printf("Cannot get pokememes from getter!")
return "fail"
}
message := "*Лучшие покемемы для ловли*\n\n"
for i := range(pokememes) {
pk := pokememes[i].Pokememe
pk_l := pokememes[i].Locations
pk_e := pokememes[i].Elements
message += strconv.Itoa(pk.Grade) + "⃣ "
message += pk.Name + " (⚔"
message += c.Parsers.ReturnPoints(pk.Attack)
message += ", 🛡" + c.Parsers.ReturnPoints(pk.Defence) + ")"
for i := range(pk_e) {
message += pk_e[i].Symbol
}
message += " /pk" + strconv.Itoa(pk.Id) + "\n"
message += "Локации: "
for i := range(pk_l) {
message += pk_l[i].Symbol + pk_l[i].Name
if i + 1 < len(pk_l) {
message += ", "
}
}
message += "\nКупить: "
if pk.Purchaseable {
message += "💲" + c.Parsers.ReturnPoints(pk.Price * 3)
} else {
message += "Нельзя"
}
message += "\n\n"
}
msg := tgbotapi.NewMessage(update.Message.Chat.ID, message)
msg.ParseMode = "Markdown"
c.Bot.Send(msg)
return "ok"
}

View File

@@ -18,6 +18,7 @@ type TalkersInterface interface {
HelpMessage(update tgbotapi.Update)
PokememesList(update tgbotapi.Update, page int)
PokememeInfo(update tgbotapi.Update, player_raw dbmapping.Player) string
BestPokememesList(update tgbotapi.Update, player_raw dbmapping.Player) string
// Returns
PokememeAddSuccessMessage(update tgbotapi.Update)