1
0
mirror of https://github.com/irssi/irssi.git synced 2024-06-23 06:35:36 +00:00

Some cleanups, complains if not run in channel.

git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1729 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
Timo Sirainen 2001-08-08 22:42:14 +00:00 committed by cras
parent c54646cad9
commit 8a7fa0f047

View File

@ -1,25 +1,32 @@
# /CLONES - display real name of nick
# /CLONES - Display clones in the active channel
use Irssi;
use strict;
sub cmd_clones {
my ($data, $server, $channel) = @_;
my (%hostnames, $host, @nicks, $nick);
my ($data, $server, $channel) = @_;
@nicks = $channel->nicks();
if (!$channel || $channel->{type} ne "CHANNEL") {
Irssi::print("No active channel in window");
return;
}
foreach $nick (@nicks) {
$hostnames{$nick->{host}}++;
}
my %hostnames = {};
foreach my $nick ($channel->nicks()) {
$hostnames{$nick->{host}}++;
}
$channel->print("Clones:");
foreach $host (keys %hostnames) {
my $clones = $hostnames{$host};
if ($clones >= 2) {
$channel->print("$host: $clones");
}
}
my $count = 0;
foreach my $host (keys %hostnames) {
my $clones = $hostnames{$host};
if ($clones >= 2) {
$channel->print("Clones:") if ($count == 0);
$channel->print("$host: $clones");
$count++;
}
}
$channel->print("No clones in channel") if ($count == 0);
}
Irssi::command_bind('clones', 'cmd_clones');