Discord.Net SetGameAsync() 的放置位置
Discord.Net where to place SetGameAsync()
Imports Discord
Imports Discord.WebSocket
Imports Discord.Net.Providers.WS4Net
Imports System.Windows.Forms
Imports System.Drawing
Imports System.Runtime.InteropServices
Imports System.Threading
Imports Discord.Commands
Public Module Main
Private config As MasterConfig
Private Client As DiscordSocketClient
Private d_events As DiscordEvents
Private commandHandle As CommandHandler
Sub Main(args As String())
RunBotASync.GetAwaiter.GetResult()
End Sub
Private Async Function RunBotASync() As Task
Console.WriteLine("Now Loading Bot...")
config = Await MasterConfig.LoadAsync
Dim ClientConfig As New DiscordSocketConfig With {
.DefaultRetryMode = Discord.RetryMode.AlwaysRetry,
.LogLevel = LogSeverity.Info,
.WebSocketProvider = WS4NetProvider.Instance
}
Client = New DiscordSocketClient(ClientConfig)
d_events = New DiscordEvents(Client)
commandHandle = New CommandHandler(config, Client)
Await Client.LoginAsync(TokenType.Bot, config.token)
Await Client.StartAsync()
Await Task.Delay(Timeout.Infinite)
Await Client.SetGameAsync("Giving Damage While Taking Damage | -help", ActivityType.Playing, ActivityProperties.None).ConfigureAwait(False)
End Function
End Module
所以这是我获取我的机器人 运行 并连接的全部功能。我遇到的问题是我不完全确定在代码中放置 Await Client.SetGameAsync()
的位置。我已经在上面 Await Client.StartAsync()
上尝试过了,我没有收到任何错误,但状态没有显示。
在 Discord API 服务器的帮助下,我弄明白了。使用您的自定义状态创建一个函数。
Private Async Function Ready() As Task
Await Client.SetGameAsync("Others hit me while I take their health | -help", type:=ActivityType.Watching)
End Function
并在 StartAsync()
正下方做 AddHandler Client.Ready, AddressOf Ready
现在您有了自定义状态。
Imports Discord
Imports Discord.WebSocket
Imports Discord.Net.Providers.WS4Net
Imports System.Windows.Forms
Imports System.Drawing
Imports System.Runtime.InteropServices
Imports System.Threading
Imports Discord.Commands
Public Module Main
Private config As MasterConfig
Private Client As DiscordSocketClient
Private d_events As DiscordEvents
Private commandHandle As CommandHandler
Sub Main(args As String())
RunBotASync.GetAwaiter.GetResult()
End Sub
Private Async Function RunBotASync() As Task
Console.WriteLine("Now Loading Bot...")
config = Await MasterConfig.LoadAsync
Dim ClientConfig As New DiscordSocketConfig With {
.DefaultRetryMode = Discord.RetryMode.AlwaysRetry,
.LogLevel = LogSeverity.Info,
.WebSocketProvider = WS4NetProvider.Instance
}
Client = New DiscordSocketClient(ClientConfig)
d_events = New DiscordEvents(Client)
commandHandle = New CommandHandler(config, Client)
Await Client.LoginAsync(TokenType.Bot, config.token)
Await Client.StartAsync()
Await Task.Delay(Timeout.Infinite)
Await Client.SetGameAsync("Giving Damage While Taking Damage | -help", ActivityType.Playing, ActivityProperties.None).ConfigureAwait(False)
End Function
End Module
所以这是我获取我的机器人 运行 并连接的全部功能。我遇到的问题是我不完全确定在代码中放置 Await Client.SetGameAsync()
的位置。我已经在上面 Await Client.StartAsync()
上尝试过了,我没有收到任何错误,但状态没有显示。
在 Discord API 服务器的帮助下,我弄明白了。使用您的自定义状态创建一个函数。
Private Async Function Ready() As Task
Await Client.SetGameAsync("Others hit me while I take their health | -help", type:=ActivityType.Watching)
End Function
并在 StartAsync()
正下方做 AddHandler Client.Ready, AddressOf Ready
现在您有了自定义状态。