UnrealIRCd and Anope Helper

By Rolo on Dec 14, 2009

This is ideally for a help channel on UnrealIRCd/(Anope|Atheme) networks.
Load it into a bot, load the commented snippet into your client.

For the Services half of the script, type:
!help NICK cs register
!help NICK hs on
!help NICK ms check

Or similar combinations.

For the UnrealIRCd half of the script, type:
!helpop SUBJECT

Operserv is not supported because users coming in for help either don't need to know about it, or know where to get the info themselves (IRCops and IRCop hopefuls should be competent)

;Use this to activate the script:
;on *:input:#:{ if ($1 == !help) .ctcp YOURBOT help $2- } }
;Replace YOURBOT with the name of your bot

ctcp 1:help:*:{
  if ($istok(cs ns hs ms bs, $3, 32)) {
    $3 help $$4-
    set %helpnick $2
    set %helpword $4-
    if ($3 == cs) set %service Chanserv
    if ($3 == ns) set %service Nickserv
    if ($3 == bs) set %service Botserv
    if ($3 == hs) set %service Hostserv
    if ($3 == ms) set %service Memoserv
  }
  else .notice $nick Not a valid service type. Options: (cs, ns, hs, ms, bs)
}
on 1:notice:*:?:{ 
  if ($nick == %service) && ($1 == Syntax:) {
    .notice %helpnick $replace($1-,Syntax:,Usage: /msg %service)
    .notice %helpnick For further information, type /msg %service help %helpword
    unset %helpnick %helpword %service
  }
}

on *:text:!helpop &:#:{
  if ($nick isop #) || ($nick ishop #) {
    helpop ? $+ $2
    set %helpopmethod .msg #
  }
  else {
    helpop ? $+ $2
    set %helpopmethod .notice $nick
  }
}
raw 292:*:{
  if (%helpopmethod) && ($2 != -) {
    %helpopmethod $2-
    .timer 1 5 unset %helpop*
  }
}

Comments

Sign in to comment.
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.