# /OWNAGE [] # shows how many channels you're joined and how many in them you're op, and # how many nicks are in those channels (not including you) use Irssi; use strict; sub cmd_ownage { my $chans = 0; my $opchans = 0; my $nicks = 0; my $opnicks = 0; foreach my $channel (Irssi::channels()) { $chans++; if ($channel->{chanop}) { $opchans++; my @channicks = $channel->nicks(); $nicks += (scalar @channicks)-1; $opnicks--; # don't count youself foreach my $nick (@channicks) { $opnicks++ if $nick->{op}; } } } my $text = "@"."$opchans / $chans : $nicks nicks (of which $opnicks are ops)"; if ($_[0]) { Irssi::command("say $text"); } else { Irssi::print $text; } } Irssi::command_bind('ownage', 'cmd_ownage');