… | |
… | |
36 | cf::register_command listen => sub { |
36 | cf::register_command listen => sub { |
37 | my ($pl, $msg) = @_; |
37 | my ($pl, $msg) = @_; |
38 | my $player = cf::player::find_active $pl->name; |
38 | my $player = cf::player::find_active $pl->name; |
39 | |
39 | |
40 | if ($msg ne "") { |
40 | if ($msg ne "") { |
|
|
41 | $msg = 10 if $msg > 10; |
|
|
42 | |
41 | my $prev_listen = $player->listening; |
43 | my $prev_listen = $player->listening; |
42 | $player->listening ($msg); |
44 | $player->listening ($msg); |
43 | if ($prev_listen == $player->listening) { |
45 | if ($prev_listen == $player->listening) { |
44 | $pl->message ("Your verbose level stayed $prev_listen.", cf::NDI_UNIQUE); |
46 | $pl->message ("Your verbose level stayed $prev_listen.", cf::NDI_UNIQUE); |
45 | } else { |
47 | } else { |
… | |
… | |
823 | |
825 | |
824 | if ($msg) { |
826 | if ($msg) { |
825 | my $name = $pl->name; |
827 | my $name = $pl->name; |
826 | my $NOW = time; |
828 | my $NOW = time; |
827 | |
829 | |
828 | utf8::encode $msg; # ->message not yet utf8-ified |
|
|
829 | cf::LOG cf::llevDebug, sprintf "QBERT [%s] %s\n", $name, $msg; |
830 | cf::LOG cf::llevDebug, sprintf "QBERT [%s] %s\n", $name, $msg; |
830 | ext::schmorp_irc::do_notice (sprintf "[%s] %s", $name, $msg); |
831 | ext::schmorp_irc::do_notice (sprintf "[%s] %s", $name, $msg); |
831 | |
832 | |
832 | $_->ob->message ("$name chats: $msg", cf::NDI_BLUE) |
833 | $_->ob->message ("$name chats: $msg", cf::NDI_BLUE) |
833 | for grep { $_->ob->{ext_ignore_shout}{$name} < $NOW && $_->listening >= 10 } cf::player::list; |
834 | for grep { $_->ob->{ext_ignore_shout}{$name} < $NOW && $_->listening >= 10 } cf::player::list; |