public OnPlayerDeath(playerid, killerid, reason)
{
if(reason == 255) reason = 53;
new iString[180];
//antide
if(reason == 54 && Player[playerid][LastHitWith] != -1 && Player[playerid][LastHitBy] != -1)
{
new weap, killahid;
weap = Player[playerid][LastHitWith];
killahid = Player[playerid][LastHitBy];
SendDeathMessage(killahid, playerid, weap);
GiveDeath(playerid);
GiveScore(killahid, 1 * Player[killerid][Spree]);
GiveKill(killahid);
GiveWKill(killahid, weap);
CheckRewards(killahid);
Player[killahid][Spree]++;
Player[playerid][LastHitWith] = -1;
Player[playerid][LastHitBy] = -1;
Player[killahid][LastKilled] = playerid;
}
//antide
if(killerid == INVALID_PLAYER_ID)
{
SendDeathMessage(INVALID_PLAYER_ID, playerid, reason);
GiveDeath(playerid);
}
else if(killerid != INVALID_PLAYER_ID && IsPlayerConnected(killerid))
{
format(iString, sizeof(iString), "%sDu hast %s%s gekillt", TDColor[Player[killerid][Team]], TDColor[Player[playerid][Team]], Player[playerid][Name]);
PlayerTextDrawSetString(killerid, DeathText[0], iString);
PlayerTextDrawShow(killerid, DeathText[0]);
format(iString, sizeof(iString), "%sDu wurdest von %s%s gekillt", TDColor[Player[playerid][Team]], TDColor[Player[killerid][Team]], Player[killerid][Name]);
PlayerTextDrawSetString(playerid, DeathText[1], iString);
PlayerTextDrawShow(playerid, DeathText[1]);
SetTimerEx("DeathMessage", 4000, false, "ii", killerid, playerid);
SendDeathMessage(killerid, playerid, reason);
if(reason == 0 || reason == 24 || reason == 25 || reason == 27 || reason == 29 || reason == 30 || reason == 31 || reason == 33 || reason == 34 || reason == 51) GiveWKill(killerid, reason);
GiveKill(killerid);
GiveDeath(playerid);
Player[killerid][Spree]++;
GiveScore(killerid, 1 * Player[killerid][Spree]);
switch(Player[killerid][Spree])
{
case 2: ShowAnn2(killerid, "DOPPEL KILL!");
case 3: ShowAnn2(killerid, "DREIFACH KILL!");
case 4: ShowAnn2(killerid, "VIERFACH KILL!");
case 5: ShowAnn2(killerid, "PENTA KILL!");
case 6: ShowAnn2(killerid, "MEGA KILL!");
case 7: ShowAnn2(killerid, "ULTRA KILL!");
case 8: ShowAnn2(killerid, "UNAUFHALTSAM!");
case 9: ShowAnn2(killerid, "GOETTLICH!");
case 10 .. 200:
{
format(iString, sizeof(iString), "HEILIGE SCHEIßE!~n~%s%s %d KILLS!", TDColor[Player[killerid][Team]], Player[killerid][Name], Player[killerid][Spree]);
ShowAnn2(killerid, iString);
}
}
switch(Player[killerid][Team])
{
case GREENTEAM: GKills++;
case BLUETEAM: BKills++;
}
if( Player[killerid][SniperK] == 5 || Player[killerid][SniperK] == 25 || Player[killerid][SniperK] == 50 ||
Player[killerid][SniperK] == 100 || Player[killerid][SniperK] == 150 || Player[killerid][SniperK] == 200 ||
Player[killerid][SniperK] == 250 || Player[killerid][SniperK] == 300 || Player[killerid][SniperK] == 350 ||
Player[killerid][SniperK] == 400 || Player[killerid][SniperK] == 450 || Player[killerid][SniperK] == 499 )
{
format(iString, sizeof(iString), "Scharfschuetze~n~~n~%d / 500 Sniper Kills", Player[killerid][DeagleK]);
ShowAch(killerid, iString, Player[killerid][SniperK], 500);
}
if( Player[killerid][DeagleK] == 5 || Player[killerid][DeagleK] == 25 || Player[killerid][DeagleK] == 50 ||
Player[killerid][DeagleK] == 75 || Player[killerid][DeagleK] == 100 || Player[killerid][DeagleK] == 125 ||
Player[killerid][DeagleK] == 150 || Player[killerid][DeagleK] == 175 || Player[killerid][DeagleK] == 200 ||
Player[killerid][DeagleK] == 225 || Player[killerid][DeagleK] == 249 )
{
format(iString, sizeof(iString), "Deagle Experte~n~~n~%d / 250 Deagle Kills", Player[killerid][DeagleK]);
ShowAch(killerid, iString, Player[killerid][DeagleK], 250);
}
if( Player[killerid][ShotgunK] == 5 || Player[killerid][ShotgunK] == 50 || Player[killerid][ShotgunK] == 100 ||
Player[killerid][ShotgunK] == 150 || Player[killerid][ShotgunK] == 200 || Player[killerid][ShotgunK] == 250 ||
Player[killerid][ShotgunK] == 300 || Player[killerid][ShotgunK] == 350 || Player[killerid][ShotgunK] == 400 ||
Player[killerid][ShotgunK] == 450 || Player[killerid][ShotgunK] == 500 || Player[killerid][ShotgunK] == 550 ||
Player[killerid][ShotgunK] == 600 || Player[killerid][ShotgunK] == 650 || Player[killerid][ShotgunK] == 700 ||
Player[killerid][ShotgunK] == 750 || Player[killerid][ShotgunK] == 800 || Player[killerid][ShotgunK] == 850 ||
Player[killerid][ShotgunK] == 900 || Player[killerid][ShotgunK] == 950 || Player[killerid][ShotgunK] == 999 )
{
format(iString, sizeof(iString), "Shotgun Experte~n~~n~%d / 1000 Shotgun Kills", Player[killerid][ShotgunK]);
ShowAch(killerid, iString, Player[killerid][ShotgunK], 1000);
}
if( Player[killerid][RifleK] == 5 || Player[killerid][RifleK] == 25 || Player[killerid][RifleK] == 50 ||
Player[killerid][RifleK] == 75 || Player[killerid][RifleK] == 100 || Player[killerid][RifleK] == 125 ||
Player[killerid][RifleK] == 150 || Player[killerid][RifleK] == 175 || Player[killerid][RifleK] == 200 ||
Player[killerid][RifleK] == 225 || Player[killerid][RifleK] == 249 )
{
format(iString, sizeof(iString), "Rilfe Experte~n~~n~%d / 250 Rifle Kills", Player[killerid][RifleK]);
ShowAch(killerid, iString, Player[killerid][RifleK], 250);
}
if( Player[killerid][MP5K] == 5 || Player[killerid][MP5K] == 10 || Player[killerid][MP5K] == 15 ||
Player[killerid][MP5K] == 20 || Player[killerid][MP5K] == 25 || Player[killerid][MP5K] == 30 ||
Player[killerid][MP5K] == 35 || Player[killerid][MP5K] == 40 || Player[killerid][MP5K] == 45 ||
Player[killerid][MP5K] == 49 )
{
format(iString, sizeof(iString), "MP5 Experte~n~~n~%d / 50 MP5 Kills", Player[killerid][MP5K]);
ShowAch(killerid, iString, Player[killerid][MP5K], 50);
}
if( Player[killerid][AK47K] == 5 || Player[killerid][AK47K] == 10 || Player[killerid][AK47K] == 20 ||
Player[killerid][AK47K] == 30 || Player[killerid][AK47K] == 40 || Player[killerid][AK47K] == 50 ||
Player[killerid][AK47K] == 60 || Player[killerid][AK47K] == 70 || Player[killerid][AK47K] == 80 ||
Player[killerid][AK47K] == 90 || Player[killerid][AK47K] == 99 )
{
format(iString, sizeof(iString), "AK47 Experte~n~~n~%d / 100 AK47 Kills", Player[killerid][AK47K]);
ShowAch(killerid, iString, Player[killerid][AK47K], 100);
}
if( Player[killerid][M4K] == 5 || Player[killerid][M4K] == 25 || Player[killerid][M4K] == 50 ||
Player[killerid][M4K] == 75 || Player[killerid][M4K] == 100 || Player[killerid][M4K] == 125 ||
Player[killerid][M4K] == 150 || Player[killerid][M4K] == 175 || Player[killerid][M4K] == 200 ||
Player[killerid][M4K] == 225 || Player[killerid][M4K] == 249 )
{
format(iString, sizeof(iString), "M4 Experte~n~~n~%d / 250 M4 Kills", Player[killerid][M4K]);
ShowAch(killerid, iString, Player[killerid][M4K], 250);
}
if( Player[killerid][Headshots] == 5 || Player[killerid][Headshots] == 10 || Player[killerid][Headshots] == 15 ||
Player[killerid][Headshots] == 20 || Player[killerid][Headshots] == 25 || Player[killerid][Headshots] == 30 ||
Player[killerid][Headshots] == 35 || Player[killerid][Headshots] == 40 || Player[killerid][Headshots] == 45 ||
Player[killerid][Headshots] == 49 )
{
format(iString, sizeof(iString), "Der Kopfsucher~n~~n~%d / 50 Headshots", Player[killerid][Headshots]);
ShowAch(killerid, iString, Player[killerid][Headshots], 50);
}
if( Player[killerid][GrenadeK] == 5 || Player[killerid][GrenadeK] == 10 || Player[killerid][GrenadeK] == 15 ||
Player[killerid][GrenadeK] == 20 || Player[killerid][GrenadeK] == 25 || Player[killerid][GrenadeK] == 30 ||
Player[killerid][GrenadeK] == 35 || Player[killerid][GrenadeK] == 40 || Player[killerid][GrenadeK] == 45 ||
Player[killerid][GrenadeK] == 49 )
{
format(iString, sizeof(iString), "BOOM~n~~n~%d / 50 Grenade Kills", Player[killerid][MP5K]);
ShowAch(killerid, iString, Player[killerid][GrenadeK], 50);
}
if(Player[killerid][SniperK] == 500 && Player[killerid][UnlockedEagleEye] == false)
{
PlayerPlaySound(killerid, 1133, 0, 0, 0);
format(iString, sizeof(iString), "~g~~h~~h~~h~Errungenschaft erhalten!~n~~n~~g~~h~~h~~h~Scharfschuetze~n~%d / 500 Sniper Kills", Player[killerid][SniperK]);
ShowAch(killerid, iString, Player[killerid][SniperK], 500);
}
if(Player[killerid][DeagleK] == 250 && Player[killerid][UnlockedMP5] == false)
{
SendClientMessage(killerid, YELLOW_COLOR, "MP5 freigeschaltet! Nutze {FFFFFF}/guns {FFFF00}um sie zu benutzen");
PlayerPlaySound(killerid, 1133, 0, 0, 0);
format(iString, sizeof(iString), "~g~~h~~h~~h~Errungenschaft erhalten!~n~~n~~g~~h~~h~~h~Deagle Experte~n~%d / 250 Deagle Kills~n~MP5 freigeschaltet! Du kannst sie mit /guns ausruesten.", Player[killerid][DeagleK]);
ShowAch(killerid, iString, Player[killerid][DeagleK], 250);
}
if(Player[killerid][ShotgunK] == 1000 && Player[killerid][UnlockedSpas] == false)
{
SendClientMessage(killerid, YELLOW_COLOR, "Spas freigeschaltet! Nutze {FFFFFF}/guns {FFFF00}um sie zu benutzen");
PlayerPlaySound(killerid, 1133, 0, 0, 0);
format(iString, sizeof(iString), "~g~~h~~h~~h~Errungenschaft erhalten!~n~~n~~g~~h~~h~~h~Shotgun Experte~n~%d / 1000 Shotgun Kills~n~Spas freigeschaltet! Du kannst sie mit /guns ausruesten.", Player[killerid][ShotgunK]);
ShowAch(killerid, iString, Player[killerid][ShotgunK], 1000);
}
if(Player[killerid][RifleK] == 250 && Player[killerid][UnlockedSniper] == false)
{
SendClientMessage(killerid, YELLOW_COLOR, "Sniper freigeschaltet! Nutze {FFFFFF}/guns {FFFF00}um sie zu benutzen");
PlayerPlaySound(killerid, 1133, 0, 0, 0);
format(iString, sizeof(iString), "~g~~h~~h~~h~Errungenschaft erhalten!~n~~n~~g~~h~~h~~h~Riflee Experte~n~%d / 250 Rifle Kills~n~Sniper freigeschaltet! Du kannst sie mit /guns ausruesten.", Player[killerid][RifleK]);
ShowAch(killerid, iString, Player[killerid][RifleK], 250);
}
if(Player[killerid][MP5K] == 50 && Player[killerid][UnlockedAK47] == false)
{
SendClientMessage(killerid, YELLOW_COLOR, "AK47 freigeschaltet! Nutze {FFFFFF}/guns {FFFF00}um sie zu benutzen");
PlayerPlaySound(killerid, 1133, 0, 0, 0);
format(iString, sizeof(iString), "~g~~h~~h~~h~Errungenschaft erhalten!~n~~n~~g~~h~~h~~h~MP5 Experte~n~%d / 50 MP5 Kills~n~AK47 freigeschaltet! Du kannst sie mit /guns ausruesten.", Player[killerid][MP5K]);
ShowAch(killerid, iString, Player[killerid][MP5K], 50);
}
if(Player[killerid][AK47K] == 100 && Player[killerid][UnlockedM4] == false)
{
SendClientMessage(killerid, YELLOW_COLOR, "M4 freigeschaltet! Nutze {FFFFFF}/guns {FFFF00}um sie zu benutzen");
PlayerPlaySound(killerid, 1133, 0, 0, 0);
format(iString, sizeof(iString), "~g~~h~~h~~h~Errungenschaft erhalten!~n~~n~~g~~h~~h~~h~AK47 Experte~n~%d / 100 AK47 Kills~n~M4 freigeschaltet! Du kannst sie in /guns ausruesten.", Player[killerid][AK47K]);
ShowAch(killerid, iString, Player[killerid][AK47K], 100);
}
if(Player[killerid][M4K] == 250 && Player[killerid][UnlockedGrenade] == false)
{
SendClientMessage(killerid, YELLOW_COLOR, "Granate freigeschaltet! Nutze {FFFFFF}/guns {FFFF00}um sie zu benutzen");
PlayerPlaySound(killerid, 1133, 0, 0, 0);
format(iString, sizeof(iString), "~g~~h~~h~~h~Errungenschaft erhalten!~n~~n~~g~~h~~h~~h~M4 Experte~n~%d / 250 M4 Kills~n~Granate freigeschaltet! Du kannst sie in /guns ausruesten.", Player[killerid][M4K]);
ShowAch(killerid, iString, Player[killerid][M4K], 250);
}
if(Player[killerid][Headshots] == 50 && Player[killerid][UnlockedCigar] == false)
{
SendClientMessage(killerid, YELLOW_COLOR, "Zigarre freigeschaltet! Du wirst mit einer Zigarre das nächste mal spawnen");
PlayerPlaySound(killerid, 1133, 0, 0, 0);
format(iString, sizeof(iString), "~g~~h~~h~~h~Errungenschaft erhalten!~n~~n~~g~~h~~h~~h~Der Kopfsucher~n~%d / 50 Headshots~n~Du spawnst jetzt mit einer Zigarre!", Player[killerid][Headshots]);
ShowAch(killerid, iString, Player[killerid][Headshots], 50);
}
if(Player[killerid][GrenadeK] == 50 && Player[killerid][UnlockedFlame] == false)
{
SendClientMessage(killerid, YELLOW_COLOR, "Flammen Schädel freigeschaltet! Du wirst mit einem Flammenschädel das nächste mal spawnen");
PlayerPlaySound(killerid, 1133, 0, 0, 0);
format(iString, sizeof(iString), "~g~~h~~h~~h~Errungenschaft erhalten!~n~~n~~g~~h~~h~~h~BOOM~n~%d / 50 Grenade Kills~n~Du spawnst jetzt mit einem Flammenschädel!", Player[killerid][MP5K]);
ShowAch(killerid, iString, Player[killerid][GrenadeK], 50);
}
CheckRewards(killerid);
}
Player[playerid][LastHitWith] = -1; //antide
Player[playerid][LastHitBy] = -1; //antide
Player[playerid][Spree] = 0;
Player[killerid][LastKilled] = playerid;
return 1;
}