X-Git-Url: https://git.xonotic.org/?p=xonotic%2Fxonotic.git;a=blobdiff_plain;f=server%2Frcon2irc%2Fvotestop.pl;h=1a17ac8e351f5806e38025c0e14fbde2184e4d40;hp=1bf6638ac0834c8e7d37a5bd8ac392357c4d613e;hb=93fc58484e0aedf13ffa8b842a0c96906cad41e6;hpb=e5832bf2ecac60a672a29c85cd8dec341a215e1c diff --git a/server/rcon2irc/votestop.pl b/server/rcon2irc/votestop.pl index 1bf6638a..1a17ac8e 100644 --- a/server/rcon2irc/votestop.pl +++ b/server/rcon2irc/votestop.pl @@ -1,4 +1,4 @@ -# Nexuiz rcon2irc plugin by Merlijn Hofstra licensed under GPL - votestop.pl +# Xonotic rcon2irc plugin by Merlijn Hofstra licensed under GPL - votestop.pl # Place this file inside the same directory as rcon2irc.pl and add the full filename to the plugins. # This plugin will stop an ongoing vote when the person who called it leaves. Edit the options below @@ -13,7 +13,7 @@ $store{plugin_votestop} = \%vs; } # add a dependency on joinsparts.pl -if (defined %config && $config{plugins} !~ m/joinsparts.pl /gi) { +if (defined %config && $config{plugins} !~ m/joinsparts\.pl/gi) { die "votestop.pl depends on joinsparts.pl but it appears to not be loaded."; } @@ -60,13 +60,15 @@ sub time_to_seconds { } $vs->{currentvote} = $id; + $vs->{command} = $command; return 0; } ], [ dp => q{:vote:v(yes|no|timeout|stop):.*} => sub { my ($cmd) = @_; - $store{plugin_votestop}->{currentvote} = undef; my $vs = $store{plugin_votestop}; + $vs->{currentvote} = undef; + $vs->{command} = undef; if ($cmd eq 'stop' && $vs->{vstopignore}) { $vs->{vstopignore} = undef; @@ -80,10 +82,11 @@ sub time_to_seconds { my ($id) = @_; my $vs = $store{plugin_votestop}; - if (defined $store{plugin_votestop}->{currentvote} && $id == $store{plugin_votestop}->{currentvote}) { + if (defined $vs->{currentvote} && $id == $vs->{currentvote}) { $vs->{vstopignore} = 1; out dp => 0, "sv_cmd vote stop"; - out irc => 0, "PRIVMSG $config{irc_channel} :* vote \00304$command\017 by " . $store{"playernick_byid_$id"} . + out dp => 0, "say Vote was stopped as player left the server"; + out irc => 0, "PRIVMSG $config{irc_channel} :* vote \00304" . $vs->{command} . "\017 by " . $store{"playernick_byid_$id"} . "\017 was stopped because he left the server"; } @@ -93,9 +96,10 @@ sub time_to_seconds { [ dp => q{:gamestart:(.*):[0-9.]*} => sub { my $vs = $store{plugin_votestop}; - if (defined $store{plugin_votestop}->{currentvote}) { + if (defined $vs->{currentvote}) { out dp => 0, "sv_cmd vote stop"; - $store{plugin_votestop}->{currentvote} = undef; + $vs->{currentvote} = undef; + $vs->{command} = undef; $vs->{vstopignore} = undef; }