onPlayerModInfo
Client-side
Server-side
Shared
This event is triggered when a player has modified certain files.
Any resource using this event should call resendPlayerModInfo for each player in onResourceStart .
Parameters
string filename, table itemlist
- filename: a string with the filename of the modified file.
- itemlist: a table with the details of each modification within the file. Possible keys for each sub-table are: id: GTA model or texture id. name: GTA name. sizeX, sizeY, sizeZ: the modified model size (if the item is a DFF). originalSizeX, originalSizeY, originalSizeZ: the unmodified model size (if the item is a DFF). length: length in bytes of the item. md5: md5 of the item bytes. sha256: sha256 of the item bytes. paddedLength: length in bytes of the item padded to 2048 byte boundary. paddedMd5: md5 of the item bytes padded to 2048 byte boundary. paddedSha256: sha256 of the item bytes padded to 2048 byte boundary.
Source
element: The source of this event is the player.
Code Examples
server
This example prints all modification information into the chatbox.
function handleOnPlayerModInfo ( filename, modList ) -- Print player name and file name outputChatBox( getPlayerName(source) .. " " .. filename )
-- Print details on each modification for idx,item in ipairs(modList) do outputChatBox( idx .. ") id:" .. item.id .. " name:" .. item.name ) if item.sizeX then outputChatBox( "size:" .. item.sizeX .. "," .. item.sizeY .. "," .. item.sizeZ ) outputChatBox( "originalSize:" .. item.originalSizeX .. "," .. item.originalSizeY .. "," .. item.originalSizeZ ) end if item.length then outputChatBox( "length:" .. item.length .. " md5:" .. item.md5 ) end endend
addEventHandler ( "onPlayerModInfo", getRootElement(), handleOnPlayerModInfo )
-- Ensure no one gets missed when the resource is (re)startedaddEventHandler( "onResourceStart", resourceRoot, function() for _,plr in ipairs( getElementsByType("player") ) do resendPlayerModInfo( plr ) end end)
See Also
Player Events
- onClientPlayerDamage
- onClientPlayerChoke
- onClientPlayerChangeNick
- onClientPlayerHeliKilled
- onClientPlayerHitByWaterCannon
- onClientPlayerJoin
- onClientPlayerPickupHit
- onClientPlayerPickupLeave
- onClientPlayerRadioSwitch
- onClientPlayerQuit
- onClientPlayerSpawn
- onClientPlayerStuntFinish
- onClientPlayerStealthKill
- onClientPlayerStuntStart
- onClientPlayerTarget
- onClientPlayerVehicleEnter
- onClientPlayerVehicleExit
- onClientPlayerVoicePause
- onClientPlayerVoiceResumed
- onClientPlayerVoiceStart
- onClientPlayerVoiceStop
- onClientPlayerWasted
- onClientPlayerWeaponFire
- onClientPlayerWeaponSwitch
- onPlayerACInfo
- onPlayerBan
- onPlayerChangeNick
- onPlayerChangesProtectedData
- onPlayerChangesWorldSpecialProperty
- onPlayerChat
- onPlayerClick
- onPlayerCommand
- onPlayerConnect
- onPlayerContact
- onPlayerDamage
- onPlayerDetonateSatchels
- onPlayerDiscordJoin
- onPlayerJoin
- onPlayerLogout
- onPlayerLogin
- onPlayerMarkerHit
- onPlayerMarkerLeave
- onPlayerModInfo
- onPlayerMute
- onPlayerNetworkStatus
- onPlayerPickupHit
- onPlayerPickupUse
- onPlayerPickupLeave
- onPlayerPrivateMessage
- onPlayerProjectileCreation
- onPlayerQuit
- onPlayerScreenShot
- onPlayerSpawn
- onPlayerStealthKill
- onPlayerTarget
- onPlayerTeamChange
- onPlayerTeleport
- onPlayerTriggerEventThreshold
- onPlayerUnmute
- onPlayerTriggerInvalidEvent
- onPlayerVehicleEnter
- onPlayerVehicleExit
- onPlayerVoiceStart
- onPlayerVoiceStop
- onPlayerWasted
- onPlayerWeaponFire
- onPlayerWeaponReload
- onPlayerWeaponSwitch
Player Functions
- forcePlayerMap
- getControlState
- getPlayerBlurLevel
- getPlayerFromName
- getPlayerMoney
- getPlayerName
- getPlayerNametagColor
- getPlayerNametagText
- getPlayerPing
- getPlayerScriptDebugLevel
- getPlayerSerial
- getPlayerWantedLevel
- isPlayerMapForced
- givePlayerMoney
- isPlayerNametagShowing
- isVoiceEnabled
- setControlState
- setPlayerBlurLevel
- setPlayerHudComponentVisible
- setPlayerMoney
- setPlayerNametagColor
- setPlayerNametagShowing
- setPlayerNametagText
- takePlayerMoney
- getLocalPlayer
- getPlayerHudComponentProperty
- getPlayerMapBoundingBox
- getPlayerMapOpacity
- isPlayerCrosshairVisible
- isPlayerHudComponentVisible
- isPlayerMapVisible
- resetBlurLevel
- resetPlayerHudComponentProperty
- setPlayerHudComponentProperty
- getAlivePlayers
- getDeadPlayers
- getPlayerAnnounceValue
- getPlayerACInfo
- getPlayerCount
- getPlayerIP
- getPlayerIdleTime
- getPlayerVersion
- getRandomPlayer
- isPlayerMuted
- resendPlayerACInfo
- redirectPlayer
- resendPlayerModInfo
- setPlayerAnnounceValue
- setPlayerMuted
- setPlayerName
- setPlayerScriptDebugLevel
- setPlayerVoiceBroadcastTo
- setPlayerWantedLevel
- setPlayerVoiceIgnoreFrom
- spawnPlayer
- takePlayerScreenShot