[Ajuda] Detectar player desarmado
#1

Entгo pessoal to fazendo um sistema sozinho anti dm, que й o seguinte eu ja fiz a metade dele...

mas preciso de uma funзгo que detecte se o player que sofreu o dano esta armado.


pawn Код:
public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid, bodypart)
  {
    if(atirou[playerid] != 1)
    {
    SendClientMessage(issuerid, COLOR_LIGHTRED, "Sem DM seu nb,vai ser preso!");
    SendClientMessage(playerid, COLOR_LIGHTRED, "Vocк esta sofrendo DM, Tire Print!");
    return 1;
     }
     // daqui para baixo й outra funcao da gm na onplayertakedamage
    PlayerShotPlayer[issuerid][playerid] = 1;
    SetPVarInt(playerid, "ultimoShoot", issuerid);
    return 0;
}
o sistema ira detectar se o player que esta tomando dano atirou em alguem(vou arrumar dps para que seja em torno de 2 ou 3 minutos para a funcao atirou ainda estar valida, mas falta uma coisa identificar se o player ta desarmado para evitar que a pessoa forje dm(PS: pode ser tb so a arma que ela esta usando na mгo)

PF preciso mto disso.


@Editado

Preciso de uma funзгo que verifica se o player ta armado.
Reply
#2

Vocк pode utilizar GetPlayerWeaponData para detectar se ele tem alguma arma estando na mгo ou nгo,vocк tambйm pode usar GetPlayerWeapon para detectar se ele tem alguma arma apenas na mгo.
Reply
#3

Quote:
Originally Posted by 99fe3rnando
Посмотреть сообщение
Vocк pode utilizar GetPlayerWeaponData para detectar se ele tem alguma arma estando na mгo ou nгo,vocк tambйm pode usar GetPlayerWeapon para detectar se ele tem alguma arma apenas na mгo.
pode passar o cod para verificar se ele tem arma na mao ?

Qualquer arma e n arma especifica.

Tipo qualquer coisa na mao dele...
Reply
#4

PHP код:
IsPlayerArmed(playerid)
{
    new 
weaponammo;
    for(new 
i13i++)
    {
        
GetPlayerWeaponData(playeridiweaponammo);
        if(
weapon) return true;
    }
    return 
false;

Fiz aqui rapidinho pelo tablet, logicamente ira funcionar so testar.
Reply
#5

public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid, bodypart)
{
PlayerShotPlayer[issuerid][playerid] = 1;
SetPVarInt(playerid, "ultimoShoot", issuerid);
if(atirou[playerid] != 1)
{
return 1;
}
IsPlayerArmed(playerid)
{
new weapon, ammo;
for(new i; i < 13; i++)
{
GetPlayerWeaponData(playerid, i, weapon, ammo);
if(weapon) return true;
}
return false;
}
SendClientMessage(issuerid, COLOR_LIGHTRED, "Sem DM seu nb,vai ser preso!");
SendClientMessage(playerid, COLOR_LIGHTRED, "Vocк esta sofrendo DM, Tire Print!");
return 1;
}

Ficaria assim ?

pq assim deu um erro na funcao aonde vc passou.
Reply
#6

PHP код:
new WP GetPlayerWeapon(playerid);
if(
WP == 1||WP == 2||WP == 3||WP == 4||WP == 5||WP == 6||WP == 7||WP == 8||WP == 9||
WP == 10||WP == 11||WP == 12||WP == 13||WP == 14||WP == 15||WP == 16||WP == 17||WP == 18||WP == 19||
WP == 20||WP == 21||WP == 22||WP == 23||WP == 24||WP == 25||WP == 26||WP == 27||WP == 28||WP == 29||
WP == 30||WP == 31||WP == 32||WP == 33||WP == 34||WP == 35||WP == 36||WP == 37||WP == 38||WP == 39||WP == 40)//WP == ID||
{
        
SendClientMessage(playerid0x00FF00FF"WeaponID");

Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)