Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import discord
- from discord.ext import commands
- from datetime import datetime
- from config import settings
- #Details of the BOT
- _name_ = 'HaTe BOT'
- _version_ = 0.85
- _author_ = 'slative.py'
- #Defines of the client (BOT)
- client = discord.Client()
- bot = commands.Bot(command_prefix=settings.__prefix__)
- '''
- TODO LIST:
- + verify command / DOING
- + sending the rules to dm if a player joins
- '''
- @bot.command()
- async def verify(ctx):
- channel = discord.utils.get(ctx.message.guild.channels, name='verify')
- role = discord.utils.get(ctx.message.guild.roles, name='VERIFIED')
- member = ctx.message.author
- if channel is not None:
- if ctx.message.channel == channel:
- await member.add_roles(role)
- @bot.command()
- async def test(ctx):
- await ctx.send('test')
- @client.event
- async def on_raw_reaction_add(payload):
- guild = discord.utils.find(lambda g : g.id == payload.guild_id, client.guilds)
- channel = discord.utils.get(client.get_guild(payload.guild_id).channels, name="rules")
- if channel is not None:
- if payload.emoji.name == '\U00002705':
- role = discord.utils.get(guild.roles, name='AGREED')
- if role is not None:
- member = discord.utils.find(lambda m : m.id == payload.user_id, guild.members)
- if member is not None:
- await member.add_roles(role)
- #When a member joins on the server
- @client.event
- async def on_member_join(member):
- channel = discord.utils.get(member.guild.channels, name='welcome')
- rulesChannel = discord.utils.get(member.guild.channels, name='rules')
- verifyChannel = discord.utils.get(member.guild.channels, name='verify')
- if channel is not None:
- embed=discord.Embed(title=f"Welcome to {member.guild}!", description="Thank you for choosing to join the server!", color=0x41ba5d)
- embed.set_thumbnail(url=member.avatar_url)
- embed.add_field(name='Name: ', value=member.mention, inline=True)
- embed.add_field(name='Members: ', value=member.guild.member_count, inline=True)
- embed.add_field(name='Please read this to continue: ', value=f'Be smart and go to {rulesChannel.mention} and verify yourself in {verifyChannel.mention}!')
- embed.set_footer(text=f'joined at {datetime.now()}.')
- await channel.send(embed=embed)
- if verifyChannel is not None:
- embed=discord.Embed(title=f"Verify yourself!", description=f"{member.mention} use 8$verify", color=0x41ba5d)
- await verifyChannel.send(embed=embed)
- #When a member leaves on the server
- @client.event
- async def on_member_remove(member):
- channel = discord.utils.get(member.guild.channels, name='welcome')
- if channel is not None:
- embed=discord.Embed(title=f"Experiences on {member.guild}!", description="Thank you for being there, goodbye!", color=0xba4341)
- embed.set_thumbnail(url=member.avatar_url)
- embed.add_field(name='Name: ', value=member.mention, inline=True)
- embed.add_field(name='Members: ', value=member.guild.member_count, inline=True)
- embed.set_footer(text=f'leaved at {datetime.now()}.')
- await channel.send(embed=embed)
- #When the bot joins on the server
- @client.event
- async def on_guild_join(guild):
- embed = discord.Embed(title=':white_check_mark: Server added!', description='Thank you for adding me on your server!', type='rich', color=0x419eba)
- embed.set_thumbnail(url=guild.icon_url)
- embed.add_field(name='Name: ', value=guild.name, inline=True)
- embed.add_field(name='ID: ', value=guild.id, inline=True)
- embed.add_field(name='Region: ', value=guild.region, inline=True)
- embed.add_field(name='Members: ', value=guild.member_count, inline=True)
- embed.add_field(name='Roles: ', value=str(len(guild.roles)), inline=True)
- embed.add_field(name='Created at: ', value=guild.created_at, inline=True)
- embed.set_footer(text=f'joined at {datetime.now()}.')
- await guild.owner.send(embed=embed)
- #Informations on the start, if the bot is ready
- @client.event
- async def on_ready():
- print('}~~~~~~~~~~~~~~~~~~~~~~~~~~~{')
- print(f' - Name: {_name_.upper()}')
- print(f' - Version: {_version_}')
- print(f' - Author: {_author_}')
- print('')
- print(f' - Currently on {str(len(client.guilds))} servers!')
- print('}~~~~~~~~~~~~~~~~~~~~~~~~~~~{')
- await client.change_presence(status=discord.Status.online, activity=discord.Game(name='use 8$ as prefix!'))
- #Starts the client (BOT)
- client.run(settings.__token__)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement