alias checkuser { if ($eval($+(%,accesso.,$address($1-,2),.,$chan),2) == 1) { return $true } else { return $false } } alias checkuser2 { if ($eval($+(%,accessv.,$address($1-,2),.,$chan),2) == 1) { return $true } else { return $false } } on *:TEXT:access*:#: { if ($eval($+(%,$chan,.registered),2) == 1) { if (!$2) { if ($checkuser($nick) == $true) { notice $nick You are an OP. } elseif ($checkuser2($nick) == $true) { notice $nick You are a PEON/VOICE. } else { notice $nick You do not have access. } } else { if ($checkuser($2) == $true) { notice $nick $2 has OP. } elseif ($checkuser2($2) == $true) { notice $nick $2 has PEON/VOICE. } else { notice $nick $2 does not have access. } } } } on *:JOIN:#: { if ($eval($+(%,$chan,.registered),2) == 1) { if ($checkuser($nick) == $true) { mode $chan +o $nick } elseif ($checkuser2($nick) == $true) { mode $chan +v $nick } } } on *:TEXT:addop *:#: { if ($eval($+(%,$chan,.registered),2) == 1) { if ($eval($+(%,$address($nick,2),.,$chan,.admin),2) == 1) { set %fixed $replace($2-,[,$chr(91),],$chr(93),(,$chr(40),),$chr(41),|,$chr(124),^,$chr(94)) set $(% $+ accesso. $+ $address(%fixed,2) $+ . $+ $chan) 1 notice $nick [^B] $+ $2 $+ [^B] has been added. mode $chan +o $2 } } } on *:TEXT:addvoice *:#: { if ($eval($+(%,$chan,.registered),2) == 1) { if ($eval($+(%,$address($nick,2),.,$chan,.admin),2) == 1) { set %fixed $replace($2-,[,$chr(91),],$chr(93),(,$chr(40),),$chr(41),|,$chr(124),^,$chr(94)) set $(% $+ accessv. $+ $address(%fixed,2) $+ . $+ $chan) 1 notice $nick [^B] $+ $2 $+ [^B] has been added. mode $chan +v $2 } } } on *:TEXT:addadmin *:#: { if ($eval($+(%,$chan,.registered),2) == 1) { if ($address($nick,2) == %headadmin || $address($nick,2) == %headadmin $+ . $+ $chan) { set $(% $+ $address($2,2) $+ . $+ $chan $+ . $+ admin) 1 notice $nick [^B] $+ $2 $+ [^B] has been added. } } } on *:TEXT:addhadmin *:#: { if ($eval($+(%,$chan,.registered),2) == 1) { if ($address($nick,2) == %headadmin) { set $+(%headadmin,.,$chan) $address($nick,2) notice $nick [^B] $+ $2 $+ [^B] has been added. } } } on *:TEXT:remhadmin *:#: { if ($eval($+(%,$chan,.registered),2) == 1) { if ($address($nick,2) == %headadmin) { unset $+(%headadmin,.,$chan) $address($nick,2) notice $nick [^B] $+ $2 $+ [^B] has been removed. } } } on *:TEXT:remop *:#: { if ($eval($+(%,$chan,.registered),2) == 1) { if ($eval($+(%,$address($nick,2),.,$chan,.admin),2) == 1) { set %fixed $replace($2-,[,$chr(91),],$chr(93),(,$chr(40),),$chr(41),|,$chr(124),^,$chr(94)) unset $(% $+ accesso. $+ $address(%fixed,2) $+ . $+ $chan) notice $nick [^B] $+ $2 $+ [^B] has been removed. mode $chan -o $2 } } } on *:TEXT:remvoice *:#: { if ($eval($+(%,$chan,.registered),2) == 1) { if ($eval($+(%,$address($nick,2),.,$chan,.admin),2) == 1) { set %fixed $replace($2-,[,$chr(91),],$chr(93),(,$chr(40),),$chr(41),|,$chr(124),^,$chr(94)) unset $(% $+ accessv. $+ $address(%fixed,2) $+ . $+ $chan) notice $nick [^B] $+ $2 $+ [^B] has been removed. mode $chan -v $2 } } } on *:TEXT:remadmin *:#: { if ($eval($+(%,$chan,.registered),2) == 1) { if ($address($nick,2) == %headadmin) { unset $(% $+ $address($2,2) $+ . $+ $chan $+ . $+ admin) notice $nick [^B] $+ $2 $+ [^B] has been removed. } } } on *:TEXT:register:#: { if ($address($nick,2) == %headadmin) { set $(% $+ $chan $+ . $+ registered) 1 notice $nick [^B] $+ $chan $+ [^B] has been registered. } } on *:TEXT:up:#: { if ($eval($+(%,$chan,.registered),2) == 1) { if ($checkuser($nick) == $true) { mode $chan +o $nick } elseif ($checkuser2($nick) == $true) { mode $chan +v $nick } } } on *:TEXT:down:#: { if ($eval($+(%,$chan,.registered),2) == 1) { mode $chan -o $nick mode $chan -v $nick } } on *:TEXT:op *:#: { if ($eval($+(%,$chan,.registered),2) == 1) { if ($eval($+(%,$address($nick,2),.,$chan,.admin),2) == 1) { mode $chan +o $2 notice $nick [^B] $+ $2 $+ [^B] has been oped. } } } on *:TEXT:deop *:#: { if ($eval($+(%,$chan,.registered),2) == 1) { if ($eval($+(%,$address($nick,2),.,$chan,.admin),2) == 1) { mode $chan -o $2 notice $nick [^B] $+ $2 $+ [^B] has been deoped. } } } on *:TEXT:voice *:#: { if ($eval($+(%,$chan,.registered),2) == 1) { if ($eval($+(%,$address($nick,2),.,$chan,.admin),2) == 1) { mode $chan +v $2 notice $nick [^B] $+ $2 $+ [^B] has been voiced. } } } on *:TEXT:devoice *:#: { if ($eval($+(%,$chan,.registered),2) == 1) { if ($eval($+(%,$address($nick,2),.,$chan,.admin),2) == 1) { mode $chan -v $2 notice $nick [^B] $+ $2 $+ [^B] has been devoiced. } } }