5963966f by Barry

Added whoplayed to list games played.

1 parent 9d7c0982
...@@ -196,6 +196,7 @@ You can ask compound or questions and I will choose. Example: HellsBot Rui is a ...@@ -196,6 +196,7 @@ You can ask compound or questions and I will choose. Example: HellsBot Rui is a
196 !msg <username> on 12/22/2015 Happy Birthday! 196 !msg <username> on 12/22/2015 Happy Birthday!
197 !games <username> - Returns a list of games played for a username. 197 !games <username> - Returns a list of games played for a username.
198 !gameslist - Returns a list of the top 20 games and the number of people who have played that game. 198 !gameslist - Returns a list of the top 20 games and the number of people who have played that game.
199 !whoplayed <gamename> - Returns a list of players who have played the game.
199 !lastseen <username> - Returns info on when the user was last seen and their status. 200 !lastseen <username> - Returns info on when the user was last seen and their status.
200 !addfortune <fortune> - Adds a new fortune. 201 !addfortune <fortune> - Adds a new fortune.
201 !fortune - Returns your fortune 202 !fortune - Returns your fortune
...@@ -276,6 +277,35 @@ You can ask compound or questions and I will choose. Example: HellsBot Rui is a ...@@ -276,6 +277,35 @@ You can ask compound or questions and I will choose. Example: HellsBot Rui is a
276 client.send_message(message.channel, 'I don\'t have any data on {} yet {}'.format(username, message.author.mention())) 277 client.send_message(message.channel, 'I don\'t have any data on {} yet {}'.format(username, message.author.mention()))
277 return 278 return
278 279
280 if message.content.startswith('!whoplayed'):
281 member_data = None
282 try:
283 json_data=open(member_status).read()
284 member_data = json.loads(json_data)
285 except ValueError:
286 pass
287 if not member_data:
288 client.send_message(message.channel, 'I am a bit confused right now.. maybe I need more data. {}!'.format(message.author.mention()))
289 else:
290 game_name = message.content[11:]
291 json_data=open(games_file).read()
292 data = json.loads(json_data)
293 game_id = 0
294 for game in data:
295 if game['name'].lower() == game_name.lower():
296 game_id = game['id']
297 if game_id == 0:
298 client.send_message(message.channel, 'I don\'t have any data on {} yet {}'.format(game_name, message.author.mention()))
299
300 matched_usernames = []
301 for username in member_data:
302 if 'games_played' in member_data[username]:
303 for id in member_data[username]['games_played']:
304 if id == game_id:
305 matched_usernames.append(username)
306 client.send_message(message.channel, 'I have seen {} playing: {}'.format(', '.join(matched_usernames), game_name))
307
308 return
279 # !msg joe in 5 minutes YOU ARE A DICK 309 # !msg joe in 5 minutes YOU ARE A DICK
280 if message.content.startswith('!msg'): 310 if message.content.startswith('!msg'):
281 try: 311 try:
......
1 {"zan": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 10:21:42", "mention": "<@65178351664377856>", "prev_status": "online", "game_id": null, "games_played": [], "afk_at": "2015/12/03 09:31:08", "id": "65178351664377856"}, "solidsteak": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 14:34:50", "mention": "<@62955839694053376>", "prev_status": "idle", "game_id": 248, "games_played": [248, null], "afk_at": "2015/12/03 13:30:20", "id": "62955839694053376"}, "apple": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 07:23:35", "prev_status": "offline", "games_played": [1], "game_id": 1, "afk_at": "2015/12/03 07:23:35"}, "sheik": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 16:57:39", "mention": "<@48148712194576384>", "prev_status": "idle", "game_id": null, "games_played": [283, null], "afk_at": "2015/12/03 16:34:44", "id": "48148712194576384"}, "rae": {"status": "idle", "is_afk": true, "status_change_at": "2015/12/03 11:38:52", "mention": "<@48162082507456512>", "prev_status": "online", "games_played": [], "game_id": null, "afk_at": "2015/12/03 11:38:52", "id": "48162082507456512"}, "marion": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 05:14:48", "prev_status": "online", "games_played": [1, null], "game_id": null, "afk_at": "2015/12/02 08:30:16"}, "shyrith": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 08:10:52", "prev_status": "online", "games_played": [1, 644, null], "game_id": null, "afk_at": "2015/12/02 21:54:35"}, "rui": {"status": "offline", "mention": "<@63649222993391616>", "is_afk": false, "games_played": [], "game_id": null, "afk_at": "2015/12/03 03:48:05", "status_change_at": "2015/12/03 17:03:58", "id": "63649222993391616", "prev_status": "online"}, "goshzilla": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 15:54:28", "mention": "<@47934670406422528>", "prev_status": "idle", "game_id": null, "games_played": [3, null], "afk_at": "2015/12/03 10:34:28", "id": "47934670406422528"}, "scoops": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 12:53:55", "mention": "<@65211875771559936>", "prev_status": "online", "games_played": [347, null, 0, 644], "game_id": null, "afk_at": "2015/12/02 08:26:41", "id": "65211875771559936"}, "arka": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 16:19:31", "mention": "<@121466618126532608>", "prev_status": "idle", "game_id": 313, "games_played": [1, null, 313], "afk_at": "2015/12/03 15:50:46", "id": "121466618126532608"}, "wriggle": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 16:34:53", "mention": "<@80169354666192896>", "prev_status": "online", "game_id": null, "games_played": [], "afk_at": "2015/12/02 15:37:49", "id": "80169354666192896"}, "tim": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 09:23:38", "mention": "<@109145030354030592>", "prev_status": "online", "games_played": [], "game_id": null, "afk_at": "2015/12/03 07:37:21", "id": "109145030354030592"}, "charisma": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 14:17:20", "mention": "<@65187139276513280>", "prev_status": "online", "game_id": null, "games_played": [313, null], "afk_at": "2015/12/03 00:08:06", "id": "65187139276513280"}, "sig": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 09:09:59", "mention": "<@104055037243707392>", "prev_status": "online", "games_played": [8, null, 7, 466], "game_id": null, "afk_at": "2015/12/03 05:32:12", "id": "104055037243707392"}, "mr. nelson": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 07:26:31", "prev_status": "idle", "games_played": [], "game_id": null, "afk_at": "2015/12/03 07:14:03"}, "skeletonhorn": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 00:36:39", "prev_status": "offline", "games_played": [], "game_id": null, "afk_at": "2015/12/03 00:36:39"}, "azia": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 16:49:38", "mention": "<@121404665727418368>", "prev_status": "idle", "games_played": [], "game_id": null, "afk_at": "2015/12/03 16:46:57", "id": "121404665727418368"}, "projectaria": {"status": "idle", "is_afk": true, "status_change_at": "2015/12/03 16:56:18", "mention": "<@48146724769763328>", "prev_status": "online", "games_played": [1, null], "game_id": null, "afk_at": "2015/12/03 16:56:18", "id": "48146724769763328"}, "moss": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 14:42:18", "mention": "<@48168872238387200>", "prev_status": "idle", "game_id": 1, "games_played": [0, null, 1, 715], "afk_at": "2015/12/03 14:25:50", "id": "48168872238387200"}, "yobi": {"status": "idle", "is_afk": true, "status_change_at": "2015/12/03 08:53:52", "prev_status": "online", "games_played": [3], "game_id": 3, "afk_at": "2015/12/03 08:53:52"}, "richter": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 15:37:57", "mention": "<@49237234515181568>", "prev_status": "idle", "games_played": [], "game_id": null, "afk_at": "2015/12/03 15:34:50", "id": "49237234515181568"}, "grey": {"status": "idle", "is_afk": true, "status_change_at": "2015/12/03 09:13:13", "mention": "<@48120346410221568>", "prev_status": "online", "games_played": [550, null, 1], "game_id": 1, "afk_at": "2015/12/03 09:13:13", "id": "48120346410221568"}, "hellsbreath": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 16:50:56", "mention": "<@78767557628133376>", "prev_status": "offline", "games_played": [326, null, 660, 680], "game_id": null, "afk_at": "2015/12/03 09:46:34", "id": "78767557628133376"}, "green": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 10:19:43", "mention": "<@63098846506397696>", "prev_status": "online", "game_id": null, "games_played": [4, null], "afk_at": "2015/12/03 09:19:41", "id": "63098846506397696"}, "xorfos": {"status": "idle", "is_afk": true, "status_change_at": "2015/12/03 17:01:14", "mention": "<@121019458700443650>", "prev_status": "online", "game_id": null, "games_played": [], "afk_at": "2015/12/03 17:01:14", "id": "121019458700443650"}, "salt": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 16:19:51", "mention": "<@48140539459010560>", "prev_status": "offline", "game_id": null, "games_played": [466, 8, null, 680], "afk_at": "2015/12/03 10:31:50", "id": "48140539459010560"}, "cae": {"status": "idle", "is_afk": true, "status_change_at": "2015/12/03 12:00:09", "mention": "<@65178683714830336>", "prev_status": "online", "games_played": [], "game_id": null, "afk_at": "2015/12/03 12:00:09", "id": "65178683714830336"}}
...\ No newline at end of file ...\ No newline at end of file
1 {"zan": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 10:21:42", "mention": "<@65178351664377856>", "prev_status": "online", "game_id": null, "games_played": [], "afk_at": "2015/12/03 09:31:08", "id": "65178351664377856"}, "solidsteak": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 14:34:50", "mention": "<@62955839694053376>", "prev_status": "idle", "game_id": 248, "games_played": [248, null], "afk_at": "2015/12/03 13:30:20", "id": "62955839694053376"}, "apple": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 07:23:35", "prev_status": "offline", "games_played": [1], "game_id": 1, "afk_at": "2015/12/03 07:23:35"}, "sheik": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 17:39:42", "mention": "<@48148712194576384>", "prev_status": "idle", "game_id": null, "games_played": [283, null], "afk_at": "2015/12/03 17:12:14", "id": "48148712194576384"}, "rae": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 17:48:43", "mention": "<@48162082507456512>", "prev_status": "idle", "game_id": null, "games_played": [], "afk_at": "2015/12/03 11:38:52", "id": "48162082507456512"}, "marion": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 05:14:48", "prev_status": "online", "games_played": [1, null], "game_id": null, "afk_at": "2015/12/02 08:30:16"}, "shyrith": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 08:10:52", "prev_status": "online", "games_played": [1, 644, null], "game_id": null, "afk_at": "2015/12/02 21:54:35"}, "rui": {"status": "offline", "mention": "<@63649222993391616>", "is_afk": false, "games_played": [], "game_id": null, "afk_at": "2015/12/03 03:48:05", "status_change_at": "2015/12/03 17:52:49", "id": "63649222993391616", "prev_status": "online"}, "goshzilla": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 15:54:28", "mention": "<@47934670406422528>", "prev_status": "idle", "game_id": null, "games_played": [3, null], "afk_at": "2015/12/03 10:34:28", "id": "47934670406422528"}, "eeri": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 17:18:42", "mention": "<@122023217371021313>", "prev_status": "offline", "games_played": [], "game_id": null, "afk_at": "2015/12/03 17:18:42", "id": "122023217371021313"}, "arka": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 16:19:31", "mention": "<@121466618126532608>", "prev_status": "idle", "game_id": 313, "games_played": [1, null, 313], "afk_at": "2015/12/03 15:50:46", "id": "121466618126532608"}, "wriggle": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 17:48:13", "mention": "<@80169354666192896>", "prev_status": "online", "games_played": [], "game_id": null, "afk_at": "2015/12/02 15:37:49", "id": "80169354666192896"}, "tim": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 09:23:38", "mention": "<@109145030354030592>", "prev_status": "online", "games_played": [], "game_id": null, "afk_at": "2015/12/03 07:37:21", "id": "109145030354030592"}, "charisma": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 14:17:20", "mention": "<@65187139276513280>", "prev_status": "online", "game_id": null, "games_played": [313, null], "afk_at": "2015/12/03 00:08:06", "id": "65187139276513280"}, "sig": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 09:09:59", "mention": "<@104055037243707392>", "prev_status": "online", "games_played": [8, null, 7, 466], "game_id": null, "afk_at": "2015/12/03 05:32:12", "id": "104055037243707392"}, "richter": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 15:37:57", "mention": "<@49237234515181568>", "prev_status": "idle", "games_played": [], "game_id": null, "afk_at": "2015/12/03 15:34:50", "id": "49237234515181568"}, "mr. nelson": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 07:26:31", "prev_status": "idle", "games_played": [], "game_id": null, "afk_at": "2015/12/03 07:14:03"}, "skeletonhorn": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 00:36:39", "prev_status": "offline", "games_played": [], "game_id": null, "afk_at": "2015/12/03 00:36:39"}, "azia": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 16:49:38", "mention": "<@121404665727418368>", "prev_status": "idle", "games_played": [], "game_id": null, "afk_at": "2015/12/03 16:46:57", "id": "121404665727418368"}, "projectaria": {"status": "idle", "is_afk": true, "status_change_at": "2015/12/03 16:56:18", "mention": "<@48146724769763328>", "prev_status": "online", "games_played": [1, null], "game_id": null, "afk_at": "2015/12/03 16:56:18", "id": "48146724769763328"}, "moss": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 14:42:18", "mention": "<@48168872238387200>", "prev_status": "idle", "game_id": 0, "games_played": [0, null, 1, 715], "afk_at": "2015/12/03 14:25:50", "id": "48168872238387200"}, "yobi": {"status": "idle", "is_afk": true, "status_change_at": "2015/12/03 08:53:52", "prev_status": "online", "games_played": [3], "game_id": 3, "afk_at": "2015/12/03 08:53:52"}, "scoops": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 12:53:55", "mention": "<@65211875771559936>", "prev_status": "online", "games_played": [347, null, 0, 644], "game_id": null, "afk_at": "2015/12/02 08:26:41", "id": "65211875771559936"}, "grey": {"status": "idle", "is_afk": true, "status_change_at": "2015/12/03 09:13:13", "mention": "<@48120346410221568>", "prev_status": "online", "games_played": [550, null, 1], "game_id": 1, "afk_at": "2015/12/03 09:13:13", "id": "48120346410221568"}, "hellsbreath": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 17:38:17", "mention": "<@78767557628133376>", "prev_status": "idle", "game_id": null, "games_played": [326, null, 660, 680], "afk_at": "2015/12/03 17:38:07", "id": "78767557628133376"}, "green": {"status": "offline", "is_afk": false, "status_change_at": "2015/12/03 10:19:43", "mention": "<@63098846506397696>", "prev_status": "online", "game_id": null, "games_played": [4, null], "afk_at": "2015/12/03 09:19:41", "id": "63098846506397696"}, "xorfos": {"status": "idle", "is_afk": true, "status_change_at": "2015/12/03 17:49:52", "mention": "<@121019458700443650>", "prev_status": "online", "games_played": [], "game_id": null, "afk_at": "2015/12/03 17:49:52", "id": "121019458700443650"}, "salt": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 17:26:14", "mention": "<@48140539459010560>", "prev_status": "idle", "game_id": null, "games_played": [466, 8, null, 680], "afk_at": "2015/12/03 17:21:14", "id": "48140539459010560"}, "cae": {"status": "online", "is_afk": false, "status_change_at": "2015/12/03 17:48:44", "mention": "<@65178683714830336>", "prev_status": "idle", "games_played": [], "game_id": null, "afk_at": "2015/12/03 17:40:32", "id": "65178683714830336"}}
...\ No newline at end of file ...\ No newline at end of file
......