27.11.2014, 22:51
(
Последний раз редактировалось Pablo098; 09.06.2015 в 16:16.
)
Anti drive-By
sistema simples
public usada quando jogadores matam uns aos outros.
PHP код:
public OnPlayerDeath(playerid, killerid, reason)
/*
playerid = Acusado
killerid = Vнtima
*/
PHP код:
GetPlayerVehicleID(playerid)
PHP код:
IsAAviao(carid)
IsAHelicoptero(carid)
PHP код:
new string[256]
PHP код:
new acusado[MAX_PLAYER_NAME], vitima[MAX_PLAYER_NAME];
PHP код:
GetPlayerName(killerid, acusado, MAX_PLAYER_NAME);
GetPlayerName(playerid, vitima, MAX_PLAYER_NAME);
PHP код:
GetPlayerState(killerid) == PLAYER_STATE_DRIVER
PHP код:
format(string, sizeof(string), "[Anti drive-by]: %s cometeu drive-by em %s e serб punido por um admin.", acusado, vitima);
SendClientMessageToAll(0xE60000FF, string);
PHP код:
stock IsAHelicoptero(carid)
{
new modelid = GetVehicleModel(carid);
if(modelid == 563 || modelid == 548 || modelid == 497 || modelid == 488 || modelid == 487)
{
return 1;
}
if(modelid == 425 || modelid == 417 || modelid == 447 || modelid == 469)
{
return 1;
}
return 0;
}
stock IsAAviao(carid)
{
new modelid = GetVehicleModel(carid);
if(modelid == 460 || modelid == 476 || modelid == 511 || modelid == 512)
{
return 1;
}
if(modelid == 513 || modelid == 519 || modelid == 520 || modelid == 553)
{
return 1;
}
if(modelid == 577 || modelid == 592 || modelid == 593)
{
return 1;
}
return 0;
}
Nosso anti-drive by foi feito com sucesso, adicione em sua OnPlayerDeath, e adicione tambйm as duas seguintes stock, IsAAviao e IsAHelicoptero em seu gamemode.
PHP код:
public OnPlayerDeath(playerid, killerid, reason){
if (GetPlayerState(killerid) == PLAYER_STATE_DRIVER){
if(IsAHelicoptero(GetPlayerVehicleID(killerid)) || IsAAviao(GetPlayerVehicleID(killerid))) return 1;
new string[256], acusado[MAX_PLAYER_NAME], vitima[MAX_PLAYER_NAME];
GetPlayerName(killerid, acusado, MAX_PLAYER_NAME);
GetPlayerName(playerid, vitima, MAX_PLAYER_NAME);
format(string, sizeof(string), "[Anti drive-by]: %s cometeu drive-by em %s e serб punido por um admin.", acusado, vitima);
SendClientMessageToAll(0xE60000FF, string);
}
return 1;
}