-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathlevel_rewards.py
92 lines (74 loc) · 2.79 KB
/
level_rewards.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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
import sqlite3
connect = sqlite3.connect('level_and_guild_settings.db')
c = connect.cursor()
c.execute('''CREATE TABLE IF NOT EXISTS guild_settings (
guild_id INTEGER PRIMARY KEY,
leveling_enabled INTEGER DEFAULT 1
)''')
c.execute("CREATE TABLE IF NOT EXISTS lr (guild_id INTEGER, level INTEGER, role INTEGER, PRIMARY KEY (guild_id, level))")
# c.execute('''CREATE TABLE IF NOT EXISTS leveling (
# guild_id INTEGER,
# user_id INTEGER,
# level INTEGER DEFAULT 0,
# xp INTEGER DEFAULT 0,
# PRIMARY KEY (guild_id, user_id)
# )''')
connect.commit()
def add_role(guild_id:int, level:int, roleid:int):
try:
c.execute("INSERT OR REPLACE INTO lr (guild_id, level, role) VALUES (?, ?, ?)", (guild_id, level, roleid))
connect.commit()
return True
except KeyError:
return False
def enable(guild_id:int):
c.execute("UPDATE guild_settings SET leveling_enabled = 1 WHERE guild_id = ?", (guild_id,))
connect.commit()
return True
def disable(guild_id:int):
c.execute("UPDATE guild_settings SET leveling_enabled = 0 WHERE guild_id = ?", (guild_id,))
connect.commit()
return True
def get_enabled(guild_id:int):
c.execute("SELECT leveling_enabled FROM guild_settings WHERE guild_id = ?", (guild_id,))
connect.commit()
row = c.fetchone()
try:
if row[0] == 1:
return True
else:
return False
except TypeError as e:
raise e
def get_one_role(guild_id:int, level:int):
c.execute("SELECT level, role FROM lr WHERE guild_id = ?", (guild_id,))
connect.commit()
row = c.fetchall()
for data in row:
level_getting, role_id = data
if level_getting == level:
return row[0]
else:
return None
def get_all_rewards(guild_id:int):
c.execute("SELECT level, role FROM lr WHERE guild_id = ?", (guild_id,))
connect.commit()
row = c.fetchall()
return row
def Convert(give_list:list) -> dict:
it = iter(give_list)
res_dct = dict(zip(it, it))
return res_dct
def check_whether_if(server_id:int):
c.execute("SELECT * FROM guild_settings WHERE guild_id = ?", (server_id,))
rows = c.fetchone()
if rows is None:
c.execute("INSERT INTO guild_settings (guild_id, leveling_enabled) VALUES (?, ?)", (server_id, 1))
connect.commit()
else:
c.execute("UPDATE guild_settings SET leveling_enabled = leveling_enabled WHERE guild_id = ?", (server_id,))
connect.commit()
# def add_xp_or_level(guild_id:int, user_id:int, xp:int, level:int):
# c.execute("INSERT OR REPLACE INTO leveling (guild_id, user_id, level, xp) VALUES (?, ?, ?, ?)", (guild_id, user_id, level, xp))
# connect.commit()
# return True