# Kumatora Documentation
Kumatora is a 24/7 bot developed in **Python**, with its purpose being a general usage and administrative bot. This will get you accompanied with the various commands this bot has to offer.
## Common Commands
### **/hello** ==[member]==
Says hello to you or someone else. I mean, what else did you expect?
`Option`: A **Discord Member** only, not required.
### **/roles** ==[member]==
Checks the role count and role list of a person.
`Option`: A **Discord Member** only, not required.
### **/avatar** ==[member]==
Returns an avatar image in a circle. If a member is not specified, it will attempt to grab the profile image of yourself.
`Option`: A **Discord Member** only, not required.
#### Preview

### **/whois** ==[member]==
Returns information about a user and their profile.
`Option`: A **Discord Member** only, not required.
#### Preview

### **/ping**
Pings the bot for latency purposes.
### **/github**
The github of the creator (me!).
### **/memberlist**
Obtains a list of members within the specified server.
:::warning
:warning: Yeah, seems like this one is a work in progress at the moment.
:::
## Administration Commands
### **/warn** ==[member] [reason]==
Warns a member of the server with an added optional reason.
`Option`: A **Discord Member** only, required.
`Option`: A reason for the warning, not required.
> JSON is incomplete, and requires fixing. And while indexing and warning logging works, deleting these cases will prove to be an issue with the current system.
> [name=Raymond Allison] [time=Tue, Dec 28, 2021 11:50 AM] [color=gold]
### **/check** ==[member] [warning]==
Checks the actions taken on a member, such as bans, warns, kicks, and if specified, the specific case of a person. If member is left blank, it defaults to the **author** of the interaction, or the user.
`Option`: A **Discord Member** only, required.
`Option`: The **integer** case number of the warning.
> While the check system functions mainly as intended, there are some caveats to the system which procures errors, and they need to be fixed.
> [name=Raymond Allison] [time=Tue, Dec 28, 2021 12:04 PM] [color=gold]
### **/kick** ==[member] [reason]==
Kicks a member from the server with a specific case reason.
`Option`: A **Discord Member** only, required.
`Option`: A reason for the kick, not required.
### **/ban** ==[member] [reason]==
Bans a member from the server with a specific case reason.
`Option`: A **Discord Member** only, required.
`Option`: A reason for the ban, not required.
### **/clear**
Clears an amount of messages within a server, with an optional specified limit.
## Fun Commands
### **/8ball** ==[question]==
Operates like a run of the mill 8ball, ask it a question and it will procure an answer.
### **/state** ==[state]==
Gets a specified state from one of the 50 states within the USA.
`Option`: One of the 50 United States specified, required.
### **/territory** ==[territory]==
Gets a specified territory within the USA.
`Option`: The United States Territory specified, required.
:::warning
:warning: Yeah, seems like this one is a work in progress at the moment.
:::
> This requires a port from the previous bot which did not use slash commands, and will be transferred to a `dict`.
> [name=Raymond Allison] [time=Tue, Dec 28, 2021 12:50 PM] [color=gold]
### **/genshin** ==[character]==
Gets a specified Genshin Impact character.
`Option`: The Genshin Impact character, required.
> Its perfectly functional now, but I will be adding descriptions.
> [name=Raymond Allison] [time=Tue, Dec 28, 2021 12:50 PM] [color=gold]
### **/cointoss**
Allows for a button interaction to flip a coin once.
## Kitsu Commands
### **/kitsu** ==[anime]==
Searches for a specific anime and returns general analytics.
`Option`: The anime, required.
> There are some errors with this, specifically with **to be announced** and **concluded** anime. I will handle these `NoneType` issues soon.
> [name=Raymond Allison] [time=Tue, Dec 28, 2021 1:00 PM] [color=gold]
### **/kitsu popularity**
Returns a number of popular anime according to the Kitsu API.
> There are some errors with this, specifically with **to be announced** and **concluded** anime. I will handle these `NoneType` issues soon.
> [name=Raymond Allison] [time=Tue, Dec 28, 2021 1:00 PM] [color=gold]
## Math Commands
### **/math** ==[PARAM]==
Regular **floating point** calculation with order of operations.
### **/math integer** ==[PARAM]==
Regular **integer** calculation with order of operations.
:::warning
:warning: Yeah, seems like this one is a work in progress at the moment.
:::
## SauceNao Commands
### **pixiv** ==[url]==
Searches for **pixiv** images in relation to the image url provided.
> Index the list for the information required. Break out of for statement when one is matched.
#### Preview

### **booru** ==[url]==
Searches for **booru** images in relation to the image url provided.
#### Preview
## Spotify Commands
### **/spotify** ==[member]==
Returns a track card with interactable buttons.
#### Track Card Example ==(Christmas Theme)==

`Option`: A **Discord Member** only, required.
`Button`: A **link** to the song preview.
`Button`: A **in app preview** of the song.
`Button`: A **lyrics finder** that checks the **Genius** API for lyrics.
## Weather Commands
### **/weather** ==[location] [standard]==
Gives general weather statistics within that area.
#### Preview

`Option`: A **location** only, be it a city, state, region or country, required.
`Option`: `metric` or `imperial` **only** should be typed in. If it is something else, it will result to a `imperial` standard.
`Button`: Link to weather statistics with the source provided.
### **/forecast** ==[location] [standard]==
Gets the weekly forecast within that area.
#### Preview

`Option`: A **location** only, be it a city, state, region or country, required.
`Option`: `metric` or `imperial` **only** should be typed in. If it is something else, it will result to a `imperial` standard.
`Button`: Link to weather statistics with the source provided.
### **/temperature** ==[location] [standard]==
Gets the temperature within that area.
#### Preview

`Option`: A **location** only, be it a city, state, region or country, required.
`Option`: `metric` or `imperial` **only** should be typed in. If it is something else, it will result to a `imperial` standard.
## Waifu Commands
We are **NOT** doing this again!
## Neko Commands
Move on from this degeneracy...
### **/neko**
### **/neko gif**
### **/neko poke** ==[member]==
### **/neko slap** ==[member]==
### **/neko hug** ==[member]==
### **/neko pat** ==[member]==
### **/neko smug**
### **/neko avatar**
### **/neko wallpaper**
## Owoify Commands
I said move on...
### **/owoify** ==[text]==
Allows for a dropdown to select the level of setting to deploy.
:::warning
:warning: Yeah, seems like this one is a work in progress at the moment.
:::
`Option`: The text you want to be owoified, required.
### **/owoify low** ==[text]==
The lowest setting of owoify.
`Option`: The text you want to be owoified, required.
### **/owoify medium** ==[text]==
The medium setting of owoify.
`Option`: The text you want to be owoified, required.
### **/owoify maximum** ==[text]==
The maximum setting of owoify.
`Option`: The text you want to be owoified, required.
### **NAME** ==[PARAM]==