Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🎉 New release 1.10.3 #1292

Merged
merged 95 commits into from
Jan 24, 2024
Merged
Changes from 73 commits
Commits
Show all changes
95 commits
Select commit Hold shift + click to select a range
1147a13
create sl.lua for esx_identity
C3-FrameWork Jul 9, 2023
e30e2bc
refactor(Player Class): Typing Code & Perf
Walker974 Sep 17, 2023
fbdc9ce
Update player.lua
Walker974 Sep 17, 2023
0e5cefe
Merge branch 'dev' into patch-1
Thekuca Sep 18, 2023
2abf70a
Update player.lua
Walker974 Sep 24, 2023
165cd21
Update & Fix player.lua
Walker974 Sep 24, 2023
5eb3194
improve spawnvehicle and remove callback
Sep 27, 2023
00c0e84
change vehicle spawn logic back.
Sep 27, 2023
4dac6a0
Merge pull request #1229 from Arctos2win/dev
Arctos2win Sep 27, 2023
eec2bd8
improve functions and removeInventoryItem event
Sep 29, 2023
d7403e0
fix
Arctos2win Sep 29, 2023
be835db
fix event
Sep 29, 2023
730f92e
Merge branch 'dev' of https://github.com/Arctos2win/esx_core into dev
Sep 29, 2023
5d44a0a
add native to dependencies
Arctos2win Sep 29, 2023
f61e664
fix last stuff
Sep 29, 2023
06e6843
Merge pull request #1231 from Arctos2win/main
Gellipapa Sep 29, 2023
6fc40c7
Update functions.lua
Arctos2win Sep 29, 2023
117fb8b
Updated fi.lua
Bloope18 Oct 1, 2023
8e71fd7
Merge pull request #1234 from Blooper562/patch-7
Arctos2win Oct 1, 2023
75799c8
Update functions.lua
Arctos2win Oct 2, 2023
2ace296
fix repo
Arctos2win Oct 2, 2023
3376ba6
Merge pull request #1232 from Arctos2win/dev
Arctos2win Oct 2, 2023
50f7dce
Merge pull request #1217 from Walker974/patch-1
Thekuca Oct 2, 2023
094becc
quick fix
Arctos2win Oct 3, 2023
9d94639
Merge pull request #1236 from Arctos2win/dev
Arctos2win Oct 3, 2023
cee4f01
Update de.lua
ItzTrivial Oct 3, 2023
59d5f14
Merge pull request #1237 from ItzTrivial/patch-1
Arctos2win Oct 3, 2023
cc03577
Create sv.lua
Dannezzzan Oct 7, 2023
52ea268
Create sv.lua
Dannezzzan Oct 7, 2023
47b41ea
Merge pull request #1239 from Dannezzzan/patch-3
Arctos2win Oct 7, 2023
33549b7
Merge pull request #1238 from Dannezzzan/patch-2
Arctos2win Oct 7, 2023
b5f21a7
Create sv.lua
Dannezzzan Oct 7, 2023
3d6b79c
Create sv.lua
Dannezzzan Oct 7, 2023
3e95b08
Create sv.lua
Dannezzzan Oct 7, 2023
ffeabfe
Create sv.js
Dannezzzan Oct 8, 2023
fe749f1
Merge pull request #1243 from Dannezzzan/patch-7
Arctos2win Oct 8, 2023
cb5c5c8
Merge pull request #1242 from Dannezzzan/patch-6
Arctos2win Oct 8, 2023
43f2834
en to sv
Arctos2win Oct 8, 2023
bdb8062
Merge pull request #1241 from Dannezzzan/patch-5
Arctos2win Oct 8, 2023
bad530a
Merge pull request #1240 from Dannezzzan/patch-4
Arctos2win Oct 8, 2023
598c2f7
:wrench: Add missing onCancel callback method to progressbar
Gellipapa Oct 16, 2023
aa84aac
Merge branch 'dev' of https://github.com/Gellipapa/esx_core into dev
Gellipapa Oct 16, 2023
a99e566
Merge pull request #1247 from Gellipapa/dev
Gellipapa Oct 16, 2023
098ac39
Update he.lua part one
thefourcraft Oct 29, 2023
6b0e39d
Update he.lua part 2
thefourcraft Oct 29, 2023
5cc7b49
part 3
thefourcraft Oct 29, 2023
abf8fe9
Merge pull request #1 from thefourcraft/thefourcraft-he
thefourcraft Oct 29, 2023
13434ac
fix missing string issue on line 169 - Lint workflow issue
thefourcraft Oct 29, 2023
6bfe862
Create sl.lua and update it!
C3-FrameWork Nov 4, 2023
9d92a4f
Add underflow check for removeAccountMoney
Kenshiin13 Nov 6, 2023
40fe04d
Merge pull request #1253 from Kenshiin13/Underflow-Check
Arctos2win Nov 6, 2023
34f7933
fix: FR translation
Cartman117 Nov 12, 2023
d41b723
Merge pull request #1254 from Cartman117/patch-1
Arctos2win Nov 14, 2023
90cc4be
improve setjob function
Arctos2win Nov 18, 2023
004b782
tonumber a value
Arctos2win Nov 18, 2023
97a6f08
Merge pull request #1255 from Arctos2win/dev
Arctos2win Nov 18, 2023
bd17e35
Create id.lua
IAmNotGod-core Nov 28, 2023
18db3c8
en -> id
Arctos2win Nov 28, 2023
69b1e16
Merge pull request #1258 from IAmNotGod-core/dev
Arctos2win Nov 29, 2023
5d1f90f
fix(es_extended/server/classes/player): trying to use non existent event
Thekuca Dec 4, 2023
4240253
Merge pull request #1263 from Thekuca/dev
Thekuca Dec 4, 2023
9bbf321
fix player metadata can get set to false.
Arctos2win Dec 12, 2023
ed9dcda
Merge pull request #1266 from Arctos2win/dev
Arctos2win Dec 12, 2023
5b68454
fix(es_extended/client/modules/actions): player health regeneration
Thekuca Dec 21, 2023
1c530ac
Merge pull request #1277 from Thekuca/dev
Thekuca Dec 21, 2023
47920b7
refactor(es_extended/client/main): use esx function for keymapping
Thekuca Dec 22, 2023
e499474
Revert "refactor(es_extended/client/main): use esx function for keyma…
Thekuca Dec 22, 2023
70c5213
refactor(es_extended/client/main): use esx keymapping function
Thekuca Dec 22, 2023
71516c1
Merge pull request #1278 from Thekuca/dev
Thekuca Dec 22, 2023
62bf3dd
Fix checkDOBFormat
xtrsyz Dec 29, 2023
b27bd00
typo in czech locale - Fixed by Negative
TheFantomas Jan 7, 2024
6fa81e2
Added ESX.DeleteJob for Runtime
t1ger-scripts Jan 14, 2024
4cf6aa1
Fixed error for skin no default value
t1ger-scripts Jan 14, 2024
82a9a1a
Fixed typo
t1ger-scripts Jan 14, 2024
090ae55
chore(readme.md)
Thekuca Jan 14, 2024
c010d53
Merge pull request #1283 from Thekuca/dev
Thekuca Jan 14, 2024
a88846f
Merge pull request #1282 from t1ger-scripts/dev
Arctos2win Jan 14, 2024
3b13fe2
Merge pull request #1281 from t1ger-scripts/patch-1
Arctos2win Jan 14, 2024
4c60fc9
Revert "Added ESX.DeleteJob for Runtime"
Arctos2win Jan 14, 2024
e0e60d6
Merge pull request #1284 from esx-framework/revert-1281-patch-1
Arctos2win Jan 14, 2024
39306c2
Rewrite LoadESXPlayer
Arctos2win Jan 18, 2024
39baa97
Merge branch 'dev' into sl.lua
Gellipapa Jan 18, 2024
0233de4
Merge pull request #1252 from C3-FrameWork/sl.lua
Gellipapa Jan 18, 2024
48dedbb
Merge pull request #1279 from gigne/main
Gellipapa Jan 18, 2024
cf52f2a
Merge pull request #1250 from thefourcraft/dev
Gellipapa Jan 18, 2024
5a443fa
fix(SQL): fixed missing column
zRxnx Jan 21, 2024
1f68b2b
Merge pull request #1289 from zRxnx/main
Gellipapa Jan 22, 2024
55ec231
Update main.lua
Arctos2win Jan 22, 2024
0b01cfd
change handling of ox inventory config
Arctos2win Jan 24, 2024
e765491
don't save player when not spawned
Arctos2win Jan 24, 2024
ae4473b
Merge pull request #2 from Arctos2win/dev
Arctos2win Jan 24, 2024
6637933
fix player bugging in ground collision at spawn
Arctos2win Jan 24, 2024
a197ead
Merge pull request #3 from Arctos2win/dev
Arctos2win Jan 24, 2024
1d7572f
Merge pull request #1290 from Arctos2win/loadESXPlayer
Gellipapa Jan 24, 2024
9d90c9d
:art: Run formatter
Gellipapa Jan 24, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
137 changes: 53 additions & 84 deletions [core]/es_extended/client/functions.lua
Original file line number Diff line number Diff line change
@@ -25,32 +25,19 @@ function ESX.GetPlayerData()
end

function ESX.SearchInventory(items, count)
if type(items) == 'string' then
items = { items }
end

local returnData = {}
local itemCount = #items

for i = 1, itemCount do
local itemName = items[i]
returnData[itemName] = count and 0
items = type(items) == 'string' and { items } or items

for _, item in pairs(ESX.PlayerData.inventory) do
if item.name == itemName then
if count then
returnData[itemName] = returnData[itemName] + item.count
else
returnData[itemName] = item
end
end
end
end
local data = {}
for i=1, #items do
for c=1, #ESX.PlayerData.inventory do
if ESX.PlayerData.inventory[c].name == items[i] then
data[items[i]] = (count and ESX.PlayerData.inventory[c].count) or ESX.PlayerData.inventory[c]
end
end
end

if next(returnData) then
return itemCount == 1 and returnData[items[1]] or returnData
end
end
return #items == 1 and data[items[1]] or data
end

function ESX.SetPlayerData(key, val)
local current = ESX.PlayerData[key]
@@ -336,34 +323,17 @@ end

function ESX.Game.SpawnObject(object, coords, cb, networked)
networked = networked == nil and true or networked
if networked then
ESX.TriggerServerCallback('esx:Onesync:SpawnObject', function(NetworkID)
if cb then
local obj = NetworkGetEntityFromNetworkId(NetworkID)
local Tries = 0
while not DoesEntityExist(obj) do
obj = NetworkGetEntityFromNetworkId(NetworkID)
Wait(0)
Tries = Tries + 1
if Tries > 250 then
break
end
end
cb(obj)
end
end, object, coords, 0.0)
else
local model = type(object) == 'number' and object or joaat(object)
local vector = type(coords) == "vector3" and coords or vec(coords.x, coords.y, coords.z)
CreateThread(function()
ESX.Streaming.RequestModel(model)

local obj = CreateObject(model, vector.xyz, networked, false, true)
if cb then
cb(obj)
end
end)
end

local model = type(object) == 'number' and object or joaat(object)
local vector = type(coords) == "vector3" and coords or vec(coords.x, coords.y, coords.z)
CreateThread(function()
ESX.Streaming.RequestModel(model)

local obj = CreateObject(model, vector.xyz, networked, false, true)
if cb then
cb(obj)
end
end)
end

function ESX.Game.SpawnLocalObject(object, coords, cb)
@@ -389,12 +359,13 @@ function ESX.Game.SpawnVehicle(vehicleModel, coords, heading, cb, networked)
if not vector or not playerCoords then
return
end

local dist = #(playerCoords - vector)
if dist > 424 then -- Onesync infinity Range (https://docs.fivem.net/docs/scripting-reference/onesync/)
local executingResource = GetInvokingResource() or "Unknown"
return print(("[^1ERROR^7] Resource ^5%s^7 Tried to spawn vehicle on the client but the position is too far away (Out of onesync range)."):format(executingResource))
end

CreateThread(function()
ESX.Streaming.RequestModel(model)

@@ -437,20 +408,19 @@ function ESX.Game.GetObjects() -- Leave the function for compatibility
end

function ESX.Game.GetPeds(onlyOtherPeds)
local myPed, pool = ESX.PlayerData.ped, GetGamePool('CPed')

if not onlyOtherPeds then
return pool
end

local peds = {}
for i = 1, #pool do
if pool[i] ~= myPed then
peds[#peds + 1] = pool[i]
local pool = GetGamePool('CPed')

if onlyOtherPeds then
local myPed = ESX.PlayerData.ped
for i = 1, #pool do
if pool[i] == myPed then
table.remove(pool, i)
break
end
end
end
end

return peds
return pool
end

function ESX.Game.GetVehicles() -- Leave the function for compatibility
@@ -459,18 +429,20 @@ end

function ESX.Game.GetPlayers(onlyOtherPlayers, returnKeyValue, returnPeds)
local players, myPlayer = {}, PlayerId()
local active = GetActivePlayers()

for _, player in ipairs(GetActivePlayers()) do
local ped = GetPlayerPed(player)
for i=1, #active do
local currentPlayer = active[i]
local ped = GetPlayerPed(currentPlayer)

if DoesEntityExist(ped) and ((onlyOtherPlayers and player ~= myPlayer) or not onlyOtherPlayers) then
if returnKeyValue then
players[player] = ped
else
players[#players + 1] = returnPeds and ped or player
if DoesEntityExist(ped) and ((onlyOtherPlayers and currentPlayer ~= myPlayer) or not onlyOtherPlayers) then
if returnKeyValue then
players[currentPlayer] = ped
else
players[#players + 1] = returnPeds and ped or currentPlayer
end
end
end
end
end

return players
end
@@ -995,12 +967,8 @@ function ESX.Game.Utils.DrawText3D(coords, text, size, font)
local camCoords = GetFinalRenderedCamCoord()
local distance = #(vector - camCoords)

if not size then
size = 1
end
if not font then
font = 0
end
size = size or 1
font = font or 0

local scale = (size / distance) * 2
local fov = (1 / GetGameplayCamFov()) * 100
@@ -1058,8 +1026,9 @@ function ESX.ShowInventory()
end
end

for _, v in ipairs(ESX.PlayerData.inventory) do
if v.count > 0 then
for i=1, #ESX.PlayerData.inventory do
local v = ESX.PlayerData.inventory[i]
if v.count > 0 then
currentWeight = currentWeight + (v.weight * v.count)

elements[#elements + 1] = {
@@ -1072,8 +1041,8 @@ function ESX.ShowInventory()
rare = v.rare,
canRemove = v.canRemove
}
end
end
end
end

elements[1].title = TranslateCap('inventory', currentWeight, Config.MaxWeight)

16 changes: 7 additions & 9 deletions [core]/es_extended/client/main.lua
Original file line number Diff line number Diff line change
@@ -309,13 +309,13 @@ if not Config.OxInventory then

RegisterNetEvent('esx:removeInventoryItem')
AddEventHandler('esx:removeInventoryItem', function(item, count, showNotification)
for k, v in ipairs(ESX.PlayerData.inventory) do
if v.name == item then
ESX.UI.ShowInventoryItemNotification(false, v.label, v.count - count)
ESX.PlayerData.inventory[k].count = count
for i=1, #ESX.PlayerData.inventory do
if ESX.PlayerData.inventory[i].name == item then
ESX.UI.ShowInventoryItemNotification(false, ESX.PlayerData.inventory[i].label, ESX.PlayerData.inventory[i].count - count)
ESX.PlayerData.inventory[i].count = count
break
end
end
end
end

if showNotification then
ESX.UI.ShowInventoryItemNotification(false, item, count)
@@ -453,13 +453,11 @@ function StartServerSyncLoops()
end

if not Config.OxInventory and Config.EnableDefaultInventory then
RegisterCommand('showinv', function()
ESX.RegisterInput('showinv', TranslateCap('keymap_showinventory'), 'keyboard', 'F2', function()
if not ESX.PlayerData.dead then
ESX.ShowInventory()
end
end)

RegisterKeyMapping('showinv', TranslateCap('keymap_showinventory'), 'keyboard', 'F2')
end

-- disable wanted level
3 changes: 3 additions & 0 deletions [core]/es_extended/client/modules/actions.lua
Original file line number Diff line number Diff line change
@@ -30,6 +30,9 @@ CreateThread(function()
ESX.SetPlayerData('ped', playerPed)
TriggerEvent('esx:playerPedChanged', playerPed)
TriggerServerEvent('esx:playerPedChanged', PedToNet(playerPed))
if Config.DisableHealthRegeneration then
SetPlayerHealthRechargeMultiplier(PlayerId(), 0.0)
end
end

if IsPedJumping(playerPed) and not isJumping then
1 change: 1 addition & 0 deletions [core]/es_extended/fxmanifest.lua
Original file line number Diff line number Diff line change
@@ -73,6 +73,7 @@ files {

dependencies {
'/native:0x6AE51D4B',
'/native:0xA61C8FC6',
'oxmysql',
'spawnmanager',
}
2 changes: 1 addition & 1 deletion [core]/es_extended/locales/cs.lua
Original file line number Diff line number Diff line change
@@ -107,7 +107,7 @@ Locales["cs"] = {
['commanderror_invaliditem'] = 'Špatný předmět',
['commanderror_invalidweapon'] = 'Špatná zbraň',
['commanderror_console'] = 'příkaz nelze být zpracován v konzoli',
['commanderror_invalidcommand'] = 'Špatný příakz - /%s',
['commanderror_invalidcommand'] = 'Špatný příkaz - /%s',
['commanderror_invalidplayerid'] = 'Hráč není dostupný',
['commandgeneric_playerid'] = 'Id hráče',
['command_giveammo_noweapon_found'] = '%s nemá tuto zbraň',
82 changes: 41 additions & 41 deletions [core]/es_extended/locales/de.lua
Original file line number Diff line number Diff line change
@@ -51,74 +51,74 @@ Locales["de"] = {
["account_money"] = "Bargeld",

["act_imp"] = "Du kannst diese Aktion nicht ausführen!",
["in_vehicle"] = "Du kannst diese Aktion nicht ausführen! Person ist in einem Fahrzeug",
["not_in_vehicle"] = "Cannot Perform Action, Player isn't in a vehicle",
["in_vehicle"] = "Person darf nicht in einem Fahrzeug sein!",
["not_in_vehicle"] = "Person muss in einem Fahrzeug sein!",

-- Commands
['command_bring'] = 'Person zu dir bringen',
['command_car'] = 'Fahrzeug Spawnen',
['command_car_car'] = 'Fahrzeug Model oder Hash',
['command_cardel'] = 'Fahrzeuge entfernen',
['command_cardel_radius'] = 'Entfernt alle Fahrzeuge in einem bestimmten Radius',
['command_repair'] = 'Repair your vehicle',
['command_repair_success'] = 'Successfully repaired vehicle',
['command_repair_success_target'] = 'An admin repaired your vehicle',
['command_repair'] = 'Fahrzeug reparieren',
['command_repair_success'] = 'Fahrzeug erfolgreich repariert.',
['command_repair_success_target'] = 'Ein Admin hat dein Fahrzeug repariert.',
['command_clear'] = 'Textchat leeren',
['command_clearall'] = 'Textchat leeren für alle Spieler leeren',
['command_clearinventory'] = 'Alle Items von dem Inventar eines Spielers entfernen',
['command_clearloadout'] = 'Alle waffen von dem Spieler Loadout entfernen',
['command_clearall'] = 'Textchat für alle Spieler leeren',
['command_clearinventory'] = 'Alle Gegenstände vom Inventar eines Spielers entfernen',
['command_clearloadout'] = 'Alle Waffen vom Loadout eines Spielers entfernen',
['command_freeze'] = 'Spieler Freezen',
['command_unfreeze'] = 'Spieler Entfreezen',
['command_giveaccountmoney'] = 'Geld an einen bestimmten Account geben',
['command_giveaccountmoney_account'] = 'Account wohin das Geld hinzugefügt werden soll',
['command_giveaccountmoney_amount'] = 'Anzahl zum hinzufügen',
['command_giveaccountmoney_invalid'] = 'Accountname Ungültig',
['command_giveitem'] = 'Spieler ein item geben',
['command_giveitem_item'] = 'Item Name',
['command_giveitem_count'] = 'Anzahl',
['command_giveaccountmoney'] = 'Geld an ein bestimmtes Konto geben',
['command_giveaccountmoney_account'] = 'Konto, wohin das Geld hinzugefügt werden soll',
['command_giveaccountmoney_amount'] = 'Menge zum Hinzufügen',
['command_giveaccountmoney_invalid'] = 'Accountname ungültig!',
['command_giveitem'] = 'Spieler ein Gegenstand geben',
['command_giveitem_item'] = 'Gegenstand Name',
['command_giveitem_count'] = 'Menge',
['command_giveweapon'] = 'Spieler eine Waffe geben',
['command_giveweapon_weapon'] = 'Waffenname',
['command_giveweapon_ammo'] = 'Munitionsanzahl',
['command_giveweapon_hasalready'] = 'Spieler hat bereits diese Waffe',
['command_giveweapon_hasalready'] = 'Spieler hat diese Waffe bereits!',
['command_giveweaponcomponent'] = 'Waffenkomponent an einen Spieler geben',
['command_giveweaponcomponent_component'] = 'Komponent Name',
['command_giveweaponcomponent_invalid'] = 'Ungültiger Komponent Name',
['command_giveweaponcomponent_hasalready'] = 'Spieler hat bereits diesen Komponent',
['command_giveweaponcomponent_missingweapon'] = 'Spieler hat diese Waffe nicht',
['command_giveweaponcomponent_component'] = 'Komponentenname',
['command_giveweaponcomponent_invalid'] = 'Ungültiger Komponentenname',
['command_giveweaponcomponent_hasalready'] = 'Spieler hat diese Komponente bereits!',
['command_giveweaponcomponent_missingweapon'] = 'Spieler hat diese Waffe nicht!',
['command_goto'] = 'Teleportiere dich zu einem Spieler',
['command_kill'] = 'Spieler Töten',
['command_save'] = 'Von einem bestimmten Spieler die Spielerdaten Speichern',
['command_saveall'] = 'Von allen Spielern die Spielerdaten Speichern',
['command_setaccountmoney'] = 'Geld auf einem bestimmten Account setzen',
['command_setaccountmoney_amount'] = 'Anzahl',
['command_save'] = 'Von einem bestimmten Spieler die Spielerdaten speichern',
['command_saveall'] = 'Von allen Spielern die Spielerdaten speichern',
['command_setaccountmoney'] = 'Geld auf einem bestimmten Konto festlegen',
['command_setaccountmoney_amount'] = 'Menge',
['command_setcoords'] = 'Zu den bestimmten Koordinaten teleportieren',
['command_setcoords_x'] = 'X Koordinate',
['command_setcoords_y'] = 'Y Koordinate',
['command_setcoords_z'] = 'Z Koordinate',
['command_setjob'] = 'Job eines Spielers setzen',
['command_setjob_job'] = 'Name',
['command_setjob_grade'] = 'Job Grad',
['command_setjob_invalid'] = 'Der Job Grad oder beides sind ungültig',
['command_setgroup'] = 'Setzt eine Berechtigungs Gruppe für einen User',
['command_setjob_grade'] = 'Job Rang',
['command_setjob_invalid'] = 'Der Rang oder der Name und Rang sind ungültig',
['command_setgroup'] = 'Setzt eine Berechtigungs Gruppe für einen Benutzer',
['command_setgroup_group'] = 'Name der Gruppe',
['command_removeaccountmoney'] = 'Entfernt Geld von einem bestimmten Account',
['command_removeaccountmoney_account'] = 'Account von wem es entfernt werden soll',
['command_removeaccountmoney_amount'] = 'Anzahl die Entfernt werden soll',
['command_removeaccountmoney_invalid'] = 'Name des Accounts Ungültig',
['commanderror_argumentmismatch'] = 'Ungültiger Argument (gegeben %s, gewollt %s)',
['commanderror_argumentmismatch_number'] = 'Ungültiges Argument #%s daten typ (string gegeben, gewollte nummer)',
['commanderror_argumentmismatch_string'] = 'Invalid Argument #%s data type (passed number, wanted string)',
['commanderror_invaliditem'] = 'Ungültiges Item',
['command_removeaccountmoney'] = 'Entfernt Geld von einem bestimmten Konto',
['command_removeaccountmoney_account'] = 'Konto von dem es entfernt werden soll',
['command_removeaccountmoney_amount'] = 'Menge, die entfernt werden soll',
['command_removeaccountmoney_invalid'] = 'Name des Kontos ungültig',
['commanderror_argumentmismatch'] = 'Ungültiges Argument (gegeben %s, gewollt %s)',
['commanderror_argumentmismatch_number'] = 'Ungültiges Argument #%s Datentyp (String gegeben, Nummer gefordert)',
['commanderror_argumentmismatch_string'] = 'Ungültiges Argument #%s Datentyp (Nummer gegeben, String gefordert)',
['commanderror_invaliditem'] = 'Ungültiger Gegenstand',
['commanderror_invalidweapon'] = 'Ungültige Waffe',
['commanderror_console'] = 'Befehl kann nicht von der Konsole aus ausgeführt werden',
['commanderror_console'] = 'Befehl kann nicht von der Konsole aus ausgeführt werden!',
['commanderror_invalidcommand'] = 'Ungültiger Befehl - /%s',
['commanderror_invalidplayerid'] = 'Angegebener Spieler ist nicht online!',
['commandgeneric_playerid'] = 'Spieler`s ID',
['command_giveammo_noweapon_found'] = '%s besitzt diese Waffe nicht',
['commandgeneric_playerid'] = 'Spieler ID',
['command_giveammo_noweapon_found'] = '%s besitzt diese Waffe nicht!',
['command_giveammo_weapon'] = 'Waffenname',
['command_giveammo_ammo'] = 'Munitionsanzahl',
['tpm_nowaypoint'] = 'Kein Wegpunkt gesetzt.',
['tpm_success'] = 'Erfolgreich teleportiert',
['tpm_nowaypoint'] = 'Kein Wegpunkt gesetzt!',
['tpm_success'] = 'Erfolgreich teleportiert.',

['noclip_message'] = 'Noclip wurde %s',
['enabled'] = '~g~Aktiviert~s~',
@@ -233,7 +233,7 @@ Locales["de"] = {
["weapon_tactilerifle"] = "Service Karabiner",

-- Drug Wars DLC
['weapon_candycane'] = 'Zuckerstange',
['weapon_candycane'] = 'Zuckerstange',
['weapon_acidpackage'] = 'Säure Paket',
['weapon_pistolxm3'] = 'WM 29 Pistole',
['weapon_railgunxm3'] = 'Railgun',
20 changes: 10 additions & 10 deletions [core]/es_extended/locales/fi.lua
Original file line number Diff line number Diff line change
@@ -52,7 +52,7 @@ Locales["fi"] = {

["act_imp"] = "Toiminto mahdoton",
["in_vehicle"] = "Et voi antaa ajoneuvossa olevalle mitään",
["not_in_vehicle"] = "Cannot Perform Action, Player isn't in a vehicle",
["not_in_vehicle"] = "Toimintoa ei voida suorittaa, pelaaja ei ole ajoneuvossa",

-- Commands
['command_car'] = 'Luo ajoneuvo',
@@ -90,10 +90,10 @@ Locales["fi"] = {
['command_setcoords_x'] = 'x akseli',
['command_setcoords_y'] = 'y akseli',
['command_setcoords_z'] = 'z akseli',
['command_setjob'] = 'Aseta pelaajalle työ',
['command_setjob_job'] = 'Työ',
['command_setjob'] = 'Aseta pelaajalle ammatti',
['command_setjob_job'] = 'Ammatti',
['command_setjob_grade'] = 'Arvo',
['command_setjob_invalid'] = 'Työ ja arvo tai molemmat ovat virheellisiä',
['command_setjob_invalid'] = 'Ammatti ja arvo tai molemmat ovat virheellisiä',
['command_setgroup'] = 'Aseta pelaajan ryhmä',
['command_setgroup_group'] = 'Ryhmän nimi',
['commanderror_argumentmismatch'] = 'Argumenttien määrä ei täsmää (hyväksytty %s, haluttu %s)',
@@ -111,13 +111,13 @@ Locales["fi"] = {

-- Locale settings
["locale_digit_grouping_symbol"] = "",
["locale_currency"] = "$%s",
["locale_currency"] = "%s",

-- Drug Wars DLC
['weapon_candycane'] = 'Candy Cane', -- not translated
['weapon_acidpackage'] = 'Acid Package', -- not translated
['weapon_pistolxm3'] = 'WM 29 Pistol', -- not translated
['weapon_railgunxm3'] = 'Railgun', -- not translated
['weapon_candycane'] = 'Karkkitanko',
['weapon_acidpackage'] = 'Happo pakkaus',
['weapon_pistolxm3'] = 'WM 29 Pistooli',
['weapon_railgunxm3'] = 'Raidetykki',

-- Weapons
["weapon_knife"] = "Veitsi",
@@ -194,7 +194,7 @@ Locales["fi"] = {
["gadget_parachute"] = "Laskuvarjo",
["weapon_flare"] = "Hätäraketti",
["weapon_doubleaction"] = "Double action revolveri",
["weapon_heavyrifle"] = "Heavy Rifle", -- Not Translated
["weapon_heavyrifle"] = "Raskas kivääri",

-- Weapon Components
["component_clip_default"] = "Oletus lipas",
381 changes: 381 additions & 0 deletions [core]/es_extended/locales/id.lua

Large diffs are not rendered by default.

382 changes: 382 additions & 0 deletions [core]/es_extended/locales/sv.lua

Large diffs are not rendered by default.

348 changes: 254 additions & 94 deletions [core]/es_extended/server/classes/player.lua

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions [core]/es_extended/server/functions.lua
Original file line number Diff line number Diff line change
@@ -407,12 +407,12 @@ function ESX.CreateJob(name, label, grades)
local job = { name = name, label = label, grades = {} }

for _, v in pairs(grades) do
job.grades[tostring(v.grade)] = { job_name = name, grade = v.grade, name = v.name, label = v.label, salary = v.salary, skin_male = {}, skin_female = {} }
parameters[#parameters + 1] = { name, v.grade, v.name, v.label, v.salary }
job.grades[tostring(v.grade)] = { job_name = name, grade = v.grade, name = v.name, label = v.label, salary = v.salary, skin_male = v.skin_male or '{}', skin_female = v.skin_female or '{}' }
parameters[#parameters + 1] = { name, v.grade, v.name, v.label, v.salary, v.skin_male or '{}', v.skin_female or '{}'}
end

MySQL.insert('INSERT IGNORE INTO jobs (name, label) VALUES (?, ?)', { name, label })
MySQL.prepare('INSERT INTO job_grades (job_name, grade, name, label, salary) VALUES (?, ?, ?, ?, ?)', parameters)
MySQL.prepare('INSERT INTO job_grades (job_name, grade, name, label, salary, skin_male, skin_female) VALUES (?, ?, ?, ?, ?, ?, ?)', parameters)

ESX.Jobs[name] = job
end
6 changes: 1 addition & 5 deletions [core]/es_extended/server/onesync.lua
Original file line number Diff line number Diff line change
@@ -223,8 +223,4 @@ end
---@return number entityId, number distance, vector3 coords
function ESX.OneSync.GetClosestVehicle(coords, modelFilter)
return getClosestEntity(GetAllVehicles(), coords, modelFilter)
end

ESX.RegisterServerCallback("esx:Onesync:SpawnObject", function(_, cb, model, coords, heading)
ESX.OneSync.SpawnObject(model, coords, heading, cb)
end)
end
2 changes: 1 addition & 1 deletion [core]/esx_identity/locales/sl.lua
Original file line number Diff line number Diff line change
@@ -35,4 +35,4 @@ Locales['sl'] = {
['invalid_dob_format'] = 'Neveljavna oblika (Datum rojstva). Poskusite znova.',
['invalid_sex_format'] = 'Neveljavna oblika (Spol). Poskusite znova.',
['invalid_height_format'] = 'Neveljavna oblika (Višina). Poskusite znova.'
}
}
38 changes: 38 additions & 0 deletions [core]/esx_identity/locales/sv.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
Locales["sv"] = {
["show_active_character"] = "Visa aktiv karaktär",
["active_character"] = "Aktiv karaktär: %s",
["error_active_character"] = "Det blev ett fel med att ta din data.",
["delete_character"] = "Radera din nuvarande karaktär.",
["deleted_character"] = "Karaktär raderad",
["error_delete_character"] = "Det uppstod ett problem med att radera din karaktär.",
["thank_you_for_registering"] = "Din karaktär är skapad. Grattis!",
["debug_xPlayer_get_first_name"] = "Ger ditt förnamn",
["debug_xPlayer_get_last_name"] = "Ger ditt efternamn",
["debug_xPlayer_get_full_name"] = "Ger ditt fulla namn",
["debug_xPlayer_get_sex"] = "Ger ditt kön",
["debug_xPlayer_get_dob"] = "Ger ditt födelsedatum",
["debug_xPlayer_get_height"] = "Ger din längd",
["error_debug_xPlayer_get_first_name"] = "Det blev ett problem med att få ditt förnamn.",
["error_debug_xPlayer_get_last_name"] = "Det blev ett problem med att få ditt efternamn.",
["error_debug_xPlayer_get_full_name"] = "Det blev ett problem med att få ditt fulla namn.",
["error_debug_xPlayer_get_sex"] = "Det blev ett problem med att få ditt kön.",
["error_debug_xPlayer_get_dob"] = "Det blev ett problem med att få ditt födelsedatum.",
["error_debug_xPlayer_get_height"] = "Det blev ett problem med att få din längd.",
["return_debug_xPlayer_get_first_name"] = "Förnamn: %s",
["return_debug_xPlayer_get_last_name"] = "Efternamn: %s",
["return_debug_xPlayer_get_full_name"] = "Namn: %s",
["return_debug_xPlayer_get_sex"] = "Kön: %s",
["return_debug_xPlayer_get_dob"] = "Födelsedatum: %s",
["return_debug_xPlayer_get_height"] = "Längd: %s Cm",
["data_incorrect"] = "Ogiltigt, försök igen.",
["invalid_format"] = "Ogiltigt format, försök igen.",
["no_identifier"] = "[ESX Identity]\nDet blev ett fel med att ladda din karaktär!\nFelkod: identifier-missing\n\nSer ut som att din identifier saknas. Testa senare eller kontakta serverägare.",
["missing_identity"] = "[ESX Identity]\nThere was an issue loading your character!\nFelkod: identity-missing\n\nSer ut som att din identity saknas, testa anslut igen.",
["deleted_identity"] = "Karaktär raderad. Restarta ditt spel för att skapa ny karaktär.",
["already_registered"] = "Du har redan registrerat.",
["invalid_firstname_format"] = "Ogiltigt format (Förnamn): Försök igen.",
["invalid_lastname_format"] = "Ogiltigt format (Efternamn): Försök igen.",
["invalid_dob_format"] = "Ogiltigt format (Födelsedatum): Försök igen.",
["invalid_sex_format"] = "Ogiltigt format (Kön): Försök igen.",
["invalid_height_format"] = "Ogiltigt format (Längd): Försök igen.",
}
8 changes: 8 additions & 0 deletions [core]/esx_multicharacter/html/locales/sv.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
const translate = new Object();

translate.name = "Namn";
translate.job = "Jobb";
translate.bank = "Bank";
translate.money = "Kontanter";
translate.gender = "Kön";
translate.dob = "Födelsedatum";
4 changes: 2 additions & 2 deletions [core]/esx_multicharacter/locales/fr.lua
Original file line number Diff line number Diff line change
@@ -2,14 +2,14 @@ Locales["fr"] = {
["male"] = "Homme",
["female"] = "Femme",
["select_char"] = "Sélectionnez un personnage",
["select_char_description"] = "Select a character to play as.",
["select_char_description"] = "Sélectionnez un personnage avec lequel jouer.",
["create_char"] = "Créer un nouveau personnage",
["char_play"] = "Jouer ce personnage",
["char_play_description"] = "Continuez dans la ville.",
["char_disabled"] = "Ce personnage est désactivé",
["char_disabled_description"] = "Ce personnage est inutilisable.",
["char_delete"] = "Supprimer ce personnage",
["char_delete_description"] = "Retiré définitivement ce personnage.",
["char_delete_description"] = "Supprimer définitivement ce personnage.",
["char_delete_confirmation"] = "Confirmation de suppression",
["char_delete_confirmation_description"] = "Êtes-vous sûr de vouloir supprimer ce personnage?",
["char_delete_yes_description"] = "Oui, je suis sur de vouloir supprimer ce personnage",
32 changes: 32 additions & 0 deletions [core]/esx_multicharacter/locales/sv.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
Locales["sv"] = {
["male"] = "Man",
["female"] = "Kvinna",
["select_char"] = "Välj karaktär",
["select_char_description"] = "Välj en karaktär att spela som.",
["create_char"] = "Ny karaktär",
["char_play"] = "Spela",
["char_play_description"] = "Fortsätt i staden.",
["char_disabled"] = "Otillgänglig",
["char_disabled_description"] = "Denna karaktär är inte tillgänglig.",
["char_delete"] = "Radera",
["char_delete_description"] = "Permanent radera denna karaktär.",
["char_delete_confirmation"] = "Acceptera",
["char_delete_confirmation_description"] = "Säker att du vill radera den?",
["char_delete_yes_description"] = "Ja, jag är säker",
["char_delete_no_description"] = "Nej, gå tillbaka till karaktärerna",
["character"] = "Karaktär: %s",
["return"] = "Tillbaka",
["return_description"] = "Tillbaka till karaktärerna.",
["command_setslots"] = "Ge slots till en spelare",
["command_remslots"] = "Radera slots från en spelare",
["command_enablechar"] = "Aktivera vald karaktär till spelare",
["command_disablechar"] = "Avaktivera vald karaktär till spelare",
["command_charslot"] = "Slotsnummer på karaktären",
["command_identifier"] = "Spelare",
["command_slots"] = "# av slots",
["slotsadd"] = "Du satte %s slots till %s",
["slotsrem"] = "Du raderade slots till %s",
["charenabled"] = "Du aktiverade karaktär #%s av %s",
["chardisabled"] = "Du avaktiverade #%s av %s",
["charnotfound"] = "Karaktär #%s av %s existerar inte",
}
1 change: 1 addition & 0 deletions [core]/esx_progressbar/Progress.lua
Original file line number Diff line number Diff line change
@@ -42,6 +42,7 @@ local function CancelProgressbar()
})
ClearPedTasks(ESX.PlayerData.ped)
if CurrentProgress.FreezePlayer then FreezeEntityPosition(PlayerPedId(), false) end
if CurrentProgress.onCancel then CurrentProgress.onCancel() end
CurrentProgress.canceled = true
CurrentProgress.length = 0
CurrentProgress = nil
7 changes: 7 additions & 0 deletions [core]/esx_skin/locales/sv.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Locales["sv"] = {
["skin_menu"] = "Skin Meny",
["use_rotate_view"] = "Använd ~INPUT_FRONTEND_LS~ och ~INPUT_CHARACTER_WHEEL~ för att rotera.",
["skin"] = "Ända utseende",
["saveskin"] = "Spara",
}

100 changes: 100 additions & 0 deletions [core]/skinchanger/locales/sv.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
Locales["sv"] = {
["sex"] = "Kön",
["mom"] = "Mammas ansikte",
["dad"] = "Pappas ansikte",
["resemblance"] = "Likhet",
["skin_tone"] = "Hudton",
["nose_1"] = "Näsbredd",
["nose_2"] = "Nästoppshöjd",
["nose_3"] = "Nästoppslängd",
["nose_4"] = "Näsbenshöjd",
["nose_5"] = "Nästoppssänkning",
["nose_6"] = "Näsbensvridning",
["cheeks_1"] = "Kindbens höjd",
["cheeks_2"] = "Kindbens bredd",
["cheeks_3"] = "Kinder bredd",
["lip_fullness"] = "Läppfullhet",
["jaw_bone_width"] = "Käkbensbredd",
["jaw_bone_length"] = "Käkbenslängd",
["chin_height"] = "Hakhöjd",
["chin_length"] = "Haklängd",
["chin_width"] = "Hakbredd",
["chin_hole"] = "Hakhålsstorlek",
["neck_thickness"] = "Halstjocklek",
["wrinkles"] = "Rynkor",
["wrinkle_thickness"] = "Rynktjocklek",
["beard_type"] = "Skägg typ",
["beard_size"] = "Skäggstorlek",
["beard_color_1"] = "Skäggfärg 1",
["beard_color_2"] = "Skäggfärg 2",
["hair_1"] = "Hår 1",
["hair_2"] = "Hår 2",
["hair_color_1"] = "Hårfärg 1",
["hair_color_2"] = "Hårfärg 2",
["eye_color"] = "Ögonfärg",
["eye_squint"] = "Kisning",
["eyebrow_type"] = "Ögonbryn",
["eyebrow_size"] = "Ögonbryns Storlek",
["eyebrow_color_1"] = "Ögonbrynsfärg 1",
["eyebrow_color_2"] = "Ögonbrynsfärg 2",
["eyebrow_depth"] = "Ögonbryns djup",
["eyebrow_height"] = "Ögonbrynshöjd",
["makeup_type"] = "Smink",
["makeup_thickness"] = "Sminktjocklek",
["makeup_color_1"] = "Sminkfärg 1",
["makeup_color_2"] = "Sminkfärg 2",
["lipstick_type"] = "Läppstift",
["lipstick_thickness"] = "Läppstift tjocklek",
["lipstick_color_1"] = "Läppstift färg 1",
["lipstick_color_2"] = "Läppstift färg 2",
["ear_accessories"] = "Örontillbehör",
["ear_accessories_color"] = "Örontillbehör color",
["tshirt_1"] = "T-Shirt 1",
["tshirt_2"] = "T-Shirt 2",
["torso_1"] = "Jacka 1",
["torso_2"] = "Jacka 2",
["decals_1"] = "Dekaler 1",
["decals_2"] = "Dekaler 2",
["arms"] = "Armar",
["arms_2"] = "Armar 2",
["pants_1"] = "Byxor 1",
["pants_2"] = "Byxor 2",
["shoes_1"] = "Skor 1",
["shoes_2"] = "Skor 2",
["mask_1"] = "Mask 1",
["mask_2"] = "Mask 2",
["bproof_1"] = "Skottsäker väst 1",
["bproof_2"] = "Skottsäker väst 2",
["chain_1"] = "Kedja 1",
["chain_2"] = "Kedja 2",
["helmet_1"] = "Hjälm 1",
["helmet_2"] = "Hjälm 2",
["watches_1"] = "Klockor 1",
["watches_2"] = "Klockor 2",
["bracelets_1"] = "Armband 1",
["bracelets_2"] = "Armband 2",
["glasses_1"] = "Glasögon 1",
["glasses_2"] = "Glasögon 2",
["bag"] = "Väska",
["bag_color"] = "Väskfärg",
["blemishes"] = "Fläckar",
["blemishes_size"] = "Fläckar tjocklek",
["ageing"] = "Åldring",
["ageing_1"] = "Åldring tjocklek",
["blush"] = "Rouge",
["blush_1"] = "Rodning tjocklek",
["blush_color"] = "Rouge färg",
["complexion"] = "Hy",
["complexion_1"] = "Hy tjocklek",
["sun"] = "Sol",
["sun_1"] = "Soltjocklek",
["freckles"] = "Fräknar",
["freckles_1"] = "Fräknar tjocklek",
["chest_hair"] = "Brösthår",
["chest_hair_1"] = "Brösthår tjocklek",
["chest_color"] = "Brösthår färg",
["bodyb"] = "Kroppsfläckar",
["bodyb_size"] = "Kroppsfläckar tjocklek",
["bodyb_extra"] = "Fläckar kroppseffekt",
["bodyb_extra_thickness"] = "Fläckar kroppseffekt tjocklek",
}
2 changes: 1 addition & 1 deletion readme.md
Original file line number Diff line number Diff line change
@@ -24,7 +24,7 @@ Interested in helping us? [Take a look at our patreon](https://www.patreon.com/e
<tr><td>
ESX Core (ESX-legacy)

Copyright (C) 2015-2023 [ESX-Framework](https://github.com/esx-framework)
Copyright (C) 2015-2024 [ESX-Framework](https://github.com/esx-framework)

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by