diff --git a/.github/ISSUE_TEMPLATE/command_bug.yml b/.github/ISSUE_TEMPLATE/command_bug.yml index d64c11957..f9662ad67 100644 --- a/.github/ISSUE_TEMPLATE/command_bug.yml +++ b/.github/ISSUE_TEMPLATE/command_bug.yml @@ -4,8 +4,8 @@ title: '' labels: 'Type: Bug' assignees: '' issue_body: true -inputs: -- type: description +body: +- type: markdown attributes: value: | Thank you for taking the time to fill out an issue. This template is meant for any issues related to commands. @@ -14,13 +14,13 @@ inputs: attributes: label: "What Red version are you using?" placeholder: 3.4.5 + validations: required: true - type: dropdown attributes: label: "Cog name" description: "From which cog does the command come from?" - required: true - choices: + options: - Admin - Alias - Audio @@ -43,15 +43,19 @@ inputs: - Streams - Trivia - Warnings + validations: + required: true - type: input attributes: label: "Command name" description: "What is the command that caused the error?" placeholder: "play" + validations: required: true - type: textarea attributes: label: "What did you expect to happen?" + validations: required: true - type: textarea attributes: @@ -59,6 +63,7 @@ inputs: description: | A clear and concise description of what the bug is. If the issue is visual in nature, consider posting a screenshot. + validations: required: true - type: textarea attributes: @@ -69,4 +74,5 @@ inputs: 2. 3. ... + validations: required: true diff --git a/.github/ISSUE_TEMPLATE/enhancements.yml b/.github/ISSUE_TEMPLATE/enhancements.yml index 8ec1990a9..16d62bc97 100644 --- a/.github/ISSUE_TEMPLATE/enhancements.yml +++ b/.github/ISSUE_TEMPLATE/enhancements.yml @@ -4,8 +4,8 @@ title: '' labels: 'Type: Enhancement' assignees: '' issue_body: true -inputs: -- type: description +body: +- type: markdown attributes: value: | Thank you for taking the time to fill out an issue. This template is meant for feature requests and improvements to already existing functionality. @@ -14,10 +14,12 @@ inputs: attributes: label: "What component of Red (cog, command, API) would you like to see improvements on?" placeholder: Audio + validations: required: true - type: textarea attributes: label: "Describe the enhancement you're suggesting." - required: true description: | Feel free to describe in as much detail as you wish. + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml index 11ae4a648..56b798d12 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.yml +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -4,22 +4,24 @@ title: '' labels: 'Type: Feature' assignees: '' issue_body: true -inputs: -- type: description +body: +- type: markdown attributes: value: | Thank you for taking the time to fill out an issue, this template is meant for any feature suggestions. If you require help with installing Red we ask that you join our [Discord server](https://discord.gg/red) -- type: multi_select +- type: dropdown attributes: label: "Type of feature request" description: "What type of feature would you like to request?" - required: true - choices: + multiple: true + options: - API functionality - Cog - Command - Other + validations: + required: true - type: textarea attributes: label: "Description of the feature you're suggesting" @@ -41,5 +43,6 @@ inputs: - Include what cog it should be in and a name for the command - Describe the intended functionality for the command - Note any restrictions on who can use the command or where it can be used + validations: required: true diff --git a/.github/ISSUE_TEMPLATE/other_bugs.yml b/.github/ISSUE_TEMPLATE/other_bugs.yml index d09016ecc..bac7fcd85 100644 --- a/.github/ISSUE_TEMPLATE/other_bugs.yml +++ b/.github/ISSUE_TEMPLATE/other_bugs.yml @@ -4,8 +4,8 @@ title: '' labels: 'Type: Bug' assignees: '' issue_body: true -inputs: -- type: description +body: +- type: markdown attributes: value: | Thank you for taking the time to fill out an issue. This template is meant for any issues not related to any existing command. @@ -14,20 +14,24 @@ inputs: attributes: label: "What Red version are you using?" placeholder: 3.4.5 + validations: required: true - type: textarea attributes: label: "What were you trying to do?" + validations: required: true - type: textarea attributes: label: "What did you expect to happen?" + validations: required: true - type: textarea attributes: label: "What actually happened?" description: | If the issue is visual in nature, consider posting a screenshot. + validations: required: true - type: textarea attributes: @@ -39,4 +43,5 @@ inputs: 2. 3. ... + validations: required: true diff --git a/.github/workflows/auto_labeler_pr.yml b/.github/workflows/auto_labeler_pr.yml index 6c08dec9c..7d93fb35f 100644 --- a/.github/workflows/auto_labeler_pr.yml +++ b/.github/workflows/auto_labeler_pr.yml @@ -10,3 +10,4 @@ jobs: uses: actions/labeler@v3 with: repo-token: "${{ secrets.GITHUB_TOKEN }}" + sync-labels: "" # this is a temporary workaround, see #4844 diff --git a/docs/cog_guides/general.rst b/docs/cog_guides/general.rst new file mode 100644 index 000000000..0fab5d769 --- /dev/null +++ b/docs/cog_guides/general.rst @@ -0,0 +1,214 @@ +.. _general: + +======= +General +======= + +This is the cog guide for the general cog. You will +find detailed docs about usage and commands. + +``[p]`` is considered as your prefix. + +.. note:: To use this cog, load it by typing this:: + + [p]load general + +.. _general-usage: + +----- +Usage +----- + +This cog includes a miscellaneous group of games, useful +tools, and informative commands such as ``serverinfo`` or ``urban``. + +.. _general-commands: + +-------- +Commands +-------- + +Here's a list of all commands available for this cog. + +.. _general-command-8: + +^^^^^^^^^ +8 (8ball) +^^^^^^^^^ + +**Syntax** + +.. code-block:: none + + [p]8 + +**Description** + +Ask 8 ball a question. + +.. note:: Your question must end with a question mark. + +**Arguments** + +* ````: The question you would like to ask 8 ball. + +.. _general-command-choose: + +^^^^^^ +choose +^^^^^^ + +**Syntax** + +.. code-block:: none + + [p]choose [choices...] + +**Description** + +Choose between multiple options. + +.. note:: To denote options which include whitespace, you should use + double quotes. + +**Arguments** + +* ``[choices...]``: The arguments for Red to randomly choose from. + +.. _general-command-flip: + +^^^^ +flip +^^^^ + +**Syntax** + +.. code-block:: none + + [p]flip [user] + +**Description** + +Flip a coin... or a user. + +**Arguments** + +* ``[user]``: The user to flip. Defaults to flipping a coin if no user is provided. + +.. _general-command-lmgtfy: + +^^^^^^ +lmgtfy +^^^^^^ + +**Syntax** + +.. code-block:: none + + [p]lmgtfy + +**Description** + +Create a lmgtfy link. + +**Arguments** + +* ````: The terms used to generate the lmgtfy link. + +.. _general-command-roll: + +^^^^ +roll +^^^^ + +**Syntax** + +.. code-block:: none + + [p]roll [number=100] + +**Description** + +Roll a random number. The result will be between 1 and ````. + +**Arguments** + +* ``[number]``: The maximum number that can be rolled. Defaults to 100. + +.. _general-command-rps: + +^^^^^^^^^^^^^^^^^^^^^^^^^ +rps (Rock Paper Scissors) +^^^^^^^^^^^^^^^^^^^^^^^^^ + +**Syntax** + +.. code-block:: none + + [p]rps + +**Description** + +Play Rock Paper Scissors. + +**Arguments** + +* ````: The choice that you choose. + +.. note:: Choices **must** be between ``rock``, ``paper``, or ``scissors``. + +.. _general-commands-serverinfo: + +^^^^^^^^^^ +serverinfo +^^^^^^^^^^ + +**Syntax** + +.. code-block:: none + + [p]serverinfo [details=False] + +**Description** + +Show server information. + +**Arguments** + +* ``[details]``: Show extra details about the server when set to True. Defaults to False. + +.. _general-commands-stopwatch: + +^^^^^^^^^ +stopwatch +^^^^^^^^^ + +**Syntax** + +.. code-block:: none + + [p]stopwatch + +**Description** + +Start or stop the stopwatch. + +.. _general-commands-urban: + +^^^^^ +urban +^^^^^ + +**Syntax** + +.. code-block:: none + + [p]urban + +**Description** + +Search the Urban Dictionary. + +**Arguments** + +* ````: The term to search for. diff --git a/docs/cog_guides/trivia.rst b/docs/cog_guides/trivia.rst new file mode 100644 index 000000000..ca35386c7 --- /dev/null +++ b/docs/cog_guides/trivia.rst @@ -0,0 +1,434 @@ +.. _trivia: + +====== +Trivia +====== + +This is the cog guide for the trivia cog. You will +find detailed docs about usage and commands. + +``[p]`` is considered as your prefix. + +.. note:: To use this cog, load it by typing this:: + + [p]load trivia + +.. _trivia-usage: + +----- +Usage +----- + +This cog allows for playing trivia with others. You may +choose to play just one category at a time or choose +multiple to add variety to your game. You can even create +your own lists! + +.. _trivia-commands: + +-------- +Commands +-------- + +Here is a list of all of the commands for this cog: + +.. _trivia-command-triviaset: + +^^^^^^^^^ +triviaset +^^^^^^^^^ + +.. note:: |mod-lock| + +**Syntax** + +.. code-block:: none + + [p]triviaset + +**Description** + +Commands for managing trivia settings. + +.. _trivia-command-triviaset-botplays: + +^^^^^^^^^^^^^^^^^^ +triviaset botplays +^^^^^^^^^^^^^^^^^^ + +.. note:: |mod-lock| + +**Syntax** + +.. code-block:: none + + [p]triviaset botplays + +**Description** + +Sets whether the bot gains a point if nobody guesses correctly. + +**Arguments** + +- ```` If ``true``, the bot will gain a point if nobody + guesses correctly, otherwise it will not. + +.. _trivia-command-triviaset-maxscore: + +^^^^^^^^^^^^^^^^^^ +triviaset maxscore +^^^^^^^^^^^^^^^^^^ + +.. note:: |mod-lock| + +**Syntax** + +.. code-block:: none + + [p]triviaset maxscore + +**Description** + +Sets the total points required to win. + +**Arguments** + +- ```` The amount of points required to win. + +.. _trivia-command-triviaset-override: + +^^^^^^^^^^^^^^^^^^ +triviaset override +^^^^^^^^^^^^^^^^^^ + +.. note:: |mod-lock| + +**Syntax** + +.. code-block:: none + + [p]triviaset override + +**Description** + +Allow/disallow trivia lists to override the settings. + +**Arguments** + +- ```` Whether trivia lists should be able to override settings. + +.. _trivia-command-triviaset-payout: + +^^^^^^^^^^^^^^^^ +triviaset payout +^^^^^^^^^^^^^^^^ + +.. note:: |mod-lock| + +**Syntax** + +.. code-block:: none + + [p]triviaset payout + +**Description** + +Sets the payout multiplier. + +If a user wins trivia when at least 3 users are playing, they will receive credits; +the amount received is determined by multiplying their total score by this multiplier. + +**Arguments** + +- ```` The amount to multiply the winner's score by to determine payout. + This can be any positive decimal number. Setting this to 0 will disable. + +.. _trivia-command-triviaset-revealanswer: + +^^^^^^^^^^^^^^^^^^^^^^ +triviaset revealanswer +^^^^^^^^^^^^^^^^^^^^^^ + +.. note:: |mod-lock| + +**Syntax** + +.. code-block:: none + + [p]triviaset revealanswer + +**Description** + +Sets whether or not the answer is revealed if the time limit for answering runs out. + +**Arguments** + +- ```` If ``true``, the bot will reveal the answer if there is no + correct guess within the time limit. + +.. _trivia-command-triviaset-showsettings: + +^^^^^^^^^^^^^^^^^^^^^^ +triviaset showsettings +^^^^^^^^^^^^^^^^^^^^^^ + +.. note:: |mod-lock| + +**Syntax** + +.. code-block:: none + + [p]triviaset showsettings + +**Description** + +Shows the current trivia settings. + +.. _trivia-command-triviaset-stopafter: + +^^^^^^^^^^^^^^^^^^^ +triviaset stopafter +^^^^^^^^^^^^^^^^^^^ + +.. note:: |mod-lock| + +**Syntax** + +.. code-block:: none + + [p]triviaset stopafter + +**Description** + +Sets how long the bot should wait before stopping the trivia +session due to lack of response. + +**Arguments** + +- ```` The number of seconds to wait before stopping the session. + +.. _trivia-command-triviaset-timelimit: + +^^^^^^^^^^^^^^^^^^^ +triviaset timelimit +^^^^^^^^^^^^^^^^^^^ + +.. note:: |mod-lock| + +**Syntax** + +.. code-block:: none + + [p]triviaset timelimit + +**Description** + +Sets the maximum time permitted to answer a question. + +**Arguments** + +- ```` The number of seconds to wait for an answer. + +.. _trivia-command-triviaset-custom: + +^^^^^^^^^^^^^^^^ +triviaset custom +^^^^^^^^^^^^^^^^ + +.. note:: |owner-lock| + +**Syntax** + +.. code-block:: none + + [p]triviaset custom + +**Description** + +Manage custom trivia lists. + +.. _trivia-command-triviaset-custom-upload: + +^^^^^^^^^^^^^^^^^^^^^^^ +triviaset custom upload +^^^^^^^^^^^^^^^^^^^^^^^ + +.. note:: |owner-lock| + +**Syntax** + +.. code-block:: none + + [p]triviaset custom upload + +**Description** + +Upload a custom trivia list. The bot will prompt you to upload +your list as an attachment in Discord. + +.. _trivia-command-triviaset-custom-list: + +^^^^^^^^^^^^^^^^^^^^^ +triviaset custom list +^^^^^^^^^^^^^^^^^^^^^ + +.. note:: |owner-lock| + +**Syntax** + +.. code-block:: none + + [p]triviaset custom list + +**Description** + +List all uploaded custom trivia lists. + +.. _trivia-command-triviaset-custom-delete: + +^^^^^^^^^^^^^^^^^^^^^^^ +triviaset custom delete +^^^^^^^^^^^^^^^^^^^^^^^ + +.. note:: |owner-lock| + +**Syntax** + +.. code-block:: none + + [p]triviaset custom delete + +**Description** + +Delete a custom trivia list. + +**Arguments** + +- ```` The name of the custom list to be deleted. + +.. _trivia-command-trivia: + +^^^^^^ +trivia +^^^^^^ + +**Syntax** + +.. code-block:: none + + [p]trivia + +**Description** + +Start a trivia session on the specified category. + +Multiple categories can be listed, in which case the trivia session +will use all of the specified lists to select questions from. + +**Arguments** + +- ```` The category to play. Can be multiple. + +.. _trivia-command-trivia-leaderboard: + +^^^^^^^^^^^^^^^^^^ +trivia leaderboard +^^^^^^^^^^^^^^^^^^ + +**Syntax** + +.. code-block:: none + + [p]trivia leaderboard + +**Description** + +Shows the trivia leaderboard. Defaults to the top ten in the +current server, sorted by total wins. The subcommands provide +more customized leaderboards. + +.. _trivia-command-trivia-leaderboard-global: + +^^^^^^^^^^^^^^^^^^^^^^^^^ +trivia leaderboard global +^^^^^^^^^^^^^^^^^^^^^^^^^ + +**Syntax** + +.. code-block:: none + + [p]trivia leaderboard global [sort_by=wins] [top=10] + +**Description** + +The global trivia leaderboard. + +**Arguments** + +- ``[sort_by=wins]`` The method by which to sort the leaderboard (defaults to wins). Can be one of: + + - ``wins`` Total wins + - ``avg`` Average score + - ``total`` Total correct answers from all sessions + - ``games`` Total games played. + +- ``[top=10]`` The number of ranks to show on the leaderboard. Defaults to 10 + +.. _trivia-command-trivia-leaderboard-server: + +^^^^^^^^^^^^^^^^^^^^^^^^^ +trivia leaderboard server +^^^^^^^^^^^^^^^^^^^^^^^^^ + +**Syntax** + +.. code-block:: none + + [p]trivia leaderboard server [sort_by=wins] [top=10] + +**Description** + +The trivia leaderboard for this server. + +**Arguments** + +- ``[sort_by=wins]`` The method by which to sort the leaderboard (defaults to wins). Can be one of: + + - ``wins`` Total wins + - ``avg`` Average score + - ``total`` Total correct answers from all sessions + - ``games`` Total games played. + +- ``[top=10]`` The number of ranks to show on the leaderboard. Defaults to 10 + +.. _trivia-command-trivia-list: + +^^^^^^^^^^^ +trivia list +^^^^^^^^^^^ + +**Syntax** + +.. code-block:: none + + [p]trivia list + +**Description** + +Lists the available trivia categories + +.. _trivia-command-trivia-stop: + +^^^^^^^^^^^ +trivia stop +^^^^^^^^^^^ + +**Syntax** + +.. code-block:: none + + [p]trivia stop + +**Description** + +Stops an ongoing trivia session. diff --git a/docs/index.rst b/docs/index.rst index 673cb5563..53c70ba6e 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -42,7 +42,9 @@ Welcome to Red - Discord Bot's documentation! cog_guides/downloader cog_guides/economy cog_guides/filter + cog_guides/general cog_guides/streams + cog_guides/trivia red_core_data_statement .. toctree:: diff --git a/redbot/cogs/general/general.py b/redbot/cogs/general/general.py index ec11a03fc..2ecd21552 100644 --- a/redbot/cogs/general/general.py +++ b/redbot/cogs/general/general.py @@ -216,7 +216,7 @@ class General(commands.Cog): async def lmgtfy(self, ctx, *, search_terms: str): """Create a lmgtfy link.""" search_terms = escape(urllib.parse.quote_plus(search_terms), mass_mentions=True) - await ctx.send("https://lmgtfy.com/?q={}".format(search_terms)) + await ctx.send("https://lmgtfy.app/?q={}".format(search_terms)) @commands.command(hidden=True) @commands.guild_only()