0

我觉得这必须是显而易见的,但我一直在寻找,只是找不到答案。

我正在编写一个连接到我的抽搐频道聊天的“机器人”。我想跟踪用户连续观看的流数。我有一个命令,我在每个流的开头键入一个命令,以表示一个新的流已经开始,因此,加入的用户应该增加他们连续观看的流的数量。

我目前使用 JOIN 事件来增加用户连续流的数量,但是如果有人在流开始之前坐在聊天中,他们不会获得积分,因为 JOIN 事件发生在新流已经开始的标志之前放。

有没有办法在聊天中获取当前 $nick 的列表?如果是这样,我可以在启动流并更新已经在聊天的用户时将其连接到命令中。

4

1 回答 1

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 以获取所有用户的列表。

如果您需要更多帮助,请告诉我。

于 2015-05-26T08:21:58.453 回答