creamy-cogs's People
Forkers
will-hedgescreamy-cogs's Issues
Add Contributing.MD, update README to include.
Prettify match postings
When a match starts, show champion picture, team comps, make it an embed, etc.
When shutting down while matches are enabled lots of unclosed sessions.
Move all standard API call logic into one function to call.
Calling Riot's API is scattered between multiple functions, simplify and consolidate.
Command that shows active games.
Simple command that lists all current active games tracked by the cog.
When check-games ends a match, it posts a new one in the next loop, then closes that. Only happens 1x per match.
Allow user to toggle polling on their account off.
- When registering a summoner, add a boolean field to the saved information of whether or not we are checking their live games, default to true.
- Create a command within leagueset commands that allows you to toggle this flag for yourself.
- Within check_games, evaluate this flag while looping through registered_summoners.
Let users tell you if a game is ended.
As an edge case, if we don't find a game ending, let the user automatically end it to clear it from list. Probably should double check against the API.
Listen for key updates to update our value.
Check out Red streams cog for example of this.
Standardize log statements
Is your feature request related to a problem? Please describe.
- I find it difficult to follow
log
statements across modules when all of the cog modules are named the same
Describe the solution you'd like
-
A set format for module-specific logs, such as
log = logging.getLogger(red.repo-name.cog-name.module-name)
- ex.
log = logging.getLogger(red.creamy-cogs.leaguecog.blitzcrank)
- ex.
Standardizing imports and style guide/PEP8
Nitpicky, but I'm happy to go through and do this. I think we keep going back and forth.
PEP8 on imports... TL;DR:
Imports should be grouped in the following order:
1. Standard library imports.
2. Related third party imports.
3. Local application/library specific imports.
Customs should only post if it is a 5v5, without bots.
Add clash to list of game types
Game type 700
Command to remove all of a user's specific data.
Title
Reduce complexity of check_games
check_games function in Blitzcrank.py currently fails complexity check but it is overridden since it is working at the moment.
Needs refactor, might be solved by #11
Instead of looping through registered summoners could we just loop through members with account info?
Remove .pyc files, add to .gitignore
Create a standard chatter class for handling all posting to Discord.
Similar to how Blitzcrank handles all API pulling, this would handle all posting to Discord.
Calculate refresh timer dynamically
Depending on how many registered summoners there are, we should calculate how often we can run the check_games logic without getting close to Riot's throttle limit.
20 requests every 1 second
100 requests every 2 minutes
Anytime new summoner is registered, recalculate.
When closing a match, determine if they won or lost.
When closing the match, put it in a pending state. Then determine if they won or lost, and update the embed accordingly.
Cog Installation Walk-through
When this cog is first installed it should force user through a setup.
This setup should help them
- Setup their API key
- Let them decide if they want announcements when registered users start games.
- If they choose yes to 2, help them set an announcement channel.
- Let user decide if they want gambling on games.
- If yes and economy is turned off, tell them how to turn it on.
Rename abc.py to avoid conflicts with built-in module abc
since abc
is already a Python module, perhaps rename abc.py
to:
mim.py
ormixinmeta.py
abstract_base_creams.py
or the like
You should not be able to register a summoner name if it is already registered in the guild.
Close matches when they are over.
Guess roles for match postings using library
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.