diff --git a/lib/BotLib.pm b/lib/BotLib.pm index 2b343e4..36550ae 100644 --- a/lib/BotLib.pm +++ b/lib/BotLib.pm @@ -20,7 +20,7 @@ use BotLib::Drink qw (Drink); use BotLib::Fisher qw (Fish); use BotLib::Fortune qw (Fortune); use BotLib::Friday qw (Friday); -use BotLib::Image qw (Kitty Fox Oboobs Obutts Rabbit Owl); +use BotLib::Image qw (Kitty Fox Oboobs Obutts Rabbit Owl Frog Horse Snail); use BotLib::Karma qw (KarmaSet KarmaGet); use BotLib::Lat qw (Lat); use BotLib::Monkeyuser qw (Monkeyuser); @@ -92,6 +92,24 @@ sub Command { sleep (irand (2) + 1); $msg->replyMd ($reply); return; + } elsif (substr ($text, 1) eq 'frog' || substr ($text, 1) eq 'toad' || substr ($text, 1) eq 'лягушка') { + $msg->typing (); + $reply = Frog (); + sleep (irand (2) + 1); + $msg->replyMd ($reply); + return; + } elsif (substr ($text, 1) eq 'horse' || substr ($text, 1) eq 'лошадка') { + $msg->typing (); + $reply = Horse (); + sleep (irand (2) + 1); + $msg->replyMd ($reply); + return; + } elsif (substr ($text, 1) eq 'snail' || substr ($text, 1) eq 'улитка') { + $msg->typing (); + $reply = Snail (); + sleep (irand (2) + 1); + $msg->replyMd ($reply); + return; } elsif (substr ($text, 1) eq 'lat' || substr ($text, 1) eq 'лат') { $reply = Lat (); } elsif ( @@ -201,10 +219,13 @@ ${csign}f | ${csign}ф - рандомная фраза из ${csign}fortune | ${csign}фортунка - рандомная фраза из сборника цитат fortune_mod ${csign}fox | ${csign}лис - лисичка ${csign}friday | ${csign}пятница - а не пятница ли сегодня? +${csign}frog | ${csign}лягушка - лягушка +${csign}horse | ${csign}лошадка - лошадка ${csign}lat | ${csign}лат - сгенерить фразу из крылатых латинских выражений ${csign}monkeyuser - рандомный стрип MonkeyUser ${csign}owl | ${csign}сова - сова ${csign}ping | ${csign}пинг - попинговать бота +${csign}snail | ${csign}улитка - улитка ${csign}ver | ${csign}version | ${csign}версия - что-то про версию ПО ${csign}w город | ${csign}п город - погода в указанном городе ${csign}xkcd - рандомный стрип с сайта xkcd.ru diff --git a/lib/BotLib/Image.pm b/lib/BotLib/Image.pm index 33cbc08..47afecd 100644 --- a/lib/BotLib/Image.pm +++ b/lib/BotLib/Image.pm @@ -16,7 +16,7 @@ use BotLib::Util qw (urlencode); use version; our $VERSION = qw (1.0); use Exporter qw (import); -our @EXPORT_OK = qw (Kitty Fox Oboobs Obutts Rabbit Owl); +our @EXPORT_OK = qw (Kitty Fox Oboobs Obutts Rabbit Owl Frog Horse Snail); sub Kitty { my $r; @@ -201,6 +201,41 @@ sub Owl { } } +sub Frog { + # unable to find any one-line ascii art for frog :( + my @art = qw (frog toad лягушка); + my $url = FlickrByTags ('frog,toad,amphibian'); + + if (defined $url) { + return sprintf '[%s](%s)', $art [irand ($#art + 1)], $url; + } else { + return 'Нету лягушек, все свалили.'; + } +} + +sub Horse { + # unable to find any one-line ascii art for frog :( + my @art = qw (horse лошадь лошадка); + my $url = FlickrByTags ('horse,equine,mammal'); + + if (defined $url) { + return sprintf '[%s](%s)', $art [irand ($#art + 1)], $url; + } else { + return 'Нету коняшек, все разбежались.'; + } +} + +sub Snail { + # unable to find any one-line ascii art for frog :( + my @art = qw ('-'_@_ @╜ @_'-'); + my $url = FlickrByTags ('snail,slug'); + + if (defined $url) { + return sprintf '[%s](%s)', $art [irand ($#art + 1)], $url; + } else { + return 'Нету улиток, все расползлись.'; + } +} 1; # vim: set ft=perl noet ai ts=4 sw=4 sts=4: