Пользовался этим руководством viewtopic.php?f=7&t=4647 и рассматривал коды плагинов dSpam и geographer.
Код: Выделить всё
# thanks plugin v 1.0 by Cooot
# rofan.ru
# in control\config.txt add:
# thanks_say thanks; thx; THANKS!
package thanks;
use Globals;
use Log qw(message);
use Misc;
use Plugins;
my $runtime;
my $thankslist;
my @thanksone;
my $thanks;
our $endtime;
Plugins::register ("thanks", "Say thanks", \&Unload);
my $hooks = Plugins::addHooks (
['packet_skilluse', \&say, undef]
);
sub say {
return if (!$config{'thanks_say'});
my (undef, $args) = @_;
$runtime = time ();
$thankslist = $config {thanks_say};
@thanksone = split (/\s*;+\s*/, $thankslist);
$thanks = $thanksone [rand (@thanksone)];
if ($runtime > $endtime + 20) {
if (($args -> {skillID} == 28 or $args -> {skillID} == 29 or $args -> {skillID} == 34) && $args -> {targetID} eq $accountID && $args -> {sourceID} ne $accountID) {
$endtime = time ();
message "[Heal, Agi UP, Blessing = Thanks]\n", 'system';
sleep (3);
$messageSender -> sendEmotion (15);
sleep (5);
sendMessage ($messageSender, "c", $thanks);
sleep (1);
}
}
}
sub Unload {
Plugins::delHooks ($hooks);
}
return 1;
Вносим в конфиг:
thanks_say Фраза благодарности #1; Фраза благодарности #2 и так далее через ;
Большая просьба: буду рад советам по самому плагину, все так ли написал (первая попытка все же). В будущем планирую его доработать.