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

167 lines
14 KiB
Go
Raw Normal View History

2017-10-04 17:56:18 +04:00
// i2_bot Instinct PokememBro Bot
// Copyright (c) 2017-2018 Vladimir "fat0troll" Hodakov
2017-10-04 17:56:18 +04:00
package talkers
import (
"time"
2018-03-01 11:31:39 +04:00
"github.com/go-telegram-bot-api/telegram-bot-api"
"source.wtfteam.pro/i2_bot/i2_bot/lib/config"
"source.wtfteam.pro/i2_bot/i2_bot/lib/constants"
"source.wtfteam.pro/i2_bot/i2_bot/lib/dbmapping"
2017-10-04 17:56:18 +04:00
)
2017-12-02 19:50:56 +04:00
// AcademyMessage gives user link to Bastion
func (t *Talkers) AcademyMessage(update *tgbotapi.Update, playerRaw *dbmapping.Player) string {
message := ""
if playerRaw.LeagueID > 1 {
message = "Иди нахуй, шпионское отродье"
} else if playerRaw.LeagueID == 0 {
message = "Заполни профиль и попробуй ещё раз"
} else {
message += "*Академия Инстинкта*\n"
message += "Чат для обучения новичков предумростям игры расположен по ссылке: https://t.me/joinchat/G2vME04jk02v2etRmumylg"
}
2017-12-02 19:50:56 +04:00
c.Sender.SendMarkdownAnswer(update, message)
2017-12-02 19:50:56 +04:00
return constants.UserRequestSuccess
2017-12-02 19:50:56 +04:00
}
// BastionMessage gives user link to Bastion
func (t *Talkers) BastionMessage(update *tgbotapi.Update, playerRaw *dbmapping.Player) string {
message := ""
if playerRaw.LeagueID > 1 {
message = "Иди нахуй, шпионское отродье"
} else if playerRaw.LeagueID == 0 {
message = "Заполни профиль и попробуй ещё раз"
} else {
message += "*Бастион Инстинкта*\n"
message += "Общий чат лиги расположен по ссылке: https://t.me/joinchat/G2vME0mIX-QHjjxE\\_JBzoQ"
}
2017-12-02 19:50:56 +04:00
c.Sender.SendMarkdownAnswer(update, message)
return constants.UserRequestSuccess
2017-12-02 19:50:56 +04:00
}
// GamesMessage gives user link to Bastion
func (t *Talkers) GamesMessage(update *tgbotapi.Update, playerRaw *dbmapping.Player) string {
message := ""
if playerRaw.LeagueID > 1 {
message = "Иди нахуй, шпионское отродье"
} else if playerRaw.LeagueID == 0 {
message = "Заполни профиль и попробуй ещё раз"
} else {
message += "*Игровой чат Инстинкта*\n"
message += "Чат для игр в различные Телеграм-игрушки: https://t.me/joinchat/AAkt5E6bs\\_tGNybxbFMAxA"
}
c.Sender.SendMarkdownAnswer(update, message)
return constants.UserRequestSuccess
}
// HelpMessage gives user all available commands
func (t *Talkers) HelpMessage(update *tgbotapi.Update, playerRaw *dbmapping.Player) string {
message := "*Бот Инстинкта Enhanced.*\n\n"
message += "Текущая версия: *" + config.VERSION + "*\n\n"
2017-10-22 14:04:14 +04:00
message += "Список команд\n\n"
message += "\\* /me посмотреть свой сохраненный профиль в боте\n"
message += "\\* /best посмотреть 5 лучших покемонов для поимки\n"
message += "\\* /advice посмотреть 5 самых дорогих покемонов для поимки\n"
message += "\\* /best\\_all посмотреть всех лучших покемонов для поимки\n"
message += "\\* /advice\\_all посмотреть всех самых дорогих покемонов для поимки\n"
if playerRaw.CreatedAt.Before(time.Now().Add(30 * 24 * 60 * 60 * time.Second)) {
message += "\\* /best\\_nofilter посмотреть пять лучших покемонов для поимки _без фильтра по элементам_ (полезно для сборки максимально топовой руки на высоком уровне)\n"
}
2018-02-05 12:37:46 +04:00
message += "\\* /top — топ игроков лиги\n"
message += "\\* /top\\_my — топ игроков лиги твоего уровня\n"
message += "\\* /pokedeks получить список известных боту покемемов\n"
message += "\\* /reminders — настроить оповещения на Турнир лиг\n"
message += "\\* /academy — Академия Инстинкта\n"
message += "\\* /bastion — Бастион Инстинкта\n"
message += "\\* /games\\_chat — Игровой чат Инстинкта\n"
2018-03-06 21:38:25 +04:00
message += "\\* /faq — получить ответы на часто задаваемые вопросы\n"
if c.Users.PlayerBetterThan(playerRaw, "admin") {
message += "\\* /send\\_all _текст_ — отправить сообщение всем пользователям бота\n"
message += "\\* /send\\_league _текст_ — отправить сообщение всем пользователям бота, у которых профиль лиги Инстинкт\n"
message += "\\* /chats — получить список групп, в которых работает бот.\n"
message += "\\* /squads — получить список отрядов.\n"
message += "\\* /pin _номера чатов_ _текст_ — отправить сообщение в чаты с номерами. Сообщение будет автоматичекси запинено. Пример: \"/pin 2,3,5 привет мир\". Внимание: между номерами чатов ставятся запятые без пробелов! Всё, что идёт после второго пробела в команде — сообщение\n"
message += "\\* /pin\\_all _текст_ — отправить сообщение во все группы, где находится бот. Сообщение будет автоматически запинено.\n"
message += "\\* /orders — просмотреть приказы на атаку\n"
}
if c.Users.PlayerBetterThan(playerRaw, "academic") {
message += "\\* /users — просмотреть зарегистрированных пользователей бота\n"
message += "\\* /find\\_level _цифра_ — показать всех игроков соответствующего уровня. Учитываются профили за 72 часа\n"
message += "\\* /find\\_user _строка_ — найти игрока в боте по его нику или имени. Ник ищется без собачки в начале\n"
2017-10-22 14:04:14 +04:00
}
message += "\\* /help выводит данное сообщение\n"
2017-10-22 14:04:14 +04:00
message += "\n\n"
message += "Техническая поддержка бота: https://t.me/joinchat/AAkt5EgFBU9Q9iXJMvDG6A\n"
2018-03-01 11:33:18 +04:00
message += "\n*Благодарности*:\n"
2018-03-01 11:31:39 +04:00
message += "Для поддержания сервера и его стабильной оплаты нужны средства. К сожалению, далеко не всегда они находятся в нужный момент, но всегда есть люди, готовые помочь. Я благодарю их за поддержку:\n\n"
2018-03-05 09:29:41 +04:00
message += "\\* @Lenorag\n"
message += "\\* @vanushinvi\n"
message += "\\* @TechniqueOne\n"
message += "\\* @Antropophag\n"
2018-03-01 12:24:52 +04:00
message += "\\* @nokio404\n"
2018-03-01 11:31:39 +04:00
message += "Выразить благодарность и попасть в список: 4377 7300 0246 7362\n"
message += "_Топ ранжируется по размеру благодарности. Здесь может быть ваша реклама!_"
2017-10-04 17:56:18 +04:00
c.Sender.SendMarkdownAnswer(update, message)
return constants.UserRequestSuccess
2017-10-04 17:56:18 +04:00
}
2017-12-03 14:37:54 +04:00
2018-03-06 21:38:25 +04:00
// FAQMessage prints frequently asked questions
func (t *Talkers) FAQMessage(update *tgbotapi.Update) string {
message := "*Часто задаваемые вопросы:*\n\n"
message += "💎Кристаллы\n"
message += "_Зачем тут донатить?_\n"
2018-03-06 21:41:38 +04:00
message += "Самое полезное на начальных уровнях это:\n1. Увеличение лимита ⭕️покеболов до 24 за 100💎\n2. Турболовля за 20💎, покеболы приходят не раз в час, а каждые 40 секунд, время действия турболовли 30 минут, за это время ты получишь 45 покеболов. Охота также ускоряется: вместо 2 минут, охота длится 40 секунд.\n"
2018-03-06 21:38:25 +04:00
message += "_Где и как задонатить?_\n"
message += "В игровом боте напиши /crystalls и перейди по выданной ссылке. Стоимость кристаллов зависит от количества: чем больше ты их купишь за один раз, тем дешевле они обойдутся (от 3 до 10 рублей за 1💎). Если это твой первый донат, то купленное тобой количество кристаллов удвоится. Имеет смысл в первый раз закупать большое количество!\n\n"
message += "⭕️Покеболы\n"
message += "_Как увеличить лимит покеболов?_\n"
2018-03-06 21:48:43 +04:00
message += "Вариантов несколько:\n1. Купить увеличение лимита покеболов до 24 за 100💎\n2. За каждый 30 покемем в покедексе ты получишь +1 к лимиту покеболов\n3. Отправь игровому боту /spam и получи ссылку. Каждый новый игрок получивший 2 уровень и пришедший по твоей ссылке принесет тебе 1 покебол и увеличение лимита покеболов на 1.\n4. Перейти по ссылке: https://telegram.me/storebot?start=pokemembrobot, оставить отзыв и переслать переписку с @storebot в тех поддержку игры @PBhelp\nТак как за кристаллы ты увеличиваешь лимит покеболов не НА 24, а ДО 24, имеет смысл купить увеличение как можно раньше.\n"
2018-03-06 21:38:25 +04:00
message += "_Какой лимит покеболов самый оптимальный?_\n"
message += "Как показывает практика, лучший лимит (но и самый труднодостижимый) — 90 шаров. Достигнув его и заполнив целиком, вы сможете, запустив ТурбоЛовлю, сходить на 45 охот подряд.\n\n"
message += "🐱Покемемы\n"
message += "_Я поймал второго покемона, но не могу его взять в руку, почему?_\n"
message += "Покемоны 4 и более уровней не могут повторяться в руке (т.е. должны быть разными).\n"
message += "_А щит на покемемах что дает?_\n"
message += "Чтобы поймать покемема с щитом, тебе нужно иметь атаку больше их щита.\n"
message += "_Что такое MP?_\n"
message += "Пока не знаем (в игре не используется).\n"
message += "_Есть смысл дальше вкачивать покемемы?_\n"
message += "/best\\_all поможет сориентироваться, хватает ли тебе атаки на топового покемема твоего уровня, или нет.\n"
message += "_Какие покемоны для меня топ? Где ловить топов?_\n"
message += "/best, /best\\_all\n"
message += "_Что значат перед названием покемема ромбы?_\n"
message += "🔸- Илитный: +15% ⚔️ атака. Максимальный уровень - 8.\n🔶- Супер Илитный: +25% ⚔️ атака. Максимальный уровень - 10.\n🔹- Либераха: +10% ⚔️ атаки покемемам с теми же элементами, что у Либерахи. Максимальный уровень - 8.\n🔷- Супер Либераха: +20% атаки покемемам с теми же элементами, что у Супер Либерахи. Максимальный уровень - 10.\n\n"
message += "🥚 Яйца\n"
message += "_Что такое яйцо и зачем оно?_\n"
message += "Яйцо — это бонус, который ты получаешь в битвах лиг, из яйца дают покемема твоей стихии и на 1 грейд больше твоего лвла (максимум 9го), так же яйцо можно получить за ежедневную активность.\n"
message += "_Сколько яиц я получу в битве?_\n"
message += "1 яйцо за участие в бою, +2 яйца если мы проиграем и красным и синим. А также по +2 яйца если выиграем за явным преимуществом, если оппоненты выставят против нас в 20 раз меньше атаки. Максимум можно получить по 5 яиц с битвы.\n"
message += "_Если у меня яйцо 96/96 и я, не открывая его апну лвл - оно станет 96/192 или 0/192?_\n"
message += "Яйца остаются, увеличивается необходимое количество для открытия, в твоем случае станет 96/192\n"
message += "_Если не открывать 🥚яйцо, когда оно наберется до нужного количества, оно не будет дальше расти?_\n"
message += "Не будет."
c.Sender.SendMarkdownAnswer(update, message)
2017-12-03 14:37:54 +04:00
return constants.UserRequestSuccess
2017-12-03 14:37:54 +04:00
}