【Proladon】Code a discord bot - EP3 - ctx引數 & ping指令

Поделиться
HTML-код
  • Опубликовано: 17 ноя 2024
  • #discord #bot #python #discord機器人

Комментарии • 53

  • @oofman406
    @oofman406 2 года назад +1

    老師真的講解滿細的
    讓我這python只有基礎程度的菜鳥也可以聽懂xDD

  • @emasxiao5421
    @emasxiao5421 5 лет назад +9

    你的影片教得很好,我希望可以再教深入一點,我每一集都全部看完,感恩老師大大 >..

  • @YUIOO1748
    @YUIOO1748 3 года назад

    我都有耐心把影片看完XDD

  • @和風-l4f
    @和風-l4f 4 года назад +4

    我問一下可以讓機器人報告當下的時間嗎
    可以的話教一下

  • @曾琮育
    @曾琮育 3 года назад

    我想敲碗匿名聊天
    找不到有類似功能的機器人
    感謝大大

  • @風-j6q
    @風-j6q 4 года назад

    老師的影片都說的很詳細 可以教怎麼用discord bot講話嗎

  • @千羽wongwong
    @千羽wongwong 3 года назад +2

    想請問你字體、噴粒子方塊的外掛,好可愛啊啊

    • @wdw781
      @wdw781 2 года назад

      噴粒子的是 power mode
      字體我不知道ㄟ

  • @黃昱翔-n1x
    @黃昱翔-n1x 4 года назад +1

    請問一下
    我拿影片中的ping函式當例子
    如果我想要改成只有在特定頻道打指令的才有反應的話,我應該要怎麼寫判斷式呢?
    我自己原本想用ctx.channel == bot.get_channel(id)
    但是失敗了
    看官方API,原因好像是兩個物件類別不同
    請問我應該怎麼修改呢?

    • @Proladon
      @Proladon  4 года назад

      bot.get_channel(id) 這是看你給的ID頻道是哪種類型
      你放語音頻的ID 回傳就是 Voice.Channel
      你放文字頻的ID 回傳就是 Text.Channel
      ctx.channel 回傳的只會是 Text.Channel (你輸入指令的文字頻道)
      ctx.channel == bot.get_channel(id) 這邏輯是對的
      我不確定你錯誤的原因是什麼 還有你程式碼確切怎麼打
      可以的話最好把程式碼跟報錯貼上來

  • @dennywu6494
    @dennywu6494 4 года назад

    提醒大家我遇到的一個坑
    ctx is a required argument that is missing.
    全部都是照範例code
    發現原因是python版本是3.5會裝到舊的 discord.py package
    python 改為 3.5.3 以上可以解決

    • @Proladon
      @Proladon  4 года назад

      其實這些版本的要求資訊 官方的API文件上都有寫w
      所以大家要學會看官方文件啊~!

  • @lin3355
    @lin3355 Год назад

    大大你的像素字體是怎麼用的阿

  • @cell5974
    @cell5974 2 года назад

    Traceback (most recent call last):
    File "d:\Y\Documents\GitHub\dc-bot\bot.py", line 21, in
    @bot.commands()
    TypeError: 'set' object is not callable
    請問老師,這個是發生了什麼問題?

    • @辜棨睿
      @辜棨睿 Год назад

      是command,你多了一個s

  • @楊竣凱-j5z
    @楊竣凱-j5z 5 лет назад +1

    最近發現一個問題,如果讓bot自己傳送指令的訊息到頻道上,並不會觸發指令,例如如果讓bot傳送[ping的訊息,並不會觸發ping()然後傳送ping值到頻道上,不知道有沒有方法可以讓bot自己觸發自己,我現在只想到可以用一個on_message()監聽,如果message.content=='[ping' and massage.author == bot.user 就 await message.channel.send(f'{bot.latency}'),不過這樣很麻煩,等於每個指令功能都要有監聽器然後重寫功能,雖然bot自己觸發自己好像不是很make sense的功能 哈哈XDDD
    PS: 我會想到這個是看到你後面影片的[say的指令,我就想說那如果用 [say [ping 會怎樣,結果bot就刪掉我的message然後傳送[ping個訊息而已,沒有執行ping()

    • @Proladon
      @Proladon  5 лет назад

      如果你沒設定, 預設會將 self bot 關閉
      是為了避免bot無限觸發自己的指令

  • @Ir1019tw
    @Ir1019tw 3 года назад

    要怎麼指定出那個打指令的人 求回復

  • @969keroro
    @969keroro 4 года назад

    我輸入ping他會給我兩行ping 一行有四捨五入 一行沒有 怎麼吧沒有的哪行刪除掉啊‘?

    • @joshuachan6317
      @joshuachan6317 3 года назад

      估計你是把你的Bot 同時運行了兩個。

  • @digocha6089
    @digocha6089 3 года назад

    求vscode的style 太酷了