onClientPlayerWeaponSwitch
Client-side
 Server-side
 Shared
 This event is triggered whenever the local player's equipped weapon slot changes. This means giveWeapon and takeWeapon will trigger this event if the equipped slot is forced to change.
Parameters
int previousWeaponSlot, int currentWeaponSlot- previousWeaponSlot: An integer representing the previous weapon slot the player had before he switched.
- currentWeaponSlot: An integer representing the new weapon slot the player has after he switched.
Source
element: The source of this event is the player who switched their weapon (Local player only)
Canceling
If this event is canceled, then the weapon will not be switched.
Code Examples
 client   
 This example disables the use of aiming for the minigun.
function disableMinigunOnSwitch(prevSlot, curSlot)  if getPedWeapon(localPlayer, curSlot) == 38 then --if the switched weapon is the minigun    toggleControl("aim_weapon", false) --disable the aim button  else --if it isnt the minigun    toggleControl("aim_weapon", true) --renable the aim button  endendaddEventHandler("onClientPlayerWeaponSwitch", localPlayer, disableMinigunOnSwitch)See Also
Player Events
- onClientPlayerChangeNick
- onClientPlayerChoke
- onClientPlayerDamage
- onClientPlayerJoin
- onClientPlayerHitByWaterCannon
- onClientPlayerHeliKilled
- onClientPlayerPickupLeave
- onClientPlayerPickupHit
- onClientPlayerQuit
- onClientPlayerRadioSwitch
- onClientPlayerSpawn
- onClientPlayerStealthKill
- onClientPlayerStuntFinish
- onClientPlayerStuntStart
- onClientPlayerTarget
- onClientPlayerVoicePause
- onClientPlayerVehicleEnter
- onClientPlayerVehicleExit
- onClientPlayerVoiceStart
- onClientPlayerVoiceResumed
- onClientPlayerVoiceStop
- onClientPlayerWasted
- onClientPlayerWeaponFire
- onClientPlayerWeaponSwitch
- onPlayerACInfo
- onPlayerChangesProtectedData
- onPlayerChangeNick
- onPlayerBan
- onPlayerChangesWorldSpecialProperty
- onPlayerChat
- onPlayerClick
- onPlayerCommand
- onPlayerConnect
- onPlayerDamage
- onPlayerDiscordJoin
- onPlayerDetonateSatchels
- onPlayerJoin
- onPlayerLogin
- onPlayerLogout
- onPlayerMarkerHit
- onPlayerContact
- onPlayerModInfo
- onPlayerMarkerLeave
- onPlayerMute
- onPlayerNetworkStatus
- onPlayerPickupLeave
- onPlayerPickupHit
- onPlayerProjectileCreation
- onPlayerQuit
- onPlayerPrivateMessage
- onPlayerPickupUse
- onPlayerSpawn
- onPlayerStealthKill
- onPlayerTarget
- onPlayerTeamChange
- onPlayerTeleport
- onPlayerScreenShot
- onPlayerTriggerEventThreshold
- onPlayerTriggerInvalidEvent
- onPlayerUnmute
- onPlayerVehicleEnter
- onPlayerVoiceStart
- onPlayerVehicleExit
- onPlayerVoiceStop
- onPlayerWasted
- onPlayerWeaponFire
- onPlayerWeaponReload
- onPlayerWeaponSwitch
Player Functions
- countPlayersInTeam
- forcePlayerMap
- getControlState
- getPlayerBlurLevel
- getPlayerFromName
- getPlayerName
- getPlayerMoney
- getPlayerNametagColor
- getPlayerPing
- getPlayerNametagText
- getPlayerScriptDebugLevel
- getPlayerSerial
- getPlayerTeam
- getPlayerWantedLevel
- getPlayersInTeam
- givePlayerMoney
- isPlayerMapForced
- isPlayerNametagShowing
- isVoiceEnabled
- setControlState
- setPlayerBlurLevel
- setPlayerHudComponentVisible
- setPlayerMoney
- setPlayerNametagColor
- setPlayerNametagShowing
- setPlayerNametagText
- takePlayerMoney
- getLocalPlayer
- getPlayerHudComponentProperty
- getPlayerMapBoundingBox
- getPlayerMapOpacity
- isPlayerCrosshairVisible
- isPlayerMapVisible
- isPlayerHudComponentVisible
- resetBlurLevel
- resetPlayerHudComponentProperty
- setPlayerHudComponentProperty
- getAlivePlayers
- getDeadPlayers
- getPlayerACInfo
- getPlayerAnnounceValue
- getPlayerCount
- getPlayerIP
- getPlayerIdleTime
- getPlayerVersion
- getRandomPlayer
- isPlayerMuted
- redirectPlayer
- resendPlayerACInfo
- resendPlayerModInfo
- setPlayerAnnounceValue
- setPlayerMuted
- setPlayerName
- setPlayerScriptDebugLevel
- setPlayerTeam
- setPlayerVoiceBroadcastTo
- setPlayerWantedLevel
- setPlayerVoiceIgnoreFrom
- spawnPlayer
- takePlayerScreenShot
 
 