Home » Tiberian Technologies / Blackhand Studios » Other Products » Brenbot Plugin Error
Re: Brenbot Plugin Error [message #418436 is a reply to message #418329] |
Mon, 25 January 2010 11:01 |
|
Gen_Blacky
Messages: 3250 Registered: September 2006
Karma:
|
General (3 Stars) |
|
|
package killsounds;
use Socket;
use POE;
use POE::Component::Client::TCP;
use POE::Filter::Reference;
use Time::HiRes qw(time);
use Data::Dumper;
our %playerstats = ();
our %additional_events = (
"GL_playerKill" => "GL_playerKill",
"mapload" => "reset",
"gameresult" => "reset",
);
sub start {
%playerstats= ();
$firstkill = 1;
}
sub stop {
}
sub mapload {
my ( $kernel, $session, $heap, $args ) = @_[ KERNEL, SESSION, HEAP, ARG0 ];
print("resetting stats\r\n");
%playerstats= ();
}
sub gameresult {
my ( $kernel, $session, $heap, $args ) = @_[ KERNEL, SESSION, HEAP, ARG0 ];
print("resetting stats\r\n");
%playerstats= ();
$firstkill = 1;
}
sub auto_reckill
{
my $killer = shift;
my $comment = shift;
return if ( $startup == 1 );
# Check they are not rec ignored
if ( modules::is_rec_ignored( $killer ) )
{
modules::RenRemCMD( "msg [BR] $killer was unable to recieve their recommendation for $comment because they have been added to the recignore list by an administrator." );
return;
}
if ( modules::get_module( "autorecs" ) )
{
modules::RenRemCMD( "msg [BR] $killer has been recommended by BrenBot: $comment" );
modules::recommend_player( $killer, "BrenBot", $comment, 1 );
bhs::playsndp( "bonus_complete.wav", $killer );
}
}
my $killer = plugin::getPlayerFromObjectID($2);
my $killed = plugin::getPlayerFromObjectID($1);
# if($killer == "" ){return;}
my $playsound = "";
#####################
### Check to see if person is Owner
my $owner = 0;
# print ("$killer killed $killed\r\n");
# if($killer eq ""){print("Killer is empty\r\n"); return;}
if ( modules::IsHalfMod($killer)
|| modules::IsFullMod($killer)
|| modules::IsAdmin($killer))
{
$owner = 1;
}
#####################
### Colors for normal and special Owner messages
my $ncolor = "178,178,178"; #normal grey
my $scolor = "255,150,2"; #special orange
#my $ocolor = "255,0,0"; #Owner Red
#####################
### Firstblood bit
#brIRC::ircmsg ("[noobdebugging] $killer killed $killed", "");
if ( $firstkill == 1 ) {
#if($killer eq $killed)
#{
#brIRC::ircmsg ("[debug] $killer killed his own dumb self, no first blood", "");
#}
if ( ( $killer ne "" ) && ( $killer ne $killed ) ) {
my $rand_firstblood = 0;
my $comment = "First Blood";
if ( $owner == 0 ) {
$rand_firstblood = int( rand(3) );
#brIRC::ircmsg ("random normal number is $rand_firstblood", "");
if ( $rand_firstblood == 0 ) {
$playsound = "snda firstblood.mp3";
}
if ( $rand_firstblood == 1 ) {
$playsound = "snda onkill_firstblood.mp3";
}
else {
$playsound = "snda onkill_firstblood2.mp3";
}
modules::RenRemCMD("cmsg $ncolor [BR] $killer Drew First Blood");
print("Played $playsound for $killer\r\n");
brIRC::ircmsg(
"$killer drew first blood (normal $playsound)", "" );
modules::RenRemCMD($playsound);
$firstkill = 0;
auto_reckill( $killer, "First Blood" );
}
else {
$rand_firstblood = int( rand(2) );
#brIRC::ircmsg ("random special number is $rand_firstblood", "");
if ( $rand_firstblood == 0 ) {
$playsound = "snda f_first_blood.mp3";
}
else {
$playsound = "snda f2_first_kill1.mp3";
}
modules::RenRemCMD("cmsg $scolor [BR] $killer Drew First Blood");
print("Played $playsound for $killer\r\n");
brIRC::ircmsg(
"$killer drew first blood (special $playsound)", "" );
modules::RenRemCMD($playsound);
$firstkill = 0;
auto_reckill( $killer, "First Blood" );
}
}
else {
#brIRC::ircmsg ("[debug] false kill, no firstblood related to $killer or victim $killed", "");
return;
}
} #### end first kill
#####################
### Stats Counter
if ( $playerstats{$killer} ) {
# print("$killer is old \r\n");
# my %p = $playerstats{$killer};
# check when player last killed
my $lastkill = $playerstats{$killer}{'lastkill'};
if ( $lastkill + 10 > time() ) {
$playerstats{$killer}{'kills'} =
$playerstats{$killer}{'kills'} + 1;
$playerstats{$killer}{'lastkill'} = time();
}
else {
$playerstats{$killer}{'kills'} = 1;
$playerstats{$killer}{'lastkill'} = time();
}
$playerstats{$killer}{'totalkills'} =
$playerstats{$killer}{'totalkills'} + 1;
}
else {
#print("$killer is new\r\n");
$playerstats{$killer}{'totalkills'} = 1;
$playerstats{$killer}{'kills'} = 1;
$playerstats{$killer}{'lastkill'} = time();
}
#brIRC::ircmsg("$killed died at $playerstats{$killed}{'totalkills'} kills","");
# reset killed players kills
$playerstats{$killed}{'totalkills'} = 0;
$playerstats{$killed}{'kills'} = 0;
$playerstats{$killed}{'lastkill'} = 0;
#print Dumper(%playerstats);
# print("\r\n\r\n");
#
#if ( $killer == "" ) { print "killer is empty";return; }
################################
################################
#### START Kills within tie
my $playedsound = 0;
#MULTIKILLS
# print("Player $killer kills is $playerstats{$killer}{'kills'} \r\n");
if ( $playerstats{$killer}{'kills'} == 2 ) #2
{
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] Double Kill ($killer 2)");
$playsound = "snda doublekill.mp3";
modules::RenRemCMD($playsound);
print("Played normal $playsound for $killer\r\n");
brIRC::ircmsg("[MULTI] $killer - Double Kill (normal, 2 successive kills)","");
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] Double Kill ($killer 2)");
$playsound = "snda f_double_kill.mp3";
modules::RenRemCMD($playsound);
print("Played special $playsound for $killer\r\n");
brIRC::ircmsg("[MULTI] $killer - Double Kill (special, 2 successive kills)","" );
}
$playedsound = 1;
}
if ( $playerstats{$killer}{'kills'} == 3 ) #3
{
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] Triple Kill ($killer 3)");
$playsound = "snda triplekill.mp3";
modules::RenRemCMD($playsound);
print("Played normal $playsound for $killer\r\n");
brIRC::ircmsg(
"[MULTI] $killer - Triple Kill (normal, 3 successive kills)",
""
);
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] Triple Kill ($killer 3)");
$playsound = "snda f_Hattrick.mp3";
modules::RenRemCMD($playsound);
print("Played special $playsound for $killer\r\n");
brIRC::ircmsg(
"[MULTI] $killer - Double Kill (special, 3 successive kills)",
""
);
}
$playedsound = 1;
}
if ( $playerstats{$killer}{'kills'} == 4 ) #4
{
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] Multi Kill ($killer 4)");
$playsound = "snda multikill.mp3";
modules::RenRemCMD($playsound);
print("Played normal $playsound for $killer\r\n");
brIRC::ircmsg(
"[MULTI] $killer - Multi Kill (normal, 4 successive kills)",
""
);
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] Multi Kill ($killer 4)");
$playsound = "snda f_multikill.mp3";
modules::RenRemCMD($playsound);
print("Played special $playsound for $killer\r\n");
brIRC::ircmsg(
"[MULTI] $killer - Multi Kill (special, 4 successive kills)",
""
);
}
$playedsound = 1;
}
if ( $playerstats{$killer}{'kills'} == 5 ) #5
{
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] Mega Kill ($killer 5)");
$playsound = "snda megakill.mp3";
modules::RenRemCMD($playsound);
print("Played normal $playsound for $killer\r\n");
brIRC::ircmsg(
"[MULTI] $killer - Mega Kill (special, 5 successive kills)",
""
);
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] Mega Kill ($killer 5)");
$playsound = "snda f_megakill.mp3";
modules::RenRemCMD($playsound);
print("Played special $playsound for $killer\r\n");
brIRC::ircmsg(
"[MULTI] $killer - Mega Kill (special, 5 successive kills)",
""
);
}
$playedsound = 1;
}
if ( $playerstats{$killer}{'kills'} == 6 ) #6
{
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] Ultra Kill ($killer 6)");
$playsound = "snda ultrakill.mp3";
modules::RenRemCMD($playsound);
print("Played normal $playsound for $killer\r\n");
brIRC::ircmsg(
"[MULTI] $killer - Ultra Kill (normal, 6 successive kills)",
""
);
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] Ultra Kill ($killer 6)");
$playsound = "snda f_ultrakill.mp3";
modules::RenRemCMD($playsound);
print("Played special $playsound for $killer\r\n");
brIRC::ircmsg(
"[MULTI] $killer - Ultra Kill (special, 6 successive kills)",
""
);
}
$playedsound = 1;
}
if ( $playerstats{$killer}{'kills'} == 7 ) #7
{
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] Monster Kill ($killer 7)");
$playsound = "snda monsterkill.mp3";
modules::RenRemCMD($playsound);
print("Played normal $playsound for $killer\r\n");
brIRC::ircmsg(
"[MULTI] $killer - Monster Kill (normal, 7 successive kills)",
""
);
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] Monster Kill ($killer 7)");
$playsound = "snda f_Monsterkill_F.mp3";
modules::RenRemCMD($playsound);
print("Played special $playsound for $killer\r\n");
brIRC::ircmsg(
"[MULTI] $killer - Monster Kill (special, 7 successive kills)",
""
);
}
$playedsound = 1;
}
if ( $playerstats{$killer}{'kills'} == 8 ) {
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] Ludicrous Kill ($killer 8)");
$playsound = "snda onkill_ludicrouskill.mp3";
modules::RenRemCMD($playsound);
print("Played normal $playsound for $killer\r\n");
brIRC::ircmsg(
"[MULTI] $killer - Ludicrous Kill (normal, 8 successive kills)",
""
);
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] Ludicrous Kill ($killer 8)");
$playsound = "snda f_LudicrousKill_F.mp3";
modules::RenRemCMD($playsound);
print("Played special $playsound for $killer\r\n");
brIRC::ircmsg(
"[MULTI] $killer - Ludicrous Kill (special, 8 successive kills)",
""
);
}
$playedsound = 1;
}
if ( $playerstats{$killer}{'kills'} > 8 ) {
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] ERROR: OVERKILL ($killer $playerstats{$killer}{'kills'})"
);
$playsound = "snda scar_2.mp3";
modules::RenRemCMD($playsound);
print("Played normal $playsound for $killer\r\n");
brIRC::ircmsg(
"[MULTI] $killer - OVERKILL (special, $playerstats{$killer}{'kills'} successive kills)",
""
);
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] ERROR: OVERKILL ($killer $playerstats{$killer}{'kills'})"
);
$playsound = "snda f2_bogan_like_deep.mp3";
modules::RenRemCMD($playsound);
print("Played special $playsound for $killer\r\n");
brIRC::ircmsg(
"[MULTI] $killer - OVERKILL (special, $playerstats{$killer}{'kills'} successive kills)",
""
);
}
$playedsound = 1;
}
#SPREES
if ( $playerstats{$killer}{'totalkills'} == 5 ) {
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] $killer is on a Killing Spree! (5 kills)"
);
$playsound = "snda killingspree.mp3";
modules::RenRemCMD($playsound);
print("Played normal spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is on a Killing Spree! (normal, 5 kills)",
""
);
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] $killer is on a Killing Spree! (5 kills)"
);
$playsound = "snda f_killing_spree.mp3";
modules::RenRemCMD($playsound);
print("Played special spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is on a Killing Spree! (normal, 5 kills)",
"" );
}
}
if ( $playerstats{$killer}{'totalkills'} == 10 ) {
if ( $owner == 0 ) {
my $comment = "10 Kills in a Row Without Dieing";
modules::RenRemCMD(
"cmsg $ncolor [BR] $killer is on a Rampage! (10 kills)"
);
$playsound = "snda rampage.mp3";
modules::RenRemCMD($playsound);
print("Played normal spree $playsound for $killer\r\n");
auto_reckill( $killer, " 10 Kills in a Row Without Dieing" );
brIRC::ircmsg(
"[SPREE] $killer is on a Ramapage! (normal, 10 kills)",
"" );
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] $killer is on a Rampage! (10 kills)"
);
$playsound = "snda f_rampage.mp3";
modules::RenRemCMD($playsound);
print("Played special spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is on a Rampage! (special, 10 kills)",
"" );
}
}
if ( $playerstats{$killer}{'totalkills'} == 15 ) {
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] $killer is Dominating! (15 kills)");
$playsound = "snda onkill_dominating2.mp3";
modules::RenRemCMD($playsound);
print("Played normal spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is Dominating! (normal, 15 kills)", "" );
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] $killer is Dominating! (15 kills)");
$playsound = "snda f_dominating.mp3";
modules::RenRemCMD($playsound);
print("Played special spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is Dominating! (special, 15 kills)", "" );
}
}
if ( $playerstats{$killer}{'totalkills'} == 20 ) {
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] $killer is Unstoppable! (20 kills)"
);
$playsound = "snda unstoppable.mp3";
modules::RenRemCMD($playsound);
print("Played normal spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is Unstoppable! (normal, 20 kills)", "" );
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] $killer is Unstoppable! (20 kills)");
$playsound = "snda f_unstoppable.mp3";
modules::RenRemCMD($playsound);
print("Played special spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is Unstoppable! (special, 20 kills)", "" );
}
}
if ( $playerstats{$killer}{'totalkills'} == 25 ) {
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] $killer is Godlike! (25 kills)");
$playsound = "snda godlike.mp3";
modules::RenRemCMD($playsound);
print("Played normal spree $playsound for $killer\r\n");
brIRC::ircmsg( "[SPREE] $killer is Godlike! (normal, 25 kills)",
"" );
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] $killer is Godlike! (25 kills)");
$playsound = "snda f_godlike.mp3";
modules::RenRemCMD($playsound);
print("Played special spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is Godlike! (special, 25 kills)", "" );
}
}
if ( $playerstats{$killer}{'totalkills'} == 30 ) {
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] Holy Shit, $killer! (30 kills)");
$playsound = "snda onkill_holyshit.mp3";
modules::RenRemCMD($playsound);
print("Played normal spree $playsound for $killer\r\n");
brIRC::ircmsg( "[SPREE] Holy Shit! $killer! (normal, 30 kills)",
"" );
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] Holy Shit, $killer! (30 kills)");
$playsound = "snda f_HolyShit_F.mp3";
modules::RenRemCMD($playsound);
print("Played special spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] Holy Shit! $killer! (special, 30 kills)", "" );
}
}
if ( $playerstats{$killer}{'totalkills'} == 35 ) {
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] Wicked Sick, $killer! (35 kills)");
$playsound = "snda onkill_wickedsick.mp3";
modules::RenRemCMD($playsound);
print("Played normal spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] Wicked Sick! $killer! (normal, 35 kills)", "" );
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] Wicked Sick, $killer! (35 kills)");
$playsound = "snda f_WhickedSick.mp3";
modules::RenRemCMD($playsound);
print("Played special spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] Wicked Sick! $killer! (special, 35 kills)", "" );
}
}
if ( $playerstats{$killer}{'totalkills'} == 40 ) {
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] $killer is annihilating the enemy! (40 kills)"
);
$playsound = "f_SKAARJannhilation.mp3";
modules::RenRemCMD($playsound);
print("Played normal spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is a gigantic spawnkilling faggot... (normal, 40 kills)",
"" );
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] $killer still killing... (40 kills)"
);
$playsound = "f_SKAARJannhilation.mp3";
modules::RenRemCMD($playsound);
print("Played special spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is annihilating the enemy! (special, 40 kills)",
"" );
}
}
if ( $playerstats{$killer}{'totalkills'} == 45 ) {
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] $killer is still killing... (45 kills)"
);
$playsound = "snda f_SKAARJbloodbath.mp3";
modules::RenRemCMD($playsound);
print("Played normal spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is causing a Massacre! (normal, 45 kills)",
"" );
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] $killer is still killing... (45 kills)"
);
$playsound = "snda f_SKAARJbloodbath.mp3";
modules::RenRemCMD($playsound);
print("Played special spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is causing a Massacre! (special, 45 kills)",
"" );
}
}
if ( $playerstats{$killer}{'totalkills'} == 50 ) {
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] $killer is still killing... (50 kills)"
);
$playsound = "f_SKAARJerradication.mp3";
modules::RenRemCMD($playsound);
print("Played normal spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is erradicating everyone in his path! (normal, 50 kills)",
"" );
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] $killer is still killing... (50 kills)"
);
$playsound = "f_SKAARJerradication.mp3";
modules::RenRemCMD($playsound);
print("Played special spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is erradicating everyone in his path! (special, 50 kills)",
"" );
}
}
if ( $playerstats{$killer}{'totalkills'} == 55 ) {
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] $killer still killing... (55 kills)"
);
$playsound = "f_SKAARJextermination.mp3";
modules::RenRemCMD($playsound);
print("Played normal spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is cleansing everyone and everything! (normal, 55 kills)",
"" );
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] $killer is still killing... (55 kills)"
);
$playsound = "f_SKAARJextermination.mp3";
modules::RenRemCMD($playsound);
print("Played special spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is cleansing everyone and everything! (special, 55 kills)",
"" );
}
}
if ( $playerstats{$killer}{'totalkills'} == 60 ) {
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] $killer is still killing... (60 kills)"
);
$playsound = "f_SKAARJslaughter.mp3";
modules::RenRemCMD($playsound);
print("Played normal spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is a more effective killer than AIDS! (normal, 60 kills)",
"" );
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] $killer is still killing... (60 kills)"
);
$playsound = "f_SKAARJslaughter.mp3";
modules::RenRemCMD($playsound);
print("Played special spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is a more effective killer than AIDS! (special, 60 kills)",
"" );
}
}
if ( $playerstats{$killer}{'totalkills'} == 65 ) {
if ( $owner == 0 ) {
modules::RenRemCMD(
"cmsg $ncolor [BR] $killer is still killing... (65 kills)"
);
$playsound = "f_SKAARJtermination.mp3";
modules::RenRemCMD($playsound);
print("Played normal spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is the reason people leave this game, Crying! (normal, 65 kills)",
"" );
}
else {
modules::RenRemCMD(
"cmsg $scolor [BR] $killer is still killing... (65 kills)"
);
$playsound = "f_SKAARJtermination.mp3";
modules::RenRemCMD($playsound);
print("Played special spree $playsound for $killer\r\n");
brIRC::ircmsg(
"[SPREE] $killer is the reason people leave this game, Crying! (special, 65 kills)",
"" );
}
}
}
}
1;
[Updated on: Tue, 16 February 2010 00:43] Report message to a moderator
|
|
|
Goto Forum:
Current Time: Thu Aug 22 10:06:30 MST 2024
Total time taken to generate the page: 0.00796 seconds
|