103 lines
4.0 KiB
Lua
103 lines
4.0 KiB
Lua
|
local QBCore = exports['qb-core']:GetCoreObject()
|
||
|
|
||
|
|
||
|
--==USEUABLE ITEMS==--
|
||
|
|
||
|
QBCore.Functions.CreateUseableItem('headbag', function(source)
|
||
|
local src = source
|
||
|
local Player = QBCore.Functions.GetPlayer(src)
|
||
|
|
||
|
local HasHeadbag = QBCore.Functions.HasItem(src, 'headbag')
|
||
|
if not HasHeadbag then return end
|
||
|
TriggerClientEvent('Crazy:Client:UseHeadBag', src)
|
||
|
end)
|
||
|
|
||
|
QBCore.Functions.CreateUseableItem('ziptie', function(source)
|
||
|
local src = source
|
||
|
local Player = QBCore.Functions.GetPlayer(src)
|
||
|
|
||
|
local HasZiptie = QBCore.Functions.HasItem(src, 'ziptie')
|
||
|
if not HasZiptie then return end
|
||
|
TriggerClientEvent('Crazy:Client:UseZiptie', src)
|
||
|
end)
|
||
|
--==END OF USEABLE ITEMS==--
|
||
|
|
||
|
|
||
|
--==ZIPTIE==--
|
||
|
|
||
|
RegisterNetEvent('Crazy:Server:ZiptiePlayer', function(playerId)
|
||
|
local src = source
|
||
|
local playerPed = GetPlayerPed(src)
|
||
|
local targetPed = GetPlayerPed(playerId)
|
||
|
local playerCoords = GetEntityCoords(playerPed)
|
||
|
local targetCoords = GetEntityCoords(targetPed)
|
||
|
local Player = QBCore.Functions.GetPlayer(src)
|
||
|
local ZiptiedPlayer = QBCore.Functions.GetPlayer(playerId)
|
||
|
local HasZiptie = QBCore.Functions.HasItem(src, 'ziptie')
|
||
|
|
||
|
if #(playerCoords - targetCoords) > 2.5 then return TriggerEvent("qb-log:server:CreateLog", "anticheat", "qb-zipties: Distance > 2.5", "orange", string.format("User: ** %s **\nIdentifier: ** %s **\nCitizenId: ** %s **\nServer Id: ** %s **", GetPlayerName(src), GetPlayerIdentifier(src, fivem), Player.PlayerData.citizenid, src)) end
|
||
|
|
||
|
if HasZiptie then
|
||
|
if Player.Functions.RemoveItem('ziptie', 1) then
|
||
|
TriggerClientEvent('inventory:client:ItemBox', src, QBCore.Shared.Items['ziptie'], 'remove')
|
||
|
TriggerClientEvent("Crazy:Client:GetZiptied", ZiptiedPlayer.PlayerData.source, Player.PlayerData.source)
|
||
|
end
|
||
|
end
|
||
|
end)
|
||
|
|
||
|
|
||
|
RegisterNetEvent('Crazy:Server:UnZiptie', function(TargetId)
|
||
|
local src = source
|
||
|
local Player = QBCore.Functions.GetPlayer(src)
|
||
|
local UnZiptiedPlayer = QBCore.Functions.GetPlayer(TargetId)
|
||
|
local PlayerPed = GetPlayerPed(src)
|
||
|
local TargetPed = GetPlayerPed(TargetId)
|
||
|
local uzpPos = GetEntityCoords(TargetPed)
|
||
|
local pPos = GetEntityCoords(PlayerPed)
|
||
|
local Distance = #(pPos - uzpPos)
|
||
|
local HasItems = QBCore.Functions.HasItem(src, Config.UnZipItems)
|
||
|
|
||
|
if Distance > 2.5 then return TriggerEvent("qb-log:server:CreateLog", "anticheat", "qb-zipties: Distance > 2.5", "orange", string.format("User: ** %s **\nIdentifier: ** %s **\nCitizenId: ** %s **\nServer Id: ** %s **", GetPlayerName(src), GetPlayerIdentifier(src, fivem), Player.PlayerData.citizenid, src)) end
|
||
|
if HasItems then
|
||
|
TriggerClientEvent('Crazy:Client:GetUnZiptied', UnZiptiedPlayer.PlayerData.source, Player.PlayerData.source)
|
||
|
end
|
||
|
end)
|
||
|
--==END OF ZIPTIE==--
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
--==BAG==--
|
||
|
|
||
|
RegisterNetEvent('Crazy:Server:PutBagOn', function(TargetId) -- (Good)
|
||
|
local src = source
|
||
|
local Player = QBCore.Functions.GetPlayer(src)
|
||
|
local Target = QBCore.Functions.GetPlayer(TargetId)
|
||
|
|
||
|
local PlayerPed = GetPlayerPed(src)
|
||
|
local TargetPed = GetPlayerPed(TargetId)
|
||
|
local TargetPedCoords = GetEntityCoords(TargetPed)
|
||
|
local PlayerPedCoords = GetEntityCoords(PlayerPed)
|
||
|
local Distance = #(PlayerPedCoords - TargetPedCoords)
|
||
|
|
||
|
if Distance > 2.5 then return end
|
||
|
local HasBag = QBCore.Functions.HasItem(src, 'headbag')
|
||
|
if HasBag then
|
||
|
if Player.Functions.RemoveItem('headbag', 1) then
|
||
|
TriggerClientEvent('inventory:client:ItemBox', src, QBCore.Shared.Items['headbag'], 'remove')
|
||
|
TriggerClientEvent('Crazy:Client:GetBagOnHead', Target.PlayerData.source, Player.PlayerData.source)
|
||
|
end
|
||
|
end
|
||
|
end)
|
||
|
|
||
|
RegisterNetEvent('Crazy:Server:BagOff', function(TargetId)
|
||
|
local src = source
|
||
|
local Player = QBCore.Functions.GetPlayer(src)
|
||
|
local Target = QBCore.Functions.GetPlayer(TargetId)
|
||
|
|
||
|
|
||
|
TriggerClientEvent('Crazy:Client:GetBagOff', Target.PlayerData.source, Player.PlayerData.source)
|
||
|
end)
|
||
|
--==END OF BAG==--
|