forked from Simnation/Main
166 lines
No EOL
5.7 KiB
Lua
166 lines
No EOL
5.7 KiB
Lua
function Notification(msg)
|
|
lib.notify({
|
|
title = 'Notification',
|
|
description = msg
|
|
})
|
|
end
|
|
|
|
function ExecuteAnimation(start)
|
|
ClearPedTasks(cache.ped)
|
|
|
|
for k, v in pairs(GetGamePool('CObject')) do
|
|
if IsEntityAttachedToEntity(cache.ped, v) then
|
|
DeleteObject(v)
|
|
DetachEntity(v, 0, 0)
|
|
SetEntityAsMissionEntity(v, true, true)
|
|
Wait(100)
|
|
DeleteEntity(v)
|
|
end
|
|
end
|
|
|
|
if start then
|
|
local prop = `prop_franklin_dl`
|
|
lib.requestModel(prop)
|
|
lib.requestAnimDict('paper_1_rcm_alt1-8')
|
|
if cardProp then
|
|
DeleteObject(cardProp)
|
|
DetachEntity(cardProp)
|
|
cardProp = nil
|
|
end
|
|
cardProp = CreateObject(prop, GetEntityCoords(cache.ped), true, true, true)
|
|
AttachEntityToEntity(cardProp, cache.ped, GetPedBoneIndex(cache.ped, 57005), 0.1000, 0.0200, -0.0300, -90.000, 170.000, 78.999, true, true, false, false, 1, true)
|
|
TaskPlayAnim(cache.ped, 'paper_1_rcm_alt1-8', 'player_one_dual-8', 5.0, 5.0, -1, 51, 0, false, false, false)
|
|
else
|
|
if IsEntityPlayingAnim(cache.ped, "paper_1_rcm_alt1-8", "player_one_dual-8", 3) then
|
|
ClearPedTasks(cache.ped)
|
|
end
|
|
if cardProp then
|
|
DeleteObject(cardProp)
|
|
DetachEntity(cardProp)
|
|
cardProp = nil
|
|
end
|
|
end
|
|
end
|
|
|
|
function onEnterZone()
|
|
lib.showTextUI('[E] Open')
|
|
end
|
|
|
|
function onExitZone()
|
|
lib.hideTextUI()
|
|
end
|
|
|
|
lib.callback.register('cs:identity:getClosestPlayer', function()
|
|
local nearPly = {}
|
|
local nearby = lib.getNearbyPlayers(GetEntityCoords(cache.ped), 2.0, true)
|
|
if #nearby == 0 then return end
|
|
for _, v in pairs(nearby) do
|
|
table.insert(nearPly, GetPlayerServerId(v.id))
|
|
end
|
|
return nearPly
|
|
end)
|
|
|
|
function capturePic(callback)
|
|
local WebhookAPI = lib.callback.await('cs:identity:fetchWebhookAPI', false)
|
|
if CodeStudio.IDPhotoMode.Save_Method == 'discord' then
|
|
exports['screenshot-basic']:requestScreenshotUpload(WebhookAPI, "files[]", function(uploadData)
|
|
local image = json.decode(uploadData)
|
|
callback(json.encode(image.attachments[1].proxy_url))
|
|
end)
|
|
elseif CodeStudio.IDPhotoMode.Save_Method == 'fivemanage' then
|
|
exports['screenshot-basic']:requestScreenshotUpload('https://api.fivemanage.com/api/image', 'image', {
|
|
headers = {
|
|
Authorization = WebhookAPI
|
|
}
|
|
}, function(data)
|
|
local resp = json.decode(data)
|
|
if resp then
|
|
callback(resp.url)
|
|
end
|
|
end)
|
|
elseif CodeStudio.IDPhotoMode.Save_Method == 'fivemerr' then
|
|
exports['screenshot-basic']:requestScreenshotUpload('https://api.fivemerr.com/v1/media/images', 'file', {
|
|
headers = {
|
|
Authorization = WebhookAPI
|
|
},
|
|
encoding = 'png'
|
|
}, function(data)
|
|
local resp = json.decode(data)
|
|
local link = (resp and resp.url) or 'invalid_url'
|
|
callback(link)
|
|
end)
|
|
end
|
|
end
|
|
|
|
CreateThread(function()
|
|
for _, coords in pairs(CodeStudio.FakeID.location) do
|
|
if CodeStudio.LocationSettings.useTextUI.Enable then
|
|
lib.zones.sphere({
|
|
coords = coords,
|
|
radius = 2.5,
|
|
debug = CodeStudio.Debug,
|
|
type = 'fakeID',
|
|
inside = insideZone,
|
|
onEnter = onEnterZone,
|
|
onExit = onExitZone
|
|
})
|
|
end
|
|
if CodeStudio.LocationSettings.useTarget.Enable then
|
|
if CodeStudio.LocationSettings.useTarget.Target == 'ox_target' then
|
|
exports.ox_target:addBoxZone({
|
|
name = "ultFakeMenu".._,
|
|
coords = coords,
|
|
size = vector3(2.0, 2.0, 2.0),
|
|
rotation = 45.0,
|
|
debug = CodeStudio.Debug,
|
|
options = {
|
|
{
|
|
onSelect = function()
|
|
openFakeIDCreator()
|
|
end,
|
|
icon = "fas fa-gear",
|
|
label = CodeStudio.Language.fake_id_menu
|
|
}
|
|
}
|
|
})
|
|
else
|
|
exports[CodeStudio.LocationSettings.useTarget.Target]:AddBoxZone("ultFakeMenu".._, coords, 2.0, 2.0, {
|
|
name = "ultFakeMenu".._,
|
|
debugPoly = CodeStudio.Debug,
|
|
}, {
|
|
options = {
|
|
{
|
|
action = function()
|
|
openFakeIDCreator()
|
|
end,
|
|
icon = "fas fa-gear",
|
|
label = CodeStudio.Language.fake_id_menu
|
|
},
|
|
},
|
|
distance = 2.5
|
|
})
|
|
end
|
|
end
|
|
end
|
|
end)
|
|
|
|
function openFakeIDCreator()
|
|
TriggerEvent('cs:identity:fakeCreator')
|
|
end
|
|
|
|
--Used in Green Screen Studio --
|
|
function DisableWeatherSync(disable) -- Add your weathersync events here
|
|
if disable then --Disable
|
|
if GetResourceState('cs_weather') == 'started' then
|
|
TriggerEvent('cs:weather:client:DisableSync')
|
|
return
|
|
end
|
|
TriggerEvent('qb-weathersync:client:DisableSync')
|
|
else --Enable
|
|
if GetResourceState('cs_weather') == 'started' then
|
|
TriggerEvent('cs:weather:client:DisableSync')
|
|
return
|
|
end
|
|
TriggerEvent('qb-weathersync:client:EnableSync')
|
|
end
|
|
end |