[Ajuda] GetPlayerweapondata
#1

Como usar a funзгo GetPlayerweapondata para pegar a quantidade de bala de uma arma?
Por exemplo,eagle apenas ?
Reply
#2

GetPlayerWeaponData(playerid, slot, &weapons, &ammo)

O primeiro parвmetro й do id do jogador que vai ser verificado.

slot da arma vocк pode ver aqui, neste link hб o nome, macro, id, o slot e o modelo, nesta ordem. Para ver o slot da arma que vocк quer й sу ver este link.

weapon - й o id da arma, vocк ira usar uma variбvel para armazenar o id.

ammo й a muniзгo da arma, vocк ira usar uma variбvel para armazenar o tanto de muniзгo que hб.

Exemplo:
pawn Код:
new w_id, w_ammo;
GetPlayerWeaponData(playerid, 4, w_id, w_ammo);
printf("A arma que estб no slot 4 й a arma id %i, e tem %i de muniзгo", w_id, w_ammo);
//Й pelo as informaзхes do slot 4 do jogador, verifica qual arma estб neste slot, quanto de muniзгo tem e armazena em variбveis, e manda uma mensagem para o console.
Reply
#3

Quote:
Originally Posted by MultiKill
Посмотреть сообщение
GetPlayerWeaponData(playerid, slot, &weapons, &ammo)

O primeiro parвmetro й do id do jogador que vai ser verificado.

slot da arma vocк pode ver aqui, neste link hб o nome, macro, id, o slot e o modelo, nesta ordem. Para ver o slot da arma que vocк quer й sу ver este link.

weapon - й o id da arma, vocк ira usar uma variбvel para armazenar o id.

ammo й a muniзгo da arma, vocк ira usar uma variбvel para armazenar o tanto de muniзгo que hб.

Exemplo:
pawn Код:
GetPlayerWeaponData(playerid, 4, w_id, w_ammo);
printf("A arma que estб no slot 4 й a arma id %i, e tem %i de muniзгo", w_id, W_ammo);
//Й pelo as informaзхes do slot 4 do jogador, verifica qual arma estб neste slot, quanto de muniзгo tem e armazena em variбveis, e manda uma mensagem para o console.
entгo se eu quiser tirar as muniзхes da arma eagle,faria assim ? :

pawn Код:
GetPlayerWeaponData(playerid, 4, w_id, w_ammo);
GivePlayerWeapon(playerid,w_id,0);
estaria certo ?
Reply
#4

Sу se no slot 2 estiver a desert eagle, vai pegar a muniзгo dela, mas lб pode estar a 9mm, a 9mm com silenciador tambйm. Se quiser saber se й a desert eagle que estб neste slot faзa:
pawn Код:
new w_id, w_ammo;
GetPlayerWeaponData(playerid, 2, w_id, w_ammo);
if(w_id == 24)
{
    print("A Desert Eagle estб no slot 2.");
}
else
{
    print("A Desert Eagle nгo estб no slot 2.");
}
// Depois de pego o id da arma que estб no slot 2, foi comparado se este id й igual hб 24 que й o id da desert eagle.
Reply
#5

Quote:
Originally Posted by MultiKill
Посмотреть сообщение
Sу se no slot 2 estiver a desert eagle, vai pegar a muniзгo dela, mas lб pode estar a 9mm, a 9mm com silenciador tambйm. Se quiser saber se й a desert eagle que estб neste slot faзa:
pawn Код:
new w_id, w_ammo;
GetPlayerWeaponData(playerid, 2, w_id, w_ammo);
if(w_id == 24)
{
    print("A Desert Eagle estб no slot 2.");
}
else
{
    print("A Desert Eagle nгo estб no slot 2.");
}
// Depois de pego o id da arma que estб no slot 2, foi comparado se este id й igual hб 24 que й o id da desert eagle.
se eu quiser pegar de todos os id,ta certo fazer :

pawn Код:
for(i=0;i <=12;i++)
{
GetPlayerWeaponData(playerid, i, w_id, w_ammo);
if(w_id == 24)
{
SendClientMessage(playerid,-1,"sua eagle foi retirada");
Giveplayerweapons(playerid,w_id,0);
}
}
Reply
#6

Se for sу para pegar a desert eagle nгo precisa fazer isto, por que ela fica sу no slot 2. Se vocк estiver dizendo pegar o id de todos os slots, vocк teria que fazer igual ao exemplo do wiki sa-mp:
pawn Код:
new weapons[13][2];
for (new i = 0; i <= 12; i++)
{
    GetPlayerWeaponData(playerid, i, weapons[i][0], weapons[i][1]);
}

printf("Slot 1: arma id %i muniзгo %i", weapons[1][0], weapons[1][1]);

//weapons[slot][0 = id da arma, 1 = muniзгo da arma];
Reply
#7

Quote:
Originally Posted by MultiKill
Посмотреть сообщение
Se for sу para pegar a desert eagle nгo precisa fazer isto, por que ela fica sу no slot 2. Se vocк estiver dizendo pegar o id de todos os slots, vocк teria que fazer igual ao exemplo do wiki sa-mp:
pawn Код:
new weapons[13][2];
for (new i = 0; i <= 12; i++)
{
    GetPlayerWeaponData(playerid, i, weapons[i][0], weapons[i][1]);
}

printf("Slot 1: arma id %i muniзгo %i", weapons[1][0], weapons[1][1]);

//weapons[slot][0 = id da arma, 1 = muniзгo da arma];
e tem alguma ordem de qual arma fica em qual id ?

a desert sempre fica slot 2,mp5 fica aonde?,shotgun e etc,tem alguma lista?
Reply
#8

Click aqui para ver a tabela.
Reply


Forum Jump:


Users browsing this thread: 7 Guest(s)