ryuko-ng/robocop_ng/cogs/links.py

80 lines
2.7 KiB
Python
Raw Normal View History

import discord
from discord.ext import commands
from discord.ext.commands import Cog
2019-06-03 22:14:19 +00:00
class Links(Cog):
"""
Commands for easily linking to projects.
"""
def __init__(self, bot):
self.bot = bot
@commands.command(hidden=True)
async def pegaswitch(self, ctx):
2018-12-23 19:06:32 +00:00
"""Link to the Pegaswitch repo"""
await ctx.send("https://github.com/reswitched/pegaswitch")
2018-12-23 19:06:32 +00:00
@commands.command(hidden=True, aliases=["atmos"])
2018-12-23 22:11:01 +00:00
async def atmosphere(self, ctx):
2018-12-23 19:06:32 +00:00
"""Link to the Atmosphere repo"""
await ctx.send("https://github.com/atmosphere-nx/atmosphere")
2018-12-23 22:11:01 +00:00
2019-01-05 20:27:47 +00:00
@commands.command(hidden=True, aliases=["xyproblem"])
async def xy(self, ctx):
"""Link to the "What is the XY problem?" post from SE"""
await ctx.send(
"<https://meta.stackexchange.com/q/66377/285481>\n\n"
"TL;DR: It's asking about your attempted solution "
"rather than your actual problem.\n"
"It's perfectly okay to want to learn about a "
"solution, but please be clear about your intentions "
"if you're not actually trying to solve a problem."
)
2019-01-05 20:27:47 +00:00
2019-01-08 08:30:25 +00:00
@commands.command(hidden=True, aliases=["guides", "link"])
2018-12-23 19:06:32 +00:00
async def guide(self, ctx):
"""Link to the guides"""
await ctx.send(self.bot.config.links_guide_text)
2018-12-23 22:11:01 +00:00
@commands.command()
async def source(self, ctx):
"""Gives link to source code."""
await ctx.send(
f"You can find my source at {self.bot.config.source_url}. "
"Serious PRs and issues welcome!"
)
@commands.command()
async def rules(self, ctx, *, targetuser: discord.Member = None):
"""Post a link to the Rules"""
if not targetuser:
targetuser = ctx.author
await ctx.send(
f"{targetuser.mention}: A link to the rules "
f"can be found here: {self.bot.config.rules_url}"
)
@commands.command()
async def community(self, ctx, *, targetuser: discord.Member = None):
"""Post a link to the community section of the rules"""
if not targetuser:
targetuser = ctx.author
await ctx.send(
f"{targetuser.mention}: "
"https://reswitched.github.io/discord/#member-roles-breakdown"
"\n\n"
"Community role allows access to the set of channels "
"on the community category (#off-topic, "
"#homebrew-development, #switch-hacking-general etc)."
"\n\n"
"What you need to get the role is to be around, "
"be helpful and nice to people and "
"show an understanding of rules."
)
async def setup(bot):
await bot.add_cog(Links(bot))