【发布时间】:2020-09-14 10:44:56
【问题描述】:
我试图在我的机器人中加入一个调平系统,但出了点问题。级别在每条消息之后而不是在指定参数之后上升。如何让它正常工作?如何用discord.py创建调平系统?
这是我的代码:
@client.event
async def on_message( message ):
if message.author.bot:
return
else:
member = message.author.name
msg_len = len(message.content)
rand_number_1 = randint( 1, 10 )
exp_first = msg_len * rand_number_1
coins_first = exp_first // 10
data_levels_member_first = { 'exp': 0, 'coins': 0, 'level': 0}
filename = f'./Data/Profiles/Profile{message.author.name}{message.guild}.json'
try:
data = load( filename )
except Exception:
dump( filename, data_levels_member_first )
data = load( filename )
exp_member = data['exp']
coins_member = data['coins']
lvl_member = data['level']
exp = exp_first + exp_member
coins = coins_first + coins_member
lvl = exp ** (1/4)
if lvl_member < lvl:
lvl_member += 1
print('You lvl up!')
data_levels_member = { 'exp': exp, 'coins': coins, 'level': lvl_member}
dump( filename, data_levels_member )
await client.process_commands(message)
【问题讨论】:
-
你能分享你的代码吗?
-
请编辑您的问题以包含您现有的代码、任何需要的回溯以及您的预期行为(例如,下一级需要多少 XP)
标签: python bots discord discord.py