Skip to main content

v4.6.0

Runs on Qbox. Every framework branch in this resource was replaced by the msk_core bridge, which removed roughly a hundred lines without changing what the script does.

Requires msk_core 4.0.0 or newer

This release calls MSK.GetPlayer, MSK.GetPlayers, MSK.RegisterItem and MSK.Bridge.Framework.Type in their 4.0.0 form. On msk_core 3.x the player object arrives without its methods and the item removal fails. Update msk_core along with this script.

Added

  • Qbox support. Qbox uses the same player_vehicles layout as QBCore, verified against qbx_vehicles/vehicles.sql.
  • GetPlayerIdentifier(Player) as a helper of its own. The identifier used to be read inline in three places, each with its own ESX and QBCore branch.

Changed

  • Framework detection is gone from this resource. It sat at the top of client/main.lua, server/main.lua and server/hotwire.lua, once per file, and knew only ESX and QBCore. msk_core has already detected the framework when these files load.

  • Config.Framework is no longer read anywhere. The line stays in config.lua so an existing config does not break, but changing it has no effect. Pin the framework in msk_core's config.lua instead.

  • Usable items are registered through MSK.RegisterItem, which covers ESX, QBCore and Qbox in one call, instead of ESX.RegisterUsableItem and QBCore.Functions.CreateUseableItem side by side.

  • The police alert walks MSK.GetPlayers(), one list with the same fields on every framework, instead of ESX.GetExtendedPlayers and QBCore.Functions.GetQBPlayers.

  • GetPlayerFromId, GetPlayerFromIdentifier and GetPlayerJob keep their names, because the rest of the resource calls them, but they are one line each now.

Fixed

  • Removing the lockpick item no longer runs against a nil player when the lookup fails.

Changed files

fxmanifest.lua
config.lua
client/main.lua
server/main.lua
server/hotwire.lua