17.04.2017, 19:30
(
Последний раз редактировалось Chainksain; 18.04.2017 в 01:47.
)
Oi pessoal estou aqui pedindo ajuda de vocкs de novo.. a umas semanas atras vim aqui no forum com um probleminha besta (pura falta de atenзгo minha) q foi resolvido facilmente
mas agora erstou com um bug muito mais sйrio e desta vez nгo й falta de atenзгo, eu realmente preciso de ajuda porйm nгo й bem nos cуdigos em si...
O meu problema й o seguinte.. no meu servidor estб acontecendo um bug que eventualmente quando alguйm morre em GZ/Contrato/Procurado ele nao conta.. nao conta pt na gz, se for contrtato nгo conta como cumprido e se for procurado nгo vai preso... o problema eh q este bug acontece eventualmente(tem hora q acontece e tem hora que nгo) por tanto estб sendo muito dificil identificar o problema, alйm do mais que eu nгo faзo a mнnima idйia do que possa estar causando este bug, logo, por ser um gm muito grande, nгo sei nem por onde comeзar.. pedi ajuda a uns amigos e todos inicialmente tiveram a mesma suspeita que eu: Deve ser no OnPlayerDeath, porйm eu vasculhei toda essa public varias vezes e nгo encontrei nada...
alguйm ai ja teve esse bug no sv ou algo parecido? alguma dica q vcs possam me dar?
pq sera q esse bug soh acontece de vez em quando e nгo toda hora?
esta й a public OnPlayerDeath do meu GM:
Se alguйm puder me ajudar agradeзo desde jб.
mas agora erstou com um bug muito mais sйrio e desta vez nгo й falta de atenзгo, eu realmente preciso de ajuda porйm nгo й bem nos cуdigos em si...
O meu problema й o seguinte.. no meu servidor estб acontecendo um bug que eventualmente quando alguйm morre em GZ/Contrato/Procurado ele nao conta.. nao conta pt na gz, se for contrtato nгo conta como cumprido e se for procurado nгo vai preso... o problema eh q este bug acontece eventualmente(tem hora q acontece e tem hora que nгo) por tanto estб sendo muito dificil identificar o problema, alйm do mais que eu nгo faзo a mнnima idйia do que possa estar causando este bug, logo, por ser um gm muito grande, nгo sei nem por onde comeзar.. pedi ajuda a uns amigos e todos inicialmente tiveram a mesma suspeita que eu: Deve ser no OnPlayerDeath, porйm eu vasculhei toda essa public varias vezes e nгo encontrei nada...
alguйm ai ja teve esse bug no sv ou algo parecido? alguma dica q vcs possam me dar?
pq sera q esse bug soh acontece de vez em quando e nгo toda hora?
esta й a public OnPlayerDeath do meu GM:
pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{
if(!IsPlayerConnected(playerid))
return 1;
if(TaNaLan[playerid])
return QuandoMorrerNikoLanHouse(playerid, killerid, reason);
if(IsPlayerConnected(killerid))
{
if(NikoDeuDano[killerid][playerid] < 60)
return 1;
if(AntiMultiKill[killerid] > 60)
{
AntiMultiKill[killerid] += 60;
return 1;
}
AntiMultiKill[killerid] += 10;
}
if(BugSamp[playerid])
return 1;
BugSamp[playerid] = true;
SetTimerEx("NikoResetVar",10000,false,"ii",playerid,4);
if(Player[playerid][FirstSpawn] == true)
return 1;
if(PlayerBarraAtiva[playerid])
{
EscondeNikoOponenteVidaBarra(playerid);
TaEmCombateCom[playerid] = INVALID_PLAYER_ID;
TaEmCombate[playerid] = 0;
SaiuDeCombate(playerid);
}
SetarNikoColeteJogador(playerid, 0.0);
if(TaNoMapa[playerid])
{
TaNoMapa[playerid] = false;
Descongelar(playerid);
if(MovePlayerTimer[playerid] > -1)
KillTimer(MovePlayerTimer[playerid]);
if(MapTimer[playerid] > -1)
KillTimer(MapTimer[playerid]);
if(VehFocus[playerid] > -1)
KillTimer(VehFocus[playerid]);
MovePlayerTimer[playerid] = -1;
MapTimer[playerid] = -1;
VehFocus[playerid] = -1;
Degrees[playerid] = 0.0;
TextDrawHideForPlayer(playerid, MapsTD);
TextDrawHideForPlayer(playerid, Coordenadas[playerid]);
TextDrawHideForPlayer(playerid, MapsAltimeterPlus);
TextDrawHideForPlayer(playerid, MapsAltimeterMinus);
TextDrawHideForPlayer(playerid, MapsAltimeterLines);
TextDrawHideForPlayer(playerid, MapsMainAltLine[playerid]);
if (OldPlayerVehID[playerid] > -1)
{
OldPlayerVehID[playerid] = INVALID_VEHICLE_ID;
OldPlayerSeat[playerid] = -1;
}
}
new string[128];
Player[playerid][Spawned] = false;
Conce[playerid] = 0;
pizzaexit[playerid] = 0;
cluckinexit[playerid] = 0;
burgerexit[playerid] = 0;
storeexit[playerid] = 0;
cherifeexit[playerid] = 0;
Player[playerid][pLocal] = 255;
Player[playerid][pSeatBelt] = 0;
Player[playerid][pCapacete] = 0;
IpodNikoDesligar(playerid);
DropWeapons(playerid);
foreach(new x : Player)
if(GetPlayerState(x) == PLAYER_STATE_SPECTATING && Player[x][gSpectateID] == playerid)
AdvanceSpectate(x);
if(PlayerTied[playerid] > 0)
{
format(string, sizeof(string), "[Atenзгo] O BOPE fracassou no sequestro de %s. O refйm foi morto.",Player[playerid][pNome]);
EnviaNikoMensagemTodos(COLOR_OOC, string, MSG_NEWS);
PlayerTied[playerid] = 0;
}
//EM CORRIDA
if(gPlayerCheckpointStatus[playerid] > 4 && gPlayerCheckpointStatus[playerid] < 11)
{
NikoDesativarCP(playerid);
gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE;
}
// Ao Celular
if(IsPlayerConnected(Mobile[playerid]))
{
SendClientMessage ( playerid, COLOR_LIGHTBLUE, "** A ligaзгo caiu..." );
SendClientMessage ( Mobile [ playerid ], COLOR_LIGHTBLUE, "** Ninguйm na linha..." ); //OnPlayerDisconnect
if ( !RingTone [ playerid ] && !RingTone [ Mobile [ playerid ] ] )
{
new cost = ( CallCost[playerid] / 2 );
format(string, sizeof(string), "~w~a chamada custou~n~~r~R$ %d", cost );
GameTextForPlayer(Mobile[playerid], string, 5000, 1);
GameTextForPlayer(playerid, string, 5000, 1);
GivePlayerGP ( Mobile[playerid], - cost );
GivePlayerGP ( playerid, - cost );
if(SBizzInfo[2][sbProducts] > 0)
{
ProdutoSB(2,2*cost);
}
}
CallCost[playerid] = 0;
CallCost[Mobile[playerid]] = 0;
DesligarCel(Mobile[playerid]);
DesligarCel(playerid);
}
if(NikoGuerraAQFASystem[ngsLigada])
QuandoJogadorMorrerNikoGuerra(playerid, killerid, reason);
if(IsPlayerConnected(killerid))
{
if(PlayerBarraAtiva[killerid])
{
EscondeNikoOponenteVidaBarra(killerid);
TaEmCombateCom[killerid] = INVALID_PLAYER_ID;
TaEmCombate[killerid] = 0;
SaiuDeCombate(killerid);
}
WarCode_PlayerDeath(playerid, killerid, reason);
if(GetPVarInt(killerid,"TaNoEvento") == 1 || (NikoGuerraAQFASystem[ngsLigada] && PertenceAQFA(playerid) && PertenceAQFA(killerid)) || GetPlayerZone(killerid) != 999)
{
Player[killerid][pWZKills]++;
Player[playerid][pWZDeaths]++;
}
else if(Player[killerid][pMember] == TEAM_HITMAN && Vitima[killerid] == playerid)
{
Player[killerid][pWZKills]++;
Player[playerid][pWZDeaths]++;
}
Player[killerid][pKills]++;
Player[playerid][pDeaths]++;
if(Player[playerid][pLeader] == TEAM_PREF)
{
format(string, sizeof(string), "[Atenзгo] O Prefeito %s foi assassinado por %s!", Player[playerid][pNome] , Player[killerid][pNome]);
EnviaNikoMensagemTodos(COLOR_YELLOW, string, MSG_NEWS);
}
//PAINT BALL
if(PlayerPaintballing[playerid] != 0)
{
new killer[MAX_PLAYER_NAME];
PlayerPaintballKills[killerid]++;
format(string, sizeof(string), "Vocк matou %d pessoas nesta partida.",PlayerPaintballKills[killerid]);
SendClientMessage(killerid, COLOR_YELLOW, string);
if(PlayerPaintballKills[killerid] > PaintballWinnerKills)
{
PaintballWinner = killerid;
PaintballWinnerKills = PlayerPaintballKills[killerid];
GetPlayerName(killerid, killer, sizeof(killer));
foreach(new i : Player)
if(PlayerPaintballing[i] != 0)
{
format(string, sizeof(string), "%s estб liderando o paintball com %d pontos.",Player[killerid][pNome],PaintballWinnerKills);
SendClientMessage(i, COLOR_YELLOW, string);
}
}
return 1;
}
//Driver By
if(IsPlayerInAnyVehicle(killerid) && DriverBY[playerid] == -1)
{
if(!PertenceAQFA(killerid) || !PertenceAQFA(playerid))
{
DriverBY[playerid] = killerid;
SetTimerEx("NikoResetVar",600*1000,false,"ii",playerid,1);
//SendClientMessage(killerid, COLOR_YELLOW, "Vocк infringiu uma lei do servidor cometendo DRIVE-BY !");
SendClientMessage(playerid, COLOR_YELLOW, "Vocк foi atropelado. Este DB foi proposital? Caso tenha sido denuncie no /forum ");
}
}
//Evento
if((GetPVarInt(playerid,"TaNoEvento") == 1) && Evento[eTrancado])
{
new contador=0;
new morreu[128];
SetPVarInt(playerid,"TaNoEvento",0);
foreach(new i : Player)
if(GetPVarInt(i,"TaNoEvento") == 1)
contador++;
if(contador > 1)
format(morreu,sizeof(morreu),"{ff7e19}%s{4290fe} matou {ff7e19}%s{4290fe} no evento! Ainda faltam{ff7e19} %d{4290fe} disputando o prкmio de: R$:%s", pNick(killerid), pNick(playerid), contador, NumeroComPonto(NikoEventoPremio));
else
{
foreach(new i : Player)
if(GetPVarInt(i,"TaNoEvento") == 1)
contador = i;
format(morreu,sizeof(morreu),"{ff7e19}%s{4290fe} Morreu no evento! {ff7e19} %s{4290fe} й o campeгo do prкmio de: R$:%s",pNick(playerid),pNick(contador),NumeroComPonto(NikoEventoPremio));
}
return SendClientMessageToAll(-1,morreu);
}
//Spawn Kill
if(SpawnTime[playerid] > 0)
if(Player[playerid][pLevel] > 2 && PlayerPaintballing[playerid] == 0)
{
format(string, sizeof(string), "%s (id: %i) cometeu SpawnKill em %s e foi kickado", Player[killerid][pNome], killerid, Player[playerid][pNome]);
EnviaNikoMensagemTodos(COLOR_OOC,string, MSG_PUN);
printf("kickado por spawnkill");
OnKick(killerid);
}
//MATAR EM LOCAL PROIBIDO
if(IsPlayerConnected(killerid))
if(Player[killerid][pJailed] == Player[playerid][pJailed] && Player[playerid][pJailed] > 0)
NikoPrender(killerid, 20, 1, "Matar em Local Proibido");
//chat kill
if(Player[playerid][pHeadValue] <=0 || Vitima[killerid] != playerid)
{
new chatkill[128], gunname[32];
GetWeaponName(reason, gunname, sizeof(gunname));
format(chatkill, sizeof(chatkill), "{FFFFFF}O jogador {FF9500}%s {FFFFFF}te matou com uma {FF0000}%s", Player[killerid][pName], gunname);
SendClientMessage(playerid, COLOR_RED, chatkill);
}
//CONTRATO
new bool:contrato = false;
if(Player[playerid][pHeadValue] > 0 && GetPVarInt(killerid,"TaNoEvento") == 0)
if(Player[killerid][pMember] == TEAM_HITMAN)
if(Vitima[killerid] == playerid)
{
contrato = true;
GivePlayerGP(killerid, Player[playerid][pHeadValue]);
AumentarReconhecimento(killerid);
new strung[128];
format(string,128,"Um assassino cumpriu o contrato а cabeca de %s e adquiriu um valor de R$%d",Player[playerid][pNome],Player[playerid][pHeadValue]);
format(strung,128,"O assassino %s cumpriu o contrato а cabeca de %s e adquiriu um valor de R$%d",Player[killerid][pNome],Player[playerid][pNome],Player[playerid][pHeadValue]);
foreach(new i : Player)
if(Player[i][pMember] == TEAM_HITMAN)
SendClientMessage(i, COLOR_GROOVE, strung);
else
SendClientMessage(i, COLOR_GROOVE, string);
Player[playerid][pHeadValue] = 0;
SendoProcurado[playerid] = false;
Procurando[killerid] = false;
ConquistaInfo[killerid][contratos]++;
}
//Sistema de Procurado
//if(GetPVarInt(killerid,"TaNoEvento") == 0 && (!NikoGuerraAQFASystem[ngsLigada] || !(PertenceAQFA(playerid) || PertenceAQFA(killerid))))
if(GetPVarInt(killerid,"TaNoEvento") == 0 && !(Player[playerid][pMember] == TEAM_FA && Player[killerid][pMember] == TEAM_ALQAEDA))
{
new zone1 = GetPlayerZone(playerid);
new zone2 = GetPlayerZone(killerid);
if(IsACop(killerid))
{
if(Player[playerid][pProcurado] > 0 && !(Player[killerid][pMember] == TEAM_FA && Player[playerid][pMember] == TEAM_ALQAEDA))
{
if(Player[killerid][pMember] != TEAM_MUNICIPAL)
{
if(Player[playerid][pLevel] > 2)
{
new Float:X, Float:Y, Float:Z;
GetPlayerPos(killerid, X, Y, Z);
new ajudantes = 0;
foreach(new i : Player)
if(NikoDeuDano[i][playerid] > 0)
if(NikoPlayerRaio(i, 30, X, Y, Z) && (Player[i][pMember] == Player[killerid][pMember]) && i != killerid)
ajudantes++;
new recompensa = Player[playerid][pProcurado]*250;
if(recompensa > 5000)
recompensa = 5000;
recompensa = recompensa + ajudantes*1000;
if(recompensa > 10000)
recompensa = 10000;
format(string,sizeof(string),"{ff0000}[BSL]:{4290fe} Parabйns Senhor! Vocк recebeu: R$: %s por prender um procurado com %d estrelas com ajuda de %d outros COPs.",NumeroComPonto(recompensa), Player[playerid][pProcurado], ajudantes);
SendClientMessage(killerid,-1,string);
Player[killerid][pPrendeu]++;
AumentarReconhecimento(killerid);
if(EmFuga[playerid]<999)
{
if(EmFuga[playerid]==13)
CofreOrgInfo[Player[killerid][pMember]][mat] += 13*999;
else
{
format(string,sizeof(string),"{ff0000}[BSL]:{4290fe} Vocк recebeu um bфnus de R$ %d por impedir um assalto!.",ROB_CASH);
SendClientMessage(killerid,-1,string);
recompensa += ROB_CASH;
}
AumentarReconhecimento(killerid);
}
GivePlayerGP(killerid,recompensa/2);
CofreOrgInfo[Player[killerid][pMember]][mony] += recompensa/2;
foreach(new i : Player)
if(NikoDeuDano[i][playerid] > 0)
if(NikoPlayerRaio(i, 30, X, Y, Z) && (Player[i][pMember] == Player[killerid][pMember]) && i != killerid)
{
GivePlayerGP(i,recompensa);
format(string,sizeof(string),"{ff0000}[BSL]:{4290fe} Parabйns Senhor! Vocк recebeu: R$: %s por ajudar a prender um procurado com %d estrelas.",NumeroComPonto(recompensa), Player[playerid][pProcurado]);
SendClientMessage(i,-1,string);
Player[i][pPrendeu]++;
}
format(thestring,sizeof(thestring),"Vocк foi preso por: %s com nнvel: %d de procurado e serб solto pagando a /fianca de: %s.",Player[killerid][pNome], Player[playerid][pProcurado], NumeroComPonto(Player[playerid][pProcurado]*1000));
SendClientMessage(playerid,-1,thestring);
Player[killerid][pWZKills]++;
Player[playerid][pWZDeaths]++;
new TodosOsBens = Player[playerid][pBank] + Player[playerid][pCash];
if(TodosOsBens < 1000000)
TodosOsBens = 1000000;
if(Player[killerid][pMember] == TEAM_PM)
NikoPrender(playerid,Player[playerid][pProcurado]*2,2,"",1000,Player[playerid][pProcurado]*TodosOsBens/100);
else if(Player[killerid][pMember] == TEAM_PF)
NikoPrender(playerid,Player[playerid][pProcurado]*2,3,"",1000,Player[playerid][pProcurado]*TodosOsBens/100);
else if(Player[killerid][pMember] == TEAM_BOPE)
NikoPrender(playerid,Player[playerid][pProcurado]*2,4,"",1000,Player[playerid][pProcurado]*TodosOsBens/100);
else if(Player[killerid][pMember] == TEAM_FA)
NikoPrender(playerid,Player[playerid][pProcurado]*2,5,"",1000,Player[playerid][pProcurado]*TodosOsBens/100);
else if(Player[killerid][pMember] == TEAM_PC)
NikoPrender(playerid,Player[playerid][pProcurado]*2,6,"",1000,Player[playerid][pProcurado]*TodosOsBens/100);
}
else
{
format(thestring,sizeof(thestring),"Vocк foi preso por: %s com nнvel: %d de procurado e serб solto pagando a /fianca de: %s.",Player[killerid][pNome], Player[playerid][pProcurado], NumeroComPonto(Player[playerid][pProcurado]*1000));
SendClientMessage(playerid,-1,thestring);
Player[killerid][pWZKills]++;
Player[playerid][pWZDeaths]++;
new TodosOsBens = Player[playerid][pBank] + Player[playerid][pCash];
if(TodosOsBens < 1000000)
TodosOsBens = 1000000;
if(Player[killerid][pMember] == TEAM_PM)
NikoPrender(playerid,Player[playerid][pProcurado]*1,2,"",1000,Player[playerid][pProcurado]*TodosOsBens/100);
else if(Player[killerid][pMember] == TEAM_PF)
NikoPrender(playerid,Player[playerid][pProcurado]*1,3,"",1000,Player[playerid][pProcurado]*TodosOsBens/100);
else if(Player[killerid][pMember] == TEAM_BOPE)
NikoPrender(playerid,Player[playerid][pProcurado]*1,4,"",1000,Player[playerid][pProcurado]*TodosOsBens/100);
else if(Player[killerid][pMember] == TEAM_FA)
NikoPrender(playerid,Player[playerid][pProcurado]*1,5,"",1000,Player[playerid][pProcurado]*TodosOsBens/100);
else if(Player[killerid][pMember] == TEAM_PC)
NikoPrender(playerid,Player[playerid][pProcurado]*1,6,"",1000,Player[playerid][pProcurado]*TodosOsBens/100);
}
}
}
else if(IsACivil(playerid) || Player[playerid][pMember] == TEAM_BOMBE)
{
format(thestring,sizeof(thestring),"COP Matando Civil (%s) nгo-procurado", Player[playerid][pNome]);
NikoPrender(killerid, 40, 1, thestring);
format(thestring,sizeof(thestring),"{ff0000}[BSL Anti-DM]:{ffffff} Vocк й um COP e matou um civil que nгo era procurado (%s). Consequкncia: Bangu 40min.", Player[playerid][pNome]);
SendClientMessage(killerid,-1,thestring);
format(thestring,sizeof(thestring),"%s foi para o bangu por matar civil nгo procurado (%s).", Player[killerid][pNome], Player[playerid][pNome]);
WriteLog("Bangu",thestring);
}
/*else if(IsACrime(playerid) && !(Player[killerid][pMember] == TEAM_FA && Player[playerid][pMember] == TEAM_ALQAEDA))
{
format(thestring,sizeof(thestring),"COP Matando Criminoso (%s) nгo-procurado", Player[playerid][pNome]);
NikoPrender(killerid, 40, 1, thestring);
format(thestring,sizeof(thestring),"{ff0000}[BSL Anti-DM]:{ffffff} Vocк й um COP e matou um Criminoso que nгo era procurado (%s). Consequкncia: Bangu 40min.", Player[playerid][pNome]);
SendClientMessage(killerid,-1,thestring);
format(thestring,sizeof(thestring),"%s foi para o bangu por matar Criminoso nгo procurado (%s).", Player[killerid][pNome], Player[playerid][pNome]);
WriteLog("Bangu",thestring);
}*/
else if(IsACop(playerid) || Player[playerid][pMember] == TEAM_PREF)
{
CopDM[playerid] = killerid;
SetTimerEx("NikoResetVar",120*1000,false,"ii",playerid,10);
SendClientMessage(killerid, COLOR_YELLOW, "Vocк infringiu uma lei do servidor cometendo DM !");
SendClientMessage(playerid, COLOR_YELLOW, "Vocк foi morto por um COP. Este DM foi proposital? Caso tenha sido digite /copdm");
}
}
else if(IsACrime(killerid))
{
if(IsACivil(playerid) || Player[playerid][pMember] == TEAM_BOMBE)
{
if(zone2 != 999)
{
if(NikoDeuDano[playerid][killerid] < 6)
{
SendClientMessage(killerid,-1,"{ff0000}[BSL Anti-DM]:{ffffff} Vocк matou por bala perdida um civil que NГO te atacou nos ъltimos 60 segundos. Consequкncia: +16 Nнveis de Procurado");
AddNivelProcurado(killerid,1000,"Matar Civil Sem Revide por Bala Perdida",12);
}
else if(Player[playerid][pConnectTime] < 6*3600)
{
SendClientMessage(killerid,-1,"{ff0000}[BSL Anti-DM]:{ffffff} Vocк matou por bala perdida um civil que criou a conta hб pouco tempo. Consequкncia: +8 Nнveis de Procurado");
AddNivelProcurado(killerid,1000,"Matar Civil Iniciante por Bala Perdida",8);
}
else
{
SendClientMessage(killerid,-1,"{ff0000}[BSL Anti-DM]:{ffffff} Vocк matou um civil por bala-perdida e ganhou 4 nнveis de procurado.");
AddNivelProcurado(killerid,1000,"Matar Civil por Bala Perdida",4);
}
}
else
{
if(NikoDeuDano[playerid][killerid] < 6)
{
SendClientMessage(killerid,-1,"{ff0000}[BSL Anti-DM]:{ffffff} Vocк matou um civil que NГO te atacou nos ъltimos 60 segundos. Consequкncia: +20 Nнveis de Procurado");
AddNivelProcurado(killerid,1000,"Matar Civil Sem Revide",15);
}
else if(Player[playerid][pConnectTime] < 6*3600)
{
SendClientMessage(killerid,-1,"{ff0000}[BSL Anti-DM]:{ffffff} Vocк matou um civil que criou a conta hб pouco tempo. Consequкncia: +10 Nнveis de Procurado");
AddNivelProcurado(killerid,1000,"Matar Civil Iniciante",10);
}
else
{
SendClientMessage(killerid,-1,"{ff0000}[BSL Anti-DM]:{ffffff} Vocк matou um civil fora da zona de guerra e ganhou 6 nнveis de procurado.");
AddNivelProcurado(killerid,1000,"Matar Civil",6);
}
}
}
else if(IsACop(playerid))
{
SendClientMessage(killerid,-1,"{ff0000}[BSL Anti-DM]:{ffffff} Vocк matou um Membro da Lei fora da zona de guerra e ganhou 2 nнveis de procurado.");
AddNivelProcurado(killerid,1000,"Matar COP",2);
}
else if(IsACrime(playerid))
{
if(zone2 == 999)
{
SendClientMessage(killerid,-1,"{ff0000}[BSL Anti-DM]:{ffffff} Vocк matou um Gangster fora da zona de guerra e ganhou 1 nнvel de procurado.");
AddNivelProcurado(killerid,1000,"Homicidio",1);
}
}
Player[playerid][pAssassinado] = killerid;
Player[playerid][pAssassinadoID] = killerid;
format(Player[playerid][pAssassinadoNick], 24, Player[killerid][pName]);
SetTimerEx("NikoResetVar",210000,false,"ii",playerid,8);
SendClientMessage(playerid,-1,"{ff0000}[BSL Anti-DM]:{ffffff} Vocк foi assassinado! Poderб ir atй а delegacia de polнcia e abrir um boletim de ocorrкncia, /bo.");
if(Player[killerid][pLevel] <= 2)
MostrarDMInfo(killerid);
}
else if(IsACivil(killerid))
{
if(IsACivil(playerid) || Player[playerid][pMember] == TEAM_BOMBE)
{
if(NikoDeuDano[playerid][killerid] < 6)
{
SendClientMessage(killerid,-1,"{ff0000}[BSL Anti-DM]:{ffffff} Vocк й civil e matou outro civil que NГO te atacou nos ъltimos 60 segundos. Consequкncia: +20 Nнveis de Procurado");
AddNivelProcurado(killerid,1000,"Civil Matando Civil Sem Revide",20);
}
else if(Player[playerid][pConnectTime] < 6*3600)
{
SendClientMessage(killerid,-1,"{ff0000}[BSL Anti-DM]:{ffffff} Vocк й civil e matou outro civil que criou a conta hб pouco tempo. Consequкncia: +10 Nнveis de Procurado");
AddNivelProcurado(killerid,1000,"Civil Matando Civil Iniciante",10);
}
else
{
SendClientMessage(killerid,-1,"{ff0000}[BSL Anti-DM]:{ffffff} Vocк й civil e matou outro civil. Consequкncia: +5 Nнveis de Procurado");
AddNivelProcurado(killerid,1000,"Civil Matando Civil",5);
}
}
else if(IsACop(playerid))
{
SendClientMessage(killerid,-1,"{ff0000}[BSL Anti-DM]:{ffffff} Vocк й civil e matou um COP. Consequкncia: +6 Nнveis de Procurado");
AddNivelProcurado(killerid,1000,"Civil Matando COP",6);
}
else if(IsACrime(playerid))
{
SendClientMessage(killerid,-1,"{ff0000}[BSL Anti-DM]:{ffffff} Vocк й civil e cometeu um homicнdio. Consequкncia: +4 Nнveis de Procurado");
AddNivelProcurado(killerid,1000,"Civil Matando Gangster",4);
}
Player[playerid][pAssassinado] = killerid;
Player[playerid][pAssassinadoID] = killerid;
format(Player[playerid][pAssassinadoNick], 24, Player[killerid][pName]);
SetTimerEx("NikoResetVar",6000000,false,"ii",playerid,8);
SendClientMessage(playerid,-1,"{ff0000}[BSL Anti-DM]:{ffffff} Vocк foi assassinado! Poderб ir atй а delegacia de polнcia e abrir um boletim de ocorrкncia, /bo.");
if(Player[killerid][pLevel] <= 2)
MostrarDMInfo(killerid);
}
}
}
else
{
if((GetPVarInt(playerid,"TaNoEvento") == 1) && Evento[eTrancado])
{
new contador=0;
new morreu[128];
SetPVarInt(playerid,"TaNoEvento",0);
foreach(new i : Player)
if(GetPVarInt(i,"TaNoEvento") == 1)
contador++;
if(contador > 1)
format(morreu,sizeof(morreu),"{ff7e19}%s{4290fe} Morreu no evento! Ainda faltam{ff7e19} %d{4290fe} disputando o prкmio de: R$:%s",pNick(playerid),contador,NumeroComPonto(NikoEventoPremio));
else
{
foreach(new i : Player)
if(GetPVarInt(i,"TaNoEvento") == 1)
contador = i;
format(morreu,sizeof(morreu),"{ff7e19}%s{4290fe} Morreu no evento! {ff7e19} %s{4290fe} й o campeгo do prкmio de: R$:%s",pNick(playerid),pNick(contador),NumeroComPonto(NikoEventoPremio));
}
SendClientMessageToAll(-1,morreu);
}
}
//Botar no Hospital
if(SpawnTime[playerid] < 1 && !AdminDuty[playerid] && Player[playerid][pJailTime] == 0)
{
TempoHospital[playerid] = 20;
if(Player[playerid][pPlano] > 0)
Player[playerid][pPlano]--;
}
if(CarShopping[playerid] == true)
{
CarShopping[playerid] = false;
NikoDestruirVeiculo(ShopCar[playerid]);
ShopCar[playerid] = INVALID_VEHICLE_ID;
carbrowse[playerid] = 0;
SetPlayerVirtualWorld(playerid, 0);
Player[playerid][pVW] = 0;
//printf("kickado no carshopping");
//OnKick(playerid);
}
EmFuga[playerid]=999;
Cumplice[playerid]=false;
return 1;
}