disarm only one weapon
#1

Hi

Can you hlp me?

Hom made this:

Example, players have three weapon. Knife (id 4), Deagle(id 24) and M4(id 31).
How i can do function, when disarm player only Knife(id 4) ?
Reply
#2

pawn Код:
RemovePlayerWeapon(playerid, weaponid)
{
    if(!IsPlayerConnected(playerid) || weaponid < 0 || weaponid > 50)
      return;

    new
      saveweapon[13],
      saveammo[13];
     
    // Probably could be done using one loop
    for(new slot = 0; slot < 13; slot++)
      GetPlayerWeaponData(playerid, slot, saveweapon[slot], saveammo[slot]);

    ResetPlayerWeapons(playerid);

    for(new slot; slot < 13; slot++)
    {
        if(saveweapon[slot] == weaponid || saveammo[slot] == 0)
            continue;

        GivePlayerWeapon(playerid, saveweapon[slot], saveammo[slot]);
    }

    // give them weapon ID 0 to reset the current armed weapon
    // to a fist and not the last weapon in their inventory
    GivePlayerWeapon(playerid, 0, 1);

}
Reply
#3

Untested:
pawn Код:
stock RemovePlayerWeapon(playerid,weapid) {
    new playerweaps[12], ammo[12];
    for(new i = 0; i < 12; i++) {
        GetPlayerWeaponData(playerid,i,playerweaps[i],ammo[i]);
    }
    ResetPlayerWeapons(playerid);
    for(new i = 0; i < 12; i++) {
        if(playerweaps[i] != weapid) {
            GivePlayerWeapon(playerid,playerweaps[i],ammo[i]);
        } else {
            return 1;
        }
    }
    return 0;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)