Lunar Heist Contracts
Import & overrides
In lunar_heistcontracts root directory create a file called imports.lua, in which copy-paste the following code:
local isServer = IsDuplicityVersion()
local appId = 'lunar_heistcontracts'
if not isServer then
local OriginalRegisterNUICallback = RegisterNUICallback
local overrides = {}
local profile = {}
function SetNuiFocus(hasCursor, disableInput) end
function SendNUIMessage(data)
if (data and data.action == 'updateProfile') then
profile = data.data or {}
end
exports.fd_laptop:sendAppMessage(appId, data)
end
function RegisterNUICallback(name, callback)
if name ~= 'hideFrame' then
return OriginalRegisterNUICallback(name, callback)
end
overrides[name] = callback
return OriginalRegisterNUICallback(name, callback)
end
function closeTablet()
if (not overrides.hideFrame) then
return
end
overrides.hideFrame({}, function() end)
end
RegisterNetEvent('lunar_contracts:closeTablet', closeTablet)
local function openTablet()
exports.fd_laptop:sendAppMessage(appId, {
action = 'updateProfile',
data = profile
})
end
RegisterNetEvent('lunar_contracts:openTablet', openTablet)
end
if isServer then
CreateThread(function()
while GetResourceState("fd_laptop") ~= "started" do
Wait(500)
end
local added, errorMessage = exports.fd_laptop:addCustomApp({
id = appId,
name = "Heists",
isDefaultApp = true,
needsUpdate = false,
icon = 'heists.svg',
ui = ("https://cfx-nui-%s/web/build/index.html"):format(GetCurrentResourceName()),
overrides = {
("https://cfx-nui-%s/web/dist/lunarOverrides.js"):format('fd_laptop'),
},
keepAlive = false,
isReactOrVue = true,
windowActions = {
isResizable = false,
isMaximizable = false,
isClosable = true,
isMinimizable = true,
isDraggable = false
},
windowDefaultStates = {
isMaximized = true,
isMinimized = false
},
onUseServer = function(source)
TriggerClientEvent('lunar_contracts:openTablet', source)
end,
onCloseServer = function(source)
TriggerClientEvent('lunar_contracts:closeTablet', source)
end
})
if not added then
print("Could not add app:", errorMessage)
end
end)
end Edit fxmanifest.lua
At the root of lunar_heistcontracts directory open fxmanifest.lua file with your preferred file editor and add imports.lua to shared_scripts block. After edit, shared_scripts block should look like this:
shared_scripts {
'imports.lua', -- Add this line
'@ox_lib/init.lua',
'init.lua',
'config/config.lua',
'config/contracts/*.lua'
} also, comment out UI line in fxmanifest.lua:
ui_page 'web/build/index.html' -- Comment this line should look like this:
-- ui_page 'web/build/index.html' -- Comment this line Edit fxmanifest.lua
At the root of lunar_heistcontracts directory open fxmanifest.lua file with your preferred file editor and add imports.lua to shared_scripts block. After edit, shared_scripts block should look like this:
shared_scripts {
'imports.lua', -- Add this line
'@ox_lib/init.lua',
'init.lua',
'config/config.lua',
'config/contracts/*.lua'
} Restart / Start server
Once you completed steps above, restart or start your server and enjoy KUB Trucking while using our laptop.