__version__ = (1, 0, 2)
# *
# * $$\ $$\ $$\ $$\ $$\
# * $$ | \__| $$ | $$ | $$ |
# * $$$$$$$\ $$$$$$$\ $$\ $$$$$$\ $$$$$$\$$$$\ $$$$$$\ $$$$$$$ |$$\ $$\ $$ | $$$$$$\ $$$$$$$\
# * $$ _____|$$ __$$\ $$ |\_$$ _| $$ _$$ _$$\ $$ __$$\ $$ __$$ |$$ | $$ |$$ |$$ __$$\ $$ _____|
# * \$$$$$$\ $$ | $$ |$$ | $$ | $$ / $$ / $$ |$$ / $$ |$$ / $$ |$$ | $$ |$$ |$$$$$$$$ |\$$$$$$\
# * \____$$\ $$ | $$ |$$ | $$ |$$\ $$ | $$ | $$ |$$ | $$ |$$ | $$ |$$ | $$ |$$ |$$ ____| \____$$\
# * $$$$$$$ |$$ | $$ |$$ | \$$$$ |$$ | $$ | $$ |\$$$$$$ |\$$$$$$$ |\$$$$$$ |$$ |\$$$$$$$\ $$$$$$$ |
# * \_______/ \__| \__|\__| \____/ \__| \__| \__| \______/ \_______| \______/ \__| \_______|\_______/
# *
# *
# * © Copyright 2023
# *
# * https://t.me/shitmodules
# *
# 🔒 Code is licensed under CC-BY-NC-ND 4.0 unless otherwise specified.
# 🌐 https://creativecommons.org/licenses/by-nc-nd/4.0/
# You CANNOT edit this file without direct permission from the author.
# You can redistribute this file without any changes.
# scope: hikka_only
# scope: hikka_min 1.6.2
# meta pic: https://raw.githubusercontent.com/kamolgks/assets/main/FarmPA.jpg
# meta banner: https://raw.githubusercontent.com/kamolgks/assets/main/FarmPA.jpeg
# meta developer: @shitmodules
import asyncio
import logging
from hikkatl.types import Message # type: ignore
from .. import loader, utils # type: ignore
logging = logging.getLogger(__name__)
@loader.tds
class FarmPAMod(loader.Module):
"""
Module for automatic farming sm in Pipisa bot | PA -> PipisaBot by shitmodules.t.me
"""
strings = {
"name": "FarmPA",
"group_id": "Group ID",
"enable": "FarmPA successfully launched",
"disable": "FarmPA successfully stopped",
"loading": "Loading...",
"id_error": "No group id for farming. Use: .config FarmPA to enter group id.",
}
strings_ru = {
"group_id": "Айди группы",
"enable": "FarmPA успешно запущен",
"disable": "FarmPA успешно остановлен",
"loading": "Загрузка...",
"id_error": "Не указан айди группы для фарма. Используй: .config FarmPA для ввода ийди группы.",
}
strings_uz = {
"group_id": "Guruh ID-si",
"enable": "FarmPA muvaffaqiyatli ishga tushirildi",
"disable": "FarmPA muvaffaqiyatli to'xtatildi",
"loading": "Yuklanmoqda...",
"id_error": "Dehqonchilik uchun guruh identifikatori yo'q. Guruh identifikatorini kiritish uchun .config FarmPA dan foydalaning.",
}
strings_de = {
"group_id": "Gruppen-ID",
"enable": "FarmPA erfolgreich gestartet",
"disable": "FarmPA erfolgreich deaktiviert",
"loading": "Laden...",
"id_error": "Es gibt keine Gruppen-ID für die Landwirtschaft. Verwenden Sie .config FarmPA , um eine Gruppen-ID einzugeben.",
}
strings_es = {
"group_id": "Identificación del grupo",
"enable": "FarmPA se inició correctamente",
"disable": "FarmPA deshabilitado con éxito",
"loading": "Cargando...",
"id_error": "No hay ID de grupo para la agricultura. Usa .config FarmPA para ingresar una ID de grupo.",
}
def __init__(self):
self.config = loader.ModuleConfig(
loader.ConfigValue(
"group_id",
None,
lambda: self.strings["group_id"],
),
)
async def client_ready(self, client, db):
self._db = db
self._client = client
@loader.command(
ru_doc="Включить/отключить режим автоматического фарма для бота Pipisa.",
uz_doc="Pipisa boti uchun avtomatik dehqonchilik rejimini yoqadi/o‘chiradi.",
de_doc="Aktiviert/deaktiviert den Auto-Farming-Modus für den Pipisa-Bot.",
es_doc="Habilita/deshabilita el modo de cultivo automático para el bot Pipisa.",
)
async def dfarm(self, message: Message):
"""
Turns on/off automatic farming mode for the Pipisa bot.
"""
try:
status = self.db.get("farm_status", "status")
group_id = self.config["group_id"]
if not group_id:
await utils.answer(message, self.strings["id_error"])
return
if status:
self.db.set("farm_status", "status", False)
await utils.answer(message, self.strings["disable"])
else:
self.db.set("farm_status", "status", True)
await utils.answer(message, self.strings["enable"])
while self.db.get("farm_status", "status"):
await message.client.send_message(int(group_id), "/dick")
await asyncio.sleep(84600)
except Exception as e:
await utils.answer(message, f"Something went wrong..\nError: {e}\n\nIf the error persists, please report this error in the support chat: https://t.me/shitmodules_chat")
logging.info("An error has occurred")
@loader.command(
ru_doc="Команда .chatid показывает идентификатор чата.",
uz_doc=".chatid buyrug'i suhbat identifikatorini ko'rsatadi.",
de_doc="Der Befehl .chatid zeigt die Chat-ID an.",
es_doc="El comando .chatid muestra la identificación del chat.",
)
async def chatidcmd(self, message):
"""The .chatid command shows the chat ID."""
if message.is_private:
await message.edit("This is not a chat!")
return
args = utils.get_args_raw(message)
to_chat = None
try:
if args:
to_chat = int(args) if args.isdigit() else args
else:
to_chat = message.chat_id
except ValueError:
to_chat = message.chat_id
chat = await message.client.get_entity(to_chat)
await message.edit(
f"ID: {chat.id}"
)