25.10.2011, 01:12
Como faзo para que quando o player morrer, ele fique 3 minutos no chгo sem dar spawn, e depois destes 3 minutos ele da spawn
public OnPlayerDeath(playerid, killerid, reason) { PlayerInfo[killerid][pKills] += 1; new string[128]; new name[MAX_PLAYER_NAME]; new name2[MAX_PLAYER_NAME]; new deathreason[20]; new y, m, d; new h,mi,s; getdate(y,m,d); gettime(h,mi,s); GetPlayerName(playerid, name, sizeof(name)); GetPlayerName(killerid, name2, sizeof(name2)); if(ProvocoMorro[playerid] == 1) { GangZoneStopFlashForAll(GZMorro); GangZoneShowForAll(GZMorro, 0xFF66FFAA); GuerranoMorro = 0; ProvocoMorro[playerid] = 0; donomorro = 0; Dominando[playerid] = 0; KillTimer(TempoGuerraMorro); } if(ProvocoParque[playerid] == 1) { GangZoneStopFlashForAll(GZParque); GangZoneShowForAll(GZParque, 0xFF66FFAA); GuerranoParque = 0; ProvocoParque[playerid] = 0; donoparque = 0; Dominando[playerid] = 0; KillTimer(TempoGuerraParque); } if(ProvocoShop[playerid] == 1) { GangZoneStopFlashForAll(GZShop); GangZoneShowForAll(GZShop, 0xFF66FFAA); GuerranoShop = 0; ProvocoShop[playerid] = 0; donoshop = 0; Dominando[playerid] = 0; KillTimer(TempoGuerraShop); } if(killerid != INVALID_PLAYER_ID) { if(GetPlayerWeapon(killerid) != reason) { if(AntiFakeKill == 1) { if(FakeKillWarns[playerid] == 4) { format(string, sizeof(string), "%s (%d), Foi kickado Pelo Anticheat Need_Ziinho Por Possivel Hack De Fake Death.", name, playerid); SendClientMessageToAll(COLOR_NICERED, string); SendClientMessage(playerid,COLOR_LIGHTBLUE, "Vocк Foi Kickado Pelo Anticheater Por Possнvel Fake Death."); format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] Anticheat Kickou %s for: Fake Death hacks.",d,m,y,h,mi,s,name); KickLog(string); format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] Kickado Pelo Anticheat - Hack De Fake Death.",d,m,y,h,mi,s,name); AddPunishment(playerid, string); Kick(playerid); } format(string, sizeof(string), "[Server]: %s (%d) Estб Possivelmente Usando Hack De Fake Death; Cheque Ele Imediatamente!!", name, playerid); SendAdminMessage(COLOR_YELLOW, string); PlayerSuspicious[playerid] = 1; PlayerFakeDeathHacking[playerid] = 1; PlayerGotSpottedRecently[playerid] = 1; FakeKillWarns[playerid] ++; SetTimerEx("ResetAcWarn", 300000, 0, "i", playerid); } } } if(GetPlayerState(killerid) == PLAYER_STATE_DRIVER) { if(AntiDriveBy == 1) { PlayerInfo[killerid][pWarns] ++; if(PlayerInfo[playerid][pWarns] == 3) { format(string, sizeof(string), "%s (%d), Foi Kickado Pelo Anticheat Need_Ziinho Por Drive-By Excessivo.", name2, killerid); SendClientMessageToAll(COLOR_NICERED, string); SendClientMessage(killerid,COLOR_LIGHTBLUE, "Vocк Foi Kickado Pelo Anticheat Por Fazer Drive-By Excessivo"); format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] Anticheat Kickou %s Por: Drive-By Excessivo",d,m,y,h,mi,s,name2); KickLog(string); Kick(killerid); } else { format(string, sizeof(string), "%s (%d), Cometeu Drive-By em %s.", name2, killerid, name); SendClientMessageToAll(COLOR_NICERED, string); SendClientMessage(killerid,COLOR_LIGHTBLUE, "Vocк Foi Avisado Pelo Anticheat Por Fazer Drive-By Excessivo"); format(string, sizeof(string), "[Server]: %s Matou Alguйm Com Drive-By; O Jogador Foi Advertido.", name2); SendAdminMessage(COLOR_YELLOW, string); format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] Advertido Pelo Anticheat - Motivo: Drive-By Excessivo.",d,m,y,h,mi,s); AddPunishment(killerid, string); } } } if(killerid != INVALID_PLAYER_ID) { if(reason == 0) { deathreason = "Arma Branca"; } else if(reason == 36 || reason == 35 || reason == 40 || reason == 16) { deathreason = "Explosгo"; } else if(reason == 18 || reason == 37) { deathreason = "Fogo"; } else if(reason == 51) { deathreason = "Explosгo"; } else if(reason == 50) { deathreason = "Drive-By"; } else { GetWeaponName(reason, deathreason, sizeof(deathreason)); } format(string, sizeof(string),"[INFO]: %s (%d) Foi Morto Por %s (%d) - %s", name,playerid,name2,killerid,deathreason); SendAdminMessage(COLOR_GREEN, string); } else { new text[30]; if(reason == 51) { text = "Explosгo"; } else if(reason == 53) { text = "Afogado"; } else if(reason == 54) { text = "Colisгo"; } else { text = "Morte"; } format(string, sizeof(string),"[INFO]: %s (%d) Morreu. (%s)",name,playerid, text); SendAdminMessage(COLOR_GREEN, string); } new playercash; new victimteam = gTeam[playerid]; new Float:px,Float:py,Float:pz; new killerteam = gTeam[killerid]; ScriptMoneyUpdated[playerid] = 1; TextDrawHideForPlayer(playerid, Textdraw39[playerid]); TextDrawHideForPlayer(playerid, Textdraw40[playerid]); gPlayerSpawned[playerid] = 0; if(PlayerInfo[playerid][pAdminDuty] >= 1) { PlayerInfo[playerid][pAdminDuty] = 0; } GetPlayerPos(playerid, px, py, pz); if(gPlayerUsingLoopingAnim[playerid]) { gPlayerUsingLoopingAnim[playerid] = 0; TextDrawHideForPlayer(playerid,txtAnimHelper); } if(WantedPoints[playerid] > 0) { new dstring[128]; new wanted = WantedPoints[playerid]; new diecash = 0; while(WantedPoints[playerid] > 0) { diecash += 500; WantedPoints[playerid] --; } format(dstring, sizeof(dstring), "Vocк Perdeu R$%d por morrer com %d Pontos De Procurado.", diecash, wanted); SendClientMessage(playerid, COLOR_YELLOW, dstring); SafeGivePlayerMoney(playerid, - diecash); PlayerInfo[playerid][pWantedDeaths] += 1; } if(PlayerOnMission[playerid] > 0) { GameTextForPlayer(playerid, "~r~Missao Falhada", 5000, 3); PlayerOnMission[playerid] = 0; PlayerInfo[playerid][pMissionNr] = 0; } WantedPoints[playerid] = 0; WantedLevel[playerid] = 0; if(PlayerInfo[playerid][pVIP] == 2) {SetPlayerHealth(playerid, 100.0); } else if(PlayerInfo[playerid][pVIP] == 3) {SetPlayerHealth(playerid, 100.0); SetPlayerArmour(playerid, 100.0); } else { SetPlayerHealth(playerid, 50.0+PlayerInfo[playerid][pSHealth]); } MedicBill[playerid] = 1; gPlayerSpawned[playerid] = 1; SafeTime[playerid] = 60; Checked[playerid] = 1; PlayerGotSpottedRecently[playerid] = 1; SetTimerEx("ResetAcWarn",20000,false, "i", playerid); if(killerid != 255) { if(GetPlayerState(killerid) == 2) { if(ProxDetectorS(20, killerid, playerid)) { if(!IsPlayerInAnyVehicle(playerid)) { if(PlayerInfo[killerid][pMember] == 1||PlayerInfo[killerid][pLeader] == 1||PlayerInfo[killerid][pMember] == 2||PlayerInfo[killerid][pLeader] ==2) { SendClientMessage(killerid, COLOR_YELLOW, "Esta foi uma morte com Drive-By, nгo abuse!"); return 1; } SetPlayerCriminal(killerid,255,"Homicнdio"); return 1; } } } } if (reason == 22) { if (PlayerInfo[killerid][pPistSkill] >= 0 && PlayerInfo[killerid][pPistSkill] <= 1000) { PlayerInfo[killerid][pPistSkill] += 2; SetPlayerSkills(killerid); } } if (reason == 23) { if (PlayerInfo[killerid][pSilenSkill] >= 0 && PlayerInfo[killerid][pSilenSkill] <= 1000) { PlayerInfo[killerid][pSilenSkill] += 2; SetPlayerSkills(killerid); } if (PlayerInfo[killerid][pAchievement0] == 0) { ShowPlayerDialog(killerid,500,DIALOG_STYLE_MSGBOX,"Conquistas:\n Morte Silenciosa (0)","Parabens, Vocк Completou a Conquista 'Morte Silenciosa' \n Vocк Ganhou 200R$ e 50+ de Skill!","Ok","Cancelar"); PlayerInfo[killerid][pSilenSkill] += 50; SafeGivePlayerMoney(killerid,200); PlayerInfo[playerid][pAchievement0] = 0; } } if (reason == 24) { if (PlayerInfo[killerid][pDesertSkill] >= 0 && PlayerInfo[killerid][pDesertSkill] <= 1000) { PlayerInfo[killerid][pDesertSkill] += 2; SetPlayerSkills(killerid); } } if (reason == 25) { if (PlayerInfo[killerid][pShotgSkill] >= 0 && PlayerInfo[killerid][pShotgSkill] <= 1000) { PlayerInfo[killerid][pShotgSkill] += 2; SetPlayerSkills(killerid); } } if (reason == 26) { if (PlayerInfo[killerid][pSawnSkill] >= 0 && PlayerInfo[killerid][pSawnSkill] <= 800) { PlayerInfo[killerid][pSawnSkill] += 2; SetPlayerSkills(killerid); } } if (reason == 27) { if (PlayerInfo[killerid][pCombSkill] >= 0 && PlayerInfo[killerid][pCombSkill] <= 1000) { PlayerInfo[killerid][pCombSkill] += 2; SetPlayerSkills(killerid); } } if (reason == 28 || reason == 32) { if (PlayerInfo[killerid][pUziSkill] >= 0 && PlayerInfo[killerid][pUziSkill] <= 800) { PlayerInfo[killerid][pUziSkill] += 2; SetPlayerSkills(killerid); } } if (reason == 29) { if (PlayerInfo[killerid][pSmgSkill] >= 0 && PlayerInfo[killerid][pSmgSkill] <= 1000) { PlayerInfo[killerid][pSmgSkill] += 2; SetPlayerSkills(killerid); } } if (reason == 30) { if (PlayerInfo[killerid][pAkSkill] >= 0 && PlayerInfo[killerid][pAkSkill] <= 1000) { PlayerInfo[killerid][pAkSkill] += 2; SetPlayerSkills(killerid); } } if (reason == 31) { if (PlayerInfo[killerid][pM4Skill] >= 0 && PlayerInfo[killerid][pM4Skill] <= 1000) { PlayerInfo[killerid][pM4Skill] += 2; SetPlayerSkills(killerid); } } if (gPlayerCheckpointStatus[playerid] > 4 && gPlayerCheckpointStatus[playerid] < 11) { DisablePlayerCheckpoint(playerid); gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE; } new caller = Mobile[playerid]; if(caller != 255) { if(caller < 255) { SendClientMessage(caller, COLOR_GRAD2, "** A Ligaзгo Caiu...."); CellTime[caller] = 0; CellTime[playerid] = 0; Mobile[caller] = 255; } Mobile[playerid] = 255; CellTime[playerid] = 0; } ClearCrime(playerid); if(GettingCK[playerid] < 999) { if(IsPlayerConnected(killerid)) { if(OnCK[killerid] < 999) { new killer[MAX_PLAYER_NAME]; new dier[MAX_PLAYER_NAME]; GetPlayerName(playerid, dier, sizeof(dier)); GetPlayerName(killerid, killer, sizeof(killer)); format(string, sizeof(string), "* %s Executou um Character Kill em vocк, vocк nгo pode mais capaz de jogar com este personagem.",killer); SendClientMessage(playerid, COLOR_LIGHTRED, string); format(string, sizeof(string), "** %s Executou Character Killed Em %s **",killer,dier); CKLog(string); BroadCast(COLOR_LIGHTRED, string); PlayerInfo[playerid][pCK] = 1; if(GettingCK[playerid] < 999) { GettingCK[playerid] = 999; } else if(OnCK[playerid] < 999) { OnCK[playerid] = 999; } if(GettingCK[killerid] < 999) { GettingCK[killerid] = 999; } else if(OnCK[killerid] < 999) { OnCK[killerid] = 999; } KickPlayer[playerid] = 1; } } } if(PlayerInfo[playerid][pHeadValue] > 0) { if(IsPlayerConnected(killerid)) { if(gTeam[killerid] == 10 || PlayerInfo[killerid][pLeader] == 8) { if(GoChase[killerid] == playerid) { //ConsumingMoney[killerid] = 1; new killer[MAX_PLAYER_NAME]; GetPlayerName(killerid, killer, sizeof(killer)); SafeGivePlayerMoney(killerid, PlayerInfo[playerid][pHeadValue]); format(string,128,"<< Killer %s completou o contrato em %s e coletou R$%d >>",killer,name,PlayerInfo[playerid][pHeadValue]); SendFamilyMessage(8, COLOR_YELLOW, string); PlayerInfo[playerid][pHeadValue] = 0; GotHit[playerid] = 0; GetChased[playerid] = 999; GoChase[killerid] = 999; } } } } if(victimteam >= 4) { if(IsPlayerConnected(killerid)) { //new killer[MAX_PLAYER_NAME]; //GetPlayerName(killerid, killer, sizeof(killer)); new slice = 100; //R$100 playercash = GetPlayerMoney(playerid); if(gTeam[killerid] != 2) { WantedPoints[killerid] += 2; } //+ 2 wanted points if(SafeTime[playerid] <= 0) { if(gTeam[killerid] != gTeam[playerid]) { if(GetPlayerState(killerid) == 1) { PlayerInfo[killerid][pKills] = PlayerInfo[killerid][pKills] + 2; } else { PlayerInfo[killerid][pKills]++; } PlayerInfo[playerid][pKills]--; } } /*if (strlen(deathreason) > 0)// patch { if (((gTeam[killerid]) == 1) || ((gTeam[killerid]) == 3 && civnokill) || gTeam[killerid] == gTeam[playerid])//med kill criminal { format(string, sizeof(string), ".: %s murdered %s. (%s) :.", killer, name, deathreason); } else { format(string, sizeof(string), ".: %s murdered %s. (%s) for R$%d :.", killer, name, deathreason, slice); } } else { if (((gTeam[killerid]) == 1) || ((gTeam[killerid]) == 3 && civnokill || gTeam[killerid] == gTeam[playerid])) { format(string, sizeof(string), ".: %s murdered %s :.", killer, name); } else { format(string, sizeof(string), ".: %s murdered %s for R$%d :.", killer, name, slice); } }*/ if (((gTeam[killerid]) == 1) || ((gTeam[killerid]) == 3 && civnokill) || (gTeam[killerid] == gTeam[playerid] && gTeam[playerid] != 4)) { slice = 0; } if (((gTeam[killerid]) != 4) && ((gTeam[killerid]) == gTeam[playerid]))//no team kill { slice = 0; } if (playercash > 0) { SafeGivePlayerMoney(playerid, -slice); } else { slice = slice+500; } //SafeGivePlayerMoney(killerid, slice); //GameTextForPlayer(playerid, dmessage, 5000, 2); PlayerPlaySound(killerid, 1083, 0.0, 0.0, 0.0); if (((gTeam[killerid]) == 3) && reason != 49) { SetPlayerCriminal(killerid,255, "Homicнdio De Primeiro Grau"); } else if (((gTeam[killerid]) == 3) && reason == 49) { SetPlayerCriminal(killerid,255, "Atropelamento"); } } } else if (victimteam == 2) { if(IsPlayerConnected(killerid)) { //new killer[MAX_PLAYER_NAME]; //GetPlayerName(killerid, killer, sizeof(killer)); // Cop kill PlayerInfo[playerid][pKills]--; if (gTeam[killerid] == 2)//cops kill cop { //format(string,128,".: Officer %s murdered Officer %s (%s) and was sued for R$%d :.",killer,name,deathreason,suecost); PlayerPlaySound(killerid, 1084, 0.0, 0.0, 0.0); SafeGivePlayerMoney(killerid, -suecost); SafeGivePlayerMoney(playerid, suecost+100);//+100pays hospital bill } else { //format(string,128,".: %s murdered Officer %s (%s) :.",killer,name,deathreason); } if (gTeam[killerid] >= 3) { WantedPoints[killerid] += 2; //+ 2 wanted points if(reason != 49) { SetPlayerCriminal(killerid,255, "Homicнdio De Primeiro Grau"); } else if (reason == 49) { SetPlayerCriminal(killerid,255, "Atropelamento"); } } if(gTeam[killerid] >= 5 && SafeTime[playerid] <= 0) { if(GetPlayerState(killerid) == 1) { PlayerInfo[killerid][pKills] = PlayerInfo[killerid][pKills]+2; } else { PlayerInfo[killerid][pKills]++; } WantedPoints[killerid]+=2; } //BroadCast(COLOR_RED, string); } } else if (victimteam == 3) { if(IsPlayerConnected(killerid)) { //new killer[MAX_PLAYER_NAME]; //GetPlayerName(killerid, killer, sizeof(killer)); // Civ kill if ((gTeam[killerid]) == 2)//cops kill civ { if(WantedLevel[playerid] < 1) { //format(string,128,".: Officer %s murdered %s (%s) and was sued for R$%d :.",killer,name,deathreason,suecost); PlayerPlaySound(killerid, 1084, 0.0, 0.0, 0.0); SafeGivePlayerMoney(killerid, -suecost); SafeGivePlayerMoney(playerid, suecost+10);//+100pays hospital bill } } else { //format(string,128,".: %s murdered %s (%s) :.",killer,name,deathreason); WantedPoints[killerid] += 2; } if (((gTeam[killerid]) >= 3 || (gTeam[killerid]) == 1) && reason != 49) { SetPlayerCriminal(killerid,255, "Homicнdio De Primeiro Grau"); } else if (((gTeam[killerid]) >= 3 || (gTeam[killerid]) == 1) && reason == 49) { SetPlayerCriminal(killerid,255, "Atropelamento"); } //BroadCast(COLOR_RED, string); } } else if (victimteam == 1) { if(IsPlayerConnected(killerid)) { //new killer[MAX_PLAYER_NAME]; //GetPlayerName(killerid, killer, sizeof(killer)); // Civ kill if ((gTeam[killerid]) == 2)//cops kill civ { //format(string,128,".: Officer %s murdered Paramedic %s (%s) and was sued for R$%d :.",killer,name,deathreason,suecost); PlayerPlaySound(killerid, 1084, 0.0, 0.0, 0.0); SafeGivePlayerMoney(killerid, -suecost); SafeGivePlayerMoney(playerid, suecost+10);//+100pays hospital bill } else if ((gTeam[killerid]) == 1)//med kill civ { //format(string,128,".: Paramedic %s murdered %s (%s) and was sued for R$%d :.",killer,name,deathreason,suecost); PlayerPlaySound(killerid, 1084, 0.0, 0.0, 0.0); SafeGivePlayerMoney(killerid, -suecost); SafeGivePlayerMoney(playerid, suecost+10);//+100pays hospital bill } else { //format(string,128,".: %s murdered %s (%s) :.",killer,name,deathreason); } if (((gTeam[killerid]) == 4) && reason != 49) { SetPlayerCriminal(killerid,255, "Homicнdio De Primeiro Grau"); } else if (((gTeam[killerid]) == 3) && reason == 49) { SetPlayerCriminal(killerid,255, "Atropelamento"); } //BroadCast(COLOR_RED, string); } } if (victimteam >= 3 && WantedPoints[playerid] > 0 && killerteam == 2) { SetPlayerFree(playerid,killerid, "Foi Morto"); } if (BusrouteEast[playerid][0] != 0 || BusrouteWest[playerid][0] != 0) { if (BusrouteEast[playerid][0] != 0) BusrouteEnd(playerid, BusrouteEast[playerid][1]); else if (BusrouteWest[playerid][0] != 0) BusrouteEnd(playerid, BusrouteWest[playerid][1]); else BusrouteEnd(playerid, 0); } if(FarmerVar[playerid] != 0) { FarmerVar[playerid] = 0; DisablePlayerCheckpoint(playerid); } if(DrugFarmerVar[playerid] != 0) { DrugFarmerVar[playerid] = 0; DisablePlayerCheckpoint(playerid); } if(SmugglerWork[playerid] != 0) { SmugglerWork[playerid] = 0; DisablePlayerCheckpoint(playerid); } killerid = INVALID_PLAYER_ID; SetRealMoney(playerid, ScriptMoney[playerid]); SetPlayerColor(playerid,0xBBBBBB00); SafeResetPlayerWeapons(playerid); return 1; }
new sP[4];
forward MerreuAbestado(playerid);
public OnPlayerSpawn(playerid) // Quando o player spawna
{
SetTimerEx("MerreuAbestado", 60000*3, false, "i", playerid); // lanзa um timer de 3 min e...
TogglePlayerControllable(playerid, 1); // Congela o player e ..
SetPlayerPos(playerid, sP[0], sP[1], sP[2]); // Seta o player no local em que morreu
SetPlayerFacingAngle(playerid, sP[3]); // e seta o angulo do rosto dele
return 1;
}
public MerreuAbestado(playerid) // Quando o timer de 3 minutos acabar...
{
TogglePlayerControllable(playerid, 0); // Descongela o player
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
GetPlayerPos(playerid, sP[0], sP[1], sP[2]);
GetPlayerFacingAngle(playerid, sP[3]);
PlayerInfo[killerid][pKills] += 1;
new string[128];
new name[MAX_PLAYER_NAME];
new name2[MAX_PLAYER_NAME];
new deathreason[20];
new y, m, d;
new h,mi,s;
getdate(y,m,d);
gettime(h,mi,s);
GetPlayerName(playerid, name, sizeof(name));
GetPlayerName(killerid, name2, sizeof(name2));
if(ProvocoMorro[playerid] == 1)
{
GangZoneStopFlashForAll(GZMorro);
GangZoneShowForAll(GZMorro, 0xFF66FFAA);
GuerranoMorro = 0;
ProvocoMorro[playerid] = 0;
donomorro = 0;
Dominando[playerid] = 0;
KillTimer(TempoGuerraMorro);
}
if(ProvocoParque[playerid] == 1)
{
GangZoneStopFlashForAll(GZParque);
GangZoneShowForAll(GZParque, 0xFF66FFAA);
GuerranoParque = 0;
ProvocoParque[playerid] = 0;
donoparque = 0;
Dominando[playerid] = 0;
KillTimer(TempoGuerraParque);
}
if(ProvocoShop[playerid] == 1)
{
GangZoneStopFlashForAll(GZShop);
GangZoneShowForAll(GZShop, 0xFF66FFAA);
GuerranoShop = 0;
ProvocoShop[playerid] = 0;
donoshop = 0;
Dominando[playerid] = 0;
KillTimer(TempoGuerraShop);
}
if(killerid != INVALID_PLAYER_ID)
{
if(GetPlayerWeapon(killerid) != reason)
{
if(AntiFakeKill == 1)
{
if(FakeKillWarns[playerid] == 4)
{
format(string, sizeof(string), "%s (%d), Foi kickado Pelo Anticheat Need_Ziinho Por Possivel Hack De Fake Death.", name, playerid);
SendClientMessageToAll(COLOR_NICERED, string);
SendClientMessage(playerid,COLOR_LIGHTBLUE, "Vocк Foi Kickado Pelo Anticheater Por Possнvel Fake Death.");
format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] Anticheat Kickou %s for: Fake Death hacks.",d,m,y,h,mi,s,name);
KickLog(string);
format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] Kickado Pelo Anticheat - Hack De Fake Death.",d,m,y,h,mi,s,name);
AddPunishment(playerid, string);
Kick(playerid);
}
format(string, sizeof(string), "[Server]: %s (%d) Estб Possivelmente Usando Hack De Fake Death; Cheque Ele Imediatamente!!", name, playerid);
SendAdminMessage(COLOR_YELLOW, string);
PlayerSuspicious[playerid] = 1;
PlayerFakeDeathHacking[playerid] = 1;
PlayerGotSpottedRecently[playerid] = 1;
FakeKillWarns[playerid] ++;
SetTimerEx("ResetAcWarn", 300000, 0, "i", playerid);
}
}
}
if(GetPlayerState(killerid) == PLAYER_STATE_DRIVER)
{
if(AntiDriveBy == 1)
{
PlayerInfo[killerid][pWarns] ++;
if(PlayerInfo[playerid][pWarns] == 3)
{
format(string, sizeof(string), "%s (%d), Foi Kickado Pelo Anticheat Need_Ziinho Por Drive-By Excessivo.", name2, killerid);
SendClientMessageToAll(COLOR_NICERED, string);
SendClientMessage(killerid,COLOR_LIGHTBLUE, "Vocк Foi Kickado Pelo Anticheat Por Fazer Drive-By Excessivo");
format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] Anticheat Kickou %s Por: Drive-By Excessivo",d,m,y,h,mi,s,name2);
KickLog(string);
Kick(killerid);
}
else
{
format(string, sizeof(string), "%s (%d), Cometeu Drive-By em %s.", name2, killerid, name);
SendClientMessageToAll(COLOR_NICERED, string);
SendClientMessage(killerid,COLOR_LIGHTBLUE, "Vocк Foi Avisado Pelo Anticheat Por Fazer Drive-By Excessivo");
format(string, sizeof(string), "[Server]: %s Matou Alguйm Com Drive-By; O Jogador Foi Advertido.", name2);
SendAdminMessage(COLOR_YELLOW, string);
format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] Advertido Pelo Anticheat - Motivo: Drive-By Excessivo.",d,m,y,h,mi,s);
AddPunishment(killerid, string);
}
}
}
if(killerid != INVALID_PLAYER_ID)
{
if(reason == 0) { deathreason = "Arma Branca"; }
else if(reason == 36 || reason == 35 || reason == 40 || reason == 16) { deathreason = "Explosгo"; }
else if(reason == 18 || reason == 37) { deathreason = "Fogo"; }
else if(reason == 51) { deathreason = "Explosгo"; }
else if(reason == 50) { deathreason = "Drive-By"; }
else { GetWeaponName(reason, deathreason, sizeof(deathreason)); }
format(string, sizeof(string),"[INFO]: %s (%d) Foi Morto Por %s (%d) - %s", name,playerid,name2,killerid,deathreason);
SendAdminMessage(COLOR_GREEN, string);
}
else
{
new text[30];
if(reason == 51) { text = "Explosгo"; }
else if(reason == 53) { text = "Afogado"; }
else if(reason == 54) { text = "Colisгo"; }
else { text = "Morte"; }
format(string, sizeof(string),"[INFO]: %s (%d) Morreu. (%s)",name,playerid, text);
SendAdminMessage(COLOR_GREEN, string);
}
new playercash;
new victimteam = gTeam[playerid];
new Float:px,Float:py,Float:pz;
new killerteam = gTeam[killerid];
ScriptMoneyUpdated[playerid] = 1;
TextDrawHideForPlayer(playerid, Textdraw39[playerid]);
TextDrawHideForPlayer(playerid, Textdraw40[playerid]);
gPlayerSpawned[playerid] = 0;
if(PlayerInfo[playerid][pAdminDuty] >= 1) { PlayerInfo[playerid][pAdminDuty] = 0; }
GetPlayerPos(playerid, px, py, pz);
if(gPlayerUsingLoopingAnim[playerid])
{
gPlayerUsingLoopingAnim[playerid] = 0;
TextDrawHideForPlayer(playerid,txtAnimHelper);
}
if(WantedPoints[playerid] > 0)
{
new dstring[128];
new wanted = WantedPoints[playerid];
new diecash = 0;
while(WantedPoints[playerid] > 0)
{
diecash += 500;
WantedPoints[playerid] --;
}
format(dstring, sizeof(dstring), "Vocк Perdeu R$%d por morrer com %d Pontos De Procurado.", diecash, wanted);
SendClientMessage(playerid, COLOR_YELLOW, dstring);
SafeGivePlayerMoney(playerid, - diecash);
PlayerInfo[playerid][pWantedDeaths] += 1;
}
if(PlayerOnMission[playerid] > 0)
{
GameTextForPlayer(playerid, "~r~Missao Falhada", 5000, 3);
PlayerOnMission[playerid] = 0;
PlayerInfo[playerid][pMissionNr] = 0;
}
WantedPoints[playerid] = 0;
WantedLevel[playerid] = 0;
if(PlayerInfo[playerid][pVIP] == 2) {SetPlayerHealth(playerid, 100.0); }
else if(PlayerInfo[playerid][pVIP] == 3) {SetPlayerHealth(playerid, 100.0); SetPlayerArmour(playerid, 100.0); }
else { SetPlayerHealth(playerid, 50.0+PlayerInfo[playerid][pSHealth]); }
MedicBill[playerid] = 1;
gPlayerSpawned[playerid] = 1;
SafeTime[playerid] = 60;
Checked[playerid] = 1;
PlayerGotSpottedRecently[playerid] = 1;
SetTimerEx("ResetAcWarn",20000,false, "i", playerid);
if(killerid != 255)
{
if(GetPlayerState(killerid) == 2)
{
if(ProxDetectorS(20, killerid, playerid))
{
if(!IsPlayerInAnyVehicle(playerid))
{
if(PlayerInfo[killerid][pMember] == 1||PlayerInfo[killerid][pLeader] == 1||PlayerInfo[killerid][pMember] == 2||PlayerInfo[killerid][pLeader] ==2)
{
SendClientMessage(killerid, COLOR_YELLOW, "Esta foi uma morte com Drive-By, nгo abuse!");
return 1;
}
SetPlayerCriminal(killerid,255,"Homicнdio");
return 1;
}
}
}
}
if (reason == 22)
{
if (PlayerInfo[killerid][pPistSkill] >= 0 && PlayerInfo[killerid][pPistSkill] <= 1000)
{
PlayerInfo[killerid][pPistSkill] += 2;
SetPlayerSkills(killerid);
}
}
if (reason == 23)
{
if (PlayerInfo[killerid][pSilenSkill] >= 0 && PlayerInfo[killerid][pSilenSkill] <= 1000)
{
PlayerInfo[killerid][pSilenSkill] += 2;
SetPlayerSkills(killerid);
}
if (PlayerInfo[killerid][pAchievement0] == 0)
{
ShowPlayerDialog(killerid,500,DIALOG_STYLE_MSGBOX,"Conquistas:\n Morte Silenciosa (0)","Parabens, Vocк Completou a Conquista 'Morte Silenciosa' \n Vocк Ganhou 200R$ e 50+ de Skill!","Ok","Cancelar");
PlayerInfo[killerid][pSilenSkill] += 50;
SafeGivePlayerMoney(killerid,200);
PlayerInfo[playerid][pAchievement0] = 0;
}
}
if (reason == 24)
{
if (PlayerInfo[killerid][pDesertSkill] >= 0 && PlayerInfo[killerid][pDesertSkill] <= 1000)
{
PlayerInfo[killerid][pDesertSkill] += 2;
SetPlayerSkills(killerid);
}
}
if (reason == 25)
{
if (PlayerInfo[killerid][pShotgSkill] >= 0 && PlayerInfo[killerid][pShotgSkill] <= 1000)
{
PlayerInfo[killerid][pShotgSkill] += 2;
SetPlayerSkills(killerid);
}
}
if (reason == 26)
{
if (PlayerInfo[killerid][pSawnSkill] >= 0 && PlayerInfo[killerid][pSawnSkill] <= 800)
{
PlayerInfo[killerid][pSawnSkill] += 2;
SetPlayerSkills(killerid);
}
}
if (reason == 27)
{
if (PlayerInfo[killerid][pCombSkill] >= 0 && PlayerInfo[killerid][pCombSkill] <= 1000)
{
PlayerInfo[killerid][pCombSkill] += 2;
SetPlayerSkills(killerid);
}
}
if (reason == 28 || reason == 32)
{
if (PlayerInfo[killerid][pUziSkill] >= 0 && PlayerInfo[killerid][pUziSkill] <= 800)
{
PlayerInfo[killerid][pUziSkill] += 2;
SetPlayerSkills(killerid);
}
}
if (reason == 29)
{
if (PlayerInfo[killerid][pSmgSkill] >= 0 && PlayerInfo[killerid][pSmgSkill] <= 1000)
{
PlayerInfo[killerid][pSmgSkill] += 2;
SetPlayerSkills(killerid);
}
}
if (reason == 30)
{
if (PlayerInfo[killerid][pAkSkill] >= 0 && PlayerInfo[killerid][pAkSkill] <= 1000)
{
PlayerInfo[killerid][pAkSkill] += 2;
SetPlayerSkills(killerid);
}
}
if (reason == 31)
{
if (PlayerInfo[killerid][pM4Skill] >= 0 && PlayerInfo[killerid][pM4Skill] <= 1000)
{
PlayerInfo[killerid][pM4Skill] += 2;
SetPlayerSkills(killerid);
}
}
if (gPlayerCheckpointStatus[playerid] > 4 && gPlayerCheckpointStatus[playerid] < 11)
{
DisablePlayerCheckpoint(playerid);
gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE;
}
new caller = Mobile[playerid];
if(caller != 255)
{
if(caller < 255)
{
SendClientMessage(caller, COLOR_GRAD2, "** A Ligaзгo Caiu....");
CellTime[caller] = 0;
CellTime[playerid] = 0;
Mobile[caller] = 255;
}
Mobile[playerid] = 255;
CellTime[playerid] = 0;
}
ClearCrime(playerid);
if(GettingCK[playerid] < 999)
{
if(IsPlayerConnected(killerid))
{
if(OnCK[killerid] < 999)
{
new killer[MAX_PLAYER_NAME];
new dier[MAX_PLAYER_NAME];
GetPlayerName(playerid, dier, sizeof(dier));
GetPlayerName(killerid, killer, sizeof(killer));
format(string, sizeof(string), "* %s Executou um Character Kill em vocк, vocк nгo pode mais capaz de jogar com este personagem.",killer);
SendClientMessage(playerid, COLOR_LIGHTRED, string);
format(string, sizeof(string), "** %s Executou Character Killed Em %s **",killer,dier);
CKLog(string);
BroadCast(COLOR_LIGHTRED, string);
PlayerInfo[playerid][pCK] = 1;
if(GettingCK[playerid] < 999) { GettingCK[playerid] = 999; }
else if(OnCK[playerid] < 999) { OnCK[playerid] = 999; }
if(GettingCK[killerid] < 999) { GettingCK[killerid] = 999; }
else if(OnCK[killerid] < 999) { OnCK[killerid] = 999; }
KickPlayer[playerid] = 1;
}
}
}
if(PlayerInfo[playerid][pHeadValue] > 0)
{
if(IsPlayerConnected(killerid))
{
if(gTeam[killerid] == 10 || PlayerInfo[killerid][pLeader] == 8)
{
if(GoChase[killerid] == playerid)
{
//ConsumingMoney[killerid] = 1;
new killer[MAX_PLAYER_NAME];
GetPlayerName(killerid, killer, sizeof(killer));
SafeGivePlayerMoney(killerid, PlayerInfo[playerid][pHeadValue]);
format(string,128,"<< Killer %s completou o contrato em %s e coletou R$%d >>",killer,name,PlayerInfo[playerid][pHeadValue]);
SendFamilyMessage(8, COLOR_YELLOW, string);
PlayerInfo[playerid][pHeadValue] = 0;
GotHit[playerid] = 0;
GetChased[playerid] = 999;
GoChase[killerid] = 999;
}
}
}
}
if(victimteam >= 4)
{
if(IsPlayerConnected(killerid))
{
//new killer[MAX_PLAYER_NAME];
//GetPlayerName(killerid, killer, sizeof(killer));
new slice = 100; //R$100
playercash = GetPlayerMoney(playerid);
if(gTeam[killerid] != 2) { WantedPoints[killerid] += 2; } //+ 2 wanted points
if(SafeTime[playerid] <= 0)
{
if(gTeam[killerid] != gTeam[playerid])
{
if(GetPlayerState(killerid) == 1)
{
PlayerInfo[killerid][pKills] = PlayerInfo[killerid][pKills] + 2;
}
else
{
PlayerInfo[killerid][pKills]++;
}
PlayerInfo[playerid][pKills]--;
}
}
/*if (strlen(deathreason) > 0)// patch
{
if (((gTeam[killerid]) == 1) || ((gTeam[killerid]) == 3 && civnokill) || gTeam[killerid] == gTeam[playerid])//med kill criminal
{
format(string, sizeof(string), ".: %s murdered %s. (%s) :.", killer, name, deathreason);
}
else
{
format(string, sizeof(string), ".: %s murdered %s. (%s) for R$%d :.", killer, name, deathreason, slice);
}
}
else
{
if (((gTeam[killerid]) == 1) || ((gTeam[killerid]) == 3 && civnokill || gTeam[killerid] == gTeam[playerid]))
{
format(string, sizeof(string), ".: %s murdered %s :.", killer, name);
}
else
{
format(string, sizeof(string), ".: %s murdered %s for R$%d :.", killer, name, slice);
}
}*/
if (((gTeam[killerid]) == 1) || ((gTeam[killerid]) == 3 && civnokill) || (gTeam[killerid] == gTeam[playerid] && gTeam[playerid] != 4))
{
slice = 0;
}
if (((gTeam[killerid]) != 4) && ((gTeam[killerid]) == gTeam[playerid]))//no team kill
{
slice = 0;
}
if (playercash > 0)
{
SafeGivePlayerMoney(playerid, -slice);
}
else
{
slice = slice+500;
}
//SafeGivePlayerMoney(killerid, slice);
//GameTextForPlayer(playerid, dmessage, 5000, 2);
PlayerPlaySound(killerid, 1083, 0.0, 0.0, 0.0);
if (((gTeam[killerid]) == 3) && reason != 49)
{
SetPlayerCriminal(killerid,255, "Homicнdio De Primeiro Grau");
}
else if (((gTeam[killerid]) == 3) && reason == 49)
{
SetPlayerCriminal(killerid,255, "Atropelamento");
}
}
}
else if (victimteam == 2)
{
if(IsPlayerConnected(killerid))
{
//new killer[MAX_PLAYER_NAME];
//GetPlayerName(killerid, killer, sizeof(killer));
// Cop kill
PlayerInfo[playerid][pKills]--;
if (gTeam[killerid] == 2)//cops kill cop
{
//format(string,128,".: Officer %s murdered Officer %s (%s) and was sued for R$%d :.",killer,name,deathreason,suecost);
PlayerPlaySound(killerid, 1084, 0.0, 0.0, 0.0);
SafeGivePlayerMoney(killerid, -suecost);
SafeGivePlayerMoney(playerid, suecost+100);//+100pays hospital bill
}
else
{
//format(string,128,".: %s murdered Officer %s (%s) :.",killer,name,deathreason);
}
if (gTeam[killerid] >= 3)
{
WantedPoints[killerid] += 2; //+ 2 wanted points
if(reason != 49)
{
SetPlayerCriminal(killerid,255, "Homicнdio De Primeiro Grau");
}
else if (reason == 49)
{
SetPlayerCriminal(killerid,255, "Atropelamento");
}
}
if(gTeam[killerid] >= 5 && SafeTime[playerid] <= 0)
{
if(GetPlayerState(killerid) == 1)
{
PlayerInfo[killerid][pKills] = PlayerInfo[killerid][pKills]+2;
}
else
{
PlayerInfo[killerid][pKills]++;
}
WantedPoints[killerid]+=2;
}
//BroadCast(COLOR_RED, string);
}
}
else if (victimteam == 3)
{
if(IsPlayerConnected(killerid))
{
//new killer[MAX_PLAYER_NAME];
//GetPlayerName(killerid, killer, sizeof(killer));
// Civ kill
if ((gTeam[killerid]) == 2)//cops kill civ
{
if(WantedLevel[playerid] < 1)
{
//format(string,128,".: Officer %s murdered %s (%s) and was sued for R$%d :.",killer,name,deathreason,suecost);
PlayerPlaySound(killerid, 1084, 0.0, 0.0, 0.0);
SafeGivePlayerMoney(killerid, -suecost);
SafeGivePlayerMoney(playerid, suecost+10);//+100pays hospital bill
}
}
else
{
//format(string,128,".: %s murdered %s (%s) :.",killer,name,deathreason);
WantedPoints[killerid] += 2;
}
if (((gTeam[killerid]) >= 3 || (gTeam[killerid]) == 1) && reason != 49)
{
SetPlayerCriminal(killerid,255, "Homicнdio De Primeiro Grau");
}
else if (((gTeam[killerid]) >= 3 || (gTeam[killerid]) == 1) && reason == 49)
{
SetPlayerCriminal(killerid,255, "Atropelamento");
}
//BroadCast(COLOR_RED, string);
}
}
else if (victimteam == 1)
{
if(IsPlayerConnected(killerid))
{
//new killer[MAX_PLAYER_NAME];
//GetPlayerName(killerid, killer, sizeof(killer));
// Civ kill
if ((gTeam[killerid]) == 2)//cops kill civ
{
//format(string,128,".: Officer %s murdered Paramedic %s (%s) and was sued for R$%d :.",killer,name,deathreason,suecost);
PlayerPlaySound(killerid, 1084, 0.0, 0.0, 0.0);
SafeGivePlayerMoney(killerid, -suecost);
SafeGivePlayerMoney(playerid, suecost+10);//+100pays hospital bill
}
else if ((gTeam[killerid]) == 1)//med kill civ
{
//format(string,128,".: Paramedic %s murdered %s (%s) and was sued for R$%d :.",killer,name,deathreason,suecost);
PlayerPlaySound(killerid, 1084, 0.0, 0.0, 0.0);
SafeGivePlayerMoney(killerid, -suecost);
SafeGivePlayerMoney(playerid, suecost+10);//+100pays hospital bill
}
else
{
//format(string,128,".: %s murdered %s (%s) :.",killer,name,deathreason);
}
if (((gTeam[killerid]) == 4) && reason != 49)
{
SetPlayerCriminal(killerid,255, "Homicнdio De Primeiro Grau");
}
else if (((gTeam[killerid]) == 3) && reason == 49)
{
SetPlayerCriminal(killerid,255, "Atropelamento");
}
//BroadCast(COLOR_RED, string);
}
}
if (victimteam >= 3 && WantedPoints[playerid] > 0 && killerteam == 2)
{
SetPlayerFree(playerid,killerid, "Foi Morto");
}
if (BusrouteEast[playerid][0] != 0 || BusrouteWest[playerid][0] != 0)
{
if (BusrouteEast[playerid][0] != 0) BusrouteEnd(playerid, BusrouteEast[playerid][1]);
else if (BusrouteWest[playerid][0] != 0) BusrouteEnd(playerid, BusrouteWest[playerid][1]);
else BusrouteEnd(playerid, 0);
}
if(FarmerVar[playerid] != 0)
{
FarmerVar[playerid] = 0;
DisablePlayerCheckpoint(playerid);
}
if(DrugFarmerVar[playerid] != 0)
{
DrugFarmerVar[playerid] = 0;
DisablePlayerCheckpoint(playerid);
}
if(SmugglerWork[playerid] != 0)
{
SmugglerWork[playerid] = 0;
DisablePlayerCheckpoint(playerid);
}
killerid = INVALID_PLAYER_ID;
SetRealMoney(playerid, ScriptMoney[playerid]);
SetPlayerColor(playerid,0xBBBBBB00);
SafeResetPlayerWeapons(playerid);
return 1;
}