Forgot info file and errors
Signed-off-by: Bobloy <alboblexloy@gmail.com>
This commit is contained in:
parent
0e991dc81e
commit
dc1cc2f0d2
20
stealemoji/info..json
Normal file
20
stealemoji/info..json
Normal file
@ -0,0 +1,20 @@
|
||||
{
|
||||
"author": [
|
||||
"Bobloy"
|
||||
],
|
||||
"bot_version": [
|
||||
3,
|
||||
0,
|
||||
0
|
||||
],
|
||||
"description": "Steals custom emojis the bot sees and moves them to an emoji server",
|
||||
"hidden": true,
|
||||
"install_msg": "Thank you for installing StealEmoji",
|
||||
"requirements": [],
|
||||
"short": "Steals custom emojis",
|
||||
"tags": [
|
||||
"bobloy",
|
||||
"utils",
|
||||
"emoji"
|
||||
]
|
||||
}
|
@ -1,18 +1,11 @@
|
||||
import asyncio
|
||||
import aiohttp
|
||||
|
||||
from urllib.parse import urlparse
|
||||
|
||||
import os
|
||||
|
||||
from typing import List, Union
|
||||
|
||||
import discord
|
||||
from discord.ext import commands
|
||||
|
||||
from redbot.core import Config
|
||||
from redbot.core import Config, RedContext
|
||||
from redbot.core.bot import Red
|
||||
# from redbot.core import data_manager
|
||||
|
||||
|
||||
async def fetch_img(session, url):
|
||||
with aiohttp.Timeout(10):
|
||||
@ -26,29 +19,29 @@ class StealEmoji:
|
||||
This cog steals emojis and creates servers for them
|
||||
"""
|
||||
|
||||
default_stolemoji = {
|
||||
"guildbank": None,
|
||||
"name": None,
|
||||
"require_colons": False,
|
||||
"managed": False,
|
||||
"guild_id": None,
|
||||
"url": None,
|
||||
"animated": False
|
||||
}
|
||||
|
||||
def __init__(self, red: Red):
|
||||
self.bot = red
|
||||
self.config = Config.get_conf(self, identifier=11511610197108101109111106105)
|
||||
default_global = {
|
||||
"stolemoji": {},
|
||||
"guildbanks": [],
|
||||
"on": False
|
||||
}
|
||||
|
||||
default_stolemoji = {
|
||||
"guildbank": None,
|
||||
"name": None,
|
||||
"require_colons": False,
|
||||
"managed": False,
|
||||
"guild_id": None,
|
||||
"url": None,
|
||||
"animated": False
|
||||
}
|
||||
"stolemoji": {},
|
||||
"guildbanks": [],
|
||||
"on": False
|
||||
}
|
||||
|
||||
self.config.register_global(**default_global)
|
||||
|
||||
@commands.group()
|
||||
async def stealemoji(self, ctx: commands.Context):
|
||||
async def stealemoji(self, ctx: RedContext):
|
||||
"""
|
||||
Base command for this cog. Check help for the commands list.
|
||||
"""
|
||||
@ -58,22 +51,22 @@ class StealEmoji:
|
||||
@stealemoji.command(name="collect")
|
||||
async def se_collect(self, ctx):
|
||||
"""Toggles whether emoji's are collected or not"""
|
||||
currSetting = await self.config.on()
|
||||
await self.config.on.set(not currSetting)
|
||||
await ctx.send("Collection is now "+str(not currSetting))
|
||||
curr_setting = await self.config.on()
|
||||
await self.config.on.set(not curr_setting)
|
||||
await ctx.send("Collection is now " + str(not curr_setting))
|
||||
|
||||
@stealemoji.command(name="bank")
|
||||
async def se_bank(self, ctx):
|
||||
"""Add current server as emoji bank"""
|
||||
await ctx.send("This will upload custom emojis to this server\n"
|
||||
"Are you sure you want to make the current server an emoji bank? (y/n)")
|
||||
"Are you sure you want to make the current server an emoji bank? (y/n)")
|
||||
|
||||
def check(m):
|
||||
return m.content.upper() in ["Y","YES","N","NO"] and m.channel == ctx.channel and m.author == ctx.author
|
||||
return m.content.upper() in ["Y", "YES", "N", "NO"] and m.channel == ctx.channel and m.author == ctx.author
|
||||
|
||||
msg = await self.bot.wait_for('message', check=check)
|
||||
|
||||
if msg.content in ["N","NO"]:
|
||||
if msg.content in ["N", "NO"]:
|
||||
await ctx.send("Cancelled")
|
||||
return
|
||||
|
||||
@ -100,12 +93,11 @@ class StealEmoji:
|
||||
# This is now a custom emoji that the bot doesn't have access to, time to steal it
|
||||
# First, do I have an available guildbank?
|
||||
|
||||
|
||||
guildbank = None
|
||||
banklist = await self.config.guildbanks()
|
||||
for guild_id in banklist:
|
||||
guild = self.bot.get_guild(guild_id)
|
||||
if len(guild.emojis)<50:
|
||||
if len(guild.emojis) < 50:
|
||||
guildbank = guild
|
||||
break
|
||||
|
||||
@ -132,18 +124,17 @@ class StealEmoji:
|
||||
# path = data_manager.cog_data_path(cog_instance=self) / (emoji.name+ext)
|
||||
|
||||
# with path.open("wb") as f:
|
||||
# f.write(img)
|
||||
# f.write(img)
|
||||
# urllib.urlretrieve(emoji.url, emoji.name+ext)
|
||||
|
||||
|
||||
try:
|
||||
await guildbank.create_custom_emoji(name=emoji.name,image=img,reason="Stole from "+str(user))
|
||||
except Forbidden as e:
|
||||
await guildbank.create_custom_emoji(name=emoji.name, image=img, reason="Stole from " + str(user))
|
||||
except discord.Forbidden as e:
|
||||
print("PermissionError - no permission to add emojis")
|
||||
raise PermissionError("No permission to add emojis") from e
|
||||
except HTTPException:
|
||||
except discord.HTTPException as e:
|
||||
print("HTTPException exception")
|
||||
raise HTTPException # Unhandled error
|
||||
raise e # Unhandled error
|
||||
|
||||
# If you get this far, YOU DID IT
|
||||
|
||||
@ -159,8 +150,7 @@ class StealEmoji:
|
||||
async with self.config.stolemoji() as stolemoji:
|
||||
stolemoji[emoji.id] = save_dict
|
||||
|
||||
#Enable the below if you want to get notified when it works
|
||||
# Enable the below if you want to get notified when it works
|
||||
# owner = await self.bot.application_info()
|
||||
# owner = owner.owner
|
||||
# await owner.send("Just added emoji "+str(emoji)+" to server "+str(guildbank))
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user