diff --git a/ND_ATMs/source/client.lua b/ND_ATMs/source/client.lua
index d02edf2..7703070 100644
--- a/ND_ATMs/source/client.lua
+++ b/ND_ATMs/source/client.lua
@@ -36,7 +36,7 @@ end
-- Hide/Show ui
function SetDisplay(bool)
- local selectedCharacter = NDCore.functions:getSelectedCharacter()
+ local selectedCharacter = NDCore.Functions.GetSelectedCharacter()
display = bool
SetNuiFocus(bool, bool)
SendNUIMessage({
@@ -134,7 +134,7 @@ end)
RegisterNetEvent("ND_ATMs:update")
AddEventHandler("ND_ATMs:update", function(status)
Citizen.Wait(1000)
- local selectedCharacter = NDCore.functions:getSelectedCharacter()
+ local selectedCharacter = NDCore.Functions.GetSelectedCharacter()
SendNUIMessage({
balance = "Account Balance: $" .. selectedCharacter.bank .. ".00",
success = status
diff --git a/ND_ATMs/source/server.lua b/ND_ATMs/source/server.lua
index 35748c8..e75a446 100644
--- a/ND_ATMs/source/server.lua
+++ b/ND_ATMs/source/server.lua
@@ -1,16 +1,16 @@
NDCore = exports["ND_Core"]:GetCoreObject()
-NDCore.functions:versionChecker("ND_ATMs", GetCurrentResourceName(), "https://github.com/Andyyy7666/ND_Framework", "https://raw.githubusercontent.com/Andyyy7666/ND_Framework/main/ND_ATMs/fxmanifest.lua")
+NDCore.Functions.VersionChecker("ND_ATMs", GetCurrentResourceName(), "https://github.com/Andyyy7666/ND_Framework", "https://raw.githubusercontent.com/Andyyy7666/ND_Framework/main/ND_ATMs/fxmanifest.lua")
RegisterNetEvent("ND_ATMs:withdraw")
AddEventHandler("ND_ATMs:withdraw", function(amount)
local player = source
- local update = NDCore.functions:withdrawMoney(amount, player)
+ local update = NDCore.Functions.WithdrawMoney(amount, player)
TriggerClientEvent("ND_ATMs:update", player, update)
end)
RegisterNetEvent("ND_ATMs:deposit")
AddEventHandler("ND_ATMs:deposit", function(amount)
local player = source
- local update = NDCore.functions:depositMoney(amount, player)
+ local update = NDCore.Functions.DepositMoney(amount, player)
TriggerClientEvent("ND_ATMs:update", player, update)
end)
\ No newline at end of file
diff --git a/ND_Banks/source/client.lua b/ND_Banks/source/client.lua
index 5c9ca2e..fc381f6 100644
--- a/ND_Banks/source/client.lua
+++ b/ND_Banks/source/client.lua
@@ -39,7 +39,7 @@ end
-- Hide/Show ui
function SetDisplay(bool)
- local selectedCharacter = NDCore.functions:getSelectedCharacter()
+ local selectedCharacter = NDCore.Functions.GetSelectedCharacter()
display = bool
SetNuiFocus(bool, bool)
SendNUIMessage({
@@ -146,7 +146,7 @@ end)
RegisterNetEvent("ND_Banks:update")
AddEventHandler("ND_Banks:update", function(status)
Citizen.Wait(1000)
- local selectedCharacter = NDCore.functions:getSelectedCharacter()
+ local selectedCharacter = NDCore.Functions.GetSelectedCharacter()
SendNUIMessage({
balance = "Account Balance: $" .. selectedCharacter.bank .. ".00",
success = status
diff --git a/ND_Banks/source/server.lua b/ND_Banks/source/server.lua
index f436442..3dd4723 100644
--- a/ND_Banks/source/server.lua
+++ b/ND_Banks/source/server.lua
@@ -1,23 +1,23 @@
NDCore = exports["ND_Core"]:GetCoreObject()
-NDCore.functions:versionChecker("ND_Banks", GetCurrentResourceName(), "https://github.com/Andyyy7666/ND_Framework", "https://raw.githubusercontent.com/Andyyy7666/ND_Framework/main/ND_Banks/fxmanifest.lua")
+NDCore.Functions.VersionChecker("ND_Banks", GetCurrentResourceName(), "https://github.com/Andyyy7666/ND_Framework", "https://raw.githubusercontent.com/Andyyy7666/ND_Framework/main/ND_Banks/fxmanifest.lua")
RegisterNetEvent("ND_Banks:withdraw")
AddEventHandler("ND_Banks:withdraw", function(amount)
local player = source
- local update = NDCore.functions:withdrawMoney(amount, player)
+ local update = NDCore.Functions.WithdrawMoney(amount, player)
TriggerClientEvent("ND_Banks:update", player, update)
end)
RegisterNetEvent("ND_Banks:deposit")
AddEventHandler("ND_Banks:deposit", function(amount)
local player = source
- local update = NDCore.functions:depositMoney(amount, player)
+ local update = NDCore.Functions.DepositMoney(amount, player)
TriggerClientEvent("ND_Banks:update", player, update)
end)
RegisterNetEvent("ND_Banks:transfer")
AddEventHandler("ND_Banks:transfer", function(amount, target)
local player = source
- local update = NDCore.functions:transferBank(amount, player, target)
+ local update = NDCore.Functions.TransferBank(amount, player, target)
TriggerClientEvent("ND_Banks:update", player, update)
end)
\ No newline at end of file
diff --git a/ND_CharacterSelection/source/client.lua b/ND_CharacterSelection/source/client.lua
index f6eaa93..00d27cd 100644
--- a/ND_CharacterSelection/source/client.lua
+++ b/ND_CharacterSelection/source/client.lua
@@ -19,8 +19,8 @@ function SetDisplay(bool, typeName, bg)
type = typeName,
background = background,
status = bool,
- serverName = NDCore.config.serverName,
- characterAmount = tablelength(NDCore.characters) .. "/" .. NDCore.config.characterLimit
+ serverName = NDCore.Config.serverName,
+ characterAmount = tablelength(NDCore.characters) .. "/" .. NDCore.Config.characterLimit
})
if config.characterSelectionAopDisplay then
SendNUIMessage({
@@ -32,7 +32,7 @@ end
function start(switch)
TriggerServerEvent("ND_CharacterSelection:checkPerms")
- TriggerServerEvent("ND:getCharacters")
+ TriggerServerEvent("ND:GetCharacters")
if switch then
local ped = PlayerPedId()
SwitchOutPlayer(ped, 0, 1)
@@ -41,8 +41,8 @@ function start(switch)
end
SendNUIMessage({
type = "onStart",
- maxStartingBank = NDCore.config.startingBank,
- maxStartingCash = NDCore.config.startingCash
+ maxStartingBank = NDCore.Config.startingBank,
+ maxStartingCash = NDCore.Config.startingCash
})
if config.characterSelectionAopDisplay then
SendNUIMessage({
@@ -100,10 +100,10 @@ end)
-- Selecting a player from the iu.
RegisterNUICallback("setMainCharacter", function(data)
- NDCore.functions:getCharacters(function(characters)
- NDCore.selectedCharacter = characters[data.id]
+ NDCore.Functions.GetCharacters(function(characters)
+ NDCore.SelectedCharacter = characters[data.id]
end)
- for _, spawn in pairs(config.spawns[NDCore.selectedCharacter.job]) do
+ for _, spawn in pairs(config.spawns[NDCore.SelectedCharacter.job]) do
SendNUIMessage({
type = "setSpawns",
x = spawn.x,
@@ -112,12 +112,12 @@ RegisterNUICallback("setMainCharacter", function(data)
name = spawn.name
})
end
- TriggerServerEvent("ND:setCharacterOnline", NDCore.selectedCharacter.id)
+ TriggerServerEvent("ND:setCharacterOnline", NDCore.SelectedCharacter.id)
end)
-- Creating a character from the ui.
RegisterNUICallback("newCharacter", function(data)
- if tablelength(NDCore.characters) < NDCore.config.characterLimit then
+ if tablelength(NDCore.characters) < NDCore.Config.characterLimit then
TriggerServerEvent("ND_CharacterSelection:newCharacter", {
firstName = data.firstName,
lastName = data.lastName,
diff --git a/ND_CharacterSelection/source/server.lua b/ND_CharacterSelection/source/server.lua
index 6f24f5a..6674cb8 100644
--- a/ND_CharacterSelection/source/server.lua
+++ b/ND_CharacterSelection/source/server.lua
@@ -5,8 +5,8 @@ NDCore = exports["ND_Core"]:GetCoreObject()
function validateDepartment(player, department)
local departmentExists = config.departments[department]
if departmentExists then
- local discordUserId = string.gsub(NDCore.functions:GetPlayerIdentifierFromType("discord", player), "discord:", "")
- local roles = NDCore.functions:getUserDiscordInfo(discordUserId).roles
+ local discordUserId = string.gsub(NDCore.Functions.GetPlayerIdentifierFromType("discord", player), "discord:", "")
+ local roles = NDCore.Functions.GetUserDiscordInfo(discordUserId).roles
-- validate that the player actually has the role that they selected on the client.
for _, roleId in pairs(departmentExists) do
@@ -28,7 +28,7 @@ AddEventHandler("ND_CharacterSelection:newCharacter", function(newCharacter)
if not departmentCheck then return end
-- Create the character if the player has permission to the department.
- NDCore.functions:createCharacter(player, newCharacter.firstName, newCharacter.lastName, newCharacter.dob, newCharacter.gender, newCharacter.twt, newCharacter.job, newCharacter.cash, newCharacter.bank)
+ NDCore.Functions.CreateCharacter(player, newCharacter.firstName, newCharacter.lastName, newCharacter.dob, newCharacter.gender, newCharacter.twt, newCharacter.job, newCharacter.cash, newCharacter.bank)
end)
-- Update the character info when edited.
@@ -41,18 +41,18 @@ AddEventHandler("ND_CharacterSelection:editCharacter", function(newCharacter)
if not departmentCheck then return end
-- Updating the character information in the database.
- NDCore.functions:updateCharacterData(newCharacter.id, newCharacter.firstName, newCharacter.lastName, newCharacter.dob, newCharacter.gender, newCharacter.twt, newCharacter.job)
+ NDCore.Functions.UpdateCharacterData(newCharacter.id, newCharacter.firstName, newCharacter.lastName, newCharacter.dob, newCharacter.gender, newCharacter.twt, newCharacter.job)
-- Updating characters on the client.
- TriggerClientEvent("ND:returnCharacters", player, NDCore.functions:getPlayerCharacters(player))
+ TriggerClientEvent("ND:returnCharacters", player, NDCore.Functions.GetPlayerCharacters(player))
end)
RegisterNetEvent("ND_CharacterSelection:checkPerms")
AddEventHandler("ND_CharacterSelection:checkPerms", function()
local player = source
- local discordUserId = string.gsub(NDCore.functions:GetPlayerIdentifierFromType("discord", player), "discord:", "")
+ local discordUserId = string.gsub(NDCore.Functions.GetPlayerIdentifierFromType("discord", player), "discord:", "")
local allowedRoles = {}
- local roles = NDCore.functions:getUserDiscordInfo(discordUserId).roles
+ local roles = NDCore.Functions.GetUserDiscordInfo(discordUserId).roles
-- Check if the players discord roles will grant them permission to the department.
for dept, roleTable in pairs(config.departments) do
diff --git a/ND_Chat/fxmanifest.lua b/ND_Chat/fxmanifest.lua
index bc33f9e..5d7cd71 100644
--- a/ND_Chat/fxmanifest.lua
+++ b/ND_Chat/fxmanifest.lua
@@ -1,7 +1,7 @@
-- For support join my discord: https://discord.gg/Z9Mxu72zZ6
author "Andyyy#7666"
description "ND Chat commands"
-version "2.0.0"
+version "2.1.0"
fx_version "cerulean"
game "gta5"
diff --git a/ND_Chat/source/client.lua b/ND_Chat/source/client.lua
index 3304bd7..90be073 100644
--- a/ND_Chat/source/client.lua
+++ b/ND_Chat/source/client.lua
@@ -1,3 +1,5 @@
+NDCore = exports["ND_Core"]:GetCoreObject()
+
if config["/me"] then
TriggerEvent("chat:addSuggestion", "/me", "Send message in the third person (Proximity).", {{ name="Action", help="Describe your action."}})
end
@@ -21,9 +23,12 @@ end
if config["/911"].enabled then
RegisterNetEvent("ND_Chat:911")
AddEventHandler("ND_Chat:911", function(coords, callDescription)
- local selectedCharacter = exports["ND_Core"]:getCharacterInfo()
+ local selectedCharacter
+ NDCore.Functions.GetSelectedCharacter(function(character)
+ selectedCharacter = character
+ end)
for _, department in pairs(config["/911"].callTo) do
- if selectedCharacter.department == department then
+ if selectedCharacter.job == department then
local location = GetStreetNameFromHashKey(GetStreetNameAtCoord(coords.x, coords.y, coords.z))
TriggerEvent("chat:addMessage", {
color = {255, 0, 0},
diff --git a/ND_Chat/source/server.lua b/ND_Chat/source/server.lua
index 485e1f3..804d6b9 100644
--- a/ND_Chat/source/server.lua
+++ b/ND_Chat/source/server.lua
@@ -1,7 +1,10 @@
+NDCore = exports["ND_Core"]:GetCoreObject()
+NDCore.Functions.VersionChecker("ND_Chat", GetCurrentResourceName(), "https://github.com/Andyyy7666/ND_Framework", "https://raw.githubusercontent.com/Andyyy7666/ND_Framework/main/ND_Chat/fxmanifest.lua")
+
if config["/me"] then
RegisterCommand("me", function(source, args, rawCommand)
local player = source
- local players = exports["ND_Core"]:getCharacterTable()
+ local players = NDCore.Functions.GetPlayers()
local playerCoords = GetEntityCoords(GetPlayerPed(player))
for serverPlayer, _ in pairs(players) do
local targetCoords = GetEntityCoords(GetPlayerPed(serverPlayer))
@@ -18,7 +21,7 @@ end
if config["/gme"] then
RegisterCommand("gme", function(source, args, rawCommand)
local player = source
- local players = exports["ND_Core"]:getCharacterTable()
+ local players = NDCore.Functions.GetPlayers()
TriggerClientEvent("chat:addMessage", -1, {
color = {255, 0, 0},
args = {"^*GME | ^0" .. players[player].firstName .. " " .. players[player].lastName .. " (#" .. player .. ")", table.concat(args, " ")}
@@ -39,7 +42,7 @@ end
if config["/twt"] then
RegisterCommand("twt", function(source, args, rawCommand)
local player = source
- local players = exports["ND_Core"]:getCharacterTable()
+ local players = NDCore.Functions.GetPlayers()
TriggerClientEvent("chat:addMessage", -1, {
template = " {0}: {1}",
multiline = true,
@@ -50,17 +53,17 @@ end
function hasDarkWebPermission(player, players, args)
for _, department in pairs(config["/darkweb"].canNotSee) do
- if players[player].dept == department then
+ if players[player].job == department then
TriggerClientEvent("chat:addMessage", player, {
color = {255, 0, 0},
- args = {"^*Error", players[player].dept .. " cannot access this command."}
+ args = {"^*Error", players[player].job .. " cannot access this command."}
})
return false
end
end
for serverPlayer, playerInfo in pairs(players) do
for _, department in pairs(config["/darkweb"].canNotSee) do
- if playerInfo.dept == department then
+ if playerInfo.job == department then
return false
end
end
@@ -74,7 +77,7 @@ end
if config["/darkweb"].enabled then
RegisterCommand("darkweb", function(source, args, rawCommand)
local player = source
- local players = exports["ND_Core"]:getCharacterTable()
+ local players = NDCore.Functions.GetPlayers()
hasDarkWebPermission(player, players, args)
end, false)
end
diff --git a/ND_Core/client/main.lua b/ND_Core/client/main.lua
index 17f38d3..0eed6c5 100644
--- a/ND_Core/client/main.lua
+++ b/ND_Core/client/main.lua
@@ -1,22 +1,22 @@
-- For support join my discord: https://discord.gg/Z9Mxu72zZ6
NDCore = {}
-NDCore.selectedCharacter = nil
+NDCore.SelectedCharacter = nil
NDCore.characters = {}
-NDCore.functions = {}
-NDCore.config = config
+NDCore.Functions = {}
+NDCore.Config = config
function GetCoreObject()
return NDCore
end
-function NDCore.functions:getSelectedCharacter(cb)
- if not cb then return NDCore.selectedCharacter end
- cb(NDCore.selectedCharacter)
+function NDCore.Functions.GetSelectedCharacter(cb)
+ if not cb then return NDCore.SelectedCharacter end
+ cb(NDCore.SelectedCharacter)
end
-function NDCore.functions:getCharacters(cb)
- if not cb then return NDCore.selectedCharacter end
+function NDCore.Functions.GetCharacters(cb)
+ if not cb then return NDCore.SelectedCharacter end
cb(NDCore.characters)
end
@@ -25,12 +25,12 @@ if config.enableRichPrecence then
Citizen.CreateThread(function()
SetDiscordAppId(config.appId)
while true do
- if NDCore.selectedCharacter then
- SetRichPresence(" Playing : " .. config.serverName .. " as " .. NDCore.selectedCharacter.firstName .. " " .. NDCore.selectedCharacter.lastName)
+ if NDCore.SelectedCharacter then
+ SetRichPresence(" Playing : " .. config.serverName .. " as " .. NDCore.SelectedCharacter.firstName .. " " .. NDCore.SelectedCharacter.lastName)
SetDiscordRichPresenceAsset(config.largeLogo)
SetDiscordRichPresenceAssetText("Playing: " .. config.serverName)
SetDiscordRichPresenceAssetSmall(config.smallLogo)
- SetDiscordRichPresenceAssetSmallText("Playing as: " .. NDCore.selectedCharacter.firstName .. " " .. NDCore.selectedCharacter.lastName)
+ SetDiscordRichPresenceAssetSmallText("Playing as: " .. NDCore.SelectedCharacter.firstName .. " " .. NDCore.SelectedCharacter.lastName)
SetDiscordRichPresenceAction(0, config.firstButtonName, config.firstButtonLink)
SetDiscordRichPresenceAction(1, config.secondButtonName, config.secondButtonLink)
end
@@ -44,13 +44,13 @@ if config.customPauseMenu then
Citizen.CreateThread(function()
while true do
Citizen.Wait(0)
- if NDCore.selectedCharacter then
+ if NDCore.SelectedCharacter then
if IsPauseMenuActive() then
BeginScaleformMovieMethodOnFrontendHeader("SET_HEADING_DETAILS")
AddTextEntry("FE_THDR_GTAO", config.serverName)
- ScaleformMovieMethodAddParamPlayerNameString(NDCore.selectedCharacter.firstName .. " " .. NDCore.selectedCharacter.lastName)
- PushScaleformMovieFunctionParameterString("Cash: $" .. tostring(NDCore.selectedCharacter.cash))
- PushScaleformMovieFunctionParameterString("Bank: $" .. tostring(NDCore.selectedCharacter.bank))
+ ScaleformMovieMethodAddParamPlayerNameString(NDCore.SelectedCharacter.firstName .. " " .. NDCore.SelectedCharacter.lastName)
+ PushScaleformMovieFunctionParameterString("Cash: $" .. tostring(NDCore.SelectedCharacter.cash))
+ PushScaleformMovieFunctionParameterString("Bank: $" .. tostring(NDCore.SelectedCharacter.bank))
EndScaleformMovieMethod()
end
end
@@ -66,13 +66,13 @@ end)
-- updates the money on the client.
RegisterNetEvent("ND:updateMoney")
AddEventHandler("ND:updateMoney", function(cash, bank)
- NDCore.selectedCharacter.cash = cash
- NDCore.selectedCharacter.bank = bank
+ NDCore.SelectedCharacter.cash = cash
+ NDCore.SelectedCharacter.bank = bank
end)
RegisterNetEvent("ND:setCharacter")
AddEventHandler("ND:setCharacter", function(character)
- NDCore.selectedCharacter = character
+ NDCore.SelectedCharacter = character
end)
-- Enables pvp if it's selected in the config.
diff --git a/ND_Core/server/events.lua b/ND_Core/server/events.lua
index 1081bf0..e83c97b 100644
--- a/ND_Core/server/events.lua
+++ b/ND_Core/server/events.lua
@@ -1,49 +1,43 @@
-- For support join my discord: https://discord.gg/Z9Mxu72zZ6
-- Getting all the characters the player has and returning them to the client.
-RegisterNetEvent("ND:getCharacters")
-AddEventHandler("ND:getCharacters", function()
+RegisterNetEvent("ND:GetCharacters", function()
local player = source
- TriggerClientEvent("ND:returnCharacters", player, NDCore.functions:getPlayerCharacters(player))
+ TriggerClientEvent("ND:returnCharacters", player, NDCore.Functions.GetPlayerCharacters(player))
end)
-- Creating a new character.
-RegisterNetEvent("ND:newCharacter")
-AddEventHandler("ND:newCharacter", function(newCharacter)
+RegisterNetEvent("ND:newCharacter", function(newCharacter)
local player = source
- NDCore.functions:createCharacter(player, newCharacter.firstName, newCharacter.lastName, newCharacter.dob, newCharacter.gender, newCharacter.twt, newCharacter.job, newCharacter.cash, newCharacter.bank)
+ NDCore.Functions.CreateCharacter(player, newCharacter.firstName, newCharacter.lastName, newCharacter.dob, newCharacter.gender, newCharacter.twt, newCharacter.job, newCharacter.cash, newCharacter.bank)
end)
-- Update the character info when edited.
-RegisterNetEvent("ND:editCharacter")
-AddEventHandler("ND:editCharacter", function(newCharacter)
+RegisterNetEvent("ND:editCharacter", function(newCharacter)
local player = source
- NDCore.functions:updateCharacterData(newCharacter.id, newCharacter.firstName, newCharacter.lastName, newCharacter.dob, newCharacter.gender, newCharacter.twt, newCharacter.job)
+ NDCore.Functions.UpdateCharacterData(newCharacter.id, newCharacter.firstName, newCharacter.lastName, newCharacter.dob, newCharacter.gender, newCharacter.twt, newCharacter.job)
end)
-- Delete character from database.
-RegisterNetEvent("ND:deleteCharacter")
-AddEventHandler("ND:deleteCharacter", function(characterId)
+RegisterNetEvent("ND:deleteCharacter", function(characterId)
local player = source
- NDCore.functions:deleteCharacter(characterId)
+ NDCore.Functions.DeleteCharacter(characterId)
end)
-- add a player to the table.
-RegisterNetEvent("ND:setCharacterOnline")
-AddEventHandler("ND:setCharacterOnline", function(id)
+RegisterNetEvent("ND:setCharacterOnline", function(id)
local player = source
- NDCore.functions:setActiveCharacter(player, id)
+ NDCore.Functions.SetActiveCharacter(player, id)
end)
-- Disconnecting a player
-RegisterNetEvent("ND:exitGame")
-AddEventHandler("ND:exitGame", function()
+RegisterNetEvent("ND:exitGame", function()
local player = source
DropPlayer(player, "Disconnected.")
end)
--- Remove player from NDCore.players table when they leave.
+-- Remove player from NDCore.Players table when they leave.
AddEventHandler("playerDropped", function()
local player = source
- NDCore.players[player] = nil
+ NDCore.Players[player] = nil
end)
\ No newline at end of file
diff --git a/ND_Core/server/functions.lua b/ND_Core/server/functions.lua
index a18af07..f1540e7 100644
--- a/ND_Core/server/functions.lua
+++ b/ND_Core/server/functions.lua
@@ -1,13 +1,13 @@
-- For support join my discord: https://discord.gg/Z9Mxu72zZ6
-- Callback to update each selected character on the server.
-function NDCore.functions:getPlayers(players)
- if not cb then return NDCore.players end
- cb(NDCore.players)
+function NDCore.Functions.GetPlayers(players)
+ if not cb then return NDCore.Players end
+ cb(NDCore.Players)
end
-- Used to retrive the players discord server nickname, discord name and tag, and the roles.
-function NDCore.functions:getUserDiscordInfo(discordUserId)
+function NDCore.Functions.GetUserDiscordInfo(discordUserId)
local data
PerformHttpRequest("https://discordapp.com/api/guilds/" .. server_config.guildId .. "/members/" .. discordUserId, function(errorCode, resultData, resultHeaders)
if errorCode ~= 200 then
@@ -32,7 +32,7 @@ function NDCore.functions:getUserDiscordInfo(discordUserId)
end
-- Get player any identifier, available types: steam, license, xbl, ip, discord, live.
-function NDCore.functions:GetPlayerIdentifierFromType(type, player)
+function NDCore.Functions.GetPlayerIdentifierFromType(type, player)
local identifierCount = GetNumPlayerIdentifiers(player)
for count = 0, identifierCount do
local identifier = GetPlayerIdentifier(player, count)
@@ -44,9 +44,9 @@ function NDCore.functions:GetPlayerIdentifierFromType(type, player)
end
-- This will return the server id and ND player data of a nearby player.
-function NDCore.functions:getNearbyPedToPlayer(player)
+function NDCore.Functions.GetNearbyPedToPlayer(player)
local pedCoords = GetEntityCoords(GetPlayerPed(player))
- for targetId, targetInfo in pairs(NDCore.players) do
+ for targetId, targetInfo in pairs(NDCore.Players) do
local targetCoords = GetEntityCoords(GetPlayerPed(targetId))
if #(pedCoords - targetCoords) < 2.0 and targetId ~= player then
return targetId, targetInfo
@@ -55,21 +55,21 @@ function NDCore.functions:getNearbyPedToPlayer(player)
end
-- update the players money on the client kinda like a refresh.
-function NDCore.functions:updateMoney(player)
+function NDCore.Functions.UpdateMoney(player)
local player = tonumber(player)
- MySQL.query("SELECT cash, bank FROM characters WHERE character_id = ?", {NDCore.players[player].id}, function(result)
+ MySQL.query("SELECT cash, bank FROM characters WHERE character_id = ?", {NDCore.Players[player].id}, function(result)
if result then
local cash = result[1].cash
local bank = result[1].bank
- NDCore.players[player].cash = cash
- NDCore.players[player].bank = bank
+ NDCore.Players[player].cash = cash
+ NDCore.Players[player].bank = bank
TriggerClientEvent("ND:updateMoney", player, cash, bank)
end
end)
end
-- Transfer money from one players bank account to another.
-function NDCore.functions:transferBank(amount, player, target)
+function NDCore.Functions.TransferBank(amount, player, target)
local amount = tonumber(amount)
local player = tonumber(player)
local target = tonumber(target)
@@ -91,27 +91,27 @@ function NDCore.functions:transferBank(amount, player, target)
args = {"Error", "You can't send that amount."}
})
return false
- elseif NDCore.players[player].bank < amount then
+ elseif NDCore.Players[player].bank < amount then
TriggerClientEvent("chat:addMessage", player, {
color = {255, 0, 0},
args = {"Error", "You don't have enough money."}
})
return false
else
- MySQL.query.await("UPDATE characters SET bank = bank - ? WHERE character_id = ?", {amount, NDCore.players[player].id})
- NDCore.functions:updateMoney(player)
- MySQL.query.await("UPDATE characters SET bank = bank + ? WHERE character_id = ?", {amount, NDCore.players[target].id})
- NDCore.functions:updateMoney(target)
+ MySQL.query.await("UPDATE characters SET bank = bank - ? WHERE character_id = ?", {amount, NDCore.Players[player].id})
+ NDCore.Functions.UpdateMoney(player)
+ MySQL.query.await("UPDATE characters SET bank = bank + ? WHERE character_id = ?", {amount, NDCore.Players[target].id})
+ NDCore.Functions.UpdateMoney(target)
TriggerClientEvent("chat:addMessage", player, {
color = {0, 255, 0},
- args = {"Success", "You paid " .. NDCore.players[target].firstName .. " " .. NDCore.players[target].lastName .. " $" .. amount .. "."}
+ args = {"Success", "You paid " .. NDCore.Players[target].firstName .. " " .. NDCore.Players[target].lastName .. " $" .. amount .. "."}
})
return true
end
end
-- Give cash from one players wallet to another.
-function NDCore.functions:giveCash(amount, player, target)
+function NDCore.Functions.GiveCash(amount, player, target)
local amount = tonumber(amount)
local player = tonumber(player)
local target = tonumber(target)
@@ -133,30 +133,30 @@ function NDCore.functions:giveCash(amount, player, target)
args = {"Error", "You can't give that amount."}
})
return false
- elseif NDCore.players[player].cash < amount then
+ elseif NDCore.Players[player].cash < amount then
TriggerClientEvent("chat:addMessage", player, {
color = {255, 0, 0},
args = {"Error", "You don't have enough money."}
})
return false
else
- MySQL.query.await("UPDATE characters SET cash = cash - ? WHERE character_id = ?", {amount, NDCore.players[player].id})
- NDCore.functions:updateMoney(player)
- MySQL.query.await("UPDATE characters SET cash = cash + ? WHERE character_id = ?", {amount, NDCore.players[target].id})
- NDCore.functions:updateMoney(target)
+ MySQL.query.await("UPDATE characters SET cash = cash - ? WHERE character_id = ?", {amount, NDCore.Players[player].id})
+ NDCore.Functions.UpdateMoney(player)
+ MySQL.query.await("UPDATE characters SET cash = cash + ? WHERE character_id = ?", {amount, NDCore.Players[target].id})
+ NDCore.Functions.UpdateMoney(target)
TriggerClientEvent("chat:addMessage", player, {
color = {0, 255, 0},
- args = {"Success", "You gave " .. NDCore.players[target].firstName .. " " .. NDCore.players[target].lastName .. " $" .. amount .. "."}
+ args = {"Success", "You gave " .. NDCore.Players[target].firstName .. " " .. NDCore.Players[target].lastName .. " $" .. amount .. "."}
})
return true
end
end
-- Give money from a players wallet to a nearby player.
-function NDCore.functions:giveCashToNearbyPlayer(player, amount)
- local targetId = NDCore.functions:getNearbyPedToPlayer(player)
+function NDCore.Functions.GiveCashToNearbyPlayer(player, amount)
+ local targetId = NDCore.Functions.GetNearbyPedToPlayer(player)
if targetId then
- NDCore.functions:giveCash(amount, player, targetId)
+ NDCore.Functions.GiveCash(amount, player, targetId)
return true
end
TriggerClientEvent("chat:addMessage", player, {
@@ -167,59 +167,59 @@ function NDCore.functions:giveCashToNearbyPlayer(player, amount)
end
-- withdraws money from a players bank account to their wallet/cash.
-function NDCore.functions:withdrawMoney(amount, player)
+function NDCore.Functions.WithdrawMoney(amount, player)
local amount = tonumber(amount)
local player = tonumber(player)
if amount <= 0 then return false end
- if NDCore.players[player].bank < amount then return false end
- MySQL.query.await("UPDATE characters SET bank = bank - ? WHERE character_id = ?", {amount, NDCore.players[player].id})
- MySQL.query.await("UPDATE characters SET cash = cash + ? WHERE character_id = ?", {amount, NDCore.players[player].id})
- NDCore.functions:updateMoney(player)
+ if NDCore.Players[player].bank < amount then return false end
+ MySQL.query.await("UPDATE characters SET bank = bank - ? WHERE character_id = ?", {amount, NDCore.Players[player].id})
+ MySQL.query.await("UPDATE characters SET cash = cash + ? WHERE character_id = ?", {amount, NDCore.Players[player].id})
+ NDCore.Functions.UpdateMoney(player)
return true
end
-- deposits money from a players wallet/cash to their bank account.
-function NDCore.functions:depositMoney(amount, player)
+function NDCore.Functions.DepositMoney(amount, player)
local amount = tonumber(amount)
local player = tonumber(player)
if amount <= 0 then return false end
- if NDCore.players[player].cash < amount then return false end
- MySQL.query.await("UPDATE characters SET cash = cash - ? WHERE character_id = ?", {amount, NDCore.players[player].id})
- MySQL.query.await("UPDATE characters SET bank = bank + ? WHERE character_id = ?", {amount, NDCore.players[player].id})
- NDCore.functions:updateMoney(player)
+ if NDCore.Players[player].cash < amount then return false end
+ MySQL.query.await("UPDATE characters SET cash = cash - ? WHERE character_id = ?", {amount, NDCore.Players[player].id})
+ MySQL.query.await("UPDATE characters SET bank = bank + ? WHERE character_id = ?", {amount, NDCore.Players[player].id})
+ NDCore.Functions.UpdateMoney(player)
return true
end
-- Deducts money from the player, "bank" or "cash" needs to be specified.
-function NDCore.functions:deductMoney(amount, player, from)
+function NDCore.Functions.DeductMoney(amount, player, from)
local amount = tonumber(amount)
local player = tonumber(player)
if from == "bank" then
- MySQL.query.await("UPDATE characters SET bank = bank - ? WHERE character_id = ?", {amount, NDCore.players[player].id})
+ MySQL.query.await("UPDATE characters SET bank = bank - ? WHERE character_id = ?", {amount, NDCore.Players[player].id})
elseif from == "cash" then
- MySQL.query.await("UPDATE characters SET cash = cash - ? WHERE character_id = ?", {amount, NDCore.players[player].id})
+ MySQL.query.await("UPDATE characters SET cash = cash - ? WHERE character_id = ?", {amount, NDCore.Players[player].id})
end
- NDCore.functions:updateMoney(player)
+ NDCore.Functions.UpdateMoney(player)
end
-- Adds money from the player, "bank" or "cash" needs to be specified.
-function NDCore.functions:addMoney(amount, player, to)
+function NDCore.Functions.AddMoney(amount, player, to)
local amount = tonumber(amount)
local player = tonumber(player)
if to == "bank" then
- MySQL.query.await("UPDATE characters SET bank = bank + ? WHERE character_id = ?", {amount, NDCore.players[player].id})
+ MySQL.query.await("UPDATE characters SET bank = bank + ? WHERE character_id = ?", {amount, NDCore.Players[player].id})
elseif to == "cash" then
- MySQL.query.await("UPDATE characters SET cash = cash + ? WHERE character_id = ?", {amount, NDCore.players[player].id})
+ MySQL.query.await("UPDATE characters SET cash = cash + ? WHERE character_id = ?", {amount, NDCore.Players[player].id})
end
- NDCore.functions:updateMoney(player)
+ NDCore.Functions.UpdateMoney(player)
end
--- Adds the players character to the NDCore.players table, this table consists of every players selected character.
-function NDCore.functions:setActiveCharacter(player, characterId)
+-- Adds the players character to the NDCore.Players table, this table consists of every players selected character.
+function NDCore.Functions.SetActiveCharacter(player, characterId)
local result = MySQL.query.await("SELECT * FROM characters WHERE character_id = ?", {characterId})
if result then
local i = result[1]
- NDCore.players[player] = {
+ NDCore.Players[player] = {
id = characterId,
firstName = i.first_name,
lastName = i.last_name,
@@ -231,13 +231,13 @@ function NDCore.functions:setActiveCharacter(player, characterId)
bank = i.bank
}
end
- TriggerClientEvent("ND:setCharacter", player, NDCore.players[player])
+ TriggerClientEvent("ND:setCharacter", player, NDCore.Players[player])
end
-- This returns all the characters the player has.
-function NDCore.functions:getPlayerCharacters(player)
+function NDCore.Functions.GetPlayerCharacters(player)
local characters = {}
- local result = MySQL.query.await("SELECT * FROM characters WHERE license = ?", {NDCore.functions:GetPlayerIdentifierFromType("license", player)})
+ local result = MySQL.query.await("SELECT * FROM characters WHERE license = ?", {NDCore.Functions.GetPlayerIdentifierFromType("license", player)})
for i = 1, #result do
local temp = result[i]
characters[temp.character_id] = {id = temp.character_id, firstName = temp.first_name, lastName = temp.last_name, dob = temp.dob, gender = temp.gender, twt = temp.twt, job = temp.job, cash = temp.cash, bank = temp.bank}
@@ -246,8 +246,8 @@ function NDCore.functions:getPlayerCharacters(player)
end
-- Creates a new character for the player and returns all their characters to the client.
-function NDCore.functions:createCharacter(player, firstName, lastName, dob, gender, twt, job, cash, bank)
- local license = NDCore.functions:GetPlayerIdentifierFromType("license", player)
+function NDCore.Functions.CreateCharacter(player, firstName, lastName, dob, gender, twt, job, cash, bank)
+ local license = NDCore.Functions.GetPlayerIdentifierFromType("license", player)
if not cash or not bank or tonumber(cash) > config.startingCash or tonumber(bank) > config.startingBank then
cash = config.startingCash
bank = config.startingBank
@@ -255,21 +255,21 @@ function NDCore.functions:createCharacter(player, firstName, lastName, dob, gend
local result = MySQL.query.await("SELECT character_id FROM characters WHERE license = ?", {license})
if result and config.characterLimit > #result then
MySQL.query.await("INSERT INTO characters (license, first_name, last_name, dob, gender, twt, job, cash, bank) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)", {license, firstName, lastName, dob, gender, twt, job, cash, bank})
- TriggerClientEvent("ND:returnCharacters", player, NDCore.functions:getPlayerCharacters(player))
+ TriggerClientEvent("ND:returnCharacters", player, NDCore.Functions.GetPlayerCharacters(player))
end
end
-- Update/edit a character by character id.
-function NDCore.functions:updateCharacterData(characterId, firstName, lastName, dob, gender, twt, job)
+function NDCore.Functions.UpdateCharacterData(characterId, firstName, lastName, dob, gender, twt, job)
MySQL.query("UPDATE characters SET first_name = ?, last_name = ?, dob = ?, gender = ?, twt = ?, job = ? WHERE character_id = ?", {firstName, lastName, dob, gender, twt, job, characterId})
end
-- Delete a character by character id.
-function NDCore.functions:deleteCharacter(characterId)
+function NDCore.Functions.DeleteCharacter(characterId)
MySQL.query("DELETE FROM characters WHERE character_id = ?", {characterId})
end
-function NDCore.functions:versionChecker(expectedResourceName, resourceName, downloadLink, rawGithubLink)
+function NDCore.Functions.VersionChecker(expectedResourceName, resourceName, downloadLink, rawGithubLink)
if expectedResourceName ~= resourceName then
print("^1[^4" .. expectedResourceName .. "^1] WARNING^0")
print("Change the resource name to ^4" .. expectedResourceName .. " ^0or else it won't work properly!")
@@ -306,4 +306,4 @@ function NDCore.functions:versionChecker(expectedResourceName, resourceName, dow
end
end)
end
-NDCore.functions:versionChecker("ND_Core", GetCurrentResourceName(), "https://github.com/Andyyy7666/ND_Framework", "https://raw.githubusercontent.com/Andyyy7666/ND_Framework/main/ND_Core/fxmanifest.lua")
\ No newline at end of file
+NDCore.Functions.VersionChecker("ND_Core", GetCurrentResourceName(), "https://github.com/Andyyy7666/ND_Framework", "https://raw.githubusercontent.com/Andyyy7666/ND_Framework/main/ND_Core/fxmanifest.lua")
\ No newline at end of file
diff --git a/ND_Core/server/main.lua b/ND_Core/server/main.lua
index 4e50494..2d0fa67 100644
--- a/ND_Core/server/main.lua
+++ b/ND_Core/server/main.lua
@@ -1,9 +1,9 @@
-- For support join my discord: https://discord.gg/Z9Mxu72zZ6
NDCore = {}
-NDCore.players = {}
-NDCore.functions = {}
-NDCore.config = config
+NDCore.Players = {}
+NDCore.Functions = {}
+NDCore.Config = config
function GetCoreObject()
return NDCore
diff --git a/ND_Doorlocks/source/client.lua b/ND_Doorlocks/source/client.lua
index 00723d0..ddc61a4 100644
--- a/ND_Doorlocks/source/client.lua
+++ b/ND_Doorlocks/source/client.lua
@@ -1,7 +1,7 @@
-- For support join my discord: https://discord.gg/Z9Mxu72zZ6
NDCore = exports["ND_Core"]:GetCoreObject()
-local job = NDCore.functions:getSelectedCharacter().job
+local job = nil
local hasAccess = false
function drawText3D(coords, text)
diff --git a/ND_Doorlocks/source/server.lua b/ND_Doorlocks/source/server.lua
index ce23eb4..c611699 100644
--- a/ND_Doorlocks/source/server.lua
+++ b/ND_Doorlocks/source/server.lua
@@ -1,7 +1,7 @@
-- For support join my discord: https://discord.gg/Z9Mxu72zZ6
NDCore = exports["ND_Core"]:GetCoreObject()
-NDCore.functions:versionChecker("ND_Doorlocks", GetCurrentResourceName(), "https://github.com/Andyyy7666/ND_Framework", "https://raw.githubusercontent.com/Andyyy7666/ND_Framework/main/ND_Doorlocks/fxmanifest.lua")
+NDCore.Functions.VersionChecker("ND_Doorlocks", GetCurrentResourceName(), "https://github.com/Andyyy7666/ND_Framework", "https://raw.githubusercontent.com/Andyyy7666/ND_Framework/main/ND_Doorlocks/fxmanifest.lua")
local updatedDoors = {}
diff --git a/ND_Jailing/fxmanifest.lua b/ND_Jailing/fxmanifest.lua
index f00827d..ca54abb 100644
--- a/ND_Jailing/fxmanifest.lua
+++ b/ND_Jailing/fxmanifest.lua
@@ -2,7 +2,7 @@
author "Andyyy#7666"
description "ND Framework Jailing"
-version "2.1.0"
+version "2.2.0"
fx_version "cerulean"
game "gta5"
diff --git a/ND_Jailing/source/client.lua b/ND_Jailing/source/client.lua
index 20005bf..5018f15 100644
--- a/ND_Jailing/source/client.lua
+++ b/ND_Jailing/source/client.lua
@@ -41,7 +41,7 @@ function drawText3D(coords, text)
end
function hasAccess()
- local job = NDCore.functions:getSelectedCharacter().job
+ local job = NDCore.Functions.GetSelectedCharacter().job
for _, department in pairs(config.accessDepartments) do
if department == job then
return true
diff --git a/ND_Jailing/source/server.lua b/ND_Jailing/source/server.lua
index fa6daa6..2a50d4f 100644
--- a/ND_Jailing/source/server.lua
+++ b/ND_Jailing/source/server.lua
@@ -1,5 +1,5 @@
NDCore = exports["ND_Core"]:GetCoreObject()
-NDCore.functions:versionChecker("ND_Jailing", GetCurrentResourceName(), "https://github.com/Andyyy7666/ND_Framework", "https://raw.githubusercontent.com/Andyyy7666/ND_Framework/main/ND_Jailing/fxmanifest.lua")
+NDCore.Functions.VersionChecker("ND_Jailing", GetCurrentResourceName(), "https://github.com/Andyyy7666/ND_Framework", "https://raw.githubusercontent.com/Andyyy7666/ND_Framework/main/ND_Jailing/fxmanifest.lua")
local jailedPlayers = {}
@@ -35,12 +35,12 @@ end
RegisterNetEvent("ND_Jailing:jailPlayer")
AddEventHandler("ND_Jailing:jailPlayer", function(id, time, fine, reason)
local player = source
- local players = exports["ND_Core"]:getCharacterTable()
- local dept = players[player].dept
+ local players = NDCore.Functions.GetPlayers()
+ local dept = players[player].job
for _, department in pairs(config.accessDepartments) do
if department == dept then
jailedPlayers[GetPlayerIdentifierFromType("license", id)] = time
- exports["ND_Core"]:deductMoney(fine, id, "bank")
+ NDCore.Functions.DeductMoney(fine, id, "bank")
TriggerClientEvent("ND_Jailing:jailPlayer", id, time)
sendToDiscord("Jail Logs", "**" .. GetPlayerName(player) .. "** Jailed **" .. GetPlayerName(id) .. "** for **" .. time .. " seconds** with the reason: **" .. reason .. "**.", 1595381)
TriggerClientEvent('chat:addMessage', -1, {
diff --git a/ND_Jailing/source/ui/index.html b/ND_Jailing/source/ui/index.html
index 75f2ca7..569ecec 100644
--- a/ND_Jailing/source/ui/index.html
+++ b/ND_Jailing/source/ui/index.html
@@ -16,13 +16,13 @@
-
+
-
+
-
+