Olá a todos,sou o Rafael,trazendo mais um filterscript MUITO útil para servidores que NÃO ACEITAM que jogadores atropelem e atirem para fora do carro.
Script:
#include a_samp
#define aviso 0xE80000FF
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_GREY 0xC0C0C0AA
new AvisosDB[MAX_PLAYERS];
public OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid, bodypart)
{
new playerState = GetPlayerState(playerid);
new playerWeapon = GetPlayerWeapon(playerid);
if(playerState == PLAYER_STATE_DRIVER)
{
RemovePlayerFromVehicle(playerid);
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid,x,y,z);
SetPlayerPos(playerid,x,y,z+10);
SendClientMessage(playerid, aviso, "[AVISO]:Não atropele,você poderá ser rigidamente punido.");
}
if(playerState == PLAYER_STATE_PASSENGER && playerWeapon == 30 | 27 | 24 | 31 | 28 | 22 | 26 | 25 | 23 | 29 | 32)
{
RemovePlayerFromVehicle(playerid);
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid,x,y,z);
SetPlayerPos(playerid,x,y,z+10);
SendClientMessage(playerid, aviso, "[AVISO]:Não atire como passageiro,você poderá ser rigidamente punido.");
}
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
new playerState = GetPlayerState(killerid);
if (playerState == PLAYER_STATE_DRIVER)
{
new killername[MAX_PLAYER_NAME], string[128];
GetPlayerName(killerid, killername, MAX_PLAYER_NAME);
switch(AvisosDB[killerid])
{
case 1:
{
format(string, sizeof(string), "O administrador []_AnT-DB_[] avisou o jogador %s.[Motivo: Atropelar / Avisos: 1/3]", killername);
SendClientMessageToAll(COLOR_YELLOW, string);
AvisosDB[killerid]++;
}
case 2:
{
format(string, sizeof(string), "O administrador []_AnT-DB_[] avisou o jogador %s.[Motivo: Atropelar / Avisos: 2/3]", killername);
SendClientMessageToAll(COLOR_YELLOW, string);
AvisosDB[killerid]++;
}
case 3:
{
format(string, sizeof(string), "O administrador []_AnT-DB_[] kickou o jogador %s.[Motivo: Atropelar / Avisos: 3/3]", killername);
SendClientMessageToAll(COLOR_GREY, string);
AvisosDB[killerid] = 0;
Kick(playerid);
}
}
}
return 1;
}
Sem show do cores porque meus dedos estão a doer :B
Vantagens:
Ele irá punir QUALQUER UM que atirar pelo vehiculo retirando ô do carro e supostamente tirando um pouco de sua vida.
Ele também irá punir as pessoas que atropelarem alguém,retirando ô do carro e supostamente tirando um tanto de sua vida.
Se ao acaso,a pessoa conseguir matar a outra,ela levará um aviso automatico do servidor,chegando aos três avisos ela será kickada.
Este FS estará em meu blog,então não estranhe.
Script:
Ant-DB (Motorista e Passageiro) :
#include a_samp
#define aviso 0xE80000FF
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_GREY 0xC0C0C0AA
new AvisosDB[MAX_PLAYERS];
public OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid, bodypart)
{
new playerState = GetPlayerState(playerid);
new playerWeapon = GetPlayerWeapon(playerid);
if(playerState == PLAYER_STATE_DRIVER)
{
RemovePlayerFromVehicle(playerid);
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid,x,y,z);
SetPlayerPos(playerid,x,y,z+10);
SendClientMessage(playerid, aviso, "[AVISO]:Não atropele,você poderá ser rigidamente punido.");
}
if(playerState == PLAYER_STATE_PASSENGER && playerWeapon == 30 | 27 | 24 | 31 | 28 | 22 | 26 | 25 | 23 | 29 | 32)
{
RemovePlayerFromVehicle(playerid);
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid,x,y,z);
SetPlayerPos(playerid,x,y,z+10);
SendClientMessage(playerid, aviso, "[AVISO]:Não atire como passageiro,você poderá ser rigidamente punido.");
}
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
new playerState = GetPlayerState(killerid);
if (playerState == PLAYER_STATE_DRIVER)
{
new killername[MAX_PLAYER_NAME], string[128];
GetPlayerName(killerid, killername, MAX_PLAYER_NAME);
switch(AvisosDB[killerid])
{
case 1:
{
format(string, sizeof(string), "O administrador []_AnT-DB_[] avisou o jogador %s.[Motivo: Atropelar / Avisos: 1/3]", killername);
SendClientMessageToAll(COLOR_YELLOW, string);
AvisosDB[killerid]++;
}
case 2:
{
format(string, sizeof(string), "O administrador []_AnT-DB_[] avisou o jogador %s.[Motivo: Atropelar / Avisos: 2/3]", killername);
SendClientMessageToAll(COLOR_YELLOW, string);
AvisosDB[killerid]++;
}
case 3:
{
format(string, sizeof(string), "O administrador []_AnT-DB_[] kickou o jogador %s.[Motivo: Atropelar / Avisos: 3/3]", killername);
SendClientMessageToAll(COLOR_GREY, string);
AvisosDB[killerid] = 0;
Kick(playerid);
}
}
}
return 1;
}
Sem show do cores porque meus dedos estão a doer :B
Vantagens:
Ele irá punir QUALQUER UM que atirar pelo vehiculo retirando ô do carro e supostamente tirando um pouco de sua vida.
Ele também irá punir as pessoas que atropelarem alguém,retirando ô do carro e supostamente tirando um tanto de sua vida.
Se ao acaso,a pessoa conseguir matar a outra,ela levará um aviso automatico do servidor,chegando aos três avisos ela será kickada.
Este FS estará em meu blog,então não estranhe.