from telegram import Update, ReplyKeyboardMarkup, InlineKeyboardButton, InlineKeyboardMarkup from telegram.ext import Updater, CommandHandler, MessageHandler, Filters, CallbackContext, CallbackQueryHandler import logging import random logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', level=logging.INFO) logger = logging.getLogger(__name__) def start(update: Update, context: CallbackContext) -> None: reply_keyboard = [["ГРЕШНАЯ ЖИЗНЬ/SINFUL LIFE", "НИЧТО НЕ ВЕЧНО/NOTHING IS FOREVER"], ["АНАНАСОВЫЙ ЭКСПРЕСС/PINEAPPLE EXPRESS", "ИЗМЕНЁННАЯ СУДЬБА/ALTERED DESTINY"], ["АЛЫЙ ЗАКОН/SCARLET LAW", "F.I.L.F. 2"], ["НАСТОЛЬНЫЙ БОРНСТАР/TABLETOP BORNSTAR", "НЕГАТИВНЫЕ ПОСЛЕДСТВИЯ/ADVERSE EFFECTS"]] markup = ReplyKeyboardMarkup(reply_keyboard, one_time_keyboard=True) update.message.reply_text('Пожалуйста, выберите:', reply_markup=markup) def button(update: Update, context: CallbackContext) -> None: text = update.message.text if text == "ГРЕШНАЯ ЖИЗНЬ/SINFUL LIFE" or text == "НИЧТО НЕ ВЕЧНО/NOTHING IS FOREVER" or text == "АНАНАСОВЫЙ ЭКСПРЕСС/PINEAPPLE EXPRESS" or text == "ИЗМЕНЁННАЯ СУДЬБА/ALTERED DESTINY" or text == "АЛЫЙ ЗАКОН/SCARLET LAW" or text == "F.I.L.F. 2" or text == "НАСТОЛЬНЫЙ БОРНСТАР/TABLETOP BORNSTAR" or text == "НЕГАТИВНЫЕ ПОСЛЕДСТВИЯ/ADVERSE EFFECTS": if text == "ГРЕШНАЯ ЖИЗНЬ/SINFUL LIFE": reply_keyboard = [[InlineKeyboardButton("Скачать", url='https://mega.nz/file/V7Y2wIBb#aJOVs0l5LU_8eH-S3_7rGqVSiOMvlXhwEpSYOl6iSY4'), InlineKeyboardButton("Назад", callback_data='1')], [InlineKeyboardButton("Поддержать меня", url='https://boosty.to/milashkaper/donate')]] markup = InlineKeyboardMarkup(reply_keyboard) update.message.reply_text("Прогрес перевода: \n• Перевод 7 Episode - 100%(Done) \n• Перевод 8 Episode - 100%(Done)", reply_markup=markup) elif text == "НИЧТО НЕ ВЕЧНО/NOTHING IS FOREVER": reply_keyboard = [[InlineKeyboardButton("Скачать", url='https://mega.nz/file/h34B0aJT#--qpGkfY6KBdFdg9eU1Qmhw96ispsjFCbzsXLnsnIqA'), InlineKeyboardButton("Назад", callback_data='1')], [InlineKeyboardButton("Поддержать меня", url='https://boosty.to/milashkaper/donate')]] markup = InlineKeyboardMarkup(reply_keyboard) update.message.reply_text("Прогрес перевода:\n• Перевод 1 Episode - 100%(Done)\n• Перевод 2 Episode - 100%(Done)\n• Перевод 3 Episode - 0%\n• Перевод 4 Episode - 0%\n• Перевод 5 Episode - 0%\n• Перевод 6 Episode - 0%", reply_markup=markup) elif text == "АНАНАСОВЫЙ ЭКСПРЕСС/PINEAPPLE EXPRESS": reply_keyboard = [[InlineKeyboardButton("Скачать", url='https://mega.nz/file/piJlSKYa#p_cTWs8L4eez7THX2_tEPxg5YZIidvcP2SuM6pCf0n0'), InlineKeyboardButton("Назад", callback_data='1')], [InlineKeyboardButton("Поддержать меня", url='https://boosty.to/milashkaper/donate')]] markup = InlineKeyboardMarkup(reply_keyboard) update.message.reply_text("Прогрес перевода:\n• Перевод v0.55 - 100%(Done)\n• Перевод v0.65 - 100%(Done)", reply_markup=markup) elif text == "ИЗМЕНЁННАЯ СУДЬБА/ALTERED DESTINY": reply_keyboard = [[InlineKeyboardButton('Скачать', callback_data='2'), InlineKeyboardButton("Назад", callback_data='1')], [InlineKeyboardButton("Поддержать меня", url='https://boosty.to/milashkaper/donate')]] markup = InlineKeyboardMarkup(reply_keyboard) update.message.reply_text("Прогрес перевода:\n• Перевод v0.05C - 0%", reply_markup=markup) elif text == "АЛЫЙ ЗАКОН/SCARLET LAW": reply_keyboard = [[InlineKeyboardButton('Скачать', callback_data='2'), InlineKeyboardButton("Назад", callback_data='1')], [InlineKeyboardButton("Поддержать меня", url='https://boosty.to/milashkaper/donate')]] markup = InlineKeyboardMarkup(reply_keyboard) update.message.reply_text("Прогрес перевода:\n• Перевод v0.3.13 - 81%", reply_markup=markup) elif text == "F.I.L.F. 2": reply_keyboard = [[InlineKeyboardButton("Скачать", url='https://mega.nz/file/s7QjgISS#dFVFFQ9dqjnGv56QbNf8S_6Hwju6YbpIzkgxQEuz_7Q'), InlineKeyboardButton("Назад", callback_data='1')], [InlineKeyboardButton("Поддержать меня", url='https://boosty.to/milashkaper/donate')]] markup = InlineKeyboardMarkup(reply_keyboard) update.message.reply_text("Прогрес перевода:\n• Перевод v0.01A - 100%(Done)", reply_markup=markup) elif text == "НАСТОЛЬНЫЙ БОРНСТАР/TABLETOP BORNSTAR": reply_keyboard = [[InlineKeyboardButton('Скачать', callback_data='2'), InlineKeyboardButton("Назад", callback_data='1')], [InlineKeyboardButton("Поддержать меня", url='https://boosty.to/milashkaper/donate')]] markup = InlineKeyboardMarkup(reply_keyboard) update.message.reply_text("Прогрес перевода:\n• Перевод v0.57 - 5%", reply_markup=markup) elif text == "НЕГАТИВНЫЕ ПОСЛЕДСТВИЯ/ADVERSE EFFECTS": reply_keyboard = [[InlineKeyboardButton('Скачать', callback_data='2'), InlineKeyboardButton("Назад", callback_data='1')], [InlineKeyboardButton("Поддержать меня", url='https://boosty.to/milashkaper/donate')]] markup = InlineKeyboardMarkup(reply_keyboard) update.message.reply_text("Прогрес перевода:\n• Перевод FINAL - 0%", reply_markup=markup) else: reply_keyboard = [["ГРЕШНАЯ ЖИЗНЬ/SINFUL LIFE", "НИЧТО НЕ ВЕЧНО/NOTHING IS FOREVER"], ["АНАНАСОВЫЙ ЭКСПРЕСС/PINEAPPLE EXPRESS", "ИЗМЕНЁННАЯ СУДЬБА/ALTERED DESTINY"], ["АЛЫЙ ЗАКОН/SCARLET LAW", "F.I.L.F. 2"], ["НАСТОЛЬНЫЙ БОРНСТАР/TABLETOP BORNSTAR", "НЕГАТИВНЫЕ ПОСЛЕДСТВИЯ/ADVERSE EFFECTS"]] markup = ReplyKeyboardMarkup(reply_keyboard, one_time_keyboard=True) update.message.reply_text("Извините я вас не понял. \nПожалуйста выберите:", reply_markup=markup) def download(update: Update, context: CallbackContext) -> None: query = update.callback_query query.answer() if query.data == '1': random_number = random.random() reply_keyboard = [["ГРЕШНАЯ ЖИЗНЬ/SINFUL LIFE", "НИЧТО НЕ ВЕЧНО/NOTHING IS FOREVER"], ["АНАНАСОВЫЙ ЭКСПРЕСС/PINEAPPLE EXPRESS", "ИЗМЕНЁННАЯ СУДЬБА/ALTERED DESTINY"], ["АЛЫЙ ЗАКОН/SCARLET LAW", "F.I.L.F. 2"], ["НАСТОЛЬНЫЙ БОРНСТАР/TABLETOP BORNSTAR", "НЕГАТИВНЫЕ ПОСЛЕДСТВИЯ/ADVERSE EFFECTS"]] rreply_keyboard = [[InlineKeyboardButton('Поддержать переводчика', url='https://boosty.to/milashkaper/donate')]] mmarkup = InlineKeyboardMarkup(rreply_keyboard) markup = ReplyKeyboardMarkup(reply_keyboard, one_time_keyboard=True) query.message.reply_text("Пожалуйста выберите:", reply_markup=markup) if random_number < 0.45: query.message.reply_text("Может быть интересно", reply_markup=mmarkup) else: pass elif query.data == '2': reply_keyboard = [[InlineKeyboardButton('Назад', callback_data='1')], [InlineKeyboardButton('Ускорить перевод', url='https://boosty.to/milashkaper/donate')]] markup = InlineKeyboardMarkup(reply_keyboard) query.edit_message_text("Перевод пока не готов", reply_markup=markup) def error(update, context): logger.warning('Update "%s" caused error "%s"', update, context.error) def main() -> None: updater = Updater("6904406394:AAG_s5HCOsdCk8VUtZ0wj7MGG6cReVMT4RQ", use_context=True) dp = updater.dispatcher dp.add_handler(CommandHandler('start', start)) dp.add_handler(MessageHandler(Filters.text & ~Filters.command, button)) dp.add_handler(CallbackQueryHandler(download)) dp.add_error_handler(error) updater.start_polling() updater.idle() if __name__ == '__main__': main()