mirror of
https://github.com/MuRuLOSE/limoka.git
synced 2026-06-16 14:34:17 +02:00
Commited backup
This commit is contained in:
46
Sad0ff/modules-ftg/DownloadYT.py
Normal file
46
Sad0ff/modules-ftg/DownloadYT.py
Normal file
@@ -0,0 +1,46 @@
|
||||
from .. import loader, utils
|
||||
import functools
|
||||
from telethon import events
|
||||
import logging
|
||||
import pytube
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
def register(cb):
|
||||
cb(DownloadYTMod())
|
||||
|
||||
class DownloadYTMod(loader.Module):
|
||||
"""DownloadYT"""
|
||||
strings = {
|
||||
'name': 'DownloadYT',
|
||||
'usage': 'Напиши <code>.help DownloadYT</code>',
|
||||
}
|
||||
def __init__(self):
|
||||
self.name = self.strings['name']
|
||||
self._me = None
|
||||
self._ratelimit = []
|
||||
async def client_ready(self, client, db):
|
||||
self._db = db
|
||||
self._client = client
|
||||
self.me = await client.get_me()
|
||||
|
||||
async def dytcmd(self, message):
|
||||
"""отправляет видеов чат по ссылке из ютуба\n@offsd подпишись-пожалеешь"""
|
||||
reply = await message.get_reply_message()
|
||||
args = utils.get_args_raw(message)
|
||||
chatid = str(message.chat_id)
|
||||
if not args:
|
||||
if not reply:
|
||||
await utils.answer(message, self.strings('usage', message))
|
||||
return
|
||||
else:
|
||||
txt = reply.raw_text
|
||||
else:
|
||||
txt = utils.get_args_raw(message)
|
||||
await message.edit("<b>Извиняемся...</b>")
|
||||
link =f"\"{txt}\""
|
||||
yt = pytube.YouTube(link)
|
||||
stream = yt.streams.first()
|
||||
await message.client.send_file(message.to_id, stream.download(), reply_to=reply)
|
||||
await message.delete()
|
||||
|
||||
2
Sad0ff/modules-ftg/README.md
Normal file
2
Sad0ff/modules-ftg/README.md
Normal file
@@ -0,0 +1,2 @@
|
||||
# modules-ftg
|
||||
modules for friendly telegram
|
||||
128
Sad0ff/modules-ftg/allwithvoice.py
Normal file
128
Sad0ff/modules-ftg/allwithvoice.py
Normal file
@@ -0,0 +1,128 @@
|
||||
from telethon import events
|
||||
from telethon.errors.rpcerrorlist import YouBlockedUserError
|
||||
from .. import loader, utils
|
||||
|
||||
|
||||
def register(cb):
|
||||
cb(allwithvoiceMod())
|
||||
|
||||
|
||||
class allwithvoiceMod(loader.Module):
|
||||
"""Перевод текста в гс и наоборот"""
|
||||
|
||||
strings = {'name': 'allwithvoice'}
|
||||
|
||||
def __init__(self):
|
||||
self.name = self.strings['name']
|
||||
self._me = None
|
||||
self._ratelimit = []
|
||||
|
||||
async def client_ready(self, client, db):
|
||||
self._db = db
|
||||
self._client = client
|
||||
self.me = await client.get_me()
|
||||
|
||||
async def vwcmd(self, event):
|
||||
""".vw <reply>\nчтобы все работало как я задумывал, смените голос (если хотите) на женский у @Maksobot\n@offsd подпишись-пожалеешь"""
|
||||
user_msg = """{}""".format(utils.get_args_raw(event))
|
||||
reply_and_text = False
|
||||
if event.fwd_from:
|
||||
return
|
||||
if not event.reply_to_msg_id:
|
||||
self_mess = True
|
||||
if not user_msg:
|
||||
return
|
||||
elif event.reply_to_msg_id and user_msg:
|
||||
reply_message = await event.get_reply_message()
|
||||
reply_and_text = True
|
||||
self_mess = True
|
||||
elif event.reply_to_msg_id:
|
||||
reply_message = await event.get_reply_message()
|
||||
self_mess = False
|
||||
if not reply_message.text:
|
||||
return
|
||||
chat = '@Maksobot'
|
||||
await event.edit('<code>Извиняемся...</code>')
|
||||
async with event.client.conversation(chat) as conv:
|
||||
try:
|
||||
response = conv.wait_event(events.NewMessage(incoming=True,
|
||||
from_users=613929575))
|
||||
if not self_mess:
|
||||
await event.client.forward_messages(chat, reply_message)
|
||||
else:
|
||||
await event.client.send_message(chat, user_msg)
|
||||
response = await response
|
||||
except YouBlockedUserError:
|
||||
await event.reply('<code>Разблокируй </code>@Maksobot')
|
||||
return
|
||||
if response.text:
|
||||
await event.edit('<code>Бот принял ислам, попробуйте снова</code>')
|
||||
return
|
||||
await event.delete()
|
||||
if reply_and_text:
|
||||
await event.client.send_message(event.chat_id, response.message,
|
||||
reply_to=reply_message.id)
|
||||
else:
|
||||
await event.client.send_message(event.chat_id, response.message)
|
||||
async def vmcmd(self, event):
|
||||
""".vm <reply>"""
|
||||
user_msg = """{}""".format(utils.get_args_raw(event))
|
||||
global reply_and_text
|
||||
reply_and_text = False
|
||||
if event.fwd_from:
|
||||
return
|
||||
if not event.reply_to_msg_id:
|
||||
self_mess = True
|
||||
if not user_msg:
|
||||
await event.edit('.vm')
|
||||
return
|
||||
elif event.reply_to_msg_id and user_msg:
|
||||
reply_message = await event.get_reply_message()
|
||||
reply_and_text = True
|
||||
self_mess = True
|
||||
elif event.reply_to_msg_id:
|
||||
reply_message = await event.get_reply_message()
|
||||
self_mess = False
|
||||
chat = '@aleksobot'
|
||||
await event.edit('<code>Извиняемся...</code>')
|
||||
async with event.client.conversation(chat) as conv:
|
||||
try:
|
||||
response = conv.wait_event(events.NewMessage(incoming=True,
|
||||
from_users=616484527))
|
||||
if not self_mess:
|
||||
await event.client.forward_messages(chat, reply_message)
|
||||
else:
|
||||
await event.client.send_message(chat, user_msg)
|
||||
response = await response
|
||||
except YouBlockedUserError:
|
||||
await event.reply('<code>Разблокируй </code>@aleksobot')
|
||||
return
|
||||
await event.delete()
|
||||
if reply_and_text:
|
||||
await event.client.send_file(event.chat_id, response.voice,
|
||||
reply_to=reply_message.id)
|
||||
else:
|
||||
await event.client.send_file(event.chat_id, response.voice)
|
||||
async def tcmd(self, message):
|
||||
""".t <reply on voice>\nчтобы оно работало, включите в боте тихий режим командой /silent"""
|
||||
reply = await message.get_reply_message()
|
||||
if not reply:
|
||||
await message.edit("Ответь на голосовое сообщение")
|
||||
return
|
||||
try:
|
||||
voice = reply.voice
|
||||
except:
|
||||
await message.edit("Поддерживает только голосовые сообщения!!!")
|
||||
return
|
||||
chat = '@voicybot'
|
||||
await message.edit('<code>Извиняемся...</code>')
|
||||
async with message.client.conversation(chat) as conv:
|
||||
try:
|
||||
response = conv.wait_event(events.NewMessage(incoming=True, from_users=259276793))
|
||||
await message.client.send_file(chat, voice)
|
||||
response = await response
|
||||
except YouBlockedUserError:
|
||||
await message.reply('<code>Разблокируй бота</code> @voicybot')
|
||||
return
|
||||
await message.delete()
|
||||
await message.client.send_message(message.to_id, response.text)
|
||||
65
Sad0ff/modules-ftg/hitler.py
Normal file
65
Sad0ff/modules-ftg/hitler.py
Normal file
@@ -0,0 +1,65 @@
|
||||
from telethon import events
|
||||
from .. import loader, utils
|
||||
import os
|
||||
import requests
|
||||
from PIL import Image,ImageFont,ImageDraw
|
||||
import re
|
||||
import io
|
||||
from textwrap import wrap
|
||||
|
||||
def register(cb):
|
||||
cb(HitlerMod())
|
||||
|
||||
class HitlerMod(loader.Module):
|
||||
"""Hitler"""
|
||||
strings = {
|
||||
'name': 'Hitler',
|
||||
'usage': 'Напиши <code>.help Цитатник Гитлера</code>',
|
||||
}
|
||||
def __init__(self):
|
||||
self.name = self.strings['name']
|
||||
self._me = None
|
||||
self._ratelimit = []
|
||||
async def client_ready(self, client, db):
|
||||
self._db = db
|
||||
self._client = client
|
||||
self.me = await client.get_me()
|
||||
|
||||
async def hcmd(self, message):
|
||||
""".h <реплай на сообщение/свой текст>\n@offsd подпишись-пожалеешь"""
|
||||
|
||||
ufr = requests.get("https://github.com/Sad0ff/modules-ftg/raw/master/open-sans.ttf")
|
||||
f = ufr.content
|
||||
|
||||
reply = await message.get_reply_message()
|
||||
args = utils.get_args_raw(message)
|
||||
if not args:
|
||||
if not reply:
|
||||
await utils.answer(message, self.strings('usage', message))
|
||||
return
|
||||
else:
|
||||
txt = reply.raw_text
|
||||
else:
|
||||
txt = utils.get_args_raw(message)
|
||||
await message.edit("<code>Ehre sei Hitler...</code>")
|
||||
pic = requests.get("https://raw.githubusercontent.com/Sad0ff/modules-ftg/master/offsd.jpg")
|
||||
pic.raw.decode_content = True
|
||||
img = Image.open(io.BytesIO(pic.content)).convert("RGB")
|
||||
|
||||
W, H = img.size
|
||||
text = "\n".join(wrap(txt, 19))
|
||||
t = text + "\n"
|
||||
draw = ImageDraw.Draw(img)
|
||||
font = ImageFont.truetype(io.BytesIO(f), 32, encoding='UTF-8')
|
||||
w, h = draw.multiline_textsize(t, font=font)
|
||||
imtext = Image.new("RGBA", (w+10, h+10), (0, 0,0,0))
|
||||
draw = ImageDraw.Draw(imtext)
|
||||
draw.multiline_text((10, 10),t,(255,255,255),font=font, align='left')
|
||||
imtext.thumbnail((339, 166))
|
||||
img.paste(imtext, (10,10), imtext)
|
||||
out = io.BytesIO()
|
||||
out.name = "offsd.jpg"
|
||||
img.save(out)
|
||||
out.seek(0)
|
||||
await message.client.send_file(message.to_id, out, reply_to=reply)
|
||||
await message.delete()
|
||||
64
Sad0ff/modules-ftg/jac.py
Normal file
64
Sad0ff/modules-ftg/jac.py
Normal file
@@ -0,0 +1,64 @@
|
||||
from telethon import events
|
||||
from .. import loader, utils
|
||||
import os
|
||||
import requests
|
||||
from PIL import Image,ImageFont,ImageDraw
|
||||
import re
|
||||
import io
|
||||
from textwrap import wrap
|
||||
|
||||
def register(cb):
|
||||
cb(JacquesMod())
|
||||
|
||||
class JacquesMod(loader.Module):
|
||||
"""Жаконизатор"""
|
||||
strings = {
|
||||
'name': 'Жаконизатор',
|
||||
'usage': 'Напиши <code>.help Жаконизатор</code>',
|
||||
}
|
||||
def __init__(self):
|
||||
self.name = self.strings['name']
|
||||
self._me = None
|
||||
self._ratelimit = []
|
||||
|
||||
async def jcmd(self, message):
|
||||
""".j <реплай на сообщение/свой текст>\n@offsd подпишись-пожалеешь"""
|
||||
|
||||
ufr = requests.get("https://github.com/Sad0ff/modules-ftg/raw/master/open-sans.ttf")
|
||||
f = ufr.content
|
||||
|
||||
reply = await message.get_reply_message()
|
||||
args = utils.get_args_raw(message)
|
||||
if not args:
|
||||
if not reply:
|
||||
await utils.answer(message, self.strings('usage', message))
|
||||
return
|
||||
else:
|
||||
txt = reply.raw_text
|
||||
else:
|
||||
txt = utils.get_args_raw(message)
|
||||
await message.edit("<b>Извинись, быдло...</b>")
|
||||
pic = requests.get("https://www.meme-arsenal.com/memes/54c7ee322f4b0ae586ec96195a59a073.jpg")
|
||||
pic.raw.decode_content = True
|
||||
img = Image.open(io.BytesIO(pic.content)).convert("RGB")
|
||||
|
||||
W, H = img.size
|
||||
#txt = txt.replace("\n", "𓃐")
|
||||
text = "\n".join(wrap(txt, 19))
|
||||
t = text + "\n"
|
||||
#t = t.replace("𓃐","\n")
|
||||
draw = ImageDraw.Draw(img)
|
||||
font = ImageFont.truetype(io.BytesIO(f), 32, encoding='UTF-8')
|
||||
w, h = draw.multiline_textsize(t, font=font)
|
||||
imtext = Image.new("RGBA", (w+10, h+10), (0, 0,0,0))
|
||||
draw = ImageDraw.Draw(imtext)
|
||||
draw.multiline_text((10, 10),t,(0,0,0),font=font, align='left')
|
||||
imtext.thumbnail((339, 181))
|
||||
w, h = 339, 181
|
||||
img.paste(imtext, (10,10), imtext)
|
||||
out = io.BytesIO()
|
||||
out.name = "@offsd.jpg"
|
||||
img.save(out)
|
||||
out.seek(0)
|
||||
await message.client.send_file(message.to_id, out, reply_to=reply)
|
||||
await message.delete()
|
||||
BIN
Sad0ff/modules-ftg/offsd.jpg
Normal file
BIN
Sad0ff/modules-ftg/offsd.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 50 KiB |
BIN
Sad0ff/modules-ftg/open-sans.ttf
Normal file
BIN
Sad0ff/modules-ftg/open-sans.ttf
Normal file
Binary file not shown.
Reference in New Issue
Block a user