繁体   English   中英

如何添加空白命令?(Discord.py)

[英]How do I add a blank command?(Discord.py)

我现在正在创建一个骰子机器人,并希望创建一个灵活的命令。 例如,“!1d6”(!XdY)。 另外,我想创建一个命令,例如'![GAMENAME] [COMMAND]'。 例如,“!Cthulhu CBR(50,20)”(由于游戏名称很多,因此很难手动添加。)。

双方都相信可以用相同的方式实现,但不知道采用哪种方式。 我知道如何添加on_message,但是我不知道如何使用@ client.command()添加。

请告诉我。

[我用谷歌翻译。]

import random

@client.event
async def on_message(message):
  # Takes in format dice!xdy i.e dice!3d7 rolls 3 d7 dice
  if (message.content.startswith == 'dice!'):
    await client.send_message(message.channel, 'Rolling...')
    diceArr = message.content[5:].split("d")
    totRolled = 0
    for x in range(int(diceArr[0])):
      totRolled = random.randrange(1, int(diceArr[1]), 1) + totRolled
    await client.send_message(message.channel, 'Rolled', totRolled)

这应该做。 我没有测试它,因为我的Linux笔记本电脑已经死了

非Discord版本:

import random

# Takes in format dice!xdy i.e dice!3d7 rolls 3 d7 dice
def roll(stri):
  print('Rolling...')
  diceArr = stri[5:].split("d")
  totRolled = 0
  for x in range(int(diceArr[0])):
    totRolled = random.randrange(1, int(diceArr[1]), 1) + totRolled
  print('Rolled', str(totRolled))

roll("dice!3d7")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM