version '0.0.9'

This commit is contained in:
MrNewb committed 2025-01-08 10:49:21 -05:00
1 parent 4e28ee5793
commit ce4ea7fca5
8 files changed
+114 -60

No files matched your search

+1 -2
View File
@@ -3,7 +3,7 @@ game 'gta5'
lua54 'yes'
author 'The Order of the Sacred Framework'
description 'A bridge made for the community to use as a base for their own projects. This bridge will allow a single format to work with nearly all commonly used systems while still offering expandability.'
version '0.0.8'
version '0.0.9'
shared_scripts {
'settings/sharedConfig.lua',
@@ -42,7 +42,6 @@ client_scripts {
'modules/progressbars/**/client.lua',
'modules/clothing/**/client.lua',
'modules/weather/**/client.lua',
'modules/points/*.lua',
'modules/math/*.lua',
'init.lua',
}
+23 -19
View File
@@ -24,25 +24,10 @@ Bridge.Table = Table
Bridge.Math = Math
Bridge.Clothing = Clothing
Bridge.Progressbar = Progressbar
Bridge.Helper = Helper
Bridge.Utility = Utility
Bridge.Prints = Prints
Bridge.Table = Table
-- Fill the bridge tables with player data.
function FillBridgeTables()
PlayerLoaded = true
PlayerIdentifier = Framework.GetPlayerIdentifier()
PlayerJobName, PlayerJobLabel, PlayerJobGradeName, PlayerJobGradeLevel = Framework.GetPlayerJob()
end
-- Clean the bridge tables.
function ClearClientSideVariables()
PlayerLoaded = false
PlayerIdentifier = nil
PlayerJobName = nil
PlayerJobLabel = nil
PlayerJobGradeName = nil
PlayerJobGradeLevel = nil
StoredOldClothing = {}
end
CreateThread(function()
for k, v in pairs(Bridge) do
@@ -85,4 +70,23 @@ exports('RegisterCompatibility', RegisterCompatibility)
exports('Bridge', function()
return Bridge
end)
end)
if IsDuplicityVersion() then return end
function FillBridgeTables()
PlayerLoaded = true
PlayerIdentifier = Framework.GetPlayerIdentifier()
PlayerJobName, PlayerJobLabel, PlayerJobGradeName, PlayerJobGradeLevel = Framework.GetPlayerJob()
end
-- Clean the bridge tables.
function ClearClientSideVariables()
PlayerLoaded = false
PlayerIdentifier = nil
PlayerJobName = nil
PlayerJobLabel = nil
PlayerJobGradeName = nil
PlayerJobGradeLevel = nil
StoredOldClothing = {}
end
+1 -1
View File
@@ -4,7 +4,7 @@ Dispatch = {}
Dispatch.SendAlert = function(data)
local playerData = exports['cd_dispatch']:GetPlayerInfo()
local randomID = Bridge.Helper.RandomString()
local randomID = Utility.CreateUniqueId(nil, 14, nil)
TriggerServerEvent('cd_dispatch:AddNotification', {
job_table = data.job,
coords = data.coords or playerData.coords,
-37
View File
@@ -1,37 +0,0 @@
Points = {}
local ActivePoints = {}
Points.RegisterPoint = function(pointCoords, pointDistance, pointOnEnter, pointOnExit)
local enterZone = lib.points.new({
coords = pointCoords,
distance = pointDistance,
onEnter = function(self)
pointOnEnter(self)
end,
onExit = function(self)
pointOnExit(self)
end,
})
local pointID = Ids.CreateUniqueId(nil, 5, nil)
ActivePoints[pointID] = enterZone
return enterZone, pointID
end
-- Function to retrieve the enterZone using pointID
Points.GetPointById = function(pointID)
return ActivePoints[pointID]
end
Points.RemovePoint = function(pointID)
local point = ActivePoints[pointID]
if point then
print("Removing point with ID " .. pointID)
point:remove() -- Call the remove method on the point (ensure this method stops all event listeners)
ActivePoints[pointID] = nil -- Remove from ActivePoints table
print("Point removed successfully.")
return true
else
print("Point with ID " .. pointID .. " not found.")
return false
end
end
@@ -1,3 +1,5 @@
Utility = Utility or {}
local activePlacementProp = nil
lib.locale()
@@ -1,6 +1,7 @@
Utility = {}
Utility = Utility or {}
local blipIDs = {}
local spawnedPeds = {}
local ActivePoints = {}
lib.locale()
Utility.CreateVehicle = function(model, coords, heading, networked)
@@ -228,6 +229,42 @@ Utility.GetClosestPlayer = function(coords, distanceScope, includeMe)
return closestPlayer, closestDistance, GetPlayerServerId(closestPlayer)
end
-- register points
Utility.RegisterPoint = function(pointCoords, pointDistance, pointOnEnter, pointOnExit)
local enterZone = lib.points.new({
coords = pointCoords,
distance = pointDistance,
onEnter = function(self)
pointOnEnter(self)
end,
onExit = function(self)
pointOnExit(self)
end,
})
local pointID = Utility.CreateUniqueId(nil, 5, nil)
ActivePoints[pointID] = enterZone
return enterZone, pointID
end
-- Function to retrieve the enterZone using pointID
Utility.GetPointById = function(pointID)
return ActivePoints[pointID]
end
Utility.RemovePoint = function(pointID)
local point = ActivePoints[pointID]
if point then
--print("Removing point with ID " .. pointID)
point:remove() -- Call the remove method on the point (ensure this method stops all event listeners)
ActivePoints[pointID] = nil -- Remove from ActivePoints table
--print("Point removed successfully.")
return true
else
--print("Point with ID " .. pointID .. " not found.")
return false
end
end
AddEventHandler('onResourceStop', function(resource)
if resource == GetCurrentResourceName() then
for _, blip in pairs(blipIDs) do
+24
View File
@@ -0,0 +1,24 @@
Prints = Prints or {}
local function printMessage(level, color, message)
if type(message) == 'table' then
message = json.encode(message)
end
print(color .. '[' .. level .. ']:', message)
end
Prints.info = function(message)
printMessage('INFO', '^5', message)
end
Prints.warn = function(message)
printMessage('WARN', '^3', message)
end
Prints.error = function(message)
printMessage('ERROR', '^1', message)
end
Prints.debug = function(message)
printMessage('DEBUG', '^2', message)
end
+25
View File
@@ -0,0 +1,25 @@
Utility = Utility or {}
-- for unique ids
Utility.CreateUniqueId = function(tbl, len, pattern) -- both optional
tbl = tbl or {} -- table to check uniqueness. Ids to check against must be the key to the tables value
len = len or 8
local id = ""
for i = 1, len do
local char = ""
if pattern then
char = pattern:sub(math.random(1, #pattern), math.random(1, #pattern))
else
char = math.random(1, 2) == 1 and string.char(math.random(65, 90)) or math.random(0, 9) -- CAP letter and number
end
id = id .. char
end
if tbl[id] then
return Utility.CreateUniqueId(tbl, len, pattern)
end
return id
end
Utility.RandomString = function()
return Utility.CreateUniqueId(nil, 14, nil)
end