質問編集履歴

2

勝手にコードを省略してのせてしまっていたため、全文に更新しました。

2020/04/04 14:54

投稿

takanaaaa
takanaaaa

スコア9

test CHANGED
File without changes
test CHANGED
@@ -60,7 +60,7 @@
60
60
 
61
61
  if message.content=='/make_dice':
62
62
 
63
- await message.channel.send('_highest[任意の数字]か_lowest[任意の数字]をつけ')
63
+ await message.channel.send('_highest[任意の数字]か_lowest[任意の数字]をつけ')
64
64
 
65
65
 
66
66
 

1

k

2020/04/04 14:54

投稿

takanaaaa
takanaaaa

スコア9

test CHANGED
File without changes
test CHANGED
@@ -8,17 +8,45 @@
8
8
 
9
9
  ```Python
10
10
 
11
+ import discord
12
+
11
13
  import random
12
14
 
15
+ import re
13
16
 
14
17
 
15
- #ここで定義しているつもりです
16
18
 
17
19
  dice1=0
18
20
 
19
21
  dice2=10
20
22
 
21
23
 
24
+
25
+ # 自分のBotのアクセストークンに置き換えてください
26
+
27
+ TOKEN = 'アクセストークン'
28
+
29
+
30
+
31
+ # 接続に必要なオブジェクトを生成
32
+
33
+ client = discord.Client()
34
+
35
+
36
+
37
+ # 起動時に動作する処理
38
+
39
+ @client.event
40
+
41
+ async def on_ready():
42
+
43
+ channel=client.get_channel(チャンネル)
44
+
45
+ await channel.send('ログインしました')
46
+
47
+
48
+
49
+ # メッセージ受信時に動作する処理
22
50
 
23
51
  @client.event
24
52
 
@@ -28,6 +56,30 @@
28
56
 
29
57
  await message.channel.send(random.randint(dice1,dice2))
30
58
 
59
+
60
+
61
+ if message.content=='/make_dice':
62
+
63
+ await message.channel.send('_highest[任意の数字]か_lowest[任意の数字]をつけろ')
64
+
65
+
66
+
67
+ if 'make_dice_highest' in message.content:
68
+
69
+ dice2=re.findall('[0-9]+',message.content)
70
+
71
+
72
+
73
+ if 'make_dice_lowest' in message.content:
74
+
75
+ dice1=re.findall('[0-9]+',message.content)
76
+
77
+
78
+
79
+ # Botの起動とDiscordサーバーへの接続
80
+
81
+ client.run(TOKEN)
82
+
31
83
  ```
32
84
 
33
85
  async def on_message(message)の処理の中で定義するとエラーは出なくなるのですが、それ以外の方法はないのでしょうか?