【问题标题】:Modifying a Link Bot for MIRC修改 MIRC 的链接机器人
【发布时间】:2014-07-30 18:12:38
【问题描述】:

在@Sirius_Black 的帮助下,我为 MIRC/Twitch 设置了这个链接监控机器人。

on @*:text:*:#:linkpost $1-
on @*:action:*:#:linkpost $1-
on @*:notice:*:#:linkpost $1-
alias -l linkpost {
  if (!$hfind(permit,$nick)) {
    var %purge /^!(link\so(n|ff)|(permit))\b/iS
    var %domain com|edu|gov|mil|net|org|biz|info|name|museum|us|ca|uk|tv|se|eu|fr|me|nl|de|Q
    var %exception /(?:http?:\/\/)?(?:w{3}\.)?.+(ftr.wot-news|youtu|youtube|\Qimgur\E)\.com|.be/
    var %link /(?<=^|\s)((?>\S{3,8}:\/\/|w{3}\56)\S+)|\56( $+ %domain $+ )\b/iS
    if ($findtok(%chanon1,#,1,32)) && ($nick(#,$nick,vr)) && ($regex($1-,%link)) && (!$regex($1-,%exception)) {
      timeout 30 # $nick | /mode # -b $nick
      msg # /me $nick $+ , you did not have permission to post a link. Type '!permit' to get a mod to allow links for you. Please avoid putting '.it' anywhere in your text.
      msg # /timeout $nick 1
    }
    elseif (($regex($1-,%purge)) && ($regml(1) = permit) && ($nick isop #) && ($$2 ison  #)) {
      hadd -mz permit $v1 30 | notice $v1 You have 30 seconds to post a link. Starting now!
      msg # /me $$2 $+ , you now have 30 seconds to post a link!
    }
    elseif (($regml(1) = link on) && ($nick isop #)) {
      goto $iif(!$istok(%chanon1,#,32),a,b) | :a | set %chanon1 $addtok(%chanon,#,32)
      .msg # Link Protection Is now on in: $+($chr(2),#)
      halt | :b | .msg # $nick $+ , Link Protection is already on in $&
        $+($chr(2),#,$chr(2)) !
    }
    elseif (($regml(1) = link off) && ($nick isop #)) {
      goto $iif($istok(%chanon1,#,32),c,d) | :c | set %chanon1 $remtok(%chanon,#,1,32)
      .msg # Link Protection is now off in: $+($chr(2),#)
      halt | :d | .msg # $nick $+ , Link Protection is already off . $&
        !
    }
  }
}

该系统运行良好。但是,我可以添加一个文本命令脚本吗?例如,允许任何用户键入 !link 并让机器人响应链接保护是否打开/关闭?

现在,似乎只有一个模组可以打开或关闭机器人(并显示一条消息告诉它打开/关闭)。但是有没有办法只发送一个带有响应的命令来检查机器人是否打开/关闭?

对不起,如果我重复了。

谢谢!

【问题讨论】:

    标签: mirc


    【解决方案1】:

    使用这个
    输入 !links

    on @*:text:*:#:linkpost $1-
    on @*:action:*:#:linkpost $1-
    on @*:notice:*:#:linkpost $1-
    alias -l linkpost {
    if (!$hfind(permit,$nick)) {
    var %purge /^!(link\so(n|ff)|(permit)|(links))\b/iS
    var %domain com|edu|gov|mil|net|org|biz|info|name|museum|us|ca|uk|tv|se|eu|fr|me|nl|de|Q
    var %exception /(?:https?:\/\/)?(?:w{3}\.)?.+(ftr.wot-news|youtu|youtube|\Qimgur\E)\.com|.be/
    var %link /(?<=^|\s)((?>\S{3,8}:\/\/|w{3}\56)\S+)|\56( $+ %domain $+ )\b/iS
    if ($findtok(%chanon1,#,1,32)) && ($nick(#,$nick,vr)) && ($regex($1-,%link)) && (!$regex($1-,%exception)) {
      timeout 30 # $nick | /mode # -b $nick
      msg # /me $nick $+ , you did not have permission to post a link. Type '!permit' to get a mod to allow links for you. Please avoid putting '.it' anywhere in your text.
      msg # /timeout $nick 1
    }
    if ($regex($1-,%purge)) && ($regml(1) == links) {
      msg $chan Link Protection for channel $chan is: $iif($istok(%chanon1,$chan,32),on,off)
    }
    elseif (($regex($1-,%purge)) && ($regml(1) = permit) && ($nick isop #) && ($$2 ison  #)) {
      hadd -mz permit $v1 30 | notice $v1 You have 30 seconds to post a link. Starting now!
      msg # /me $$2 $+ , you now have 30 seconds to post a link!
    }
    elseif (($regml(1) = link on) && ($nick isop #)) {
      goto $iif(!$istok(%chanon1,#,32),a,b) | :a | set %chanon1 $addtok(%chanon,#,32)
      .msg # Link Protection Is now on in: $+($chr(2),#)
      halt | :b | .msg # $nick $+ , Link Protection is already on in $&
        $+($chr(2),#,$chr(2)) !
    }
    elseif (($regml(1) = link off) && ($nick isop #)) {
      goto $iif($istok(%chanon1,#,32),c,d) | :c | set %chanon1 $remtok(%chanon,#,1,32)
      .msg # Link Protection is now off in: $+($chr(2),#)
      halt | :d | .msg # $nick $+ , Link Protection is already off . $&
        !
    }
    }
    }
    

    【讨论】:

    • 不幸的是,它似乎不起作用。新的 !links 和以前的 !link off/!link on 都不起作用了。这个 if 语句应该在现有语句之外吗?
    • !links 方面现在可以工作了。但似乎实际的机器人不起作用。即它现在不阻止链接。当我使用 !link on 和 !link off 时;机器人说它打开和关闭。但它实际上并没有使发布链接的用户超时。这就是发生的事情:i.imgur.com/7kQJ0Bv.png
    • @vika09 抱歉,我已禁用它以进行测试,现在我再次启用它,请查看
    猜你喜欢
    • 2014-08-26
    • 1970-01-01
    • 2014-08-12
    • 1970-01-01
    • 2014-08-23
    • 2012-07-28
    • 2021-10-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多