-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbot.py
69 lines (54 loc) · 2.77 KB
/
bot.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
import discord
import asyncio
import fate
from setting_storage import settings_from_user_id, target_settings_from_user_id
import setting_storage
import stats_storage
import stats
import settings
import json
import help
from settings import Settings
client = discord.Client()
@client.event
async def on_ready():
print('Logged in as')
print(client.user.name)
print(client.user.id)
print('------')
setting_storage.load_settings()
stats_storage.load_stats()
@client.event
async def on_message(message):
if message.content.startswith('!helpless'):
await settings.handle_helpless(client, message, message.author.name, message.channel, settings_from_user_id(message.author))
elif message.content.startswith('!h'):
await help.handle_help(client, message, message.author.name, message.channel, settings_from_user_id(message.author))
if message.content.startswith('!fate'):
await fate.handle_fate(client, message, message.author.name, message.channel, settings_from_user_id(message.author))
if message.content.startswith('!set'):
await settings.handle_set(client, message, message.author.name, message.channel, settings_from_user_id(message.author))
if message.content.startswith('!viewsettings'):
await settings.handle_view_settings(client, message, message.author.name, message.channel, settings_from_user_id(message.author))
if message.content.startswith('!tfate'):
await fate.handle_target_fate(client, message, message.author.name, message.channel, target_settings_from_user_id(message.author))
if message.content.startswith('!tset'):
await settings.handle_set(client, message, message.author.name, message.channel, target_settings_from_user_id(message.author))
if message.content.startswith('!tviewsettings'):
await settings.handle_view_settings(client, message, message.author.name, message.channel, target_settings_from_user_id(message.author))
if message.content.startswith('!stats'):
await stats.handle_view_stats(client, message, message.author.name, message.channel)
if message.content.startswith('!save'):
await setting_storage.save_settings()
if message.content.startswith('!wfate'):
await fate.handle_whisper_fate(client, message, message.author.name, message.channel, target_settings_from_user_id(message.author))
async def autosave_task():
await client.wait_until_ready()
while not client.is_closed:
await asyncio.sleep(300)
await setting_storage.save_settings()
await stats_storage.save_stats()
with open('.connections.json') as json_data:
connections = json.load(json_data)
client.loop.create_task(autosave_task())
client.run(connections["MAIN"])