mirror of
https://github.com/yasirarism/MissKatyPyro.git
synced 2026-01-03 11:04:51 +00:00
Add nulis cmd
This commit is contained in:
parent
5a3bdeb531
commit
7d00852e89
7 changed files with 63 additions and 7 deletions
BIN
assets/assfont.ttf
Normal file
BIN
assets/assfont.ttf
Normal file
Binary file not shown.
BIN
assets/kertas.jpg
Normal file
BIN
assets/kertas.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 37 KiB |
|
|
@ -42,7 +42,7 @@ You can use markdown or html to save text too.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
||||||
@app.on_message(filters.command("addfilter") & ~filters.private)
|
@app.on_message(filters.command(["addfilter", "filter"]) & ~filters.private)
|
||||||
@adminsOnly("can_change_info")
|
@adminsOnly("can_change_info")
|
||||||
@ratelimiter
|
@ratelimiter
|
||||||
async def save_filters(_, m):
|
async def save_filters(_, m):
|
||||||
|
|
@ -77,7 +77,7 @@ async def get_filterss(_, m):
|
||||||
await m.reply_msg(msg)
|
await m.reply_msg(msg)
|
||||||
|
|
||||||
|
|
||||||
@app.on_message(filters.command("stopfilter") & ~filters.private)
|
@app.on_message(filters.command(["stop", "stopfilter"]) & ~filters.private)
|
||||||
@adminsOnly("can_change_info")
|
@adminsOnly("can_change_info")
|
||||||
@ratelimiter
|
@ratelimiter
|
||||||
async def del_filter(_, m):
|
async def del_filter(_, m):
|
||||||
|
|
|
||||||
|
|
@ -45,6 +45,7 @@ __MODULE__ = "MediaExtract"
|
||||||
__HELP__ = """
|
__HELP__ = """
|
||||||
/extractmedia [URL] - Extract subtitle or audio from video using link. (Not support TG File to reduce bandwith usage.)
|
/extractmedia [URL] - Extract subtitle or audio from video using link. (Not support TG File to reduce bandwith usage.)
|
||||||
/converttosrt [Reply to .ass or .vtt TG File] - Convert from .ass or .vtt to srt
|
/converttosrt [Reply to .ass or .vtt TG File] - Convert from .ass or .vtt to srt
|
||||||
|
/converttoass [Reply to .srt or .vtt TG File] - Convert from .srt or .vtt to srt
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -42,6 +42,8 @@ __HELP__ = """
|
||||||
/readqr [reply to photo] - Read QR Code From Photo.
|
/readqr [reply to photo] - Read QR Code From Photo.
|
||||||
/createqr [text] - Convert Text to QR Code.
|
/createqr [text] - Convert Text to QR Code.
|
||||||
/anime [query] - Search title in myanimelist.
|
/anime [query] - Search title in myanimelist.
|
||||||
|
/info - Get info user with Pic and full description if user set profile picture.
|
||||||
|
/id - Get simple user ID.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -252,7 +254,7 @@ async def topho(client, message):
|
||||||
@app.on_message(filters.command(["id"], COMMAND_HANDLER))
|
@app.on_message(filters.command(["id"], COMMAND_HANDLER))
|
||||||
@ratelimiter
|
@ratelimiter
|
||||||
async def showid(client, message):
|
async def showid(client, message):
|
||||||
chat_type = message.chat.type
|
chat_type = message.chat.type.value
|
||||||
if chat_type == "private":
|
if chat_type == "private":
|
||||||
user_id = message.chat.id
|
user_id = message.chat.id
|
||||||
first = message.from_user.first_name
|
first = message.from_user.first_name
|
||||||
|
|
|
||||||
|
|
@ -36,15 +36,15 @@ from misskaty.helper.functions import extract_text_and_keyb
|
||||||
__MODULE__ = "Notes"
|
__MODULE__ = "Notes"
|
||||||
__HELP__ = """/notes To Get All The Notes In The Chat.
|
__HELP__ = """/notes To Get All The Notes In The Chat.
|
||||||
|
|
||||||
/addnote [NOTE_NAME] To Save A Note (Can be a sticker or text).
|
(/save, /addnote) [NOTE_NAME] To Save A Note (Can be a sticker or text).
|
||||||
|
|
||||||
#NOTE_NAME To Get A Note.
|
#NOTE_NAME To Get A Note.
|
||||||
|
|
||||||
/delnote [NOTE_NAME] To Delete A Note.
|
(/clear, /delnote) [NOTE_NAME] To Delete A Note.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
||||||
@app.on_message(filters.command("addnote") & ~filters.private)
|
@app.on_message(filters.command(["addnote", "save"]) & ~filters.private)
|
||||||
@adminsOnly("can_change_info")
|
@adminsOnly("can_change_info")
|
||||||
@ratelimiter
|
@ratelimiter
|
||||||
async def save_notee(_, message):
|
async def save_notee(_, message):
|
||||||
|
|
@ -113,7 +113,7 @@ async def get_one_note(_, message):
|
||||||
await message.reply_sticker(_note["data"])
|
await message.reply_sticker(_note["data"])
|
||||||
|
|
||||||
|
|
||||||
@app.on_message(filters.command("delnote") & ~filters.private)
|
@app.on_message(filters.command(["delnote", "clear"]) & ~filters.private)
|
||||||
@adminsOnly("can_change_info")
|
@adminsOnly("can_change_info")
|
||||||
@ratelimiter
|
@ratelimiter
|
||||||
async def del_note(_, message):
|
async def del_note(_, message):
|
||||||
|
|
|
||||||
53
misskaty/plugins/nulis.py
Normal file
53
misskaty/plugins/nulis.py
Normal file
|
|
@ -0,0 +1,53 @@
|
||||||
|
from misskaty import app
|
||||||
|
from misskaty.vars import COMMAND_HANDLER
|
||||||
|
from PIL import Image, ImageFont, ImageDraw
|
||||||
|
|
||||||
|
__MODULE__ = "nulis"
|
||||||
|
__HELP__ = f"""
|
||||||
|
๏ Command: <code>{cmd}nulis</code> [reply to msg or after cmd]
|
||||||
|
◉ Desc: For those of you who are lazy to write.
|
||||||
|
"""
|
||||||
|
|
||||||
|
def text_set(text):
|
||||||
|
lines = []
|
||||||
|
if len(text) <= 55:
|
||||||
|
lines.append(text)
|
||||||
|
else:
|
||||||
|
all_lines = text.split("\n")
|
||||||
|
for line in all_lines:
|
||||||
|
if len(line) <= 55:
|
||||||
|
lines.append(line)
|
||||||
|
else:
|
||||||
|
k = len(line) // 55
|
||||||
|
lines.extend(line[((z - 1) * 55) : (z * 55)] for z in range(1, k + 2))
|
||||||
|
return lines[:25]
|
||||||
|
|
||||||
|
@app.on_message(filters.command(["nulis"], COMMAND_HANDLER))
|
||||||
|
async def handwrite(client, message):
|
||||||
|
if message.reply_to_message and message.reply_to_message.text:
|
||||||
|
naya = message.reply_to_message.text
|
||||||
|
elif message.command > 1:
|
||||||
|
naya = message.text.split(None, 1)[1]
|
||||||
|
else:
|
||||||
|
return await message.reply("Please reply to message or write after command to use Nulis CMD.")
|
||||||
|
nan = await message.reply_msg("Processing...")
|
||||||
|
try:
|
||||||
|
img = Image.open("assets/kertas.jpg")
|
||||||
|
draw = ImageDraw.Draw(img)
|
||||||
|
font = ImageFont.truetype("assets/assfont.ttf", 30)
|
||||||
|
x, y = 150, 140
|
||||||
|
lines = text_set(naya)
|
||||||
|
line_height = font.getsize("hg")[1]
|
||||||
|
for line in lines:
|
||||||
|
draw.text((x, y), line, fill=(1, 22, 55), font=font)
|
||||||
|
y = y + line_height - 5
|
||||||
|
file = f"nulis_{message.from_user.id}.jpg"
|
||||||
|
img.save(file)
|
||||||
|
if os.path.exists(file):
|
||||||
|
await message.reply_photo(
|
||||||
|
photo=file, caption=f"<b>Written By :</b> {client.me.mention}"
|
||||||
|
)
|
||||||
|
os.remove(file)
|
||||||
|
await nan.delete()
|
||||||
|
except Exception as e:
|
||||||
|
return await message.reply(e)
|
||||||
Loading…
Reference in a new issue