@ Nemesis Essayez d'implémenter Yuma en Java et @ nekozuki_dev Essayez d'implémenter Yuma dans Discord Bot Il s'agit de la version discord.py de (http://qiita.com/nekozuki_dev/items/485d47a459a63f59400f). Si vous êtes nouveau sur discord.py, veuillez lire quelque chose comme Bot Discord pratique en Python (explication discordpy). (Je ne pense pas) Puisqu'il s'agit du premier article, je suis désolé s'il y a quelque chose de difficile à lire. ** Attention au thème léger! ** **
Scanner keiyakusho = new Scanner(System.in);
String name = keiyakusho.nextLine();
Dans l'original, l'entrée est demandée à la console comme ceci,
"Vous avez un surnom!" C'est pourquoi j'utiliserai un surnom cette fois.
System.out.println("A partir de maintenant, ton nom est"+newName+"Il est. Attention,"+newName+"C'est vrai. Je répondrai quand je comprendrai"+newName+"!!");
Dans l'original, seul le résultat est affiché, mais comme le surnom peut être modifié avec l'API Discord, je vais en fait changer le surnom.
J'écrirai en fait le code.
Utilisez celui qui est Officiel préparé.
import discord
client = discord.Client()
@client.event
async def on_ready():
print('We have logged in as {0.user}'.format(client))
@client.event
async def on_message(message):
if message.author == client.user:
return
if message.content.startswith('$hello'):
await message.channel.send('Hello!')
client.run('your token here')
Maintenant, vous avez un Bot qui répond lorsque vous envoyez $ hello
.
User.menteled_in
( ClientUser.mentlined_in
Utilisez /ja/latest/api.html#discord.ClientUser.mentrated_in)) pour faire un jugement de mention.
if message.content.startswith('$hello'):
await message.channel.send('Hello!')
À
if client.user.mentioned_in(message):
await message.channel.send('Hello!')
À ~~ Une scène précieuse où Yuma parle anglais ~~
await message.channel.send('Hello!')
Je vais changer ici.
System.out.println("C'est un contrat. Écrivez votre nom ici.");
Scanner keiyakusho = new Scanner(System.in);
String name = keiyakusho.nextLine();
System.out.println("Hung."+name +"Je veux dire. C'est un nom luxueux.");
Random random = new Random();
int newNameIndex = random.nextInt(name.length());
String newName = name.substring(newNameIndex,newNameIndex+1);
System.out.println("A partir de maintenant, ton nom est"+newName+"Il est. Attention,"+newName+"C'est vrai. Je répondrai quand je comprendrai"+newName+"!!");
Ceci est le code original. Si vous réécrivez cela avec Python,
import random
#~~~~~~~~~
print("C'est un contrat. Écrivez votre nom ici.")
name = input()
print(f"Hung.{name}Je veux dire. C'est un nom luxueux.")
new_name = random.choice(name)
print(f"A partir de maintenant, ton nom est{new_name}Il est. Attention,{new_name}C'est vrai. Je répondrai quand je comprendrai{new_name}!!")
Ce sera comme ça. Si vous réécrivez ceci dans la spécification discord.py ...
import random
#~~~~~~~~~
await message.channel.send("C'est un contrat. Écrivez votre nom ici.")
await message.channel.send(f"(Vous êtes dans le contrat`{message.author.display_name}`J'ai écrit.)")
name = message.author.display_name
await message.channel.send(f"Hung.`{name}`Je veux dire. C'est un nom luxueux.")
new_name = random.choice(name.replace(" ",""))
await message.channel.send(f"A partir de maintenant, ton nom est`{new_name}`Il est."
f"Attention,`{new_name}`C'est vrai. Je répondrai quand je comprendrai`{new_name}`!!")
await message.author.edit(nick=new_name)
await message.channel.send(f"(Votre surnom est`{new_name}`Devenu.)")
Ce sera comme ça. (Je change de serveur à partir d'ici.) Il est trop tôt, alors je vais vous faire attendre un moment.
Utilisez asyncio.sleep
pour ralentir la réponse.
** Notez que si vous n'utilisez pas asyncio.sleep
, tout le Bot s'arrêtera! ** **
import random
import asyncio
#~~~~~~~~~
await message.channel.send("C'est un contrat. Écrivez votre nom ici.")
await asyncio.sleep(1)
await message.channel.send(f"(Vous êtes dans le contrat`{message.author.display_name}`J'ai écrit.)")
name = message.author.display_name
await asyncio.sleep(2)
await message.channel.send(f"Hung.`{name}`Je veux dire. C'est un nom luxueux.")
new_name = random.choice(name.replace(" ",""))
await asyncio.sleep(4)
await message.channel.send(f"A partir de maintenant, ton nom est`{new_name}`Il est."
f"Attention,`{new_name}`C'est vrai. Je répondrai quand je comprendrai`{new_name}`!!")
await message.author.edit(nick=new_name)
await message.channel.send(f"(Votre surnom est`{new_name}`Devenu.)")
Maintenant ça. Le résultat de l'incorporation de ceci dans le code principal est ... J'espère que c'est terminé! ~~ Pas d'objection ~~
J'ai fait une tante de source chaude avec discord.py. Puisqu'il s'agit du premier article, il peut être difficile à lire. Dans ce cas, veuillez laisser un commentaire.
Merci d'avoir lu jusqu'au bout.
import discord
import random
import asyncio
client = discord.Client()
@client.event
async def on_ready():
print('We have logged in as {0.user}'.format(client))
@client.event
async def on_message(message):
if message.author == client.user:
return
if client.user.mentioned_in(message):
await message.channel.send("C'est un contrat. Écrivez votre nom ici.")
await asyncio.sleep(1)
await message.channel.send(f"(Vous êtes dans le contrat`{message.author.display_name}`J'ai écrit.)")
name = message.author.display_name
await asyncio.sleep(2)
await message.channel.send(f"Hung.`{name}`Je veux dire. C'est un nom luxueux.")
new_name = random.choice(name.replace(" ",""))
await asyncio.sleep(4)
await message.channel.send(f"A partir de maintenant, ton nom est`{new_name}`Il est."
f"Attention,`{new_name}`C'est vrai. Je répondrai quand je comprendrai`{new_name}`!!")
await message.author.edit(nick=new_name)
await message.channel.send(f"(Votre surnom est`{new_name}`Devenu.)")
client.run("your token here")
Interdit crache si la personne qui a essayé de le faire a une autorité supérieure. Si possible, c'est un problème, alors Yoshi!
Recommended Posts