procedure OnPlayerKill(Killer, Victim: byte; Weapon: string);
var
spree: array[1..25] of string;
colors: array[1..25] of Longint;
killsNeeded: byte;
begin
killsNeeded := 3; //number of kills needed to count as a killing spree
//spree[x] where x represents the current number of spree kills player has
//more can be added just be sure to change the spree array size
spree[killsNeeded] := ' is on a Killing Spree!';
colors[killsNeeded] := $FF52DD52;
spree[5] := ' is on a Rampage!';
colors[5] := $FFFFFC00;
spree[8] := ' is Dominating!';
colors[8] := $FFAF00A1;
spree[11] := ' is Unstoppable!';
colors[11] := $FFEC8931;
spree[14] := ' is Wicked Sick!';
colors[14] := $FFB1C0C6;
spree[20] := ' is Godlike!';
colors[20] := $FFE8FF27;
spree[25] := ' is Beyond Godlike!';
colors[25] := $FFFF081F;
if killer <> victim then
begin
if (GetPlayerStat(killer,'name') <> GetPlayerStat(victim,'name')) then begin
kills[killer] := kills[killer] + 1;
if (kills[victim] >= killsNeeded) then begin
WriteConsole(0,GetplayerStat(victim,'name') + '''s ' + inttostr(kills[victim]) + ' kills spree ended by ' + GetPlayerStat(killer,'name'),$FFAF2F00);
end;
kills[victim] := 0;
if bonus[victim] > 0 then bonus[victim] := 0;
if (kills[killer] <= Arrayhigh(spree) + 1) then begin
if (spree[kills[killer]] <> '') then WriteConsole(0,GetPlayerStat(killer,'name') + spree[kills[killer]],colors[kills[killer]]);
if (kills[killer] >= 1) then begin
bonus[killer] := Random(3,4);
case bonus[killer] of
1: begin DrawText(killer, 'Damage booster!!!',10000,RGB(255,0,0),0.20,40,240); end;
2: begin DrawText(killer, 'Life Leech!!!',10000,RGB(255,0,0),0.20,40,240); end;
3: begin DrawText(killer, 'Dodger!!!',10000,RGB(255,0,0),0.20,40,240); end;
end;
end;
end;
end
else
begin
if (kills[killer] > 0) then WriteConsole(GetplayerStat(killer, 'ID'),'Your spree kills have been reset for team killing',$FFAF2F00);
kills[killer] := 0;
if bonus[killer] > 0 then bonus[killer] := 0;
end;
end;
if GetPlayerStat(killer,'name') <> GetPlayerStat(victim,'name') then begin
WriteLn(IdToName(killer) + ' commited suicide');
if bonus[victim] > 0 then bonus[victim] := 0;
end;
end;