# WEAPON::SET_CURRENT_PED_WEAPON

- **Hash:** `0xADF692B254977C0C`
- **Namespace:** WEAPON
- **Runtime name (Lua/JS):** `SetCurrentPedWeapon`
- **Side:** client (game native)
- **Name status:** official
- **Documentation:** described
- **Since game build:** 1207
- **URL:** https://natives.borderlinerp.com/natives/WEAPON/SET_CURRENT_PED_WEAPON

## Signature

```c
void SET_CURRENT_PED_WEAPON(Ped ped, Hash weaponHash, BOOL equipNow, int attachPoint, BOOL p4, BOOL p5);
```

## Parameters

- `ped` (`Ped`)
- `weaponHash` (`Hash`)
- `equipNow` (`BOOL`)
- `attachPoint` (`int`)
- `p4` (`BOOL`)
- `p5` (`BOOL`)

## Returns

`void`

## Description

attachPoint:
enum eWeaponAttachPoint
{
	WEAPON_ATTACH_POINT_INVALID = -1,
	WEAPON_ATTACH_POINT_HAND_PRIMARY = 0,
	WEAPON_ATTACH_POINT_HAND_SECONDARY = 1,
	WEAPON_ATTACH_POINT_PISTOL_R = 2,
	MAX_HAND_WEAPON_ATTACH_POINTS = 2,
	WEAPON_ATTACH_POINT_PISTOL_L = 3,
	WEAPON_ATTACH_POINT_KNIFE = 4,
	WEAPON_ATTACH_POINT_LASSO = 5,
	WEAPON_ATTACH_POINT_THROWER = 6,
	WEAPON_ATTACH_POINT_BOW = 7,
	WEAPON_ATTACH_POINT_BOW_ALTERNATE = 8,
	WEAPON_ATTACH_POINT_RIFLE = 9,
	WEAPON_ATTACH_POINT_RIFLE_ALTERNATE = 10,
	WEAPON_ATTACH_POINT_LANTERN = 11,
	WEAPON_ATTACH_POINT_TEMP_LANTERN = 12,
	WEAPON_ATTACH_POINT_MELEE = 13,
	MAX_SYNCED_WEAPON_ATTACH_POINTS = 13,
	WEAPON_ATTACH_POINT_HIP = 14,
	WEAPON_ATTACH_POINT_BOOT = 15,
	WEAPON_ATTACH_POINT_BACK = 16,
	WEAPON_ATTACH_POINT_FRONT = 17,
	WEAPON_ATTACH_POINT_SHOULDERSLING = 18,
	WEAPON_ATTACH_POINT_LEFTBREAST = 19,
	WEAPON_ATTACH_POINT_RIGHTBREAST = 20,
	WEAPON_ATTACH_POINT_LEFTARMPIT = 21,
	WEAPON_ATTACH_POINT_RIGHTARMPIT = 22,
	WEAPON_ATTACH_POINT_LEFTARMPIT_RIFLE = 23,
	WEAPON_ATTACH_POINT_SATCHEL = 24,
	WEAPON_ATTACH_POINT_LEFTARMPIT_BOW = 25,
	WEAPON_ATTACH_POINT_RIGHT_HAND_EXTRA = 26,
	WEAPON_ATTACH_POINT_LEFT_HAND_EXTRA = 27,
	WEAPON_ATTACH_POINT_RIGHT_HAND_AUX = 28,
	MAX_WEAPON_ATTACH_POINTS = 29
};

## Usage

### Lua

```lua
SetCurrentPedWeapon(ped, weaponHash, equipNow, attachPoint, p4, p5)

-- always available, by hash
Citizen.InvokeNative(0xADF692B254977C0C, ped, weaponHash, equipNow, attachPoint, p4, p5)
```

### JavaScript

```js
SetCurrentPedWeapon(ped, weaponHash, equipNow, attachPoint, p4, p5);

// by hash
Citizen.invokeNative('0xADF692B254977C0C', ped, weaponHash, equipNow, attachPoint, p4, p5);
```

### C#

```csharp
Function.Call((Hash)0xADF692B254977C0C, ped, weaponHash, equipNow, attachPoint, p4, p5);
```

- Hash parameters: the named function also accepts a string and hashes it for you; `Citizen.InvokeNative` needs the number — pass `joaat("name")` or a backtick literal like `` `name` ``.

## Related enums

- [eWeaponAttachPoint](https://natives.borderlinerp.com/enums/eWeaponAttachPoint.md) — 33 values

## See also

- [WEAPON::GET_CURRENT_PED_WEAPON](https://natives.borderlinerp.com/natives/WEAPON/GET_CURRENT_PED_WEAPON.md)

*Sources: alloc8or RDR3 NativeDB.*
