2024-01-13 22:23:17 -08:00
|
|
|
local QBCore = exports['qb-core']:GetCoreObject()
|
2024-03-17 20:05:09 -07:00
|
|
|
local tableout = false
|
2024-05-02 18:34:14 -07:00
|
|
|
|
|
|
|
|
|
2024-10-25 01:55:35 -07:00
|
|
|
local function createLabKit(coord, head)
|
|
|
|
|
local labkit = CreateObject("v_ret_ml_tablea", coord.x, coord.y, coord.z - 1, true, false)
|
|
|
|
|
SetEntityHeading(labkit, head)
|
|
|
|
|
PlaceObjectOnGroundProperly(labkit)
|
|
|
|
|
local options = {
|
2024-10-28 14:35:47 -07:00
|
|
|
{ event = "md-drugs:client:heatliquid", icon = "fa-solid fa-temperature-high", label = Lang.targets.lsd.heat, data = labkit },
|
|
|
|
|
{ event = "md-drugs:client:refinequalityacid", icon = "fa-solid fa-temperature-high", label = Lang.targets.lsd.refine, data = labkit },
|
|
|
|
|
{ event = "md-drugs:client:maketabpaper", icon = "fa-regular fa-note-sticky", label = Lang.targets.lsd.dab, data = labkit },
|
2024-10-25 01:55:35 -07:00
|
|
|
{ event = "md-drugs:client:getlabkitback", icon = "fas fa-box-circle-check", label = Lang.targets.lsd.back, data = labkit, canInteract = function() return tableout end }
|
|
|
|
|
}
|
|
|
|
|
AddMultiModel(labkit, options, labkit)
|
|
|
|
|
end
|
2024-01-13 22:23:17 -08:00
|
|
|
|
2024-05-02 18:34:14 -07:00
|
|
|
RegisterNetEvent("md-drugs:client:getlysergic", function(data)
|
2024-10-23 17:44:46 -07:00
|
|
|
if not minigame() then return end
|
2024-05-02 18:34:14 -07:00
|
|
|
if not progressbar(Lang.lsd.steallys, 4000, 'uncuff') then return end
|
|
|
|
|
TriggerServerEvent("md-drugs:server:getlysergic",data.data)
|
2024-01-13 22:23:17 -08:00
|
|
|
end)
|
|
|
|
|
|
2024-05-02 18:34:14 -07:00
|
|
|
|
|
|
|
|
RegisterNetEvent("md-drugs:client:getdiethylamide", function(data)
|
2024-10-23 17:44:46 -07:00
|
|
|
if not minigame() then return end
|
2024-05-02 18:34:14 -07:00
|
|
|
if not progressbar(Lang.lsd.stealdie, 4000, 'uncuff') then return end
|
|
|
|
|
TriggerServerEvent('md-drugs:server:getdiethylamide', data.data)
|
2024-01-13 22:23:17 -08:00
|
|
|
end)
|
|
|
|
|
|
2024-09-24 15:07:41 -07:00
|
|
|
RegisterNetEvent("md-drugs:client:setlsdlabkit", function()
|
2024-03-17 20:05:09 -07:00
|
|
|
if tableout then
|
2024-05-02 18:34:14 -07:00
|
|
|
Notify(Lang.lsd.tableout, 'error')
|
2024-05-04 11:40:08 -07:00
|
|
|
TriggerServerEvent('md-drugs:server:getlabkitback')
|
2024-03-17 20:05:09 -07:00
|
|
|
else
|
|
|
|
|
tableout = true
|
2024-09-24 15:07:41 -07:00
|
|
|
local loc, head = StartRay()
|
|
|
|
|
if not loc then tableout = false TriggerServerEvent('md-drugs:server:getlabkitback') return end
|
2024-05-02 18:34:14 -07:00
|
|
|
if not progressbar(Lang.lsd.place, 4000, 'uncuff') then TriggerServerEvent('md-drugs:server:getlabkitback') return end
|
2024-10-25 01:55:35 -07:00
|
|
|
createLabKit(loc, head)
|
2024-03-17 20:05:09 -07:00
|
|
|
end
|
2024-01-13 22:23:17 -08:00
|
|
|
end)
|
|
|
|
|
|
2024-05-02 18:34:14 -07:00
|
|
|
RegisterNetEvent("md-drugs:client:getlabkitback", function(data)
|
|
|
|
|
if not progressbar(Lang.lsd.tablepack, 4000, 'uncuff') then return end
|
|
|
|
|
DeleteObject(data.data)
|
|
|
|
|
TriggerServerEvent('md-drugs:server:getlabkitback')
|
|
|
|
|
tableout = false
|
|
|
|
|
end)
|
2024-01-13 22:23:17 -08:00
|
|
|
|
2024-05-02 18:34:14 -07:00
|
|
|
RegisterNetEvent("md-drugs:client:heatliquid", function(data)
|
2024-10-25 01:55:35 -07:00
|
|
|
local PedCoords, head = GetEntityCoords(data.data), GetEntityHeading(data.data)
|
2024-10-23 17:44:46 -07:00
|
|
|
local dict = "scr_ie_svm_technical2"
|
2024-05-02 18:34:14 -07:00
|
|
|
if not ItemCheck('lysergic_acid') then return end
|
|
|
|
|
if not ItemCheck('diethylamide') then return end
|
2024-10-23 17:44:46 -07:00
|
|
|
if not minigame() then
|
2024-05-02 18:34:14 -07:00
|
|
|
TriggerServerEvent("md-drugs:server:failheating")
|
|
|
|
|
DeleteObject(data.data)
|
2024-09-24 15:07:41 -07:00
|
|
|
local dirtylabkit = CreateObject("v_ret_ml_tablea", PedCoords.x, PedCoords.y, PedCoords.z-1, true, false)
|
2024-10-25 01:55:35 -07:00
|
|
|
SetEntityHeading(dirtylabkit, head)
|
2024-01-13 22:23:17 -08:00
|
|
|
loadParticle(dict)
|
|
|
|
|
exitPtfx = StartParticleFxLoopedOnEntity("scr_dst_cocaine", dirtylabkit, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.5, false, false, false)
|
|
|
|
|
PlaceObjectOnGroundProperly(dirtylabkit)
|
|
|
|
|
SetParticleFxLoopedAlpha(exitPtfx, 3.0)
|
2024-09-24 15:07:41 -07:00
|
|
|
Wait(100)
|
2024-10-28 14:35:47 -07:00
|
|
|
AddMultiModel(dirtylabkit, { event = "md-drugs:client:cleanlabkit", icon = "fa-solid fa-hand-sparkles", label = Lang.targets.lsd.clean, data = dirtylabkit}, nil )
|
2024-05-02 18:34:14 -07:00
|
|
|
return end
|
|
|
|
|
if not progressbar(Lang.lsd.heat, 7000, 'uncuff') then return end
|
|
|
|
|
TriggerServerEvent("md-drugs:server:heatliquid")
|
2024-01-13 22:23:17 -08:00
|
|
|
end)
|
|
|
|
|
|
2024-05-02 18:34:14 -07:00
|
|
|
RegisterNetEvent("md-drugs:client:cleanlabkit", function(data)
|
|
|
|
|
if not ItemCheck('cleaningkit') then return end
|
|
|
|
|
if not progressbar(Lang.lsd.clean, 4000, 'clean') then return end
|
2024-09-24 15:07:41 -07:00
|
|
|
local check = lib.callback.await('md-drugs:server:removecleaningkit')
|
|
|
|
|
if check then
|
2024-10-25 01:55:35 -07:00
|
|
|
local coord, head = GetEntityCoords(data.data), GetEntityHeading(data.data)
|
2024-09-24 15:07:41 -07:00
|
|
|
DeleteObject(data.data)
|
2024-10-25 01:55:35 -07:00
|
|
|
createLabKit(coord, head)
|
2024-09-24 15:07:41 -07:00
|
|
|
end
|
2024-01-13 22:23:17 -08:00
|
|
|
end)
|
|
|
|
|
|
2024-05-02 18:34:14 -07:00
|
|
|
RegisterNetEvent("md-drugs:client:refinequalityacid", function()
|
|
|
|
|
if not ItemCheck('lsd_one_vial') then return end
|
2024-10-23 17:44:46 -07:00
|
|
|
if not minigame() then TriggerServerEvent("md-drugs:server:failrefinequality") return end
|
2024-05-02 18:34:14 -07:00
|
|
|
if not progressbar(Lang.lsd.refine, 4000, 'uncuff') then return end
|
|
|
|
|
TriggerServerEvent("md-drugs:server:refinequalityacid")
|
2024-01-13 22:23:17 -08:00
|
|
|
end)
|
|
|
|
|
|
2024-05-02 18:34:14 -07:00
|
|
|
RegisterNetEvent("md-drugs:client:maketabpaper", function()
|
|
|
|
|
if not ItemCheck('tab_paper') then return end
|
2024-10-23 17:44:46 -07:00
|
|
|
if not minigame() then TriggerServerEvent("md-drugs:server:failtabs") return end
|
2024-05-02 18:34:14 -07:00
|
|
|
if not progressbar(Lang.lsd.dip, 4000, 'uncuff') then return end
|
|
|
|
|
TriggerServerEvent("md-drugs:server:maketabpaper")
|
2024-01-13 22:23:17 -08:00
|
|
|
end)
|
|
|
|
|
|
2024-05-02 18:34:14 -07:00
|
|
|
RegisterNetEvent("md-drugs:client:buytabs", function(data)
|
|
|
|
|
if not progressbar(Lang.lsd.buypaper, 4000, 'uncuff') then return end
|
|
|
|
|
TriggerServerEvent("md-drugs:server:gettabpaper", data.data)
|
2024-01-13 22:23:17 -08:00
|
|
|
end)
|
|
|
|
|
|
|
|
|
|
|
2024-05-02 18:34:14 -07:00
|
|
|
RegisterNetEvent("md-drugs:client:buylabkit", function()
|
2024-10-23 17:44:46 -07:00
|
|
|
if QBCore.Functions.HasItem('lsdlabkit') then Notify(Lang.lsd.hav, 'error') return end
|
2024-05-02 18:34:14 -07:00
|
|
|
if not progressbar(Lang.lsd.buykit, 4000, 'uncuff') then return end
|
|
|
|
|
TriggerServerEvent("md-drugs:server:getlabkit")
|
2024-01-13 22:23:17 -08:00
|
|
|
end)
|