π±ATM Hacking
[WIP] An immersive atm hacking script with built in xp system, custom cameras, minigame difficulty per level and rewards. ONLY SUPPORTS OX INVENTORY on ESX/QBX/QB.
Requirements
oxmysql
OneSync (with infinity enabled)
ox_lib
ox_inventory
ox_target/interact script: https://github.com/darktrovx/interact
ESX/QBX/QB Framework
glow_minigames: https://github.com/christikat/glow_minigames (optional if you decide to do your own minigame logic)
Client Exports
-- Returns (number) player's hacking level based off their xp.
local level = exports.randol_atmhacking:GetHackingLevel()
-- Returns (number) player's hacking xp.
local xp = exports.randol_atmhacking:GetExp()
-- Returns boolean (true or false) if the player is currently searching for targets.
local isHacking = exports.randol_atmhacking:isPlayerHacking()
-- Calling this will stop a player who is currently searching for targets.
exports.randol_atmhacking:StopPlayerHacking()
Server Exports
-- Returns (number) player's hacking level based off their xp.
local level = exports.randol_atmhacking:GetHackingLevel(src)
-- Returns (number) player's hacking xp.
local xp = exports.randol_atmhacking:GetExp(src)
-- Returns (number) the bonus (defined in sv_config Levels table) based off the player's xp.
local bonus = exports.randol_atmhacking:GetHackingBonus(src)
-- Returns (boolean) if the player is connected to an ATM.
local hasAtm = exports.randol_atmhacking:HasAtmOwnership(src)
-- Adds the data receiver item with metadata set. Do not use regular /giveitem commands.
exports.randol_atmhacking:AddReceiverItem(src)
Levels
{ -- Level 1 Example
value = 1, threshold = 500, bonus = 150, gain = {min = 1, max = 3},
settings = {gridSize = 6, timeLimit = 8000, charSet = 'alphabet', required = 5}
},
Last updated