我觉得这一点必须显而易见,但我一直在寻找,却无法找到答案。
我正在编写一个机器人'这连接到我的抽搐频道的聊天。我想跟踪用户观看的连续流的数量。我有一个命令,我在每个流的开头键入以表示新流已经开始,因此,加入的用户应该增加连续监视的流的数量。
我目前使用JOIN事件来增加用户的连续流数量,但是如果有人在流开始之前就坐在聊天中,他们就不会获得信用,因为JOIN事件发生在新标志之前流已经开始已经设置。
有没有办法在聊天中获取当前$ nick的列表?如果是这样,我可以在启动流时将其挂钩到命令中并更新已经在聊天的用户。
答案 0 :(得分:1)
您可以使用$nick(#,N)
来检索频道中的用户数,其中#是频道的名称,N是数字。
您应首先使用$ nick(#mychannel,0)来获取频道中的用户总数,然后您可以通过用户列表使用$ nick(#,N)循环使用该号码。
例如,您执行//echo $nick(#mychannel,0)
它会说10.当您使用$nick(#mychannel,1)
时,它将返回用户列表中的第一个用户。
简单的代码示例:
alias getusers {
var %users = $nick($1,0), %n = 1
while (%n <= %users) {
; print all users in the channel
echo -ag $nick($1,%n)
; you can put your code here
inc %n
}
}
在频道中键入/ getusers #channelname以获取所有用户的列表。
告诉我你是否需要更多帮助。