PHP код:
public OnPlayerDeath(playerid, killerid, reason)
{
//============================================================================================================================================
// AntiFakeKill
//============================================================================================================================================
if(killerid != INVALID_PLAYER_ID)
{
if(CallRemoteFunction("GetPlayerAdminLevel","i",playerid) < 1)
{
if(playerid == killerid)
{
new dbg15[100],pname[30];
GetPlayerName(playerid, pname, sizeof(pname));
format(dbg15, sizeof(dbg15), "[ADM]: Possнvel Fake-Kill prуprio de: %s (%i) - O player foi kickado automaticamente",playerid,pname);
CallRemoteFunction("MessageToAdmins","is",COLOUR_AVISO,dbg15);
Kick(playerid);
}
if(TickCounter - LastDeathTick[playerid] < 1)
{
new dbg15[100],pname[30];
GetPlayerName(playerid, pname, sizeof(pname));
format(dbg15, sizeof(dbg15), "[ADM]: Possнvel Fake-Kill mъltiplo de: %s (%i) - O player foi kickado automaticamente",playerid,pname);
CallRemoteFunction("MessageToAdmins","is",COLOUR_AVISO,dbg15);
Kick(playerid);
return 0;
}
LastDeathTick[playerid] = TickCounter;
}
}
//============================================================================================================================================
TextDrawHideForPlayer(playerid, Textdraw10);
TextDrawHideForPlayer(playerid, Textdraw3);
VPlayerMissao[playerid] = 0;
//LOADER
KillTimer(TeleLockTimer[playerid]);
//RESETAR ARMAS POR SEGURANЗA
ResetPlayerWeapons(playerid);
TextDrawHideForPlayer(playerid,Status[playerid]);
TextDrawHideForPlayer(playerid, Textdraw1);
TextDrawHideForPlayer(playerid, Textdraw3);
TextDrawHideForPlayer(playerid, TxDNotificador);
new str_rec[128];
new str_ganhou[128];
new killer_name[MAX_PLAYER_NAME];
new playerid_name[MAX_PLAYER_NAME];
GetPlayerName(killerid, killer_name, MAX_PLAYER_NAME);
GetPlayerName(playerid, playerid_name, MAX_PLAYER_NAME);
if(killerid == INVALID_PLAYER_ID) {
//SUICIDIDO
//ANTI-ABUSO
SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);
SendoAbusado[playerid] = 0;
LastKillerID[playerid] = INVALID_PLAYER_ID;
} else {
//ANTI-ABUSO
NewKillerID[playerid] = killerid;
if(NewKillerID[playerid] == LastKillerID[playerid] && ConnectedPlayers() > 4 && LastKillerID[playerid] != INVALID_PLAYER_ID && Arena[playerid] != 0){
SendoAbusado[playerid]++;
if(SendoAbusado[playerid] > 6){
SendoAbusado[playerid] = 0;
new LogString[150];
format(LogString, sizeof(LogString), "[ADM]: Possнvel abuso de score de %s (%i) [Matando: %s (%i)] [7x Kill+]", killer_name, killerid, playerid_name, playerid);
CallRemoteFunction("SaveToFile","ss","AbusosScore",LogString);
CallRemoteFunction("MessageToAdmins","is",COLOUR_AVISO,LogString);
}}else{SendoAbusado[playerid] = 0;}
LastKillerID[playerid] = killerid;
//QUADRO DE MORTES
SendDeathMessage(killerid,playerid,reason); // QUADRO DE MORTE
//PLAYERID MATOU ALGUEM - $1000
if (ArenaTipo[killerid] != 4 && ArenaTipo[killerid] != 5){
SetPlayerScore(killerid,GetPlayerScore(killerid)+1); //+1 DE SCORE
ScoreNaSessao[killerid]++;
//Mensagens
CheckAndShowScoreMarks(killerid);
CallRemoteFunction("GivePlayerCash", "ii", killerid, 1000); // DINHEIRO
}else{SendClientMessage(killerid, COLOUR_AVISO, "[ARENA]: As mortes nesta arena nгo serгo contabilizadas como score.");}
//SPREE DAS ARENAS
if(Arena[killerid] == 1){ArenaKills[killerid]++;}
//ARENA A/D
if(AAD_Team[killerid] == 1 && AAD_EmProgresso == 1 && AAD_Vai[killerid] == 1){AAD_Kills_1++;AAD_KillsPerPlayer[killerid]++;}
if(AAD_Team[killerid] == 2 && AAD_EmProgresso == 1 && AAD_Vai[killerid] == 1){AAD_Kills_2++;AAD_KillsPerPlayer[killerid]++;}
// PREMIO POR GANHAR ARENA
if(Arena[playerid] == 1){if(ArenaTipo[playerid] == 1 || ArenaTipo[playerid] == 4 || ArenaTipo[playerid] == 5){
new ssss1[150];
format(ssss1, sizeof(ssss1), "{00FF00}[ARENA DM]: {FFFFFF}%s {00FF00}derrotou {FFFFFF}%s", killer_name, playerid_name);
SetPlayerHealth(killerid, 100);
SetPlayerArmour(killerid, 100);
new pscore;
pscore = GetPlayerScore(playerid);
SetPlayerScore(playerid,pscore+5);/// edite aqui para aumentar os score das arenas !
GameTextForPlayer(playerid,"~r~~n~~n~~n~~n~QUE VERGONHA MORREU!", 3000, 5);
GameTextForPlayer(killerid,"~g~~n~~n~~n~~n~MUITO BOM!", 3000, 5);
if (ArenaTipo[playerid] != 4 && ArenaTipo[playerid] != 5){
SendClientMessageToAll(COLOUR_INFORMACAO, ssss1);
SendClientMessage(killerid, COLOUR_AVISO, "[ARENA]: Parabens vocк ganhou $3000 mais colete e saъde.");
CallRemoteFunction("GivePlayerCash", "ii", killerid, 3000);}}}
// PREMIO POR GANHAR COMBATE
if(Arena[playerid] == 1){if(ArenaTipo[playerid] == 6){
new ssss1[150];
format(ssss1, sizeof(ssss1), "{00FF00}[COMBATE]: {FFFFFF}%s {00FF00}aniquilou {FFFFFF}%s", killer_name, playerid_name);
SetPlayerHealth(killerid, 100);
SetPlayerArmour(killerid, 100);
GameTextForPlayer(playerid,"~r~~n~~n~~n~~n~NAO FOI DESTA VEZ!", 3000, 5);
GameTextForPlayer(killerid,"~g~~n~~n~~n~~n~MENOS UM!", 3000, 5);
if (ArenaTipo[playerid] != 4 && ArenaTipo[playerid] != 5){
SendClientMessageToAll(COLOUR_INFORMACAO, ssss1);
SendClientMessage(killerid, COLOUR_AVISO, "[COMBATE]: Parabens vocк ganhou $3000 mais colete e saъde.");
CallRemoteFunction("GivePlayerCash", "ii", killerid, 3000);}}}
// PREMIO POR GANHAR COMBATE
if(Arena[playerid] == 1){if(ArenaTipo[playerid] == 7){
new ssss1[150];
format(ssss1, sizeof(ssss1), "{00FF00}[COMBATE SNIPER]: {FFFFFF}%s {00FF00}aniquilou {FFFFFF}%s", killer_name, playerid_name);
SetPlayerHealth(killerid, 100);
SetPlayerArmour(killerid, 0);
GameTextForPlayer(playerid,"~r~~n~~n~~n~~n~NAO FOI DESTA VEZ!", 3000, 5);
GameTextForPlayer(killerid,"~g~~n~~n~~n~~n~MENOS UM!", 3000, 5);
if (ArenaTipo[playerid] != 4 && ArenaTipo[playerid] != 5){
SendClientMessageToAll(COLOUR_INFORMACAO, ssss1);
SendClientMessage(killerid, COLOUR_AVISO, "[COMBATE SNIPER]: Parabens vocк ganhou $3000 mais saъde.");
CallRemoteFunction("GivePlayerCash", "ii", killerid, 3000);}}}
// PREMIO POR GANHAR ARENA (PORRADA)
if(Arena[playerid] == 1){if(ArenaTipo[playerid] == 2){
new ssss1[150];
format(ssss1, sizeof(ssss1), "{00FF00}[ARENA DM]: {FFFFFF}%s {00FF00}derrotou {FFFFFF}%s", killer_name, playerid_name);
SendClientMessageToAll(COLOUR_INFORMACAO, ssss1);
GameTextForPlayer(playerid,"~r~~n~~n~~n~~n~QUE VERGONHA MORREU!", 3000, 5);
GameTextForPlayer(killerid,"~g~~n~~n~~n~~n~MUITO BOM!", 3000, 5);
SetPlayerHealth(killerid, 100);
SetPlayerArmour(killerid, 0);
SendClientMessage(killerid, COLOUR_AVISO, "[ARENA]: Parabens vocк ganhou $3000 mais saъde.");
CallRemoteFunction("GivePlayerCash", "ii", killerid, 3000);}}
// PREMIO POR GANHAR ARENA X1
if(Arena[playerid] == 1){if(ArenaTipo[playerid] == 3){
new ssss1[150];
format(ssss1, sizeof(ssss1), "{00FF00}[X1] {FFFFFF}%s {00FF00}derrotou {FFFFFF}%s {00FF00}[X1]", killer_name, playerid_name);
CallRemoteFunction("SaveToFile","ss","X1",ssss1);
SendClientMessageToAll(COLOUR_INFORMACAO, ssss1);
GameTextForPlayer(playerid,"~r~~n~~n~~n~~n~QUE VERGONHA MORREU!", 3000, 5);
GameTextForPlayer(killerid,"~g~~n~~n~~n~~n~MUITO BOM!", 3000, 5);
SetPlayerHealth(killerid, 100);
SetPlayerArmour(killerid, 100);
SendClientMessage(killerid, COLOUR_AVISO, "[X1]: Parabens vocк ganhou $3000!");
CallRemoteFunction("GivePlayerCash", "ii", killerid, 3000);
SetTimerEx("timed_spawn",1000,0, "i", killerid);}}
// PREMIO POR GANHAR ARENA X1 NOVA RUN
if(Arena[playerid] == 1){if(ArenaTipo[playerid] == 13){
new ssss1[150];
format(ssss1, sizeof(ssss1), "{00FF00}[X1] {FFFFFF}%s {00FF00}derrotou {FFFFFF}%s {00FF00}[X1]", killer_name, playerid_name);
CallRemoteFunction("SaveToFile","ss","X1",ssss1);
SendClientMessageToAll(COLOUR_INFORMACAO, ssss1);
GameTextForPlayer(playerid,"~r~~n~~n~~n~~n~QUE VERGONHA MORREU!", 3000, 5);
GameTextForPlayer(killerid,"~g~~n~~n~~n~~n~MUITO BOM!", 3000, 5);
SetPlayerHealth(killerid, 100);
SetPlayerArmour(killerid, 100);
SendClientMessage(killerid, COLOUR_AVISO, "[X1]: Parabens vocк ganhou $3000!");
CallRemoteFunction("GivePlayerCash", "ii", killerid, 3000);
SetTimerEx("timed_spawn",1000,0, "i", killerid);}}
// PREMIO POR GANHAR ARENA X1 NOVA WALK
if(Arena[playerid] == 1){if(ArenaTipo[playerid] == 14){
new ssss1[150];
format(ssss1, sizeof(ssss1), "{00FF00}[X1 WALK] {FFFFFF}%s {00FF00}derrotou {FFFFFF}%s {00FF00}[X1 WALK]", killer_name, playerid_name);
CallRemoteFunction("SaveToFile","ss","X1",ssss1);
SendClientMessageToAll(COLOUR_INFORMACAO, ssss1);
GameTextForPlayer(playerid,"~r~~n~~n~~n~~n~QUE VERGONHA MORREU!", 3000, 5);
GameTextForPlayer(killerid,"~g~~n~~n~~n~~n~MUITO BOM!", 3000, 5);
SetPlayerHealth(killerid, 100);
SetPlayerArmour(killerid, 100);
SendClientMessage(killerid, COLOUR_AVISO, "[X1]: Parabens vocк ganhou $3000!");
CallRemoteFunction("GivePlayerCash", "ii", killerid, 3000);
SetTimerEx("timed_spawn",1000,0, "i", killerid);}}
// PREMIO POR GANHAR ARENA X1 WALK
if(Arena[playerid] == 1){if(ArenaTipo[playerid] == 8){
new ssss1[150];
format(ssss1, sizeof(ssss1), "{00FF00}[X1 WALK] {FFFFFF}%s {00FF00}derrotou {FFFFFF}%s {00FF00}[X1 WALK]", killer_name, playerid_name);
CallRemoteFunction("SaveToFile","ss","X1W",ssss1);
SendClientMessageToAll(COLOUR_INFORMACAO, ssss1);
GameTextForPlayer(playerid,"~r~~n~~n~~n~~n~QUE VERGONHA MORREU!", 3000, 5);
GameTextForPlayer(killerid,"~g~~n~~n~~n~~n~MUITO BOM!", 3000, 5);
SetPlayerHealth(killerid, 100);
SetPlayerArmour(killerid, 100);
SendClientMessage(killerid, COLOUR_AVISO, "[X1]: Parabens vocк ganhou $3000!");
CallRemoteFunction("GivePlayerCash", "ii", killerid, 3000);
SetTimerEx("timed_spawn",1000,0, "i", killerid);
}}
//EventoRecarregarLife
if(NoEvento[killerid] == 1)
{
if(EventoAtivo == 1 && NoEvento[playerid] == 1 && EventoRecarregarLife == true)
{
SetPlayerHealth(killerid,100.0);
if(EventoDarColete == 1) SetPlayerArmour(killerid,100.0);
}
}
// BONUS DE KILL DE ARMA
if(Arena[killerid] == 0){
if(reason == 42){SendClientMessage(killerid, COLOUR_INFORMACAO, "[[[ BФNUS POR MATAR NO EXTINTOR: $250 ]]]");CallRemoteFunction("GivePlayerCash", "ii", killerid, 250);}
if(reason == 41){SendClientMessage(killerid, COLOUR_INFORMACAO, "[[[ BФNUS POR MATAR NO SPRAY: $500 ]]]");CallRemoteFunction("GivePlayerCash", "ii", killerid, 500);}
if(reason == 9){SendClientMessage(killerid, COLOUR_INFORMACAO, "[[[ BФNUS POR MATAR NA MOTOSSERRA: $750 ]]]");CallRemoteFunction("GivePlayerCash", "ii", killerid, 750);}
if(reason == 24){SendClientMessage(killerid, COLOUR_INFORMACAO, "[[[ BФNUS POR MATAR NA DESERT EAGLE: $1000 ]]]");CallRemoteFunction("GivePlayerCash", "ii", killerid, 1000);}
if(reason == 23){SendClientMessage(killerid, COLOUR_INFORMACAO, "[[[ BФNUS POR MATAR NA PISTOLA: $1250 ]]]");CallRemoteFunction("GivePlayerCash", "ii", killerid, 1250);}
if(reason == 22){SendClientMessage(killerid, COLOUR_INFORMACAO, "[[[ BФNUS POR MATAR NAS PISTOLAS: $1500 ]]]");CallRemoteFunction("GivePlayerCash", "ii", killerid, 1500);}
if(reason == 34){SendClientMessage(killerid, COLOUR_INFORMACAO, "[[[ BФNUS POR MATAR NO SNIPER RIFLE: $1750 ]]]");CallRemoteFunction("GivePlayerCash", "ii", killerid, 1750);}
if(reason == 33){SendClientMessage(killerid, COLOUR_INFORMACAO, "[[[ BФNUS POR MATAR NO RIFLE: $2000 ]]]");CallRemoteFunction("GivePlayerCash", "ii", killerid, 2000);}
if(reason == 1){SendClientMessage(killerid, COLOUR_INFORMACAO, "[[[ BФNUS POR MATAR NO SOCO INGLES: $2250 ]]]");CallRemoteFunction("GivePlayerCash", "ii", killerid, 2250);}
if(reason == 0){SendClientMessage(killerid, COLOUR_INFORMACAO, "[[[ BФNUS POR MATAR NA PORRADA: $2500 ]]]");CallRemoteFunction("GivePlayerCash", "ii", killerid, 2500);}}
//CAMERA
if(Arena[playerid] == 0){
if(IsPlayerSpawned(killerid)){
GameTextForPlayer(playerid,"~n~~n~~n~~n~~n~~n~~n~~n~~r~MORTO!",2000,3);
new Float:X, Float:Y, Float:Z, Float:X2, Float:Y2;
GetXYInFrontOfPlayer(playerid, X2, Y2, -4);
GetPlayerPos(playerid, X, Y, Z);
SetPlayerCameraPos(playerid, X2, Y2, Z +3);
SetPlayerCameraLookAt(playerid, X, Y, Z);}}
//Killspree arena messages
if(Arena[killerid] == 1 && ArenaTipo[killerid] != 3 && ArenaTipo[killerid] != 8){
ProcessarArenaKillSpree(playerid,killerid);}
// CHECAR SE PLAYER ESTA NO VEICULO
if(GetPlayerState(killerid) == PLAYER_STATE_DRIVER){
//ANTI HELI-KILL
if(reason == 50 && Arena[killerid] == 0) {
switch(GetVehicleModel( GetPlayerVehicleID(killerid) )) {
case 548,425,417,487,488,497,563,447,469,465,501:{
HeliKills[killerid]++;
switch(HeliKills[killerid]){
case 1: GameTextForPlayer(killerid,"~r~AVISO ~n~~n~~y~NA PROXIMA~n~VOCE SERA PRESO",5000,3);}
if(HeliKills[killerid] > 1){
new assss5[128];
format(assss5, sizeof(assss5), "%s foi preso por matar com a hйlice do helicуptero.", killer_name);
CallRemoteFunction("LJail","ii",killerid,300000);
SendClientMessageToAll(COLOUR_AVISO, assss5);
SendClientMessage(killerid, COLOUR_BRANCO, "Й PROIBIDO MATAR NA HЙLICE. VOCК FOI PUNIDO POR ISSO. (5 minutos)");}}}}
//ANTI-DB
if(reason == 28 || reason == 29 || reason == 32){
switch(GetVehicleModel( GetPlayerVehicleID(killerid))){case 509,481,510:{
new assss5[128];format(assss5, sizeof(assss5), "%s foi preso por atirar pra fora do veнculo", killer_name);
CallRemoteFunction("GivePlayerCash", "ii", killerid, -10000);
SetPlayerScore(killerid,GetPlayerScore(killerid)-2);
ScoreNaSessao[killerid]--;
CallRemoteFunction("LJail","ii",killerid,300000);
SendClientMessage(killerid, COLOUR_AVISO, "");
SendClientMessage(killerid, COLOUR_AVISO, "VOCК FOI PRESO POR ATIRAR DE VEICULO, SEU NOOB.");
SendClientMessage(killerid, COLOUR_AVISO, "ALЙM DE SER PRESO, PERDEU -1 DE SCORE E $10000");
SendClientMessage(killerid, COLOUR_AVISO, "TEMPO DE PRISГO: 5 MINUTOS");
SendClientMessage(killerid, COLOUR_AVISO, "");
SendClientMessage(killerid, COLOUR_AVISO, "Se continuar fazendo DB poderб ser kickado ou banido.");
SendClientMessage(killerid, COLOUR_AVISO, "");}}}}
//DAR RECOMPENSA
if(Arena[playerid] == 0){if(GetPlayerState(killerid) == PLAYER_STATE_ONFOOT){
if(GetPlayerWantedLevel(playerid) == 1){format(str_ganhou, sizeof(str_ganhou), "%s ganhou a recompensa de $10000 por matar %s", killer_name, playerid_name);SendClientMessageToAll(COLOUR_INFORMACAO, str_ganhou);CallRemoteFunction("GivePlayerCash", "ii", killerid, 10000);}
if(GetPlayerWantedLevel(playerid) == 2){format(str_ganhou, sizeof(str_ganhou), "%s ganhou a recompensa de $20000 por matar %s", killer_name, playerid_name);SendClientMessageToAll(COLOUR_INFORMACAO, str_ganhou);CallRemoteFunction("GivePlayerCash", "ii", killerid, 20000);}
if(GetPlayerWantedLevel(playerid) == 3){format(str_ganhou, sizeof(str_ganhou), "%s ganhou a recompensa de $30000 por matar %s", killer_name, playerid_name);SendClientMessageToAll(COLOUR_INFORMACAO, str_ganhou);CallRemoteFunction("GivePlayerCash", "ii", killerid, 30000);}
if(GetPlayerWantedLevel(playerid) == 4){format(str_ganhou, sizeof(str_ganhou), "%s ganhou a recompensa de $40000 por matar %s", killer_name, playerid_name);SendClientMessageToAll(COLOUR_INFORMACAO, str_ganhou);CallRemoteFunction("GivePlayerCash", "ii", killerid, 40000);}
if(GetPlayerWantedLevel(playerid) == 5){format(str_ganhou, sizeof(str_ganhou), "%s ganhou a recompensa de $50000 por matar %s", killer_name, playerid_name);SendClientMessageToAll(COLOUR_INFORMACAO, str_ganhou);CallRemoteFunction("GivePlayerCash", "ii", killerid, 50000);}
if(GetPlayerWantedLevel(playerid) == 6){format(str_ganhou, sizeof(str_ganhou), "%s ganhou a recompensa de $60000 por matar %s", killer_name, playerid_name);SendClientMessageToAll(COLOUR_INFORMACAO, str_ganhou);CallRemoteFunction("GivePlayerCash", "ii", killerid, 60000);}}}
// ATUALIZAR CONTADOR DE KILLSPREE
if(GetPlayerState(killerid) == PLAYER_STATE_ONFOOT){
if(Arena[killerid] == 0){
Spree[killerid] = Spree[killerid]+1;
Spree[playerid] = 0;
SetPlayerWantedLevel(playerid, 0);}
// MENSAGEM DE RECOMPENSA $10000
if(Arena[killerid] == 0){if(Spree[killerid] == 10){
format(str_rec, sizeof(str_rec), "PROCURADO: %s (Recompensa: $10000)", killer_name);SendClientMessageToAll(COLOUR_ERRO, str_rec);
SetPlayerWantedLevel(killerid, 1);}
// MENSAGEM DE RECOMPENSA $20000
if(Spree[killerid] == 20){
format(str_rec, sizeof(str_rec), "PROCURADO: %s (Recompensa: $20000)", killer_name);SendClientMessageToAll(COLOUR_ERRO, str_rec);
SetPlayerWantedLevel(killerid, 2);}
// MENSAGEM DE RECOMPENSA $30000
if(Spree[killerid] == 30){
format(str_rec, sizeof(str_rec), "PROCURADO: %s (Recompensa: $30000)", killer_name);SendClientMessageToAll(COLOUR_ERRO, str_rec);
SetPlayerWantedLevel(killerid, 3);}
// MENSAGEM DE RECOMPENSA $40000
if(Spree[killerid] == 40){
format(str_rec, sizeof(str_rec), "PROCURADO: %s (Recompensa: $40000)", killer_name);SendClientMessageToAll(COLOUR_ERRO, str_rec);
SetPlayerWantedLevel(killerid, 4);}
// MENSAGEM DE RECOMPENSA $50000
if(Spree[killerid] == 50){
format(str_rec, sizeof(str_rec), "PROCURADO: %s (Recompensa: $50000)", killer_name);SendClientMessageToAll(COLOUR_ERRO, str_rec);
SetPlayerWantedLevel(killerid, 5);}
// MENSAGEM DE RECOMPENSA $60000
if(Spree[killerid] == 60){
format(str_rec, sizeof(str_rec), "PROCURADO: %s (Recompensa: $60000)", killer_name);SendClientMessageToAll(COLOUR_ERRO, str_rec);
SetPlayerWantedLevel(killerid, 6);}}
}
}
if(ArenaTipo[playerid] == 3){X1 = X1-1;ArenaTipo[playerid] = 0;Arena[playerid] = 0;}
//Arena[playerid] = 0;
//ArenaTipo[playerid] = 0;
//SetPlayerHealth(playerid, 100.0);
return 1;
}