본문 바로가기

Programing/python

파이썬으로 디스코드 봇 만들기 #3 - embed출력, 게임 바꾸기

안녕하세요! 터컴입니다. 벌써 3번째 차시네요ㅎㅎ

오늘은 embed를 출력하고, 게임을 바꿔볼거에요!


먼저 embed를 하는 방법은 


import discord

app = discord.Client()

TOKEN = '여러분들이 발급받으신 TOKEN'

@app.event
async def on_ready(): #디스코드에 로그인 했을때
    print("i'm ready!") #I'm ready라고 출력
@app.event
async def on_message(message): #메시지가 왔을때
    print(message.content) #메시지 출력
    if message.content.startswith('!test'): #만약 메시지가 !test로 사직한다면
        await message.channel.send('test message!') #test message라고 답장합니다.

app.run(TOKEN) #디스코드에 로그인

여기서 await message.channel.send('test message!')를


embed = discord.Embed(title="test 제목", description="test 설명", color=0x00ff00)
embed.set_footer(text = "test 푸터")
embed.set_image(url="https://i.imgur.com/QqYk6ht.png")
await message.channel.send(embed=embed)

로 바꿔줍니다.

성공입니다.(12시네요.,....배고프다..)


이제 게임을 바꿔보겠습니다.


import discord

app = discord.Client()

TOKEN = '발급받으신 token'

@app.event
async def on_ready(): #디스코드에 로그인 했을때
    print("i'm ready!") #I'm ready라고 출력
    game = discord.Game('안녕하세요!:>') #게임 = 디스코드게임(이름=안녕하세요)
    await app.change_presence(status=discord.Status.idle, activity=game) #게임 바꾸기
@app.event
async def on_message(message): #메시지가 왔을때
    print(message.content) #메시지 내용 출력
    if message.content.startswith('!test'): #만약 메시지가 !test로 시작한다면
        embed = discord.Embed(title="test 제목", description="test 설명", color=0x00ff00) #embed지정
        embed.set_footer(text = "test 푸터") #embed에 푸터 추가
        embed.set_image(url="https://i.imgur.com/QqYk6ht.png") #embed에 이미지 추가
        await message.channel.send(embed=embed) #embed전송

app.run(TOKEN) #디스코드에 로그인

뭐가 달라졌는지 눈치 채셨나요?


game = discord.Game('안녕하세요!:>') #게임 = 디스코드게임(이름=안녕하세요)
await app.change_presence(status=discord.Status.idle, activity=game) #게임 바꾸기

가 추가되었습니다!

다른 게임을 노출(?)하고 싶으시다면 game = discord.Game('안녕하세요!:>')에서 안녕하세요!:>를 바꿔주시면 됩니다.

 

다음 편에서는 응용(?)을 하여 만약 메시지가 !embed [제목] [내용]으로 오면 embed를 출력하는 방법을 알아보도록 하겠습니다.

 

감사합니다