diff --git a/core.py b/core.py index f37140d..38616d7 100644 --- a/core.py +++ b/core.py @@ -99,6 +99,8 @@ workdir=config.SESS_FOLDER) steam_webapi = SteamWebAPI(config.STEAM_API_KEY, headers=config.REQUESTS_HEADERS) +MEOW_MEOW_MEOW_IN_A_ROW = 0 + def clear_from_deprecated_fields(cache: dict): for field in DEPRECATED_FIELDS: diff --git a/l10n/data/uk.json b/l10n/data/uk.json index f5f5ae9..15d4343 100644 --- a/l10n/data/uk.json +++ b/l10n/data/uk.json @@ -1,8 +1,8 @@ { - "lang": "🇺🇦 Український", + "lang": "🇺🇦 Українська", "bot_start_text": [ "👋🏼 Привітики, {}!", - "Цей бот призначенний для перевiрки кiлькостi гравцiв онлайн, доступнiсть серверiв Counter-Strike, та багато іншого", + "Цей бот призначенний для перевiрки кiлькостi гравцiв онлайн, доступнiсть серверiв Counter-Strike та багато іншого", "", "Для більшого використовуйте /help." ], @@ -275,11 +275,11 @@ "game_dropcaptimer_inline_title": "Оновлення обмежень", "game_dropcaptimer_inline_description": "Час до оновлення обмежень щотижневого досвіду та дропу", "game_dropcaptimer_text": "⏳ Час до оновлення обмежень щотижневого досвіду та дропу: {} д. {} год. {} хв. {} сек.", - "game_leaderboard_button_title": "Таблица лидеров CS2", + "game_leaderboard_button_title": "Таблица лідерів CS2", "game_leaderboard_world": "Світ", - "game_leaderboard_header_world": "Лучшие игроки CS2 по миру:", - "game_leaderboard_header_regional": "Лучшие игроки CS2 по этому региону:", - "game_leaderboard_detailed_link": "Полную таблицу лидеров, а также подробную статистику игроков можно посмотреть [тут]({}).", + "game_leaderboard_header_world": "Найкращі гравці CS2:", + "game_leaderboard_header_regional": "Найкращі гравці CS2 у цьому регіоні:", + "game_leaderboard_detailed_link": "Повну таблицю рейтингу ви можете подивитись [тут]({}).", "gun_button_text": "Дані о зброї", "gun_select_category": "#️⃣ Виберіть категорію, котра Вас цікавить:", "gun_pistols": "Пістолети", diff --git a/plugins/incs2chat.py b/plugins/incs2chat.py index 3d2846b..f505c1b 100644 --- a/plugins/incs2chat.py +++ b/plugins/incs2chat.py @@ -1,4 +1,5 @@ import asyncio +import datetime import json import logging import random @@ -13,6 +14,7 @@ import config +import core DISCORD_MESSAGE_LENGTH_LIMIT = 2000 @@ -88,8 +90,8 @@ def wrap_text(text: str, max_length: int) -> list[str]: def process_discord_text(message: Message) -> list[str]: text = (to_discord_markdown(message) if message.entities else message.caption if message.caption - else message.text if message.text - else '') + else message.text if message.text + else '') # fixme: can break formatting if wrapping happens in the middle of formatted section # fixme: (e.g. "**some [split] wise words**") @@ -287,8 +289,17 @@ async def filter_via_bot(_, message: Message): @Client.on_message(filters.chat(config.INCS2CHAT) & filters.sticker) -async def meow_meow_meow_meow(_, message: Message): +async def meow_meow_meow_meow(client: Client, message: Message): chance = random.randint(0, 100) if message.sticker.file_unique_id == 'AgADtD0AAu4r4Ug' and chance < 5: await message.reply('мяу мяу мяу мяу') + core.MEOW_MEOW_MEOW_IN_A_ROW += 1 + + if core.MEOW_MEOW_MEOW_IN_A_ROW == 3: # chance 0.05*0.05*0.05 = 0.000125 = 0.0125% = 1/10000 + syb_id = 802764912 + syb = await client.get_chat(syb_id) + await client.ban_chat_member(config.INCS2CHAT, + syb_id, + datetime.datetime.now() + datetime.timedelta(days=30)) # на 30 дней нормис + await message.reply(f'{syb.first_name} получил(а) VAC бан.')