第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

事件可以執(zhí)行命令嗎?如果是這樣,我怎樣才能讓我的人這樣做呢?

事件可以執(zhí)行命令嗎?如果是這樣,我怎樣才能讓我的人這樣做呢?

慕桂英3389331 2023-08-15 16:33:17
因此,我試圖創(chuàng)建一個(gè)事件,一旦用戶輸入特定單詞(不是命令,實(shí)際上是單詞/字符串),該事件將觸發(fā)現(xiàn)有命令。是的,您可能想知道“為什么不讓用戶自己鍵入命令?” 好吧,為什么情況并非如此,這很難解釋??匆幌逻@個(gè):僅當(dāng)該人輸入“無”(字面意思是“無”一詞)時(shí),我的活動(dòng)才會(huì)起作用。最終,該人不會(huì)期望機(jī)器人實(shí)際上將此作為命令,因此他/她不會(huì)將其作為命令鍵入(帶有前綴等)這是我的代碼:@client.command()async def menu(ctx)#here, well, goes what I want the command to do but it's not the issue@client.eventasync def on_message(message):    if message.content.startswith("nothing"):        #here idk how to execute the command up there. That's my question我希望我能清楚地說明我的問題。不要擔(dān)心命令執(zhí)行什么,或者為什么事件的消息是“無”。我真的很想知道如何使這項(xiàng)工作成功。有朋友建議我調(diào)用該命令,但我真的不知道該怎么做,每次嘗試都行不通。其他人建議調(diào)用該函數(shù),但我也嘗試了,但行不通。我不知道我輸入的內(nèi)容是否正確,或者它是否根本不起作用。我希望有人在這里幫助我。提前致謝。
查看完整描述

2 回答

?
開心每一天1111

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超13個(gè)贊

get_context,這需要一個(gè)消息對(duì)象。然后invoke。請(qǐng)記住,使用此方法有 3 個(gè)缺點(diǎn)。

  1. 轉(zhuǎn)換器(類型提示)不會(huì)被觸發(fā)。您需要將正確的類型傳遞給參數(shù)。

  2. 檢查將被繞過。您可以對(duì)非所有者調(diào)用僅限所有者的命令,它仍然有效。

  3. 如果ctx.invoke在命令外部調(diào)用(例如 eval),則錯(cuò)誤處理程序?qū)⒉粫?huì)觸發(fā)。

@client.command()

async def menu(ctx):

? ? await ctx.send("Hello")



@client.event

async def on_message(message):

? ? if message.content.startswith("nothing"):

? ? ? ? ctx = await client.get_context(message)

? ? ? ? await ctx.invoke(menu)

? ? await client.process_commands(message)


查看完整回答
反對(duì) 回復(fù) 2023-08-15
?
桃花長(zhǎng)相依

TA貢獻(xiàn)1860條經(jīng)驗(yàn) 獲得超8個(gè)贊

如果您的客戶端是一個(gè)Bot實(shí)例,您可以使用Bot.get_context()創(chuàng)建您自己的上下文并從那里調(diào)用命令:


import discord

from discord.ext import commands


bot = commands.Bot(command_prefix='!')


@bot.command()

async def menu(ctx):

? ? await ctx.send('bar')


@bot.event

async def on_message(message):

? ? if message.content.startswith('foo'):

? ? ? ? ctx = await bot.get_context(message, cls=commands.Context)

? ? ? ? ctx.command = bot.get_command('menu')

? ? ? ? await bot.invoke(ctx)


? ? await bot.process_commands(message)


查看完整回答
反對(duì) 回復(fù) 2023-08-15
  • 2 回答
  • 0 關(guān)注
  • 160 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)